From de268e9c39d9f1bb3147a527e2cbbb1a83eeb458 Mon Sep 17 00:00:00 2001 From: Vladyslav_Prykhodko Date: Fri, 13 Mar 2026 16:31:22 +0200 Subject: [PATCH 1/2] Update locale translations for 13 languages Improve and extend translations for da_DK, de_DE, el_GR, es_ES, fr_FR, it_IT, ja_JP, nl_NL, no_NO, pt_BR, tr_TR, uk_UA, and zh_CN locales. --- .../assets/locale/locale.constant-da_DK.json | 39 +- .../assets/locale/locale.constant-de_DE.json | 57 +- .../assets/locale/locale.constant-el_GR.json | 55 +- .../assets/locale/locale.constant-es_ES.json | 106 +- .../assets/locale/locale.constant-fr_FR.json | 41 +- .../assets/locale/locale.constant-it_IT.json | 49 +- .../assets/locale/locale.constant-ja_JP.json | 11049 ++++++++-- .../assets/locale/locale.constant-nl_NL.json | 47 +- .../assets/locale/locale.constant-no_NO.json | 480 +- .../assets/locale/locale.constant-pt_BR.json | 9312 ++++++++- .../assets/locale/locale.constant-tr_TR.json | 216 +- .../assets/locale/locale.constant-uk_UA.json | 12108 ++++++++--- .../assets/locale/locale.constant-zh_CN.json | 17268 +++++++++------- 13 files changed, 37680 insertions(+), 13147 deletions(-) diff --git a/ui-ngx/src/assets/locale/locale.constant-da_DK.json b/ui-ngx/src/assets/locale/locale.constant-da_DK.json index c0554d1cca..0992ccd6ff 100644 --- a/ui-ngx/src/assets/locale/locale.constant-da_DK.json +++ b/ui-ngx/src/assets/locale/locale.constant-da_DK.json @@ -545,13 +545,7 @@ "slack-settings": "Slack-indstillinger", "mobile-settings": "Mobilindstillinger", "firebase-service-account-file": "Firebase servicekonto-legitimationsoplysninger JSON-fil", - "select-firebase-service-account-file": "Træk og slip din Firebase servicekonto-legitimationsfil eller ", - "trendz": "Trendz", - "trendz-settings": "Trendz-indstillinger", - "trendz-url": "Trendz URL", - "trendz-url-required": "Trendz URL er påkrævet", - "trendz-api-key": "Trendz API-nøgle", - "trendz-enable": "Aktivér Trendz" + "select-firebase-service-account-file": "Træk og slip din Firebase servicekonto-legitimationsfil eller " }, "alarm": { "alarm": "Alarm", @@ -794,7 +788,7 @@ "no-assets-matching": "Ingen assets matcher '{{entity}}'.", "asset-required": "Asset er påkrævet", "name-starts-with": "Asset-navneudtryk", - "help-text": "Brug '%' efter behov: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with'.", + "help-text": "Brug '%' efter behov: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Søg assets", "import": "Importér assets", "asset-file": "Assetfil", @@ -898,9 +892,9 @@ "processing-timeouts": "${entityName} behandlingstimeouts", "rule-chain": "Rule Chain", "rule-engine": "Rule Engine", - "rule-engine-daily-activity": "Daglig aktivitet for Rule Engine", "rule-engine-executions": "Rule Engine-udførelser", "rule-engine-hourly-activity": "Timebaseret aktivitet for Rule Engine", + "rule-engine-daily-activity": "Daglig aktivitet for Rule Engine", "rule-engine-monthly-activity": "Månedlig aktivitet for Rule Engine", "rule-engine-statistics": "Statistik for Rule Engine", "rule-node": "Rule Node", @@ -915,13 +909,11 @@ "telemetry-persistence-hourly-activity": "Timebaseret aktivitet for telemetri-persistens", "telemetry-persistence-monthly-activity": "Månedlig aktivitet for telemetri-persistens", "transport": "Transport", - "transport-daily-activity": "Daglig transportaktivitet", - "transport-data-points": "Transport-datapunkter", - "transport-hourly-activity": "Timebaseret transportaktivitet", - "transport-messages": "Transportbeskeder", - "transport-monthly-activity": "Månedlig transportaktivitet", + "transport-daily-activity": "Transport – dagsaktivitet", + "transport-data-points": "Transportdatapunkter", "view-details": "Vis detaljer", - "view-statistics": "Vis statistik" + "view-statistics": "Vis statistik", + "transport-messages": "Transportbeskeder" }, "api-limit": { "cassandra-write-queries-core": "REST API Cassandra-skriveforespørgsler", @@ -1038,7 +1030,6 @@ "argument-customer": "Kunde", "argument-tenant": "Aktuel lejer", "argument-type": "Argumenttype", - "see-debug-events": "Se fejlsøgningshændelser", "attribute": "Attribut", "copy-argument-name": "Kopiér argumentnavn", "timeseries-key": "Tidsserienøgle", @@ -1193,6 +1184,7 @@ "contact": { "country": "Land", "country-required": "Land er påkrævet.", + "country-object-required": "Vælg venligst et gyldigt land fra listen.", "city": "By", "state": "Stat / Provins", "postal-code": "Postnummer", @@ -1653,7 +1645,7 @@ "remove-alias": "Fjern enhedsalias", "add-alias": "Tilføj enhedsalias", "name-starts-with": "Udtryk for enhedsnavn", - "help-text": "Brug '%' efter behov: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "Brug '%' efter behov: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Enhedsliste", "use-device-name-filter": "Brug filter", "device-list-empty": "Ingen enheder valgt.", @@ -1780,7 +1772,6 @@ "unable-delete-device-alias-text": "Enhedsalias '{{deviceAlias}}' kan ikke slettes, da det bruges af følgende widget(s):
{{widgetsList}}", "is-gateway": "Er gateway", "overwrite-activity-time": "Overskriv aktivitetstid for tilsluttet enhed", - "device-filter": "Enhedsfilter", "device-filter-title": "Enhedsfilter", "filter-title": "Filter", "device-state": "Enhedstilstand", @@ -2564,7 +2555,7 @@ "no-entities-text": "Ingen enheder fundet", "no-entity-types-matching": "Ingen enhedstyper matcher '{{entityType}}'.", "name-starts-with": "Navneudtryk", - "help-text": "Brug '%' efter behov: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'.", + "help-text": "Brug '%' efter behov: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Brug filter", "entity-list-empty": "Ingen enheder valgt.", "entity-type-list-required": "Mindst én enhedstype skal vælges.", @@ -2756,7 +2747,7 @@ "remove-alias": "Fjern entitetsvisningsalias", "add-alias": "Tilføj entitetsvisningsalias", "name-starts-with": "Entitetsvisningsnavn udtryk", - "help-text": "Brug '%' efter behov: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "Brug '%' efter behov: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Entitetsvisningsliste", "use-entity-view-name-filter": "Brug filter", "entity-view-list-empty": "Ingen entitetsvisninger valgt.", @@ -3798,7 +3789,6 @@ "password-link-sent-message": "Nulstillingslink er sendt", "email": "Email", "invalid-email-format": "Ugyldigt emailformat.", - "login-with": "Log ind med {{name}}", "or": "eller", "error": "Loginfejl", "verify-your-identity": "Bekræft din identitet", @@ -5410,8 +5400,7 @@ }, "time-series": "Tidsserier", "latest": "Seneste værdier", - "web-sockets": "WebSockets", - "calculated-fields": "Beregnet felter" + "web-sockets": "WebSockets" }, "save-attribute": { "processing-settings": "Behandlingsindstillinger", @@ -6658,7 +6647,7 @@ "export-relations": "Eksporter relationer", "export-attributes": "Eksporter attributter", "export-credentials": "Eksporter legitimationsoplysninger", - "export-calculated-fields": "Eksporter beregnede felter", + "export-calculated-fields": "Eksportér beregnede felter \nog alarmregler", "entity-versions": "Entitetsversioner", "versions": "Versioner", "created-time": "Oprettelsestidspunkt", @@ -6675,7 +6664,7 @@ "load-relations": "Indlæs relationer", "load-attributes": "Indlæs attributter", "load-credentials": "Indlæs legitimationsoplysninger", - "load-calculated-fields": "Indlæs beregnede felter", + "load-calculated-fields": "Indlæs beregnede felter og alarmregler", "compare-with-current": "Sammenlign med nuværende", "diff-entity-with-version": "Forskel fra entitetsversion '{{versionName}}'", "previous-difference": "Forrige forskel", diff --git a/ui-ngx/src/assets/locale/locale.constant-de_DE.json b/ui-ngx/src/assets/locale/locale.constant-de_DE.json index 4e3a41e488..d218d2b96b 100644 --- a/ui-ngx/src/assets/locale/locale.constant-de_DE.json +++ b/ui-ngx/src/assets/locale/locale.constant-de_DE.json @@ -167,10 +167,10 @@ "number-from-required": "Telefonnummer Von ist erforderlich.", "number-to": "Telefonnummer An", "number-to-required": "Telefonnummer An ist erforderlich.", - "phone-number-hint": "Telefonnummer im E.164-Format, z. B. +19995550123", - "phone-number-hint-twilio": "Telefonnummer im E.164-Format/SID der Telefonnummer/SID des Messaging-Dienstes, z. B. +19995550123/PNXXX/MGXXX", - "phone-number-pattern": "Ungültige Telefonnummer. Sollte im E.164-Format vorliegen, z. B. +19995550123.", - "phone-number-pattern-twilio": "Ungültige Telefonnummer. Sollte im E.164-Format/SID der Telefonnummer/SID des Messaging-Dienstes vorliegen, z. B. +19995550123/PNXXX/MGXXX.", + "phone-number-hint": "Telefonnummer im E.164-Format, z.B. +19995550123", + "phone-number-hint-twilio": "Telefonnummer im E.164-Format/SID der Telefonnummer/SID des Messaging-Dienstes, z.B. +19995550123/PNXXX/MGXXX", + "phone-number-pattern": "Ungültige Telefonnummer. Sollte im E.164-Format vorliegen, z.B. +19995550123.", + "phone-number-pattern-twilio": "Ungültige Telefonnummer. Sollte im E.164-Format/SID der Telefonnummer/SID des Messaging-Dienstes vorliegen, z.B. +19995550123/PNXXX/MGXXX.", "sms-message": "SMS-Nachricht", "sms-message-required": "SMS-Nachricht ist erforderlich.", "sms-message-max-length": "SMS-Nachricht darf nicht länger als 1600 Zeichen sein", @@ -545,13 +545,7 @@ "slack-settings": "Slack-Einstellungen", "mobile-settings": "Mobile Einstellungen", "firebase-service-account-file": "Firebase-Service-Konto-Anmeldeinformationen (JSON-Datei)", - "select-firebase-service-account-file": "Ziehen Sie Ihre Firebase-Service-Konto-Datei hierher oder ", - "trendz": "Trendz", - "trendz-settings": "Trendz-Einstellungen", - "trendz-url": "Trendz-URL", - "trendz-url-required": "Trendz-URL ist erforderlich", - "trendz-api-key": "Trendz-API-Schlüssel", - "trendz-enable": "Trendz aktivieren" + "select-firebase-service-account-file": "Ziehen Sie Ihre Firebase-Service-Konto-Datei hierher oder " }, "alarm": { "alarm": "Alarm", @@ -794,7 +788,7 @@ "no-assets-matching": "Keine Assets gefunden, die mit '{{entity}}' übereinstimmen.", "asset-required": "Asset ist erforderlich", "name-starts-with": "Ausdruck für Assetnamen", - "help-text": "Verwenden Sie '%' je nach Bedarf: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with'.", + "help-text": "Verwenden Sie '%' nach Bedarf: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Assets suchen", "import": "Assets importieren", "asset-file": "Asset-Datei", @@ -898,9 +892,9 @@ "processing-timeouts": "${entityName} Verarbeitungszeitüberschreitungen", "rule-chain": "Regelkette", "rule-engine": "Regel-Engine", - "rule-engine-daily-activity": "Tägliche Aktivität der Regel-Engine", "rule-engine-executions": "Ausführungen der Regel-Engine", "rule-engine-hourly-activity": "Stündliche Aktivität der Regel-Engine", + "rule-engine-daily-activity": "Tägliche Aktivität der Regel-Engine", "rule-engine-monthly-activity": "Monatliche Aktivität der Regel-Engine", "rule-engine-statistics": "Regel-Engine-Statistiken", "rule-node": "Regelknoten", @@ -917,11 +911,9 @@ "transport": "Transport", "transport-daily-activity": "Tägliche Transportaktivität", "transport-data-points": "Transportierte Datenpunkte", - "transport-hourly-activity": "Stündliche Transportaktivität", - "transport-messages": "Transportnachrichten", - "transport-monthly-activity": "Monatliche Transportaktivität", "view-details": "Details anzeigen", - "view-statistics": "Statistiken anzeigen" + "view-statistics": "Statistiken anzeigen", + "transport-messages": "Transportnachrichten" }, "api-limit": { "cassandra-write-queries-core": "REST-API Cassandra-Schreibabfragen", @@ -1038,7 +1030,6 @@ "argument-customer": "Kunde", "argument-tenant": "Aktueller Mandant", "argument-type": "Argumenttyp", - "see-debug-events": "Debug-Ereignisse anzeigen", "attribute": "Attribut", "copy-argument-name": "Argumentnamen kopieren", "timeseries-key": "Zeitreihen-Schlüssel", @@ -1071,8 +1062,8 @@ "test-with-this-message": "Mit dieser Nachricht testen", "use-latest-timestamp": "Letzten Zeitstempel verwenden", "hint": { - "arguments-simple-with-rolling": "Einfacher Feldtyp darf keine Schlüssel mit Zeitreihen-Rollup-Typ enthalten.", - "arguments-empty": "Argumente dürfen nicht leer sein.", + "arguments-simple-with-rolling": "Ein berechnetes Feld vom Typ „Einfach“ sollte keine Schlüssel mit dem Zeitreihen-Rolling-Typ enthalten.", + "arguments-empty": "Mindestens ein Argument sollte angegeben werden.", "expression-required": "Ausdruck ist erforderlich.", "expression-invalid": "Ausdruck ist ungültig", "expression-max-length": "Ausdruck sollte weniger als 255 Zeichen enthalten.", @@ -1193,6 +1184,7 @@ "contact": { "country": "Land", "country-required": "Land ist erforderlich.", + "country-object-required": "Bitte wählen Sie ein gültiges Land aus der Liste aus.", "city": "Stadt", "state": "Bundesland / Provinz", "postal-code": "PLZ / Postleitzahl", @@ -1653,7 +1645,7 @@ "remove-alias": "Gerätealias entfernen", "add-alias": "Gerätealias hinzufügen", "name-starts-with": "Ausdruck für Gerätename", - "help-text": "Verwenden Sie '%' bei Bedarf: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "Verwenden Sie '%' nach Bedarf: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Geräteliste", "use-device-name-filter": "Filter verwenden", "device-list-empty": "Keine Geräte ausgewählt.", @@ -1780,7 +1772,6 @@ "unable-delete-device-alias-text": "Gerätealias '{{deviceAlias}}' kann nicht gelöscht werden, da er in folgenden Widgets verwendet wird:
{{widgetsList}}", "is-gateway": "Ist Gateway", "overwrite-activity-time": "Aktivitätszeit für verbundenes Gerät überschreiben", - "device-filter": "Gerätefilter", "device-filter-title": "Gerätefilter", "filter-title": "Filter", "device-state": "Gerätestatus", @@ -2234,7 +2225,7 @@ "short-id-required": "Kurze Server-ID ist erforderlich.", "short-id-range": "Kurze Server-ID sollte im Bereich von {{ min }} bis {{ max }} liegen.", "short-id-pattern": "Kurze Server-ID muss eine positive Ganzzahl sein.", - "lifetime": "Registrierungslebensdauer des Clients", + "lifetime": "Lebensdauer der Client-Registrierung", "lifetime-required": "Registrierungslebensdauer des Clients ist erforderlich.", "lifetime-pattern": "Registrierungslebensdauer muss eine positive Ganzzahl sein.", "default-min-period": "Minimale Periode zwischen zwei Benachrichtigungen (s)", @@ -2564,7 +2555,7 @@ "no-entities-text": "Keine Entitäten gefunden", "no-entity-types-matching": "Keine Entitätstypen gefunden, die mit '{{entityType}}' übereinstimmen.", "name-starts-with": "Namensausdruck", - "help-text": "Verwenden Sie '%' nach Bedarf: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'.", + "help-text": "Verwenden Sie '%' nach Bedarf: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Filter verwenden", "entity-list-empty": "Keine Entitäten ausgewählt.", "entity-type-list-required": "Mindestens ein Entitätstyp sollte ausgewählt werden.", @@ -2756,7 +2747,7 @@ "remove-alias": "Entitätsansicht-Alias entfernen", "add-alias": "Entitätsansicht-Alias hinzufügen", "name-starts-with": "Namensausdruck für Entitätsansicht", - "help-text": "Verwenden Sie '%' nach Bedarf: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "Verwenden Sie '%' nach Bedarf: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Liste der Entitätsansichten", "use-entity-view-name-filter": "Filter verwenden", "entity-view-list-empty": "Keine Entitätsansichten ausgewählt.", @@ -3060,7 +3051,7 @@ "edit": "Filter bearbeiten", "name": "Filtername", "name-required": "Filtername ist erforderlich.", - "duplicate-filter": "Ein Filter mit demselben Namen ist bereits vorhanden.", + "duplicate-filter": "Ein Filter mit demselben Namen existiert bereits.", "filters": "Filter", "unable-delete-filter-title": "Filter kann nicht gelöscht werden", "unable-delete-filter-text": "Filter '{{filter}}' kann nicht gelöscht werden, da er von folgendem/n Widget(s) verwendet wird:
{{widgetsList}}", @@ -3798,7 +3789,6 @@ "password-link-sent-message": "Link zum Zurücksetzen wurde gesendet", "email": "E-Mail", "invalid-email-format": "Ungültiges E-Mail-Format.", - "login-with": "Anmelden mit {{name}}", "or": "oder", "error": "Anmeldefehler", "verify-your-identity": "Identität bestätigen", @@ -5410,8 +5400,7 @@ }, "time-series": "Zeitreihe", "latest": "Neueste Werte", - "web-sockets": "WebSockets", - "calculated-fields": "Berechnete Felder" + "web-sockets": "WebSockets" }, "save-attribute": { "processing-settings": "Verarbeitungseinstellungen", @@ -6658,7 +6647,7 @@ "export-relations": "Beziehungen exportieren", "export-attributes": "Attribute exportieren", "export-credentials": "Zugangsdaten exportieren", - "export-calculated-fields": "Berechnete Felder exportieren", + "export-calculated-fields": "Berechnete Felder \nund Alarmregeln exportieren", "entity-versions": "Entitätsversionen", "versions": "Versionen", "created-time": "Erstellungszeit", @@ -7472,7 +7461,7 @@ "update-animation-delay": "Verzögerung der Aktualisierungsanimation" }, "chart-axis": { - "scale": "Skalierung", + "scale": "Skala", "scale-min": "min", "scale-max": "max", "scale-auto": "Auto" @@ -8021,14 +8010,14 @@ "invalid-qr-code-text": "Ungültiger Eingabetext für QR-Code. Eingabe sollte vom Typ String sein", "qr-code": { "use-qr-code-text-function": "QR-Code-Textfunktion verwenden", - "qr-code-text-pattern": "QR-Code-Textmuster (z. B. '${entityName} | ${keyName} - ein Text.')", + "qr-code-text-pattern": "QR-Code-Textmuster (z.B. '${entityName} | ${keyName} - ein Text.')", "qr-code-text-pattern-hint": "QR-Code-Textmuster verwendet den Wert des zuerst gefundenen Schlüssels in den Entitäten im Entitätsalias.", "qr-code-text-pattern-required": "QR-Code-Textmuster ist erforderlich.", "qr-code-text-function": "QR-Code-Textfunktion" }, "label-widget": { "label-pattern": "Muster", - "label-pattern-hint": "Hinweis: z. B. 'Text ${keyName} Einheiten.' oder ${#<key index>} Einheiten", + "label-pattern-hint": "Hinweis: z.B. 'Text ${keyName} Einheiten.' oder ${#<key index>} Einheiten", "label-pattern-required": "Muster ist erforderlich", "label-position": "Position (Prozent relativ zum Hintergrund)", "x-pos": "X", @@ -8509,7 +8498,7 @@ "finish-circle-hint": "Kreis: Klicken, um Zeichnung zu beenden" }, "select-entity": "Entität auswählen", - "select-entity-hint": "Hinweis: Nach Auswahl auf die Karte klicken, um Position festzulegen" + "select-entity-hint": "Hinweis: Nach der Auswahl auf die Karte klicken, um die Position festzulegen" }, "select-entity": "Entität auswählen", "select-entity-hint": "Hinweis: Nach der Auswahl auf die Karte klicken, um die Position festzulegen", diff --git a/ui-ngx/src/assets/locale/locale.constant-el_GR.json b/ui-ngx/src/assets/locale/locale.constant-el_GR.json index 9c2a7edc23..a12db1a589 100644 --- a/ui-ngx/src/assets/locale/locale.constant-el_GR.json +++ b/ui-ngx/src/assets/locale/locale.constant-el_GR.json @@ -545,13 +545,7 @@ "slack-settings": "Ρυθμίσεις Slack", "mobile-settings": "Ρυθμίσεις κινητού", "firebase-service-account-file": "Αρχείο διαπιστευτηρίων λογαριασμού υπηρεσίας Firebase (JSON)", - "select-firebase-service-account-file": "Σύρετε και αποθέστε το αρχείο διαπιστευτηρίων λογαριασμού υπηρεσίας Firebase ή ", - "trendz": "Trendz", - "trendz-settings": "Ρυθμίσεις Trendz", - "trendz-url": "Διεύθυνση URL Trendz", - "trendz-url-required": "Απαιτείται η διεύθυνση URL του Trendz", - "trendz-api-key": "API κλειδί Trendz", - "trendz-enable": "Ενεργοποίηση Trendz" + "select-firebase-service-account-file": "Σύρετε και αποθέστε το αρχείο διαπιστευτηρίων λογαριασμού υπηρεσίας Firebase ή " }, "alarm": { "alarm": "Συναγερμός", @@ -794,7 +788,7 @@ "no-assets-matching": "Δεν βρέθηκαν περιουσιακά στοιχεία που να ταιριάζουν με '{{entity}}'.", "asset-required": "Απαιτείται περιουσιακό στοιχείο", "name-starts-with": "Έκφραση ονόματος περιουσιακού στοιχείου", - "help-text": "Χρησιμοποιήστε το '%' κατά περίπτωση: '%περιουσιακό_όνομα%', '%περιουσιακό_όνομα_λήγει', 'περιουσιακό_ξεκινά_με'.", + "help-text": "Χρησιμοποιήστε '%' ανάλογα με τις ανάγκες: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Αναζήτηση περιουσιακών στοιχείων", "import": "Εισαγωγή περιουσιακών στοιχείων", "asset-file": "Αρχείο περιουσιακών στοιχείων", @@ -898,9 +892,9 @@ "processing-timeouts": "Χρονικά όρια επεξεργασίας ${entityName}", "rule-chain": "Αλυσίδα κανόνων", "rule-engine": "Μηχανή κανόνων", - "rule-engine-daily-activity": "Ημερήσια δραστηριότητα μηχανής κανόνων", "rule-engine-executions": "Εκτελέσεις μηχανής κανόνων", "rule-engine-hourly-activity": "Ωριαία δραστηριότητα μηχανής κανόνων", + "rule-engine-daily-activity": "Ημερήσια δραστηριότητα μηχανής κανόνων", "rule-engine-monthly-activity": "Μηνιαία δραστηριότητα μηχανής κανόνων", "rule-engine-statistics": "Στατιστικά μηχανής κανόνων", "rule-node": "Κόμβος κανόνα", @@ -917,11 +911,9 @@ "transport": "Μεταφορά", "transport-daily-activity": "Ημερήσια δραστηριότητα μεταφοράς", "transport-data-points": "Σημεία δεδομένων μεταφοράς", - "transport-hourly-activity": "Ωριαία δραστηριότητα μεταφοράς", - "transport-messages": "Μηνύματα μεταφοράς", - "transport-monthly-activity": "Μηνιαία δραστηριότητα μεταφοράς", "view-details": "Προβολή λεπτομερειών", - "view-statistics": "Προβολή στατιστικών" + "view-statistics": "Προβολή στατιστικών", + "transport-messages": "Μηνύματα transport" }, "api-limit": { "cassandra-write-queries-core": "Ερωτήματα εγγραφής Cassandra από REST API", @@ -1020,7 +1012,7 @@ "selected-fields": "{ count, plural, =1 {1 υπολογιζόμενο πεδίο} other {# υπολογιζόμενα πεδία} } επιλεγμένα", "type": { "simple": "Απλό", - "script": "Script" + "script": "Σενάριο" }, "arguments": "Ορίσματα", "decimals-by-default": "Αριθμοί μετά την υποδιαστολή (προεπιλογή)", @@ -1038,7 +1030,6 @@ "argument-customer": "Πελάτης", "argument-tenant": "Τρέχων ενοικιαστής", "argument-type": "Τύπος ορίσματος", - "see-debug-events": "Προβολή γεγονότων εντοπισμού σφαλμάτων", "attribute": "Χαρακτηριστικό", "copy-argument-name": "Αντιγραφή ονόματος ορίσματος", "timeseries-key": "Κλειδί χρονοσειράς", @@ -1071,8 +1062,8 @@ "test-with-this-message": "Δοκιμή με αυτό το μήνυμα", "use-latest-timestamp": "Χρήση πιο πρόσφατης χρονικής σήμανσης", "hint": { - "arguments-simple-with-rolling": "Τα υπολογιζόμενα πεδία τύπου Simple δεν πρέπει να περιέχουν κλειδιά τύπου time series rolling.", - "arguments-empty": "Τα ορίσματα δεν πρέπει να είναι κενά.", + "arguments-simple-with-rolling": "Το υπολογιζόμενο πεδίο τύπου «Απλό» δεν πρέπει να περιέχει κλειδιά με τύπο «Κυλιόμενη χρονοσειρά».", + "arguments-empty": "Πρέπει να καθοριστεί τουλάχιστον ένα όρισμα.", "expression-required": "Απαιτείται έκφραση.", "expression-invalid": "Η έκφραση δεν είναι έγκυρη.", "expression-max-length": "Το μήκος της έκφρασης πρέπει να είναι μικρότερο από 255 χαρακτήρες.", @@ -1193,6 +1184,7 @@ "contact": { "country": "Χώρα", "country-required": "Η χώρα είναι υποχρεωτική.", + "country-object-required": "Παρακαλούμε επιλέξτε μια έγκυρη χώρα από τη λίστα.", "city": "Πόλη", "state": "Πολιτεία / Περιφέρεια", "postal-code": "Ταχυδρομικός Κώδικας", @@ -1653,7 +1645,7 @@ "remove-alias": "Αφαίρεση ψευδωνύμου συσκευής", "add-alias": "Προσθήκη ψευδωνύμου συσκευής", "name-starts-with": "Έκφραση ονόματος συσκευής", - "help-text": "Χρησιμοποιήστε '%' όπως απαιτείται: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "Χρησιμοποιήστε '%' ανάλογα με τις ανάγκες: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Λίστα συσκευών", "use-device-name-filter": "Χρήση φίλτρου", "device-list-empty": "Δεν έχουν επιλεγεί συσκευές.", @@ -1780,7 +1772,6 @@ "unable-delete-device-alias-text": "Το ψευδώνυμο συσκευής '{{deviceAlias}}' δεν μπορεί να διαγραφεί επειδή χρησιμοποιείται από τα παρακάτω widget(s):
{{widgetsList}}", "is-gateway": "Είναι gateway", "overwrite-activity-time": "Αντικατάσταση χρόνου δραστηριότητας για συνδεδεμένη συσκευή", - "device-filter": "Φίλτρο συσκευής", "device-filter-title": "Φίλτρο συσκευής", "filter-title": "Φίλτρο", "device-state": "Κατάσταση συσκευής", @@ -2234,7 +2225,7 @@ "short-id-required": "Το σύντομο αναγνωριστικό διακομιστή είναι υποχρεωτικό.", "short-id-range": "Το σύντομο αναγνωριστικό διακομιστή πρέπει να είναι εντός του εύρους από {{ min }} έως {{ max }}.", "short-id-pattern": "Το σύντομο αναγνωριστικό διακομιστή πρέπει να είναι θετικός ακέραιος αριθμός.", - "lifetime": "Διάρκεια εγγραφής πελάτη", + "lifetime": "Διάρκεια ζωής καταχώρισης πελάτη", "lifetime-required": "Η διάρκεια εγγραφής πελάτη είναι υποχρεωτική.", "lifetime-pattern": "Η διάρκεια εγγραφής πελάτη πρέπει να είναι θετικός ακέραιος αριθμός.", "default-min-period": "Ελάχιστη περίοδος μεταξύ δύο ειδοποιήσεων (δλ)", @@ -2564,7 +2555,7 @@ "no-entities-text": "Δεν βρέθηκαν οντότητες", "no-entity-types-matching": "Δεν βρέθηκαν τύποι οντοτήτων που να ταιριάζουν με '{{entityType}}'.", "name-starts-with": "Έκφραση ονόματος", - "help-text": "Χρησιμοποιήστε '%' ανάλογα με την ανάγκη: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'.", + "help-text": "Χρησιμοποιήστε '%' ανάλογα με τις ανάγκες: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Χρήση φίλτρου", "entity-list-empty": "Δεν επιλέχθηκαν οντότητες.", "entity-type-list-required": "Πρέπει να επιλεγεί τουλάχιστον ένας τύπος οντότητας.", @@ -2756,7 +2747,7 @@ "remove-alias": "Αφαίρεση ψευδωνύμου προβολής οντότητας", "add-alias": "Προσθήκη ψευδωνύμου προβολής οντότητας", "name-starts-with": "Έκφραση ονόματος προβολής οντότητας", - "help-text": "Χρησιμοποιήστε '%' όπως απαιτείται: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "Χρησιμοποιήστε '%' ανάλογα με τις ανάγκες: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Λίστα προβολών οντοτήτων", "use-entity-view-name-filter": "Χρήση φίλτρου", "entity-view-list-empty": "Δεν έχουν επιλεγεί προβολές οντοτήτων.", @@ -3798,7 +3789,6 @@ "password-link-sent-message": "Ο σύνδεσμος επαναφοράς έχει σταλεί", "email": "Email", "invalid-email-format": "Μη έγκυρη μορφή email.", - "login-with": "Σύνδεση με {{name}}", "or": "ή", "error": "Σφάλμα σύνδεσης", "verify-your-identity": "Επαληθεύστε την ταυτότητά σας", @@ -5410,8 +5400,7 @@ }, "time-series": "Χρονοσειρές", "latest": "Τελευταίες τιμές", - "web-sockets": "WebSockets", - "calculated-fields": "Υπολογιζόμενα πεδία" + "web-sockets": "WebSockets" }, "save-attribute": { "processing-settings": "Ρυθμίσεις επεξεργασίας", @@ -6658,7 +6647,7 @@ "export-relations": "Εξαγωγή σχέσεων", "export-attributes": "Εξαγωγή ιδιοτήτων", "export-credentials": "Εξαγωγή διαπιστευτηρίων", - "export-calculated-fields": "Εξαγωγή υπολογιζόμενων πεδίων", + "export-calculated-fields": "Εξαγωγή υπολογιζόμενων πεδίων \nκαι κανόνων συναγερμού", "entity-versions": "Εκδόσεις οντοτήτων", "versions": "Εκδόσεις", "created-time": "Ώρα δημιουργίας", @@ -7473,9 +7462,9 @@ }, "chart-axis": { "scale": "Κλίμακα", - "scale-min": "ελάχιστο", - "scale-max": "μέγιστο", - "scale-auto": "Αυτόματα" + "scale-min": "ελάχ.", + "scale-max": "μέγ.", + "scale-auto": "Αυτόματο" }, "bar": { "show-border": "Εμφάνιση περιγράμματος", @@ -8508,11 +8497,11 @@ "finish-circle-hint-with-entity": "Κύκλος για '{{entityName}}': κάντε κλικ για ολοκλήρωση και αποθήκευση", "finish-circle-hint": "Κύκλος: κάντε κλικ για ολοκλήρωση σχεδίασης" }, - "select-entity": "Επιλέξτε οντότητα", - "select-entity-hint": "Υπόδειξη: μετά την επιλογή κάντε κλικ στον χάρτη για ορισμό θέσης" + "select-entity": "Επιλογή οντότητας", + "select-entity-hint": "Υπόδειξη: μετά την επιλογή, κάντε κλικ στον χάρτη για να ορίσετε θέση" }, - "select-entity": "Επιλέξτε οντότητα", - "select-entity-hint": "Υπόδειξη: μετά την επιλογή κάντε κλικ στον χάρτη για ορισμό θέσης", + "select-entity": "Επιλογή οντότητας", + "select-entity-hint": "Υπόδειξη: μετά την επιλογή, κάντε κλικ στον χάρτη για να ορίσετε θέση", "tooltips": { "placeMarker": "Κάντε κλικ για τοποθέτηση οντότητας '{{entityName}}'", "firstVertex": "Πολύγωνο για '{{entityName}}': κάντε κλικ για τοποθέτηση πρώτου σημείου", diff --git a/ui-ngx/src/assets/locale/locale.constant-es_ES.json b/ui-ngx/src/assets/locale/locale.constant-es_ES.json index 3abb65bec6..cca6b2a6ff 100644 --- a/ui-ngx/src/assets/locale/locale.constant-es_ES.json +++ b/ui-ngx/src/assets/locale/locale.constant-es_ES.json @@ -545,13 +545,7 @@ "slack-settings": "Configuración de Slack", "mobile-settings": "Configuración móvil", "firebase-service-account-file": "Archivo JSON de credenciales de cuenta de servicio de Firebase", - "select-firebase-service-account-file": "Arrastra y suelta tu archivo de credenciales de cuenta de servicio de Firebase o ", - "trendz": "Trendz", - "trendz-settings": "Configuración de Trendz", - "trendz-url": "URL de Trendz", - "trendz-url-required": "La URL de Trendz es obligatoria", - "trendz-api-key": "Clave API de Trendz", - "trendz-enable": "Habilitar Trendz" + "select-firebase-service-account-file": "Arrastra y suelta tu archivo de credenciales de cuenta de servicio de Firebase o " }, "alarm": { "alarm": "Alarma", @@ -794,7 +788,7 @@ "no-assets-matching": "No se encontraron activos que coincidan con '{{entity}}'.", "asset-required": "Se requiere un activo", "name-starts-with": "Expresión del nombre del activo", - "help-text": "Usa '%' según sea necesario: '%nombre_activo_contiene%', '%nombre_activo_termina', 'activo_empieza_con'.", + "help-text": "Usa '%' según sea necesario: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Buscar activos", "import": "Importar activos", "asset-file": "Archivo de activos", @@ -898,9 +892,9 @@ "processing-timeouts": "Tiempos de espera de procesamiento de ${entityName}", "rule-chain": "Cadena de reglas", "rule-engine": "Motor de reglas", - "rule-engine-daily-activity": "Actividad diaria del motor de reglas", "rule-engine-executions": "Ejecuciones del motor de reglas", "rule-engine-hourly-activity": "Actividad por hora del motor de reglas", + "rule-engine-daily-activity": "Actividad diaria del motor de reglas", "rule-engine-monthly-activity": "Actividad mensual del motor de reglas", "rule-engine-statistics": "Estadísticas del motor de reglas", "rule-node": "Nodo de regla", @@ -917,11 +911,9 @@ "transport": "Transporte", "transport-daily-activity": "Actividad diaria de transporte", "transport-data-points": "Puntos de datos de transporte", - "transport-hourly-activity": "Actividad por hora de transporte", - "transport-messages": "Mensajes de transporte", - "transport-monthly-activity": "Actividad mensual de transporte", "view-details": "Ver detalles", - "view-statistics": "Ver estadísticas" + "view-statistics": "Ver estadísticas", + "transport-messages": "Mensajes de transporte" }, "api-limit": { "cassandra-write-queries-core": "Consultas de escritura en Cassandra desde la API REST", @@ -1038,7 +1030,6 @@ "argument-customer": "Customer", "argument-tenant": "Tenant actual", "argument-type": "Tipo de argumento", - "see-debug-events": "Ver eventos de depuración", "attribute": "Atributo", "copy-argument-name": "Copiar nombre del argumento", "timeseries-key": "Clave de serie temporal", @@ -1071,7 +1062,7 @@ "test-with-this-message": "Probar con este mensaje", "use-latest-timestamp": "Usar la última marca de tiempo", "hint": { - "arguments-simple-with-rolling": "Un campo calculado de tipo simple no debe contener claves con tipo de serie temporal con agregación.", + "arguments-simple-with-rolling": "Un campo calculado de tipo simple no debe contener claves con el tipo de serie temporal móvil.", "arguments-empty": "Los argumentos no deben estar vacíos.", "expression-required": "Se requiere una expresión.", "expression-invalid": "La expresión no es válida.", @@ -1086,7 +1077,7 @@ "decimals-range": "Los decimales por defecto deben ser un número entre 0 y 15.", "expression": "La expresión por defecto muestra cómo transformar una temperatura de Fahrenheit a Celsius.", "arguments-entity-not-found": "No se encontró la entidad de destino del argumento.", - "use-latest-timestamp": "Si está habilitado, el valor calculado se almacenará utilizando la marca de tiempo más reciente de la telemetría de los argumentos, en lugar del tiempo del servidor." + "use-latest-timestamp": "Si está activado, el valor calculado se guardará usando la marca de tiempo más reciente de la telemetría de los argumentos, en lugar de la hora del servidor." } }, "ai-models": { @@ -1111,13 +1102,15 @@ "mistral-ai": "Mistral AI", "anthropic": "Anthropic", "amazon-bedrock": "Amazon Bedrock", - "github-models": "Modelos de GitHub" + "github-models": "GitHub Models", + "ollama": "Ollama" }, "name-required": "Se requiere un nombre.", "name-max-length": "El nombre debe tener 255 caracteres o menos.", "provider": "Proveedor", - "api-key": "Clave API", - "api-key-required": "Se requiere la clave API.", + "api-key": "Clave de API", + "api-key-required": "La clave de API es obligatoria.", + "api-key-open-ai-required": "La clave de API es obligatoria cuando se usa la API oficial de OpenAI.", "project-id": "ID del proyecto", "project-id-required": "Se requiere el ID del proyecto", "location": "Ubicación", @@ -1153,18 +1146,35 @@ "presence-penalty-hint": "Aplica una penalización fija a la probabilidad de un token si ya ha aparecido en el texto.", "frequency-penalty": "Penalización por frecuencia", "frequency-penalty-hint": "Aplica una penalización a la probabilidad de un token que aumenta en función de su frecuencia en el texto.", - "max-output-tokens": "Número máximo de tokens de salida", - "max-output-tokens-min": "Debe ser mayor que 0.", - "max-output-tokens-hint": "Define el número máximo de tokens que el modelo puede generar en una sola respuesta.", + "max-output-tokens": "Máximo de tokens de salida", + "max-output-tokens-hint": "Establece el número máximo de tokens que el \nmodelo puede generar en una única respuesta.", + "context-length": "Longitud del contexto", + "context-length-hint": "Define el tamaño de la ventana de contexto en tokens. Este valor establece el límite total de memoria del modelo, incluyendo tanto la entrada del usuario como la respuesta generada.", "endpoint": "Endpoint", - "endpoint-required": "Se requiere el endpoint.", + "endpoint-required": "El endpoint es obligatorio.", + "baseurl": "URL base", + "baseurl-required": "La URL base es obligatoria.", "service-version": "Versión del servicio", "check-connectivity": "Verificar conectividad", "check-connectivity-success": "La solicitud de prueba fue exitosa", "check-connectivity-failed": "La solicitud de prueba falló", "no-model-matching": "No se encontraron modelos que coincidan con '{{entity}}'.", "model-required": "Se requiere un modelo.", - "no-model-text": "No se encontraron modelos." + "no-model-text": "No se encontraron modelos.", + "authentication": "Autenticación", + "authentication-basic-hint": "Usa la autenticación HTTP Basic estándar. El nombre de usuario y la contraseña se combinarán, se codificarán en Base64 y se enviarán en una cabecera \"Authorization\" con cada solicitud al servidor Ollama.", + "authentication-token-hint": "Usa la autenticación mediante token Bearer. El token proporcionado se enviará directamente en una cabecera \"Authorization\" con cada solicitud al servidor Ollama.", + "authentication-type": { + "none": "Ninguna", + "basic": "Basic", + "token": "Token" + }, + "username": "Nombre de usuario", + "username-required": "El nombre de usuario es obligatorio.", + "password": "Contraseña", + "password-required": "La contraseña es obligatoria.", + "token": "Token", + "token-required": "El token es obligatorio." }, "confirm-on-exit": { "message": "Tienes cambios sin guardar. ¿Estás seguro de que deseas salir de esta página?", @@ -1174,6 +1184,7 @@ "contact": { "country": "País", "country-required": "Se requiere el país.", + "country-object-required": "Selecciona un país válido de la lista.", "city": "Ciudad", "state": "Estado / Provincia", "postal-code": "Código postal", @@ -1634,7 +1645,7 @@ "remove-alias": "Eliminar alias de dispositivo", "add-alias": "Agregar alias de dispositivo", "name-starts-with": "Expresión del nombre del dispositivo", - "help-text": "Usa '%' según sea necesario: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "Usa '%' según sea necesario: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Lista de dispositivos", "use-device-name-filter": "Usar filtro", "device-list-empty": "No se seleccionaron dispositivos.", @@ -1761,7 +1772,6 @@ "unable-delete-device-alias-text": "No se puede eliminar el alias del dispositivo '{{deviceAlias}}' porque lo utilizan los siguientes widget(s):
{{widgetsList}}", "is-gateway": "Es un gateway", "overwrite-activity-time": "Sobrescribir tiempo de actividad del dispositivo conectado", - "device-filter": "Filtro de dispositivo", "device-filter-title": "Filtro de dispositivo", "filter-title": "Filtro", "device-state": "Estado del dispositivo", @@ -2237,7 +2247,7 @@ "tqs": "TQS: conexiones TCP y SMS activas; TCP en modo en cola, SMS en modo estándar (no admitido desde LWM2M 1.1)", "sq": "SQ: Conexión SMS en modo en cola (no admitido desde LWM2M 1.1)" }, - "binding-tooltip": "Esta es la lista en el recurso \"binding\" del objeto del servidor LwM2M - /1/x/7.\nIndica los modos de asociación admitidos en el Cliente LwM2M.\nEste valor DEBERÍA ser igual al valor en el recurso “Supported Binding and Modes” en el Objeto de Dispositivo (/3/0/16).\nAunque se admiten múltiples transportes, solo uno puede usarse durante toda la sesión de transporte.\nPor ejemplo, si se admiten UDP y SMS, el Cliente y el Servidor LwM2M pueden elegir comunicarse a través de UDP o SMS durante toda la sesión de transporte.", + "binding-tooltip": "Esta es la lista en el recurso \"binding\" del objeto de servidor LwM2M - /1/x/7.\nIndica los modos de vinculación admitidos en el cliente LwM2M.\nEste valor DEBERÍA ser el mismo que el valor del recurso \"Supported Binding and Modes\" en el objeto de dispositivo (/3/0/16).\nAunque se admiten varios transportes, solo se puede usar un enlace de transporte durante toda la sesión de transporte.\nPor ejemplo, cuando se admiten tanto UDP como SMS, el cliente LwM2M y el servidor LwM2M pueden elegir comunicarse por UDP o por SMS durante toda la sesión de transporte.", "bootstrap-server": "Servidor Bootstrap", "lwm2m-server": "Servidor LwM2M", "include-bootstrap-server": "Incluir actualizaciones del servidor Bootstrap", @@ -2303,9 +2313,9 @@ }, "observe-strategy": { "observe-strategy": "Estrategia de observación", - "single": "Individual", + "single": "Única", "single-description": "Una solicitud Observe por recurso (mayor precisión, más tráfico de red)", - "composite-all": "Compuesta - todos", + "composite-all": "Compuesta para todo", "composite-all-description": "Todos los recursos se observan con una única solicitud Composite Observe (más eficiente, menos flexible)", "composite-by-object": "Compuesta por objetos", "composite-by-object-description": "Los recursos se agrupan por tipo de objeto y se observan usando solicitudes Composite Observe separadas (enfoque equilibrado)" @@ -2545,7 +2555,7 @@ "no-entities-text": "No se encontraron entidades", "no-entity-types-matching": "No se encontraron tipos de entidad que coincidan con '{{entityType}}'.", "name-starts-with": "Expresión de nombre", - "help-text": "Use '%' según sea necesario: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'.", + "help-text": "Usa '%' según sea necesario: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Usar filtro", "entity-list-empty": "No hay entidades seleccionadas.", "entity-type-list-required": "Se debe seleccionar al menos un tipo de entidad.", @@ -2737,7 +2747,7 @@ "remove-alias": "Eliminar alias de vista de entidad", "add-alias": "Agregar alias de vista de entidad", "name-starts-with": "Expresión del nombre de la vista de entidad", - "help-text": "Use '%' según sea necesario: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "Usa '%' según sea necesario: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Lista de vistas de entidad", "use-entity-view-name-filter": "Usar filtro", "entity-view-list-empty": "No se seleccionaron vistas de entidad.", @@ -3779,7 +3789,6 @@ "password-link-sent-message": "Enlace de restablecimiento enviado", "email": "Correo electrónico", "invalid-email-format": "Formato de correo electrónico inválido.", - "login-with": "Iniciar sesión con {{name}}", "or": "o", "error": "Error de inicio de sesión", "verify-your-identity": "Verifica tu identidad", @@ -4166,7 +4175,7 @@ "api-usage-limit": "Límite de uso de API", "device-activity": "Actividad del dispositivo", "entities-limit": "Límite de entidades", - "entity-action": "Acción sobre entidad", + "entity-action": "Acción de entidad", "general": "General", "rule-engine-lifecycle-event": "Evento del ciclo de vida del motor de reglas", "rule-node": "Nodo de regla", @@ -4478,7 +4487,8 @@ "jks": "JKS", "js-module": "Módulo JS", "lwm2m-model": "Modelo LWM2M", - "pkcs-12": "PKCS #12" + "pkcs-12": "PKCS #12", + "general": "General" }, "resource-sub-type": "Subtipo", "sub-type": { @@ -4486,7 +4496,12 @@ "scada-symbol": "Símbolo Scada", "extension": "Extensión", "module": "Módulo" - } + }, + "resource-is-in-use": "El recurso se usa en otras entidades", + "resources-are-in-use": "Los recursos se usan en otras entidades", + "resource-is-in-use-text": "El recurso '{{title}}' no se eliminó porque lo usan las siguientes entidades:", + "resources-are-in-use-text": "No se han eliminado todos los recursos porque los usan otras entidades.
Puedes ver las entidades referenciadas haciendo clic en el botón Referencias de la fila del recurso correspondiente.
Si aun así quieres eliminar estos recursos, selecciónalos en la tabla de abajo y haz clic en el botón Eliminar seleccionados.", + "delete-resource-in-use-text": "Si aun así quieres eliminar el recurso, haz clic en el botón Eliminar de todos modos." }, "javascript": { "add": "Agregar recurso JavaScript", @@ -5385,8 +5400,7 @@ }, "time-series": "Serie temporal", "latest": "Últimos valores", - "web-sockets": "WebSockets", - "calculated-fields": "Campos calculados" + "web-sockets": "WebSockets" }, "save-attribute": { "processing-settings": "Configuraciones de procesamiento", @@ -5436,11 +5450,11 @@ "prompt-settings": "Configuración del prompt", "prompt-settings-hint": "El prompt del sistema (opcional) define el rol general y las restricciones de la IA, mientras que el prompt del usuario define la tarea específica a realizar. Ambos campos admiten plantillas.", "system-prompt": "Prompt del sistema", - "system-prompt-max-length": "El prompt del sistema debe tener 500.000 caracteres o menos.", + "system-prompt-max-length": "El prompt del sistema debe tener 10.000 caracteres o menos.", "system-prompt-blank": "El prompt del sistema no debe estar vacío.", "user-prompt": "Prompt del usuario", "user-prompt-required": "Se requiere el prompt del usuario.", - "user-prompt-max-length": "El prompt del usuario debe tener 500.000 caracteres o menos.", + "user-prompt-max-length": "El prompt del usuario debe tener 10.000 caracteres o menos.", "user-prompt-blank": "El prompt del usuario no debe estar vacío.", "response-format": "Formato de respuesta", "response-text": "Texto", @@ -5457,7 +5471,8 @@ "timeout-required": "Se requiere un tiempo de espera", "timeout-validation": "Debe ser de entre 1 segundo y 10 minutos.", "force-acknowledgement": "Forzar acuse de recibo", - "force-acknowledgement-hint": "Si está habilitado, el mensaje entrante se reconoce inmediatamente. La respuesta del modelo se coloca en cola como un mensaje nuevo y separado." + "force-acknowledgement-hint": "Si está habilitado, el mensaje entrante se reconoce inmediatamente. La respuesta del modelo se coloca en cola como un mensaje nuevo y separado.", + "ai-resources": "Recursos de IA" } }, "timezone": { @@ -5990,6 +6005,7 @@ "show-date-time-interval": "Mostrar intervalo de fecha y hora", "show-date-time-interval-hint": "Mostrar intervalo de fecha y hora según la agregación de datos.", "hide-zero-tooltip-values": "Ocultar valores cero", + "show-stack-total": "Mostrar el valor total en modo apilado", "background-color": "Color de fondo", "background-blur": "Desenfoque de fondo" }, @@ -6631,7 +6647,7 @@ "export-relations": "Exportar relaciones", "export-attributes": "Exportar atributos", "export-credentials": "Exportar credenciales", - "export-calculated-fields": "Exportar campos calculados", + "export-calculated-fields": "Exportar campos calculados \ny reglas de alarma", "entity-versions": "Versiones de entidad", "versions": "Versiones", "created-time": "Fecha de creación", @@ -6703,7 +6719,7 @@ "management": "Gestión de widgets", "editor": "Editor de widgets", "confirm-to-exit-editor-html": "Tienes configuraciones del widget sin guardar.
¿Estás seguro de que deseas salir de esta página?", - "widget-type-not-found": "Problema al cargar la configuración del widget.
Probablemente se haya eliminado el tipo de widget asociado.", + "widget-type-not-found": "Problema al cargar la configuración del widget.
Probablemente se haya\n eliminado el tipo de widget asociado.", "widget-type-load-error": "El widget no se cargó debido a los siguientes errores:", "remove": "Eliminar widget", "delete": "Eliminar widget", @@ -7448,7 +7464,7 @@ "scale": "Escala", "scale-min": "mín", "scale-max": "máx", - "scale-auto": "Auto" + "scale-auto": "Automático" }, "bar": { "show-border": "Mostrar borde", @@ -8482,7 +8498,7 @@ "finish-circle-hint": "Círculo: haz clic para finalizar el dibujo" }, "select-entity": "Seleccionar entidad", - "select-entity-hint": "Sugerencia: después de seleccionar, haz clic en el mapa para establecer la posición" + "select-entity-hint": "Sugerencia: después de la selección haz clic en el mapa para establecer la posición" }, "select-entity": "Seleccionar entidad", "select-entity-hint": "Sugerencia: después de seleccionar, haz clic en el mapa para establecer la posición", @@ -9522,4 +9538,4 @@ "language": { "language": "Idioma" } -} +} \ No newline at end of file diff --git a/ui-ngx/src/assets/locale/locale.constant-fr_FR.json b/ui-ngx/src/assets/locale/locale.constant-fr_FR.json index 91cd95bd41..6406930aab 100644 --- a/ui-ngx/src/assets/locale/locale.constant-fr_FR.json +++ b/ui-ngx/src/assets/locale/locale.constant-fr_FR.json @@ -545,13 +545,7 @@ "slack-settings": "Paramètres Slack", "mobile-settings": "Paramètres mobiles", "firebase-service-account-file": "Fichier JSON des identifiants du compte de service Firebase", - "select-firebase-service-account-file": "Glissez-déposez votre fichier d'identifiants de compte de service Firebase ou ", - "trendz": "Trendz", - "trendz-settings": "Paramètres Trendz", - "trendz-url": "URL Trendz", - "trendz-url-required": "L'URL Trendz est requise", - "trendz-api-key": "Clé API Trendz", - "trendz-enable": "Activer Trendz" + "select-firebase-service-account-file": "Glissez-déposez votre fichier d'identifiants de compte de service Firebase ou " }, "alarm": { "alarm": "Alarme", @@ -794,7 +788,7 @@ "no-assets-matching": "Aucun actif correspondant à '{{entity}}' trouvé.", "asset-required": "L'actif est requis", "name-starts-with": "Expression du nom de l'actif", - "help-text": "Utilisez '%' selon le besoin : '%nom_actif_contient%', '%nom_actif_termine', 'actif_commence_par'.", + "help-text": "Utilisez '%' selon vos besoins : '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Rechercher des actifs", "import": "Importer des actifs", "asset-file": "Fichier d'actifs", @@ -898,9 +892,9 @@ "processing-timeouts": "Expirations de traitement ${entityName}", "rule-chain": "Chaîne de règles", "rule-engine": "Moteur de règles", - "rule-engine-daily-activity": "Activité quotidienne du moteur de règles", "rule-engine-executions": "Exécutions du moteur de règles", "rule-engine-hourly-activity": "Activité horaire du moteur de règles", + "rule-engine-daily-activity": "Activité quotidienne du moteur de règles", "rule-engine-monthly-activity": "Activité mensuelle du moteur de règles", "rule-engine-statistics": "Statistiques du moteur de règles", "rule-node": "Nœud de règle", @@ -917,11 +911,9 @@ "transport": "Transport", "transport-daily-activity": "Activité quotidienne de transport", "transport-data-points": "Points de données de transport", - "transport-hourly-activity": "Activité horaire de transport", - "transport-messages": "Messages de transport", - "transport-monthly-activity": "Activité mensuelle de transport", "view-details": "Voir les détails", - "view-statistics": "Voir les statistiques" + "view-statistics": "Voir les statistiques", + "transport-messages": "Messages de transport" }, "api-limit": { "cassandra-write-queries-core": "Requêtes d’écriture Cassandra via l’API REST", @@ -1038,7 +1030,6 @@ "argument-customer": "Client", "argument-tenant": "Tenant actuel", "argument-type": "Type d'argument", - "see-debug-events": "Voir les événements de débogage", "attribute": "Attribut", "copy-argument-name": "Copier le nom de l'argument", "timeseries-key": "Clé de série temporelle", @@ -1071,8 +1062,8 @@ "test-with-this-message": "Tester avec ce message", "use-latest-timestamp": "Utiliser le dernier horodatage", "hint": { - "arguments-simple-with-rolling": "Un champ calculé de type simple ne doit pas contenir de clés avec déroulement de séries temporelles.", - "arguments-empty": "Les arguments ne doivent pas être vides.", + "arguments-simple-with-rolling": "Un champ calculé de type simple ne doit pas contenir de clés avec le type « Série temporelle glissante ».", + "arguments-empty": "Au moins un argument doit être spécifié.", "expression-required": "L'expression est requise.", "expression-invalid": "L'expression est invalide.", "expression-max-length": "La longueur de l'expression doit être inférieure à 255 caractères.", @@ -1193,6 +1184,7 @@ "contact": { "country": "Pays", "country-required": "Le pays est requis.", + "country-object-required": "Veuillez sélectionner un pays valide dans la liste.", "city": "Ville", "state": "État / Province", "postal-code": "Code postal / ZIP", @@ -1653,7 +1645,7 @@ "remove-alias": "Supprimer l'alias de l'appareil", "add-alias": "Ajouter un alias d'appareil", "name-starts-with": "Expression du nom de l'appareil", - "help-text": "Utilisez '%' selon le besoin : '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "Utilisez '%' selon vos besoins : '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Liste des appareils", "use-device-name-filter": "Utiliser un filtre", "device-list-empty": "Aucun appareil sélectionné.", @@ -1780,7 +1772,6 @@ "unable-delete-device-alias-text": "L'alias de l'appareil '{{deviceAlias}}' ne peut pas être supprimé car il est utilisé par le(s) widget(s) suivant(s) :
{{widgetsList}}", "is-gateway": "Est une passerelle", "overwrite-activity-time": "Écraser l'heure d'activité de l'appareil connecté", - "device-filter": "Filtre d'appareil", "device-filter-title": "Filtre d'appareil", "filter-title": "Filtre", "device-state": "État de l'appareil", @@ -2564,7 +2555,7 @@ "no-entities-text": "Aucune entité trouvée", "no-entity-types-matching": "Aucun type d'entité correspondant à '{{entityType}}' n'a été trouvé.", "name-starts-with": "Expression du nom", - "help-text": "Utilisez '%' selon le besoin : '%nom_entité_contient%', '%nom_entité_se_termine', 'entité_commence_par'.", + "help-text": "Utilisez '%' selon vos besoins : '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Utiliser le filtre", "entity-list-empty": "Aucune entité sélectionnée.", "entity-type-list-required": "Au moins un type d'entité doit être sélectionné.", @@ -2756,7 +2747,7 @@ "remove-alias": "Supprimer l'alias de la vue d'entité", "add-alias": "Ajouter un alias de vue d'entité", "name-starts-with": "Expression du nom de la vue d'entité", - "help-text": "Utilisez '%' selon le besoin : '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "Utilisez '%' selon vos besoins : '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Liste des vues d'entité", "use-entity-view-name-filter": "Utiliser un filtre", "entity-view-list-empty": "Aucune vue d'entité sélectionnée.", @@ -3798,7 +3789,6 @@ "password-link-sent-message": "Le lien de réinitialisation a été envoyé", "email": "Email", "invalid-email-format": "Format d'email invalide.", - "login-with": "Connexion avec {{name}}", "or": "ou", "error": "Erreur de connexion", "verify-your-identity": "Vérifiez votre identité", @@ -5410,8 +5400,7 @@ }, "time-series": "Séries temporelles", "latest": "Dernières valeurs", - "web-sockets": "WebSockets", - "calculated-fields": "Champs calculés" + "web-sockets": "WebSockets" }, "save-attribute": { "processing-settings": "Paramètres de traitement", @@ -6658,7 +6647,7 @@ "export-relations": "Exporter les relations", "export-attributes": "Exporter les attributs", "export-credentials": "Exporter les identifiants", - "export-calculated-fields": "Exporter les champs calculés", + "export-calculated-fields": "Exporter les champs calculés \net les règles d’alarme", "entity-versions": "Versions des entités", "versions": "Versions", "created-time": "Date de création", @@ -8509,10 +8498,10 @@ "finish-circle-hint": "Cercle : cliquez pour terminer le dessin" }, "select-entity": "Sélectionner une entité", - "select-entity-hint": "Astuce : après sélection, cliquez sur la carte pour définir la position" + "select-entity-hint": "Astuce : après la sélection, cliquer sur la carte pour définir la position" }, "select-entity": "Sélectionner une entité", - "select-entity-hint": "Astuce : après la sélection, cliquez sur la carte pour définir la position", + "select-entity-hint": "Astuce : après la sélection, cliquer sur la carte pour définir la position", "tooltips": { "placeMarker": "Cliquez pour placer l’entité '{{entityName}}'", "firstVertex": "Polygone pour '{{entityName}}' : cliquez pour placer le premier point", diff --git a/ui-ngx/src/assets/locale/locale.constant-it_IT.json b/ui-ngx/src/assets/locale/locale.constant-it_IT.json index 45f2819123..ac47330f30 100644 --- a/ui-ngx/src/assets/locale/locale.constant-it_IT.json +++ b/ui-ngx/src/assets/locale/locale.constant-it_IT.json @@ -545,13 +545,7 @@ "slack-settings": "Impostazioni di Slack", "mobile-settings": "Impostazioni mobile", "firebase-service-account-file": "File JSON delle credenziali dell'account di servizio Firebase", - "select-firebase-service-account-file": "Trascina e rilascia il file delle credenziali dell'account di servizio Firebase oppure", - "trendz": "Trendz", - "trendz-settings": "Impostazioni di Trendz", - "trendz-url": "URL di Trendz", - "trendz-url-required": "L'URL di Trendz è obbligatorio", - "trendz-api-key": "Chiave API di Trendz", - "trendz-enable": "Abilita Trendz" + "select-firebase-service-account-file": "Trascina e rilascia il file delle credenziali dell'account di servizio Firebase oppure" }, "alarm": { "alarm": "Allarme", @@ -794,7 +788,7 @@ "no-assets-matching": "Nessun asset corrispondente a '{{entity}}' trovato.", "asset-required": "L'asset è obbligatorio", "name-starts-with": "Espressione nome asset", - "help-text": "Usa '%' secondo necessità: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with'.", + "help-text": "Usa '%' secondo necessità: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Cerca asset", "import": "Importa asset", "asset-file": "File asset", @@ -898,9 +892,9 @@ "processing-timeouts": "Timeout di elaborazione ${entityName}", "rule-chain": "Catena di regole", "rule-engine": "Motore di regole", - "rule-engine-daily-activity": "Attività giornaliera motore di regole", "rule-engine-executions": "Esecuzioni motore di regole", "rule-engine-hourly-activity": "Attività oraria motore di regole", + "rule-engine-daily-activity": "Attività giornaliera motore di regole", "rule-engine-monthly-activity": "Attività mensile motore di regole", "rule-engine-statistics": "Statistiche motore di regole", "rule-node": "Nodo regola", @@ -917,11 +911,9 @@ "transport": "Trasporto", "transport-daily-activity": "Attività giornaliera del trasporto", "transport-data-points": "Punti dati del trasporto", - "transport-hourly-activity": "Attività oraria del trasporto", - "transport-messages": "Messaggi del trasporto", - "transport-monthly-activity": "Attività mensile del trasporto", "view-details": "Visualizza dettagli", - "view-statistics": "Visualizza statistiche" + "view-statistics": "Visualizza statistiche", + "transport-messages": "Messaggi di trasporto" }, "api-limit": { "cassandra-write-queries-core": "Query di scrittura Cassandra tramite Rest API", @@ -1038,7 +1030,6 @@ "argument-customer": "Cliente", "argument-tenant": "Tenant corrente", "argument-type": "Tipo di argomento", - "see-debug-events": "Vedi eventi di debug", "attribute": "Attributo", "copy-argument-name": "Copia nome argomento", "timeseries-key": "Chiave serie temporale", @@ -1071,10 +1062,10 @@ "test-with-this-message": "Testa con questo messaggio", "use-latest-timestamp": "Usa il timestamp più recente", "hint": { - "arguments-simple-with-rolling": "Il campo calcolato di tipo semplice non deve contenere chiavi con tipo rolling delle serie temporali.", - "arguments-empty": "Gli argomenti non devono essere vuoti.", - "expression-required": "Espressione obbligatoria.", - "expression-invalid": "Espressione non valida", + "arguments-simple-with-rolling": "Un campo calcolato di tipo semplice non dovrebbe contenere chiavi con tipo di serie temporale rolling.", + "arguments-empty": "Almeno un argomento deve essere specificato.", + "expression-required": "L'espressione è obbligatoria.", + "expression-invalid": "L'espressione non è valida.", "expression-max-length": "La lunghezza dell'espressione deve essere inferiore a 255 caratteri.", "argument-name-required": "Il nome dell'argomento è obbligatorio.", "argument-name-pattern": "Il nome dell'argomento non è valido.", @@ -1083,10 +1074,10 @@ "argument-name-forbidden": "Il nome dell'argomento è riservato e non può essere utilizzato.", "argument-type-required": "Il tipo di argomento è obbligatorio.", "max-args": "Numero massimo di argomenti raggiunto.", - "decimals-range": "Per impostazione predefinita, i decimali devono essere un numero compreso tra 0 e 15.", + "decimals-range": "I decimali di default devono essere un numero compreso tra 0 e 15.", "expression": "L'espressione predefinita dimostra come trasformare una temperatura da Fahrenheit a Celsius.", "arguments-entity-not-found": "Entità di destinazione dell'argomento non trovata.", - "use-latest-timestamp": "Se abilitato, il valore calcolato verrà salvato utilizzando il timestamp più recente dalla telemetria degli argomenti, invece dell'orario del server." + "use-latest-timestamp": "Se abilitato, il valore calcolato verrà memorizzato utilizzando il timestamp più recente dalla telemetria degli argomenti, invece del tempo del server." } }, "ai-models": { @@ -1193,6 +1184,7 @@ "contact": { "country": "Paese", "country-required": "Il paese è obbligatorio.", + "country-object-required": "Seleziona un paese valido dalla lista.", "city": "Città", "state": "Stato / Provincia", "postal-code": "CAP / Codice postale", @@ -1653,7 +1645,7 @@ "remove-alias": "Rimuovi alias del dispositivo", "add-alias": "Aggiungi alias del dispositivo", "name-starts-with": "Espressione nome dispositivo", - "help-text": "Usa '%' secondo necessità: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "Usa '%' secondo necessità: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Elenco dispositivi", "use-device-name-filter": "Usa filtro", "device-list-empty": "Nessun dispositivo selezionato.", @@ -1780,7 +1772,6 @@ "unable-delete-device-alias-text": "L'alias del dispositivo '{{deviceAlias}}' non può essere eliminato poiché è utilizzato dai seguenti widget:
{{widgetsList}}", "is-gateway": "È un gateway", "overwrite-activity-time": "Sovrascrivi tempo di attività per il dispositivo connesso", - "device-filter": "Filtro dispositivo", "device-filter-title": "Filtro dispositivo", "filter-title": "Filtro", "device-state": "Stato dispositivo", @@ -2234,7 +2225,7 @@ "short-id-required": "ID server breve obbligatorio.", "short-id-range": "L'ID server breve deve essere compreso tra {{ min }} e {{ max }}.", "short-id-pattern": "L'ID server breve deve essere un numero intero positivo.", - "lifetime": "Durata registrazione client", + "lifetime": "Durata della registrazione del client", "lifetime-required": "Durata registrazione client obbligatoria.", "lifetime-pattern": "La durata della registrazione deve essere un numero intero positivo.", "default-min-period": "Periodo minimo tra due notifiche (s)", @@ -2564,7 +2555,7 @@ "no-entities-text": "Nessuna entità trovata", "no-entity-types-matching": "Nessun tipo entità corrispondente a '{{entityType}}' trovato.", "name-starts-with": "Espressione nome", - "help-text": "Usa '%' secondo necessità: '%nome_entità_contiene%', '%nome_entità_finisce', 'entità_inizia_con'.", + "help-text": "Usa '%' secondo necessità: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Usa filtro", "entity-list-empty": "Nessuna entità selezionata.", "entity-type-list-required": "È richiesto almeno un tipo di entità.", @@ -2756,7 +2747,7 @@ "remove-alias": "Rimuovi alias vista entità", "add-alias": "Aggiungi alias vista entità", "name-starts-with": "Espressione nome vista entità", - "help-text": "Usa '%' se necessario: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "Usa '%' secondo necessità: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Elenco viste entità", "use-entity-view-name-filter": "Usa filtro", "entity-view-list-empty": "Nessuna vista entità selezionata.", @@ -3798,7 +3789,6 @@ "password-link-sent-message": "Link di reimpostazione inviato", "email": "Email", "invalid-email-format": "Formato email non valido.", - "login-with": "Accedi con {{name}}", "or": "oppure", "error": "Errore di accesso", "verify-your-identity": "Verifica la tua identità", @@ -5410,8 +5400,7 @@ }, "time-series": "Serie temporale", "latest": "Ultimi valori", - "web-sockets": "WebSockets", - "calculated-fields": "Campi calcolati" + "web-sockets": "WebSockets" }, "save-attribute": { "processing-settings": "Impostazioni di elaborazione", @@ -6658,7 +6647,7 @@ "export-relations": "Esporta relazioni", "export-attributes": "Esporta attributi", "export-credentials": "Esporta credenziali", - "export-calculated-fields": "Esporta campi calcolati", + "export-calculated-fields": "Esporta campi calcolati \ne regole allarme", "entity-versions": "Versioni entità", "versions": "Versioni", "created-time": "Ora di creazione", @@ -8509,7 +8498,7 @@ "finish-circle-hint": "Cerchio: clicca per terminare il disegno" }, "select-entity": "Seleziona entità", - "select-entity-hint": "Suggerimento: dopo la selezione, clicca sulla mappa per impostare la posizione" + "select-entity-hint": "Suggerimento: dopo la selezione clicca sulla mappa per impostare la posizione" }, "select-entity": "Seleziona entità", "select-entity-hint": "Suggerimento: dopo la selezione clicca sulla mappa per impostare la posizione", diff --git a/ui-ngx/src/assets/locale/locale.constant-ja_JP.json b/ui-ngx/src/assets/locale/locale.constant-ja_JP.json index 73b4751ba4..b7b87fd579 100644 --- a/ui-ngx/src/assets/locale/locale.constant-ja_JP.json +++ b/ui-ngx/src/assets/locale/locale.constant-ja_JP.json @@ -1,1512 +1,9541 @@ { - "access": { - "unauthorized": "無許可", - "unauthorized-access": "不正アクセス", - "unauthorized-access-text": "このリソースにアクセスするにはサインインする必要があります。", - "access-forbidden": "アクセス禁止", - "access-forbidden-text": "あなたはこの場所へのアクセス権を持っていません!この場所にアクセスしたい場合は、別のユーザーとサインインしてみてください。", - "refresh-token-expired": "セッションが終了しました", - "refresh-token-failed": "セッションをリフレッシュできません" - }, - "action": { - "activate": "アクティブ化する", - "suspend": "サスペンド", - "save": "セーブ", - "saveAs": "名前を付けて保存", - "cancel": "キャンセル", - "ok": "[OK]", - "delete": "削除", - "add": "追加", - "yes": "はい", - "no": "いいえ", - "update": "更新", - "remove": "削除", - "search": " 検索", - "clear-search": "検索をクリア", - "assign": "割り当て", - "unassign": "割り当て解除", - "share": "シェア", - "make-private": "プライベートにする", - "apply": "適用", - "apply-changes": "変更を適用", - "edit-mode": "編集モード", - "enter-edit-mode": "編集モードに入る", - "decline-changes": "変更を拒否", - "close": "閉じる", - "back": "戻る", - "run": "実行", - "sign-in": "サインイン!", - "edit": "編集", - "view": "ビュー", - "create": "作成", - "drag": "ドラッグ", - "refresh": "リフレッシュ", - "undo": "元に戻す", - "copy": "コピー", - "paste": "ペースト", - "copy-reference": "参照コピー", - "paste-reference": "参照貼り付け", - "import": "インポート", - "export": "エクスポート", - "share-via": "{{provider}}" - }, - "aggregation": { - "aggregation": "集約", - "function": "データ集約機能", - "limit": "上限", - "group-interval": "グループ化の間隔", - "min": "最小", - "max": "最大", - "avg": "平均", - "sum": "総和", - "count": "カウント", - "none": "なし" - }, - "admin": { - "general": "一般", - "general-settings": "一般設定", - "outgoing-mail": "送信メール", - "outgoing-mail-settings": "送信メールの設定", - "system-settings": "システム設定", - "test-mail-sent": "テストメールが正常に送信されました!", - "base-url": "ベースURL", - "base-url-required": "ベースURLは必須です。", - "mail-from": "メール", - "mail-from-required": "メールの送信元が必要です。", - "smtp-protocol": "SMTPプロトコル", - "smtp-host": "SMTPホスト", - "smtp-host-required": "SMTPホストが必要です。", - "smtp-port": "SMTPポート", - "smtp-port-required": "SMTPポートを指定してください。", - "smtp-port-invalid": "有効なSMTPポートではありません。", - "timeout-msec": "タイムアウト(ミリ秒)", - "timeout-required": "タイムアウト設定が必要です。", - "timeout-invalid": "有効なタイムアウト設定ではありません。", - "enable-tls": "TLSを有効にする", - "tls-version": "TLSバージョン", - "send-test-mail": "テストメールを送信する" - }, - "alarm": { - "alarm": "アラーム", - "alarms": "アラーム", - "select-alarm": "アラームを選択", - "no-alarms-matching": "'{{entity}}'発見されました。", - "alarm-required": "アラームが必要です", - "alarm-status": "アラーム状態", - "search-status": { - "ANY": "どれか", - "ACTIVE": "アクティブ", - "CLEARED": "クリアされた", - "ACK": "承認された", - "UNACK": "未確認の" - }, - "display-status": { - "ACTIVE_UNACK": "アクティブ未確認", - "ACTIVE_ACK": "Active Acknowledged", - "CLEARED_UNACK": "クリアされた未確認のメッセージ", - "CLEARED_ACK": "承認された承認済み" - }, - "no-alarms-prompt": "アラームが見つかりません", - "created-time": "作成時刻", - "type": "タイプ", - "severity": "重大度", - "originator": "発信元", - "originator-type": "発信元タイプ", - "details": "詳細", - "status": "状態", - "alarm-details": "アラームの詳細", - "start-time": "開始時間", - "end-time": "終了時間", - "ack-time": "確認された時間", - "clear-time": "クリアされた時間", - "severity-critical": "クリティカル", - "severity-major": "メジャー", - "severity-minor": "マイナー", - "severity-warning": "警告", - "severity-indeterminate": "不確定", - "acknowledge": "承認", - "clear": "クリア", - "search": "アラームの検索", - "selected-alarms": "{ count, plural, =1 {1 alarm} other {# alarms} }選択された", - "no-data": "表示するデータがありません", - "polling-interval": "アラームポーリング間隔(秒)", - "polling-interval-required": "アラームのポーリング間隔が必要です。", - "min-polling-interval-message": "少なくとも1秒間のポーリング間隔が許可されます。", - "aknowledge-alarms-title": "{ count, plural, =1 {1 alarm} other {# alarms} }", - "aknowledge-alarms-text": "{ count, plural, =1 {1 alarm} other {# alarms} }?", - "clear-alarms-title": "{ count, plural, =1 {1 alarm} other {# alarms} }", - "clear-alarms-text": "{ count, plural, =1 {1 alarm} other {# alarms} }?" - }, - "alias": { - "add": "エイリアスを追加する", - "edit": "エイリアスを編集する", - "name": "エイリアス名", - "name-required": "エイリアス名は必須です", - "duplicate-alias": "同じ名前のエイリアスは既に存在します。", - "filter-type-single-entity": "単一のエンティティ", - "filter-type-entity-list": "エンティティリスト", - "filter-type-entity-name": "エンティティ名", - "filter-type-state-entity": "ダッシュボード状態からのエンティティ", - "filter-type-state-entity-description": "ダッシュボードの状態パラメータから取得されたエンティティ", - "filter-type-asset-type": "アセットの種類", - "filter-type-asset-type-description": "'{{assetTypes}}'", - "filter-type-asset-type-and-name-description": "'{{assetTypes}}''{{prefix}}'", - "filter-type-device-type": "デバイスタイプ", - "filter-type-device-type-description": "'{{deviceTypes}}'", - "filter-type-device-type-and-name-description": "'{{deviceTypes}}''{{prefix}}'", - "filter-type-relations-query": "関係クエリ", - "filter-type-relations-query-description": "{{entities}}{{relationType}}{{direction}}{{rootEntity}}", - "filter-type-asset-search-query": "アセット検索クエリ", - "filter-type-asset-search-query-description": "{{assetTypes}}{{relationType}}{{direction}}{{rootEntity}}", - "filter-type-device-search-query": "デバイス検索クエリ", - "filter-type-device-search-query-description": "{{deviceTypes}}{{relationType}}{{direction}}{{rootEntity}}", - "entity-filter": "エンティティフィルタ", - "resolve-multiple": "複数のエンティティとして解決する", - "filter-type": "フィルタタイプ", - "filter-type-required": "フィルタタイプが必要です。", - "entity-filter-no-entity-matched": "指定されたフィルタに一致するエンティティは見つかりませんでした。", - "no-entity-filter-specified": "エンティティフィルタが指定されていない", - "root-state-entity": "ルートとしてダッシュボードの状態エンティティを使用する", - "root-entity": "ルートエンティティ", - "state-entity-parameter-name": "状態エンティティのパラメータ名", - "default-state-entity": "デフォルト状態エンティティ", - "default-entity-parameter-name": "デフォルトでは", - "max-relation-level": "最大関連レベル", - "unlimited-level": "無制限レベル", - "state-entity": "ダッシュボードの状態エンティティ", - "all-entities": "すべてのエンティティ", - "any-relation": "どれか" - }, - "asset": { - "asset": "アセット", - "assets": "アセット", - "management": "アセット管理", - "view-assets": "アセットの表示", - "add": "アセットを追加", - "assign-to-customer": "顧客に割り当てる", - "assign-asset-to-customer": "顧客にアセットを割り当てる", - "assign-asset-to-customer-text": "顧客に割り当てるアセットを選択してください", - "no-assets-text": "アセットが見つかりません", - "assign-to-customer-text": "アセットを割り当てる顧客を選択してください", - "public": "公開", - "assignedToCustomer": "顧客に割り当てられた", - "make-public": "アセットを公開する", - "make-private": "アセットをプライベートにする", - "unassign-from-customer": "顧客からの割り当て解除", - "delete": "アセットを削除", - "asset-public": "アセットは公開されています", - "asset-type": "アセットの種類", - "asset-type-required": "アセットの種類が必要です。", - "select-asset-type": "アセットタイプを選択", - "enter-asset-type": "アセットタイプを入力", - "any-asset": "すべてのアセット", - "no-asset-types-matching": "'{{entitySubtype}}'発見されました。", - "asset-type-list-empty": "選択されたアセットタイプはありません。", - "asset-types": "アセットタイプ", - "name": "名", - "name-required": "名前は必須です。", - "description": "説明", - "type": "タイプ", - "type-required": "タイプが必要です。", - "details": "詳細", - "events": "イベント", - "add-asset-text": "新しいアセットを追加する", - "asset-details": "アセットの詳細", - "assign-assets": "アセットの割り当て", - "assign-assets-text": "{ count, plural, =1 {1 asset} other {# assets} }顧客に", - "delete-assets": "アセットを削除する", - "unassign-assets": "アセットの割り当てを解除する", - "unassign-assets-action-title": "{ count, plural, =1 {1 asset} other {# assets} }顧客から", - "assign-new-asset": "新しいアセットを割り当てる", - "delete-asset-title": "'{{assetName}}'?", - "delete-asset-text": "確認後、アセットと関連するすべてのデータが回復不能になることに注意してください。", - "delete-assets-title": "{ count, plural, =1 {1 asset} other {# assets} }?", - "delete-assets-action-title": "{ count, plural, =1 {1 asset} other {# assets} }", - "delete-assets-text": "確認後、選択したすべてのアセットが削除され、関連するすべてのデータは回復不能になりますので注意してください。", - "make-public-asset-title": "'{{assetName}}'パブリック?", - "make-public-asset-text": "確認後、アセットとそのすべてのデータは公開され、他の人がアクセスできるようになります。", - "make-private-asset-title": "'{{assetName}}'プライベート?", - "make-private-asset-text": "確認後、アセットとそのすべてのデータは非公開にされ、他の人がアクセスすることはできません。", - "unassign-asset-title": "'{{assetName}}'?", - "unassign-asset-text": "確認後、アセットは割り当て解除され、顧客はアクセスできなくなります。", - "unassign-asset": "アセットの割り当てを解除する", - "unassign-assets-title": "{ count, plural, =1 {1 asset} other {# assets} }?", - "unassign-assets-text": "確認後、選択されたすべてのアセットが割り当て解除され、顧客がアクセスできなくなります。", - "copyId": "アセットIDをコピーする", - "idCopiedMessage": "アセットIDがクリップボードにコピーされました", - "select-asset": "アセットを選択", - "no-assets-matching": "'{{entity}}'発見されました。", - "asset-required": "アセットが必要です", - "name-starts-with": "次で始まるアセット名", - "label": "ラベル" - }, - "attribute": { - "attributes": "属性", - "latest-telemetry": "最新テレメトリ", - "attributes-scope": "エンティティ属性のスコープ", - "scope-telemetry": "テレメトリー", - "scope-latest-telemetry": "最新テレメトリ", - "scope-client": "クライアントの属性", - "scope-server": "サーバーの属性", - "scope-shared": "共有属性", - "add": "属性を追加する", - "key": "キー", - "last-update-time": "最終更新時間", - "key-required": "属性キーは必須です。", - "value": "値", - "value-required": "属性値は必須です。", - "delete-attributes-title": "{ count, plural, =1 {1 attribute} other {# attributes} }?", - "delete-attributes-text": "注意してください。確認後、選択したすべての属性が削除されます。", - "delete-attributes": "属性を削除する", - "enter-attribute-value": "属性値を入力", - "show-on-widget": "ウィジェットで表示", - "widget-mode": "ウィジェットモード", - "next-widget": "次のウィジェット", - "prev-widget": "前のウィジェット", - "add-to-dashboard": "ダッシュボードに追加", - "add-widget-to-dashboard": "ウィジェットをダッシュ​​ボードに追加する", - "selected-attributes": "{ count, plural, =1 {1 attribute} other {# attributes} }選択された", - "selected-telemetry": "{ count, plural, =1 {1 telemetry unit} other {# telemetry units} }選択された" - }, - "audit-log": { - "audit": "監査", - "audit-logs": "監査ログ", - "timestamp": "タイムスタンプ", - "entity-type": "エンティティタイプ", - "entity-name": "エンティティ名", - "user": "ユーザー", - "type": "タイプ", - "status": "状態", - "details": "詳細", - "type-added": "追加された", - "type-deleted": "削除済み", - "type-updated": "更新しました", - "type-attributes-updated": "属性が更新されました", - "type-attributes-deleted": "属性が削除されました", - "type-rpc-call": "RPC呼び出し", - "type-credentials-updated": "資格が更新されました", - "type-assigned-to-customer": "顧客に割り当てられた", - "type-unassigned-from-customer": "顧客から割り当てられていない", - "type-activated": "活性化", - "type-suspended": "一時停止中", - "type-credentials-read": "信用証明書を読む", - "type-attributes-read": "読み取られた属性", - "type-relation-add-or-update": "関係が更新されました", - "type-relation-delete": "関係が削除されました", - "type-relations-delete": "すべてのリレーションを削除", - "type-alarm-ack": "承認された", - "type-alarm-clear": "クリアされた", - "status-success": "成功", - "status-failure": "失敗", - "audit-log-details": "監査ログの詳細", - "no-audit-logs-prompt": "ログが見つかりません", - "action-data": "行動データ", - "failure-details": "失敗の詳細", - "search": "監査ログの検索", - "clear-search": "検索をクリアする" - }, - "confirm-on-exit": { - "message": "保存されていない変更があります。あなたは本当にこのページを出るのですか?", - "html-message": "保存していない変更があります。
このページを終了してもよろしいですか?", - "title": "保存されていない変更" - }, - "contact": { - "country": "国", - "city": "市区町村", - "state": "都道府県", - "postal-code": "郵便番号", - "postal-code-invalid": "無効な郵便番号形式です。", - "address": "住所", - "address2": "住所2", - "phone": "電話", - "email": "Eメール", - "no-address": "住所がありません" - }, - "common": { - "username": "ユーザー名", - "password": "パスワード", - "enter-username": "ユーザー名を入力してください", - "enter-password": "パスワードを入力してください", - "enter-search": "検索を入力", - "created-time": "作成時刻" - }, - "content-type": { - "json": "Json", - "text": "テキスト", - "binary": "バイナリ(Base64)" - }, - "customer": { - "customer": "顧客", - "customers": "顧客", - "management": "顧客管理", - "dashboard": "顧客ダッシュボード", - "dashboards": "顧客ダッシュボード", - "devices": "顧客デバイス", - "assets": "顧客アセット", - "public-dashboards": "パブリックダッシュボード", - "public-devices": "パブリックデバイス", - "public-assets": "パブリックアセット", - "add": "顧客を追加", - "delete": "顧客を削除", - "manage-customer-users": "顧客を管理する", - "manage-customer-devices": "顧客のデバイスを管理する", - "manage-customer-dashboards": "顧客ダッシュボードの管理", - "manage-public-devices": "パブリックデバイスを管理する", - "manage-public-dashboards": "パブリックダッシュボードの管理", - "manage-customer-assets": "顧客アセットの管理", - "manage-public-assets": "パブリックアセットを管理する", - "add-customer-text": "新規顧客を追加", - "no-customers-text": "顧客が見つかりません", - "customer-details": "顧客情報", - "delete-customer-title": "'{{customerTitle}}'?", - "delete-customer-text": "確認後、顧客および関連するすべてのデータが回復不能になるので注意してください。", - "delete-customers-title": "{ count, plural, =1 {1 customer} other {# customers} }?", - "delete-customers-action-title": "{ count, plural, =1 {1 customer} other {# customers} }", - "delete-customers-text": "確認後、選択したすべての顧客は削除され、関連するすべてのデータは回復不能になります。", - "manage-users": "ユーザーを管理する", - "manage-assets": "アセットを管理する", - "manage-devices": "デバイスを管理する", - "manage-dashboards": "ダッシュボードの管理", - "title": "タイトル", - "title-required": "タイトルは必須です。", - "description": "説明", - "details": "詳細", - "events": "イベント", - "copyId": "顧客IDをコピー", - "idCopiedMessage": "顧客IDがクリップボードにコピーされました", - "select-customer": "顧客を選択", - "no-customers-matching": "'{{entity}}'発見されました。", - "customer-required": "顧客は必須です", - "select-default-customer": "デフォルトの顧客を選択", - "default-customer": "デフォルトの顧客", - "default-customer-required": "テナントレベルのダッシュボードをデバッグするには、デフォルトの顧客が必要です" - }, - "datetime": { - "date-from": "開始日", - "time-from": "開始時刻", - "date-to": "終了日", - "time-to": "終了時刻" - }, - "dashboard": { - "dashboard": "ダッシュボード", - "dashboards": "ダッシュボード", - "management": "ダッシュボード管理", - "view-dashboards": "ダッシュボードを表示する", - "add": "ダッシュボードを追加", - "assign-dashboard-to-customer": "顧客にダッシュボードを割り当てる", - "assign-dashboard-to-customer-text": "顧客に割り当てるダッシュボードを選択してください", - "assign-to-customer-text": "ダッシュボードを割り当てる顧客を選択してください", - "assign-to-customer": "顧客に割り当てる", - "unassign-from-customer": "顧客からの割り当て解除", - "make-public": "ダッシュボードを公開する", - "make-private": "ダッシュボードを非公開にする", - "manage-assigned-customers": "割り当てられた顧客を管理する", - "assigned-customers": "割り当てられた顧客", - "assign-to-customers": "顧客にダッシュボードを割り当てる", - "assign-to-customers-text": "ダッシュボードを割り当てる顧客を選択してください", - "unassign-from-customers": "顧客からのダッシュボードの割り当て解除", - "unassign-from-customers-text": "ダッシュボードから割り当て解除する顧客を選択してください", - "no-dashboards-text": "ダッシュボードが見つかりません", - "no-widgets": "ウィジェットは設定されていません", - "add-widget": "新しいウィジェットを追加", - "title": "タイトル", - "select-widget-title": "ウィジェットを選択", - "select-widget-subtitle": "利用可能なウィジェットタイプのリスト", - "delete": "ダッシュボードの削除", - "title-required": "タイトルは必須です。", - "description": "説明", - "details": "詳細", - "dashboard-details": "ダッシュボードの詳細", - "add-dashboard-text": "新しいダッシュボードを追加する", - "assign-dashboards": "ダッシュボードの割り当て", - "assign-new-dashboard": "新しいダッシュボードを割り当てる", - "assign-dashboards-text": "{ count, plural, =1 {1 dashboard} other {# dashboards} }顧客に", - "unassign-dashboards-action-text": "{ count, plural, =1 {1 dashboard} other {# dashboards} }顧客から", - "delete-dashboards": "ダッシュボードの削除", - "unassign-dashboards": "ダッシュボードの割り当てを解除する", - "unassign-dashboards-action-title": "{ count, plural, =1 {1 dashboard} other {# dashboards} }顧客から", - "delete-dashboard-title": "'{{dashboardTitle}}'?", - "delete-dashboard-text": "確認後、ダッシュボードとすべての関連データが回復不能になるので注意してください。", - "delete-dashboards-title": "{ count, plural, =1 {1 dashboard} other {# dashboards} }?", - "delete-dashboards-action-title": "{ count, plural, =1 {1 dashboard} other {# dashboards} }", - "delete-dashboards-text": "注意してください。確認後、選択したダッシュボードはすべて削除され、関連するすべてのデータは回復不能になります。", - "unassign-dashboard-title": "'{{dashboardTitle}}'?", - "unassign-dashboard-text": "確認後、ダッシュボードは割り当てられなくなり、顧客はアクセスできなくなります。", - "unassign-dashboard": "ダッシュボードの割り当てを解除する", - "unassign-dashboards-title": "{ count, plural, =1 {1 dashboard} other {# dashboards} }?", - "unassign-dashboards-text": "確認の後、選択したすべてのダッシュボードは割り当てられなくなり、顧客はアクセスできなくなります。", - "public-dashboard-title": "ダッシュボードは公開されました", - "public-dashboard-text": "{{dashboardTitle}} is now public and accessible via next public link:", - "public-dashboard-notice": "注:データにアクセスするために、関連するデバイスを公開することを忘れないでください。", - "make-private-dashboard-title": "'{{dashboardTitle}}'プライベート?", - "make-private-dashboard-text": "確認の後、ダッシュボードはプライベートにされ、他の人がアクセスすることはできません。", - "make-private-dashboard": "ダッシュボードを非公開にする", - "socialshare-text": "'{{dashboardTitle}}'ThingsBoardを搭載", - "socialshare-title": "'{{dashboardTitle}}'ThingsBoardを搭載", - "select-dashboard": "ダッシュボードを選択", - "no-dashboards-matching": "'{{entity}}'発見されました。", - "dashboard-required": "ダッシュボードが必要です。", - "select-existing": "既存のダッシュボードを選択", - "create-new": "新しいダッシュボードを作成する", - "new-dashboard-title": "新しいダッシュボードのタイトル", - "open-dashboard": "ダッシュボードを開く", - "set-background": "背景を設定する", - "background-color": "背景色", - "background-image": "背景画像", - "background-size-mode": "背景サイズモード", - "no-image": "選択した画像がありません", - "drop-image": "画像をドロップするか、クリックしてアップロードするファイルを選択します。", - "settings": "設定", - "columns-count": "列数", - "columns-count-required": "列数が必要です。", - "min-columns-count-message": "わずか10の最小列数が許可されます。", - "max-columns-count-message": "最大1000の列カウントのみが許可されます。", - "widgets-margins": "ウィジェット間のマージン", - "horizontal-margin": "水平マージン", - "horizontal-margin-required": "水平マージン設定が必要です。", - "min-horizontal-margin-message": "最小水平マージン値としては0だけが許容されます。", - "max-horizontal-margin-message": "最大水平マージン値は50だけです。", - "vertical-margin": "垂直マージン", - "vertical-margin-required": "垂直マージン設定が必要です。", - "min-vertical-margin-message": "最小の垂直マージン値として0のみが許可されます。", - "max-vertical-margin-message": "最大垂直マージン値は50のみです。", - "autofill-height": "自動レイアウトの高さ", - "mobile-layout": "モバイルレイアウトの設定", - "mobile-row-height": "モバイル行の高さ、px", - "mobile-row-height-required": "モバイル行の高さ値が必要です。", - "min-mobile-row-height-message": "最小の行の高さの値として、5ピクセルしか許可されません。", - "max-mobile-row-height-message": "移動可能な行の高さの最大値として許可されるのは200ピクセルだけです。", - "display-title": "ダッシュボードのタイトルを表示する", - "toolbar-always-open": "ツールバーを開いたままにする", - "title-color": "タイトルカラー", - "display-dashboards-selection": "ダッシュボードの選択を表示する", - "display-entities-selection": "エンティティの選択を表示する", - "display-dashboard-timewindow": "タイムウィンドウを表示する", - "display-dashboard-export": "エクスポートの表示", - "import": "ダッシュボードをインポート", - "export": "ダッシュボードをエクスポート", - "export-failed-error": "{{error}}", - "create-new-dashboard": "新しいダッシュボードを作成する", - "dashboard-file": "ダッシュボードファイル", - "invalid-dashboard-file-error": "ダッシュボードをインポートできません:ダッシュボードのデータ構造が無効です。", - "dashboard-import-missing-aliases-title": "インポートされたダッシュボードで使用されるエイリアスを設定する", - "create-new-widget": "新しいウィジェットを作成する", - "import-widget": "インポートウィジェット", - "widget-file": "ウィジェットファイル", - "invalid-widget-file-error": "ウィジェットをインポートできません:ウィジェットのデータ構造が無効です。", - "widget-import-missing-aliases-title": "インポートされたウィジェットで使用されるエイリアスを設定する", - "open-toolbar": "ダッシュボードツールバーを開く", - "close-toolbar": "ツールバーを閉じる", - "configuration-error": "設定エラー", - "alias-resolution-error-title": "ダッシュボードエイリアス設定エラー", - "invalid-aliases-config": "エイリアスフィルタの一部に一致するデバイスを見つけることができません。
この問題を解決するには、管理者に連絡してください。", - "select-devices": "デバイスの選択", - "assignedToCustomer": "顧客に割り当てられた", - "assignedToCustomers": "顧客に割り当てられた", - "public": "パブリック", - "public-link": "パブリックリンク", - "copy-public-link": "パブリックリンクをコピーする", - "public-link-copied-message": "ダッシュボードのパブリックリンクがクリップボードにコピーされました", - "manage-states": "ダッシュボードの状態を管理する", - "states": "ダッシュボードの状態", - "search-states": "検索ダッシュボードの状態", - "selected-states": "{ count, plural, =1 {1 dashboard state} other {# dashboard states} }選択された", - "edit-state": "ダッシュボードの状態を編集する", - "delete-state": "ダッシュボードの状態を削除する", - "add-state": "ダッシュボードの状態を追加する", - "state": "ダッシュボードの状態", - "state-name": "名", - "state-name-required": "ダッシュボードの状態名は必須です。", - "state-id": "状態ID", - "state-id-required": "ダッシュボードの状態IDは必須です。", - "state-id-exists": "同じIDを持つダッシュボードの状態は既に存在します。", - "is-root-state": "ルート状態", - "delete-state-title": "ダッシュボードの状態を削除する", - "delete-state-text": "'{{stateName}}'?", - "show-details": "詳細を表示", - "hide-details": "詳細を隠す", - "select-state": "ターゲット状態を選択する", - "state-controller": "状態コントローラ" - }, - "datakey": { - "settings": "設定", - "advanced": "カスタム", - "label": "ラベル", - "color": "色", - "units": "単位", - "decimals": "小数点以下の桁数", - "data-generation-func": "データ生成関数", - "use-data-post-processing-func": "データ後処理機能を使用する", - "configuration": "データキー設定", - "timeseries": "時系列", - "attributes": "属性", - "alarm": "アラームフィールド", - "timeseries-required": "エンティティの時系列データが必要です。", - "timeseries-or-attributes-required": "エンティティのtimeseries /属性は必須です。", - "maximum-timeseries-or-attributes": "{ count, plural, =1 {1 timeseries/attribute is allowed.} other {# timeseries/attributes are allowed} }", - "alarm-fields-required": "アラームフィールドが必要です。", - "function-types": "関数型", - "function-types-required": "関数型が必要です。", - "maximum-function-types": "{ count, plural, =1 {1 function type is allowed.} other {# function types are allowed} }" - }, - "datasource": { - "type": "データソースタイプ", - "name": "名", - "add-datasource-prompt": "データソースを追加してください" - }, - "details": { - "edit-mode": "編集モード", - "toggle-edit-mode": "編集モードを切り替える" - }, - "device": { - "device": "デバイス", - "device-required": "デバイスが必要です。", - "devices": "デバイス", - "management": "端末管理", - "view-devices": "デバイスの表示", - "device-alias": "デバイスエイリアス", - "aliases": "デバイスエイリアス", - "no-alias-matching": "'{{alias}}'見つかりません。", - "no-aliases-found": "別名は見つかりませんでした。", - "no-key-matching": "'{{key}}'見つかりません。", - "no-keys-found": "キーが見つかりません。", - "create-new-alias": "新しいものを作成してください!", - "create-new-key": "新しいものを作成してください!", - "duplicate-alias-error": "'{{alias}}'
デバイスエイリアスは、ダッシュボード内で一意である必要があります。", - "configure-alias": "'{{alias}}'エイリアス", - "no-devices-matching": "'{{entity}}'発見されました。", - "alias": "エイリアス", - "alias-required": "デバイスエイリアスが必要です。", - "remove-alias": "デバイスエイリアスを削除する", - "add-alias": "デバイスエイリアスを追加する", - "name-starts-with": "デバイス名はで始まります", - "device-list": "デバイスリスト", - "use-device-name-filter": "フィルタを使用する", - "device-list-empty": "デバイスが選択されていません。", - "device-name-filter-required": "デバイス名フィルタが必要です。", - "device-name-filter-no-device-matched": "'{{device}}'発見されました。", - "add": "デバイスを追加", - "assign-to-customer": "顧客に割り当てる", - "assign-device-to-customer": "顧客にデバイスを割り当てる", - "assign-device-to-customer-text": "顧客に割り当てるデバイスを選択してください", - "make-public": "端末を公開する", - "make-private": "デバイスを非公開にする", - "no-devices-text": "デバイスが見つかりません", - "assign-to-customer-text": "デバイスを割り当てる顧客を選択してください", - "device-details": "デバイスの詳細", - "add-device-text": "新しいデバイスを追加する", - "credentials": "資格情報", - "manage-credentials": "資格情報を管理する", - "delete": "デバイスを削除する", - "assign-devices": "デバイスを割り当てる", - "assign-devices-text": "{ count, plural, =1 {1 device} other {# devices} }顧客に", - "delete-devices": "デバイスを削除する", - "unassign-from-customer": "顧客からの割り当て解除", - "unassign-devices": "デバイスの割り当てを解除する", - "unassign-devices-action-title": "{ count, plural, =1 {1 device} other {# devices} }顧客から", - "assign-new-device": "新しいデバイスを割り当てる", - "make-public-device-title": "'{{deviceName}}'パブリック?", - "make-public-device-text": "確認後、デバイスとそのすべてのデータは公開され、他のユーザーがアクセスできるようになります。", - "make-private-device-title": "'{{deviceName}}'プライベート?", - "make-private-device-text": "確認後、デバイスとそのすべてのデータは非公開になり、他人がアクセスできなくなります。", - "view-credentials": "資格情報を表示する", - "delete-device-title": "'{{deviceName}}'?", - "delete-device-text": "確認後、デバイスと関連するすべてのデータが回復不能になるので注意してください。", - "delete-devices-title": "{ count, plural, =1 {1 device} other {# devices} }?", - "delete-devices-action-title": "{ count, plural, =1 {1 device} other {# devices} }", - "delete-devices-text": "注意してください。確認後、選択したすべてのデバイスが削除され、関連するすべてのデータは回復不能になります。", - "unassign-device-title": "'{{deviceName}}'?", - "unassign-device-text": "確認の後、デバイスは割り当てが解除され、顧客がアクセスできなくなります。", - "unassign-device": "デバイスの割り当てを解除する", - "unassign-devices-title": "{ count, plural, =1 {1 device} other {# devices} }?", - "unassign-devices-text": "確認の後、選択されたすべてのデバイスが割り当て解除され、顧客がアクセスできなくなります。", - "device-credentials": "デバイス資格情報", - "credentials-type": "資格情報タイプ", - "access-token": "アクセストークン", - "access-token-required": "アクセストークンが必要です。", - "access-token-invalid": "アクセストークンの長さは、1〜32文字でなければなりません。", - "secret": "秘密", - "secret-required": "秘密が必要です。", - "device-type": "デバイスタイプ", - "device-type-required": "デバイスタイプが必要です。", - "select-device-type": "デバイスタイプを選択", - "enter-device-type": "デバイスタイプを入力", - "any-device": "すべてのデバイス", - "no-device-types-matching": "'{{entitySubtype}}'発見されました。", - "device-type-list-empty": "選択されたデバイスタイプはありません。", - "device-types": "デバイスの種類", - "name": "名", - "name-required": "名前は必須です。", - "description": "説明", - "events": "イベント", - "details": "詳細", - "copyId": "デバイスIDをコピーする", - "copyAccessToken": "コピーアクセストークン", - "idCopiedMessage": "デバイスIDがクリップボードにコピーされました", - "accessTokenCopiedMessage": "デバイスアクセストークンがクリップボードにコピーされました", - "assignedToCustomer": "顧客に割り当てられた", - "unable-delete-device-alias-title": "デバイスエイリアスを削除できません", - "unable-delete-device-alias-text": "'{{deviceAlias}}'{{widgetsList}}", - "is-gateway": "ゲートウェイです", - "public": "パブリック", - "device-public": "デバイスは公開されています", - "select-device": "デバイスの選択" - }, - "dialog": { - "close": "ダイアログを閉じる" - }, - "error": { - "unable-to-connect": "サーバーに接続できません!インターネット接続を確認してください。", - "unhandled-error-code": "{{errorCode}}", - "unknown-error": "不明なエラー" - }, - "entity": { - "entity": "エンティティ", - "entities": "エンティティ", - "aliases": "エンティティエイリアス", - "entity-alias": "エンティティエイリアス", - "unable-delete-entity-alias-title": "エンティティエイリアスを削除できません", - "unable-delete-entity-alias-text": "'{{entityAlias}}'{{widgetsList}}", - "duplicate-alias-error": "'{{alias}}'
エンティティのエイリアスは、ダッシュボード内で一意である必要があります。", - "missing-entity-filter-error": "'{{alias}}'.", - "configure-alias": "'{{alias}}'エイリアス", - "alias": "エイリアス", - "alias-required": "エンティティエイリアスが必要です。", - "remove-alias": "エンティティエイリアスを削除する", - "add-alias": "エンティティエイリアスを追加する", - "entity-list": "エンティティリスト", - "entity-type": "エンティティタイプ", - "entity-types": "エンティティタイプ", - "entity-type-list": "エンティティタイプリスト", - "any-entity": "任意のエンティティ", - "enter-entity-type": "エンティティタイプを入力", - "no-entities-matching": "'{{entity}}'発見されました。", - "no-entity-types-matching": "'{{entityType}}'発見されました。", - "name-starts-with": "名前はで始まる", - "use-entity-name-filter": "フィルタを使用する", - "entity-list-empty": "選択されたエンティティはありません", - "entity-name-filter-required": "エンティティ名フィルタが必要です。", - "entity-name-filter-no-entity-matched": "'{{entity}}'発見されました。", - "all-subtypes": "すべて", - "select-entities": "エンティティの選択", - "no-aliases-found": "別名は見つかりませんでした。", - "no-alias-matching": "'{{alias}}'見つかりません。", - "create-new-alias": "新しいものを作成してください!", - "key": "キー", - "key-name": "キー名", - "no-keys-found": "キーが見つかりません。", - "no-key-matching": "'{{key}}'見つかりません。", - "create-new-key": "新しいものを作成してください!", - "type": "タイプ", - "type-required": "エンティティタイプが必要です。", - "type-device": "デバイス", - "type-devices": "デバイス", - "list-of-devices": "{ count, plural, =1 {One device} other {List of # devices} }", - "device-name-starts-with": "'{{prefix}}'", - "type-asset": "アセット", - "type-assets": "アセット", - "list-of-assets": "{ count, plural, =1 {One asset} other {List of # assets} }", - "asset-name-starts-with": "'{{prefix}}'", - "type-rule": "ルール", - "type-rules": "ルール", - "list-of-rules": "{ count, plural, =1 {One rule} other {List of # rules} }", - "rule-name-starts-with": "'{{prefix}}'", - "type-plugin": "プラグイン", - "type-plugins": "プラグイン", - "list-of-plugins": "{ count, plural, =1 {One plugin} other {List of # plugins} }", - "plugin-name-starts-with": "'{{prefix}}'", - "type-tenant": "テナント", - "type-tenants": "テナント", - "list-of-tenants": "{ count, plural, =1 {One tenant} other {List of # tenants} }", - "tenant-name-starts-with": "'{{prefix}}'", - "type-customer": "顧客", - "type-customers": "顧客", - "list-of-customers": "{ count, plural, =1 {One customer} other {List of # customers} }", - "customer-name-starts-with": "'{{prefix}}'", - "type-user": "ユーザー", - "type-users": "ユーザー", - "list-of-users": "{ count, plural, =1 {One user} other {List of # users} }", - "user-name-starts-with": "'{{prefix}}'", - "type-dashboard": "ダッシュボード", - "type-dashboards": "ダッシュボード", - "list-of-dashboards": "{ count, plural, =1 {One dashboard} other {List of # dashboards} }", - "dashboard-name-starts-with": "'{{prefix}}'", - "type-alarm": "アラーム", - "type-alarms": "アラーム", - "list-of-alarms": "{ count, plural, =1 {One alarms} other {List of # alarms} }", - "alarm-name-starts-with": "'{{prefix}}'", - "type-rulechain": "ルールチェーン", - "type-rulechains": "ルールチェーン", - "list-of-rulechains": "{ count, plural, =1 {One rule chain} other {List of # rule chains} }", - "rulechain-name-starts-with": "'{{prefix}}'", - "type-rulenode": "ルールノード", - "type-rulenodes": "ルールノード", - "list-of-rulenodes": "{ count, plural, =1 {One rule node} other {List of # rule nodes} }", - "rulenode-name-starts-with": "'{{prefix}}'", - "type-current-customer": "現在の顧客", - "search": "検索エンティティ", - "selected-entities": "{ count, plural, =1 {1 entity} other {# entities} }選択された", - "entity-name": "エンティティ名", - "details": "エンティティの詳細", - "no-entities-prompt": "エンティティが見つかりません", - "no-data": "表示するデータがありません" - }, - "event": { - "event-type": "イベントタイプ", - "type-error": "エラー", - "type-lc-event": "ライフサイクルイベント", - "type-stats": "統計", - "type-debug-rule-node": "デバッグ", - "type-debug-rule-chain": "デバッグ", - "no-events-prompt": "イベントは見つかりませんでした", - "error": "エラー", - "alarm": "警報", - "event-time": "イベント時間", - "server": "サーバ", - "body": "体", - "method": "方法", - "type": "タイプ", - "message-id": "メッセージID", - "message-type": "メッセージタイプ", - "data-type": "データ・タイプ", - "relation-type": "関係タイプ", - "metadata": "メタデータ", - "data": "データ", - "event": "イベント", - "status": "状態", - "success": "成功", - "failed": "失敗", - "messages-processed": "処理されたメッセージ", - "errors-occurred": "エラーが発生しました", + "access": { + "unauthorized": "未認証", + "unauthorized-access": "未認証アクセス", + "unauthorized-access-text": "このリソースにアクセスするにはサインインする必要があります!", + "access-forbidden": "アクセス禁止", + "access-forbidden-text": "この場所へのアクセス権がありません!
この場所にアクセスしたい場合は、別のユーザーでサインインしてみてください。", + "refresh-token-expired": "セッションの有効期限が切れました", + "refresh-token-failed": "セッションを更新できません", + "permission-denied": "権限がありません", + "permission-denied-text": "この操作を実行する権限がありません!" + }, + "account": { + "account": "アカウント", + "notification-settings": "通知設定" + }, + "action": { + "activate": "有効化", + "suspend": "一時停止", + "save": "保存", + "saveAs": "名前を付けて保存", + "move": "移動", + "cancel": "キャンセル", + "ok": "OK", + "delete": "削除", + "add": "追加", + "yes": "はい", + "no": "いいえ", + "update": "更新", + "remove": "除去", + "search": "検索", + "clear-search": "検索をクリア", + "assign": "割り当て", + "unassign": "割り当て解除", + "share": "共有", + "make-private": "非公開にする", + "apply": "適用", + "apply-changes": "変更を適用", + "edit-mode": "編集モード", + "enter-edit-mode": "編集モードに入る", + "decline-changes": "変更を破棄", + "decline": "拒否", + "close": "閉じる", + "back": "戻る", + "run": "実行", + "sign-in": "サインイン!", + "edit": "編集", + "view": "表示", + "create": "作成", + "drag": "ドラッグ", + "refresh": "更新", + "undo": "元に戻す", + "copy": "コピー", + "paste": "貼り付け", + "copy-reference": "参照をコピー", + "paste-reference": "参照を貼り付け", + "import": "インポート", + "export": "エクスポート", + "share-via": "{{provider}}で共有", + "select": "選択", + "continue": "続行", + "discard-changes": "変更を破棄", + "download": "ダウンロード", + "next": "次へ", + "next-with-label": "次へ: {{label}}", + "read-more": "詳細を見る", + "hide": "非表示", + "test": "テスト", + "done": "完了", + "print": "印刷", + "restore": "復元", + "confirm": "確認", + "more": "もっと見る", + "less": "折りたたむ", + "skip": "スキップ", + "send": "送信", + "reset": "リセット", + "show-more": "もっと表示", + "dont-show-again": "今後表示しない", + "see-documentation": "ドキュメントを見る", + "clear": "クリア", + "upload": "アップロード", + "delete-anyway": "それでも削除", + "delete-selected": "選択したものを削除", + "set": "設定" + }, + "aggregation": { + "aggregation": "集計", + "function": "データ集計関数", + "limit": "最大値数", + "group-interval": "グループ化間隔", + "min": "最小", + "max": "最大", + "avg": "平均", + "sum": "合計", + "count": "件数", + "none": "なし" + }, + "admin": { + "settings": "設定", + "general": "一般", + "general-settings": "一般設定", + "home-settings": "ホーム設定", + "home": "ホーム", + "outgoing-mail": "メールサーバー", + "outgoing-mail-settings": "送信メールサーバー設定", + "system-settings": "システム設定", + "test-mail-sent": "テストメールが正常に送信されました!", + "base-url": "ベースURL", + "base-url-required": "ベースURLは必須です。", + "prohibit-different-url": "クライアントのリクエストヘッダーのホスト名の使用を禁止", + "prohibit-different-url-hint": "この設定は本番環境では有効にする必要があります。無効にするとセキュリティ上の問題が発生する可能性があります", + "device-connectivity": { + "device-connectivity": "デバイス接続", + "http-s": "HTTP(s)", + "mqtt-s": "MQTT(s)", + "coap-s": "COAP(s)", + "http": "HTTP", + "https": "HTTPs", + "mqtt": "MQTT", + "mqtts": "MQTTs", + "coap": "COAP", + "coaps": "COAPs", + "hint": "ホストまたはポートのフィールドが空の場合、デフォルトのプロトコル値が使用されます。", + "host": "ホスト", + "port": "ポート", + "port-pattern": "ポートは正の整数である必要があります。", + "port-range": "ポートは1〜65535の範囲である必要があります。" + }, + "mail-from": "送信元メール", + "mail-from-required": "送信元メールは必須です。", + "smtp-protocol": "SMTPプロトコル", + "smtp-host": "SMTPホスト", + "smtp-host-required": "SMTPホストは必須です。", + "smtp-port": "SMTPポート", + "smtp-port-required": "SMTPポートを指定する必要があります。", + "smtp-port-invalid": "有効なSMTPポートではないようです。", + "timeout-msec": "タイムアウト (msec)", + "timeout-required": "タイムアウトは必須です。", + "timeout-invalid": "有効なタイムアウトではないようです。", + "enable-tls": "TLSを有効化", + "tls-version": "TLSバージョン", + "enable-proxy": "プロキシを有効化", + "proxy-host": "プロキシホスト", + "proxy-host-required": "プロキシホストは必須です。", + "proxy-port": "プロキシポート", + "proxy-port-required": "プロキシポートは必須です。", + "proxy-port-range": "プロキシポートは1〜65535の範囲である必要があります。", + "proxy-user": "プロキシユーザー", + "proxy-password": "プロキシパスワード", + "change-password": "パスワードを変更", + "send-test-mail": "テストメールを送信", + "sms-provider": "SMSプロバイダー", + "sms-provider-settings": "SMSプロバイダー設定", + "sms-provider-type": "SMSプロバイダータイプ", + "sms-provider-type-required": "SMSプロバイダータイプは必須です。", + "sms-provider-type-aws-sns": "Amazon SNS", + "sms-provider-type-twilio": "Twilio", + "sms-provider-type-smpp": "SMPP", + "aws-access-key-id": "AWSアクセスキーID", + "aws-access-key-id-required": "AWSアクセスキーIDは必須です", + "aws-secret-access-key": "AWSシークレットアクセスキー", + "aws-secret-access-key-required": "AWSシークレットアクセスキーは必須です", + "aws-region": "AWSリージョン", + "aws-region-required": "AWSリージョンは必須です", + "number-from": "送信元電話番号", + "number-from-required": "送信元電話番号は必須です。", + "number-to": "送信先電話番号", + "number-to-required": "送信先電話番号は必須です。", + "phone-number-hint": "E.164形式の電話番号(例: +19995550123)", + "phone-number-hint-twilio": "E.164形式の電話番号/電話番号のSID/メッセージングサービスSID(例: +19995550123/PNXXX/MGXXX)", + "phone-number-pattern": "無効な電話番号です。E.164形式である必要があります(例: +19995550123)。", + "phone-number-pattern-twilio": "無効な電話番号です。E.164形式の電話番号/電話番号のSID/メッセージングサービスSIDである必要があります(例: +19995550123/PNXXX/MGXXX)。", + "sms-message": "SMSメッセージ", + "sms-message-required": "SMSメッセージは必須です。", + "sms-message-max-length": "SMSメッセージは1600文字を超えることはできません", + "twilio-account-sid": "TwilioアカウントSID", + "twilio-account-sid-required": "TwilioアカウントSIDは必須です", + "twilio-account-token": "Twilioアカウントトークン", + "twilio-account-token-required": "Twilioアカウントトークンは必須です", + "send-test-sms": "テストSMSを送信", + "test-sms-sent": "テストSMSが正常に送信されました!", + "security-settings": "セキュリティ設定", + "password-policy": "パスワードポリシー", + "minimum-password-length": "最小パスワード長", + "minimum-password-length-required": "最小パスワード長は必須です", + "minimum-password-length-range": "最小パスワード長は6〜50の範囲である必要があります", + "maximum-password-length": "最大パスワード長", + "maximum-password-length-min": "最大パスワード長は少なくとも6である必要があります", + "maximum-password-length-less-min": "最大パスワード長は最小長より大きい必要があります", + "minimum-uppercase-letters": "大文字の最小数", + "minimum-uppercase-letters-range": "大文字の最小数は負の値にはできません", + "minimum-lowercase-letters": "小文字の最小数", + "minimum-lowercase-letters-range": "小文字の最小数は負の値にはできません", + "minimum-digits": "数字の最小数", + "minimum-digits-range": "数字の最小数は負の値にはできません", + "minimum-special-characters": "特殊文字の最小数", + "minimum-special-characters-range": "特殊文字の最小数は負の値にはできません", + "password-expiration-period-days": "パスワード有効期限日数", + "password-expiration-period-days-range": "パスワード有効期限日数は負の値にはできません", + "password-reuse-frequency-days": "パスワード再利用間隔日数", + "password-reuse-frequency-days-range": "パスワード再利用間隔日数は負の値にはできません", + "allow-whitespace": "空白を許可", + "force-reset-password-if-no-valid": "無効な場合はパスワードのリセットを強制", + "force-reset-password-if-no-valid-hint": "この機能を有効にする場合は注意してください。有効にすると、無効なパスワードのユーザーはemailでパスワードをリセットする必要があります。", + "general-policy": "一般ポリシー", + "max-failed-login-attempts": "アカウントがロックされるまでのログイン失敗回数の上限", + "minimum-max-failed-login-attempts-range": "ログイン失敗回数の上限は負の値にはできません", + "user-lockout-notification-email": "ユーザーアカウントがロックアウトされた場合、emailに通知を送信", + "user-activation-token-ttl": "ユーザー有効化リンクのTTL(時間)", + "user-activation-token-ttl-range": "ユーザー有効化リンクのTTLは1〜24時間の範囲である必要があります", + "password-reset-token-ttl": "パスワードリセットリンクのTTL(時間)", + "password-reset-token-ttl-range": "パスワードリセットリンクのTTLは1〜24時間の範囲である必要があります", + "mobile-secret-key-length": "モバイルシークレットキー長", + "mobile-secret-key-length-range": "モバイルシークレットキー長は正の値である必要があります", + "domain-name": "ドメイン名", + "domain-name-unique": "ドメイン名とプロトコルは一意である必要があります。", + "domain-name-max-length": "ドメイン名は256未満である必要があります", + "error-verification-url": "ドメイン名に記号'/'および':'を含めることはできません。例: thingsboard.io", + "connection-settings": "接続設定", + "oauth2": { + "access-token-uri": "アクセストークンURI", + "access-token-uri-required": "アクセストークンURIは必須です。", + "activate-user": "ユーザーを有効化", + "add-domain": "ドメインを追加", + "delete-domain": "ドメインを削除", + "add-provider": "プロバイダーを追加", + "delete-provider": "プロバイダーを削除", + "allow-user-creation": "ユーザー作成を許可", + "always-fullscreen": "常に全画面表示", + "authorization-uri": "認可URI", + "authorization-uri-required": "認可URIは必須です。", + "add-client": "OAuth 2.0クライアントを追加", + "client-details": "OAuth 2.0クライアント詳細", + "client": "OAuth 2.0クライアント", + "clients": "OAuth 2.0クライアント", + "no-oauth2-clients": "OAuth 2.0クライアントが見つかりません", + "search-oauth2-clients": "OAuth 2.0クライアントを検索", + "delete-client-title": "OAuth 2.0クライアント'{{clientName}}'を削除してもよろしいですか?", + "delete-client-text": "注意: 確認後、クライアントと関連データはすべて復元できなくなります。", + "delete-mobile-app-title": "モバイルアプリケーション'{{applicationName}}'を削除してもよろしいですか?", + "delete-mobile-app-text": "注意: 確認後、モバイルアプリケーションと関連データはすべて復元できなくなります。", + "title": "タイトル", + "client-title-required": "タイトルは必須です", + "client-title-max-length": "タイトルは100未満である必要があります", + "advanced-settings": "詳細設定", + "domain-details": "ドメイン詳細", + "no-domains": "ドメインが見つかりません", + "search-domains": "ドメインを検索", + "mobile-app-details": "モバイルアプリケーション詳細", + "add-mobile-app": "モバイルアプリケーションを追加", + "no-mobile-apps": "モバイルアプリケーションが見つかりません", + "search-mobile-apps": "モバイルアプリケーションを検索", + "send-token": "トークンを送信", + "create-new": "新規作成", + "client-authentication-method": "クライアント認証方式", + "client-id": "クライアントID", + "client-id-required": "クライアントIDは必須です。", + "client-id-max-length": "クライアントIDは256未満である必要があります", + "client-secret": "クライアントシークレット", + "client-secret-required": "クライアントシークレットは必須です。", + "client-secret-max-length": "クライアントシークレットは2049未満である必要があります", + "custom-setting": "カスタム設定", + "customer-name-pattern": "顧客名パターン", + "customer-name-pattern-max-length": "顧客名パターンは256未満である必要があります", + "default-dashboard-name": "デフォルトダッシュボード名", + "default-dashboard-name-max-length": "デフォルトダッシュボード名は256未満である必要があります", + "delete-domain-text": "注意: 確認後、ドメインおよびすべてのプロバイダーデータは利用できなくなります。", + "delete-domain-title": "ドメイン'{{domainName}}'を削除してもよろしいですか?", + "delete-registration-text": "注意: 確認後、プロバイダーデータは利用できなくなります。", + "delete-registration-title": "プロバイダー'{{name}}'を削除してもよろしいですか?", + "email-attribute-key": "Email属性キー", + "email-attribute-key-required": "Email属性キーは必須です。", + "email-attribute-key-max-length": "Email属性キーは32未満である必要があります", + "first-name-attribute-key": "名属性キー", + "first-name-attribute-key-max-length": "名属性キーは32未満である必要があります", + "general": "一般", + "jwk-set-uri": "JSON Web Key URI", + "last-name-attribute-key": "姓属性キー", + "last-name-attribute-key-max-length": "姓属性キーは32未満である必要があります", + "login-button-icon": "ログインボタンアイコン", + "login-button-label": "プロバイダーラベル", + "login-button-label-placeholder": "$(Provider label)でログイン", + "login-button-label-required": "ラベルは必須です。", + "login-provider": "ログインプロバイダー", + "mapper": "マッパー", + "new-domain": "新しいドメイン", + "oauth2": "OAuth 2.0", + "password-max-length": "パスワードは256未満である必要があります", + "redirect-uri-template": "リダイレクトURIテンプレート", + "copy-redirect-uri": "リダイレクトURIをコピー", + "registration-id": "登録ID", + "registration-id-required": "登録IDは必須です。", + "registration-id-unique": "登録IDはシステム内で一意である必要があります。", + "scope": "スコープ", + "scope-required": "スコープは必須です。", + "tenant-name-pattern": "テナント名パターン", + "tenant-name-pattern-required": "テナント名パターンは必須です。", + "tenant-name-pattern-max-length": "テナント名パターンは256未満である必要があります", + "tenant-name-strategy": "テナント名戦略", + "type": "マッパータイプ", + "uri-pattern-error": "無効なURI形式です。", + "url": "URL", + "url-pattern": "無効なURL形式です。", + "url-required": "URLは必須です。", + "url-max-length": "URLは256未満である必要があります", + "user-info-uri": "ユーザー情報URI", + "user-info-uri-required": "ユーザー情報URIは必須です。", + "username-max-length": "ユーザー名は256未満である必要があります", + "user-name-attribute-name": "ユーザー名属性キー", + "user-name-attribute-name-required": "ユーザー名属性キーは必須です", + "protocol": "プロトコル", + "domain-schema-http": "HTTP", + "domain-schema-https": "HTTPS", + "domain-schema-mixed": "HTTP+HTTPS", + "enable": "OAuth 2.0設定を有効化", + "disable": "OAuth 2.0設定を無効化", + "edge": "Edgeへ伝播", + "edge-enable": "Edgeへの伝播を有効化", + "edge-disable": "Edgeへの伝播を無効化", + "domains": "ドメイン", + "mobile-apps": "モバイルアプリケーション", + "mobile-package": "アプリケーションパッケージ", + "mobile-package-placeholder": "例: my.example.app", + "mobile-package-hint": "Androidの場合: 独自の一意なApplication ID。iOSの場合: Product bundle identifier。", + "mobile-package-unique": "アプリケーションパッケージは一意である必要があります。", + "mobile-package-required": "アプリケーションパッケージは必須です。", + "mobile-package-max-length": "アプリケーションパッケージは256未満である必要があります", + "mobile-package-spaces": "アプリケーションパッケージに空白を含めることはできません", + "mobile-app-secret": "アプリケーションシークレット", + "mobile-app-secret-hint": "少なくとも512ビットのデータを表すBase64エンコード文字列。", + "mobile-app-secret-required": "アプリケーションシークレットは必須です。", + "mobile-app-secret-min-length": "アプリケーションシークレットは少なくとも512ビットのデータである必要があります。", + "mobile-app-secret-base64": "アプリケーションシークレットはBase64形式である必要があります。", + "invalid-mobile-app-secret": "アプリケーションシークレットは英数字のみを含み、16〜2048文字の長さである必要があります。", + "copy-mobile-app-secret": "アプリケーションシークレットをコピー", + "delete-mobile-app": "アプリケーション情報を削除", + "providers": "プロバイダー", + "platform-web": "Web", + "platform-android": "Android", + "platform-ios": "iOS", + "all-platforms": "すべてのプラットフォーム", + "smtp-provider": "SMTPプロバイダー", + "allowed-platforms": "許可されたプラットフォーム", + "authentication": "認証", + "basic": "基本", + "provider": "プロバイダー", + "redirect-url": "リダイレクトURI", + "domain-name": "ドメイン名", + "domain-name-required": "ドメイン名は必須です", + "redirect-url-template": "リダイレクトURIテンプレート", + "microsoft-tenant-id": "ディレクトリ(テナント)ID", + "microsoft-tenant-id-required": "ディレクトリ(テナント)IDは必須です", + "token-uri": "トークンURI", + "token-uri-required": "トークンURIは必須です", + "redirect-uri": "リダイレクトURI", + "google-provider": "Google", + "microsoft-provider": "Office 365", + "sendgrid-provider": "Sendgrid", + "custom-provider": "カスタム", + "generate-access-token": "アクセストークンを生成", + "update-access-token": "アクセストークンを更新", + "access-token-status": "アクセストークンのステータス:", + "token-status-generated": "生成済み", + "token-status-not-generated": "未生成" + }, + "smpp-provider": { + "smpp-version": "SMPPバージョン", + "smpp-host": "SMPPホスト", + "smpp-host-required": "SMPPホストは必須です", + "smpp-port": "SMPPポート", + "smpp-port-required": "SMPPポートは必須です", + "system-id": "システムID", + "system-id-required": "システムIDは必須です", + "password": "パスワード", + "password-required": "パスワードは必須です", + "type-settings": "タイプ設定", + "source-settings": "送信元設定", + "destination-settings": "宛先設定", + "additional-settings": "追加設定", + "system-type": "システムタイプ", + "bind-type": "バインドタイプ", + "service-type": "サービス種別", + "source-address": "送信元アドレス", + "source-ton": "送信元TON", + "source-npi": "送信元NPI", + "destination-ton": "宛先TON (番号種別)", + "destination-npi": "宛先NPI (番号計画識別)", + "address-range": "アドレス範囲", + "coding-scheme": "符号化方式", + "bind-type-tx": "送信", + "bind-type-rx": "受信", + "bind-type-trx": "送受信", + "ton-unknown": "不明", + "ton-international": "国際", + "ton-national": "国内", + "ton-network-specific": "ネットワーク固有", + "ton-subscriber-number": "加入者番号", + "ton-alphanumeric": "英数字", + "ton-abbreviated": "短縮", + "npi-unknown": "0 - 不明", + "npi-isdn": "1 - ISDN/電話番号計画 (E163/E164)", + "npi-data-numbering-plan": "3 - データ番号計画 (X.121)", + "npi-telex-numbering-plan": "4 - テレックス番号計画 (F.69)", + "npi-land-mobile": "6 - 陸上移動 (E.212)", + "npi-national-numbering-plan": "8 - 国内番号計画", + "npi-private-numbering-plan": "9 - 私設番号計画", + "npi-ermes-numbering-plan": "10 - ERMES番号計画 (ETSI DE/PS 3 01-3)", + "npi-internet": "13 - インターネット (IP)", + "npi-wap-client-id": "18 - WAPクライアントID (WAP Forumにより定義予定)", + "scheme-smsc": "0 - SMSC デフォルトアルファベット (短番号/長番号はASCII、フリーダイヤルはGSM)", + "scheme-ia5": "1 - IA5 (短番号/長番号はASCII、フリーダイヤルはLatin 9 (ISO-8859-9))", + "scheme-octet-unspecified-2": "2 - オクテット未指定 (8ビットバイナリ)", + "scheme-latin-1": "3 - Latin 1 (ISO-8859-1)", + "scheme-octet-unspecified-4": "4 - オクテット未指定 (8ビットバイナリ)", + "scheme-jis": "5 - JIS (X 0208-1990)", + "scheme-cyrillic": "6 - Cyrillic (ISO-8859-5)", + "scheme-latin-hebrew": "7 - Latin/Hebrew (ISO-8859-8)", + "scheme-ucs-utf": "8 - UCS2/UTF-16 (ISO/IEC-10646)", + "scheme-pictogram-encoding": "9 - ピクトグラムエンコーディング", + "scheme-music-codes": "10 - 音楽コード (ISO-2022-JP)", + "scheme-extended-kanji-jis": "13 - 拡張漢字JIS (X 0212-1990)", + "scheme-korean-graphic-character-set": "14 - 韓国語グラフィック文字セット (KS C 5601/KS X 1001)" + }, + "queue-select-name": "キュー名を選択", + "queue-name": "名前", + "queue-name-required": "キュー名は必須です!", + "queues": "キュー", + "queue-partitions": "パーティション", + "queue-submit-strategy": "投入戦略", + "queue-processing-strategy": "処理戦略", + "queue-configuration": "キュー設定", + "repository-settings": "リポジトリ設定", + "repository": "リポジトリ", + "repository-url": "リポジトリURL", + "repository-url-required": "リポジトリURLは必須です。", + "default-branch": "デフォルトブランチ名", + "repository-read-only": "読み取り専用", + "show-merge-commits": "マージコミットを表示", + "authentication-settings": "認証設定", + "auth-method": "認証方式", + "auth-method-username-password": "パスワード / アクセストークン", + "auth-method-username-password-hint": "GitHubユーザーは、リポジトリへの書き込み権限を持つアクセストークン必ず使用する必要があります。", + "auth-method-private-key": "秘密鍵", + "password-access-token": "パスワード / アクセストークン", + "change-password-access-token": "パスワード / アクセストークンを変更", + "private-key": "秘密鍵", + "drop-private-key-file-or": "秘密鍵ファイルをドラッグ&ドロップするか、または", + "passphrase": "パスフレーズ", + "enter-passphrase": "パスフレーズを入力", + "change-passphrase": "パスフレーズを変更", + "check-access": "アクセスを確認", + "check-repository-access-success": "リポジトリへのアクセスが正常に検証されました!", + "delete-repository-settings-title": "リポジトリ設定を削除してもよろしいですか?", + "delete-repository-settings-text": "注意: 確認後、リポジトリ設定は削除され、バージョン管理機能は利用できなくなります。", + "auto-commit-settings": "自動コミット設定", + "auto-commit": "自動コミット", + "auto-commit-entities": "自動コミット対象エンティティ", + "no-auto-commit-entities-prompt": "自動コミット用に設定されたエンティティがありません", + "delete-auto-commit-settings-title": "自動コミット設定を削除してもよろしいですか?", + "delete-auto-commit-settings-text": "注意: 確認後、自動コミット設定は削除され、すべてのエンティティで自動コミットが無効になります。", + "mobile-app": { + "mobile-app": "モバイルアプリ", + "mobile-app-qr-code-widget-settings": "モバイルアプリQRコードウィジェット設定", + "applications": "アプリケーション", + "default": "デフォルト", + "custom": "カスタム", + "android": "Android", + "ios": "iOS", + "appearance": "外観", + "appearance-on-home-page": "ホームページでの表示", + "enabled": "有効", + "disabled": "無効", + "badges": "バッジ", + "label": "ラベル", + "label-required": "ラベルは必須です", + "label-max-length": "ラベルは50文字以下である必要があります", + "right": "右", + "left": "左", + "set": "設定", + "preview": "プレビュー", + "connect-mobile-app": "モバイルアプリを接続", + "use-system-settings": "システム設定を使用" + }, + "2fa": { + "2fa": "二要素認証", + "available-providers": "利用可能なプロバイダー", + "issuer-name": "発行者名", + "issuer-name-required": "発行者名は必須です。", + "max-verification-failures-before-user-lockout": "ユーザーがロックアウトされるまでの検証失敗回数の上限", + "max-verification-failures-before-user-lockout-pattern": "検証失敗回数の上限は正の整数である必要があります。", + "number-of-checking-attempts": "チェック試行回数", + "number-of-checking-attempts-pattern": "チェック試行回数は正の整数である必要があります。", + "number-of-checking-attempts-required": "チェック試行回数は必須です。", + "number-of-codes": "コード数", + "number-of-codes-pattern": "コード数は正の整数である必要があります。", + "number-of-codes-required": "コード数は必須です。", + "provider": "プロバイダー", + "retry-verification-code-period": "検証コード再試行間隔(秒)", + "retry-verification-code-period-pattern": "最小間隔は5秒です", + "retry-verification-code-period-required": "検証コード再試行間隔は必須です。", + "total-allowed-time-for-verification": "検証の許容合計時間(秒)", + "total-allowed-time-for-verification-pattern": "許容合計時間の最小値は60秒です", + "total-allowed-time-for-verification-required": "許容合計時間は必須です。", + "use-system-two-factor-auth-settings": "システムの二要素認証設定を使用", + "verification-code-check-rate-limit": "検証コードチェックのレート制限", + "verification-code-lifetime": "検証コード有効期限(秒)", + "verification-code-lifetime-pattern": "検証コード有効期限は正の整数である必要があります。", + "verification-code-lifetime-required": "検証コード有効期限は必須です。", + "verification-message-template": "検証メッセージテンプレート", + "verification-limitations": "検証の制限", + "verification-message-template-pattern": "検証メッセージには次のパターンを含める必要があります: ${code}", + "verification-message-template-required": "検証メッセージテンプレートは必須です。", + "within-time": "時間内(秒)", + "within-time-pattern": "時間は正の整数である必要があります。", + "within-time-required": "時間は必須です。" + }, + "jwt": { + "security-settings": "JWTセキュリティ設定", + "issuer-name": "発行者名", + "issuer-name-required": "発行者名は必須です。", + "signings-key": "署名キー", + "signings-key-hint": "少なくとも512ビットのデータを表すBase64エンコード文字列。", + "signings-key-required": "署名キーは必須です。", + "signings-key-min-length": "署名キーは少なくとも512ビットのデータである必要があります。", + "signings-key-base64": "署名キーはbase64形式である必要があります。", + "expiration-time": "トークン有効期限 (秒)", + "expiration-time-required": "トークン有効期限は必須です。", + "expiration-time-max": "最大許容時間は2147483647秒(68年)です。", + "expiration-time-min": "最小時間は60秒 (1分)です。", + "refresh-expiration-time": "リフレッシュトークン有効期限 (秒)", + "refresh-expiration-time-required": "リフレッシュトークン有効期限は必須です。", + "refresh-expiration-time-max": "最大許容時間は2147483647秒 (68年)です。", + "refresh-expiration-time-min": "最小時間は900秒 (15分)です。", + "refresh-expiration-time-less-token": "リフレッシュトークンの時間はトークンの時間より大きい必要があります。", + "generate-key": "キーを生成", + "info-header": "すべてのユーザーは再ログインが必要になります", + "info-message": "JWT署名キーを変更すると、発行済みのすべてのトークンが無効になります。すべてのユーザーは再ログインが必要になります。これはRest API/Websocketsを使用するスクリプトにも影響します。" + }, + "resources": "リソース", + "notifications": "通知", + "notifications-settings": "通知設定", + "slack-api-token": "Slack APIトークン", + "slack": "Slack", + "slack-settings": "Slack設定", + "mobile-settings": "モバイル設定", + "firebase-service-account-file": "Firebaseサービスアカウント認証情報JSONファイル", + "select-firebase-service-account-file": "Firebaseサービスアカウント認証情報ファイルをドラッグ&ドロップするか、または " + }, + "alarm": { + "alarm": "アラーム", + "alarms": "アラーム", + "all-alarms": "すべてのアラーム", + "select-alarm": "アラームを選択", + "no-alarms-matching": "'{{entity}}'に一致するアラームが見つかりません。", + "alarm-required": "アラームは必須です", + "alarm-filter": "アラームフィルター", + "filter": "フィルター", + "alarm-status": "アラームステータス", + "alarm-status-list": "アラームステータス一覧", + "any-status": "すべてのステータス", + "search-status": { + "ANY": "すべて", + "ACTIVE": "アクティブ", + "CLEARED": "クリア済み", + "ACK": "確認済み", + "UNACK": "未確認" + }, + "display-status": { + "ACTIVE_UNACK": "アクティブ 未確認", + "ACTIVE_ACK": "アクティブ 確認済み", + "CLEARED_UNACK": "クリア済み 未確認", + "CLEARED_ACK": "クリア済み 確認済み" + }, + "no-alarms-prompt": "アラームが見つかりません", + "created-time": "作成日時", + "type": "タイプ", + "severity": "重要度", + "originator": "発生元", + "originator-type": "発生元タイプ", + "details": "詳細", + "originator-label": "発生元ラベル", + "assign": "割り当て", + "assignments": "割り当て", + "assignee": "担当者", + "assignee-id": "担当者ID", + "assignee-first-name": "担当者名", + "assignee-last-name": "担当者姓", + "assignee-email": "担当者Email", + "unassigned": "未割り当て", + "user-deleted": "ユーザーが削除されました", + "assignee-not-set": "すべて", + "status": "ステータス", + "alarm-details": "アラーム詳細", + "start-time": "開始日時", + "assign-time": "割り当て日時", + "end-time": "終了日時", + "ack-time": "確認日時", + "clear-time": "クリア日時", + "duration": "継続時間", + "alarm-severity": "アラーム重要度", + "alarm-severity-list": "アラーム重要度一覧", + "any-severity": "すべての重要度", + "severity-critical": "致命的", + "severity-major": "重大", + "severity-minor": "軽微", + "severity-warning": "警告", + "severity-indeterminate": "未確定", + "acknowledge": "確認", + "clear": "クリア", + "delete": "削除", + "search": "アラームを検索", + "selected-alarms": "{ count, plural, =1 {1 件のアラーム} other {# 件のアラーム} } を選択", + "no-data": "表示するデータがありません", + "polling-interval": "アラームポーリング間隔 (秒)", + "polling-interval-required": "アラームポーリング間隔は必須です。", + "min-polling-interval-message": "ポーリング間隔の最小値は1秒です。", + "aknowledge-alarms-title": "{ count, plural, =1 {1 件のアラーム} other {# 件のアラーム} } を確認", + "aknowledge-alarms-text": "{ count, plural, =1 {1 件のアラーム} other {# 件のアラーム} } を確認してもよろしいですか?", + "aknowledge-alarm-title": "アラームを確認", + "aknowledge-alarm-text": "アラームを確認してもよろしいですか?", + "selected-alarms-are-acknowledged": "選択したアラームはすでに確認済みです", + "clear-alarms-title": "{ count, plural, =1 {1 件のアラーム} other {# 件のアラーム} } をクリア", + "clear-alarms-text": "{ count, plural, =1 {1 件のアラーム} other {# 件のアラーム} } をクリアしてもよろしいですか?", + "clear-alarm-title": "アラームをクリア", + "clear-alarm-text": "アラームをクリアしてもよろしいですか?", + "delete-alarms-title": "{ count, plural, =1 {1 件のアラーム} other {# 件のアラーム} } を削除", + "delete-alarms-text": "{ count, plural, =1 {1 件のアラーム} other {# 件のアラーム} } を削除してもよろしいですか?", + "selected-alarms-are-cleared": "選択したアラームはすでにクリア済みです", + "alarm-status-filter": "アラームステータスフィルター", + "alarm-filter-title": "アラームフィルター", + "assigned": "割り当て済み", + "filter-title": "フィルター", + "max-count-load": "読み込むアラーム数の上限 (0 - 無制限)", + "max-count-load-required": "読み込むアラーム数の上限は必須です。", + "max-count-load-error-min": "最小値は0です。", + "fetch-size": "フェッチサイズ", + "fetch-size-required": "フェッチサイズは必須です。", + "fetch-size-error-min": "最小値は10です。", + "alarm-types": "アラームタイプ", + "alarm-type-list": "アラームタイプ一覧", + "any-type": "すべてのタイプ", + "assigned-to-current-user": "現在のユーザーに割り当て済み", + "assigned-to-me": "自分に割り当て済み", + "search-propagated-alarms": "伝播したアラームを検索", + "comments": "アラームコメント", + "show-more": "もっと表示", + "additional-info": "追加情報", + "alarm-type": "アラームタイプ", + "enter-alarm-type": "アラームタイプを入力", + "no-alarm-types-matching": "'{{entitySubtype}}'に一致するアラームタイプが見つかりません。", + "alarm-type-list-empty": "選択されたアラームタイプがありません。" + }, + "alarm-activity": { + "add": "コメントを追加...", + "alarm-comment": "アラームコメント", + "comments": "コメント", + "delete-alarm-comment": "このコメントを削除しますか?", + "refresh": "更新", + "oldest-first": "古い順", + "newest-first": "新しい順", + "activity": "アクティビティ", + "export": "CSVにエクスポート", + "author": "作成者", + "created-date": "作成日時", + "edited-date": "編集日時", + "text": "テキスト", + "system": "システム" + }, + "alias": { + "add": "エイリアスを追加", + "edit": "エイリアスを編集", + "name": "エイリアス名", + "name-required": "エイリアス名は必須です", + "duplicate-alias": "同じ名前のエイリアスはすでに存在します。", + "filter-type-single-entity": "単一エンティティ", + "filter-type-entity-list": "エンティティ一覧", + "filter-type-entity-name": "エンティティ名", + "filter-type-entity-type": "エンティティタイプ", + "filter-type-state-entity": "ダッシュボード状態のエンティティ", + "filter-type-state-entity-description": "ダッシュボード状態パラメータから取得したエンティティ", + "filter-type-asset-type": "アセットタイプ", + "filter-type-asset-type-description": "タイプ '{{assetTypes}}' のアセット", + "filter-type-asset-type-and-name-description": "タイプ '{{assetTypes}}' で、名前が'{{prefix}}'で始まるアセット", + "filter-type-device-type": "デバイスタイプ", + "filter-type-device-type-description": "タイプ '{{deviceTypes}}' のデバイス", + "filter-type-device-type-and-name-description": "タイプ '{{deviceTypes}}' で、名前が'{{prefix}}'で始まるデバイス", + "filter-type-entity-view-type": "エンティティビュータイプ", + "filter-type-entity-view-type-description": "タイプ '{{entityViewTypes}}' のエンティティビュー", + "filter-type-entity-view-type-and-name-description": "タイプ '{{entityViewTypes}}' で、名前が'{{prefix}}'で始まるエンティティビュー", + "filter-type-edge-type": "Edgeタイプ", + "filter-type-edge-type-description": "タイプ '{{edgeTypes}}' のEdges", + "filter-type-edge-type-and-name-description": "タイプ '{{edgeTypes}}' で、名前が'{{prefix}}'で始まるEdges", + "filter-type-relations-query": "関係クエリ", + "filter-type-relations-query-description": "{{rootEntity}} {{direction}} の {{relationType}} 関係を持つ {{entities}}", + "filter-type-edge-search-query": "Edge検索クエリ", + "filter-type-edge-search-query-description": "{{rootEntity}} {{direction}} の {{relationType}} 関係を持つタイプ {{edgeTypes}} のEdges", + "filter-type-asset-search-query": "アセット検索クエリ", + "filter-type-asset-search-query-description": "{{rootEntity}} {{direction}} の {{relationType}} 関係を持つタイプ {{assetTypes}} のアセット", + "filter-type-device-search-query": "デバイス検索クエリ", + "filter-type-device-search-query-description": "{{rootEntity}} {{direction}} の {{relationType}} 関係を持つタイプ {{deviceTypes}} のデバイス", + "filter-type-entity-view-search-query": "エンティティビュー検索クエリ", + "filter-type-entity-view-search-query-description": "{{rootEntity}} {{direction}} の {{relationType}} 関係を持つタイプ {{entityViewTypes}} のエンティティビュー", + "filter-type-apiUsageState": "API使用状況", + "entity-filter": "エンティティフィルター", + "resolve-multiple": "複数エンティティとして解決", + "resolve-multiple-hint": "有効にすると、フィルターされたすべてのエンティティのデータを同時に描画します。\n無効の場合、ウィジェットは選択されたエンティティのデータのみを表示します。", + "filter-type": "フィルタータイプ", + "filter-type-required": "フィルタータイプは必須です。", + "entity-filter-no-entity-matched": "指定されたフィルターに一致するエンティティが見つかりません。", + "no-entity-filter-specified": "エンティティフィルターが指定されていません", + "root-state-entity": "ダッシュボード状態のエンティティをルートとして使用", + "last-level-relation": "最終レベルの関係のみ取得", + "root-entity": "ルートエンティティ", + "state-entity-parameter-name": "状態エンティティパラメータ名", + "default-state-entity": "デフォルト状態エンティティ", + "default-entity-parameter-name": "デフォルト", + "query-options": "クエリオプション", + "max-relation-level": "最大関係レベル", + "unlimited-level": "無制限レベル", + "state-entity": "ダッシュボード状態エンティティ", + "all-entities": "すべてのエンティティ", + "any-relation": "任意" + }, + "asset": { + "asset": "アセット", + "assets": "アセット", + "management": "アセット管理", + "view-assets": "アセットを表示", + "add": "アセットを追加", + "asset-type-max-length": "アセットタイプは256未満である必要があります", + "assign-to-customer": "顧客に割り当て", + "assign-asset-to-customer": "顧客にアセットを割り当て", + "assign-asset-to-customer-text": "顧客に割り当てるアセットを選択してください", + "no-assets-text": "アセットが見つかりません", + "assign-to-customer-text": "アセットを割り当てる顧客を選択してください", + "public": "公開", + "assignedToCustomer": "顧客に割り当て済み", + "make-public": "アセットを公開にする", + "make-private": "アセットを非公開にする", + "unassign-from-customer": "顧客から割り当て解除", + "delete": "アセットを削除", + "asset-public": "アセットは公開されています", + "asset-type": "アセットタイプ", + "asset-type-required": "アセットタイプは必須です。", + "select-asset-type": "アセットタイプを選択", + "enter-asset-type": "アセットプロファイルを入力", + "any-asset": "任意のアセット", + "no-asset-types-matching": "'{{entitySubtype}}'に一致するアセットタイプが見つかりません。", + "asset-type-list-empty": "選択されたアセットタイプがありません。", + "asset-types": "アセットタイプ", + "name": "名前", + "name-required": "名前は必須です。", + "name-max-length": "名前は256未満である必要があります", + "label-max-length": "ラベルは256未満である必要があります", + "description": "説明", + "type": "タイプ", + "type-required": "タイプは必須です。", + "details": "詳細", + "events": "イベント", + "add-asset-text": "新しいアセットを追加", + "asset-details": "アセット詳細", + "assign-assets": "アセットを割り当て", + "assign-assets-text": "顧客に { count, plural, =1 {1 件のアセット} other {# 件のアセット} } を割り当て", + "assign-asset-to-edge-title": "Edgeにアセットを割り当て", + "assign-asset-to-edge-text": "Edgeに割り当てるアセットを選択してください", + "delete-assets": "アセットを削除", + "unassign-assets": "アセットの割り当てを解除", + "unassign-assets-action-title": "顧客から { count, plural, =1 {1 件のアセット} other {# 件のアセット} } の割り当てを解除", + "assign-new-asset": "新しいアセットを割り当て", + "delete-asset-title": "アセット '{{assetName}}' を削除してもよろしいですか?", + "delete-asset-text": "注意: 確認後、アセットと関連データはすべて復元できなくなります。", + "delete-assets-title": "{ count, plural, =1 {1 件のアセット} other {# 件のアセット} } を削除してもよろしいですか?", + "delete-assets-action-title": "{ count, plural, =1 {1 件のアセット} other {# 件のアセット} } を削除", + "delete-assets-text": "注意: 確認後、選択したすべてのアセットが削除され、関連データはすべて復元できなくなります。", + "make-public-asset-title": "アセット '{{assetName}}' を公開にしてもよろしいですか?", + "make-public-asset-text": "確認後、アセットとそのすべてのデータは公開され、他のユーザーがアクセスできるようになります。", + "make-private-asset-title": "アセット '{{assetName}}' を非公開にしてもよろしいですか?", + "make-private-asset-text": "確認後、アセットとそのすべてのデータは非公開になり、他のユーザーはアクセスできなくなります。", + "unassign-asset-title": "アセット '{{assetName}}' の割り当てを解除してもよろしいですか?", + "unassign-asset-text": "確認後、アセットの割り当ては解除され、顧客はアクセスできなくなります。", + "unassign-asset": "アセットの割り当てを解除", + "unassign-assets-title": "{ count, plural, =1 {1 件のアセット} other {# 件のアセット} } の割り当てを解除してもよろしいですか?", + "unassign-assets-text": "確認後、選択したすべてのアセットの割り当てが解除され、顧客はアクセスできなくなります。", + "copyId": "アセットIDをコピー", + "idCopiedMessage": "アセットIDがクリップボードにコピーされました", + "select-asset": "アセットを選択", + "no-assets-matching": "'{{entity}}'に一致するアセットが見つかりません。", + "asset-required": "アセットは必須です", + "name-starts-with": "アセット名の式", + "help-text": "必要に応じて'%'を使用してください: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", + "search": "アセットを検索", + "import": "アセットをインポート", + "asset-file": "アセットファイル", + "label": "ラベル", + "assign-asset-to-edge": "Edgeにアセットを割り当て", + "unassign-asset-from-edge": "アセットの割り当てを解除", + "unassign-asset-from-edge-title": "アセット '{{assetName}}' の割り当てを解除してもよろしいですか?", + "unassign-asset-from-edge-text": "確認後、アセットの割り当ては解除され、Edgeはアクセスできなくなります。", + "unassign-assets-from-edge-title": "{ count, plural, =1 {1 件のアセット} other {# 件のアセット} } の割り当てを解除してもよろしいですか?", + "unassign-assets-from-edge-text": "確認後、選択したすべてのアセットの割り当てが解除され、Edgeはアクセスできなくなります。", + "selected-assets": "{ count, plural, =1 {1 件のアセット} other {# 件のアセット} } を選択" + }, + "attribute": { + "attributes": "属性", + "latest-telemetry": "最新テレメトリ", + "no-latest-telemetry": "最新テレメトリがありません", + "attributes-scope": "エンティティ属性スコープ", + "scope-telemetry": "テレメトリ", + "scope-latest-telemetry": "最新テレメトリ", + "scope-client": "クライアント属性", + "scope-server": "サーバー属性", + "scope-shared": "共有属性", + "scope-client-short": "クライアント", + "scope-server-short": "サーバー", + "scope-shared-short": "共有", + "scope-latest-short": "最新", + "scope-any": "任意", + "add": "属性を追加", + "key": "キー", + "key-max-length": "キーは256未満である必要があります", + "last-update-time": "最終更新日時", + "key-required": "属性キーは必須です。", + "value": "値", + "value-required": "属性値は必須です。", + "telemetry-key-required": "テレメトリキーは必須です", + "telemetry-value-required": "テレメトリ値は必須です", + "delete-attributes-title": "{ count, plural, =1 {1 件の属性} other {# 件の属性} } を削除してもよろしいですか?", + "delete-attributes-text": "注意: 確認後、選択したすべての属性が削除されます。", + "delete-attributes": "属性を削除", + "enter-attribute-value": "属性値を入力", + "show-on-widget": "ウィジェットに表示", + "widget-mode": "ウィジェットモード", + "next-widget": "次のウィジェット", + "prev-widget": "前のウィジェット", + "add-to-dashboard": "ダッシュボードに追加", + "add-widget-to-dashboard": "ダッシュボードにウィジェットを追加", + "selected-attributes": "{ count, plural, =1 {1 件の属性} other {# 件の属性} } を選択", + "selected-telemetry": "{ count, plural, =1 {1 件のテレメトリユニット} other {# 件のテレメトリユニット} } を選択", + "no-attributes-text": "属性が見つかりません", + "no-telemetry-text": "テレメトリが見つかりません", + "copy-key": "キーをコピー", + "add-telemetry": "テレメトリを追加", + "copy-value": "値をコピー", + "delete-timeseries": { + "start-time": "開始日時", + "ends-on": "終了日時", + "strategy": "戦略", + "delete-strategy": "削除戦略", + "all-data": "すべてのデータを削除", + "all-data-except-latest-value": "最新値を除くすべてのデータを削除", + "latest-value": "最新値を削除", + "all-data-for-time-period": "期間内のすべてのデータを削除", + "rewrite-latest-value": "最新値を書き換え" + } + }, + "api-usage": { + "api-features": "API機能", + "api-usage": "API使用状況", + "alarm": "アラーム", + "alarms-created": "作成されたアラーム", + "queue-stats": "キュー統計", + "processing-failures-and-timeouts": "処理失敗とタイムアウト", + "exceptions": "例外", + "alarms-created-daily-activity": "作成されたアラームの日別アクティビティ", + "alarms-created-hourly-activity": "作成されたアラームの時間別アクティビティ", + "alarms-created-monthly-activity": "作成されたアラームの月別アクティビティ", + "data-points": "データポイント", + "data-points-storage-days": "データポイント保存日数", + "device-api": "デバイスAPI", + "email": "Email", + "email-messages": "Emailメッセージ", + "email-messages-daily-activity": "Emailメッセージの日別アクティビティ", + "email-messages-monthly-activity": "Emailメッセージの月別アクティビティ", + "executions": "実行", + "scripts": "スクリプト", + "scripts-hourly-activity": "スクリプトの時間別アクティビティ", + "scripts-daily-activity": "スクリプトの日別アクティビティ", + "scripts-monthly-activity": "スクリプトの月別アクティビティ", + "javascript": "JavaScript", + "javascript-executions": "JavaScript実行", + "tbel": "TBEL", + "tbel-executions": "TBEL実行", + "latest-error": "最新エラー", + "messages": "メッセージ", + "notifications": "通知", + "notifications-email-sms": "通知 (Email/SMS)", + "notifications-hourly-activity": "通知の時間別アクティビティ", + "permanent-failures": "${entityName} 永続的な失敗", + "permanent-timeouts": "${entityName} 永続的なタイムアウト", + "processing-failures": "${entityName} 処理失敗", + "processing-timeouts": "${entityName} 処理タイムアウト", + "rule-chain": "ルールチェーン", + "rule-engine": "ルールエンジン", + "rule-engine-executions": "ルールエンジン実行", + "rule-engine-hourly-activity": "ルールエンジンの時間別アクティビティ", + "rule-engine-daily-activity": "ルールエンジンの日別アクティビティ", + "rule-engine-monthly-activity": "ルールエンジンの月別アクティビティ", + "rule-engine-statistics": "ルールエンジン統計", + "rule-node": "ルールノード", + "sms": "SMS", + "sms-messages": "SMSメッセージ", + "sms-messages-daily-activity": "SMSメッセージの日別アクティビティ", + "sms-messages-monthly-activity": "SMSメッセージの月別アクティビティ", + "successful": "${entityName} 成功", + "telemetry": "テレメトリ", + "telemetry-persistence": "テレメトリ永続化", + "telemetry-persistence-daily-activity": "テレメトリ永続化の日別アクティビティ", + "telemetry-persistence-hourly-activity": "テレメトリ永続化の時間別アクティビティ", + "telemetry-persistence-monthly-activity": "テレメトリ永続化の月別アクティビティ", + "transport": "トランスポート", + "transport-daily-activity": "トランスポートの日別アクティビティ", + "transport-data-points": "トランスポートデータポイント", + "view-details": "詳細を表示", + "view-statistics": "統計を表示", + "transport-messages": "トランスポートメッセージ" + }, + "api-limit": { + "cassandra-write-queries-core": "Rest API Cassandra 書き込みクエリ", + "cassandra-read-queries-core": "Rest API と WS テレメトリ Cassandra 読み取りクエリ", + "cassandra-write-queries-rule-engine": "ルールエンジン テレメトリ Cassandra 書き込みクエリ", + "cassandra-read-queries-rule-engine": "ルールエンジン テレメトリ Cassandra 読み取りクエリ", + "cassandra-write-queries-monolith": "Monolith テレメトリ Cassandra 書き込みクエリ", + "cassandra-read-queries-monolith": "Monolith テレメトリ Cassandra 読み取りクエリ", + "entity-version-creation": "エンティティバージョン作成", + "entity-version-load": "エンティティバージョン読み込み", + "notification-requests": "通知リクエスト", + "notification-requests-per-rule": "ルールあたりの通知リクエスト", + "rest-api-requests": "REST APIリクエスト", + "rest-api-requests-per-customer": "顧客あたりのREST APIリクエスト", + "transport-messages": "トランスポートメッセージ", + "transport-messages-per-device": "デバイスあたりのトランスポートメッセージ", + "transport-messages-per-gateway": "gatewayあたりのトランスポートメッセージ", + "transport-messages-per-gateway-device": "gatewayデバイスあたりのトランスポートメッセージ", + "ws-updates-per-session": "セッションあたりのWS更新", + "edge-events": "Edgeイベント", + "edge-events-per-edge": "EdgeあたりのEdgeイベント", + "edge-uplink-messages": "Edgeアップリンクメッセージ", + "edge-uplink-messages-per-edge": "EdgeあたりのEdgeアップリンクメッセージ" + }, + "audit-log": { + "audit": "監査", + "audit-logs": "監査ログ", + "timestamp": "タイムスタンプ", + "entity-type": "エンティティタイプ", + "entity-name": "エンティティ名", + "user": "ユーザー", + "type": "タイプ", + "status": "ステータス", + "details": "詳細", + "type-added": "追加", + "type-deleted": "削除", + "type-updated": "更新", + "type-attributes-updated": "属性を更新", + "type-attributes-deleted": "属性を削除", + "type-rpc-call": "RPC呼び出し", + "type-credentials-updated": "認証情報を更新", + "type-assigned-to-customer": "顧客に割り当て", + "type-unassigned-from-customer": "顧客から割り当て解除", + "type-assigned-to-edge": "Edgeに割り当て", + "type-unassigned-from-edge": "Edgeから割り当て解除", + "type-activated": "有効化", + "type-suspended": "一時停止", + "type-credentials-read": "認証情報を読み取り", + "type-attributes-read": "属性を読み取り", + "type-relation-add-or-update": "関係を更新", + "type-relation-delete": "関係を削除", + "type-relations-delete": "すべての関係を削除", + "type-alarm-ack": "アラームを確認", + "type-alarm-clear": "アラームをクリア", + "type-alarm-delete": "アラームを削除", + "type-alarm-assign": "アラームを割り当て", + "type-alarm-unassign": "アラームの割り当てを解除", + "type-added-comment": "コメントを追加", + "type-updated-comment": "コメントを更新", + "type-deleted-comment": "コメントを削除", + "type-login": "ログイン", + "type-logout": "ログアウト", + "type-lockout": "ロックアウト", + "status-success": "成功", + "status-failure": "失敗", + "audit-log-details": "監査ログ詳細", + "no-audit-logs-prompt": "ログが見つかりません", + "action-data": "アクションデータ", + "failure-details": "失敗詳細", + "search": "監査ログを検索", + "clear-search": "検索をクリア", + "type-assigned-from-tenant": "テナントから割り当て", + "type-assigned-to-tenant": "テナントに割り当て", + "type-provision-success": "デバイスをプロビジョニング", + "type-provision-failure": "デバイスのプロビジョニングに失敗しました", + "type-timeseries-updated": "テレメトリを更新", + "type-timeseries-deleted": "テレメトリを削除", + "type-sms-sent": "SMSを送信" + }, + "debug-settings": { + "label": "デバッグ設定", + "on-failure": "失敗のみ (24/7)", + "all-messages": "すべてのメッセージ ({{time}})", + "failures": "失敗", + "entity": "エンティティ", + "hint": { + "main-limited": "{{time}}あたりに記録される{{entity}}デバッグメッセージは{{msg}}件までです。", + "on-failure": "エラーメッセージのみをログに記録します。", + "all-messages": "すべてのデバッグメッセージをログに記録します。" + } + }, + "calculated-fields": { + "expression": "式", + "no-found": "計算フィールドが見つかりません", + "list": "{ count, plural, =1 {計算フィールド} other {計算フィールド一覧(# 件)} }", + "selected-fields": "{ count, plural, =1 {1 件の計算フィールド} other {# 件の計算フィールド} } を選択", + "type": { + "simple": "シンプル", + "script": "スクリプト" + }, + "arguments": "引数", + "decimals-by-default": "既定で小数を使用", + "debugging": "計算フィールドのデバッグ", + "argument-name": "引数名", + "datasource": "データソース", + "add-argument": "引数を追加", + "test-script-function": "スクリプト関数をテスト", + "no-arguments": "設定された引数がありません", + "argument-settings": "引数設定", + "argument-current": "現在のエンティティ", + "argument-current-tenant": "現在のテナント", + "argument-device": "デバイス", + "argument-asset": "アセット", + "argument-customer": "顧客", + "argument-tenant": "現在のテナント", + "argument-type": "引数タイプ", + "attribute": "属性", + "copy-argument-name": "引数名をコピー", + "timeseries-key": "時系列キー", + "device-name": "デバイス名", + "latest-telemetry": "最新テレメトリ", + "rolling": "時系列ローリング", + "attribute-scope": "属性スコープ", + "server-attributes": "サーバー属性", + "client-attributes": "クライアント属性", + "shared-attributes": "共有属性", + "attribute-key": "属性キー", + "default-value": "既定値", + "limit": "最大値数", + "time-window": "時間ウィンドウ", + "customer-name": "顧客名", + "asset-name": "アセット名", + "timeseries": "時系列", + "output": "出力", + "create": "計算フィールドを新規作成", + "file": "計算フィールドファイル", + "invalid-file-error": "無効なファイル形式です。有効な JSON ファイルであることを確認してください。", + "import": "計算フィールドをインポート", + "export": "計算フィールドをエクスポート", + "export-failed-error": "計算フィールドをエクスポートできません: {{error}}", + "output-type": "出力タイプ", + "delete-title": "計算フィールド '{{title}}' を削除してもよろしいですか?", + "delete-text": "注意: 確認後、計算フィールドと関連するすべてのデータは復元できなくなります。", + "delete-multiple-title": "{ count, plural, =1 {計算フィールド 1 件} other {計算フィールド # 件} } を削除してもよろしいですか?", + "delete-multiple-text": "注意: 確認後、選択した計算フィールドはすべて削除され、関連するすべてのデータは復元できなくなります。", + "test-with-this-message": "このメッセージでテスト", + "use-latest-timestamp": "最新タイムスタンプを使用", + "hint": { + "arguments-simple-with-rolling": "シンプルタイプの計算フィールドには、時系列ローリングタイプのキーを含めることはできません。", + "arguments-empty": "引数を空にすることはできません。", + "expression-required": "式は必須です。", + "expression-invalid": "式が無効です", + "expression-max-length": "式の長さは255文字未満である必要があります。", + "argument-name-required": "引数名は必須です。", + "argument-name-pattern": "引数名が無効です。", + "argument-name-duplicate": "この名前の引数はすでに存在します。", + "argument-name-max-length": "引数名は256文字未満である必要があります。", + "argument-name-forbidden": "引数名は予約語のため使用できません。", + "argument-type-required": "引数タイプは必須です。", + "max-args": "引数の最大数に達しました。", + "decimals-range": "デフォルトの小数桁は0〜15の数値である必要があります。", + "expression": "デフォルトの式は、温度を華氏から摂氏に変換する方法を示します。", + "arguments-entity-not-found": "引数の対象エンティティが見つかりません。", + "use-latest-timestamp": "有効にすると、計算値はサーバー時刻ではなく、引数のテレメトリの最新タイムスタンプを使用して永続化されます。" + } + }, + "ai-models": { + "ai-models": "AIモデル", + "ai-model": "AIモデル", + "model": "モデル", + "name": "名前", + "ai-provider": "AIプロバイダー", + "no-found": "AIモデルが見つかりません", + "list": "{ count, plural, =1 {AIモデル} other {AIモデル一覧 # 件} }", + "selected-fields": "{ count, plural, =1 {1 件のAIモデル} other {# 件のAIモデル} } を選択", + "add": "モデルを追加", + "delete-model-title": "モデル'{{modelName}}'を削除してもよろしいですか?", + "delete-model-text": "注意: 確認後、モデルと関連データはすべて復元できなくなります。", + "delete-models-title": "{ count, plural, =1 {1 件のモデル} other {# 件のモデル} } を削除してもよろしいですか?", + "delete-models-text": "注意: 確認後、選択したすべてのモデルが削除され、関連データはすべて復元できなくなります。", + "ai-providers": { + "openai": "OpenAI", + "azure-openai": "Azure OpenAI", + "google-ai-gemini": "Google AI Gemini", + "google-vertex-ai-gemini": "Google Vertex AI Gemini", + "mistral-ai": "Mistral AI", + "anthropic": "Anthropic", + "amazon-bedrock": "Amazon Bedrock", + "github-models": "GitHub Models", + "ollama": "Ollama" + }, + "name-required": "名前は必須です。", + "name-max-length": "名前は255文字以内である必要があります。", + "provider": "プロバイダー", + "api-key": "APIキー", + "api-key-required": "APIキーは必須です。", + "api-key-open-ai-required": "公式のOpenAI APIを使用する場合はAPIキーが必須です。", + "project-id": "プロジェクトID", + "project-id-required": "プロジェクトIDは必須です", + "location": "ロケーション", + "location-required": "ロケーションは必須です。", + "service-account-key-file": "サービスアカウントキーファイル", + "service-account-key-file-required": "サービスアカウントキーファイルは必須です。", + "no-file": "ファイルが選択されていません。", + "drop-file": "ファイルをドロップするか、クリックしてアップロードするファイルを選択してください。", + "personal-access-token": "パーソナルアクセストークン", + "personal-access-token-required": "パーソナルアクセストークンは必須です。", + "configuration": "設定", + "model-id": "モデルID", + "model-id-required": "モデルIDは必須です。", + "deployment-name": "デプロイメント名", + "deployment-name-required": "デプロイメント名は必須です", + "set": "設定", + "region": "リージョン", + "region-required": "リージョンは必須です。", + "access-key-id": "アクセスキーID", + "access-key-id-required": "アクセスキーIDは必須です。", + "secret-access-key": "シークレットアクセスキー", + "secret-access-key-required": "シークレットアクセスキーは必須です。", + "temperature": "温度", + "temperature-hint": "モデル出力のランダム性の度合いを調整します。値が高いほどランダム性が増し、低いほど減ります。", + "temperature-min": "0以上である必要があります。", + "top-p": "Top P", + "top-p-hint": "モデルが選択するための確率が高いトークンのプールを作成します。値が高いほどプールは大きく多様になり、低いほど小さくなります。", + "top-p-min-max": "0より大きく、最大1である必要があります。", + "top-k": "Top K", + "top-k-hint": "モデルの選択肢を、最も確からしい \"K\" 個のトークンの固定セットに制限します。", + "top-k-min": "0以上である必要があります。", + "presence-penalty": "出現ペナルティ", + "presence-penalty-hint": "トークンがすでにテキスト内に出現している場合、その確率に固定のペナルティを適用します。", + "frequency-penalty": "頻度ペナルティ", + "frequency-penalty-hint": "テキスト内での出現頻度に応じて増加するペナルティを、トークンの確率に適用します。", + "max-output-tokens": "最大出力トークン数", + "max-output-tokens-hint": "モデルが1回の応答で生成できるトークンの最大数を\n設定します。", + "context-length": "コンテキスト長", + "context-length-hint": "トークン単位でコンテキストウィンドウのサイズを定義します。この値は、ユーザー入力と生成された応答の両方を含む、モデルの総メモリ上限を設定します。", + "endpoint": "エンドポイント", + "endpoint-required": "エンドポイントは必須です。", + "baseurl": "ベースURL", + "baseurl-required": "ベースURLは必須です。", + "service-version": "サービスバージョン", + "check-connectivity": "接続を確認", + "check-connectivity-success": "テストリクエストは成功しました", + "check-connectivity-failed": "テストリクエストに失敗しました", + "no-model-matching": "'{{entity}}'に一致するモデルが見つかりません。", + "model-required": "モデルは必須です。", + "no-model-text": "モデルが見つかりません。", + "authentication": "認証", + "authentication-basic-hint": "標準のHTTP Basic認証を使用します。ユーザー名とパスワードは結合され、Base64エンコードされたうえで、Ollamaサーバーへの各リクエストに\"Authorization\"ヘッダーとして送信されます。", + "authentication-token-hint": "Bearerトークン認証を使用します。指定したトークンは、Ollamaサーバーへの各リクエストで\"Authorization\"ヘッダーにそのまま送信されます。", + "authentication-type": { + "none": "なし", + "basic": "Basic", + "token": "トークン" + }, + "username": "ユーザー名", + "username-required": "ユーザー名は必須です。", + "password": "パスワード", + "password-required": "パスワードは必須です。", + "token": "トークン", + "token-required": "トークンは必須です。" + }, + "confirm-on-exit": { + "message": "未保存の変更があります。このページから移動してもよろしいですか?", + "html-message": "未保存の変更があります。
このページから移動してもよろしいですか?", + "title": "未保存の変更" + }, + "contact": { + "country": "国", + "country-required": "国は必須です。", + "country-object-required": "一覧から有効な国を選択してください。", + "city": "市区町村", + "state": "州 / 県", + "postal-code": "郵便番号", + "postal-code-invalid": "郵便番号の形式が無効です。", + "address": "住所", + "address2": "住所2", + "phone": "電話番号", + "email": "Email", + "no-address": "住所なし", + "no-country-found": "国が見つかりません。", + "no-country-matching": "'{{country}}'に一致する国が見つかりません。", + "state-max-length": "州は256未満である必要があります", + "phone-max-length": "電話番号は256未満である必要があります", + "city-max-length": "指定された市区町村は256未満である必要があります" + }, + "common": { + "name": "名前", + "type": "タイプ", + "general": "一般", + "username": "ユーザー名", + "password": "パスワード", + "data": "データ", + "timestamp": "タイムスタンプ", + "enter-username": "ユーザー名を入力", + "enter-password": "パスワードを入力", + "enter-search": "検索文字列を入力", + "created-time": "作成日時", + "disabled": "無効", + "loading": "読み込み中...", + "proceed": "続行", + "open-details-page": "詳細ページを開く", + "not-found": "見つかりません", + "value": "値", + "documentation": "ドキュメント", + "time-left": "残り{{time}}", + "output": "出力", + "suffix": { + "s": "s", + "ms": "ms" + }, + "hint": { + "name-required": "名前は必須です。", + "name-pattern": "名前が無効です。", + "name-max-length": "名前は256文字未満である必要があります。", + "title-required": "タイトルは必須です。", + "title-pattern": "タイトルが無効です。", + "title-max-length": "タイトルは256文字未満である必要があります。", + "key-required": "キーは必須です。", + "key-pattern": "キーが無効です。", + "key-max-length": "キーは256文字未満である必要があります。" + }, + "required-fields": "必須項目が未入力です" + }, + "content-type": { + "json": "JSON", + "text": "テキスト", + "binary": "バイナリ (Base64)" + }, + "color": { + "color": "色" + }, + "customer": { + "customer": "顧客", + "customers": "顧客", + "management": "顧客管理", + "dashboard": "顧客ダッシュボード", + "dashboards": "顧客ダッシュボード", + "devices": "顧客デバイス", + "entity-views": "顧客エンティティビュー", + "assets": "顧客アセット", + "public-dashboards": "公開ダッシュボード", + "public-devices": "公開デバイス", + "public-assets": "公開アセット", + "public-entity-views": "公開エンティティビュー", + "add": "顧客を追加", + "delete": "顧客を削除", + "manage-customer-users": "顧客ユーザーを管理", + "manage-customer-devices": "顧客デバイスを管理", + "manage-customer-dashboards": "顧客ダッシュボードを管理", + "manage-public-devices": "公開デバイスを管理", + "manage-public-dashboards": "公開ダッシュボードを管理", + "manage-customer-assets": "顧客アセットを管理", + "manage-customer-edges": "顧客Edgeを管理", + "manage-public-assets": "公開アセットを管理", + "add-customer-text": "新しい顧客を追加", + "no-customers-text": "顧客が見つかりません", + "customer-details": "顧客詳細", + "delete-customer-title": "顧客'{{customerTitle}}'を削除してもよろしいですか?", + "delete-customer-text": "注意: 確認後、顧客と関連データはすべて復元できなくなります。", + "delete-customers-title": "{ count, plural, =1 {1 件の顧客} other {# 件の顧客} } を削除してもよろしいですか?", + "delete-customers-action-title": "{ count, plural, =1 {1 件の顧客} other {# 件の顧客} } を削除", + "delete-customers-text": "注意: 確認後、選択したすべての顧客が削除され、関連データはすべて復元できなくなります。", + "manage-users": "ユーザーを管理", + "manage-assets": "アセットを管理", + "manage-devices": "デバイスを管理", + "manage-dashboards": "ダッシュボードを管理", + "title": "タイトル", + "title-required": "タイトルは必須です。", + "title-max-length": "タイトルは256未満である必要があります", + "description": "説明", + "details": "詳細", + "events": "イベント", + "copyId": "顧客IDをコピー", + "idCopiedMessage": "顧客IDがクリップボードにコピーされました", + "select-customer": "顧客を選択", + "no-customers-matching": "'{{entity}}'に一致する顧客が見つかりません。", + "customer-required": "顧客は必須です", + "select-default-customer": "デフォルト顧客を選択", + "default-customer": "デフォルト顧客", + "default-customer-required": "テナントレベルでダッシュボードをデバッグするにはデフォルト顧客が必要です", + "search": "顧客を検索", + "selected-customers": "{ count, plural, =1 {1 件の顧客} other {# 件の顧客} } を選択", + "edges": "顧客edgeインスタンス", + "manage-edges": "Edgesを管理" + }, + "css-size": { + "size-value-required": "サイズ値は必須です", + "invalid-size-value": "無効なサイズ値" + }, + "date": { + "last-update-n-ago": "最終更新 N 前", + "last-update-n-ago-text": "最終更新 {{ agoText }}", + "custom-date": "カスタム日付", + "format": "形式", + "preview": "プレビュー", + "auto": "自動", + "time-granularity-formats": "時間粒度の形式", + "unit-year": "年", + "unit-month": "月", + "unit-day": "日", + "unit-hour": "時間", + "unit-minute": "分", + "unit-second": "秒", + "unit-millisecond": "ミリ秒" + }, + "datetime": { + "date-from": "開始日", + "time-from": "開始時刻", + "date-to": "終了日", + "time-to": "終了時刻", + "from": "開始", + "to": "終了" + }, + "dashboard": { + "dashboard": "ダッシュボード", + "dashboards": "ダッシュボード", + "management": "ダッシュボード管理", + "view-dashboards": "ダッシュボードを表示", + "add": "ダッシュボードを追加", + "assign-dashboard-to-customer": "顧客にダッシュボードを割り当て", + "assign-dashboard-to-customer-text": "顧客に割り当てるダッシュボードを選択してください", + "assign-to-customer-text": "ダッシュボードを割り当てる顧客を選択してください", + "assign-to-customer": "顧客に割り当て", + "unassign-from-customer": "顧客から割り当て解除", + "make-public": "ダッシュボードを公開にする", + "make-private": "ダッシュボードを非公開にする", + "manage-assigned-customers": "割り当て済み顧客を管理", + "assigned-customers": "割り当て済み顧客", + "assign-to-customers": "顧客にダッシュボードを割り当て", + "assign-to-customers-text": "ダッシュボードを割り当てる顧客を選択してください", + "unassign-from-customers": "顧客からダッシュボードの割り当てを解除", + "unassign-from-customers-text": "ダッシュボードから割り当て解除する顧客を選択してください", + "no-dashboards-text": "ダッシュボードが見つかりません", + "no-widgets": "ウィジェットが設定されていません", + "add-widget": "新しいウィジェットを追加", + "add-widget-button-text": "ウィジェットを追加", + "title": "タイトル", + "image": "ダッシュボード画像", + "mobile-app-settings": "モバイルアプリケーション設定", + "mobile-order": "モバイルアプリケーションでのダッシュボード順序", + "mobile-hide": "モバイルアプリケーションでダッシュボードを非表示", + "update-image": "ダッシュボード画像を更新", + "take-screenshot": "スクリーンショットを撮る", + "select-widget-title": "ウィジェットを選択", + "select-widget-value": "{{title}}: ウィジェットを選択", + "select-widget-subtitle": "利用可能なウィジェットタイプ一覧", + "delete": "ダッシュボードを削除", + "title-required": "タイトルは必須です。", + "title-max-length": "タイトルは256未満である必要があります", + "description": "説明", + "details": "詳細", + "dashboard-details": "ダッシュボード詳細", + "add-dashboard-text": "新しいダッシュボードを追加", + "assign-dashboards": "ダッシュボードを割り当て", + "assign-new-dashboard": "新しいダッシュボードを割り当て", + "assign-dashboards-text": "{ count, plural, =1 {1 件のダッシュボード} other {# 件のダッシュボード} } を顧客に割り当て", + "unassign-dashboards-action-text": "{ count, plural, =1 {1 件のダッシュボード} other {# 件のダッシュボード} } を顧客から割り当て解除", + "delete-dashboards": "ダッシュボードを削除", + "unassign-dashboards": "ダッシュボードの割り当て解除", + "unassign-dashboards-action-title": "ダッシュボード'{{dashboardTitle}}'を顧客から割り当て解除してもよろしいですか?", + "delete-dashboard-title": "ダッシュボード'{{dashboardTitle}}'を削除してもよろしいですか?", + "delete-dashboard-text": "注意: 確認後、ダッシュボードと関連データはすべて復元できなくなります。", + "delete-dashboards-title": "{ count, plural, =1 {1 件のダッシュボード} other {# 件のダッシュボード} } を削除してもよろしいですか?", + "delete-dashboards-action-title": "{ count, plural, =1 {1 件のダッシュボード} other {# 件のダッシュボード} } を削除", + "delete-dashboards-text": "注意: 確認後、選択したすべてのダッシュボードが削除され、関連データはすべて復元できなくなります。", + "unassign-dashboard-title": "ダッシュボード'{{dashboardTitle}}'を割り当て解除してもよろしいですか?", + "unassign-dashboard-text": "確認後、ダッシュボードの割り当てが解除され、顧客がアクセスできなくなります。", + "unassign-dashboard": "ダッシュボードの割り当て解除", + "unassign-dashboards-title": "{ count, plural, =1 {1 件のダッシュボード} other {# 件のダッシュボード} } の割り当てを解除してもよろしいですか?", + "unassign-dashboards-text": "確認後、選択したすべてのダッシュボードの割り当てが解除され、顧客がアクセスできなくなります。", + "public-dashboard-title": "ダッシュボードは公開されました", + "public-dashboard-text": "ダッシュボード{{dashboardTitle}}は公開され、以下のリンクからアクセスできます: リンク", + "public-dashboard-notice": "注意: 関連するデバイスも公開することをお忘れなく、そのデータにアクセスするためには必要です。", + "make-private-dashboard-title": "ダッシュボード'{{dashboardTitle}}'を非公開にしてもよろしいですか?", + "make-private-dashboard-text": "確認後、ダッシュボードは非公開になり、他の人はアクセスできなくなります。", + "make-private-dashboard": "ダッシュボードを非公開にする", + "socialshare-text": "'{{dashboardTitle}}' powered by ThingsBoard", + "socialshare-title": "'{{dashboardTitle}}' powered by ThingsBoard", + "select-dashboard": "ダッシュボードを選択", + "no-dashboards-matching": "'{{entity}}'に一致するダッシュボードが見つかりません。", + "dashboard-required": "ダッシュボードは必須です。", + "select-existing": "既存のダッシュボードを選択", + "create-new": "新しいダッシュボードを作成", + "new-dashboard-title": "新しいダッシュボードタイトル", + "open-dashboard": "ダッシュボードを開く", + "set-background": "背景を設定", + "background-color": "背景色", + "background-image": "背景画像", + "background-size-mode": "背景サイズモード", + "no-image": "画像が選択されていません", + "empty-image": "画像なし", + "drop-image": "画像をドロップするか、クリックしてアップロードするファイルを選択してください。", + "maximum-upload-file-size": "アップロード可能な最大ファイルサイズ: {{ size }}", + "cannot-upload-file": "ファイルをアップロードできません", + "settings": "設定", + "move-all-widgets": "すべてのウィジェットを移動", + "move-by": "移動量", + "cols": "列", + "rows": "行", + "layout": "レイアウト", + "layout-type-default": "デフォルト", + "layout-type-scada": "SCADA", + "layout-type-divider": "区切り", + "layout-settings-type": "レイアウト設定: {{ type }} ブレークポイント", + "columns-count": "列数", + "columns-count-required": "列数は必須です。", + "min-columns-count-message": "列数の最小値として許可されるのは10のみです。", + "max-columns-count-message": "列数の最大値として許可されるのは1000のみです。", + "min-layout-width": "最小レイアウト幅", + "columns-suffix": "列", + "widgets-margins": "ウィジェット間の余白", + "margin-required": "余白の値は必須です。", + "min-margin-message": "余白の最小値として許可されるのは0のみです。", + "max-margin-message": "余白の最大値として許可されるのは50のみです。", + "horizontal-margin": "水平余白", + "horizontal-margin-required": "水平余白の値は必須です。", + "min-horizontal-margin-message": "水平余白の最小値として許可されるのは0のみです。", + "max-horizontal-margin-message": "水平余白の最大値として許可されるのは50のみです。", + "vertical-margin": "垂直余白", + "vertical-margin-required": "垂直余白の値は必須です。", + "min-vertical-margin-message": "垂直余白の最小値として許可されるのは0のみです。", + "max-vertical-margin-message": "垂直余白の最大値として許可されるのは50のみです。", + "apply-outer-margin": "レイアウトの側面に余白を適用", + "autofill-height": "レイアウト高さを自動で埋める", + "mobile-layout": "モバイルレイアウト設定", + "mobile-row-height": "モバイル行の高さ", + "mobile-row-height-required": "モバイル行の高さの値は必須です。", + "min-mobile-row-height-message": "モバイル行の高さの最小値として許可されるのは5ピクセルのみです。", + "max-mobile-row-height-message": "モバイル行の高さの最大値として許可されるのは200ピクセルのみです。", + "row-height": "行の高さ", + "row-height-required": "行の高さの値は必須です。", + "min-row-height-message": "行の高さの最小値として許可されるのは5ピクセルのみです。", + "max-row-height-message": "行の高さの最大値として許可されるのは200ピクセルのみです。", + "display-first-in-mobile-view": "モバイルビューで先頭に表示", + "title-settings": "タイトル設定", + "display-title": "ダッシュボードタイトルを表示", + "title-color": "タイトル色", + "toolbar-settings": "ツールバー設定", + "hide-toolbar": "ツールバーを非表示", + "toolbar-always-open": "ツールバーを開いたままにする", + "display-dashboards-selection": "ダッシュボード選択を表示", + "display-entities-selection": "エンティティ選択を表示", + "display-filters": "フィルターを表示", + "display-dashboard-timewindow": "時間ウィンドウを表示", + "display-dashboard-export": "エクスポートを表示", + "display-update-dashboard-image": "ダッシュボード画像の更新を表示", + "dashboard-logo-settings": "ダッシュボードロゴ設定", + "display-dashboard-logo": "ダッシュボード全画面モードでロゴを表示", + "dashboard-logo-image": "ダッシュボードロゴ画像", + "advanced-settings": "高度な設定", + "dashboard-css": "ダッシュボードCSS", + "import": "ダッシュボードをインポート", + "export": "ダッシュボードをエクスポート", + "export-failed-error": "ダッシュボードをエクスポートできません: {{error}}", + "export-prompt": "ダッシュボード画像とリソースを埋め込む", + "create-new-dashboard": "新しいダッシュボードを作成", + "dashboard-file": "ダッシュボードファイル", + "invalid-dashboard-file-error": "ダッシュボードをインポートできません: 無効なダッシュボードデータ構造です。", + "dashboard-import-missing-aliases-title": "インポートしたダッシュボードで使用されるエイリアスを設定", + "create-new-widget": "新しいウィジェットを作成", + "import-widget": "ウィジェットをインポート", + "widget-file": "ウィジェットファイル", + "invalid-widget-file-error": "ウィジェットをインポートできません: 無効なウィジェットデータ構造です。", + "widget-import-missing-aliases-title": "インポートしたウィジェットで使用されるエイリアスを設定", + "open-toolbar": "ダッシュボードツールバーを開く", + "close-toolbar": "ツールバーを閉じる", + "configuration-error": "設定エラー", + "alias-resolution-error-title": "ダッシュボードエイリアス設定エラー", + "invalid-aliases-config": "一部のエイリアスフィルターに一致するデバイスが見つかりません。
この問題を解決するため、管理者に連絡してください。", + "select-devices": "デバイスを選択", + "assignedToCustomer": "顧客に割り当て", + "assignedToCustomers": "顧客に割り当て", + "public": "公開", + "copyId": "ダッシュボードIDをコピー", + "idCopiedMessage": "ダッシュボードIDがクリップボードにコピーされました", + "public-link": "公開リンク", + "copy-public-link": "公開リンクをコピー", + "public-link-copied-message": "ダッシュボードの公開リンクがクリップボードにコピーされました", + "manage-states": "ダッシュボード状態を管理", + "states": "ダッシュボード状態", + "states-short": "状態", + "search-states": "ダッシュボード状態を検索", + "selected-states": "{ count, plural, =1 {ダッシュボード状態 1 件} other {ダッシュボード状態 # 件} } を選択", + "edit-state": "ダッシュボード状態を編集", + "delete-state": "ダッシュボード状態を削除", + "add-state": "ダッシュボード状態を追加", + "no-states-text": "状態が見つかりません", + "state": "ダッシュボード状態", + "state-name": "名前", + "state-name-required": "ダッシュボード状態名は必須です。", + "state-id": "状態ID", + "state-id-required": "ダッシュボード状態IDは必須です。", + "state-id-exists": "同じIDのダッシュボード状態がすでに存在します。", + "is-root-state": "ルート状態", + "delete-state-title": "ダッシュボード状態を削除", + "delete-state-text": "名前が'{{stateName}}'のダッシュボード状態を削除してもよろしいですか?", + "show-details": "詳細を表示", + "hide-details": "詳細を非表示", + "select-state": "対象状態を選択", + "state-controller": "状態コントローラー", + "state-controller-default": "static (非推奨)", + "search": "ダッシュボードを検索", + "selected-dashboards": "{ count, plural, =1 {ダッシュボード 1 件} other {ダッシュボード # 件} } を選択", + "home-dashboard": "ホームダッシュボード", + "home-dashboard-hide-toolbar": "ホームダッシュボードのツールバーを非表示", + "unassign-dashboard-from-edge-text": "確認後、ダッシュボードの割り当てが解除され、edgeがアクセスできなくなります。", + "unassign-dashboards-from-edge-title": "{ count, plural, =1 {ダッシュボード 1 件} other {ダッシュボード # 件} } の割り当てを解除してもよろしいですか?", + "unassign-dashboards-from-edge-text": "確認後、選択したすべてのダッシュボードの割り当てが解除され、edgeがアクセスできなくなります。", + "assign-dashboard-to-edge": "Edgeにダッシュボードを割り当て", + "assign-dashboard-to-edge-text": "Edgeに割り当てるダッシュボードを選択してください", + "non-existent-dashboard-state-error": "ID \"{{ stateId }}\" のダッシュボード状態が見つかりません", + "edit-mode": "編集モード", + "duplicate-state-action": "状態を複製", + "breakpoint-value": "ブレークポイント ({{ value }})", + "breakpoints-id": { + "default": "デフォルト", + "xs": "モバイル (xs)", + "sm": "タブレット (sm)", + "md": "ラップトップ (md)", + "lg": "デスクトップ (lg)", + "xl": "デスクトップ (xl)" + }, + "view-format-type-grid": "グリッド", + "view-format-type-list": "一覧", + "view-format": "表示形式" + }, + "datakey": { + "settings": "設定", + "general": "一般", + "advanced": "高度な設定", + "key": "キー", + "keys": "キー", + "label": "ラベル", + "color": "色", + "units": "値の横に表示する特殊記号", + "decimals": "小数点以下の桁数", + "data-generation-func": "データ生成関数", + "use-data-post-processing-func": "データ後処理関数を使用", + "configuration": "データキー設定", + "timeseries": "時系列", + "attributes": "属性", + "entity-field": "エンティティフィールド", + "alarm": "アラームフィールド", + "timeseries-required": "エンティティの時系列は必須です。", + "timeseries-or-attributes-required": "エンティティの時系列/属性は必須です。", + "alarm-fields-timeseries-or-attributes-required": "アラームフィールドまたはエンティティの時系列/属性は必須です。", + "maximum-timeseries-or-attributes": "最大 { count, plural, =1 {時系列/属性は1件まで許可されます。} other {時系列/属性は#件まで許可されます} }", + "alarm-fields-required": "アラームフィールドは必須です。", + "function-types": "関数タイプ", + "function-type": "関数タイプ", + "function-types-required": "関数タイプは必須です。", + "data-keys": "データキー", + "data-key": "データキー", + "data-keys-required": "データキーは必須です。", + "data-key-required": "データキーは必須です。", + "alarm-keys": "アラームデータキー", + "alarm-key": "アラームデータキー", + "alarm-key-functions": "アラームキー関数", + "alarm-key-function": "アラームキー関数", + "latest-keys": "最新データキー", + "latest-key": "最新データキー", + "latest-key-functions": "最新キー関数", + "latest-key-function": "最新キー関数", + "timeseries-keys": "時系列データキー", + "timeseries-key": "時系列データキー", + "timeseries-key-functions": "時系列キー関数", + "timeseries-key-function": "時系列キー関数", + "maximum-function-types": "最大 { count, plural, =1 {関数タイプは1件まで許可されます。} other {関数タイプは#件まで許可されます} }", + "time-description": "現在値のタイムスタンプ;", + "value-description": "現在の値;", + "prev-value-description": "前回の関数呼び出しの結果;", + "time-prev-description": "前回の値のタイムスタンプ;", + "prev-orig-value-description": "元の前回値;", + "aggregation": "集計", + "aggregation-type-hint-common": "パフォーマンス上の理由により、集計値の計算は\"当日\"、\"当月\"などの固定時間間隔でのみ利用でき、'直近30分' や '直近24時間' などのスライディングウィンドウ間隔では利用できません。", + "aggregation-type-none-hint": "最新値を取得します。", + "aggregation-type-min-hint": "選択した時間ウィンドウ内のデータポイントから最小値を見つけます。", + "aggregation-type-max-hint": "選択した時間ウィンドウ内のデータポイントから最大値を見つけます。", + "aggregation-type-avg-hint": "選択した時間ウィンドウ内のデータポイントの平均値を計算します。", + "aggregation-type-sum-hint": "選択した時間ウィンドウ内のデータポイントの値を合計します。", + "aggregation-type-count-hint": "選択した時間ウィンドウ内のデータポイントの総数です。", + "delta-calculation": "差分計算", + "enable-delta-calculation": "差分計算を有効化", + "enable-delta-calculation-hint": "有効にすると、データキーの値は、選択した時間ウィンドウの集計値と指定した比較期間に基づいて計算されます。パフォーマンス上の理由により、差分計算は履歴の時間ウィンドウでのみ利用でき、リアルタイム値では利用できません。たとえば、昨日のエネルギー消費量と一昨日のエネルギー消費量の差分を計算できます。", + "delta-calculation-result": "差分計算結果", + "delta-calculation-result-previous-value": "前回値", + "delta-calculation-result-delta-absolute": "差分 (絶対値)", + "delta-calculation-result-delta-percent": "差分 (パーセント)", + "source": "ソース", + "latest": "最新", + "latest-value": "最新値", + "delta": "差分", + "percent": "パーセント", + "absolute": "絶対値" + }, + "datasource": { + "type": "データソースタイプ", + "name": "名前", + "label": "ラベル", + "add-datasource-prompt": "データソースを追加してください" + }, + "details": { + "details": "詳細", + "edit-mode": "編集モード", + "edit-json": "JSONを編集", + "toggle-edit-mode": "編集モードを切り替え" + }, + "device": { + "device": "デバイス", + "device-required": "デバイスは必須です。", + "devices": "デバイス", + "management": "デバイス管理", + "view-devices": "デバイスを表示", + "device-alias": "デバイスエイリアス", + "device-type-max-length": "デバイスタイプは256未満である必要があります", + "aliases": "デバイスエイリアス", + "no-alias-matching": "'{{alias}}'が見つかりません。", + "no-aliases-found": "エイリアスが見つかりません。", + "no-key-matching": "'{{key}}'が見つかりません。", + "no-keys-found": "キーが見つかりません。", + "create-new-alias": "新しく作成します!", + "create-new-key": "新しく作成します!", + "duplicate-alias-error": "重複したエイリアス'{{alias}}'が見つかりました。
デバイスエイリアスはダッシュボード内で一意である必要があります。", + "configure-alias": "エイリアス'{{alias}}'を設定", + "no-devices-matching": "'{{entity}}'に一致するデバイスが見つかりません。", + "alias": "エイリアス", + "alias-required": "デバイスエイリアスは必須です。", + "remove-alias": "デバイスエイリアスを削除", + "add-alias": "デバイスエイリアスを追加", + "name-starts-with": "デバイス名式", + "help-text": "必要に応じて'%'を使用してください: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", + "device-list": "デバイス一覧", + "use-device-name-filter": "フィルターを使用", + "device-list-empty": "デバイスが選択されていません。", + "device-name-filter-required": "デバイス名フィルターは必須です。", + "device-name-filter-no-device-matched": "'{{device}}'で始まるデバイスが見つかりません。", + "add": "デバイスを追加", + "assign-to-customer": "顧客に割り当て", + "assign-device-to-customer": "顧客にデバイスを割り当て", + "assign-device-to-customer-text": "顧客に割り当てるデバイスを選択してください", + "make-public": "デバイスを公開にする", + "make-private": "デバイスを非公開にする", + "no-devices-text": "デバイスが見つかりません", + "assign-to-customer-text": "デバイスを割り当てる顧客を選択してください", + "device-details": "デバイス詳細", + "add-device-text": "新しいデバイスを追加", + "credentials": "認証情報", + "manage-credentials": "認証情報を管理", + "delete": "デバイスを削除", + "assign-devices": "デバイスを割り当て", + "assign-devices-text": "顧客に { count, plural, =1 {1 件のデバイス} other {# 件のデバイス} } を割り当て", + "delete-devices": "デバイスを削除", + "unassign-from-customer": "顧客から割り当て解除", + "unassign-devices": "デバイスの割り当て解除", + "unassign-devices-action-title": "顧客から { count, plural, =1 {1 件のデバイス} other {# 件のデバイス} } の割り当てを解除", + "unassign-device-from-edge-title": "デバイス'{{deviceName}}'の割り当てを解除してもよろしいですか?", + "unassign-device-from-edge-text": "確認後、デバイスの割り当てが解除され、edgeからアクセスできなくなります。", + "unassign-devices-from-edge": "Edgeからデバイスの割り当てを解除", + "assign-new-device": "新しいデバイスを割り当て", + "make-public-device-title": "デバイス'{{deviceName}}'を公開にしてもよろしいですか?", + "make-public-device-text": "確認後、デバイスとそのすべてのデータが公開され、他のユーザーがアクセスできるようになります。", + "make-private-device-title": "デバイス'{{deviceName}}'を非公開にしてもよろしいですか?", + "make-private-device-text": "確認後、デバイスとそのすべてのデータが非公開になり、他のユーザーはアクセスできなくなります。", + "view-credentials": "認証情報を表示", + "delete-device-title": "デバイス'{{deviceName}}'を削除してもよろしいですか?", + "delete-device-text": "注意: 確認後、デバイスと関連データはすべて復元できなくなります。", + "delete-devices-title": "{ count, plural, =1 {1 件のデバイス} other {# 件のデバイス} } を削除してもよろしいですか?", + "delete-devices-action-title": "{ count, plural, =1 {1 件のデバイス} other {# 件のデバイス} } を削除", + "delete-devices-text": "注意: 確認後、選択したすべてのデバイスが削除され、関連データはすべて復元できなくなります。", + "unassign-device-title": "デバイス'{{deviceName}}'の割り当てを解除してもよろしいですか?", + "unassign-device-text": "確認後、デバイスの割り当てが解除され、顧客がアクセスできなくなります。", + "unassign-device": "デバイスの割り当て解除", + "unassign-devices-title": "{ count, plural, =1 {1 件のデバイス} other {# 件のデバイス} } の割り当てを解除してもよろしいですか?", + "unassign-devices-text": "確認後、選択したすべてのデバイスの割り当てが解除され、顧客がアクセスできなくなります。", + "device-credentials": "デバイス認証情報", + "loading-device-credentials": "デバイス認証情報を読み込み中...", + "credentials-type": "認証情報タイプ", + "access-token": "アクセストークン", + "access-token-required": "アクセストークンは必須です。", + "access-token-invalid": "アクセストークンの長さは1〜32文字である必要があります。", + "certificate-pem-format": "PEM形式の証明書", + "certificate-pem-format-required": "証明書は必須です。", + "copy-access-token": "アクセストークンをコピー", + "copy-certificate": "証明書をコピー", + "copy-client-id": "クライアントIDをコピー", + "copy-user-name": "ユーザー名をコピー", + "copy-password": "パスワードをコピー", + "generate-client-id": "クライアントIDを生成", + "generate-user-name": "ユーザー名を生成", + "generate-password": "パスワードを生成", + "generate-access-token": "アクセストークンを生成", + "lwm2m-security-config": { + "identity": "クライアント識別子", + "identity-required": "クライアント識別子は必須です。", + "identity-tooltip": "PSK識別子は、標準[RFC7925]で説明されているとおり、最大128バイトの任意のPSK識別子です。\nPSK識別子はまず文字列に変換し、その後UTF-8を使用してオクテットにエンコードしなければなりません。", + "client-key": "クライアントキー", + "client-key-required": "クライアントキーは必須です。", + "client-key-tooltip-prk": "RPK公開鍵またはIDは標準[RFC7250]に準拠し、Base64形式にエンコードされている必要があります!", + "client-key-tooltip-psk": "PSKキーは標準[RFC4279]に準拠し、HexDec形式である必要があります: 32、64、128文字!", + "endpoint": "エンドポイントクライアント名", + "endpoint-required": "エンドポイントクライアント名は必須です。", + "client-public-key": "クライアント公開鍵", + "client-public-key-hint": "クライアント公開鍵が空の場合、信頼済み証明書が使用されます", + "client-public-key-tooltip": "X509公開鍵はDERエンコードされたX509v3形式で、ECアルゴリズムのみをサポートし、Base64形式にエンコードされている必要があります!", + "mode": "セキュリティ設定モード", + "client-tab": "クライアントセキュリティ設定", + "client-certificate": "クライアント証明書", + "bootstrap-tab": "ブートストラップクライアント", + "bootstrap-server": "ブートストラップサーバー", + "lwm2m-server": "LwM2Mサーバー", + "client-publicKey-or-id": "クライアント公開鍵またはID", + "client-publicKey-or-id-required": "クライアント公開鍵またはIDは必須です。", + "client-publicKey-or-id-tooltip-psk": "PSK識別子は、標準[RFC7925]で説明されているとおり、最大128バイトの任意のPSK識別子です。\nPSK識別子はまず文字列に変換し、その後UTF-8を使用してオクテットにエンコードしなければなりません。", + "client-publicKey-or-id-tooltip-rpk": "RPK公開鍵またはIDは標準[RFC7250]に準拠し、Base64形式にエンコードされている必要があります!", + "client-publicKey-or-id-tooltip-x509": "X509公開鍵はDERエンコードされたX509v3形式で、ECアルゴリズムのみをサポートし、Base64形式にエンコードされている必要があります", + "client-secret-key": "クライアント秘密鍵", + "client-secret-key-required": "クライアント秘密鍵は必須です。", + "client-secret-key-tooltip-psk": "PSKキーは標準[RFC4279]に準拠し、HexDec形式である必要があります: 32、64、128文字!", + "client-secret-key-tooltip-prk": "RPK秘密鍵はPKCS_8形式(DERエンコード、標準[RFC5958])である必要があり、その後Base64形式にエンコードされている必要があります!", + "client-secret-key-tooltip-x509": "X509秘密鍵はPKCS_8形式(DERエンコード、標準[RFC5958])である必要があり、その後Base64形式にエンコードされている必要があります!" + }, + "client-id": "クライアントID", + "client-id-pattern": "無効な文字が含まれています。", + "user-name": "ユーザー名", + "user-name-required": "ユーザー名は必須です。", + "client-id-or-user-name-necessary": "クライアントIDおよび/またはユーザー名が必要です", + "password": "パスワード", + "secret": "シークレット", + "secret-required": "シークレットは必須です。", + "device-type": "デバイスプロファイル", + "device-type-required": "デバイスプロファイルは必須です。", + "select-device-type": "デバイスプロファイルを選択", + "enter-device-type": "デバイスプロファイルを入力", + "any-device": "任意のデバイス", + "no-device-types-matching": "'{{entitySubtype}}'に一致するデバイスプロファイルが見つかりません。", + "device-type-list-empty": "デバイスプロファイルが選択されていません!", + "device-profile-type-list-empty": "少なくとも1つのデバイスプロファイルを選択してください。", + "device-types": "デバイスプロファイル", + "name": "名前", + "name-required": "名前は必須です。", + "name-max-length": "名前は256未満である必要があります", + "label-max-length": "ラベルは256未満である必要があります", + "description": "説明", + "label": "ラベル", + "events": "イベント", + "details": "詳細", + "copyId": "デバイスIDをコピー", + "copyAccessToken": "アクセストークンをコピー", + "copy-mqtt-authentication": "MQTT認証情報をコピー", + "idCopiedMessage": "デバイスIDがクリップボードにコピーされました", + "accessTokenCopiedMessage": "デバイスのアクセストークンがクリップボードにコピーされました", + "mqtt-authentication-copied-message": "デバイスのMQTT認証情報がクリップボードにコピーされました", + "assignedToCustomer": "顧客に割り当て", + "unable-delete-device-alias-title": "デバイスエイリアスを削除できません", + "unable-delete-device-alias-text": "デバイスエイリアス'{{deviceAlias}}'は次のウィジェットで使用されているため削除できません:
{{widgetsList}}", + "is-gateway": "Gatewayかどうか", + "overwrite-activity-time": "接続されたデバイスのアクティビティ時刻を上書き", + "device-filter-title": "デバイスフィルター", + "filter-title": "フィルター", + "device-state": "デバイス状態", + "state": "状態", + "any": "任意", + "active": "アクティブ", + "inactive": "非アクティブ", + "public": "公開", + "device-public": "デバイスは公開されています", + "select-device": "デバイスを選択", + "import": "デバイスをインポート", + "device-file": "デバイスファイル", + "search": "デバイスを検索", + "selected-devices": "{ count, plural, =1 {デバイス 1 件} other {デバイス # 件} } を選択", + "device-configuration": "デバイス設定", + "transport-configuration": "トランスポート設定", + "wizard": { + "device-details": "デバイス詳細" + }, + "unassign-devices-from-edge-title": "{ count, plural, =1 {デバイス 1 件} other {デバイス # 件} } の割り当てを解除してもよろしいですか?", + "unassign-devices-from-edge-text": "確認後、選択したすべてのデバイスの割り当てが解除され、edgeからアクセスできなくなります。", + "time": "時間", + "connectivity": { + "check-connectivity": "接続を確認", + "device-created-check-connectivity": "デバイスを作成しました。接続を確認しましょう!", + "loading-check-connectivity-command": "接続確認コマンドを読み込み中...", + "use-following-instructions": "シェルを使用してデバイスの代わりにテレメトリを送信するには、以下の手順を使用してください", + "execute-following-command": "次のコマンドを実行", + "install-curl-windows": "Windows 10 b17063以降では、cURLがデフォルトで利用できます", + "install-curl-macos": "Mac OS X 10.2 6C115 (Jaguar)以降では、cURLがデフォルトで利用できます", + "install-mqtt-windows": "手順に従ってmosquitto_pubをダウンロード、インストール、設定して実行してください", + "install-coap-client": "手順に従ってcoap-clientをダウンロード、インストール、設定して実行してください", + "install-necessary-client-tools": "必要なクライアントツールをインストール", + "mqtts-x509-command": "次のドキュメントを使用して、X509認証でMQTT経由でデバイスを接続してください", + "coaps-x509-command": "次のドキュメントを使用して、X509認証でDTLS上のCoAP経由でデバイスを接続してください", + "snmp-command": "次のドキュメントを使用して、SNMP経由でデバイスを接続してください。", + "sparkplug-command": "次のドキュメントを使用して、MQTT Sparkplug経由でデバイスを接続してください。", + "lwm2m-command": "次のドキュメントを使用して、LWM2M経由でデバイスを接続してください。" + } + }, + "dynamic-form": { + "property": { + "properties": "プロパティ", + "property": "プロパティ", + "id": "ID", + "name": "名前", + "type": "タイプ", + "type-text": "テキスト", + "type-password": "パスワード", + "type-textarea": "テキストエリア", + "type-number": "数値", + "type-switch": "スイッチ", + "type-select": "選択", + "type-radios": "ラジオボタン", + "type-datetime": "日付/時刻", + "type-image": "画像", + "type-javascript": "JavaScript", + "type-json": "JSON", + "type-html": "HTML", + "type-css": "CSS", + "type-markdown": "Markdown", + "type-color": "色", + "type-color-settings": "色設定", + "type-font": "フォント", + "type-units": "単位", + "type-icon": "アイコン", + "type-fieldset": "フィールドセット", + "type-array": "配列", + "type-html-section": "HTMLセクション", + "group-title": "グループタイトル", + "no-properties": "プロパティが設定されていません", + "add-property": "プロパティを追加", + "property-settings": "プロパティ設定", + "remove-property": "プロパティを削除", + "default-value": "デフォルト値", + "value-required": "値は必須です", + "number-settings": "数値設定", + "min": "最小", + "max": "最大", + "step": "ステップ", + "selected-options-limit": "選択オプション数の上限", + "advanced-ui-settings": "高度なUI設定", + "disable-on-property": "プロパティにより無効化", + "disable-on-property-none": "なし(フィールドは常に有効)", + "display-condition-function": "表示条件関数", + "sub-label": "サブラベル", + "vertical-divider-after": "後に縦区切り線", + "input-field-suffix": "入力フィールドのサフィックス", + "property-row-classes": "プロパティ行クラス", + "property-field-classes": "プロパティフィールドクラス", + "not-unique-property-ids-error": "プロパティIDは一意である必要があります!", + "enable-multiple-select": "複数選択を有効化", + "allow-empty-select-option": "空のオプションを許可", + "select-options": "選択オプション", + "not-unique-select-option-value-error": "選択オプションの値は一意である必要があります!", + "value": "値", + "label": "ラベル", + "add-option": "オプションを追加", + "no-options": "オプションが設定されていません", + "remove-option": "オプションを削除", + "textarea-rows": "テキストエリア行数", + "help-id": "ヘルプID", + "buttons-direction": "ボタンの並び方向", + "direction-row": "行", + "direction-column": "列", + "radio-button-options": "ラジオボタンオプション", + "datetime-type": "日付/時刻フィールドタイプ", + "datetime-type-date": "日付", + "datetime-type-time": "時刻", + "datetime-type-datetime": "日付/時刻", + "enable-clear-button": "クリアボタンを有効化", + "html-section-settings": "HTMLセクション設定", + "html-section-classes": "HTMLセクションクラス", + "html-section-content": "HTMLセクション内容", + "array-item": "配列項目", + "item-type": "項目タイプ", + "item-name": "項目名", + "no-items": "項目がありません", + "support-unit-conversion": "単位変換をサポート" + }, + "clear-form": "フォームをクリア", + "clear-form-prompt": "すべてのフォームプロパティを削除してもよろしいですか?", + "import-form": "JSONからフォームをインポート", + "export-form": "フォームをJSONにエクスポート", + "json-file": "JSONファイル", + "json-content": "JSON内容", + "invalid-form-json-file-error": "JSONからフォームをインポートできません: 無効なフォームJSONデータ構造です。" + }, + "asset-profile": { + "asset-profile": "アセットプロファイル", + "asset-profiles": "アセットプロファイル", + "all-asset-profiles": "すべて", + "add": "アセットプロファイルを追加", + "edit": "アセットプロファイルを編集", + "asset-profile-details": "アセットプロファイル詳細", + "no-asset-profiles-text": "アセットプロファイルが見つかりません", + "search": "アセットプロファイルを検索", + "selected-asset-profiles": "{ count, plural, =1 {アセットプロファイル 1 件} other {アセットプロファイル # 件} } を選択", + "no-asset-profiles-matching": "'{{entity}}'に一致するアセットプロファイルが見つかりません。", + "asset-profile-required": "アセットプロファイルは必須です", + "idCopiedMessage": "アセットプロファイルIDがクリップボードにコピーされました", + "set-default": "アセットプロファイルをデフォルトにする", + "delete": "アセットプロファイルを削除", + "copyId": "アセットプロファイルIDをコピー", + "name-max-length": "名前は256未満である必要があります", + "new-device-profile-name": "アセットプロファイル名", + "new-device-profile-name-required": "アセットプロファイル名は必須です。", + "name": "名前", + "name-required": "名前は必須です。", + "image": "アセットプロファイル画像", + "description": "説明", + "default": "デフォルト", + "default-rule-chain": "デフォルトルールチェーン", + "default-edge-rule-chain": "デフォルトedgeルールチェーン", + "default-edge-rule-chain-hint": "Edgeで、このアセットプロファイルのアセットの受信データを処理するルールチェーンとして使用されます", + "mobile-dashboard": "モバイルダッシュボード", + "mobile-dashboard-hint": "モバイルアプリケーションでアセット詳細ダッシュボードとして使用されます", + "select-queue-hint": "ドロップダウンリストから選択してください。", + "delete-asset-profile-title": "アセットプロファイル'{{assetProfileName}}'を削除してもよろしいですか?", + "delete-asset-profile-text": "注意: 確認後、アセットプロファイルと関連データはすべて復元できなくなります。", + "delete-asset-profiles-title": "{ count, plural, =1 {アセットプロファイル 1 件} other {アセットプロファイル # 件} } を削除してもよろしいですか?", + "delete-asset-profiles-text": "注意: 確認後、選択したすべてのアセットプロファイルが削除され、関連データはすべて復元できなくなります。", + "set-default-asset-profile-title": "アセットプロファイル'{{assetProfileName}}'をデフォルトにしてもよろしいですか?", + "set-default-asset-profile-text": "確認後、このアセットプロファイルはデフォルトとしてマークされ、プロファイル未指定の新しいアセットに使用されます。", + "no-asset-profiles-found": "アセットプロファイルが見つかりません。", + "create-new-asset-profile": "新しく作成します!", + "create-asset-profile": "新しいアセットプロファイルを作成", + "import": "アセットプロファイルをインポート", + "export": "アセットプロファイルをエクスポート", + "export-failed-error": "アセットプロファイルをエクスポートできません: {{error}}", + "asset-profile-file": "アセットプロファイルファイル", + "invalid-asset-profile-file-error": "アセットプロファイルをインポートできません: 無効なアセットプロファイルデータ構造です。" + }, + "device-profile": { + "device-profile": "デバイスプロファイル", + "device-profiles": "デバイスプロファイル", + "all-device-profiles": "すべて", + "add": "デバイスプロファイルを追加", + "edit": "デバイスプロファイルを編集", + "device-profile-details": "デバイスプロファイル詳細", + "no-device-profiles-text": "デバイスプロファイルが見つかりません", + "search": "デバイスプロファイルを検索", + "selected-device-profiles": "{ count, plural, =1 {デバイスプロファイル 1 件} other {デバイスプロファイル # 件} } を選択", + "no-device-profiles-matching": "'{{entity}}'に一致するデバイスプロファイルが見つかりません。", + "device-profile-required": "デバイスプロファイルは必須です", + "idCopiedMessage": "デバイスプロファイルIDがクリップボードにコピーされました", + "set-default": "デバイスプロファイルをデフォルトにする", + "delete": "デバイスプロファイルを削除", + "copyId": "デバイスプロファイルIDをコピー", + "name-max-length": "名前は256未満である必要があります", + "name": "名前", + "name-required": "名前は必須です。", + "type": "プロファイルタイプ", + "type-required": "プロファイルタイプは必須です。", + "type-default": "デフォルト", + "image": "デバイスプロファイル画像", + "transport-type": "トランスポートタイプ", + "transport-type-required": "トランスポートタイプは必須です。", + "transport-type-default": "デフォルト", + "transport-type-default-hint": "基本的なMQTT、HTTP、CoAPトランスポートをサポート", + "transport-type-mqtt": "MQTT", + "transport-type-mqtt-hint": "高度なMQTTトランスポート設定を有効化", + "transport-type-coap": "CoAP", + "transport-type-coap-hint": "高度なCoAPトランスポート設定を有効化", + "transport-type-lwm2m": "LWM2M", + "transport-type-lwm2m-hint": "LWM2Mトランスポートタイプ", + "transport-type-snmp": "SNMP", + "transport-type-snmp-hint": "SNMPトランスポート設定を指定", + "transport-type-http": "HTTP", + "description": "説明", + "default": "デフォルト", + "profile-configuration": "プロファイル設定", + "transport-configuration": "トランスポート設定", + "default-rule-chain": "デフォルトルールチェーン", + "default-edge-rule-chain": "デフォルトedgeルールチェーン", + "default-edge-rule-chain-hint": "Edgeで、このデバイスプロファイルのデバイスの受信データを処理するルールチェーンとして使用されます", + "mobile-dashboard": "モバイルダッシュボード", + "mobile-dashboard-hint": "モバイルアプリケーションでデバイス詳細ダッシュボードとして使用されます", + "select-queue-hint": "ドロップダウンリストから選択してください。", + "delete-device-profile-title": "デバイスプロファイル'{{deviceProfileName}}'を削除してもよろしいですか?", + "delete-device-profile-text": "注意: 確認後、デバイスプロファイルと関連データ(関連するOTAアップデートを含む)はすべて復元できなくなります。", + "delete-device-profiles-title": "{ count, plural, =1 {デバイスプロファイル 1 件} other {デバイスプロファイル # 件} } を削除してもよろしいですか?", + "delete-device-profiles-text": "注意: 確認後、選択したすべてのデバイスプロファイルが削除され、関連データ(関連するOTAアップデートを含む)はすべて復元できなくなります。", + "set-default-device-profile-title": "デバイスプロファイル'{{deviceProfileName}}'をデフォルトにしてもよろしいですか?", + "set-default-device-profile-text": "確認後、このデバイスプロファイルはデフォルトとしてマークされ、プロファイル未指定の新しいデバイスに使用されます。", + "no-device-profiles-found": "デバイスプロファイルが見つかりません。", + "create-new-device-profile": "新しく作成します!", + "mqtt-device-topic-filters": "MQTTデバイストピックフィルター", + "mqtt-device-topic-filters-unique": "MQTTデバイストピックフィルターは一意である必要があります。", + "mqtt-device-topic-filters-spark-plug": "MQTT Sparkplug B Edge of Network (EoN) ノード。", + "mqtt-device-topic-filters-spark-plug-hint": "Sparkplug Bペイロードとトピック形式を持つEoNノードからの接続を許可します。", + "mqtt-device-topic-filters-spark-plug-attribute-metric-names": "属性として保存するSparkPlugメトリクス。", + "mqtt-device-topic-filters-spark-plug-attribute-metric-names-hint": "デバイス属性として保存されるSparkPlugメトリクスの名前。その他のすべてのメトリクスはデバイステレメトリとして保存されます。", + "mqtt-device-payload-type": "MQTTデバイスペイロード", + "mqtt-device-payload-type-json": "JSON", + "mqtt-device-payload-type-proto": "Protobuf", + "mqtt-enable-compatibility-with-json-payload-format": "他のペイロード形式との互換性を有効化。", + "mqtt-enable-compatibility-with-json-payload-format-hint": "有効にすると、プラットフォームはデフォルトでProtobufペイロード形式を使用します。解析に失敗した場合、プラットフォームはJSONペイロード形式の使用を試みます。ファームウェアアップデート中の後方互換性に有用です。たとえば、ファームウェアの初期リリースはJsonを使用し、新しいリリースはProtobufを使用します。デバイス群のファームウェア更新の過程では、ProtobufとJSONの両方を同時にサポートする必要があります。互換モードはわずかな性能低下を招くため、すべてのデバイスが更新されたらこのモードを無効にすることを推奨します。", + "mqtt-use-json-format-for-default-downlink-topics": "デフォルトのダウンリンクトピックにJson形式を使用", + "mqtt-use-json-format-for-default-downlink-topics-hint": "有効にすると、プラットフォームは次のトピックを介して属性とRPCをプッシュするためにJsonペイロード形式を使用します: v1/devices/me/attributes/response/$request_id, v1/devices/me/attributes, v1/devices/me/rpc/request/$request_id, v1/devices/me/rpc/response/$request_id。この設定は、新しい(v2)トピックを使用して送信される属性およびrpcサブスクリプションには影響しません: v2/a/res/$request_id, v2/a, v2/r/req/$request_id, v2/r/res/$request_id。ここで $request_id は整数のリクエスト識別子です。", + "mqtt-send-ack-on-validation-exception": "PUBLISHメッセージの検証失敗時にPUBACKを送信", + "mqtt-send-ack-on-validation-exception-hint": "デフォルトでは、プラットフォームはメッセージ検証失敗時にMQTTセッションを閉じます。有効にすると、セッションを閉じる代わりにPUBLISH確認応答を送信します。", + "mqtt-protocol-version": "プロトコルバージョン", + "snmp-add-mapping": "SNMPマッピングを追加", + "snmp-mapping-not-configured": "OIDから時系列/テレメトリへのマッピングが設定されていません", + "snmp-timseries-or-attribute-name": "マッピング用の時系列/属性名", + "snmp-timseries-or-attribute-type": "マッピング用の時系列/属性タイプ", + "snmp-method-pdu-type-get-request": "GetRequest", + "snmp-method-pdu-type-get-next-request": "GetNextRequest", + "snmp-oid": "OID", + "transport-device-payload-type-json": "JSON", + "transport-device-payload-type-proto": "Protobuf", + "mqtt-payload-type-required": "ペイロードタイプは必須です。", + "coap-device-type": "CoAPデバイスタイプ", + "coap-device-payload-type": "CoAPデバイスペイロード", + "coap-device-type-required": "CoAPデバイスタイプは必須です。", + "coap-device-type-default": "デフォルト", + "coap-device-type-efento": "Efento NB-IoT", + "support-level-wildcards": "単一レベル [+] およびマルチレベル [#] のワイルドカードをサポートします。", + "telemetry-topic-filter": "テレメトリトピックフィルター", + "telemetry-topic-filter-required": "テレメトリトピックフィルターは必須です。", + "attributes-topic-filter": "属性パブリッシュトピックフィルター", + "attributes-subscribe-topic-filter": "属性サブスクライブトピックフィルター", + "attributes-topic-filter-required": "属性パブリッシュトピックフィルターは必須です。", + "attributes-subscribe-topic-filter-required": "属性サブスクライブトピックは必須です", + "telemetry-proto-schema": "テレメトリprotoスキーマ", + "telemetry-proto-schema-required": "テレメトリprotoスキーマは必須です。", + "attributes-proto-schema": "属性protoスキーマ", + "attributes-proto-schema-required": "属性protoスキーマは必須です。", + "rpc-response-proto-schema": "RPCレスポンスprotoスキーマ", + "rpc-response-proto-schema-required": "RPCレスポンスprotoスキーマは必須です。", + "rpc-response-topic-filter": "RPCレスポンストピックフィルター", + "rpc-response-topic-filter-required": "RPCレスポンストピックフィルターは必須です。", + "rpc-request-proto-schema": "RPCリクエストprotoスキーマ", + "rpc-request-proto-schema-required": "RPCリクエストprotoスキーマは必須です。", + "rpc-request-proto-schema-hint": "RPCリクエストメッセージには常にフィールドが必要です: string method = 1; int32 requestId = 2; and params = 3 of any data type.", + "not-valid-pattern-topic-filter": "無効なトピックフィルターパターン", + "not-valid-single-character": "単一レベルのワイルドカード文字の使用が無効です", + "not-valid-multi-character": "マルチレベルのワイルドカード文字の使用が無効です", + "single-level-wildcards-hint": "[+] は任意のトピックフィルターレベルに適しています。例: v1/devices/+/telemetry または +/devices/+/attributes。", + "multi-level-wildcards-hint": "[#] はトピックフィルター自体を置き換えることができ、トピックの最後の記号である必要があります。例: # または v1/devices/me/#。", + "alarm-rules": "アラームルール", + "alarm-rules-with-count": "アラームルール ({{count}})", + "no-alarm-rules": "アラームルールが設定されていません", + "add-alarm-rule": "アラームルールを追加", + "edit-alarm-rule": "アラームルールを編集", + "alarm-type": "アラームタイプ", + "alarm-type-required": "アラームタイプは必須です。", + "alarm-type-unique": "アラームタイプは、デバイスプロファイルのアラームルール内で一意である必要があります。", + "alarm-type-max-length": "アラームタイプは256未満である必要があります", + "create-alarm-pattern": "{{alarmType}} アラームを作成", + "create-alarm-rules": "アラームルールを作成", + "no-create-alarm-rules": "作成条件が設定されていません", + "add-create-alarm-rule-prompt": "作成アラームルールを追加してください", + "clear-alarm-rule": "クリアアラームルール", + "no-clear-alarm-rule": "クリア条件が設定されていません", + "add-create-alarm-rule": "作成条件を追加", + "add-clear-alarm-rule": "クリア条件を追加", + "select-alarm-severity": "アラーム重大度を選択", + "alarm-severity-required": "アラーム重大度は必須です。", + "condition-duration": "条件期間", + "condition-duration-value": "期間値", + "condition-duration-time-unit": "時間単位", + "condition-duration-value-range": "期間値は1〜2147483647の範囲である必要があります。", + "condition-duration-value-pattern": "期間値は整数である必要があります。", + "condition-duration-value-required": "期間値は必須です。", + "condition-duration-time-unit-required": "時間単位は必須です。", + "advanced-settings": "高度な設定", + "alarm-rule-additional-info": "追加情報", + "edit-alarm-rule-additional-info": "追加情報を編集", + "alarm-rule-additional-info-placeholder": "ここにコメントや調整内容を入力すると、アラーム詳細の「追加情報」に表示されます", + "alarm-rule-additional-info-hint": "ヒント: ${keyName} を使用して、アラームルール条件で使用される属性またはテレメトリキーの値を置換できます。", + "alarm-rule-mobile-dashboard": "モバイルダッシュボード", + "alarm-rule-mobile-dashboard-hint": "モバイルアプリケーションでアラーム詳細ダッシュボードとして使用されます", + "alarm-rule-no-mobile-dashboard": "ダッシュボードが選択されていません", + "propagate-alarm": "関連エンティティへアラームを伝播", + "alarm-rule-relation-types-list": "リレーションタイプ", + "alarm-rule-relation-types-list-hint": "関連エンティティをフィルタリングするためのリレーションタイプを定義します。設定されていない場合、アラームはすべての関連エンティティに伝播されます。", + "propagate-alarm-to-owner": "エンティティ所有者(顧客またはテナント)へアラームを伝播", + "propagate-alarm-to-tenant": "テナントへアラームを伝播", + "alarm-rule-condition": "アラームルール条件", + "enter-alarm-rule-condition-prompt": "アラームルール条件を追加してください", + "edit-alarm-rule-condition": "アラームルール条件を編集", + "device-provisioning": "デバイスプロビジョニング", + "provision-strategy": "プロビジョニング戦略", + "provision-strategy-required": "プロビジョニング戦略は必須です。", + "provision-strategy-disabled": "無効", + "provision-strategy-created-new": "新しいデバイスの作成を許可", + "provision-strategy-check-pre-provisioned": "事前プロビジョニング済みデバイスを確認", + "provision-device-key": "プロビジョニングデバイスキー", + "provision-device-key-required": "プロビジョニングデバイスキーは必須です。", + "copy-provision-key": "プロビジョニングキーをコピー", + "provision-key-copied-message": "プロビジョニングキーがクリップボードにコピーされました", + "provision-device-secret": "プロビジョニングデバイスシークレット", + "provision-device-secret-required": "プロビジョニングデバイスシークレットは必須です。", + "copy-provision-secret": "プロビジョニングシークレットをコピー", + "provision-secret-copied-message": "プロビジョニングシークレットがクリップボードにコピーされました", + "provision-strategy-x509": { + "certificate-chain": "X509証明書チェーン", + "certificate-chain-hint": "X.509証明書戦略は、双方向TLS通信におけるクライアント証明書でデバイスをプロビジョニングするために使用されます。", + "allow-create-new-devices": "新しいデバイスを作成", + "allow-create-new-devices-hint": "選択すると、新しいデバイスが作成され、クライアント証明書がデバイス認証情報として使用されます。", + "certificate-value": "PEM形式の証明書", + "certificate-value-required": "PEM形式の証明書は必須です", + "cn-regex-variable": "CN正規表現変数", + "cn-regex-variable-required": "CN正規表現変数は必須です", + "cn-regex-variable-hint": "デバイスのX509証明書の共通名からデバイス名を取得するために必要です。" + }, + "condition": "条件", + "condition-type": "条件タイプ", + "condition-type-simple": "簡易", + "condition-type-duration": "期間", + "condition-during": "{{during}} の間", + "condition-during-dynamic": "\"{{ attribute }}\" の間 ({{during}})", + "condition-type-repeating": "繰り返し", + "condition-type-required": "条件タイプは必須です。", + "condition-repeating-value": "イベント数", + "condition-repeating-value-range": "イベント数は1〜2147483647の範囲である必要があります。", + "condition-repeating-value-pattern": "イベント数は整数である必要があります。", + "condition-repeating-value-required": "イベント数は必須です。", + "condition-repeat-times": "繰り返し { count, plural, =1 {1 回} other {# 回} }", + "condition-repeat-times-dynamic": "\"{ attribute }\" を繰り返し ({ count, plural, =1 {1 回} other {# 回} })", + "schedule-type": "スケジューラータイプ", + "schedule-type-required": "スケジューラータイプは必須です。", + "schedule": "スケジュール", + "edit-schedule": "アラームスケジュールを編集", + "schedule-any-time": "常に有効", + "schedule-specific-time": "特定の時間に有効", + "schedule-custom": "カスタム", + "schedule-day": { + "monday": "月曜日", + "tuesday": "火曜日", + "wednesday": "水曜日", + "thursday": "木曜日", + "friday": "金曜日", + "saturday": "土曜日", + "sunday": "日曜日" + }, + "schedule-days": "曜日", + "schedule-time": "時刻", + "schedule-time-from": "開始", + "schedule-time-to": "終了", + "schedule-days-of-week-required": "少なくとも1つの曜日を選択してください。", + "create-device-profile": "新しいデバイスプロファイルを作成", + "import": "デバイスプロファイルをインポート", + "export": "デバイスプロファイルをエクスポート", + "export-failed-error": "デバイスプロファイルをエクスポートできません: {{error}}", + "device-profile-file": "デバイスプロファイルファイル", + "invalid-device-profile-file-error": "デバイスプロファイルをインポートできません: 無効なデバイスプロファイルデータ構造です。", + "power-saving-mode": "省電力モード", + "power-saving-mode-type": { + "default": "デバイスプロファイルの省電力モードを使用", + "psm": "省電力モード (PSM)", + "drx": "断続受信 (DRX)", + "edrx": "拡張断続受信 (eDRX)" + }, + "edrx-cycle": "eDRXサイクル", + "edrx-cycle-required": "eDRXサイクルは必須です。", + "edrx-cycle-pattern": "eDRXサイクルは正の整数である必要があります。", + "edrx-cycle-min": "eDRXサイクルの最小値は {{ min }} 秒です。", + "paging-transmission-window": "ページング送信ウィンドウ", + "paging-transmission-window-required": "ページング送信ウィンドウは必須です。", + "paging-transmission-window-pattern": "ページング送信ウィンドウは正の整数である必要があります。", + "paging-transmission-window-min": "ページング送信ウィンドウの最小値は {{ min }} 秒です。", + "psm-activity-timer": "PSMアクティビティタイマー", + "psm-activity-timer-required": "PSMアクティビティタイマーは必須です。", + "psm-activity-timer-pattern": "PSMアクティビティタイマーは正の整数である必要があります。", + "psm-activity-timer-min": "PSMアクティビティタイマーの最小値は {{ min }} 秒です。", + "lwm2m": { + "object-list": "オブジェクト一覧", + "object-list-empty": "オブジェクトが選択されていません。", + "no-objects-found": "オブジェクトが見つかりません。", + "no-objects-matching": "'{{object}}'に一致するオブジェクトが見つかりません。", + "model-tab": "LWM2Mモデル", + "add-new-instances": "新しいインスタンスを追加", + "instances-list": "インスタンス一覧", + "instances-list-required": "インスタンス一覧は必須です。", + "instance-id-pattern": "インスタンスIDは正の整数である必要があります。", + "instance-id-max": "インスタンスIDの最大値は {{max}} です。", + "instance": "インスタンス", + "resource-label": "#ID リソース名", + "observe-label": "監視", + "attribute-label": "属性", + "telemetry-label": "テレメトリ", + "edit-observe-select": "監視を編集するには、テレメトリまたは属性を選択してください", + "edit-attributes-select": "属性を編集するには、テレメトリまたは属性を選択してください", + "no-attributes-set": "属性が設定されていません", + "key-name": "キー名", + "key-name-required": "キー名は必須です", + "attribute-name": "名前属性", + "attribute-name-required": "名前属性は必須です。", + "attribute-value": "属性値", + "attribute-value-required": "属性値は必須です。", + "attribute-value-pattern": "属性値は正の整数である必要があります。", + "edit-attributes": "属性を編集: {{ name }}", + "view-attributes": "属性を表示: {{ name }}", + "add-attribute": "属性を追加", + "edit-attribute": "属性を編集", + "view-attribute": "属性を表示", + "remove-attribute": "属性を削除", + "delete-server-text": "注意: 確認後、サーバー設定は復元できなくなります。", + "delete-server-title": "サーバーを削除してもよろしいですか?", + "mode": "セキュリティ設定モード", + "bootstrap-tab": "ブートストラップ", + "bootstrap-server-legend": "ブートストラップサーバー (ShortId...)", + "lwm2m-server-legend": "LwM2Mサーバー (ShortId...)", + "server": "サーバー", + "short-id": "短縮サーバーID", + "short-id-tooltip": "サーバー短縮ID。サーバーのオブジェクトインスタンスを関連付けるリンクとして使用されます。\nこの識別子は、LwM2Mクライアントに設定された各LwM2Mサーバーを一意に識別します。\nブートストラップサーバーリソースの値が 'false' の場合、このリソースを設定する必要があります。\nID:0 および ID:65535 の値は、LwM2Mサーバーの識別に使用してはいけません。", + "short-id-tooltip-bootstrap": "サーバー短縮ID。サーバーのオブジェクトインスタンスを関連付けるリンクとして使用されます。\nこの識別子は、LwM2Mクライアントに設定された各LwM2Mサーバーを一意に識別します。\nブートストラップサーバーリソースの値が 'false' の場合、このリソースを設定する必要があります。", + "short-id-required": "短縮サーバーIDは必須です。", + "short-id-range": "短縮サーバーIDは {{ min }} から {{ max }} の範囲である必要があります。", + "short-id-pattern": "短縮サーバーIDは正の整数である必要があります。", + "lifetime": "クライアント登録の有効期間", + "lifetime-required": "クライアント登録の有効期間は必須です。", + "lifetime-pattern": "クライアント登録の有効期間は正の整数である必要があります。", + "default-min-period": "2つの通知間の最小期間 (s)", + "default-min-period-tooltip": "このパラメータがObservationに含まれていない場合に、LwM2MクライアントがObservationのMinimum Periodとして使用すべきデフォルト値。", + "default-min-period-required": "最小期間は必須です。", + "default-min-period-pattern": "最小期間は正の整数である必要があります。", + "notification-storing": "無効またはオフライン時の通知保存", + "binding": "バインディング", + "binding-type": { + "u": "U: クライアントは常にUDPバインディングで到達可能です。", + "m": "M: クライアントは常にMQTTバインディングで到達可能です。", + "h": "H: クライアントは常にHTTPバインディングで到達可能です。", + "t": "T: クライアントは常にTCPバインディングで到達可能です。", + "s": "S: クライアントは常にSMSバインディングで到達可能です。", + "n": "N: クライアントは、そのようなリクエストへの応答をNon-IPバインディング経由で送信する必要があります (LWM2M 1.1 からサポート)。", + "uq": "UQ: キュー・モードのUDP接続 (LWM2M 1.1 以降ではサポートされません)", + "uqs": "UQS: UDPとSMSの両方の接続が有効; UDPはキュー・モード、SMSは標準モード (LWM2M 1.1 以降ではサポートされません)", + "tq": "TQ: キュー・モードのTCP接続 (LWM2M 1.1 以降ではサポートされません)", + "tqs": "TQS: TCPとSMSの両方の接続が有効; TCPはキュー・モード、SMSは標準モード (LWM2M 1.1 以降ではサポートされません)", + "sq": "SQ: キュー・モードのSMS接続 (LWM2M 1.1 以降ではサポートされません)" + }, + "binding-tooltip": "これはLwM2Mサーバーオブジェクト - /1/x/7 の\"binding\"リソースにある一覧です。\nLwM2Mクライアントでサポートされるバインディングモードを示します。\nこの値は、デバイスオブジェクト (/3/0/16) の “Supported Binding and Modes” リソースの値と同じであるべきです。\n複数のトランスポートがサポートされていても、トランスポートセッション全体で使用できるトランスポートバインディングは1つだけです。\n例えばUDPとSMSの両方がサポートされる場合、LwM2MクライアントとLwM2Mサーバーはトランスポートセッション全体でUDPまたはSMSのいずれかで通信することを選択できます。", + "bootstrap-server": "ブートストラップサーバー", + "lwm2m-server": "LwM2Mサーバー", + "include-bootstrap-server": "ブートストラップサーバーの更新を含める", + "bootstrap-update-title": "ブートストラップサーバーはすでに設定されています。更新を除外してもよろしいですか?", + "bootstrap-update-text": "注意: 確認後、ブートストラップサーバーの設定データは復元できなくなります。", + "server-host": "ホスト", + "server-host-required": "ホストは必須です。", + "server-port": "ポート", + "server-port-required": "ポートは必須です。", + "server-port-pattern": "ポートは正の整数である必要があります。", + "server-port-range": "ポートは1〜65535の範囲である必要があります。", + "server-public-key": "サーバー公開鍵", + "server-public-key-required": "サーバー公開鍵は必須です。", + "client-hold-off-time": "ホールドオフ時間", + "client-hold-off-time-required": "ホールドオフ時間は必須です。", + "client-hold-off-time-pattern": "ホールドオフ時間は正の整数である必要があります。", + "client-hold-off-time-tooltip": "ブートストラップサーバーでのみ使用するクライアントホールドオフ時間", + "account-after-timeout": "タイムアウト後のアカウント", + "account-after-timeout-required": "タイムアウト後のアカウントは必須です。", + "account-after-timeout-pattern": "タイムアウト後のアカウントは正の整数である必要があります。", + "account-after-timeout-tooltip": "このリソースで指定されたタイムアウト値後のブートストラップサーバーアカウント。", + "server-type": "サーバータイプ", + "add-new-server-title": "新しいサーバー設定を追加", + "add-server-config": "サーバー設定を追加", + "add-lwm2m-server-config": "LwM2Mサーバーを追加", + "no-config-servers": "サーバーが設定されていません", + "others-tab": "その他の設定", + "ota-update": "OTA更新", + "use-object-19-for-ota-update": "オブジェクト19をOTAファイルメタデータ(チェックサム、サイズ、バージョン、名前)に使用", + "use-object-19-for-ota-update-hint": "OTA更新に Resource ObjectId = 19 を使用: FirmWare → InstanceId = 65534, SoftWare → InstanceId = 65535。データ形式は Base64 でラップされた JSON です。この JSON には OTA ファイルメタデータ(ファイル情報)が含まれます: \"Checksum\" (SHA256)。追加フィールド: \"Title\" (OTA名), \"Version\" (OTAバージョン), \"File Name\" (クライアントでOTAを保存するためのファイル名), \"File Size\" (バイト単位のOTAサイズ)。", + "client-strategy": "接続時のクライアント戦略", + "client-strategy-label": "戦略", + "client-strategy-only-observe": "初回接続後、クライアントへのObserveリクエストのみ", + "client-strategy-read-all": "登録後、すべてのリソースを読み取り & クライアントへのObserveリクエスト", + "fw-update": "ファームウェア更新", + "fw-update-strategy": "ファームウェア更新戦略", + "fw-update-strategy-data": "オブジェクト19とリソース0 (Data) を使用して、バイナリファイルとしてファームウェア更新をプッシュ", + "fw-update-strategy-package": "オブジェクト5とリソース0 (Package) を使用して、バイナリファイルとしてファームウェア更新をプッシュ", + "fw-update-strategy-package-uri": "パッケージをダウンロードする一意のCoAP URLを自動生成し、オブジェクト5とリソース1 (Package URI) としてファームウェア更新をプッシュ", + "sw-update": "ソフトウェア更新", + "sw-update-strategy": "ソフトウェア更新戦略", + "sw-update-strategy-package": "オブジェクト9とリソース2 (Package) を使用してバイナリファイルをプッシュ", + "sw-update-strategy-package-uri": "パッケージをダウンロードする一意のCoAP URLを自動生成し、オブジェクト9とリソース3 (Package URI) を使用してソフトウェア更新をプッシュ", + "fw-update-resource": "ファームウェア更新CoAPリソース", + "fw-update-resource-required": "ファームウェア更新CoAPリソースは必須です。", + "sw-update-resource": "ソフトウェア更新CoAPリソース", + "sw-update-resource-required": "ソフトウェア更新CoAPリソースは必須です。", + "config-json-tab": "Json設定プロファイルデバイス", + "attributes-name": { + "min-period": "最小期間", + "max-period": "最大期間", + "greater-than": "より大きい", + "less-than": "より小さい", + "step": "ステップ", + "min-evaluation-period": "最小評価期間", + "max-evaluation-period": "最大評価期間" + }, + "default-object-id": "デフォルトオブジェクトバージョン(属性)", + "default-object-id-ver": { + "v1-0": "1.0", + "v1-1": "1.1", + "v1-2": "1.2" + }, + "observe-strategy": { + "observe-strategy": "観察戦略", + "single": "単一", + "single-description": "リソースごとに1回のObserveリクエスト(精度が高いが、ネットワークトラフィックが多くなる)", + "composite-all": "すべてのリソースを複合的に観察", + "composite-all-description": "すべてのリソースを1回の複合Observeリクエストで観察(効率的だが柔軟性に欠ける)", + "composite-by-object": "オブジェクトごとに複合的に観察", + "composite-by-object-description": "リソースをオブジェクトタイプごとにグループ化し、複数のComposite Observeリクエストで観察(バランスの取れたアプローチ)" + } + }, + "snmp": { + "add-communication-config": "通信設定を追加", + "add-mapping": "マッピングを追加", + "authentication-passphrase": "認証パスフレーズ", + "authentication-passphrase-required": "認証パスフレーズは必須です。", + "authentication-protocol": "認証プロトコル", + "authentication-protocol-required": "認証プロトコルは必須です。", + "communication-configs": "通信設定", + "community": "コミュニティ文字列", + "community-required": "コミュニティ文字列は必須です。", + "context-name": "コンテキスト名", + "data-key": "データキー", + "data-key-required": "データキーは必須です。", + "data-type": "データ型", + "data-type-required": "データ型は必須です。", + "engine-id": "エンジンID", + "host": "ホスト", + "host-required": "ホストは必須です。", + "oid": "OID", + "oid-pattern": "無効なOID形式です。", + "oid-required": "OIDは必須です。", + "please-add-communication-config": "通信設定を追加してください", + "please-add-mapping-config": "マッピング設定を追加してください", + "port": "ポート", + "port-format": "無効なポート形式です。", + "port-required": "ポートは必須です。", + "privacy-passphrase": "プライバシーパスフレーズ", + "privacy-passphrase-required": "プライバシーパスフレーズは必須です。", + "privacy-protocol": "プライバシープロトコル", + "privacy-protocol-required": "プライバシープロトコルは必須です。", + "protocol-version": "プロトコルバージョン", + "protocol-version-required": "プロトコルバージョンは必須です。", + "querying-frequency": "ポーリング頻度, ms", + "querying-frequency-invalid-format": "ポーリング頻度は正の整数である必要があります。", + "querying-frequency-required": "ポーリング頻度は必須です。", + "retries": "再試行回数", + "retries-invalid-format": "再試行回数は正の整数である必要があります。", + "retries-required": "再試行回数は必須です。", + "scope": "スコープ", + "scope-required": "スコープは必須です。", + "security-name": "セキュリティ名", + "security-name-required": "セキュリティ名は必須です。", + "timeout-ms": "タイムアウト, ms", + "timeout-ms-invalid-format": "タイムアウトは正の整数である必要があります。", + "timeout-ms-required": "タイムアウトは必須です。", + "user-name": "ユーザー名", + "user-name-required": "ユーザー名は必須です。" + } + }, + "dialog": { + "close": "ダイアログを閉じる", + "error-message-title": "エラーメッセージ:", + "error-details-title": "エラー詳細" + }, + "direction": { + "column": "列", + "row": "行" + }, + "edge": { + "edge": "Edge", + "edge-instances": "Edge インスタンス", + "instances": "インスタンス", + "edge-file": "Edge ファイル", + "name-max-length": "名前は256未満である必要があります", + "label-max-length": "ラベルは256未満である必要があります", + "type-max-length": "タイプは256未満である必要があります", + "management": "Edge 管理", + "no-edges-matching": "'{{entity}}' に一致する edges が見つかりませんでした。", + "add": "Edge を追加", + "no-edges-text": "Edges が見つかりませんでした", + "edge-details": "Edge 詳細", + "add-edge-text": "新しい Edge を追加", + "delete": "Edge を削除", + "delete-edge-title": "Edge '{{edgeName}}' を削除してもよろしいですか?", + "delete-edge-text": "注意: 確認後、Edge と関連するすべてのデータは復元できなくなります。", + "delete-edges-title": "{ count, plural, =1 {1 edge} other {# edges} } を削除してもよろしいですか?", + "delete-edges-text": "注意: 確認後、選択した edges はすべて削除され、関連するすべてのデータは復元できなくなります。", + "name": "名前", + "name-starts-with": "Edge 名が次で始まる", + "name-required": "名前は必須です。", + "description": "説明", + "details": "詳細", + "events": "イベント", + "copy-id": "Edge Id をコピー", + "id-copied-message": "Edge Id をクリップボードにコピーしました", + "sync": "Edge を同期", + "edge-required": "Edge は必須です", + "edge-type": "Edge タイプ", + "edge-type-required": "Edge タイプは必須です。", + "event-action": "イベントアクション", + "entity-id": "エンティティ ID", + "select-edge-type": "Edge タイプを選択", + "assign-to-customer": "顧客に割り当て", + "assign-to-customer-text": "Edge(s) を割り当てる顧客を選択してください", + "assign-edge-to-customer": "Edge(s) を顧客に割り当て", + "assign-edge-to-customer-text": "顧客に割り当てる edges を選択してください", + "assignedToCustomer": "顧客に割り当て", + "edge-public": "Edge は公開されています", + "assigned-to-customer": "割り当て先: {{customerTitle}}", + "unassign-from-customer": "顧客から割り当て解除", + "unassign-edge-title": "Edge '{{edgeName}}' の割り当てを解除してもよろしいですか?", + "unassign-edge-text": "確認後、edge の割り当ては解除され、顧客からアクセスできなくなります。", + "unassign-edges-title": "{ count, plural, =1 {1 edge} other {# edges} } の割り当てを解除してもよろしいですか?", + "unassign-edges-text": "確認後、選択した edges の割り当てはすべて解除され、顧客からアクセスできなくなります。", + "make-public": "Edge を公開する", + "make-public-edge-title": "Edge '{{edgeName}}' を公開してもよろしいですか?", + "make-public-edge-text": "確認後、edge とそのすべてのデータは公開され、他のユーザーがアクセスできるようになります。", + "make-private": "Edge を非公開にする", + "public": "公開", + "make-private-edge-title": "Edge '{{edgeName}}' を非公開にしてもよろしいですか?", + "make-private-edge-text": "確認後、edge とそのすべてのデータは非公開になり、他のユーザーはアクセスできなくなります。", + "import": "Edge をインポート", + "install-connect-instructions": "インストール & 接続手順", + "install-connect-instructions-edge-created": "Edge を作成しました! インストール & 接続手順を確認してください", + "loading-edge-instructions": "Edge 手順を読み込み中...", + "label": "ラベル", + "load-entity-error": "データの読み込みに失敗しました。エンティティは削除されました。", + "assign-new-edge": "新しい edge を割り当て", + "unassign-from-edge": "Edge から割り当て解除", + "edge-key": "Edge キー", + "copy-edge-key": "Edge キーをコピー", + "edge-key-copied-message": "Edge キーをクリップボードにコピーしました", + "edge-secret": "Edge シークレット", + "copy-edge-secret": "Edge シークレットをコピー", + "edge-secret-copied-message": "Edge シークレットをクリップボードにコピーしました", + "manage-assets": "アセットを管理", + "manage-devices": "デバイスを管理", + "manage-entity-views": "エンティティビューを管理", + "manage-dashboards": "ダッシュボードを管理", + "manage-rulechains": "ルールチェーンを管理", + "assets": "Edge アセット", + "devices": "Edge デバイス", + "entity-views": "Edge エンティティビュー", + "dashboard": "Edge ダッシュボード", + "dashboards": "Edge ダッシュボード", + "rulechain-templates": "ルールチェーンテンプレート", + "edge-rulechain-templates": "Edge ルールチェーンテンプレート", + "rulechains": "Edge ルールチェーン", + "search": "Edge を検索", + "selected-edges": "{ count, plural, =1 {1 edge} other {# edges} } 選択済み", + "any-edge": "任意の edge", + "no-edge-types-matching": "'{{entitySubtype}}' に一致する edge タイプは見つかりませんでした。", + "edge-type-list-empty": "選択した edge タイプはありません。", + "edge-types": "Edge タイプ", + "enter-edge-type": "Edge タイプを入力", + "deployed": "展開済み", + "pending": "保留中", + "downlinks": "ダウンリンク", + "no-downlinks-prompt": "ダウンリンクは見つかりませんでした", + "sync-process-started-successfully": "同期プロセスが正常に開始されました!", + "missing-related-rule-chains-title": "Edge に関連するルールチェーンが不足しています", + "missing-related-rule-chains-text": "Edge に割り当てられたルールチェーンは、メッセージを他のルールチェーンに転送するルールノードを使用していますが、これらのルールチェーンはこの Edge に割り当てられていません。

不足しているルールチェーンのリスト:
{{missingRuleChains}}", + "widget-datasource-error": "このウィジェットは EDGE エンティティデータソースのみをサポートしています", + "upgrade-instructions": "アップグレード手順", + "connected": "接続済み", + "disconnected": "接続解除" + }, + "edge-event": { + "type-dashboard": "ダッシュボード", + "type-asset": "アセット", + "type-device": "デバイス", + "type-device-profile": "デバイスプロファイル", + "type-asset-profile": "アセットプロファイル", + "type-entity-view": "エンティティビュー", + "type-alarm": "アラーム", + "type-rule-chain": "ルールチェーン", + "type-rule-chain-metadata": "ルールチェーンメタデータ", + "type-edge": "Edge", + "type-user": "ユーザー", + "type-tenant": "テナント", + "type-tenant-profile": "テナントプロファイル", + "type-customer": "顧客", + "type-relation": "リレーション", + "type-widgets-bundle": "ウィジェットバンドル", + "type-widgets-type": "ウィジェットタイプ", + "type-admin-settings": "管理者設定", + "type-ota-package": "OTAパッケージ", + "type-queue": "キュー", + "action-type-added": "追加", + "action-type-deleted": "削除", + "action-type-updated": "更新", + "action-type-post-attributes": "属性を送信", + "action-type-attributes-updated": "属性が更新されました", + "action-type-attributes-deleted": "属性が削除されました", + "action-type-timeseries-updated": "時系列データが更新されました", + "action-type-credentials-updated": "認証情報が更新されました", + "action-type-assigned-to-customer": "顧客に割り当て", + "action-type-unassigned-from-customer": "顧客から解除", + "action-type-relation-add-or-update": "リレーションの追加または更新", + "action-type-relation-deleted": "リレーションが削除されました", + "action-type-rpc-call": "RPC呼び出し", + "action-type-alarm-ack": "アラーム確認", + "action-type-alarm-clear": "アラーム解除", + "action-type-alarm-assigned": "アラーム割り当て", + "action-type-alarm-unassigned": "アラーム解除", + "action-type-assigned-to-edge": "Edgeに割り当て", + "action-type-unassigned-from-edge": "Edgeから解除", + "action-type-credentials-request": "認証情報リクエスト", + "action-type-entity-merge-request": "エンティティ統合リクエスト" + }, + "error": { + "unable-to-connect": "サーバーに接続できません!インターネット接続を確認してください。", + "unhandled-error-code": "処理されていないエラーコード: {{errorCode}}", + "unknown-error": "不明なエラー" + }, + "entity": { + "entity": "エンティティ", + "entities": "エンティティ", + "entities-count": "エンティティの数", + "alarms-count": "アラームの数", + "aliases": "エンティティのエイリアス", + "aliases-short": "エイリアス", + "entity-alias": "エンティティのエイリアス", + "unable-delete-entity-alias-title": "エンティティエイリアスを削除できません", + "unable-delete-entity-alias-text": "エンティティエイリアス '{{entityAlias}}' は削除できません。以下のウィジェットで使用されています:
{{widgetsList}}", + "duplicate-alias-error": "重複するエイリアス '{{alias}}' が見つかりました。
エンティティのエイリアスはダッシュボード内で一意でなければなりません。", + "missing-entity-filter-error": "エイリアス '{{alias}}' のフィルターが不足しています。", + "configure-alias": "'{{alias}}' のエイリアスを設定", + "alias": "エイリアス", + "alias-required": "エンティティエイリアスは必須です。", + "remove-alias": "エンティティエイリアスを削除", + "add-alias": "エンティティエイリアスを追加", + "edit-alias": "エンティティエイリアスを編集", + "entity-list": "エンティティリスト", + "entity-type": "エンティティタイプ", + "entity-types": "エンティティタイプ", + "entity-type-list": "エンティティタイプリスト", + "any-entity": "任意のエンティティ", + "add-entity-type": "エンティティタイプを追加", + "enter-entity-type": "エンティティタイプを入力", + "no-entities-matching": "エンティティ '{{entity}}' に一致するエンティティは見つかりませんでした。", + "no-entities-text": "エンティティは見つかりません", + "no-entity-types-matching": "エンティティタイプ '{{entityType}}' に一致するエンティティタイプは見つかりませんでした。", + "name-starts-with": "名前の表現", + "help-text": "必要に応じて'%'を使用してください: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", + "use-entity-name-filter": "フィルターを使用", + "entity-list-empty": "エンティティが選択されていません。", + "entity-type-list-required": "少なくとも1つのエンティティタイプを選択する必要があります。", + "entity-name-filter-required": "エンティティ名フィルターは必須です。", + "entity-name-filter-no-entity-matched": "エンティティ '{{entity}}' で始まるエンティティは見つかりませんでした。", + "all-subtypes": "すべて", + "select-entities": "エンティティを選択", + "no-aliases-found": "エイリアスが見つかりませんでした。", + "no-alias-matching": "'{{alias}}' が見つかりません。", + "create-new-alias": "新しいエイリアスを作成", + "create-new": "新規作成", + "key": "キー", + "key-name": "キー名", + "no-keys-found": "キーが見つかりませんでした。", + "no-key-matching": "'{{key}}' が見つかりません。", + "create-new-key": "新しいキーを作成", + "type": "タイプ", + "type-required": "エンティティタイプは必須です。", + "type-device": "デバイス", + "type-devices": "デバイス", + "list-of-devices": "{ count, plural, =1 {1 台のデバイス} other {# 台のデバイス} }", + "device-name-starts-with": "名前が '{{prefix}}' で始まるデバイス", + "type-device-profile": "デバイスプロファイル", + "type-device-profiles": "デバイスプロファイル", + "clear-selected-profiles": "選択したプロファイルをクリア", + "list-of-device-profiles": "{ count, plural, =1 {1 つのデバイスプロファイル} other {# 個のデバイスプロファイル} }", + "device-profile-name-starts-with": "名前が '{{prefix}}' で始まるデバイスプロファイル", + "type-asset-profile": "アセットプロファイル", + "type-asset-profiles": "アセットプロファイル", + "list-of-asset-profiles": "{ count, plural, =1 {1 つのアセットプロファイル} other {# 個のアセットプロファイル} }", + "asset-profile-name-starts-with": "名前が '{{prefix}}' で始まるアセットプロファイル", + "type-asset": "アセット", + "type-assets": "アセット", + "list-of-assets": "{ count, plural, =1 {1 つのアセット} other {# 個のアセット} }", + "asset-name-starts-with": "名前が '{{prefix}}' で始まるアセット", + "type-entity-view": "エンティティビュー", + "type-entity-views": "エンティティビュー", + "list-of-entity-views": "{ count, plural, =1 {1 つのエンティティビュー} other {# 個のエンティティビュー} }", + "entity-view-name-starts-with": "名前が '{{prefix}}' で始まるエンティティビュー", + "type-rule": "ルール", + "type-rules": "ルール", + "list-of-rules": "{ count, plural, =1 {1 つのルール} other {# 個のルール} }", + "rule-name-starts-with": "名前が '{{prefix}}' で始まるルール", + "type-plugin": "プラグイン", + "type-plugins": "プラグイン", + "list-of-plugins": "{ count, plural, =1 {1 つのプラグイン} other {# 個のプラグイン} }", + "plugin-name-starts-with": "名前が '{{prefix}}' で始まるプラグイン", + "type-tenant": "テナント", + "type-tenants": "テナント", + "list-of-tenants": "{ count, plural, =1 {1 つのテナント} other {# 個のテナント} }", + "tenant-name-starts-with": "名前が '{{prefix}}' で始まるテナント", + "type-tenant-profile": "テナントプロファイル", + "type-tenant-profiles": "テナントプロファイル", + "list-of-tenant-profiles": "{ count, plural, =1 {1 つのテナントプロファイル} other {# 個のテナントプロファイル} }", + "tenant-profile-name-starts-with": "名前が '{{prefix}}' で始まるテナントプロファイル", + "type-customer": "顧客", + "type-customers": "顧客", + "list-of-customers": "{ count, plural, =1 {1 人の顧客} other {# 人の顧客} }", + "customer-name-starts-with": "名前が '{{prefix}}' で始まる顧客", + "type-user": "ユーザー", + "type-users": "ユーザー", + "list-of-users": "{ count, plural, =1 {1 人のユーザー} other {# 人のユーザー} }", + "user-name-starts-with": "名前が '{{prefix}}' で始まるユーザー", + "type-dashboard": "ダッシュボード", + "type-dashboards": "ダッシュボード", + "list-of-dashboards": "{ count, plural, =1 {1 つのダッシュボード} other {# 個のダッシュボード} }", + "dashboard-name-starts-with": "名前が '{{prefix}}' で始まるダッシュボード", + "type-alarm": "アラーム", + "type-alarms": "アラーム", + "list-of-alarms": "{ count, plural, =1 {1 つのアラーム} other {# 個のアラーム} }", + "alarm-name-starts-with": "名前が '{{prefix}}' で始まるアラーム", + "type-rulechain": "ルールチェーン", + "type-rulechains": "ルールチェーン", + "list-of-rulechains": "{ count, plural, =1 {1 つのルールチェーン} other {# 個のルールチェーン} }", + "rulechain-name-starts-with": "名前が '{{prefix}}' で始まるルールチェーン", + "type-rulenode": "ルールノード", + "type-rulenodes": "ルールノード", + "list-of-rulenodes": "{ count, plural, =1 {1 つのルールノード} other {# 個のルールノード} }", + "rulenode-name-starts-with": "名前が '{{prefix}}' で始まるルールノード", + "type-current-customer": "現在の顧客", + "type-current-tenant": "現在のテナント", + "type-current-user": "現在のユーザー", + "type-current-user-owner": "現在のユーザーの所有者", + "type-calculated-field": "計算フィールド", + "type-calculated-fields": "計算フィールド", + "type-ai-model": "AIモデル", + "type-ai-models": "AIモデル", + "type-widgets-bundle": "ウィジェットバンドル", + "type-widgets-bundles": "ウィジェットバンドル", + "list-of-widgets-bundles": "{ count, plural, =1 {ウィジェットバンドル 1 件} other {ウィジェットバンドル一覧 # 件} }", + "type-widget": "ウィジェット", + "type-widgets": "ウィジェット", + "list-of-widgets": "{ count, plural, =1 {ウィジェット 1 件} other {ウィジェット一覧 # 件} }", + "search": "エンティティを検索", + "selected-entities": "{ count, plural, =1 {1 件のエンティティ} other {# 件のエンティティ} } を選択", + "entity-name": "エンティティ名", + "entity-label": "エンティティラベル", + "details": "エンティティ詳細", + "no-entities-prompt": "エンティティが見つかりません", + "no-data": "表示するデータがありません", + "columns-to-display": "表示する列", + "type-api-usage-state": "API使用状況", + "type-edge": "Edge", + "type-edges": "Edges", + "list-of-edges": "{ count, plural, =1 {edge 1 件} other {edge一覧 # 件} }", + "edge-name-starts-with": "名前が '{{prefix}}' で始まるEdges", + "version-conflict": { + "message": "既存のバージョンを上書きしますか、それとも変更を破棄して最新バージョンを読み込みますか?", + "link": "これを使用して {{entityType}} のあなたのバージョンをダウンロードできます", + "overwrite": "バージョンを上書き", + "discard": "変更を破棄" + }, + "type-tb-resource": "リソース", + "type-tb-resources": "リソース", + "list-of-tb-resources": "{ count, plural, =1 {リソース 1 件} other {リソース一覧 # 件} }", + "type-ota-package": "OTAパッケージ", + "type-ota-packages": "OTAパッケージ", + "list-of-ota-packages": "{ count, plural, =1 {OTAパッケージ 1 件} other {OTAパッケージ一覧 # 件} }", + "type-rpc": "RPC", + "type-queue": "キュー", + "type-queue-stats": "キュー統計", + "type-queues-stats": "キュー統計", + "type-notification": "通知", + "type-notification-rule": "通知ルール", + "type-notification-rules": "通知ルール", + "list-of-notification-rules": "{ count, plural, =1 {通知ルール 1 件} other {通知ルール一覧 # 件} }", + "type-notification-target": "通知受信者", + "type-notification-targets": "通知受信者", + "list-of-notification-targets": "{ count, plural, =1 {通知受信者 1 件} other {通知受信者一覧 # 件} }", + "type-notification-request": "通知リクエスト", + "type-notification-template": "通知テンプレート", + "type-notification-templates": "通知テンプレート", + "list-of-notification-templates": "{ count, plural, =1 {通知テンプレート 1 件} other {通知テンプレート一覧 # 件} }", + "link": "リンク", + "type-oauth2-client": "OAuth 2.0 クライアント", + "type-oauth2-clients": "OAuth 2.0 クライアント", + "list-of-oauth2-clients": "{ count, plural, =1 {OAuth 2.0 クライアント 1 件} other {OAuth 2.0 クライアント一覧 # 件} }", + "type-domain": "ドメイン", + "type-domains": "ドメイン", + "list-of-domains": "{ count, plural, =1 {ドメイン 1 件} other {ドメイン一覧 # 件} }", + "type-mobile-app": "モバイルアプリケーション", + "type-mobile-apps": "モバイルアプリケーション", + "list-of-mobile-apps": "{ count, plural, =1 {モバイルアプリケーション 1 件} other {モバイルアプリケーション一覧 # 件} }", + "type-mobile-app-bundle": "モバイルバンドル", + "type-mobile-app-bundles": "モバイルバンドル", + "list-of-mobile-app-bundles": "{ count, plural, =1 {モバイルバンドル 1 件} other {モバイルバンドル一覧 # 件} }" + }, + "entity-field": { + "created-time": "作成日時", + "name": "名前", + "type": "タイプ", + "first-name": "名", + "last-name": "姓", + "email": "Email", + "title": "タイトル", + "country": "国", + "state": "都道府県", + "city": "市区町村", + "address": "住所", + "address2": "住所 2", + "zip": "郵便番号", + "phone": "電話番号", + "label": "ラベル", + "queue-name": "キュー名", + "service-id": "サービスID", + "owner-name": "所有者名", + "owner-type": "所有者タイプ" + }, + "entity-view": { + "entity-view": "エンティティビュー", + "entity-view-required": "エンティティビューは必須です。", + "entity-views": "エンティティビュー", + "management": "エンティティビュー管理", + "view-entity-views": "エンティティビューを表示", + "entity-view-alias": "エンティティビューエイリアス", + "aliases": "エンティティビューエイリアス", + "no-alias-matching": "'{{alias}}' は見つかりません。", + "no-aliases-found": "エイリアスが見つかりません。", + "no-key-matching": "'{{key}}' は見つかりません。", + "no-keys-found": "キーが見つかりません。", + "create-new-alias": "新しいエイリアスを作成!", + "create-new-key": "新しいキーを作成!", + "duplicate-alias-error": "重複するエイリアス '{{alias}}' が見つかりました。
エンティティビューエイリアスはダッシュボード内で一意である必要があります。", + "configure-alias": "'{{alias}}' エイリアスを設定", + "no-entity-views-matching": "'{{entity}}' に一致するエンティティビューが見つかりませんでした。", + "public": "公開", + "alias": "エイリアス", + "alias-required": "エンティティビューのエイリアスは必須です。", + "remove-alias": "エンティティビューのエイリアスを削除", + "add-alias": "エンティティビューのエイリアスを追加", + "name-starts-with": "エンティティビュー名の式", + "help-text": "必要に応じて'%'を使用してください: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", + "entity-view-list": "エンティティビュー一覧", + "use-entity-view-name-filter": "フィルターを使用", + "entity-view-list-empty": "エンティティビューが選択されていません。", + "entity-view-name-filter-required": "エンティティビュー名フィルターは必須です。", + "entity-view-name-filter-no-entity-view-matched": "'{{entityView}}' で始まるエンティティビューは見つかりませんでした。", + "add": "エンティティビューを追加", + "entity-view-public": "エンティティビューは公開されています", + "assign-to-customer": "顧客に割り当て", + "assign-entity-view-to-customer": "エンティティビューを顧客に割り当て", + "assign-entity-view-to-customer-text": "顧客に割り当てるエンティティビューを選択してください", + "no-entity-views-text": "エンティティビューが見つかりません", + "assign-to-customer-text": "エンティティビューを割り当てる顧客を選択してください", + "entity-view-details": "エンティティビュー詳細", + "add-entity-view-text": "新しいエンティティビューを追加", + "delete": "エンティティビューを削除", + "assign-entity-views": "エンティティビューを割り当て", + "assign-entity-views-text": "{ count, plural, =1 {1 件のエンティティビュー} other {# 件のエンティティビュー} } を顧客に割り当て", + "delete-entity-views": "エンティティビューを削除", + "make-public": "エンティティビューを公開", + "make-private": "エンティティビューを非公開", + "unassign-from-customer": "顧客から削除", + "unassign-entity-views": "エンティティビューを削除", + "unassign-entity-views-action-title": "{ count, plural, =1 {1 件のエンティティビュー} other {# 件のエンティティビュー} } を顧客から削除", + "assign-new-entity-view": "新しいエンティティビューを割り当て", + "delete-entity-view-title": "エンティティビュー '{{entityViewName}}' を削除してもよろしいですか?", + "delete-entity-view-text": "確認後、エンティティビューと関連データは復元できなくなります。", + "delete-entity-views-title": "{ count, plural, =1 {1 件のエンティティビュー} other {# 件のエンティティビュー} } を削除してもよろしいですか?", + "delete-entity-views-action-title": "{ count, plural, =1 {1 件のエンティティビュー} other {# 件のエンティティビュー} } を削除", + "delete-entity-views-text": "確認後、選択したエンティティビューは削除され、関連データは復元できなくなります。", + "make-public-entity-view-title": "エンティティビュー '{{entityViewName}}' を公開してもよろしいですか?", + "make-public-entity-view-text": "確認後、エンティティビューとそのデータは公開され、他のユーザーがアクセスできるようになります。", + "make-private-entity-view-title": "エンティティビュー '{{entityViewName}}' を非公開にしてもよろしいですか?", + "make-private-entity-view-text": "確認後、エンティティビューとそのデータは非公開になり、他のユーザーはアクセスできなくなります。", + "unassign-entity-view-title": "エンティティビュー '{{entityViewName}}' を削除してもよろしいですか?", + "unassign-entity-view-text": "確認後、エンティティビューは削除され、顧客はアクセスできなくなります。", + "unassign-entity-view": "エンティティビューを削除", + "unassign-entity-views-title": "{ count, plural, =1 {1 件のエンティティビュー} other {# 件のエンティティビュー} } を削除してもよろしいですか?", + "unassign-entity-views-text": "確認後、選択したすべてのエンティティビューが削除され、顧客はアクセスできなくなります。", + "entity-view-type": "エンティティビュータイプ", + "entity-view-type-required": "エンティティビュータイプは必須です。", + "select-entity-view-type": "エンティティビュータイプを選択", + "enter-entity-view-type": "エンティティビュータイプを入力", + "any-entity-view": "任意のエンティティビュー", + "no-entity-view-types-matching": "'{{entitySubtype}}' に一致するエンティティビュータイプが見つかりませんでした。", + "entity-view-type-list-empty": "エンティティビュータイプが選択されていません。", + "entity-view-types": "エンティティビュータイプ", + "created-time": "作成日時", + "name": "名前", + "name-required": "名前は必須です。", + "name-max-length": "名前は 256 文字以内である必要があります。", + "type-max-length": "エンティティビュータイプは 256 文字以内である必要があります。", + "description": "説明", + "events": "イベント", + "details": "詳細", + "copyId": "エンティティビューIDをコピー", + "idCopiedMessage": "エンティティビューIDがクリップボードにコピーされました", + "assignedToCustomer": "顧客に割り当て済み", + "unable-entity-view-device-alias-title": "エンティティビューエイリアスを削除できません", + "unable-entity-view-device-alias-text": "デバイスエイリアス '{{entityViewAlias}}' は以下のウィジェットで使用されているため削除できません:
{{widgetsList}}", + "select-entity-view": "エンティティビューを選択", + "start-ts": "開始日時", + "end-ts": "終了日時", + "date-limits": "日付制限", + "client-attributes": "クライアント属性", + "shared-attributes": "共有属性", + "server-attributes": "サーバー属性", + "timeseries": "時系列", + "client-attributes-placeholder": "クライアント属性", + "shared-attributes-placeholder": "共有属性", + "server-attributes-placeholder": "サーバー属性", + "timeseries-placeholder": "時系列", + "target-entity": "ターゲットエンティティ", + "attributes-propagation": "属性の伝播", + "attributes-propagation-hint": "エンティティビューは、ターゲットエンティティから指定された属性を保存または更新するたびに自動的にコピーします。パフォーマンス上の理由で、ターゲットエンティティの属性は属性変更ごとにエンティティビューに伝播されません。「ビューへのコピー」ルールノードをルールチェーンに設定し、「属性更新」メッセージを新しいルールノードにリンクすることで自動的な伝播を有効にできます。", + "timeseries-data": "時系列データ", + "timeseries-data-hint": "ターゲットエンティティの時系列データキーを設定し、これらのデータはエンティティビューで読み取り専用としてアクセスされます。", + "search": "エンティティビューを検索", + "selected-entity-views": "{ count, plural, =1 {1 件のエンティティビュー} other {# 件のエンティティビュー} } を選択", + "assign-entity-view-to-edge": "エンティティビューをEdgeに割り当て", + "assign-entity-view-to-edge-text": "Edgeに割り当てるエンティティビューを選択してください", + "unassign-entity-view-from-edge-title": "エンティティビュー '{{entityViewName}}' をEdgeから削除してもよろしいですか?", + "unassign-entity-view-from-edge-text": "確認後、エンティティビューはEdgeから削除され、Edgeではアクセスできなくなります。", + "unassign-entity-views-from-edge-action-title": "Edgeから { count, plural, =1 {1 件のエンティティビュー} other {# 件のエンティティビュー} } を削除", + "unassign-entity-view-from-edge": "エンティティビューをEdgeから削除", + "unassign-entity-views-from-edge-title": "Edgeから { count, plural, =1 {1 件のエンティティビュー} other {# 件のエンティティビュー} } を削除してもよろしいですか?", + "unassign-entity-views-from-edge-text": "確認後、選択したすべてのエンティティビューはEdgeから削除され、Edgeではアクセスできなくなります。" + }, + "event": { + "event-type": "イベントタイプ", + "events-filter": "イベントフィルター", + "clean-events": "イベントをクリア", + "type-error": "エラー", + "type-lc-event": "ライフサイクルイベント", + "type-stats": "統計", + "type-debug-rule-node": "デバッグ", + "type-debug-rule-chain": "デバッグ", + "type-debug-calculated-field": "デバッグ", + "arguments": "引数", + "result": "結果", + "no-events-prompt": "イベントが見つかりません", + "error": "エラー", + "alarm": "アラーム", + "event-time": "イベント時間", + "server": "サーバー", + "body": "ボディ", + "method": "メソッド", + "type": "タイプ", + "metadata": "メタデータ", + "message": "メッセージ", + "message-id": "メッセージID", + "copy-message-id": "メッセージIDをコピー", + "message-type": "メッセージタイプ", + "data-type": "データタイプ", + "relation-type": "関連タイプ", + "data": "データ", + "event": "イベント", + "status": "ステータス", + "success": "成功", + "failed": "失敗", + "messages-processed": "処理されたメッセージ", + "max-messages-processed": "処理された最大メッセージ数", + "min-messages-processed": "処理された最小メッセージ数", + "errors-occurred": "発生したエラー", + "max-errors-occurred": "発生した最大エラー数", + "min-errors-occurred": "発生した最小エラー数", + "min-value": "最小値は0です。", "all-events": "すべて", - "entity-type": "エンティティタイプ" - }, - "extension": { - "extensions": "拡張機能", - "selected-extensions": "{ count, plural, =1 {1 extension} other {# extensions} }選択された", - "type": "タイプ", - "key": "キー", - "value": "値", - "id": "ID", - "extension-id": "内線番号", - "extension-type": "拡張タイプ", - "transformer-json": "JSON *", - "unique-id-required": "現在の拡張IDは既に存在します。", - "delete": "拡張子を削除", - "add": "内線番号を追加", - "edit": "拡張機能を編集する", - "delete-extension-title": "'{{extensionId}}'?", - "delete-extension-text": "確認後、拡張子と関連するすべてのデータが回復不能になることに注意してください。", - "delete-extensions-title": "{ count, plural, =1 {1 extension} other {# extensions} }?", - "delete-extensions-text": "注意してください。確認後、選択したすべての内線番号が削除されます。", - "converters": "コンバーター", - "converter-id": "コンバーターID", - "configuration": "構成", - "converter-configurations": "コンバータ構成", - "token": "セキュリティトークン", - "add-converter": "コンバータを追加する", - "add-config": "コンバータ設定を追加する", - "device-name-expression": "デバイス名式", - "device-type-expression": "デバイスタイプの式", - "custom": "カスタム", - "to-double": "ダブル", - "transformer": "トランス", - "json-required": "トランスフォーマーjsonが必要です。", - "json-parse": "変圧器jsonを解析できません。", - "attributes": "属性", - "add-attribute": "属性を追加する", - "add-map": "マッピング要素を追加する", - "timeseries": "タイムズ", - "add-timeseries": "時系列を追加する", - "field-required": "フィールドは必須項目です", - "brokers": "ブローカー", - "add-broker": "ブローカーを追加", - "host": "ホスト", - "port": "ポート", - "port-range": "ポートは1〜65535の範囲内にある必要があります。", - "ssl": "SSL", - "credentials": "資格情報", - "username": "ユーザー名", - "password": "パスワード", - "retry-interval": "ミリ秒単位の再試行間隔", - "anonymous": "匿名", - "basic": "ベーシック", - "pem": "PEM", - "ca-cert": "CA証明書ファイル*", - "private-key": "秘密鍵ファイル*", - "cert": "証明書ファイル*", - "no-file": "ファイルが選択されていません。", - "drop-file": "ファイルをドロップするか、クリックしてアップロードするファイルを選択します。", - "mapping": "マッピング", - "topic-filter": "トピックフィルタ", - "converter-type": "コンバータタイプ", - "converter-json": "Json", - "json-name-expression": "デバイス名json式", - "topic-name-expression": "デバイス名トピック表現", - "json-type-expression": "デバイスタイプjson式", - "topic-type-expression": "デバイスタイプトピック表現", - "attribute-key-expression": "属性キー式", - "attr-json-key-expression": "属性キーjson式", - "attr-topic-key-expression": "属性キートピック式", - "request-id-expression": "要求ID式", - "request-id-json-expression": "リクエストID json式", - "request-id-topic-expression": "リクエストIDトピック表現", - "response-topic-expression": "応答トピック表現", - "value-expression": "値式", - "topic": "トピック", - "timeout": "タイムアウト(ミリ秒)", - "converter-json-required": "コンバータjsonが必要です。", - "converter-json-parse": "コンバータjsonを解析できません。", - "filter-expression": "フィルタ式", - "connect-requests": "接続要求", - "add-connect-request": "接続要求を追加", - "disconnect-requests": "切断要求", - "add-disconnect-request": "切断リクエストを追加する", - "attribute-requests": "属性要求", - "add-attribute-request": "属性要求を追加する", - "attribute-updates": "属性の更新", - "add-attribute-update": "属性の更新を追加する", - "server-side-rpc": "サーバー側RPC", - "add-server-side-rpc-request": "サーバー側RPC要求を追加する", - "device-name-filter": "デバイス名フィルタ", - "attribute-filter": "属性フィルタ", - "method-filter": "方法フィルター", - "request-topic-expression": "トピック表現を要求する", - "response-timeout": "応答タイムアウト(ミリ秒)", - "topic-expression": "トピック表現", - "client-scope": "クライアントスコープ", - "add-device": "デバイスを追加", - "opc-server": "サーバー", - "opc-add-server": "サーバーを追加", - "opc-add-server-prompt": "サーバーを追加してください", - "opc-application-name": "アプリケーション名", - "opc-application-uri": "アプリケーションURI", - "opc-scan-period-in-seconds": "スキャン時間(秒)", - "opc-security": "セキュリティ", - "opc-identity": "身元", - "opc-keystore": "キーストア", - "opc-type": "タイプ", - "opc-keystore-type": "タイプ", - "opc-keystore-location": "ロケーション*", - "opc-keystore-password": "パスワード", - "opc-keystore-alias": "エイリアス", - "opc-keystore-key-password": "キーのパスワード", - "opc-device-node-pattern": "デバイスノードパターン", - "opc-device-name-pattern": "デバイス名パターン", - "modbus-server": "サーバー/スレーブ", - "modbus-add-server": "サーバー/スレーブを追加する", - "modbus-add-server-prompt": "サーバー/スレーブを追加してください", - "modbus-transport": "輸送", - "modbus-port-name": "シリアルポート名", - "modbus-encoding": "エンコーディング", - "modbus-parity": "パリティ", - "modbus-baudrate": "ボーレート", - "modbus-databits": "データビット", - "modbus-stopbits": "ストップビット", - "modbus-databits-range": "データビットは7〜8の範囲内にある必要があります。", - "modbus-stopbits-range": "ストップビットは1〜2の範囲内でなければなりません。", - "modbus-unit-id": "ユニットID", - "modbus-unit-id-range": "ユニットIDは1〜247の範囲で指定してください。", - "modbus-device-name": "装置名", - "modbus-poll-period": "投票期間(ミリ秒)", - "modbus-attributes-poll-period": "属性のポーリング期間(ミリ秒)", - "modbus-timeseries-poll-period": "時系列ポーリング期間(ミリ秒)", - "modbus-poll-period-range": "投票期間は正の値でなければなりません。", - "modbus-tag": "タグ", - "modbus-function": "関数", - "modbus-register-address": "登録アドレス", - "modbus-register-address-range": "レジスタのアドレスは0〜65535の範囲内である必要があります。", - "modbus-register-bit-index": "ビットインデックス", - "modbus-register-bit-index-range": "ビットインデックスは0〜15の範囲内である必要があります。", - "modbus-register-count": "レジスタ数", - "modbus-register-count-range": "レジスタ数は正の値でなければなりません。", - "modbus-byte-order": "バイト順", - "sync": { - "status": "状態", - "sync": "同期", - "not-sync": "同期しない", - "last-sync-time": "前回の同期時間", - "not-available": "利用不可" - }, - "export-extensions-configuration": "エクステンション設定のエクスポート", - "import-extensions-configuration": "エクステンション設定のインポート", - "import-extensions": "拡張機能のインポート", - "import-extension": "インポート拡張", - "export-extension": "輸出延長", - "file": "拡張機能ファイル", - "invalid-file-error": "無効な拡張ファイル" - }, - "fullscreen": { - "expand": "フルスクリーンに拡大", - "exit": "全画面表示を終了", - "toggle": "フルスクリーンモードを切り替える", - "fullscreen": "全画面表示" - }, - "function": { - "function": "関数" - }, - "grid": { - "delete-item-title": "このアイテムを削除してもよろしいですか?", - "delete-item-text": "注意してください。確認後、この項目と関連するすべてのデータは回復不能になります。", - "delete-items-title": "{ count, plural, =1 {1 item} other {# items} }?", - "delete-items-action-title": "{ count, plural, =1 {1 item} other {# items} }", - "delete-items-text": "注意してください。確認後、選択したすべてのアイテムが削除され、関連するすべてのデータは回復不能になります。", - "add-item-text": "新しいアイテムを追加", - "no-items-text": "項目は見つかりませんでした", - "item-details": "商品詳細", - "delete-item": "アイテムを削除", - "delete-items": "アイテムを削除する", - "scroll-to-top": "トップにスクロールします" - }, - "help": { - "goto-help-page": "ヘルプページに行く" - }, - "home": { - "home": "ホーム", - "profile": "プロフィール", - "logout": "ログアウト", - "menu": "メニュー", - "avatar": "アバター", - "open-user-menu": "ユーザーメニューを開く" - }, - "import": { - "no-file": "ファイルが選択されていません", - "drop-file": "JSONファイルをドロップするか、アップロードするファイルをクリックして選択します。" - }, - "item": { - "selected": "選択された" - }, - "js-func": { - "no-return-error": "関数は値を返す必要があります!", - "return-type-mismatch": "'{{type}}'タイプ!", - "tidy": "きちんとした" - }, - "key-val": { - "key": "キー", - "value": "値", - "remove-entry": "エントリを削除", - "add-entry": "エントリを追加", - "no-data": "エントリなし" - }, - "layout": { - "layout": "レイアウト", - "manage": "レイアウトの管理", - "settings": "レイアウト設定", - "color": "色", - "main": "メイン", - "right": "右", - "select": "ターゲットレイアウトを選択" - }, - "legend": { - "position": "凡例の位置", - "show-max": "最大値を表示", - "show-min": "最小値を表示", - "show-avg": "平均値を表示", - "show-total": "合計値を表示", - "settings": "凡例の設定", - "min": "最小", - "max": "最大", - "avg": "平均", - "total": "合計" - }, - "login": { - "login": "ログイン", - "request-password-reset": "リクエストパスワードのリセット", - "reset-password": "パスワードを再設定する", - "create-password": "パスワードの作成", - "passwords-mismatch-error": "入力されたパスワードは同じでなければなりません!", - "password-again": "パスワードをもう一度", - "sign-in": "サインインしてください", - "username": "ユーザー名(電子メール)", - "remember-me": "ログイン情報を記憶", - "forgot-password": "パスワードをお忘れですか?", - "password-reset": "パスワードのリセット", - "new-password": "新しいパスワード", - "new-password-again": "新しいパスワードを再入力", - "password-link-sent-message": "パスワードリセットリンクが正常に送信されました!", - "email": "Eメール", - "login-with": "{{name}}でログイン", - "or": "または" - }, - "position": { - "top": "上", - "bottom": "下", - "left": "左", - "right": "右" - }, - "profile": { - "profile": "プロフィール", - "change-password": "パスワードを変更する", - "current-password": "現在のパスワード" - }, - "relation": { - "relations": "関係", - "direction": "方向", - "search-direction": { - "FROM": "から", - "TO": "に" - }, - "direction-type": { - "FROM": "から", - "TO": "に" - }, - "from-relations": "アウトバウンド関係", - "to-relations": "インバウンド関係", - "selected-relations": "{ count, plural, =1 {1 relation} other {# relations} }選択された", - "type": "タイプ", - "to-entity-type": "エンティティタイプへ", - "to-entity-name": "エンティティ名に", - "from-entity-type": "エンティティタイプから", - "from-entity-name": "エンティティ名から", - "to-entity": "実体へ", - "from-entity": "エンティティから", - "delete": "関係を削除する", - "relation-type": "関係タイプ", - "relation-type-required": "関係タイプが必要です。", - "any-relation-type": "いかなるタイプ", - "add": "関係を追加する", - "edit": "関係を編集する", - "delete-to-relation-title": "'{{entityName}}'?", - "delete-to-relation-text": "'{{entityName}}'現在のエンティティとは無関係です。", - "delete-to-relations-title": "{ count, plural, =1 {1 relation} other {# relations} }?", - "delete-to-relations-text": "注意してください。確認後、選択されたリレーションはすべて削除され、対応するエンティティは現在のエンティティとは無関係になります。", - "delete-from-relation-title": "'{{entityName}}'?", - "delete-from-relation-text": "'{{entityName}}'.", - "delete-from-relations-title": "{ count, plural, =1 {1 relation} other {# relations} }?", - "delete-from-relations-text": "注意してください。確認後、選択されたリレーションはすべて削除され、現在のエンティティは対応するエンティティとは無関係になります。", - "remove-relation-filter": "関係フィルタを削除する", - "add-relation-filter": "関係フィルタを追加する", - "any-relation": "関係", - "relation-filters": "関係フィルタ", - "additional-info": "追加情報(JSON)", - "invalid-additional-info": "追加情報jsonを解析できません。" - }, - "rulechain": { - "rulechain": "ルールチェーン", - "rulechains": "ルールチェーン", - "root": "ルート", - "delete": "ルールチェーンの削除", - "name": "名", - "name-required": "名前は必須です。", - "description": "説明", - "add": "ルールチェーンを追加する", - "set-root": "ルールチェーンのルートを作る", - "set-root-rulechain-title": "'{{ruleChainName}}'ルート?", - "set-root-rulechain-text": "確認後、ルールチェーンはルートになり、すべての受信トランスポートメッセージを処理します。", - "delete-rulechain-title": "'{{ruleChainName}}'?", - "delete-rulechain-text": "確認後、ルールチェーンと関連するすべてのデータが回復不能になるので注意してください。", - "delete-rulechains-title": "{ count, plural, =1 {1 rule chain} other {# rule chains} }?", - "delete-rulechains-action-title": "{ count, plural, =1 {1 rule chain} other {# rule chains} }", - "delete-rulechains-text": "確認後、選択したすべてのルールチェーンが削除され、関連するすべてのデータが回復不能になるので注意してください。", - "add-rulechain-text": "新しいルールチェーンを追加する", - "no-rulechains-text": "ルールチェーンが見つかりません", - "rulechain-details": "ルールチェーンの詳細", - "details": "詳細", - "events": "イベント", - "system": "システム", - "import": "ルールチェーンのインポート", - "export": "ルールチェーンのエクスポート", - "export-failed-error": "{{error}}", - "create-new-rulechain": "新しいルールチェーンを作成する", - "rulechain-file": "ルールチェーンファイル", - "invalid-rulechain-file-error": "ルールチェーンをインポートできません:ルールチェーンのデータ構造が無効です。", - "copyId": "ルールチェーンIDのコピー", - "idCopiedMessage": "ルールチェーンIDがクリップボードにコピーされました", - "select-rulechain": "ルールチェーンの選択", - "no-rulechains-matching": "'{{entity}}'発見されました。", - "rulechain-required": "ルールチェーンが必要です", - "management": "ルール管理", - "debug-mode": "デバッグモード" - }, - "rulenode": { - "details": "詳細", - "events": "イベント", - "search": "検索ノード", - "open-node-library": "オープンノードライブラリ", - "add": "ルールノードを追加する", - "name": "名", - "name-required": "名前は必須です。", - "type": "タイプ", - "description": "説明", - "delete": "ルールノードを削除", - "select-all-objects": "すべてのノードと接続を選択する", - "deselect-all-objects": "すべてのノードと接続の選択を解除する", - "delete-selected-objects": "選択したノードと接続を削除する", - "delete-selected": "選択を削除します", - "select-all": "すべて選択", - "copy-selected": "選択したコピー", - "deselect-all": "すべての選択を解除", - "rulenode-details": "ルールノードの詳細", - "debug-mode": "デバッグモード", - "configuration": "構成", - "link": "リンク", - "link-details": "ルールノードのリンクの詳細", - "add-link": "リンクを追加", - "link-label": "リンクラベル", - "link-label-required": "リンクラベルが必要です。", - "custom-link-label": "カスタムリンクラベル", - "custom-link-label-required": "カスタムリンクラベルが必要です。", - "link-labels": "リンクラベル", - "link-labels-required": "リンクラベルが必要です。", - "no-link-labels-found": "リンクラベルが見つかりません", - "no-link-label-matching": "'{{label}}'見つかりません。", - "create-new-link-label": "新しいものを作成してください!", - "type-filter": "フィルタ", - "type-filter-details": "設定された条件で着信メッセージをフィルタリングする", - "type-enrichment": "豊かな", - "type-enrichment-details": "メッセージメタデータに追加情報を追加する", - "type-transformation": "変換", - "type-transformation-details": "メッセージペイロードとメタデータの変更", - "type-action": "アクション", - "type-action-details": "特別なアクションを実行する", - "type-external": "外部", - "type-external-details": "外部システムとの相互作用", - "type-rule-chain": "ルールチェーン", - "type-rule-chain-details": "受信したメッセージを指定したルールチェーンに転送する", - "type-input": "入力", - "type-input-details": "ルールチェーンの論理入力、次の関連ルールノードへの着信メッセージの転送", - "type-unknown": "未知の", - "type-unknown-details": "未解決のルールノード", - "directive-is-not-loaded": "'{{directiveName}}'利用できません。", - "ui-resources-load-error": "構成UIリソースをロードできませんでした。", - "invalid-target-rulechain": "ターゲットルールチェーンを解決できません!", - "test-script-function": "テストスクリプト機能", - "message": "メッセージ", - "message-type": "メッセージタイプ", - "select-message-type": "メッセージタイプを選択", - "message-type-required": "メッセージタイプは必須です", - "metadata": "メタデータ", - "metadata-required": "メタデータのエントリを空にすることはできません。", - "output": "出力", - "test": "テスト", - "help": "助けて" - }, - "tenant": { - "tenant": "テナント", - "tenants": "テナント", - "management": "テナント管理", - "add": "テナントを追加", - "admins": "管理者", - "manage-tenant-admins": "テナント管理者の管理", - "delete": "テナントの削除", - "add-tenant-text": "新しいテナントを追加する", - "no-tenants-text": "テナントは見つかりませんでした", - "tenant-details": "テナントの詳細", - "delete-tenant-title": "'{{tenantTitle}}'?", - "delete-tenant-text": "確認後、テナントと関連するすべてのデータが回復不能になるので注意してください。", - "delete-tenants-title": "{ count, plural, =1 {1 tenant} other {# tenants} }?", - "delete-tenants-action-title": "{ count, plural, =1 {1 tenant} other {# tenants} }", - "delete-tenants-text": "注意してください。確認後、選択されたすべてのテナントが削除され、関連するすべてのデータは回復不能になります。", - "title": "タイトル", - "title-required": "タイトルは必須です。", - "description": "説明", - "details": "詳細", - "events": "イベント", - "copyId": "テナントIDをコピーする", - "idCopiedMessage": "テナントIDがクリップボードにコピーされました", - "select-tenant": "テナントを選択", - "no-tenants-matching": "'{{entity}}'発見されました。", - "tenant-required": "テナントが必要です" - }, - "timeinterval": { - "seconds-interval": "{ seconds, plural, =1 {1 second} other {# seconds} }", - "minutes-interval": "{ minutes, plural, =1 {1 minute} other {# minutes} }", - "hours-interval": "{ hours, plural, =1 {1 hour} other {# hours} }", - "days-interval": "{ days, plural, =1 {1 day} other {# days} }", - "days": "日", - "hours": "時", - "minutes": "分", - "seconds": "秒", - "advanced": "カスタム" - }, - "timewindow": { - "days": "{ days, plural, =1 { day } other {# days } }", - "hours": "{ hours, plural, =0 { hour } =1 {1 hour } other {# hours } }", - "minutes": "{ minutes, plural, =0 { minute } =1 {1 minute } other {# minutes } }", - "seconds": "{ seconds, plural, =0 { second } =1 {1 second } other {# seconds } }", - "realtime": "リアルタイム", - "history": "履歴", - "last-prefix": "直近", - "period": "{{ startTime }}{{ endTime }}", - "edit": "タイムウィンドウを編集", - "date-range": "期間", - "last": "直近", - "time-period": "期間" - }, - "user": { - "user": "ユーザー", - "users": "ユーザー", - "customer-users": "顧客ユーザー", - "tenant-admins": "テナント管理者", - "sys-admin": "システム管理者", - "tenant-admin": "テナント管理者", - "customer": "顧客", - "anonymous": "匿名", - "add": "ユーザーを追加する", - "delete": "ユーザーを削除", - "add-user-text": "新しいユーザーを追加", - "no-users-text": "ユーザが見つかりませんでした", - "user-details": "ユーザーの詳細", - "delete-user-title": "'{{userEmail}}'?", - "delete-user-text": "確認後、ユーザーと関連するすべてのデータが回復不能になるので注意してください。", - "delete-users-title": "{ count, plural, =1 {1 user} other {# users} }?", - "delete-users-action-title": "{ count, plural, =1 {1 user} other {# users} }", - "delete-users-text": "注意してください。確認後、選択したすべてのユーザーが削除され、関連するすべてのデータは回復不能になります。", - "activation-email-sent-message": "アクティベーション電子メールが正常に送信されました!", - "resend-activation": "アクティブ化を再送", - "email": "Eメール", - "email-required": "電子メールが必要です。", - "invalid-email-format": "メールフォーマットが無効です。", - "first-name": "ファーストネーム", - "last-name": "苗字", - "description": "説明", - "default-dashboard": "デフォルトのダッシュボード", - "always-fullscreen": "常に全画面表示", - "select-user": "ユーザーを選択", - "no-users-matching": "'{{entity}}'発見されました。", - "user-required": "ユーザーは必須です", - "activation-method": "起動方法", - "display-activation-link": "アクティブ化リンクを表示する", - "send-activation-mail": "アクティベーションメールを送信する", - "activation-link": "ユーザーアクティベーションリンク", - "activation-link-text": "activation link :", - "copy-activation-link": "アクティブ化リンクをコピーする", - "activation-link-copied-message": "ユーザーのアクティベーションリンクがクリップボードにコピーされました", - "details": "詳細" - }, - "value": { - "type": "値のタイプ", - "string": "文字列", - "string-value": "文字列値", - "integer": "整数", - "integer-value": "整数値", - "invalid-integer-value": "整数値が無効です", - "double": "ダブル", - "double-value": "二重価値", - "boolean": "ブール", - "boolean-value": "ブール値", - "false": "偽", - "true": "真", - "long": "長いです" - }, - "widget": { - "widget-library": "ウィジェットライブラリ", - "widget-bundle": "ウィジェットバンドル", - "select-widgets-bundle": "ウィジェットのバンドルを選択", - "management": "ウィジェット管理", - "editor": "ウィジェットエディタ", - "widget-type-not-found": "ウィジェットの設定を読み込む際に問題が発生しました。
おそらく関連付けられているウィジェットのタイプが削除されています。", - "widget-type-load-error": "次のエラーのためにウィジェットが読み込まれませんでした:", - "remove": "ウィジェットを削除", - "edit": "ウィジェットの編集", - "remove-widget-title": "'{{widgetTitle}}'?", - "remove-widget-text": "確認後、ウィジェットと関連するすべてのデータは回復不能になります。", - "timeseries": "時系列", - "search-data": "検索データ", - "no-data-found": "何もデータが見つかりませんでした", - "latest": "最新の値", - "rpc": "コントロールウィジェット", - "alarm": "アラームウィジェット", - "static": "静的ウィジェット", - "select-widget-type": "ウィジェットタイプを選択", - "missing-widget-title-error": "ウィジェットのタイトルを指定する必要があります!", - "widget-saved": "ウィジェットが保存されました", - "unable-to-save-widget-error": "ウィジェットを保存できません!ウィジェットにエラーがあります!", - "save": "ウィジェットを保存", - "saveAs": "ウィジェットを次のように保存する", - "save-widget-type-as": "ウィジェットタイプを次のように保存します", - "save-widget-type-as-text": "新しいウィジェットのタイトルを入力したり、ターゲットウィジェットのバンドルを選択してください", - "toggle-fullscreen": "フルスクリーン切り替え", - "run": "ウィジェットを実行する", - "title": "ウィジェットのタイトル", - "title-required": "ウィジェットのタイトルが必要です。", - "type": "ウィジェットタイプ", - "resources": "リソース", - "resource-url": "JavaScript / CSS URL", - "remove-resource": "リソースを削除する", - "add-resource": "リソースを追加", - "html": "HTML", - "tidy": "きちんとした", - "css": "CSS", - "settings-schema": "設定スキーマ", - "datakey-settings-schema": "データキー設定のスキーマ", - "javascript": "Javascript", - "add-widget-type": "新しいウィジェットタイプを追加する", - "widget-template-load-failed-error": "ウィジェットテンプレートを読み込めませんでした!", - "add": "ウィジェットを追加", - "undo": "ウィジェットの変更を元に戻す", - "export": "ウィジェットの書き出し" - }, - "widget-action": { - "header-button": "ウィジェットのヘッダーボタン", - "open-dashboard-state": "新しいダッシュボードの状態に移動する", - "update-dashboard-state": "現在のダッシュボードの状態を更新する", - "open-dashboard": "他のダッシュボードに移動する", - "custom": "カスタムアクション", - "target-dashboard-state": "ターゲットダッシュボードの状態", - "target-dashboard-state-required": "ターゲットダッシュボードの状態が必要です", - "set-entity-from-widget": "エンティティをウィジェットから設定する", - "target-dashboard": "ターゲットダッシュボード", - "open-right-layout": "右ダッシュボードレイアウトを開く(モバイルビュー)" - }, - "widgets-bundle": { - "current": "現在のバンドル", - "widgets-bundles": "ウィジェットバンドル", - "add": "ウィジェットのバンドルを追加", - "delete": "ウィジェットのバンドルを削除する", - "title": "タイトル", - "title-required": "タイトルは必須です。", - "add-widgets-bundle-text": "新しいウィジェットのバンドルを追加する", - "no-widgets-bundles-text": "ウィジェットバンドルが見つかりません", - "empty": "ウィジェットのバンドルが空です", - "details": "詳細", - "widgets-bundle-details": "ウィジェットのバンドルの詳細", - "delete-widgets-bundle-title": "'{{widgetsBundleTitle}}'?", - "delete-widgets-bundle-text": "確認後、ウィジェットはバンドルされ、関連するすべてのデータは回復不能になります。", - "delete-widgets-bundles-title": "{ count, plural, =1 {1 widgets bundle} other {# widgets bundles} }?", - "delete-widgets-bundles-action-title": "{ count, plural, =1 {1 widgets bundle} other {# widgets bundles} }", - "delete-widgets-bundles-text": "確認後、選択したすべてのウィジェットバンドルは削除され、関連するすべてのデータは回復不能になります。", - "no-widgets-bundles-matching": "'{{widgetsBundle}}'発見されました。", - "widgets-bundle-required": "ウィジェットバンドルが必要です。", - "system": "システム", - "import": "インポートウィジェットバンドル", - "export": "ウィジェットのエクスポートバンドル", - "export-failed-error": "{{error}}", - "create-new-widgets-bundle": "新しいウィジェットバンドルを作成する", - "widgets-bundle-file": "ウィジェットのバンドルファイル", - "invalid-widgets-bundle-file-error": "ウィジェットをインポートできません。bundle:データ構造が無効です。" - }, - "widget-config": { - "data": "データ", - "settings": "設定", - "advanced": "カスタム", - "title": "タイトル", - "general-settings": "一般設定", - "display-title": "タイトルを表示", - "drop-shadow": "影を落とす", - "enable-fullscreen": "フルスクリーンを有効にする", - "background-color": "背景色", - "text-color": "テキストの色", - "padding": "パディング", - "margin": "マージン", - "widget-style": "ウィジェットスタイル", - "title-style": "タイトルスタイル", - "mobile-mode-settings": "モバイルモードの設定", - "order": "順番", - "height": "高さ", - "units": "単位", - "decimals": "小数点以下の桁数", - "timewindow": "タイムウィンドウ", - "use-dashboard-timewindow": "ダッシュボードのタイムウィンドウを使用する", - "display-legend": "凡例を表示", - "datasources": "データソース", - "maximum-datasources": "{ count, plural, =1 {1 datasource is allowed.} other {# datasources are allowed} }", - "datasource-type": "タイプ", - "datasource-parameters": "パラメーター", - "remove-datasource": "データソースを削除", - "add-datasource": "データソースを追加", - "target-device": "ターゲットデバイス", - "alarm-source": "アラームソース", - "actions": "アクション", - "action": "アクション", - "add-action": "アクションを追加", - "search-actions": "検索アクション", - "action-source": "アクションソース", - "action-source-required": "アクションソースが必要です。", - "action-name": "名", - "action-name-required": "アクション名は必須です。", - "action-name-not-unique": "同じ名前の別のアクションがすでに存在します。\nアクション名は、同じアクションソース内で一意である必要があります。", - "action-icon": "アイコン", - "action-type": "タイプ", - "action-type-required": "アクションタイプが必要です。", - "edit-action": "アクションの編集", - "delete-action": "アクションの削除", - "delete-action-title": "ウィジェットアクションを削除する", - "delete-action-text": "'{{actionName}}'?" - }, - "widget-type": { - "import": "ウィジェットタイプをインポート", - "export": "ウィジェットのタイプをエクスポート", - "export-failed-error": "{{error}}", - "create-new-widget-type": "新しいウィジェットタイプを作成する", - "widget-type-file": "ウィジェットタイプファイル", - "invalid-widget-type-file-error": "ウィジェットタイプをインポートできません:ウィジェットタイプのデータ構造が無効です。" - }, - "widgets": { - "date-range-navigator": { - "localizationMap": { - "Sun": "日", - "Mon": "月", - "Tue": "火", - "Wed": "水", - "Thu": "木", - "Fri": "金", - "Sat": "土", - "Jan": "1月", - "Feb": "2月", - "Mar": "3月", - "Apr": "4月", - "May": "5月", - "Jun": "6月", - "Jul": "7月", - "Aug": "8月", - "Sep": "9月", - "Oct": "10月", - "Nov": "11月", - "Dec": "12月", - "January": "1月", - "February": "2月", - "March": "3月", - "April": "4月", - "June": "6月", - "July": "7月", - "August": "8月", - "September": "9月", - "October": "10月", - "November": "11月", - "December": "12月", - "Custom Date Range": "カスタム期間", - "Date Range Template": "日付範囲テンプレート", - "Today": "今日", - "Yesterday": "昨日", - "This Week": "今週", - "Last Week": "先週", - "This Month": "今月", - "Last Month": "先月", - "Year": "年", - "This Year": "今年", - "Last Year": "昨年", - "Date picker": "日付選択", - "Hour": "時", - "Day": "日", - "Week": "週間", - "2 weeks": "2週間", - "Month": "月", - "3 months": "3ヶ月", - "6 months": "6ヵ月", - "Custom interval": "カスタム間隔", - "Interval": "間隔", - "Step size": "刻み幅", - "Ok": "Ok" - } - } - }, - "icon": { - "icon": "アイコン", - "select-icon": "選択アイコン", - "material-icons": "マテリアルアイコン", - "show-all": "すべてのアイコンを表示する" - }, - "custom": { - "widget-action": { - "action-cell-button": "アクションセルボタン", - "row-click": "行のクリック", - "polygon-click": "ポリゴンクリック", - "marker-click": "マーカークリック", - "tooltip-tag-action": "ツールチップのタグアクション" - } - }, - "language": { - "language": "言語" - } -} + "has-error": "エラーが発生しています", + "entity-id": "エンティティID", + "copy-entity-id": "エンティティIDをコピー", + "entity-type": "エンティティタイプ", + "clear-filter": "フィルターをクリア", + "clear-request-title": "すべてのイベントをクリア", + "clear-request-text": "すべてのイベントをクリアしてもよろしいですか?", + "started": "開始", + "updated": "更新", + "stopped": "停止" + }, + "extension": { + "extensions": "拡張機能", + "selected-extensions": "{ count, plural, =1 {1 件の拡張機能} other {# 件の拡張機能} } が選択されました", + "type": "タイプ", + "key": "キー", + "value": "値", + "id": "ID", + "extension-id": "拡張機能ID", + "extension-type": "拡張機能タイプ", + "transformer-json": "JSON *", + "unique-id-required": "現在の拡張機能IDはすでに存在します。", + "delete": "拡張機能を削除", + "add": "拡張機能を追加", + "edit": "拡張機能を編集", + "delete-extension-title": "拡張機能 '{{extensionId}}' を削除してもよろしいですか?", + "delete-extension-text": "確認後、拡張機能とその関連データは復元できなくなりますのでご注意ください。", + "delete-extensions-title": "{ count, plural, =1 {1 件の拡張機能} other {# 件の拡張機能} } を削除してもよろしいですか?", + "delete-extensions-text": "確認後、選択したすべての拡張機能が削除されますのでご注意ください。", + "converters": "コンバーター", + "converter-id": "コンバーターID", + "configuration": "設定", + "converter-configurations": "コンバーター設定", + "token": "セキュリティトークン", + "add-converter": "コンバーターを追加", + "add-config": "コンバーター設定を追加", + "device-name-expression": "デバイス名式", + "device-type-expression": "デバイスタイプ式", + "custom": "カスタム", + "to-double": "ダブルに変換", + "transformer": "トランスフォーマー", + "json-required": "トランスフォーマーのJSONは必須です。", + "json-parse": "トランスフォーマーJSONを解析できません。", + "attributes": "属性", + "add-attribute": "属性を追加", + "add-map": "マッピング要素を追加", + "timeseries": "時系列", + "add-timeseries": "時系列を追加", + "field-required": "フィールドは必須です", + "brokers": "ブローカー", + "add-broker": "ブローカーを追加", + "host": "ホスト", + "port": "ポート", + "port-range": "ポートは 1 から 65535 の範囲内である必要があります。", + "ssl": "SSL", + "credentials": "認証情報", + "username": "ユーザー名", + "password": "パスワード", + "retry-interval": "リトライ間隔(ミリ秒単位)", + "anonymous": "匿名", + "basic": "ベーシック", + "pem": "PEM", + "ca-cert": "CA証明書ファイル *", + "private-key": "秘密鍵ファイル *", + "cert": "証明書ファイル *", + "no-file": "ファイルが選択されていません。", + "drop-file": "ファイルをドロップするか、クリックしてファイルを選択してアップロードしてください。", + "mapping": "マッピング", + "topic-filter": "トピックフィルター", + "converter-type": "コンバータタイプ", + "converter-json": "JSON", + "json-name-expression": "デバイス名のJSON式", + "topic-name-expression": "デバイス名のトピック式", + "json-type-expression": "デバイスタイプのJSON式", + "topic-type-expression": "デバイスタイプのトピック式", + "attribute-key-expression": "属性キー式", + "attr-json-key-expression": "属性キーJSON式", + "attr-topic-key-expression": "属性キートピック式", + "request-id-expression": "リクエストID式", + "request-id-json-expression": "リクエストIDJSON式", + "request-id-topic-expression": "リクエストIDトピック式", + "response-topic-expression": "レスポストピック式", + "value-expression": "値式", + "topic": "トピック", + "timeout": "タイムアウト(ミリ秒単位)", + "converter-json-required": "コンバータJSONは必須です。", + "converter-json-parse": "コンバータJSONの解析に失敗しました。", + "filter-expression": "フィルター式", + "connect-requests": "接続リクエスト", + "add-connect-request": "接続リクエストを追加", + "disconnect-requests": "切断リクエスト", + "add-disconnect-request": "切断リクエストを追加", + "attribute-requests": "属性リクエスト", + "add-attribute-request": "属性リクエストを追加", + "attribute-updates": "属性更新", + "add-attribute-update": "属性更新を追加", + "server-side-rpc": "サーバーサイドRPC", + "add-server-side-rpc-request": "サーバーサイドRPCリクエストを追加", + "device-name-filter": "デバイス名フィルター", + "attribute-filter": "属性フィルター", + "method-filter": "メソッドフィルター", + "request-topic-expression": "リクエストトピック式", + "response-timeout": "レスポンスタイムアウト(ミリ秒単位)", + "topic-expression": "トピック式", + "client-scope": "クライアントスコープ", + "add-device": "デバイスを追加", + "opc-server": "サーバー", + "opc-add-server": "サーバーを追加", + "opc-add-server-prompt": "サーバーを追加してください", + "opc-application-name": "アプリケーション名", + "opc-application-uri": "アプリケーションURI", + "opc-scan-period-in-seconds": "スキャン周期(秒単位)", + "opc-security": "セキュリティ", + "opc-identity": "アイデンティティ", + "opc-keystore": "キーストア", + "opc-type": "タイプ", + "opc-keystore-type": "タイプ", + "opc-keystore-location": "場所 *", + "opc-keystore-password": "パスワード", + "opc-keystore-alias": "エイリアス", + "opc-keystore-key-password": "鍵のパスワード", + "opc-device-node-pattern": "デバイスノードパターン", + "opc-device-name-pattern": "デバイス名パターン", + "modbus-server": "サーバー/スレーブ", + "modbus-add-server": "サーバー/スレーブを追加", + "modbus-add-server-prompt": "サーバー/スレーブを追加してください", + "modbus-transport": "トランスポート", + "modbus-tcp-reconnect": "自動再接続", + "modbus-rtu-over-tcp": "RTU over TCP", + "modbus-port-name": "シリアルポート名", + "modbus-encoding": "エンコーディング", + "modbus-parity": "パリティ", + "modbus-baudrate": "ボーレート", + "modbus-databits": "データビット", + "modbus-stopbits": "ストップビット", + "modbus-databits-range": "データビットは7から8の範囲である必要があります。", + "modbus-stopbits-range": "ストップビットは1から2の範囲である必要があります。", + "modbus-unit-id": "ユニットID", + "modbus-unit-id-range": "ユニットIDは1から247の範囲である必要があります。", + "modbus-device-name": "デバイス名", + "modbus-poll-period": "ポーリング周期(ms)", + "modbus-attributes-poll-period": "属性ポーリング周期(ms)", + "modbus-timeseries-poll-period": "時系列ポーリング周期(ms)", + "modbus-poll-period-range": "ポーリング周期は正の値である必要があります。", + "modbus-tag": "タグ", + "modbus-function": "ファンクション", + "modbus-register-address": "レジスタアドレス", + "modbus-register-address-range": "レジスタアドレスは0から65535の範囲である必要があります。", + "modbus-register-bit-index": "ビットインデックス", + "modbus-register-bit-index-range": "ビットインデックスは0から15の範囲である必要があります。", + "modbus-register-count": "レジスタ数", + "modbus-register-count-range": "レジスタ数は正の値である必要があります。", + "modbus-byte-order": "バイト順序", + "sync": { + "status": "ステータス", + "sync": "同期", + "not-sync": "未同期", + "last-sync-time": "最終同期時間", + "not-available": "利用不可" + }, + "export-extensions-configuration": "拡張機能設定をエクスポート", + "import-extensions-configuration": "拡張機能設定をインポート", + "import-extensions": "拡張機能をインポート", + "import-extension": "拡張機能をインポート", + "export-extension": "拡張機能をエクスポート", + "file": "拡張機能ファイル", + "invalid-file-error": "無効な拡張機能ファイル" + }, + "feature": { + "advanced-features": "高度な機能" + }, + "filter": { + "add": "フィルターを追加", + "edit": "フィルターを編集", + "name": "フィルター名", + "name-required": "フィルター名は必須です。", + "duplicate-filter": "同じ名前のフィルターがすでに存在します。", + "filters": "フィルター", + "unable-delete-filter-title": "フィルターを削除できません", + "unable-delete-filter-text": "フィルター '{{filter}}' は、以下のウィジェットで使用されているため削除できません:
{{widgetsList}}", + "duplicate-filter-error": "重複するフィルター '{{filter}}' が見つかりました。
フィルターはダッシュボード内で一意である必要があります。", + "missing-key-filters-error": "フィルター '{{filter}}' にキー フィルターがありません。", + "filter": "フィルター", + "editable": "編集可能", + "editable-hint": "ユーザーがダッシュボードでフィルターの値を変更できるようにします。", + "no-filters-found": "フィルターが見つかりません。", + "no-filter-text": "フィルターが指定されていません", + "add-filter-prompt": "フィルターを追加してください", + "no-filter-matching": "'{{filter}}' は見つかりません。", + "create-new-filter": "新しいフィルターを作成!", + "create-new": "新規作成", + "filter-required": "フィルターは必須です。", + "operation": { + "operation": "操作", + "equal": "等しい", + "not-equal": "等しくない", + "starts-with": "で始まる", + "ends-with": "で終わる", + "contains": "を含む", + "not-contains": "を含まない", + "greater": "より大きい", + "less": "より小さい", + "greater-or-equal": "以上", + "less-or-equal": "以下", + "and": "かつ", + "or": "または", + "in": "の中に", + "not-in": "の中にない" + }, + "ignore-case": "大文字小文字を区別しない", + "value": "値", + "remove-filter": "フィルターを削除", + "duplicate-filter-action": "フィルターを重複", + "preview": "フィルタープレビュー", + "no-filters": "フィルターが設定されていません", + "add-filter": "フィルターを追加", + "add-complex-filter": "複雑なフィルターを追加", + "add-complex": "複雑なフィルターを追加", + "complex-filter": "複雑なフィルター", + "edit-complex-filter": "複雑なフィルターを編集", + "edit-filter-user-params": "フィルタープレディケートのユーザーパラメータを編集", + "filter-user-params": "フィルタープレディケートのユーザーパラメータ", + "user-parameters": "ユーザーパラメータ", + "display-label": "表示ラベル", + "custom-label": "カスタムラベル", + "custom-label-hint": "フィルターに独自のラベルを設定できるようにします。無効にすると、ラベルが自動的に生成されます。", + "order-priority": "表示順序", + "key-filter": "キー フィルター", + "key-filters": "キー フィルター", + "key-name": "キー名", + "key-name-required": "キー名は必須です。", + "key-type": { + "key-type": "キータイプ", + "attribute": "属性", + "timeseries": "時系列", + "entity-field": "エンティティフィールド", + "constant": "定数", + "client-attribute": "クライアント属性", + "server-attribute": "サーバー属性", + "shared-attribute": "共有属性" + }, + "value-type": { + "value-type": "値のタイプ", + "string": "文字列", + "numeric": "数値", + "boolean": "ブール値", + "date-time": "日時" + }, + "value-type-required": "キーの値タイプは必須です。", + "key-value-type-change-title": "キーの値タイプを変更してもよろしいですか?", + "key-value-type-change-message": "新しい値タイプを確認すると、入力したすべてのキー フィルターが削除されます。", + "no-key-filters": "キー フィルターは設定されていません", + "add-key-filter": "キー フィルターを追加", + "remove-key-filter": "キー フィルターを削除", + "edit-key-filter": "キー フィルターを編集", + "date": "日付", + "time": "時間", + "current-tenant": "現在のテナント", + "current-customer": "現在の顧客", + "current-user": "現在のユーザー", + "current-device": "現在のデバイス", + "default-value": "デフォルト値", + "default-comma-separated-values": "デフォルトのカンマ区切り値", + "dynamic-source-type": "動的ソースタイプ", + "dynamic-value": "動的値", + "no-dynamic-value": "動的値なし", + "source-attribute": "ソース属性", + "switch-to-dynamic-value": "動的値に切り替え", + "switch-to-default-value": "デフォルト値に切り替え", + "inherit-owner": "所有者から継承", + "source-attribute-not-set": "ソース属性が設定されていない場合", + "unit": "単位" + }, + "fullscreen": { + "expand": "全画面表示に拡大", + "exit": "全画面表示を終了", + "toggle": "全画面モードの切り替え", + "fullscreen": "全画面表示" + }, + "function": { + "function": "関数" + }, + "gateway": { + "gateway-name": "Gateway名", + "gateway-name-required": "Gateway名は必須です。", + "gateways": "Gateways", + "create-new-gateway": "新しいGatewayを作成", + "create-new-gateway-text": "名前 '{{gatewayName}}' で新しいGatewayを作成してもよろしいですか?", + "launch-command": "コマンドを実行", + "no-gateway-found": "Gatewayは見つかりませんでした。", + "no-gateway-matching": " '{{item}}' は見つかりませんでした。" + }, + "grid": { + "delete-item-title": "このアイテムを削除してもよろしいですか?", + "delete-item-text": "確認後、このアイテムと関連するすべてのデータは復元できなくなりますのでご注意ください。", + "delete-items-title": "{ count, plural, =1 {1 件のアイテム} other {# 件のアイテム} } を削除してもよろしいですか?", + "delete-items-action-title": "{ count, plural, =1 {1 件のアイテム} other {# 件のアイテム} } を削除", + "delete-items-text": "確認後、選択したすべてのアイテムが削除され、関連するすべてのデータは復元できなくなります。", + "add-item-text": "新しいアイテムを追加", + "no-items-text": "アイテムが見つかりません", + "item-details": "アイテム詳細", + "delete-item": "アイテムを削除", + "delete-items": "アイテムを削除", + "scroll-to-top": "トップにスクロール" + }, + "help": { + "goto-help-page": "ヘルプページへ移動", + "show-help": "ヘルプを表示" + }, + "home": { + "home": "ホーム", + "profile": "プロフィール", + "logout": "ログアウト", + "menu": "メニュー", + "avatar": "アバター", + "open-user-menu": "ユーザーメニューを開く" + }, + "file-input": { + "browse-file": "ファイルを選択", + "browse-files": "ファイルを選択" + }, + "image": { + "gallery": "画像ギャラリー", + "search": "画像を検索", + "selected-images": "{ count, plural, =1 {1 枚の画像} other {# 枚の画像} } が選択されました", + "created-time": "作成日時", + "name": "名前", + "name-required": "名前は必須です。", + "resolution": "解像度", + "size": "サイズ", + "system": "システム", + "download-image": "画像をダウンロード", + "export-image": "画像をJSONとしてエクスポート", + "import-image": "画像をJSONからインポート", + "upload-image": "画像をアップロード", + "edit-image": "画像を編集", + "image-details": "画像の詳細", + "no-images": "画像が見つかりません", + "delete-image": "画像を削除", + "delete-image-title": "画像 '{{imageTitle}}' を削除してもよろしいですか?", + "delete-image-text": "確認後、この画像は復元できなくなりますのでご注意ください。", + "delete-images-title": "{ count, plural, =1 {1 枚の画像} other {# 枚の画像} } を削除してもよろしいですか?", + "delete-images-text": "確認後、選択したすべての画像が削除され、関連するデータも復元できなくなりますのでご注意ください。", + "list-mode": "リスト表示", + "grid-mode": "グリッド表示", + "image-preview": "画像プレビュー", + "update-image": "画像を更新", + "export-failed-error": "画像をエクスポートできませんでした: {{error}}", + "image-json-file": "画像JSONファイル", + "invalid-image-json-file-error": "画像をJSONからインポートできませんでした: 無効な画像JSONデータ構造です。", + "image-is-in-use": "画像は他のエンティティで使用されています", + "images-are-in-use": "画像は他のエンティティで使用されています", + "image-is-in-use-text": "画像 '{{title}}' は以下のエンティティで使用されているため削除されませんでした。", + "images-are-in-use-text": "すべての画像が削除されなかった理由は、他のエンティティで使用されているためです。
参照されているエンティティは、対応する画像行の 参照 ボタンをクリックすることで表示できます。
それでもこれらの画像を削除する場合は、下のテーブルで画像を選択し、選択したものを削除 ボタンをクリックしてください。", + "delete-image-in-use-text": "それでも画像を削除する場合は、とにかく削除 ボタンをクリックしてください。", + "system-entities": "システムエンティティ:", + "entities": "エンティティ:", + "references": "参照", + "include-system-images": "システム画像を含める", + "clear-image": "画像をクリア", + "no-image": "画像なし", + "no-image-selected": "画像が選択されていません", + "browse-from-gallery": "ギャラリーから選択", + "set-link": "リンクを設定", + "image-link": "画像リンク", + "link": "リンク", + "copy-image-link": "画像リンクをコピー", + "embed-image": "画像を埋め込む", + "embed-to-html": "HTMLに埋め込む", + "embed-to-html-hint": "この機能により、リンクが無許可のユーザーにも利用可能になります。", + "embed-to-html-text": "以下のコードスニペットを使用することで、プレーンHTMLベースのコンポーネントに画像を埋め込むことができます。
そのようなコンポーネントには、HTMLカードウィジェット、セルコンテンツ関数などが含まれます。", + "embed-to-angular-template": "Angular HTMLテンプレートに埋め込む", + "embed-to-angular-template-text": "以下のコードスニペットを使用することで、Angular HTMLテンプレートに画像を埋め込み、コンポーネントで使用できます。
そのようなコンポーネントには、Markdownウィジェット、ウィジェットエディターのHTMLセクション、カスタムアクションなどが含まれます。" + }, + "image-input": { + "drop-images-or": "画像をドラッグアンドドロップするか", + "drag-and-drop": "ドラッグ&ドロップ", + "or": "または", + "browse": "参照", + "no-images": "画像が選択されていません", + "images": "画像" + }, + "import": { + "no-file": "ファイルが選択されていません", + "drop-file": "JSONファイルをドロップするか、クリックしてファイルを選択してアップロードしてください。", + "drop-json-file-or": "JSONファイルをドラッグアンドドロップするか", + "drop-file-csv": "CSVファイルをドロップするか、クリックしてファイルを選択してアップロードしてください。", + "drop-file-csv-or": "CSVファイルをドラッグアンドドロップするか", + "column-value": "値", + "column-title": "タイトル", + "column-example": "例:値データ", + "column-key": "属性/テレメトリキー", + "credentials": "認証情報", + "csv-delimiter": "CSV区切り文字", + "csv-first-line-header": "最初の行に列名が含まれています", + "csv-update-data": "属性/テレメトリの更新", + "details": "詳細", + "import-csv-number-columns-error": "ファイルには少なくとも2列が含まれている必要があります", + "import-csv-invalid-format-error": "無効なファイル形式です。行:'{{line}}'", + "column-type": { + "name": "名前", + "type": "タイプ", + "label": "ラベル", + "column-type": "列タイプ", + "client-attribute": "クライアント属性", + "shared-attribute": "共有属性", + "server-attribute": "サーバー属性", + "timeseries": "時系列", + "entity-field": "エンティティフィールド", + "access-token": "アクセストークン", + "x509": "X.509", + "mqtt": { + "client-id": "MQTTクライアントID", + "user-name": "MQTTユーザー名", + "password": "MQTTパスワード" + }, + "lwm2m": { + "client-endpoint": "LwM2Mエンドポイントクライアント名", + "security-config-mode": "LwM2Mセキュリティ設定モード", + "client-identity": "LwM2MクライアントID", + "client-key": "LwM2Mクライアントキー", + "client-cert": "LwM2Mクライアント公開鍵", + "bootstrap-server-security-mode": "LwM2Mブートストラップサーバーセキュリティモード", + "bootstrap-server-secret-key": "LwM2Mブートストラップサーバー秘密鍵", + "bootstrap-server-public-key-id": "LwM2Mブートストラップサーバー公開鍵またはID", + "lwm2m-server-security-mode": "LwM2Mサーバーセキュリティモード", + "lwm2m-server-secret-key": "LwM2Mサーバー秘密鍵", + "lwm2m-server-public-key-id": "LwM2Mサーバー公開鍵またはID" + }, + "snmp": { + "host": "SNMPホスト", + "port": "SNMPポート", + "version": "SNMPバージョン(v1、v2c、またはv3)", + "community-string": "SNMPコミュニティ文字列" + }, + "isgateway": "Gatewayかどうか", + "activity-time-from-gateway-device": "Gatewayデバイスからの活動時間", + "description": "説明", + "routing-key": "Edgeキー", + "secret": "Edgeシークレット" + }, + "stepper-text": { + "select-file": "ファイルを選択", + "configuration": "設定をインポート", + "column-type": "列タイプを選択", + "creat-entities": "新しいエンティティを作成中" + }, + "message": { + "create-entities": "{{count}} 件の新しいエンティティが正常に作成されました。", + "update-entities": "{{count}} 件のエンティティが正常に更新されました。", + "error-entities": "{{count}} 件のエンティティ作成中にエラーが発生しました。" + } + }, + "scada": { + "symbols": "SCADAシンボル", + "search": "シンボルを検索", + "selected-symbols": "{ count, plural, =1 {1 件のシンボル} other {# 件のシンボル} } が選択されました", + "download-symbol": "SCADAシンボルをダウンロード", + "export-symbol": "SCADAシンボルをJSONとしてエクスポート", + "import-symbol": "SCADAシンボルをJSONからインポート", + "upload-symbol": "SCADAシンボルをアップロード", + "update-symbol": "SCADAシンボルを更新", + "edit-symbol": "SCADAシンボルを編集", + "symbol-details": "SCADAシンボルの詳細", + "mode-svg": "SVG", + "mode-xml": "XML", + "no-symbols": "シンボルが見つかりません", + "show-hidden-elements": "隠された要素を表示", + "hide-hidden-elements": "隠された要素を非表示", + "delete-symbol": "SCADAシンボルを削除", + "delete-symbol-title": "SCADAシンボル '{{imageTitle}}' を削除してもよろしいですか?", + "delete-symbol-text": "確認後、SCADAシンボルは復元できなくなりますのでご注意ください。", + "delete-symbols-title": "{ count, plural, =1 {1 件のSCADAシンボル} other {# 件のSCADAシンボル} } を削除してもよろしいですか?", + "delete-symbols-text": "確認後、選択したすべてのSCADAシンボルが削除され、関連するデータは復元できなくなりますのでご注意ください。", + "include-system-symbols": "システムシンボルを含める", + "symbol-preview": "シンボルプレビュー", + "general": "一般", + "tags": "タグ", + "properties": "プロパティ", + "title": "タイトル", + "description": "説明", + "search-tags": "タグを検索", + "widget-size": "ウィジェットサイズ", + "cols": "列", + "rows": "行", + "state-render-function": "状態レンダリング関数", + "preview": "プレビュー", + "preview-widget-action-text": "ウィジェットアクション '{{type}}' が正常に呼び出されました!", + "no-symbol": "SCADAシンボルなし", + "no-symbol-selected": "SCADAシンボルが選択されていません", + "clear-symbol": "SCADAシンボルをクリア", + "browse-symbol-from-gallery": "ギャラリーからSCADAシンボルを選択", + "zoom-in": "ズームイン", + "zoom-out": "ズームアウト", + "create-widget": "ウィジェットを作成", + "create-widget-from-symbol": "SCADAシンボルからウィジェットを作成", + "hidden": "隠された", + "tag": { + "tag": "タグ", + "on-click-action": "クリック時のアクション", + "no-tags": "タグが設定されていません", + "delete-tag-text": "{{elementType}} 要素からタグ {{tag}} を削除してもよろしいですか?", + "update-tag": "タグを更新", + "enter-tag": "タグを入力", + "tag-settings": "タグ設定", + "remove-tag": "タグを削除", + "add-tag": "タグを追加" + }, + "behavior": { + "behavior": "動作", + "id": "ID", + "name": "名前", + "type": "タイプ", + "no-behaviors": "動作が設定されていません", + "add-behavior": "動作を追加", + "type-action": "アクション", + "type-value": "値", + "type-widget-action": "ウィジェットアクション", + "behavior-settings": "動作設定", + "remove-behavior": "動作を削除", + "hint": "ヒント", + "group-title": "グループタイトル", + "value-type": "値のタイプ", + "default-value": "デフォルト値", + "true-label": "真ラベル", + "false-label": "偽ラベル", + "state-label": "状態ラベル", + "default-payload": "デフォルトペイロード", + "not-unique-behavior-ids-error": "動作IDは一意でなければなりません!", + "default-settings": "デフォルト設定" + }, + "symbol": { + "symbol": "SCADAシンボル", + "fluid-presence": "流体の存在", + "fluid-presence-hint": "パイプ内に流体が存在するかどうかを示します。", + "fluid-present": "流体が存在", + "present": "存在", + "absent": "不在", + "flow-presence": "流れの存在", + "flow-presence-hint": "パイプ内で流体が流れているかどうかを示します。", + "flow-present": "流れあり", + "flow-direction": "流れの方向", + "flow-direction-hint": "流体の流れる方向を示します。", + "forward": "前方", + "reverse": "逆方向", + "flow-animation-speed": "流れのアニメーション速度", + "flow-animation-speed-hint": "流れのアニメーション速度を示す倍数値。1 - 通常の速度、0 - アニメーションなし、< 1 - より遅いアニメーション、> 1 - より速いアニメーション。", + "leak": "漏れ", + "leak-hint": "パイプ内に漏れがあるかどうかを示します。", + "leak-present": "漏れあり", + "fluid-color": "流体の色", + "pipe-color": "パイプの色", + "horizontal-pipe": "水平パイプ", + "vertical-pipe": "垂直パイプ", + "horizontal-fluid-color": "水平流体の色", + "vertical-fluid-color": "垂直流体の色", + "left-pipe": "左パイプ", + "right-pipe": "右パイプ", + "top-pipe": "上パイプ", + "bottom-pipe": "下パイプ", + "left-fluid-color": "左流体の色", + "right-fluid-color": "右流体の色", + "top-fluid-color": "上流体の色", + "bottom-fluid-color": "下流体の色", + "display": "表示", + "display-format": "表示形式", + "value": "値", + "decimals": "小数点以下の桁数", + "units": "単位", + "flow-meter-value-hint": "流量計表示に表示される倍数値", + "value-hint": "現在の値を示す倍数値", + "running": "実行中", + "running-hint": "コンポーネントが実行中の状態かどうかを示します。", + "warning-state": "警告状態", + "warning": "警告", + "warning-click": "警告クリック", + "warning-state-hint": "コンポーネントが警告状態かどうかを示します。", + "critical-state": "重大状態", + "critical": "重大", + "critical-click": "重大クリック", + "critical-state-hint": "コンポーネントが重大状態かどうかを示します。", + "critical-state-animation": "重大状態アニメーション", + "critical-state-animation-hint": "コンポーネントが重大状態の時に点滅アニメーションを有効にするかどうか。", + "warning-critical-state-animation": "警告/重大状態アニメーション", + "warning-critical-state-animation-hint": "コンポーネントが警告または重大状態の時に点滅アニメーションを有効にするかどうか。", + "animation": "アニメーション", + "broken": "破損", + "broken-hint": "コンポーネントが破損しているかどうかを示します。", + "on-display-click": "表示クリック時", + "on-display-click-hint": "ユーザーが表示をクリックした時に発動するアクション。", + "pipe": "パイプ", + "default-border-color": "デフォルトの境界線色", + "active-border-color": "アクティブ境界線色", + "warning-border-color": "警告境界線色", + "critical-border-color": "重大境界線色", + "background-color": "背景色", + "rotation-animation-speed": "回転アニメーション速度", + "rotation-animation-speed-hint": "回転アニメーションの速度を示す倍数値。1 - 通常の速度、0 - アニメーションなし、< 1 - より遅いアニメーション、> 1 - より速いアニメーション。", + "on-click": "クリック時", + "on-click-hint": "ユーザーがコンポーネントをクリックした時に発動するアクション。", + "connectors-positions": "コネクタの位置", + "right-connector": "右コネクタ", + "right-top-connector": "右上コネクタ", + "right-bottom-connector": "右下コネクタ", + "left-connector": "左コネクタ", + "left-top-connector": "左上コネクタ", + "left-bottom-connector": "左下コネクタ", + "top-left-connector": "左上コネクタ", + "top-right-connector": "右上コネクタ", + "top-connector": "上コネクタ", + "bottom-connector": "下コネクタ", + "running-color": "実行中の色", + "stopped-color": "停止中の色", + "stopped": "停止中", + "warning-color": "警告色", + "critical-color": "重大色", + "opened": "開放", + "opened-hint": "コンポーネントが開放状態かどうかを示します。", + "open": "開く", + "open-hint": "ユーザーがコンポーネントを開くためにクリックしたときに発動するアクション。", + "close": "閉じる", + "close-hint": "ユーザーがコンポーネントを閉じるためにクリックしたときに発動するアクション。", + "close-state-animation": "閉じた状態のアニメーション", + "close-state-animation-hint": "コンポーネントが閉じた状態の時に点滅アニメーションを有効にするかどうか。", + "opened-color": "開放時の色", + "closed-color": "閉じた時の色", + "opened-rotation-angle": "開放時の回転角度", + "closed-rotation-angle": "閉じた時の回転角度", + "tank-capacity": "タンク容量", + "tank-capacity-hint": "タンクの総容量を示す倍数値。", + "current-volume": "現在の体積", + "current-volume-hint": "現在の占有体積を示す倍数値。", + "tank-color": "タンクの色", + "value-box": "値ボックス", + "value-text": "値テキスト", + "scale": "スケール", + "transparent-mode": "透過モード", + "major-ticks": "主目盛り", + "intervals": "間隔", + "major-ticks-color": "主目盛りの色", + "normal": "通常", + "minor-ticks": "副目盛り", + "minor-ticks-color": "副目盛りの色", + "temperature": "温度", + "temperature-hint": "現在の温度を示す倍数値。", + "update-temperature": "温度を更新", + "update-temperature-hint": "ユーザーが現在の温度を変更するためにクリックしたときに発動するアクション。", + "run": "実行", + "run-hint": "ユーザーがコンポーネントを実行するためにクリックしたときに発動するアクション。", + "stop": "停止", + "stop-hint": "ユーザーがコンポーネントを停止するためにクリックしたときに発動するアクション。", + "temperature-step": "温度ステップ増分", + "heat-pump-color": "ヒートポンプの色", + "power-button-background": "電源ボタンの背景", + "value-box-background": "値ボックスの背景", + "value-units": "値の単位", + "enable-units-scale": "スケールに単位を表示", + "filtration-mode": "濾過モード", + "filtration-mode-hint": "現在の濾過モードを示す整数値。", + "filtration-mode-update": "濾過モード更新状態", + "filtration-mode-update-hint": "ユーザーが現在の濾過モードを変更するためにクリックしたときに発動するアクション。", + "filter-mode": "フィルター", + "waste-mode": "廃棄", + "backwash-mode": "バックウォッシュ", + "recirculate-mode": "再循環", + "rinse-mode": "すすぎ", + "closed-mode": "閉じた状態", + "sand-filter-color": "砂フィルターの色", + "mode-box-background": "モードボックスの背景", + "border-color": "境界線の色", + "label-color": "ラベルの色", + "water-leak-hint": "漏れがあるかどうかを示します。", + "default-color": "デフォルトの色", + "leak-color": "漏れの色", + "full-value": "満水値", + "full-value-hint": "満水値を示す倍数値。", + "label": "ラベル", + "icon": "アイコン", + "button-color": "ボタンの色", + "on-label": "'オン' ラベルテキスト", + "off-label": "'オフ' ラベルテキスト", + "arrow-presence": "矢印の存在", + "arrow-presence-hint": "コネクタに矢印があるかどうかを示します。", + "arrow-present": "矢印あり", + "arrow-direction": "流れの方向", + "arrow-direction-hint": "流れの方向を示します。", + "flow-animation": "流れの存在", + "flow-animation-hint": "コネクタ内で流体が流れているかどうかを示します。", + "flow": "流れ", + "flow-line": "ライン", + "flow-line-style": "ラインスタイル", + "flow-style-hint": "完璧なアニメーション同期を実現するため、ダッシュとギャップの値の合計が100で割り切れるように設定してください。", + "flow-dash-cap": "ダッシュキャップ", + "dash-cap-butt": "バット", + "dash-cap-round": "ラウンド", + "dash-cap-square": "スクエア", + "dash": "ダッシュ", + "gap": "ギャップ", + "main-line": "メインライン", + "line": "ライン", + "line-color": "ラインの色", + "arrow-color": "矢印の色", + "target-value": "ターゲット値", + "target-value-hint": "スケール上のターゲットポイントを示します。", + "min-max-value": "最小値と最大値", + "min-value": "最小", + "max-value": "最大", + "progress-bar": "プログレスバー", + "progress-arrow": "プログレスアロー", + "warning-scale-color": "警告スケールの色", + "critical-scale-color": "重大スケールの色", + "scale-color": "スケールの色", + "target": "ターゲット", + "high-warning-state": "高警告状態", + "show-high-warning-scale": "高警告スケールを表示", + "high-warning-scale": "高警告スケール", + "high-warning-state-hint": "倍数値が高警告範囲を示し、最大または高い重大値までです。", + "low-warning-state": "低警告状態", + "show-low-warning-scale": "低警告スケールを表示", + "low-warning-scale": "低警告スケール", + "low-warning-state-hint": "倍数値が低警告範囲を示し、最小または低い重大値までです。", + "high-critical-state": "高重大状態", + "show-high-critical-scale": "高重大スケールを表示", + "high-critical-scale": "高重大スケール", + "high-critical-state-hint": "倍数値が高重大範囲を示し、最大値スケールまでです。", + "low-critical-state": "低重大状態", + "show-low-critical-scale": "低重大状態のスケールを表示", + "low-critical-scale": "低重大状態", + "low-critical-state-hint": "倍数値が低重大範囲を示し、最小値スケールまでです。", + "filter-color": "フィルターの色", + "colors": "色", + "indicator-colors": "インジケーターの色", + "enabled": "有効", + "disabled": "無効", + "on": "ON", + "off": "OFF", + "on-off-state": "オン/オフ状態", + "on-off-state-hint": "コンポーネントがオンまたはオフの状態かどうかを示します。", + "on-update-state": "オン更新状態", + "on-update-state-hint": "ユーザーがオンに状態を更新するためにクリックしたときに発動するアクション。", + "off-update-state": "オフ更新状態", + "off-update-state-hint": "ユーザーがオフに状態を更新するためにクリックしたときに発動するアクション。", + "voltage": "電圧", + "input-voltage": "入力電圧", + "input-voltage-hint": "入力電圧の値を示す倍数値。", + "output-voltage": "出力電圧", + "output-voltage-hint": "出力電圧の値を示す倍数値。", + "first-phase-voltage": "第1相電圧", + "second-phase-voltage": "第2相電圧", + "third-phase-voltage": "第3相電圧", + "phase-voltage-hint": "現在の相の電圧値を示す倍数値。", + "voltage-hint": "現在の電圧を示す倍数値。", + "current-voltage-color": "現在の電圧の色", + "phase-indicator-color": "相インジケーターの色", + "measured": "測定済み", + "measured-hint": "キロワット時でのエネルギー使用量を示す倍数値。", + "day-rate": "昼間料金", + "night-rate": "夜間料金", + "off-peak-rate": "オフピーク料金", + "peak-rate": "ピーク料金", + "export-rate": "輸出料金", + "operating-mode": "運転モード", + "bypass-mode": "バイパス", + "operating-mode-hint": "現在の運転モードを示す整数値(0 - OFF、1 - ON、2 - BYPASS)。", + "connected": "接続済み", + "connected-hint": "コンポーネントが接続状態かどうかを示します。", + "disconnected": "切断", + "indicator": "インジケーター", + "operation-mode": "運転モード", + "operation-mode-hint": "インバーターが電源モードまたはインバーターモードにあるかどうかを示します。", + "operation-mode-indicators-color": "運転モードインジケーターの色", + "mains-on-mode": "電源オンモード", + "inverter-on-mode": "インバーターオンモード", + "charging-mode": "充電モード", + "charging-mode-hint": "現在の充電モードを示す整数値(1 - バルク、2 - 吸収、3 - フロート)。", + "charging-mode-indicators-color": "充電モードインジケーターの色", + "inverter-faults": "故障", + "inverter-fault-indicators-color": "故障インジケーターの色", + "overload-fault": "過負荷", + "overload-fault-hint": "インバーターが過負荷状態かどうかを示します。", + "low-battery-fault": "低バッテリー", + "low-battery-fault-hint": "バッテリーが過度に放電しているかどうかを示します。", + "temperature-fault": "温度", + "temperature-fault-hint": "インバーター内の高温を示します。", + "triangle": "三角形", + "socket": "ソケット", + "left-button": "左ボタン", + "right-button": "右ボタン", + "alarm-colors": "アラームの色", + "hook-color": "フックの色" + } + }, + "item": { + "selected": "選択済み" + }, + "js-func": { + "no-return-error": "関数は値を返さなければなりません!", + "return-type-mismatch": "関数は'{{type}}'タイプの値を返さなければなりません!", + "tidy": "整理", + "mini": "ミニ", + "modules": "モジュール", + "remove-module": "モジュールを削除", + "no-modules": "モジュールが設定されていません", + "add-module": "モジュールを追加", + "module-alias": "エイリアス", + "invalid-module-alias-name": "無効なエイリアス名", + "module-resource": "JSモジュールリソース", + "not-unique-module-aliases-error": "モジュールのエイリアスは一意でなければなりません!", + "show-module-info": "モジュール情報を表示", + "show-module-source-code": "モジュールのソースコードを表示", + "module-members": "モジュールメンバー", + "module-no-members": "モジュールにはエクスポートされたメンバーがありません", + "module-load-error": "モジュールの読み込みエラー", + "source-code": "ソースコード", + "source-code-load-error": "ソースコード読み込みエラー", + "no-js-module-text": "JSモジュールが見つかりません", + "no-js-module-matching": "'{{module}}'に一致するJSモジュールは見つかりませんでした。" + }, + "key-val": { + "key": "キー", + "value": "値", + "remove-entry": "エントリーを削除", + "add-entry": "エントリーを追加", + "no-data": "エントリーがありません" + }, + "layout": { + "layout": "レイアウト", + "layouts": "レイアウト", + "manage": "レイアウトの管理", + "settings": "レイアウト設定", + "color": "色", + "main": "メイン", + "right": "右", + "left": "左", + "select": "ターゲットレイアウトを選択", + "percentage-width": "パーセンテージ幅 (%)", + "fixed-width": "固定幅 (px)", + "left-width": "左カラム (%)", + "right-width": "右カラム (%)", + "pick-fixed-side": "固定側: ", + "layout-fixed-width": "固定幅 (px)", + "value-min-error": "値は {{min}}{{unit}} より大きくなければなりません", + "value-max-error": "値は {{max}}{{unit}} より小さくなければなりません", + "layout-fixed-width-required": "固定幅は必須です", + "right-width-percentage-required": "右側のパーセンテージは必須です", + "left-width-percentage-required": "左側のパーセンテージは必須です", + "divider": "区切り線", + "right-side": "右側レイアウト", + "left-side": "左側レイアウト", + "add-new-breakpoint": "新しいブレークポイントを追加", + "breakpoint": "ブレークポイント", + "breakpoints": "ブレークポイント", + "copy-from": "コピー元", + "size": "サイズ", + "delete-breakpoint-title": "ブレークポイント '{{name}}' を削除してもよろしいですか?", + "delete-breakpoint-text": "確認後、ブレークポイントは復元できなくなり、設定はデフォルトのブレークポイントに戻りますのでご注意ください。" + }, + "legend": { + "direction": "方向", + "position": "位置", + "show-values": "値を表示", + "min-option": "最小", + "max-option": "最大", + "average-option": "平均", + "total-option": "合計", + "latest-option": "最新", + "sort-legend": "凡例内でデータキーを並べ替え", + "show-max": "最大値を表示", + "show-min": "最小値を表示", + "show-avg": "平均値を表示", + "show-total": "合計値を表示", + "show-latest": "最新値を表示", + "settings": "凡例設定", + "min": "最小", + "max": "最大", + "avg": "平均", + "total": "合計", + "latest": "最新", + "Min": "最小", + "Max": "最大", + "Avg": "平均", + "Total": "合計", + "Latest": "最新", + "comparison-time-ago": { + "previousInterval": "(前のインターバル)", + "customInterval": "(カスタムインターバル)", + "days": "(日前)", + "weeks": "(週前)", + "months": "(月前)", + "years": "(年前)" + }, + "column-title": "列タイトル", + "label": "ラベル", + "value": "値" + }, + "login": { + "login": "ログイン", + "request-password-reset": "パスワードリセットをリクエスト", + "reset-password": "パスワードをリセット", + "create-password": "パスワードを作成", + "two-factor-authentication": "二要素認証", + "passwords-mismatch-error": "入力したパスワードは一致していなければなりません!", + "password-again": "パスワード(再入力)", + "sign-in": "サインインしてください", + "username": "ユーザー名(メールアドレス)", + "remember-me": "次回以降のログインを記憶", + "forgot-password": "パスワードを忘れましたか?", + "password-reset": "パスワードリセット", + "expired-password-reset-message": "認証情報の有効期限が切れています!\n新しいパスワードを作成してください。", + "new-password": "新しいパスワード", + "new-password-again": "新しいパスワードを再入力", + "password-link-sent-message": "リセットリンクが送信されました", + "email": "メールアドレス", + "invalid-email-format": "無効なメールアドレス形式です。", + "or": "または", + "error": "ログインエラー", + "verify-your-identity": "本人確認を行ってください", + "select-way-to-verify": "確認方法を選択", + "resend-code": "コードを再送信", + "resend-code-wait": "{ time, plural, =1 {1秒} other {#秒} } 後に再送信", + "try-another-way": "別の方法を試す", + "totp-auth-description": "認証アプリからセキュリティコードを入力してください。", + "totp-auth-placeholder": "コード", + "sms-auth-description": "セキュリティコードが {{contact}} の電話番号に送信されました。", + "sms-auth-placeholder": "SMSコード", + "email-auth-description": "セキュリティコードが {{contact}} のメールアドレスに送信されました。", + "email-auth-placeholder": "メールコード", + "backup-code-auth-description": "バックアップコードの1つを入力してください。", + "backup-code-auth-placeholder": "バックアップコード", + "activation-link-expired": "アクティベーションリンクの有効期限が切れました", + "activation-link-expired-message": "プロファイルをアクティブにするリンクの有効期限が切れました。新しいメールを受け取るためにログインページに戻ってください。", + "reset-password-link-expired": "パスワードリセットリンクの有効期限が切れました", + "reset-password-link-expired-message": "パスワードをリセットするリンクの有効期限が切れました。新しいメールを受け取るためにログインページに戻ってください。" + }, + "mobile": { + "add-application": "アプリケーションを追加", + "app-id": "アプリサイト関連ID", + "app-id-required": "アプリサイト関連IDは必須です", + "app-id-pattern": "無効なアプリサイト関連IDの形式", + "app-store-link": "App Storeリンク", + "app-store-link-required": "App Storeリンクは必須です", + "application-details": "アプリケーションの詳細", + "application-package": "アプリケーションパッケージ", + "application-secret": "アプリケーションシークレット", + "application-secret-required": "アプリケーションシークレットは必須です", + "application": "アプリケーション", + "applications": "アプリケーション", + "copy-app-id": "アプリIDをコピー", + "copy-app-store-link": "App Storeリンクをコピー", + "copy-application-package": "アプリケーションパッケージをコピー", + "copy-application-secret": "アプリケーションシークレットをコピー", + "copy-google-play-link": "Google Playリンクをコピー", + "copy-sha256-certificate-fingerprints": "SHA256証明書のフィンガープリントをコピー", + "delete-application": "アプリケーションを削除", + "delete-application-button-text": "結果を理解し、アプリケーションを削除", + "delete-application-text": "この操作は元に戻せません。これによりアプリケーションが完全に削除されます。
永久に削除したくない場合は、アプリケーションを一時停止できます。
削除する場合は、確認のために\"{{phrase}}\"を入力してください。", + "delete-application-title-short": "アプリケーション '{{name}}' を削除してもよろしいですか?", + "delete-application-text-short": "確認後、アプリケーションと関連データは復元できなくなりますのでご注意ください。", + "delete-application-phrase": "アプリケーションを削除", + "delete-applications-bundle-text": "確認後、モバイルバンドルと関連データは復元できなくなりますのでご注意ください。", + "delete-applications-bundle-title": "モバイルバンドル '{{bundleName}}' を削除してもよろしいですか?", + "generate-application-secret": "アプリケーションシークレットを生成", + "google-play-link": "Google Playリンク", + "google-play-link-required": "Google Playリンクは必須です", + "latest-version": "最新バージョン", + "min-version": "最小バージョン", + "invalid-version-pattern": "無効なバージョン形式です。形式は major.minor.patch(例:1.0.0)を使用してください。", + "mobile-center": "モバイルセンター", + "mobile-package": "アプリケーションパッケージ", + "mobile-package-max-length": "アプリケーションパッケージは256文字以内である必要があります", + "mobile-package-required": "アプリケーションパッケージは必須です。", + "mobile-package-pattern": "アプリケーションパッケージの形式が無効です", + "mobile-package-title": "アプリケーションタイトル", + "mobile-package-title-max-length": "アプリケーションタイトルは256文字以内である必要があります", + "no-application": "アプリケーションが見つかりません", + "no-bundles": "バンドルが見つかりません", + "platform-type": "プラットフォームタイプ", + "search-application": "アプリケーションを検索", + "search-bundles": "バンドルを検索", + "set": "設定", + "sha256-certificate-fingerprints": "SHA256証明書フィンガープリント", + "sha256-certificate-fingerprints-required": "SHA256証明書フィンガープリントは必須です", + "sha256-certificate-fingerprints-pattern": "無効なSHA256証明書フィンガープリント形式", + "show-hidden-pages": "隠されたページを表示", + "status": "ステータス", + "status-type": { + "deprecated": "非推奨", + "draft": "下書き", + "published": "公開済み", + "suspended": "一時停止" + }, + "store-information": "ストア情報", + "version-information": "バージョン情報", + "min-version-release-notes": "最小バージョンのリリースノート", + "latest-version-release-notes": "最新バージョンのリリースノート", + "bundle": "バンドル", + "bundles": "バンドル", + "add-bundle": "バンドルを追加", + "title": "タイトル", + "title-required": "タイトルは必須です", + "title-cannot-contain-only-spaces": "タイトルはスペースのみで構成できません", + "title-max-length": "タイトルは256文字以内である必要があります", + "oauth-clients": "OAuth 2.0クライアント", + "android-app": "Androidアプリ", + "android-application": "Androidアプリケーション", + "ios-app": "iOSアプリ", + "ios-application": "iOSアプリケーション", + "invalid-store-link": "無効なストアリンク", + "enable-oauth": "OAuth 2.0を有効化", + "enable-self-registration": "セルフ登録を有効化", + "edit-bundle": "バンドルを編集", + "description": "説明", + "basic-settings": "基本設定", + "no-application-matching": "'{{entity}}' に一致するアプリケーションは見つかりませんでした。", + "no-bundle-matching": "'{{entity}}' に一致するバンドルは見つかりませんでした。", + "application-required": "アプリケーションは必須です。", + "bundle-required": "バンドルは必須です。", + "no-application-text": "アプリケーションが見つかりません", + "no-bundle-text": "バンドルが見つかりません", + "layout": "レイアウト", + "pages": "ページ", + "hide-all-pages": "すべてのページを非表示", + "reset-to-default-pages": "デフォルトのページにリセット", + "add-specific-page": "特定のページを追加", + "visible": "表示", + "hidden": "非表示", + "reset-to-page-default": "ページをデフォルトにリセット", + "mobile-599": "モバイル(最大599px)", + "tablet-959": "タブレット(最大959px)", + "max-element-number": "最大要素数", + "page-name": "ページ名", + "page-name-required": "ページ名は必須です。", + "page-name-cannot-contain-only-spaces": "ページ名はスペースのみで構成できません。", + "page-name-max-length": "ページ名は256文字以内である必要があります", + "page-type": "ページタイプ", + "pages-types": { + "dashboard": "ダッシュボード", + "web-view": "ウェブビュー", + "custom": "カスタム" + }, + "url": "URL", + "invalid-url-format": "無効なURL形式", + "path": "パス", + "invalid-path-format": "無効なパス形式", + "custom-page": "カスタムページ", + "edit-page": "ページを編集", + "edit-custom-page": "カスタムページを編集", + "delete-page": "ページを削除", + "qr-code-widget": "QRコードウィジェット", + "type-here": "ここに入力", + "configuration-dialog": "設定ダイアログ", + "configuration-app": "設定アプリ", + "configuration-step": { + "prepare-environment-title": "開発環境の準備", + "prepare-environment-text": "Flutter ThingsBoardモバイルアプリケーションにはFlutter SDKが必要です。Flutter SDKのセットアップ手順に従ってください。", + "get-source-code-title": "アプリソースコードの取得", + "get-source-code-text": "Flutter ThingsBoardモバイルアプリケーションのソースコードは、GitHubリポジトリからクローンして取得できます:", + "configure-app-settings-title": "アプリ設定の構成", + "configure-app-settings-text": "設定ファイルをダウンロードし、前の手順でクローンしたプロジェクトのルートディレクトリに配置してください。", + "download-file": "ファイルをダウンロード", + "run-app-title": "アプリを実行", + "run-app-text": "IDEに記載された方法でアプリを実行してください。\nターミナルを使用する場合、次のコマンドでアプリを実行します:", + "more-information": "詳細情報は、はじめにのドキュメントに記載されています。", + "getting-started": "はじめにガイド" + } + }, + "notification": { + "action-button": "アクションボタン", + "action-type": "アクションタイプ", + "active": "アクティブ", + "add-notification-recipients-group": "通知受信者グループを追加", + "add-notification-template": "通知テンプレートを追加", + "add-recipient": "受信者を追加", + "add-recipients": "受信者を追加", + "add-rule": "ルールを追加", + "add-stage": "ステージを追加", + "add-template": "テンプレートを追加", + "after": "後", + "alarm-assignment-trigger-settings": "アラーム割り当てトリガー設定", + "alarm-comment-trigger-settings": "アラームコメントトリガー設定", + "alarm-trigger-settings": "アラームトリガー設定", + "all": "すべて", + "api-feature-hint": "フィールドが空の場合、トリガーはすべてのAPI機能に適用されます", + "api-usage-trigger-settings": "API使用トリガー設定", + "new-platform-version-trigger-settings": "新しいプラットフォームバージョントリガー設定", + "rate-limits-trigger-settings": "制限超過トリガー設定", + "task-processing-failure-trigger-settings": "タスク処理失敗トリガー設定", + "resources-shortage-trigger-settings": "リソース不足トリガー設定", + "at-least-one-should-be-selected": "少なくとも1つは選択する必要があります", + "basic-settings": "基本設定", + "button-text": "ボタンテキスト", + "button-text-required": "ボタンテキストは必須です", + "button-text-max-length": "ボタンテキストは{{length}}文字以下である必要があります", + "compose": "作成", + "conversation": "会話", + "conversation-required": "会話は必須です", + "copy-notification-template": "通知テンプレートをコピー", + "copy-rule": "ルールをコピー", + "copy-template": "テンプレートをコピー", + "create-new": "新規作成", + "created": "作成済み", + "customize-messages": "メッセージをカスタマイズ", + "cpu-threshold": "CPUの閾値", + "delete-notification-text": "確認後、通知は復元できなくなりますのでご注意ください。", + "delete-notification-title": "通知を削除してもよろしいですか?", + "delete-notifications-text": "確認後、通知は復元できなくなりますのでご注意ください。", + "delete-notifications-title": "{ count, plural, =1 {1 通知} other {# 通知} } を削除してもよろしいですか?", + "delete-recipient-text": "確認後、受信者は復元できなくなりますのでご注意ください。", + "delete-recipient-title": "受信者 '{{recipientName}}' を削除してもよろしいですか?", + "delete-recipients-text": "確認後、受信者は復元できなくなりますのでご注意ください。", + "delete-recipients-title": "{ count, plural, =1 {1 受信者} other {# 受信者} } を削除してもよろしいですか?", + "delete-request-text": "確認後、リクエストは復元できなくなりますのでご注意ください。", + "delete-request-title": "リクエストを削除してもよろしいですか?", + "delete-requests-text": "確認後、リクエストは復元できなくなりますのでご注意ください。", + "delete-requests-title": "{ count, plural, =1 {1 リクエスト} other {# リクエスト} } を削除してもよろしいですか?", + "delete-rule-text": "確認後、ルールは復元できなくなりますのでご注意ください。", + "delete-rule-title": "ルール '{{ruleName}}' を削除してもよろしいですか?", + "delete-rules-text": "確認後、ルールは復元できなくなりますのでご注意ください。", + "delete-rules-title": "{ count, plural, =1 {1 ルール} other {# ルール} } を削除してもよろしいですか?", + "delete-template-text": "確認後、テンプレートは復元できなくなりますのでご注意ください。", + "delete-template-title": "テンプレート '{{templateName}}' を削除してもよろしいですか?", + "delete-templates-text": "確認後、テンプレートは復元できなくなりますのでご注意ください。", + "delete-templates-title": "{ count, plural, =1 {1 テンプレート} other {# テンプレート} } を削除してもよろしいですか?", + "deleted": "削除済み", + "delivery-method": { + "delivery-method": "配信方法", + "email": "メール", + "email-preview": "メール通知プレビュー", + "slack": "Slack", + "slack-preview": "Slack通知プレビュー", + "microsoft-teams": "Microsoft Teams", + "microsoft-teams-preview": "Microsoft Teams通知プレビュー", + "sms": "SMS", + "sms-preview": "SMS通知プレビュー", + "web": "Web", + "web-preview": "Web通知プレビュー", + "mobile-app": "モバイルアプリ", + "mobile-app-preview": "モバイルアプリ通知プレビュー" + }, + "delivery-method-not-configure-click": "配信方法が設定されていません。クリックして設定してください。", + "delivery-method-not-configure-contact": "配信方法が設定されていません。システム管理者に連絡してください。", + "delivery-methods": "配信方法", + "description": "説明", + "device-activity-trigger-settings": "デバイスアクティブトリガー設定", + "device-list-rule-hint": "フィールドが空の場合、トリガーはすべてのデバイスに適用されます。", + "device-profiles-list-rule-hint": "フィールドが空の場合、トリガーはすべてのデバイスプロファイルに適用されます。", + "disabled": "無効", + "edge-trigger-settings": "Edgeトリガー設定", + "edge-list-rule-hint": "フィールドが空の場合、トリガーはすべてのEdgeインスタンスに適用されます。", + "edit-notification-recipients-group": "通知受信者グループを編集", + "edit-notification-template": "通知テンプレートを編集", + "edit-rule": "ルールを編集", + "edit-template": "テンプレートを編集", + "enabled": "有効", + "entities-limit-trigger-settings": "エンティティ制限トリガー設定", + "entity-action-trigger-settings": "エンティティアクショントリガー設定", + "entity-type": "エンティティタイプ", + "escalation-chain": "エスカレーションチェーン", + "failed-send": "送信失敗", + "fails": "{ count, plural, =1 {1 回の失敗} other {# 回の失敗} }", + "filter": "フィルター", + "first-recipient": "最初の受信者", + "inactive": "非アクティブ", + "inbox": "受信トレイ", + "notification-inbox": "通知 / 受信トレイ", + "input-field-support-templatization": "入力フィールドはテンプレート化をサポートします。", + "input-fields-support-templatization": "入力フィールドはテンプレート化をサポートします。", + "link": "リンク", + "link-required": "リンクは必須です", + "link-max-length": "リンクは{{ length }}文字以内である必要があります", + "link-type": { + "dashboard": "ダッシュボードを開く", + "link": "URLリンクを開く" + }, + "loading-notifications": "通知を読み込んでいます...", + "management": "通知管理", + "mark-all-as-read": "すべてを既読にする", + "mark-as-read": "既読にする", + "message": "メッセージ", + "message-required": "メッセージは必須です", + "message-max-length": "メッセージは{{ length }}文字以内である必要があります", + "name": "名前", + "name-required": "名前は必須です", + "new-notification": "新しい通知", + "no-inbox-notification": "通知が見つかりません", + "no-notification-request": "通知リクエストがありません", + "no-notification-templates": "通知テンプレートが見つかりません", + "no-notifications-yet": "まだ通知はありません", + "no-recipients-notification": "受信者の通知がありません", + "no-recipients-matching": "'{{entity}}' に一致する受信者は見つかりませんでした。", + "no-recipients-text": "受信者が見つかりません", + "no-rule": "設定されたルールがありません", + "no-rules-notification": "ルールの通知がありません", + "no-severity-found": "重大度が見つかりません", + "no-severity-matching": "'{{severity}}' が見つかりません。", + "no-template-matching": "'{{template}}' に一致するリソースが見つかりませんでした。", + "create-new-template": "新しいテンプレートを作成!", + "not-found-slack-recipient": "Slackの受信者が見つかりません", + "notification": "通知", + "notification-center": "通知センター", + "notification-tap-action": "通知タップアクション", + "notification-tap-action-hint": "無効の場合、デフォルトのアラームダッシュボードが使用されます", + "notify": "通知", + "notify-again": "再度通知", + "notify-alarm-action": { + "acknowledged": "アラームが承認されました", + "assigned": "アラームが割り当てられました", + "cleared": "アラームが解除されました", + "created": "アラームが作成されました", + "severity-changed": "アラームの重大度が変更されました", + "unassigned": "アラームの割り当てが解除されました" + }, + "notify-on": "通知を送信する", + "notify-on-comment-update": "コメントの更新時に通知", + "notify-on-required": "通知先は必須です", + "notify-on-unassign": "割り当て解除時に通知", + "notify-only-user-comments": "ユーザーコメントのみ通知", + "only-rule-chain-lifecycle-failures": "ルールチェーンのライフサイクル失敗のみ", + "only-rule-node-lifecycle-failures": "ルールノードのライフサイクル失敗のみ", + "platform-users": "プラットフォームユーザー", + "ram-threshold": "RAM閾値", + "rate-limits": "レート制限", + "rate-limits-hint": "フィールドが空の場合、トリガーはすべてのレート制限に適用されます", + "recipient": "受信者", + "recipient-group": "受信者グループ", + "recipient-type": { + "affected-tenant-administrators": "影響を受けたテナント管理者", + "affected-user": "影響を受けたユーザー", + "all-users": "すべてのユーザー", + "customer-users": "顧客ユーザー", + "system-administrators": "システム管理者", + "tenant-administrators": "テナント管理者", + "user-filters": "ユーザーフィルター", + "user-list": "ユーザーリスト", + "users-entity-owner": "エンティティオーナーのユーザー" + }, + "recipients": "受信者", + "notification-recipient": "通知受信者", + "notification-recipient-required": "通知受信者は必須です。", + "notification-recipients": "通知 / 受信者", + "recipients-count": "{ count, plural, =1 {1 受信者} other {# 受信者} }", + "recipients-required": "受信者は必須です", + "refresh-allow-delivery-method": "配信方法の許可をリフレッシュ", + "request-search": "リクエスト検索", + "request-status": { + "processing": "処理中", + "scheduled": "スケジュール済み", + "sent": "送信済み" + }, + "review": "レビュー", + "rule": "ルール", + "rule-chain-list-rule-hint": "フィールドが空の場合、トリガーはすべてのルールチェーンに適用されます。", + "rule-engine-events-trigger-settings": "ルールエンジンイベントトリガー設定", + "rule-engine-filter": "ルールエンジンフィルター", + "rule-name": "ルール名", + "rule-name-required": "名前は必須です", + "rule-disable": "通知ルールを無効にする", + "rule-enable": "通知ルールを有効にする", + "rule-node-filter": "ルールノードフィルター", + "rules": "ルール", + "notification-rules": "通知 / ルール", + "scheduler-later": "後でスケジュール", + "search-notification": "通知を検索", + "search-recipients": "受信者を検索", + "search-rules": "ルールを検索", + "search-templates": "テンプレートを検索", + "see-documentation": "ドキュメントを見る", + "selected-notifications": "{ count, plural, =1 {1 通知} other {# 通知} } 選択済み", + "selected-recipients": "{ count, plural, =1 {1 受信者} other {# 受信者} } 選択済み", + "selected-requests": "{ count, plural, =1 {1 リクエスト} other {# リクエスト} } 選択済み", + "selected-rules": "{ count, plural, =1 {1 ルール} other {# ルール} } 選択済み", + "selected-template": "{ count, plural, =1 {1 テンプレート} other {# テンプレート} } 選択済み", + "send-notification": "通知を送信", + "sent": "送信済み", + "setup": "設定", + "notification-sent": "通知 / 送信済み", + "set-entity-from-notification": "通知からエンティティをダッシュボード状態に設定", + "slack-chanel-type": "Slackチャンネルタイプ", + "slack-chanel-types": { + "direct": "ダイレクトメッセージ", + "private-channel": "プライベートチャンネル", + "public-channel": "パブリックチャンネル" + }, + "start-from-scratch": "最初から始める", + "status": "ステータス", + "stop-escalation-alarm-status-become": "アラームステータスが次に変更された場合、エスカレーションを停止:", + "storage-threshold": "ストレージ閾値", + "subject": "件名", + "subject-required": "件名は必須です", + "subject-max-length": "件名は{{ length }}文字以内である必要があります", + "template": "テンプレート", + "template-name": "テンプレート名", + "template-required": "テンプレートは必須です", + "template-type": { + "alarm": "アラーム", + "alarm-assignment": "アラーム割り当て", + "alarm-comment": "アラームコメント", + "api-usage-limit": "API 使用量上限", + "device-activity": "デバイスアクティビティ", + "entities-limit": "エンティティ上限", + "entity-action": "エンティティアクション", + "general": "一般", + "rule-engine-lifecycle-event": "ルールエンジンライフサイクルイベント", + "rule-node": "ルールノード", + "new-platform-version": "プラットフォームの新バージョン", + "rate-limits": "レート制限超過", + "edge-communication-failure": "Edge 通信障害", + "edge-connection": "Edge 接続", + "task-processing-failure": "タスク処理失敗", + "resources-shortage": "リソース不足" + }, + "templates": "テンプレート", + "notification-templates": "通知 / テンプレート", + "tenant-profiles-list-rule-hint": "フィールドが空の場合、トリガーはすべてのテナントプロファイルに適用されます", + "tenants-list-rule-hint": "フィールドが空の場合、トリガーはすべてのテナントに適用されます", + "threshold": "閾値", + "theme-color": "テーマカラー", + "time": "時間", + "track-rule-node-events": "ルールノードイベントを追跡", + "trigger": { + "alarm": "アラーム", + "alarm-assignment": "アラーム割り当て", + "alarm-comment": "アラームコメント", + "api-usage-limit": "API使用制限", + "device-activity": "デバイスアクティビティ", + "entities-limit": "エンティティ制限", + "entity-action": "エンティティアクション", + "rule-engine-lifecycle-event": "ルールエンジンライフサイクルイベント", + "new-platform-version": "新しいプラットフォームバージョン", + "rate-limits": "レート制限超過", + "edge-connection": "Edge接続", + "edge-communication-failure": "Edge通信障害", + "task-processing-failure": "タスク処理失敗", + "resources-shortage": "リソース不足", + "trigger": "トリガー", + "trigger-required": "トリガーは必須です" + }, + "type": "タイプ", + "unread": "未読", + "updated": "更新済み", + "use-deprecated-webhook-connectors": "廃止予定のWebhookコネクタを使用", + "use-old-api": "古いAPIを使用", + "use-template": "テンプレートを使用", + "view-all": "すべて表示", + "warning": "警告", + "webhook-url": "Webhook URL", + "webhook-url-required": "Webhook URLは必須です", + "workflow-url": "ワークフローURL", + "workflow-url-required": "ワークフローURLは必須です", + "channel-name": "チャンネル名", + "channel-name-required": "チャンネル名は必須です", + "settings": { + "notification-settings": "通知設定", + "reset-all": "すべての設定をリセット", + "reset-all-title": "フォームをリセットしてもよろしいですか?", + "reset-all-text": "確認後、設定フォームはデフォルト値にリセットされ、保存されます。", + "type": "タイプ", + "enable-all": "すべてを有効にする", + "disable-all": "すべてを無効にする", + "delivery-not-configured": "配信方法が設定されていません" + } + }, + "ota-update": { + "add": "パッケージを追加", + "assign-firmware": "割り当てられたファームウェア", + "assign-firmware-required": "割り当てられたファームウェアは必須です", + "assign-software": "割り当てられたソフトウェア", + "assign-software-required": "割り当てられたソフトウェアは必須です", + "auto-generate-checksum": "チェックサムを自動生成", + "checksum": "チェックサム", + "checksum-hint": "チェックサムが空の場合、自動的に生成されます", + "checksum-algorithm": "チェックサムアルゴリズム", + "checksum-copied-message": "パッケージのチェックサムがクリップボードにコピーされました", + "change-firmware": "ファームウェアの変更により、{ count, plural, =1 {1 デバイス} other {# デバイス} } の更新が行われる可能性があります。", + "change-software": "ソフトウェアの変更により、{ count, plural, =1 {1 デバイス} other {# デバイス} } の更新が行われる可能性があります。", + "change-ota-setting-title": "OTA設定を変更してもよろしいですか?", + "chose-compatible-device-profile": "アップロードされたパッケージは、選択されたプロファイルを持つデバイスでのみ使用可能です。", + "chose-firmware-distributed-device": "デバイスに配布されるファームウェアを選択", + "chose-software-distributed-device": "デバイスに配布されるソフトウェアを選択", + "content-type": "コンテンツタイプ", + "copy-checksum": "チェックサムをコピー", + "copy-direct-url": "直接URLをコピー", + "copyId": "パッケージIDをコピー", + "copied": "コピー完了!", + "delete": "パッケージを削除", + "delete-ota-update-text": "確認後、OTAアップデートは復元できなくなりますのでご注意ください。", + "delete-ota-update-title": "OTAアップデート '{{title}}' を削除してもよろしいですか?", + "delete-ota-updates-text": "確認後、すべての選択されたOTAアップデートは削除されます。", + "delete-ota-updates-title": "{ count, plural, =1 {1 OTAアップデート} other {# OTAアップデート} } を削除してもよろしいですか?", + "description": "説明", + "direct-url": "直接URL", + "direct-url-copied-message": "パッケージの直接URLがクリップボードにコピーされました", + "direct-url-required": "直接URLは必須です", + "download": "パッケージをダウンロード", + "drop-file": "パッケージファイルをドラッグ&ドロップするか、クリックして選択してください。", + "drop-package-file-or": "パッケージファイルをドラッグ&ドロップするか", + "file-name": "ファイル名", + "file-size": "ファイルサイズ", + "file-size-bytes": "ファイルサイズ(バイト)", + "idCopiedMessage": "パッケージIDがクリップボードにコピーされました", + "no-firmware-matching": "'{{entity}}' に一致する互換性のあるファームウェアOTAアップデートパッケージは見つかりませんでした。", + "no-firmware-text": "互換性のあるファームウェアOTAアップデートパッケージはプロビジョニングされていません。", + "no-packages-text": "パッケージが見つかりません", + "no-software-matching": "'{{entity}}' に一致する互換性のあるソフトウェアOTAアップデートパッケージは見つかりませんでした。", + "no-software-text": "互換性のあるソフトウェアOTAアップデートパッケージはプロビジョニングされていません。", + "ota-update": "OTAアップデート", + "ota-update-details": "OTAアップデートの詳細", + "ota-updates": "OTAアップデート", + "package-file": "パッケージファイル", + "package-type": "パッケージタイプ", + "packages-repository": "パッケージリポジトリ", + "search": "パッケージを検索", + "selected-package": "{ count, plural, =1 {1 パッケージ} other {# パッケージ} } 選択済み", + "title": "タイトル", + "title-required": "タイトルは必須です。", + "title-max-length": "タイトルは256文字以内である必要があります", + "types": { + "firmware": "ファームウェア", + "software": "ソフトウェア" + }, + "upload-binary-file": "バイナリファイルをアップロード", + "use-external-url": "外部URLを使用", + "version": "バージョン", + "version-required": "バージョンは必須です。", + "version-tag": "バージョンタグ", + "version-tag-hint": "カスタムタグは、デバイスから報告されるパッケージバージョンと一致する必要があります。", + "version-max-length": "バージョンは256文字以内である必要があります", + "warning-after-save-no-edit": "パッケージがアップロードされると、タイトル、バージョン、デバイスプロファイル、およびパッケージタイプを変更できなくなります。" + }, + "position": { + "top": "上", + "bottom": "下", + "left": "左", + "right": "右" + }, + "profile": { + "profile": "プロフィール", + "last-login-time": "最終ログイン", + "change-password": "パスワードを変更", + "current-password": "現在のパスワード", + "copy-jwt-token": "JWTトークンをコピー", + "jwt-token": "JWTトークン", + "token-valid-till": "トークンの有効期限", + "tokenCopiedSuccessMessage": "JWTトークンがクリップボードにコピーされました", + "tokenCopiedWarnMessage": "JWTトークンは期限切れです!ページを更新してください。" + }, + "profiles": { + "profiles": "プロフィール" + }, + "security": { + "security": "セキュリティ", + "general-settings": "一般的なセキュリティ設定", + "access-token": "アクセストークン", + "access-token-required": "アクセストークンは必須です", + "clientId": "クライアントID", + "clientId-required": "クライアントIDは必須です", + "username": "ユーザー名", + "username-required": "ユーザー名は必須です", + "ca-cert": "CA証明書", + "2fa": { + "2fa": "二段階認証", + "2fa-description": "二段階認証は、アカウントへの不正アクセスから保護します。ログイン時にセキュリティコードを入力するだけです。", + "authenticate-with": "以下の方法で認証できます:", + "disable-2fa-provider-text": "{{name}}を無効にすると、アカウントのセキュリティが低下します", + "disable-2fa-provider-title": "{{name}}を無効にしてもよろしいですか?", + "get-new-code": "新しいコードを取得", + "main-2fa-method": "主要な二段階認証方法として使用", + "dialog": { + "activation-step-description-email": "次回ログイン時に、あなたのメールアドレスに送信されたセキュリティコードを入力するよう求められます。", + "activation-step-description-sms": "次回ログイン時に、あなたの電話番号に送信されたセキュリティコードを入力するよう求められます。", + "activation-step-description-totp": "次回ログイン時に、二段階認証コードを入力する必要があります。", + "activation-step-label": "アクティベーション", + "backup-code-description": "コードを印刷しておくと、アカウントにログインする際に便利です。各バックアップコードは1回のみ使用できます。", + "backup-code-warn": "このページを離れると、これらのコードは再度表示できなくなります。以下のオプションで安全に保存してください。", + "download-txt": "ダウンロード (txt)", + "email-step-description": "認証に使用するメールアドレスを入力してください。", + "email-step-label": "メールアドレス", + "enable-email-title": "メール認証を有効にする", + "enable-sms-title": "SMS認証を有効にする", + "enable-totp-title": "認証アプリを有効にする", + "enter-verification-code": "ここに6桁のコードを入力", + "get-backup-code-title": "バックアップコードを取得", + "next": "次へ", + "scan-qr-code": "このQRコードを認証アプリでスキャン", + "send-code": "コードを送信", + "sms-step-description": "認証に使用する電話番号を入力してください。", + "sms-step-label": "電話番号", + "success": "成功!", + "totp-step-description-install": "Google Authenticator、Authy、またはDuoなどのアプリをインストールできます。", + "totp-step-description-open": "携帯電話の認証アプリを開いてください。", + "totp-step-label": "アプリを取得", + "verification-code": "6桁のコード", + "verification-code-invalid": "無効な認証コード形式", + "verification-code-incorrect": "認証コードが正しくありません", + "verification-code-many-request": "認証コードのリクエストが多すぎます", + "verification-step-description": "{{address}}に送信された6桁のコードを入力してください", + "verification-step-label": "認証" + }, + "provider": { + "email": "メール", + "email-description": "セキュリティコードをメールアドレスに送信して認証します。", + "email-hint": "認証コードは{{ info }}に送信されます。", + "sms": "SMS", + "sms-description": "電話を使用して認証します。ログイン時にSMSメッセージでセキュリティコードを送信します。", + "sms-hint": "認証コードは{{ info }}にテキストメッセージで送信されます。", + "totp": "認証アプリ", + "totp-description": "Google Authenticator、Authy、またはDuoなどのアプリを使用して認証します。ログイン用のセキュリティコードを生成します。", + "totp-hint": "認証アプリがアカウントに設定されています。", + "backup_code": "バックアップコード", + "backup-code-description": "これらの印刷可能な一回限りのパスコードを使用すると、旅行中などに電話が使えないときにサインインできます。", + "backup-code-hint": "{{ info }} の単一使用コードが現在有効です" + } + }, + "password-requirement": { + "at-least": "少なくとも:", + "character": "{ count, plural, =1 {1 文字} other {# 文字} }", + "digit": "{ count, plural, =1 {1 桁} other {# 桁} }", + "incorrect-password-try-again": "パスワードが正しくありません。もう一度お試しください", + "lowercase-letter": "{ count, plural, =1 {小文字 1 文字} other {小文字 # 文字} }", + "new-passwords-not-match": "新しいパスワードが一致しません", + "password-should-not-contain-spaces": "パスワードにスペースを含めないでください", + "password-not-meet-requirements": "パスワードが要件を満たしていません", + "password-requirements": "パスワード要件", + "password-should-difference": "新しいパスワードは現在のパスワードと異なる必要があります", + "special-character": "{ count, plural, =1 {特殊文字 1 文字} other {特殊文字 # 文字} }", + "uppercase-letter": "{ count, plural, =1 {大文字 1 文字} other {大文字 # 文字} }", + "at-most": "最大:" + } + }, + "relation": { + "relations": "リレーション", + "direction": "方向", + "clear-relation-type": "リレーションタイプをクリア", + "search-direction": { + "FROM": "送信元", + "TO": "宛先" + }, + "direction-type": { + "FROM": "送信元", + "TO": "宛先" + }, + "from-relations": "アウトバウンドリレーション", + "to-relations": "インバウンドリレーション", + "selected-relations": "{ count, plural, =1 {1 リレーション} other {# リレーション} } 選択済み", + "type": "タイプ", + "to-entity-type": "宛先エンティティタイプ", + "to-entity-name": "宛先エンティティ名", + "from-entity-type": "送信元エンティティタイプ", + "from-entity-name": "送信元エンティティ名", + "to-entity": "宛先エンティティ", + "from-entity": "送信元エンティティ", + "delete": "リレーションを削除", + "relation-type": "リレーションタイプ", + "relation-type-required": "リレーションタイプは必須です。", + "relation-type-max-length": "リレーションタイプは256文字以内である必要があります", + "any-relation-type": "任意のタイプ", + "add": "リレーションを追加", + "edit": "リレーションを編集", + "delete-to-relation-title": "エンティティ '{{entityName}}' へのリレーションを削除してもよろしいですか?", + "delete-to-relation-text": "確認後、エンティティ '{{entityName}}' は現在のエンティティから関連付けが解除されます。", + "delete-to-relations-title": "{ count, plural, =1 {1 リレーション} other {# リレーション} } を削除してもよろしいですか?", + "delete-to-relations-text": "確認後、すべての選択されたリレーションが削除され、対応するエンティティは現在のエンティティから関連付けが解除されます。", + "delete-from-relation-title": "エンティティ '{{entityName}}' からのリレーションを削除してもよろしいですか?", + "delete-from-relation-text": "確認後、現在のエンティティはエンティティ '{{entityName}}' から関連付けが解除されます。", + "delete-from-relations-title": "{ count, plural, =1 {1 リレーション} other {# リレーション} } を削除してもよろしいですか?", + "delete-from-relations-text": "確認後、すべての選択されたリレーションが削除され、現在のエンティティは対応するエンティティから関連付けが解除されます。", + "remove-relation-filter": "リレーションフィルターを削除", + "remove-filter": "フィルターを削除", + "add-relation-filter": "リレーションフィルターを追加", + "any-relation": "任意のリレーション", + "relation-filters": "リレーションフィルター", + "relation-filter": "リレーションフィルター", + "additional-info": "追加情報(JSON)", + "invalid-additional-info": "追加情報のJSONの解析に失敗しました。", + "no-relations-text": "リレーションが見つかりません", + "not": "ない" + }, + "resource": { + "add": "リソースを追加", + "all-types": "すべて", + "copyId": "リソースIDをコピー", + "delete": "リソースを削除", + "delete-resource-text": "確認後、リソースは復元できなくなりますのでご注意ください。", + "delete-resource-title": "リソース '{{resourceTitle}}' を削除してもよろしいですか?", + "delete-resources-action-title": "{ count, plural, =1 {1 リソース} other {# リソース} } を削除", + "delete-resources-text": "選択されたリソースは、デバイスプロファイルで使用されている場合でも削除されることに注意してください。", + "delete-resources-title": "{ count, plural, =1 {1 リソース} other {# リソース} } を削除してもよろしいですか?", + "download": "リソースをダウンロード", + "drop-file": "リソースファイルをドラッグ&ドロップするか、クリックして選択してください。", + "drop-resource-file-or": "リソースファイルをドラッグ&ドロップするか", + "empty": "リソースは空です", + "file-name": "ファイル名", + "idCopiedMessage": "リソースIDがクリップボードにコピーされました", + "no-resource-matching": "'{{widgetsBundle}}' に一致するリソースは見つかりませんでした。", + "no-resource-text": "リソースが見つかりません", + "open-widgets-bundle": "ウィジェットバンドルを開く", + "resource": "リソース", + "resource-file": "リソースファイル", + "resource-files": "リソースファイル", + "resource-library-details": "リソースの詳細", + "resource-type": "リソースタイプ", + "resources-library": "リソースライブラリ", + "search": "リソースを検索", + "selected-resources": "{ count, plural, =1 {1 リソース} other {# リソース} } 選択済み", + "system": "システム", + "title": "タイトル", + "title-required": "タイトルは必須です。", + "title-max-length": "タイトルは256文字以内である必要があります", + "type": { + "jks": "JKS", + "js-module": "JSモジュール", + "lwm2m-model": "LWM2Mモデル", + "pkcs-12": "PKCS #12", + "general": "一般" + }, + "resource-sub-type": "サブタイプ", + "sub-type": { + "image": "画像", + "scada-symbol": "SCADAシンボル", + "extension": "拡張機能", + "module": "モジュール" + }, + "resource-is-in-use": "リソースは他のエンティティによって使用されています", + "resources-are-in-use": "リソースは他のエンティティによって使用されています", + "resource-is-in-use-text": "リソース '{{title}}' は以下のエンティティによって使用されているため、削除されませんでした。", + "resources-are-in-use-text": "すべてのリソースが削除されなかったのは、他のエンティティによって使用されているためです。
参照されているエンティティは、対応するリソース行の 参照 ボタンをクリックすることで確認できます。
それでもこれらのリソースを削除したい場合は、テーブルから選択し、選択したリソースを削除 ボタンをクリックしてください。", + "delete-resource-in-use-text": "それでもリソースを削除したい場合は、削除してもよい ボタンをクリックしてください。" + }, + "javascript": { + "add": "JavaScriptリソースを追加", + "delete": "JavaScriptリソースを削除", + "delete-javascript-resource-text": "確認後、JavaScriptリソースは復元できなくなりますのでご注意ください。", + "delete-javascript-resource-title": "JavaScriptリソース '{{resourceTitle}}' を削除してもよろしいですか?", + "delete-javascript-resources-action-title": "JavaScript { count, plural, =1 {1 リソース} other {# リソース} } を削除", + "delete-javascript-resources-text": "選択されたJavaScriptリソースは、JavaScript関数で使用されている場合でも削除されることに注意してください。", + "delete-javascript-resources-title": "JavaScript { count, plural, =1 {1 リソース} other {# リソース} } を削除してもよろしいですか?", + "delete-javascript-resource-in-use-text": "それでもJavaScriptリソースを削除したい場合は、削除してもよい ボタンをクリックしてください。", + "download": "JavaScriptリソースをダウンロード", + "upload-from-file": "ファイルからJavaScriptをアップロード", + "resource-file": "JavaScriptリソースファイル", + "drop-file": "JavaScriptファイルをドラッグ&ドロップするか、クリックして選択してください。", + "drop-resource-file-or": "JavaScriptファイルをドラッグ&ドロップするか", + "javascript-library": "JavaScriptライブラリ", + "javascript-type": "JavaScriptタイプ", + "javascript-resource-details": "JavaScriptリソースの詳細", + "javascript-resource-is-in-use": "JavaScriptリソースは他のエンティティによって使用されています", + "javascript-resources-are-in-use": "JavaScriptリソースは他のエンティティによって使用されています", + "javascript-resource-is-in-use-text": "JavaScriptリソース '{{title}}' は以下のエンティティによって使用されているため、削除されませんでした。", + "javascript-resources-are-in-use-text": "すべてのJavaScriptリソースが削除されなかったのは、他のエンティティによって使用されているためです。
参照されているエンティティは、対応するリソース行の 参照 ボタンをクリックすることで確認できます。
それでもこれらのJavaScriptリソースを削除したい場合は、テーブルから選択し、選択したJavaScriptリソースを削除 ボタンをクリックしてください。", + "search": "JavaScriptリソースを検索", + "selected-javascript-resources": "{ count, plural, =1 {1 JavaScriptリソース} other {# JavaScriptリソース} } 選択済み", + "no-javascript-resource-text": "JavaScriptリソースが見つかりません", + "all-types": "すべて", + "module-script": "モジュールスクリプト" + }, + "rpc": { + "error": { + "target-device-is-not-set": "ターゲットデバイスが設定されていません!", + "invalid-target-entity": "RPCコマンドは{{entityType}}エンティティではサポートされていません。", + "failed-to-resolve-target-device": "ターゲットデバイスの解決に失敗しました!", + "request-timeout": "リクエストタイムアウト", + "rpc-http-error": "エラー: {{status}} - {{statusText}}" + } + }, + "rulechain": { + "rulechain": "ルールチェーン", + "rulechain-events": "ルールチェーンイベント", + "rulechains": "ルールチェーン", + "root": "ルート", + "delete": "ルールチェーンを削除", + "name": "名前", + "name-required": "名前は必須です。", + "name-max-length": "名前は256文字以内である必要があります", + "description": "説明", + "add": "ルールチェーンを追加", + "set-root": "ルールチェーンをルートに設定", + "set-root-rulechain-title": "ルールチェーン '{{ruleChainName}}' をルートに設定してもよろしいですか?", + "set-root-rulechain-text": "確認後、ルールチェーンはルートとなり、すべての受信トランスポートメッセージを処理します。", + "delete-rulechain-title": "ルールチェーン '{{ruleChainName}}' を削除してもよろしいですか?", + "delete-rulechain-text": "確認後、ルールチェーンとすべての関連データは復元できなくなります。", + "delete-rulechains-title": "{ count, plural, =1 {1 ルールチェーン} other {# ルールチェーン} } を削除してもよろしいですか?", + "delete-rulechains-action-title": "{ count, plural, =1 {1 ルールチェーン} other {# ルールチェーン} } を削除", + "delete-rulechains-text": "確認後、すべての選択されたルールチェーンが削除され、すべての関連データは復元できなくなります。", + "add-rulechain-text": "新しいルールチェーンを追加", + "no-rulechains-text": "ルールチェーンが見つかりません", + "rulechain-details": "ルールチェーンの詳細", + "details": "詳細", + "events": "イベント", + "system": "システム", + "import": "ルールチェーンをインポート", + "export": "ルールチェーンをエクスポート", + "export-failed-error": "ルールチェーンをエクスポートできません: {{error}}", + "create-new-rulechain": "新しいルールチェーンを作成", + "rulechain-file": "ルールチェーンファイル", + "invalid-rulechain-file-error": "ルールチェーンをインポートできません: 無効なルールチェーンデータ構造", + "copyId": "ルールチェーンIDをコピー", + "idCopiedMessage": "ルールチェーンIDがクリップボードにコピーされました", + "select-rulechain": "ルールチェーンを選択", + "no-rulechains-matching": "'{{entity}}' に一致するルールチェーンは見つかりませんでした。", + "rulechain-required": "ルールチェーンは必須です", + "management": "ルール管理", + "debug-mode": "デバッグモード", + "search": "ルールチェーンを検索", + "selected-rulechains": "{ count, plural, =1 {1 ルールチェーン} other {# ルールチェーン} } 選択済み", + "open-rulechain": "ルールチェーンを開く", + "edge-template-root": "テンプレートルート", + "assign-to-edge": "Edgeに割り当て", + "edge-rulechain": "Edgeルールチェーン", + "unassign-rulechain-from-edge-text": "確認後、このルールチェーンはEdgeから割り当て解除され、Edgeからアクセスできなくなります。", + "unassign-rulechains-from-edge-title": "{ count, plural, =1 {1 ルールチェーン} other {# ルールチェーン} } をEdgeから割り当て解除してもよろしいですか?", + "unassign-rulechains-from-edge-text": "確認後、選択したすべてのルールチェーンはEdgeから割り当て解除され、Edgeからアクセスできなくなります。", + "assign-rulechain-to-edge-title": "ルールチェーンをEdgeに割り当て", + "assign-rulechain-to-edge-text": "Edgeに割り当てるルールチェーンを選択してください", + "set-edge-template-root-rulechain": "ルールチェーンをEdgeテンプレートルートとして設定", + "set-edge-template-root-rulechain-title": "ルールチェーン '{{ruleChainName}}' をEdgeテンプレートルートとして設定してもよろしいですか?", + "set-edge-template-root-rulechain-text": "確認後、このルールチェーンはEdgeテンプレートルートとなり、新しく作成されたEdgeのルートルールチェーンとなります。", + "invalid-rulechain-type-error": "ルールチェーンをインポートできません: 無効なルールチェーンタイプ。期待されるタイプは {{expectedRuleChainType}} です。", + "set-auto-assign-to-edge": "ルールチェーンを作成時にEdgeに自動的に割り当て", + "set-auto-assign-to-edge-title": "作成時にEdgeルールチェーン '{{ruleChainName}}' をEdgeに自動的に割り当ててもよろしいですか?", + "set-auto-assign-to-edge-text": "確認後、このEdgeルールチェーンは作成時に自動的にEdgeに割り当てられます。", + "unset-auto-assign-to-edge": "作成時にルールチェーンをEdgeに自動的に割り当てない", + "unset-auto-assign-to-edge-title": "作成時にEdgeルールチェーン '{{ruleChainName}}' をEdgeに自動的に割り当てないことを確認してもよろしいですか?", + "unset-auto-assign-to-edge-text": "確認後、このEdgeルールチェーンは作成時にEdgeに自動的に割り当てられなくなります。", + "unassign-rulechain-title": "ルールチェーン '{{ruleChainName}}' を解除してもよろしいですか?", + "unassign-rulechains": "ルールチェーンを解除" + }, + "rulenode": { + "rule-node-events": "ルールノードイベント", + "details": "詳細", + "events": "イベント", + "search": "ノードを検索", + "open-node-library": "ノードライブラリを開く", + "close-node-library": "ノードライブラリを閉じる", + "add": "ルールノードを追加", + "name": "名前", + "name-required": "名前は必須です。", + "name-max-length": "名前は256文字以内である必要があります", + "type": "タイプ", + "rule-node-description": "ルールノードの説明", + "delete": "ルールノードを削除", + "select-all-objects": "すべてのノードと接続を選択", + "deselect-all-objects": "すべてのノードと接続を選択解除", + "delete-selected-objects": "選択されたノードと接続を削除", + "delete-selected": "選択されたものを削除", + "create-nested-rulechain": "ネストされたルールチェーンを作成", + "select-all": "すべてを選択", + "copy-selected": "選択したものをコピー", + "deselect-all": "すべてを選択解除", + "rulenode-details": "ルールノードの詳細", + "debug-mode": "デバッグモード", + "singleton": "シングルトン", + "configuration": "構成", + "link": "リンク", + "link-details": "ルールノードリンクの詳細", + "add-link": "リンクを追加", + "link-label": "リンクラベル", + "link-label-required": "リンクラベルは必須です。", + "custom-link-label": "カスタムリンクラベル", + "custom-link-label-required": "カスタムリンクラベルは必須です。", + "link-labels": "リンクラベル", + "link-labels-required": "リンクラベルは必須です。", + "no-link-labels-found": "リンクラベルが見つかりません", + "no-link-label-matching": "'{{label}}' は見つかりませんでした。", + "create-new-link-label": "新しいリンクラベルを作成", + "type-filter": "フィルター", + "type-filter-details": "設定した条件で受信メッセージをフィルタリング", + "type-enrichment": "エンリッチメント", + "type-enrichment-details": "メッセージメタデータに追加情報を付加", + "type-transformation": "変換", + "type-transformation-details": "メッセージのペイロードとメタデータを変更", + "type-action": "アクション", + "type-action-details": "特別なアクションを実行", + "type-external": "外部", + "type-external-details": "外部システムと連携", + "type-rule-chain": "ルールチェーン", + "type-rule-chain-details": "受信メッセージを指定したルールチェーンへ転送", + "type-flow": "フロー", + "type-flow-details": "メッセージフローを整理", + "type-input": "入力", + "type-input-details": "ルールチェーンの論理入力。受信メッセージを次の関連ルールノードに転送", + "type-unknown": "不明", + "type-unknown-details": "解決できないルールノード", + "directive-is-not-loaded": "定義された構成ディレクティブ '{{directiveName}}' は利用できません。", + "ui-resources-load-error": "構成UIリソースの読み込みに失敗しました。", + "invalid-target-rulechain": "ターゲットルールチェーンを解決できません!", + "test-script-function": "スクリプト関数をテスト", + "script-lang-java-script": "JavaScript", + "script-lang-tbel": "TBEL", + "message": "メッセージ", + "message-type": "メッセージタイプ", + "select-message-type": "メッセージタイプを選択", + "message-type-required": "メッセージタイプは必須です", + "metadata": "メタデータ", + "metadata-required": "メタデータのエントリは空にできません。", + "output": "出力", + "test": "テスト", + "help": "ヘルプ", + "reset-debug-settings": "すべてのノードのデバッグ設定をリセット", + "test-with-this-message": "このメッセージで{{test}}", + "queue-hint": "メッセージを別キューへ転送するためのキューを選択します。既定では 'Main' キューが使用されます。", + "queue-singleton-hint": "マルチインスタンス環境でメッセージを転送するためのキューを選択します。既定では 'Main' キューが使用されます。" + }, + "rule-node-config": { + "id": "ID", + "additional-info": "追加情報", + "advanced-settings": "詳細設定", + "create-entity-if-not-exists": "エンティティが存在しない場合は新規作成", + "create-entity-if-not-exists-hint": "有効にすると、指定したパラメータの新しいエンティティが、まだ存在しない場合に作成されます。既存のエンティティは、そのままリレーションに使用されます。", + "select-device-connectivity-event": "デバイス接続イベントを選択", + "entity-name-pattern": "名前パターン", + "device-name-pattern": "デバイス名", + "asset-name-pattern": "アセット名", + "entity-view-name-pattern": "エンティティビュー名", + "customer-title-pattern": "顧客タイトル", + "dashboard-name-pattern": "ダッシュボードタイトル", + "user-name-pattern": "ユーザーEmail", + "edge-name-pattern": "Edge名", + "entity-name-pattern-required": "名前パターンは必須です", + "entity-name-pattern-hint": "名前パターンフィールドはテンプレート化をサポートします。$[messageKey] を使用してメッセージから値を抽出し、${metadataKey} を使用してメタデータから値を抽出します。", + "copy-message-type": "メッセージタイプをコピー", + "entity-type-pattern": "タイプパターン", + "entity-type-pattern-required": "タイプパターンは必須です", + "message-type-value": "メッセージタイプ値", + "message-type-value-required": "メッセージタイプ値は必須です", + "message-type-value-max-length": "メッセージタイプ値は256文字以内である必要があります", + "output-message-type": "出力メッセージタイプ", + "entity-cache-expiration": "エンティティキャッシュ有効期限(秒)", + "entity-cache-expiration-hint": "見つかったエンティティレコードを保存できる最大時間間隔を指定します。0 は、レコードが期限切れにならないことを意味します。", + "entity-cache-expiration-required": "エンティティキャッシュ有効期限は必須です。", + "entity-cache-expiration-range": "エンティティキャッシュ有効期限は0以上である必要があります。", + "customer-name-pattern": "顧客タイトル", + "customer-name-pattern-required": "顧客タイトルは必須です", + "customer-name-pattern-hint": "$[messageKey] を使用してメッセージから値を抽出し、${metadataKey} を使用してメタデータから値を抽出します。", + "create-customer-if-not-exists": "顧客が存在しない場合は新規作成", + "unassign-from-customer": "オリジネーターがダッシュボードの場合、特定の顧客から割り当て解除", + "unassign-from-customer-tooltip": "複数の顧客に同時に割り当て可能なのはダッシュボードのみです。\nメッセージのオリジネーターがダッシュボードの場合、割り当て解除する顧客のタイトルを明示的に指定する必要があります。", + "customer-cache-expiration": "顧客キャッシュ有効期限(秒)", + "customer-cache-expiration-hint": "見つかった顧客レコードを保存できる最大時間間隔を指定します。0 は、レコードが期限切れにならないことを意味します。", + "customer-cache-expiration-required": "顧客キャッシュ有効期限は必須です。", + "customer-cache-expiration-range": "顧客キャッシュ有効期限は0以上である必要があります。", + "interval-start": "間隔開始", + "interval-end": "間隔終了", + "time-unit": "時間単位", + "fetch-mode": "取得モード", + "order-by-timestamp": "タイムスタンプで並べ替え", + "limit": "制限", + "limit-hint": "最小値は2、最大値は1000です。単一のエントリを取得する場合は、取得モード 'First' または 'Last' を選択してください。", + "limit-required": "制限は必須です。", + "limit-range": "制限は2〜1000の範囲である必要があります。", + "time-unit-milliseconds": "ミリ秒", + "time-unit-seconds": "秒", + "time-unit-minutes": "分", + "time-unit-hours": "時間", + "time-unit-days": "日", + "time-value-range": "1〜2147483647 の範囲で指定できます。", + "start-interval-value-required": "間隔開始は必須です。", + "end-interval-value-required": "間隔終了は必須です。", + "filter": "フィルター", + "switch": "スイッチ", + "math-templatization-tooltip": "このフィールドはテンプレート化をサポートします。$[messageKey] を使用してメッセージから値を抽出し、${metadataKey} を使用してメタデータから値を抽出します。", + "add-message-type": "メッセージタイプを追加", + "select-message-types-required": "少なくとも1つのメッセージタイプを選択してください。", + "select-message-types": "メッセージタイプを選択", + "no-message-types-found": "メッセージタイプが見つかりません", + "no-message-type-matching": "'{{messageType}}' は見つかりませんでした。", + "create-new-message-type": "新しいメッセージタイプを作成します。", + "message-types-required": "メッセージタイプは必須です。", + "client-attributes": "クライアント属性", + "shared-attributes": "共有属性", + "server-attributes": "サーバー属性", + "attributes-keys": "属性キー", + "attributes-keys-required": "属性キーは必須です", + "attributes-scope": "属性スコープ", + "attributes-scope-value": "属性スコープ値", + "attributes-scope-value-copy": "属性スコープ値をコピー", + "attributes-scope-hint": "メタデータキー 'scope' を使用して、メッセージごとに属性スコープを動的に設定できます。指定した場合、構成で設定したスコープより優先されます。", + "notify-device": "デバイスへの通知を強制", + "send-attributes-updated-notification": "属性更新通知を送信", + "send-attributes-updated-notification-hint": "更新された属性に関する通知を、ルールエンジンキューへ別メッセージとして送信します。", + "send-attributes-deleted-notification": "属性削除通知を送信", + "send-attributes-deleted-notification-hint": "削除された属性に関する通知を、ルールエンジンキューへ別メッセージとして送信します。", + "update-attributes-only-on-value-change": "値が変化した場合のみ属性を保存", + "update-attributes-only-on-value-change-hint": "値が変化したかどうかに関係なく、受信メッセージごとに属性を更新します。APIの使用量が増え、パフォーマンスが低下します。", + "update-attributes-only-on-value-change-hint-enabled": "値が変化した場合にのみ属性を更新します。値が変化していない場合、属性のタイムスタンプ更新も属性変更通知の送信も行われません。", + "fetch-credentials-to-metadata": "認証情報をメタデータに取得", + "notify-device-on-update-hint": "有効にすると、共有属性の更新についてデバイスへの通知を強制します。無効の場合、通知動作は受信メッセージのメタデータに含まれる 'notifyDevice' パラメータで制御されます。通知をオフにするには、メタデータに 'notifyDevice' パラメータを含め、値を 'false' に設定する必要があります。それ以外の場合は、デバイスへの通知がトリガーされます。", + "notify-device-on-delete-hint": "有効にすると、共有属性の削除についてデバイスへの通知を強制します。無効の場合、通知動作は受信メッセージのメタデータに含まれる 'notifyDevice' パラメータで制御されます。通知をオンにするには、メタデータに 'notifyDevice' パラメータを含め、値を 'true' に設定する必要があります。それ以外の場合は、デバイスへの通知はトリガーされません。", + "latest-timeseries": "最新の時系列データキー", + "timeseries-keys": "時系列キー", + "timeseries-keys-required": "少なくとも1つの時系列キーを選択してください。", + "add-timeseries-key": "時系列キーを追加", + "add-message-field": "メッセージフィールドを追加", + "relation-search-parameters": "リレーション検索パラメータ", + "relation-parameters": "リレーションパラメータ", + "add-metadata-field": "メタデータフィールドを追加", + "data-keys": "メッセージフィールド名", + "copy-from": "コピー元", + "data-to-metadata": "データ→メタデータ", + "metadata-to-data": "メタデータ→データ", + "use-regular-expression-hint": "正規表現を使用して、パターンでキーをコピーします。\n\nヒントとコツ:\n'Enter' を押してフィールド名の入力を完了します。\n'Backspace' を押してフィールド名を削除します。複数のフィールド名をサポートします。", + "interval": "間隔", + "interval-required": "間隔は必須です", + "interval-hint": "秒単位の重複排除間隔。", + "interval-min-error": "許可される最小値は1です", + "max-pending-msgs": "保留中メッセージの最大数", + "max-pending-msgs-hint": "一意の重複排除IDごとにメモリに保持されるメッセージの最大数。", + "max-pending-msgs-required": "保留中メッセージの最大数は必須です", + "max-pending-msgs-max-error": "許可される最大値は1000です", + "max-pending-msgs-min-error": "許可される最小値は1です", + "max-retries": "最大再試行回数", + "max-retries-required": "最大再試行回数は必須です", + "max-retries-hint": "重複排除されたメッセージをキューに投入する最大再試行回数。再試行の間に10秒の遅延が使用されます", + "max-retries-max-error": "許可される最大値は100です", + "max-retries-min-error": "許可される最小値は0です", + "strategy": "戦略", + "strategy-required": "戦略は必須です", + "strategy-all-hint": "重複排除期間中に到着したすべてのメッセージを、単一のJSON配列メッセージとして返します。各要素は msg と metadata の内部プロパティを持つオブジェクトを表します。", + "strategy-first-hint": "重複排除期間中に到着した最初のメッセージを返します。", + "strategy-last-hint": "重複排除期間中に到着した最後のメッセージを返します。", + "first": "最初", + "last": "最後", + "all": "すべて", + "output-msg-type-hint": "重複排除結果のメッセージタイプ。", + "queue-name-hint": "重複排除結果を発行するキュー名。", + "keys": "キー", + "keys-required": "キーは必須です", + "rename-keys-in": "キー名の変更対象", + "data": "データ", + "message": "メッセージ", + "metadata": "メタデータ", + "current-key-name": "現在のキー名", + "key-name-required": "キー名は必須です", + "new-key-name": "新しいキー名", + "new-key-name-required": "新しいキー名は必須です", + "metadata-keys": "メタデータフィールド名", + "json-path-expression": "JSONパス式", + "json-path-expression-required": "JSONパス式は必須です", + "json-path-expression-hint": "JSONPath は、JSON構造内の要素または要素集合へのパスを指定します。'$' はルートオブジェクトまたは配列を表します。", + "relations-query": "リレーションクエリ", + "device-relations-query": "デバイスリレーションクエリ", + "max-relation-level": "最大リレーションレベル", + "max-relation-level-error": "値は0より大きいか、未指定である必要があります。", + "max-relation-level-invalid": "値は整数である必要があります。", + "relation-type": "リレーションタイプ", + "relation-type-pattern": "リレーションタイプパターン", + "relation-type-pattern-required": "リレーションタイプパターンは必須です", + "relation-types-list": "伝播するリレーションタイプ", + "relation-types-list-hint": "「伝播するリレーションタイプ」を選択しない場合、アラームはリレーションタイプによるフィルタリングなしで伝播されます。", + "unlimited-level": "無制限レベル", + "latest-telemetry": "最新のテレメトリ", + "add-telemetry-key": "テレメトリキーを追加", + "delete-from": "削除元", + "use-regular-expression-delete-hint": "正規表現を使用して、パターンでキーを削除します。\n\nヒントとコツ:\n'Enter' を押してフィールド名の入力を完了します。\n'Backspace' を押してフィールド名を削除します。\n複数のフィールド名をサポートします。", + "fetch-into": "取得先", + "attr-mapping": "属性マッピング:", + "source-attribute": "ソース属性キー", + "source-attribute-required": "ソース属性キーは必須です。", + "source-telemetry": "ソーステレメトリキー", + "source-telemetry-required": "ソーステレメトリキーは必須です。", + "target-key": "ターゲットキー", + "target-key-required": "ターゲットキーは必須です。", + "attr-mapping-required": "少なくとも1つのマッピングエントリを指定してください。", + "fields-mapping": "フィールドマッピング", + "fields-mapping-hint": "メッセージフィールドを $entityId に設定すると、メッセージのオリジネーターIDが指定したテーブル列に保存されます。", + "relations-query-config-direction-suffix": "オリジネーター", + "profile-name": "プロファイル名", + "fetch-circle-parameter-info-from-metadata-hint": "メタデータフィールド '{{perimeterKeyName}}' は次の形式で定義する必要があります: {\"latitude\":48.196, \"longitude\":24.6532, \"radius\":100.0, \"radiusUnit\":\"METER\"}", + "fetch-poligon-parameter-info-from-metadata-hint": "メタデータフィールド '{{perimeterKeyName}}' は次の形式で定義する必要があります: [[48.19736,24.65235],[48.19800,24.65060],...,[48.19849,24.65420]]", + "short-templatization-tooltip": "メッセージから値を抽出するには $[messageKey] を使用し、メタデータから値を抽出するには ${metadataKey} を使用します。", + "fields-mapping-required": "少なくとも1つのフィールドマッピングを指定してください。", + "at-least-one-field-required": "少なくとも1つの入力フィールドに値が指定されている必要があります。", + "originator-fields-sv-map-hint": "ターゲットキーのフィールドはテンプレート化をサポートします。メッセージから値を抽出するには $[messageKey] を使用し、メタデータから値を抽出するには ${metadataKey} を使用します。", + "sv-map-hint": "テンプレート化をサポートするのはターゲットキーのフィールドのみです。メッセージから値を抽出するには $[messageKey] を使用し、メタデータから値を抽出するには ${metadataKey} を使用します。", + "source-field": "ソースフィールド", + "source-field-required": "ソースフィールドは必須です。", + "originator-source": "オリジネーターソース", + "new-originator": "新しいオリジネーター", + "originator-customer": "顧客", + "originator-tenant": "テナント", + "originator-related": "関連エンティティ", + "originator-alarm-originator": "アラームオリジネーター", + "originator-entity": "名前パターンによるエンティティ", + "clone-message": "メッセージを複製", + "transform": "変換", + "default-ttl": "デフォルトTTL", + "default-ttl-required": "デフォルトTTLは必須です。", + "default-ttl-hint": "ルールノードはメッセージメタデータから Time-to-Live(TTL)値を取得します。値が存在しない場合は、構成で指定されたTTLがデフォルトになります。値が0に設定されている場合は、テナントプロファイル構成のTTLが適用されます。", + "default-ttl-zero-hint": "値が0に設定されている場合、TTLは適用されません。", + "min-default-ttl-message": "最小TTLは0のみ許可されています。", + "generation-parameters": "生成パラメータ", + "message-count": "生成メッセージ数の上限(0 - 無制限)", + "message-count-required": "生成メッセージ数の上限は必須です。", + "min-message-count-message": "最小メッセージ数は0のみ許可されています。", + "period-seconds": "期間(秒)", + "period-seconds-required": "期間は必須です。", + "generation-frequency-seconds": "生成頻度(秒)", + "generation-frequency-required": "生成頻度は必須です。", + "min-generation-frequency-message": "最小は60秒のみ許可されています。", + "script-lang-tbel": "TBEL", + "script-lang-js": "JS", + "use-metadata-period-in-seconds-patterns": "秒単位の期間パターンを使用", + "use-metadata-period-in-seconds-patterns-hint": "選択すると、ルールノードはメッセージのメタデータまたはデータから、間隔が秒であるものとして秒単位の期間パターンを使用します。", + "period-in-seconds-pattern": "秒単位の期間パターン", + "period-in-seconds-pattern-required": "秒単位の期間パターンは必須です", + "min-period-seconds-message": "期間の最小値は60秒のみ許可されています。", + "originator": "オリジネーター", + "message-body": "メッセージ本文", + "message-metadata": "メッセージメタデータ", + "generate": "生成", + "current-rule-node": "現在のルールノード", + "current-tenant": "現在のテナント", + "generator-function": "ジェネレーター関数", + "test-generator-function": "ジェネレーター関数をテスト", + "generator": "ジェネレーター", + "test-filter-function": "フィルター関数をテスト", + "test-switch-function": "スイッチ関数をテスト", + "test-transformer-function": "トランスフォーマー関数をテスト", + "transformer": "トランスフォーマー", + "alarm-create-condition": "アラーム作成条件", + "test-condition-function": "条件関数をテスト", + "alarm-clear-condition": "アラームクリア条件", + "alarm-details-builder": "アラーム詳細ビルダー", + "test-details-function": "詳細関数をテスト", + "alarm-type": "アラームタイプ", + "select-entity-types": "エンティティタイプを選択", + "alarm-type-required": "アラームタイプは必須です。", + "alarm-severity": "アラーム重大度", + "alarm-severity-required": "アラーム重大度は必須です", + "alarm-severity-pattern": "アラーム重大度パターン", + "alarm-status-filter": "アラームステータスフィルター", + "alarm-status-list-empty": "アラームステータス一覧が空です", + "no-alarm-status-matching": "一致するアラームステータスが見つかりませんでした。", + "propagate": "関連エンティティへアラームを伝播", + "propagate-to-owner": "エンティティ所有者(顧客またはテナント)へアラームを伝播", + "propagate-to-tenant": "テナントへアラームを伝播", + "condition": "条件", + "details": "詳細", + "to-string": "文字列へ変換", + "test-to-string-function": "文字列変換関数をテスト", + "from-template": "送信元", + "from-template-required": "送信元は必須です", + "message-to-metadata": "メッセージからメタデータへ", + "metadata-to-message": "メタデータからメッセージへ", + "from-message": "メッセージから", + "from-metadata": "メタデータから", + "to-template": "宛先", + "to-template-required": "宛先テンプレートは必須です", + "mail-address-list-template-hint": "カンマ区切りのアドレス一覧。メタデータの値には ${metadataKey} を使用し、メッセージ本文の値には $[messageKey] を使用します", + "cc-template": "Cc", + "bcc-template": "Bcc", + "subject-template": "件名", + "subject-template-required": "件名テンプレートは必須です", + "body-template": "本文", + "body-template-required": "本文テンプレートは必須です", + "dynamic-mail-body-type": "動的メール本文タイプ", + "mail-body-type": "メール本文タイプ", + "body-type-template": "本文タイプテンプレート", + "reply-routing-configuration": "返信ルーティング設定", + "rpc-reply-routing-configuration-hint": "これらの構成パラメータは、返信を返送するために使用するサービス、セッション、リクエストを識別するメタデータキー名を指定します。", + "reply-routing-configuration-hint": "これらの構成パラメータは、返信を返送するために使用するサービスとリクエストを識別するメタデータキー名を指定します。", + "request-id-metadata-attribute": "リクエストID", + "service-id-metadata-attribute": "サービスID", + "session-id-metadata-attribute": "セッションID", + "timeout-sec": "秒単位のタイムアウト", + "timeout-required": "タイムアウトは必須です", + "min-timeout-message": "最小タイムアウト値は0のみ許可されています。", + "endpoint-url-pattern": "エンドポイントURLパターン", + "endpoint-url-pattern-required": "エンドポイントURLパターンは必須です", + "request-method": "リクエストメソッド", + "use-simple-client-http-factory": "シンプルクライアントHTTPファクトリーを使用", + "ignore-request-body": "リクエスト本文なし", + "parse-to-plain-text": "プレーンテキストに解析", + "parse-to-plain-text-hint": "選択すると、リクエスト本文のメッセージペイロードはJSON文字列からプレーンテキストに変換されます。例: msg = \"Hello,\\t\"world\"\" は Hello, \"world\" に解析されます", + "read-timeout": "ミリ秒単位の読み取りタイムアウト", + "read-timeout-hint": "値が0の場合、タイムアウトは無制限になります", + "max-parallel-requests-count": "並列リクエスト最大数", + "max-parallel-requests-count-hint": "値が0の場合、並列処理の制限なしを指定します", + "max-response-size": "最大レスポンスサイズ (in KB)", + "max-response-size-hint": "JSONやXMLペイロードなどのHTTPメッセージをデコードまたはエンコードする際に、データをバッファリングするために割り当てられる最大メモリ量", + "headers": "ヘッダー", + "headers-hint": "ヘッダー/値フィールドで、メタデータの値には ${metadataKey} を使用し、メッセージ本文の値には $[messageKey] を使用します", + "header": "ヘッダー", + "header-required": "ヘッダーは必須です", + "value": "値", + "value-required": "値は必須です", + "topic-pattern": "トピックパターン", + "key-pattern": "キーパターン", + "key-pattern-hint": "任意。有効なパーティション番号が指定されている場合、レコード送信時に使用されます。パーティションが指定されていない場合は、代わりにキーが使用されます。どちらも指定されていない場合は、ラウンドロビン方式でパーティションが割り当てられます。", + "topic-pattern-required": "トピックパターンは必須です", + "topic": "トピック", + "topic-required": "トピックは必須です", + "bootstrap-servers": "ブートストラップサーバー", + "bootstrap-servers-required": "ブートストラップサーバーの値は必須です", + "other-properties": "その他のプロパティ", + "key": "キー", + "key-required": "キーは必須です", + "retries": "失敗時の自動再試行回数", + "min-retries-message": "最小再試行回数は0のみ許可されています。", + "batch-size-bytes": "生成するバッチサイズ(バイト)", + "min-batch-size-bytes-message": "最小バッチサイズは0のみ許可されています。", + "linger-ms": "ローカルでバッファリングする時間(ms)", + "min-linger-ms-message": "最小値は0 msのみ許可されています。", + "buffer-memory-bytes": "クライアントバッファの最大サイズ(バイト)", + "min-buffer-memory-message": "最小バッファサイズは0のみ許可されています。", + "memory-buffer-size-range": "メモリバッファサイズは0〜{{max}} KBの範囲である必要があります", + "acks": "確認応答数", + "topic-arn-pattern": "トピックARNパターン", + "topic-arn-pattern-required": "トピックARNパターンは必須です", + "aws-access-key-id": "AWSアクセスキーID", + "aws-access-key-id-required": "AWSアクセスキーIDは必須です", + "aws-secret-access-key": "AWSシークレットアクセスキー", + "aws-secret-access-key-required": "AWSシークレットアクセスキーは必須です", + "aws-region": "AWSリージョン", + "aws-region-required": "AWSリージョンは必須です", + "exchange-name-pattern": "エクスチェンジ名パターン", + "routing-key-pattern": "ルーティングキーパターン", + "message-properties": "メッセージプロパティ", + "host": "ホスト", + "host-required": "ホストは必須です", + "port": "ポート", + "port-required": "ポートは必須です", + "port-range": "ポートは1〜65535の範囲である必要があります。", + "virtual-host": "仮想ホスト", + "username": "ユーザー名", + "password": "パスワード", + "automatic-recovery": "自動リカバリー", + "connection-timeout-ms": "接続タイムアウト(ms)", + "min-connection-timeout-ms-message": "最小値は0 msのみ許可されています。", + "handshake-timeout-ms": "ハンドシェイクタイムアウト(ms)", + "min-handshake-timeout-ms-message": "最小値は0 msのみ許可されています。", + "client-properties": "クライアントプロパティ", + "queue-url-pattern": "キューURLパターン", + "queue-url-pattern-required": "キューURLパターンは必須です", + "delay-seconds": "遅延(秒)", + "min-delay-seconds-message": "最小値は0秒のみ許可されています。", + "max-delay-seconds-message": "最大値は900秒のみ許可されています。", + "name": "名前", + "name-required": "名前は必須です。", + "queue-type": "キュータイプ", + "sqs-queue-standard": "標準", + "sqs-queue-fifo": "FIFO", + "gcp-project-id": "GCPプロジェクトID", + "gcp-project-id-required": "GCPプロジェクトIDは必須です", + "gcp-service-account-key": "GCPサービスアカウントキー ファイル", + "gcp-service-account-key-required": "GCPサービスアカウントキー ファイルは必須です", + "pubsub-topic-name": "トピック名", + "pubsub-topic-name-required": "トピック名は必須です", + "message-attributes": "メッセージ属性", + "message-attributes-hint": "名前/値フィールドで、メタデータから値を取得するには ${metadataKey} を使用し、メッセージ本文から値を取得するには $[messageKey] を使用します", + "connect-timeout": "接続タイムアウト(秒単位)", + "connect-timeout-required": "接続タイムアウトは必須です。", + "connect-timeout-range": "接続タイムアウトは1から200の範囲内である必要があります。", + "client-id": "クライアントID", + "client-id-hint": "ヒント:オプションです。空白のままにすると自動生成されます。クライアントIDを指定する場合は注意してください。ほとんどのMQTTブローカーは同じクライアントIDで複数の接続を許可しません。そのようなブローカーに接続するには、MQTTクライアントIDが一意である必要があります。プラットフォームがマイクロサービスモードで動作している場合、ルールノードのコピーが各マイクロサービスで起動されます。これにより同じIDを持つMQTTクライアントが複数作成され、ルールノードの失敗を引き起こす可能性があります。このような失敗を回避するには、以下の\"クライアントIDにサービスIDをサフィックスとして追加\"オプションを有効にしてください。", + "append-client-id-suffix": "クライアントIDにサービスIDをサフィックスとして追加", + "client-id-suffix-hint": "ヒント:オプションです。\"クライアントID\"を明示的に指定した場合に適用されます。選択すると、サービスIDがサフィックスとしてクライアントIDに追加されます。プラットフォームがマイクロサービスモードで動作している場合の失敗を回避するのに役立ちます。", + "device-id": "デバイスID", + "device-id-required": "デバイスIDは必須です。", + "clean-session": "クリーンセッション", + "enable-ssl": "SSLを有効化", + "credentials": "認証情報", + "credentials-type": "認証情報タイプ", + "credentials-type-required": "認証情報タイプは必須です。", + "credentials-anonymous": "匿名", + "credentials-basic": "ベーシック", + "credentials-pem": "PEM", + "credentials-pem-hint": "少なくともサーバーCA証明書ファイル、またはクライアント証明書ファイルとクライアント秘密鍵ファイルのペアが必要です", + "credentials-sas": "共有アクセス署名", + "sas-key": "SASキー", + "sas-key-required": "SASキーは必須です。", + "hostname": "ホスト名", + "hostname-required": "ホスト名は必須です。", + "azure-ca-cert": "CA証明書ファイル", + "username-required": "ユーザー名は必須です。", + "password-required": "パスワードは必須です。", + "ca-cert": "CA証明書ファイル", + "private-key": "秘密鍵ファイル", + "cert": "証明書ファイル", + "no-file": "ファイルが選択されていません。", + "drop-file": "ファイルをドロップするか、クリックしてファイルを選択してアップロードしてください。", + "private-key-password": "秘密鍵のパスワード", + "use-system-smtp-settings": "システムのSMTP設定を使用", + "use-metadata-dynamic-interval": "動的間隔を使用", + "metadata-dynamic-interval-hint": "間隔開始と間隔終了の入力フィールドはテンプレート化をサポートします。置換されるテンプレート値はミリ秒で設定する必要があります。メッセージから値を抽出するには $[messageKey] を使用し、メタデータから値を抽出するには ${metadataKey} を使用します。", + "use-metadata-interval-patterns-hint": "選択すると、ルールノードは間隔がミリ秒であるものとして、メッセージのメタデータまたはデータから開始/終了間隔パターンを使用します。", + "use-message-alarm-data": "メッセージのアラームデータを使用", + "overwrite-alarm-details": "アラーム詳細を上書き", + "use-alarm-severity-pattern": "アラーム重大度パターンを使用", + "check-all-keys": "指定したすべてのフィールドが存在することを確認", + "check-all-keys-hint": "選択すると、指定したすべてのキーがメッセージデータとメタデータに存在することを確認します。", + "check-relation-to-specific-entity": "特定エンティティとのリレーションを確認", + "check-relation-to-specific-entity-tooltip": "有効にすると、特定のエンティティとのリレーションの存在を確認します。それ以外の場合は、任意のエンティティとのリレーションの存在を確認します。どちらの場合も、リレーション検索は設定された方向とタイプに基づきます。", + "check-relation-hint": "方向とリレーションタイプに基づき、特定エンティティまたは任意のエンティティへのリレーションの存在を確認します。", + "delete-relation-with-specific-entity": "特定エンティティとのリレーションを削除", + "delete-relation-with-specific-entity-hint": "有効にすると、1つの特定エンティティとのリレーションのみを削除します。それ以外の場合は、一致するすべてのエンティティとのリレーションが削除されます。", + "delete-relation-hint": "受信メッセージのオリジネーターから、方向とタイプに基づいて、指定したエンティティまたはエンティティ一覧へのリレーションを削除します。", + "remove-current-relations": "現在のリレーションを削除", + "remove-current-relations-hint": "方向とタイプに基づいて、受信メッセージのオリジネーターから現在のリレーションを削除します。", + "change-originator-to-related-entity": "オリジネーターを関連エンティティに変更", + "change-originator-to-related-entity-hint": "送信されたメッセージを別のエンティティからのメッセージとして処理するために使用します。", + "start-interval": "間隔開始", + "end-interval": "間隔終了", + "start-interval-required": "間隔開始は必須です。", + "end-interval-required": "間隔終了は必須です。", + "smtp-protocol": "SMTPプロトコル", + "smtp-host": "SMTPホスト", + "smtp-host-required": "SMTPホストは必須です。", + "smtp-port": "SMTPポート", + "smtp-port-required": "SMTPポートを指定する必要があります。", + "smtp-port-range": "SMTPポートは1〜65535の範囲である必要があります。", + "timeout-msec": "タイムアウト (msec)", + "min-timeout-msec-message": "最小値は0 msのみ許可されています。", + "enter-username": "ユーザー名を入力", + "enter-password": "パスワードを入力", + "enable-tls": "TLSを有効化", + "tls-version": "TLSバージョン", + "enable-proxy": "プロキシを有効化", + "use-system-proxy-properties": "システムのプロキシプロパティを使用", + "proxy-host": "プロキシホスト", + "proxy-host-required": "プロキシホストは必須です。", + "proxy-port": "プロキシポート", + "proxy-port-required": "プロキシポートは必須です。", + "proxy-port-range": "プロキシポートは1〜65535の範囲である必要があります。", + "proxy-user": "プロキシユーザー", + "proxy-password": "プロキシパスワード", + "proxy-scheme": "プロキシスキーム", + "numbers-to-template": "送信先電話番号テンプレート", + "numbers-to-template-required": "送信先電話番号テンプレートは必須です", + "numbers-to-template-hint": "カンマ区切りの電話番号。メタデータの値には ${metadataKey} を使用し、メッセージ本文の値には $[messageKey] を使用します", + "sms-message-template": "SMSメッセージテンプレート", + "sms-message-template-required": "SMSメッセージテンプレートは必須です", + "use-system-sms-settings": "システムのSMSプロバイダー設定を使用", + "min-period-0-seconds-message": "最小期間は0秒のみ許可されます。", + "max-pending-messages": "保留中メッセージの最大数", + "max-pending-messages-required": "保留中メッセージの最大数は必須です。", + "max-pending-messages-range": "保留中メッセージの最大数は1〜100000の範囲である必要があります。", + "originator-types-filter": "発生元タイプフィルター", + "interval-seconds": "秒単位の間隔", + "interval-seconds-required": "間隔は必須です。", + "int-range": "値は最大整数制限 (2147483648) を超えないようにしてください", + "min-interval-seconds-message": "最小間隔は1秒です。", + "output-timeseries-key-prefix": "出力時系列キープレフィックス", + "output-timeseries-key-prefix-required": "出力時系列キープレフィックスは必須です。", + "separator-hint": "フィールド入力を完了するには \"Enter\" を押してください。", + "select-details": "詳細を選択", + "entity-details-id": "ID", + "entity-details-title": "タイトル", + "entity-details-country": "国", + "entity-details-state": "都道府県", + "entity-details-city": "市区町村", + "entity-details-zip": "郵便番号", + "entity-details-address": "住所", + "entity-details-address2": "住所2", + "entity-details-additional_info": "追加情報", + "entity-details-phone": "電話番号", + "entity-details-email": "Email", + "email-sender": "Email送信者", + "fields-to-check": "チェックするフィールド", + "add-detail": "詳細を追加", + "check-all-keys-tooltip": "有効にすると、受信メッセージとそのメタデータ内の、メッセージおよびメタデータのフィールド名に列挙されたすべてのフィールドの存在を確認します。", + "fields-to-check-hint": "\"Enter\" を押してフィールド名の入力を完了します。複数のフィールド名に対応しています。", + "entity-details-list-empty": "少なくとも1つの詳細を選択してください。", + "alarm-status": "アラームステータス", + "alarm-required": "少なくとも1つのアラームステータスを選択してください。", + "no-entity-details-matching": "一致するエンティティ詳細が見つかりませんでした。", + "custom-table-name": "カスタムテーブル名", + "custom-table-name-required": "テーブル名は必須です", + "custom-table-hint": "テーブルはCassandraクラスターに作成されている必要があり、共通のTBテーブルへのデータ挿入を避けるために、名前はプレフィックス 'cs_tb_' で始まる必要があります。ここには 'cs_tb_' プレフィックスなしでテーブル名を入力してください。", + "message-field": "メッセージフィールド", + "message-field-required": "メッセージフィールドは必須です。", + "table-col": "テーブル列", + "table-col-required": "テーブル列は必須です。", + "latitude-field-name": "緯度フィールド名", + "longitude-field-name": "経度フィールド名", + "latitude-field-name-required": "緯度フィールド名は必須です。", + "longitude-field-name-required": "経度フィールド名は必須です。", + "fetch-perimeter-info-from-metadata": "メタデータからペリメータ情報を取得", + "fetch-perimeter-info-from-metadata-tooltip": "ペリメータタイプが 'Polygon' に設定されている場合、メタデータフィールド '{{perimeterKeyName}}' の値は、追加の解析を行わずにペリメータ定義として設定されます。それ以外の場合、ペリメータタイプが 'Circle' に設定されていると、'{{perimeterKeyName}}' メタデータフィールドの値が解析され、円のペリメータ定義に使用する 'latitude'、'longitude'、'radius'、'radiusUnit' フィールドが抽出されます。", + "perimeter-key-name": "ペリメータキー名", + "perimeter-key-name-hint": "ペリメータ情報を含むメタデータフィールド名。", + "perimeter-key-name-required": "ペリメータキー名は必須です。", + "perimeter-circle": "円", + "perimeter-polygon": "ポリゴン", + "perimeter-type": "ペリメータタイプ", + "circle-center-latitude": "中心緯度", + "circle-center-latitude-required": "中心緯度は必須です。", + "circle-center-longitude": "中心経度", + "circle-center-longitude-required": "中心経度は必須です。", + "range-unit-meter": "メートル", + "range-unit-kilometer": "キロメートル", + "range-unit-foot": "フィート", + "range-unit-mile": "マイル", + "range-unit-nautical-mile": "海里", + "range-units": "範囲単位", + "range-units-required": "範囲単位は必須です。", + "range": "範囲", + "range-required": "範囲は必須です。", + "polygon-definition": "ポリゴン定義", + "polygon-definition-required": "ポリゴン定義は必須です。", + "polygon-definition-hint": "ポリゴンを手動で定義するには、次の形式を使用します: [[lat1,lon1],[lat2,lon2], ... ,[latN,lonN]]。", + "min-inside-duration": "最小内側滞在時間", + "min-inside-duration-value-required": "最小内側滞在時間は必須です", + "min-inside-duration-time-unit": "最小内側滞在時間の時間単位", + "min-outside-duration": "最小外側滞在時間", + "min-outside-duration-value-required": "最小外側滞在時間は必須です", + "min-outside-duration-time-unit": "最小外側滞在時間の時間単位", + "tell-failure-if-absent": "失敗を通知", + "tell-failure-if-absent-hint": "選択したキーのうち少なくとも1つが存在しない場合、送信メッセージは \"Failure\" を報告します。", + "get-latest-value-with-ts": "最新テレメトリ値のタイムスタンプを取得", + "get-latest-value-with-ts-hint": "選択した場合、最新テレメトリ値にはタイムスタンプも含まれます。例: \"temp\": \"{\"ts\":1574329385897, \"value\":42}\"", + "ignore-null-strings": "null文字列を無視", + "ignore-null-strings-hint": "選択した場合、ルールノードは値が空のエンティティフィールドを無視します。", + "add-metadata-key-values-as-kafka-headers": "メッセージメタデータのキー値ペアをKafkaレコードヘッダーに追加", + "add-metadata-key-values-as-kafka-headers-hint": "選択した場合、メッセージメタデータのキー値ペアが、事前定義された文字セットエンコーディングを使用するバイト配列として、送信レコードのヘッダーに追加されます。", + "charset-encoding": "文字セットエンコーディング", + "charset-encoding-required": "文字セットエンコーディングは必須です。", + "charset-us-ascii": "US-ASCII", + "charset-iso-8859-1": "ISO-8859-1", + "charset-utf-8": "UTF-8", + "charset-utf-16be": "UTF-16BE", + "charset-utf-16le": "UTF-16LE", + "charset-utf-16": "UTF-16", + "select-queue-hint": "キュー名はドロップダウンリストから選択するか、カスタム名を追加できます。", + "device-profile-node-hint": "アラーム状態評価の継続性を確保するために、持続時間や繰り返し条件がある場合に有用です。", + "persist-alarm-rules": "アラームルールの状態を永続化", + "persist-alarm-rules-hint": "有効にすると、ルールノードは処理状態をデータベースに保存します。", + "fetch-alarm-rules": "アラームルールの状態を取得", + "fetch-alarm-rules-hint": "有効にすると、ルールノードは初期化時に処理状態を復元し、サーバー再起動後でもアラームが発生するようにします。無効の場合、デバイスから最初のメッセージが到着したときに状態が復元されます。", + "input-value-key": "入力値キー", + "input-value-key-required": "入力値キーは必須です。", + "output-value-key": "出力値キー", + "output-value-key-required": "出力値キーは必須です。", + "number-of-digits-after-floating-point": "小数点以下の桁数", + "number-of-digits-after-floating-point-range": "小数点以下の桁数は0〜15の範囲である必要があります。", + "failure-if-delta-negative": "デルタが負の場合は失敗を通知", + "failure-if-delta-negative-tooltip": "デルタ値が負の場合、ルールノードはメッセージ処理を失敗にします。", + "use-caching": "キャッシュを使用", + "use-caching-tooltip": "ルールノードはパフォーマンス向上のため、受信メッセージから届く \"{{inputValueKey}}\" の値をキャッシュします。注意: 別の場所で \"{{inputValueKey}}\" の値を変更しても、キャッシュは更新されません。", + "add-time-difference-between-readings": "\"{{inputValueKey}}\" の読み取り間の時間差を追加", + "add-time-difference-between-readings-tooltip": "有効にすると、ルールノードは送信メッセージに \"{{periodValueKey}}\" を追加します。", + "period-value-key": "期間値キー", + "period-value-key-required": "期間値キーは必須です。", + "general-pattern-hint": "メタデータの値には ${metadataKey}、メッセージ本文の値には $[messageKey] を使用します。", + "alarm-severity-pattern-hint": "メタデータの値には ${metadataKey}、メッセージ本文の値には $[messageKey] を使用します。アラーム重大度はシステム(CRITICAL、MAJOR など)である必要があります。", + "output-node-name-hint": "ルールノード名 は、出力メッセージの リレーションタイプ に対応し、呼び出し元ルールチェーン内で他のルールノードへメッセージを転送するために使用されます。", + "use-server-ts": "サーバータイムスタンプを使用", + "use-server-ts-hint": "明示的なタイムスタンプがない時系列データに対して、サーバーの現在のタイムスタンプを使用します。これは、複数のソースからのメッセージを処理する場合や、メッセージが順不同で到着した場合でも、適切な順序を維持するのに役立ちます。", + "kv-map-pattern-hint": "すべての入力フィールドはテンプレート化をサポートします。$[messageKey] を使用してメッセージから値を抽出し、${metadataKey} を使用してメタデータから値を抽出します。", + "kv-map-single-pattern-hint": "入力フィールドはテンプレート化をサポートします。$[messageKey] を使用してメッセージから値を抽出し、${metadataKey} を使用してメタデータから値を抽出します。", + "shared-scope": "共有スコープ", + "server-scope": "サーバースコープ", + "client-scope": "クライアントスコープ", + "attribute-type": "属性", + "attribute-type-description": "データベースから属性値を取得", + "attribute-type-result-description": "結果をデータベース内のエンティティ属性として保存", + "constant-type": "定数", + "constant-type-description": "定数値を定義", + "time-series-type": "時系列", + "time-series-type-description": "データベースから最新の時系列値を取得", + "time-series-type-result-description": "結果をエンティティの時系列としてデータベースに保存", + "message-body-type": "メッセージ", + "message-body-type-description": "受信メッセージから引数値を取得", + "message-body-type-result-description": "結果を送信メッセージに追加", + "message-metadata-type": "メタデータ", + "message-metadata-type-description": "受信メッセージのメタデータから引数値を取得", + "message-metadata-result-description": "結果を送信メッセージのメタデータに追加", + "argument-tile": "引数", + "no-arguments-prompt": "引数が設定されていません", + "result-title": "結果", + "functions-field-input": "関数", + "no-option-found": "オプションが見つかりません", + "argument-source-field-input": "ソース", + "argument-source-field-input-required": "引数ソースは必須です。", + "argument-key-field-input": "キー", + "argument-key-field-input-required": "引数キーは必須です。", + "constant-value-field-input": "定数値", + "constant-value-field-input-required": "定数値は必須です。", + "attribute-scope-field-input": "属性スコープ", + "attribute-scope-field-input-required": "属性スコープは必須です。", + "default-value-field-input": "デフォルト値", + "type-field-input": "タイプ", + "type-field-input-required": "タイプは必須です。", + "key-field-input": "キー", + "add-entity-type": "エンティティタイプを追加", + "add-device-profile": "デバイスプロファイルを追加", + "key-field-input-required": "キーは必須です。", + "number-floating-point-field-input": "小数点以下の桁数", + "number-floating-point-field-input-hint": "0 を指定すると結果を整数に変換します", + "add-to-message-field-input": "メッセージに追加", + "add-to-metadata-field-input": "メタデータに追加", + "custom-expression-field-input": "数式", + "custom-expression-field-input-required": "数式は必須です", + "custom-expression-field-input-hint": "評価する数式を指定します。デフォルトの式は華氏を摂氏に変換する方法を示します", + "retained-message": "保持メッセージ", + "attributes-mapping": "属性マッピング", + "latest-telemetry-mapping": "最新テレメトリマッピング", + "add-mapped-attribute-to": "マッピングされた属性の追加先", + "add-mapped-latest-telemetry-to": "マッピングされた最新テレメトリの追加先", + "add-mapped-fields-to": "マッピングされたフィールドの追加先", + "add-selected-details-to": "選択した詳細の追加先", + "clear-selected-types": "選択したタイプをクリア", + "clear-selected-details": "選択した詳細をクリア", + "clear-selected-fields": "選択したフィールドをクリア", + "clear-selected-keys": "選択したキーをクリア", + "geofence-configuration": "ジオフェンス設定", + "coordinate-field-names": "座標フィールド名", + "coordinate-field-hint": "ルールノードはメッセージから指定されたフィールドの取得を試みます。存在しない場合はメタデータから参照します。", + "presence-monitoring-strategy": "在圏監視戦略", + "presence-monitoring-strategy-on-first-message": "最初のメッセージ時", + "presence-monitoring-strategy-on-each-message": "メッセージごと", + "presence-monitoring-strategy-on-first-message-hint": "前回の在圏ステータス 'Entered' または 'Left' の更新から、設定された最小時間が経過した後の最初のメッセージで、在圏ステータス 'Inside' または 'Outside' を報告します。", + "presence-monitoring-strategy-on-each-message-hint": "在圏ステータス 'Entered' または 'Left' の更新後、各メッセージで在圏ステータス 'Inside' または 'Outside' を報告します。", + "fetch-credentials-to": "資格情報の取得先", + "add-originator-attributes-to": "発生元属性の追加先", + "originator-attributes": "発生元属性", + "fetch-latest-telemetry-with-timestamp": "最新テレメトリをタイムスタンプ付きで取得", + "fetch-latest-telemetry-with-timestamp-tooltip": "選択した場合、最新テレメトリ値はタイムスタンプ付きで送信メタデータに追加されます。例: \"{{latestTsKeyName}}\": \"{\"ts\":1574329385897, \"value\":42}\"", + "tell-failure": "属性が不足している場合は失敗を通知", + "tell-failure-tooltip": "選択したキーのうち少なくとも1つが存在しない場合、送信メッセージは \"Failure\" を報告します。", + "created-time": "作成時刻", + "chip-help": "{{inputName}} の入力を完了するには 'Enter' を押してください。 \n{{inputName}} を削除するには 'Backspace' を押してください。 \n複数の値に対応しています。", + "detail": "詳細", + "field-name": "フィールド名", + "device-profile": "デバイスプロファイル", + "entity-type": "エンティティタイプ", + "message-type": "メッセージタイプ", + "timeseries-key": "時系列キー", + "type": "タイプ", + "first-name": "名", + "last-name": "姓", + "label": "ラベル", + "originator-fields-mapping": "発生元フィールドマッピング", + "add-mapped-originator-fields-to": "マッピングされた発生元フィールドの追加先", + "fields": "フィールド", + "skip-empty-fields": "空のフィールドをスキップ", + "skip-empty-fields-tooltip": "値が空のフィールドは、出力メッセージ/出力メタデータに追加されません。", + "fetch-interval": "取得間隔", + "fetch-strategy": "取得戦略", + "fetch-timeseries-from-to": "{{startInterval}} {{startIntervalTimeUnit}} 前から {{endInterval}} {{endIntervalTimeUnit}} 前までの時系列を取得。", + "fetch-timeseries-from-to-invalid": "時系列の取得が無効です(\"間隔開始\" は \"間隔終了\" より小さい必要があります)。", + "use-metadata-dynamic-interval-tooltip": "選択すると、ルールノードはメッセージおよびメタデータのパターンに基づいて動的なインターバルの開始と終了を使用します。", + "all-mode-hint": "取得モード \"All\" を選択すると、ルールノードは設定可能なクエリパラメータを使用して取得間隔からテレメトリを取得します。", + "first-mode-hint": "取得モード \"First\" を選択すると、ルールノードは取得間隔の開始に最も近いテレメトリを取得します。", + "last-mode-hint": "取得モード \"Last\" を選択すると、ルールノードは取得間隔の終了に最も近いテレメトリを取得します。", + "ascending": "昇順", + "descending": "降順", + "min": "最小", + "max": "最大", + "average": "平均", + "sum": "合計", + "count": "件数", + "none": "なし", + "last-level-relation-tooltip": "選択すると、ルールノードは最大関係レベルで設定されたレベルでのみ関連エンティティを検索します。", + "last-level-device-relation-tooltip": "選択すると、ルールノードは最大関係レベルで設定されたレベルでのみ関連デバイスを検索します。", + "data-to-fetch": "取得するデータ", + "mapping-of-customers": "顧客のマッピング", + "map-fields-required": "すべてのマッピングフィールドは必須です。", + "attributes": "属性", + "related-device-attributes": "関連デバイス属性", + "add-selected-attributes-to": "選択した属性の追加先", + "device-profiles": "デバイスプロファイル", + "mapping-of-tenant": "テナントのマッピング", + "add-attribute-key": "属性キーを追加", + "message-template": "メッセージテンプレート", + "message-template-required": "メッセージテンプレートは必須です", + "use-system-slack-settings": "システムのSlack設定を使用", + "slack-api-token": "Slack APIトークン", + "slack-api-token-required": "Slack APIトークンは必須です", + "keys-mapping": "キーのマッピング", + "add-key": "キーを追加", + "recipients": "受信者", + "message-subject-and-content": "メッセージ件名と内容", + "template-rules-hint": "両方の入力フィールドはテンプレート化をサポートします。メッセージから値を抽出するには $[messageKey] を使用し、メッセージメタデータから値を抽出するには ${metadataKey} を使用します。", + "originator-customer-desc": "受信メッセージのオリジネーターの顧客を新しいオリジネーターとして使用します。", + "originator-tenant-desc": "現在のテナントを新しいオリジネーターとして使用します。", + "originator-related-entity-desc": "関連エンティティを新しいオリジネーターとして使用します。設定された関係タイプと方向に基づいて検索します。", + "originator-alarm-originator-desc": "アラームオリジネーターを新しいオリジネーターとして使用します。受信メッセージのオリジネーターがアラームエンティティの場合のみ。", + "originator-entity-by-name-pattern-desc": "DBから取得したエンティティを新しいオリジネーターとして使用します。エンティティタイプと指定された名前パターンに基づいて検索します。", + "email-from-template-hint": "メッセージから値を抽出するには $[messageKey] を使用し、メタデータから値を抽出するには ${metadataKey} を使用します。", + "recipients-block-main-hint": "カンマ区切りのアドレスリスト。すべての入力フィールドはテンプレート化をサポートします。メッセージから値を抽出するには $[messageKey] を使用し、メタデータから値を抽出するには ${metadataKey} を使用します。", + "forward-msg-default-rule-chain": "メッセージをオリジネーターのデフォルトルールチェーンへ転送", + "forward-msg-default-rule-chain-tooltip": "有効にすると、メッセージはオリジネーターのデフォルトルールチェーン(または、オリジネーターのエンティティプロファイルにデフォルトルールチェーンが定義されていない場合は設定のルールチェーン)に転送されます。", + "exclude-zero-deltas": "出力メッセージからゼロデルタを除外", + "exclude-zero-deltas-hint": "有効にすると、\"{{outputValueKey}}\" の出力キーは値が 0 ではない場合にのみ出力メッセージに追加されます。", + "exclude-zero-deltas-time-difference-hint": "有効にすると、\"{{outputValueKey}}\" と \"{{periodValueKey}}\" の出力キーは、\"{{outputValueKey}}\" の値が 0 ではない場合にのみ出力メッセージに追加されます。", + "search-direction-from": "発生元からターゲットエンティティへ", + "search-direction-to": "ターゲットエンティティから発生元へ", + "del-relation-direction-from": "発生元から", + "del-relation-direction-to": "発生元へ", + "target-entity": "ターゲットエンティティ", + "function-configuration": "関数設定", + "function-name": "関数名", + "function-name-required": "関数名は必須です。", + "qualifier": "修飾子", + "qualifier-hint": "修飾子が指定されていない場合、デフォルトの修飾子 \"$LATEST\" が使用されます。", + "aws-credentials": "AWS認証情報", + "connection-timeout": "接続タイムアウト", + "connection-timeout-required": "接続タイムアウトは必須です。", + "connection-timeout-min": "最小接続タイムアウトは0です。", + "connection-timeout-hint": "最初に接続を確立する際に、諦めてタイムアウトするまで待機する秒数。値が0の場合は無限を意味し、推奨されません。", + "request-timeout": "リクエストタイムアウト", + "request-timeout-required": "リクエストタイムアウトは必須です", + "request-timeout-min": "最小リクエストタイムアウトは0です", + "request-timeout-hint": "リクエストが完了するのを、諦めてタイムアウトするまで待機する秒数。値が0の場合は無限を意味し、推奨されません。", + "units": "単位", + "tell-failure-aws-lambda": "AWS Lambda関数の実行で例外が発生した場合は失敗を通知", + "tell-failure-aws-lambda-hint": "AWS Lambda関数の実行で例外が発生した場合、ルールノードはメッセージ処理を失敗にします。", + "basic-mode": "基本", + "advanced-mode": "詳細", + "save-time-series": { + "processing-settings": "処理設定", + "processing-settings-hint": "受信メッセージの処理方法を定義します。基本処理設定では事前設定された戦略を選択でき、高度な設定では各アクションごとに個別の処理戦略を選択できます。", + "advanced-settings-hint": "処理戦略を設定する際は注意してください。特定の組み合わせにより予期しない動作が発生する場合があります。", + "strategy": "戦略", + "deduplication-interval": "重複排除間隔", + "deduplication-interval-required": "重複排除間隔は必須です", + "deduplication-interval-min-max-range": "重複排除間隔は最小1秒、最大1日である必要があります", + "strategy-type": { + "every-message": "メッセージごとに", + "skip": "スキップ", + "deduplicate": "重複排除", + "web-sockets-only": "WebSocketsのみ" + }, + "time-series": "時系列", + "latest": "最新値", + "web-sockets": "WebSockets" + }, + "save-attribute": { + "processing-settings": "処理設定", + "processing-settings-hint": "受信メッセージの処理方法を定義します。基本処理設定では事前設定された戦略を選択でき、高度な設定では各アクションごとに個別の処理戦略を選択できます。", + "advanced-settings-hint": "処理戦略を設定する際は注意してください。特定の組み合わせにより予期しない動作が発生する場合があります。", + "strategy": "戦略", + "deduplication-interval": "重複排除間隔", + "deduplication-interval-required": "重複排除間隔は必須です", + "deduplication-interval-min-max-range": "重複排除間隔は最小1秒、最大1日である必要があります", + "scope": "スコープ", + "strategy-type": { + "every-message": "メッセージごとに", + "skip": "スキップ", + "deduplicate": "重複排除", + "web-sockets-only": "WebSocketsのみ" + }, + "attributes": "属性" + }, + "key-val": { + "key": "キー", + "value": "値", + "see-examples": "例を見る。", + "remove-entry": "エントリを削除", + "remove-mapping-entry": "マッピングエントリを削除", + "add-mapping-entry": "マッピングを追加", + "add-entry": "エントリを追加", + "copy-key-values-from": "キー値をコピー元", + "delete-key-values": "キー値を削除", + "delete-key-values-from": "キー値を削除元", + "at-least-one-key-error": "少なくとも1つのキーを選択してください。", + "unique-key-value-pair-error": "'{{keyText}}' は '{{valText}}' と異なる必要があります!" + }, + "mail-body-types": { + "plain-text": "プレーンテキスト", + "html": "HTML", + "dynamic": "動的", + "use-body-type-template": "本文タイプテンプレートを使用", + "plain-text-description": "特別なスタイルや書式設定のない、シンプルな非装飾テキストです。", + "html-text-description": "メール本文で書式設定、リンク、画像にHTMLタグを使用できます。", + "dynamic-text-description": "テンプレート化機能に基づいて、プレーンテキストまたはHTMLの本文タイプを動的に使用できます。", + "after-template-evaluation-hint": "テンプレート評価後の値は、HTMLの場合は true、プレーンテキストの場合は false である必要があります。" + }, + "ai": { + "ai-model": "AIモデル", + "model": "モデル", + "ai-model-hint": "このルールノードが送信するリクエストを処理する事前設定済みのAIモデルを選択するか、\"新規作成\"を使用して新しいモデルを設定します。", + "prompt-settings": "プロンプト設定", + "prompt-settings-hint": "オプションのシステムプロンプトはAIの一般的な役割と制約を設定し、ユーザープロンプトは実行する具体的なタスクを定義します。両方のフィールドはテンプレート化もサポートします。", + "system-prompt": "システムプロンプト", + "system-prompt-max-length": "システムプロンプトは500000文字以下である必要があります。", + "system-prompt-blank": "システムプロンプトを空欄にできません。", + "user-prompt": "ユーザープロンプト", + "user-prompt-required": "ユーザープロンプトは必須です。", + "user-prompt-max-length": "ユーザープロンプトは500000文字以下である必要があります。", + "user-prompt-blank": "ユーザープロンプトを空欄にできません。", + "response-format": "レスポンス形式", + "response-text": "テキスト", + "response-json": "JSON", + "response-json-schema": "JSON Schema", + "response-format-hint-TEXT": "モデルが任意のテキストを生成できるようにします。生成結果は有効なJSONオブジェクトである場合も、そうでない場合もあります。出力が有効なJSONオブジェクトでない場合、自動的に \"response\" キー配下のJSONオブジェクトとしてラップされます。", + "response-format-hint-JSON": "モデルは有効なJSONを生成する必要があります。出力が有効なJSONオブジェクトでない場合、自動的に \"response\" キー配下のJSONオブジェクトとしてラップされます。", + "response-format-hint-JSON_SCHEMA": "モデルは、提供されたスキーマで定義された特定の構造とデータ型に一致するJSONを生成する必要があります。出力が有効なJSONオブジェクトでない場合、自動的に \"response\" キー配下のJSONオブジェクトとしてラップされます。", + "response-json-schema-hint": "有効なJSON Schemaは任意に入力できますが、このルールノードはその機能の限定されたサブセットのみをサポートします。詳細はノードドキュメントを参照してください。", + "response-json-schema-required": "JSON Schemaは必須です", + "advanced-settings": "詳細設定", + "timeout": "タイムアウト", + "timeout-hint": "リクエストが終了する前にAIモデルからの応答を待機する最大時間 \nを指定します。", + "timeout-required": "タイムアウトは必須です", + "timeout-validation": "1秒から10分の範囲である必要があります。", + "force-acknowledgement": "確認応答を強制", + "force-acknowledgement-hint": "有効にすると、受信メッセージは直ちに確認応答されます。その後、モデルの応答は別の新しいメッセージとしてキューに追加されます。", + "ai-resources": "AIリソース" + } + }, + "timezone": { + "timezone": "タイムゾーン", + "select-timezone": "タイムゾーンを選択", + "no-timezones-matching": "'{{timezone}}' に一致するタイムゾーンが見つかりませんでした。", + "timezone-required": "タイムゾーンは必須です。", + "browser-time": "ブラウザー時刻" + }, + "queue": { + "queue-name": "キュー", + "no-queues-found": "キューが見つかりません。", + "no-queues-matching": "'{{queue}}' に一致するキューが見つかりませんでした。", + "select-name": "キュー名を選択", + "name": "名前", + "name-required": "キュー名は必須です!", + "name-unique": "キュー名が一意ではありません!", + "name-pattern": "キュー名に ASCII 英数字、'.'、'_'、'-' 以外の文字が含まれています!", + "queue-required": "キューは必須です!", + "topic-required": "キュートピックは必須です!", + "poll-interval-required": "ポーリング間隔は必須です!", + "poll-interval-min-value": "ポーリング間隔の値は 1 未満にできません", + "partitions-required": "パーティションは必須です!", + "partitions-min-value": "パーティション数は 1 未満にできません", + "pack-processing-timeout-required": "処理タイムアウトは必須です", + "pack-processing-timeout-min-value": "処理タイムアウトの値は 1 未満にできません", + "batch-size-required": "バッチサイズは必須です!", + "batch-size-min-value": "バッチサイズの値は 1 未満にできません", + "retries-required": "リトライ回数は必須です!", + "retries-min-value": "リトライ回数は負にできません", + "failure-percentage-required": "失敗率は必須です!", + "failure-percentage-min-value": "失敗率の値は 0 未満にできません", + "failure-percentage-max-value": "失敗率の値は 100 を超えられません", + "pause-between-retries-required": "リトライ間の待機時間は必須です!", + "pause-between-retries-min-value": "リトライ間の待機時間は 1 未満にできません", + "max-pause-between-retries-required": "リトライ間の最大待機時間は必須です!", + "max-pause-between-retries-min-value": "リトライ間の最大待機時間は 1 未満にできません", + "submit-strategy-type-required": "送信戦略タイプは必須です!", + "processing-strategy-type-required": "処理戦略タイプは必須です!", + "queues": "キュー", + "selected-queues": "{ count, plural, =1 {キュー 1 件} other {キュー # 件} } を選択", + "delete-queue-title": "キュー '{{queueName}}' を削除してもよろしいですか?", + "delete-queues-title": "{ count, plural, =1 {キュー 1 件} other {キュー # 件} } を削除してもよろしいですか?", + "delete-queue-text": "注意: 確認後、キューと関連データはすべて復元できなくなります。", + "delete-queues-text": "確認後、選択したすべてのキューが削除され、アクセスできなくなります。", + "search": "キューを検索", + "add": "キューを追加", + "details": "キュー詳細", + "topic": "トピック", + "submit-settings": "送信設定", + "submit-strategy": "戦略タイプ *", + "grouping-parameter": "グルーピングパラメータ", + "processing-settings": "リトライ処理設定", + "processing-strategy": "処理タイプ *", + "retries-settings": "リトライ設定", + "polling-settings": "ポーリング設定", + "batch-processing": "バッチ処理", + "poll-interval": "ポーリング間隔", + "partitions": "パーティション", + "immediate-processing": "即時処理", + "consumer-per-partition": "各コンシューマーごとにメッセージをポーリング", + "consumer-per-partition-hint": "各パーティションごとに個別のコンシューマーを有効化します", + "duplicate-msg-to-all-partitions": "すべてのパーティションにメッセージを複製", + "processing-timeout": "処理時間(ms)", + "batch-size": "バッチサイズ", + "retries": "リトライ回数(0 – 無制限)", + "failure-percentage": "リトライをスキップする失敗メッセージ率(%)", + "pause-between-retries": "リトライ間隔(秒)", + "max-pause-between-retries": "追加リトライ間隔(秒)", + "delete": "キューを削除", + "copyId": "キューIDをコピー", + "idCopiedMessage": "キューIDがクリップボードにコピーされました", + "description": "説明", + "description-hint": "このテキストは、選択した戦略の代わりにキューの説明として表示されます", + "alt-description": "送信戦略: {{submitStrategy}}, 処理戦略: {{processingStrategy}}", + "custom-properties": "カスタムプロパティ", + "custom-properties-hint": "カスタムキュー(トピック)作成プロパティ。例: 'retention.ms:604800000;retention.bytes:1048576000'", + "strategies": { + "sequential-by-originator-label": "オリジネーター別に順次処理", + "sequential-by-originator-hint": "例: デバイスAの新しいメッセージは、デバイスAの前のメッセージがACKされるまで送信されません", + "sequential-by-tenant-label": "テナント別に順次処理", + "sequential-by-tenant-hint": "例: テナントAの新しいメッセージは、テナントAの前のメッセージがACKされるまで送信されません", + "sequential-label": "順次処理", + "sequential-hint": "新しいメッセージは、前のメッセージがACKされるまで送信されません", + "burst-label": "バースト", + "burst-hint": "すべてのメッセージは到着した順にルールチェーンへ送信されます", + "batch-label": "バッチ", + "batch-hint": "新しいバッチは、前のバッチがACKされるまで送信されません", + "skip-all-failures-label": "すべての失敗をスキップ", + "skip-all-failures-hint": "すべての失敗を無視します", + "skip-all-failures-and-timeouts-label": "すべての失敗とタイムアウトをスキップ", + "skip-all-failures-and-timeouts-hint": "すべての失敗とタイムアウトを無視します", + "retry-all-label": "すべて再試行", + "retry-all-hint": "処理パック内のすべてのメッセージを再試行します", + "retry-failed-label": "失敗を再試行", + "retry-failed-hint": "処理パック内の失敗したメッセージをすべて再試行します", + "retry-timeout-label": "タイムアウトを再試行", + "retry-timeout-hint": "処理パック内のタイムアウトしたメッセージをすべて再試行します", + "retry-failed-and-timeout-label": "失敗とタイムアウトを再試行", + "retry-failed-and-timeout-hint": "処理パック内の失敗したメッセージとタイムアウトしたメッセージをすべて再試行します" + } + }, + "queue-statistics": { + "queue-statistics": "キュー統計", + "no-queue-statistics-matching": "'{{entity}}' に一致するキュー統計が見つかりませんでした。", + "queue-statistics-required": "キュー統計は必須です。", + "list-of-queue-statistics": "{ count, plural, =1 {キュー統計 1 件} other {キュー統計 # 件の一覧} }", + "selected-queue-statistics": "{ count, plural, =1 {キュー統計 1 件} other {キュー統計 # 件} } を選択", + "no-queue-statistics-text": "キュー統計が見つかりません", + "queue-statistics-starts-with": "名前が '{{prefix}}' で始まるキュー統計" + }, + "server-error": { + "general": "一般サーバーエラー", + "authentication": "認証エラー", + "jwt-token-expired": "JWTトークンの有効期限切れ", + "tenant-trial-expired": "テナントのトライアル期限切れ", + "credentials-expired": "認証情報の有効期限切れ", + "permission-denied": "権限がありません", + "invalid-arguments": "引数が無効です", + "bad-request-params": "リクエストパラメータが不正です", + "item-not-found": "項目が見つかりません", + "too-many-requests": "リクエストが多すぎます", + "too-many-updates": "更新が多すぎます" + }, + "tenant": { + "tenant": "テナント", + "tenants": "テナント", + "management": "テナント管理", + "add": "テナントを追加", + "admins": "管理者", + "manage-tenant-admins": "テナント管理者を管理", + "delete": "テナントを削除", + "add-tenant-text": "新しいテナントを追加", + "no-tenants-text": "テナントが見つかりません", + "tenant-details": "テナント詳細", + "title-max-length": "タイトルは 256 未満にしてください", + "delete-tenant-title": "テナント '{{tenantTitle}}' を削除してもよろしいですか?", + "delete-tenant-text": "注意: 確認後、テナントと関連データはすべて復元できなくなります。", + "delete-tenants-title": "{ count, plural, =1 {テナント 1 件} other {テナント # 件} } を削除してもよろしいですか?", + "delete-tenants-action-title": "{ count, plural, =1 {テナント 1 件} other {テナント # 件} } を削除", + "delete-tenants-text": "注意: 確認後、選択したすべてのテナントが削除され、関連データはすべて復元できなくなります。", + "title": "タイトル", + "title-required": "タイトルは必須です。", + "description": "説明", + "details": "詳細", + "events": "イベント", + "copyId": "テナントIDをコピー", + "idCopiedMessage": "テナントIDがクリップボードにコピーされました", + "select-tenant": "テナントを選択", + "no-tenants-matching": "'{{entity}}' に一致するテナントが見つかりませんでした。", + "tenant-required": "テナントは必須です", + "search": "テナントを検索", + "selected-tenants": "{ count, plural, =1 {テナント 1 件} other {テナント # 件} } を選択", + "isolated-tb-rule-engine": "分離された ThingsBoard ルールエンジン キューを使用", + "isolated-tb-rule-engine-details": "各テナントに専用のルールエンジンキューが割り当てられます" + }, + "tenant-profile": { + "tenant-profile": "テナントプロファイル", + "tenant-profiles": "テナントプロファイル", + "add": "テナントプロファイルを追加", + "add-profile": "プロファイルを追加", + "debug": "デバッグ", + "edit": "テナントプロファイルを編集", + "tenant-profile-details": "テナントプロファイル詳細", + "no-tenant-profiles-text": "テナントプロファイルが見つかりません", + "name-max-length": "名前は 256 未満にしてください", + "search": "テナントプロファイルを検索", + "selected-tenant-profiles": "{ count, plural, =1 {テナントプロファイル 1 件} other {テナントプロファイル # 件} } を選択", + "no-tenant-profiles-matching": "'{{entity}}' に一致するテナントプロファイルが見つかりませんでした。", + "tenant-profile-required": "テナントプロファイルは必須です", + "idCopiedMessage": "テナントプロファイルIDがクリップボードにコピーされました", + "set-default": "テナントプロファイルをデフォルトに設定", + "delete": "テナントプロファイルを削除", + "copyId": "テナントプロファイルIDをコピー", + "name": "名前", + "name-required": "名前は必須です。", + "data": "プロファイルデータ", + "profile-configuration": "プロファイル設定", + "description": "説明", + "default": "デフォルト", + "delete-tenant-profile-title": "テナントプロファイル '{{tenantProfileName}}' を削除してもよろしいですか?", + "delete-tenant-profile-text": "注意: 確認後、テナントプロファイルと関連データはすべて復元できなくなります。", + "delete-tenant-profiles-title": "{ count, plural, =1 {テナントプロファイル 1 件} other {テナントプロファイル # 件} } を削除してもよろしいですか?", + "delete-tenant-profiles-text": "注意: 確認後、選択したすべてのテナントプロファイルが削除され、関連データはすべて復元できなくなります。", + "set-default-tenant-profile-title": "テナントプロファイル '{{tenantProfileName}}' をデフォルトに設定してもよろしいですか?", + "set-default-tenant-profile-text": "確認後、このテナントプロファイルはデフォルトとしてマークされ、プロファイルが指定されていない新しいテナントに使用されます。", + "no-tenant-profiles-found": "テナントプロファイルが見つかりません。", + "create-new-tenant-profile": "新規作成!", + "create-tenant-profile": "新しいテナントプロファイルを作成", + "import": "テナントプロファイルをインポート", + "export": "テナントプロファイルをエクスポート", + "export-failed-error": "テナントプロファイルをエクスポートできません: {{error}}", + "tenant-profile-file": "テナントプロファイルファイル", + "invalid-tenant-profile-file-error": "テナントプロファイルをインポートできません: テナントプロファイルのデータ構造が無効です。", + "advanced-settings": "詳細設定", + "entities": "エンティティ", + "rule-engine": "ルールエンジン", + "time-to-live": "TTL", + "calculated-fields": "計算フィールド", + "alarms-and-notifications": "アラームと通知", + "ota-files-in-bytes": "ファイル", + "ws-title": "WS", + "unlimited": "(0 - 無制限)", + "maximum-devices": "デバイス最大数", + "maximum-devices-required": "デバイス最大数は必須です。", + "maximum-devices-range": "デバイス最大数は負にできません", + "maximum-assets": "アセット最大数", + "maximum-assets-required": "アセット最大数は必須です。", + "maximum-assets-range": "アセット最大数は負にできません", + "maximum-customers": "顧客最大数", + "maximum-customers-required": "顧客最大数は必須です。", + "maximum-customers-range": "顧客最大数は負にできません", + "maximum-users": "ユーザー最大数", + "maximum-users-required": "ユーザー最大数は必須です。", + "maximum-users-range": "ユーザー最大数は負にできません", + "maximum-dashboards": "ダッシュボード最大数", + "maximum-dashboards-required": "ダッシュボード最大数は必須です。", + "maximum-dashboards-range": "ダッシュボード最大数は負にできません", + "maximum-edges": "Edge 最大数", + "maximum-edges-required": "Edge 最大数は必須です。", + "maximum-edges-range": "Edge 最大数は負にできません", + "maximum-rule-chains": "ルールチェーン最大数", + "maximum-rule-chains-required": "ルールチェーン最大数は必須です。", + "maximum-rule-chains-range": "ルールチェーン最大数は負にできません", + "maximum-resources-sum-data-size": "リソースファイルの合計最大サイズ(バイト)", + "maximum-resources-sum-data-size-required": "リソースファイルの合計最大サイズは必須です。", + "maximum-resources-sum-data-size-range": "リソースファイルの合計最大サイズは負にできません", + "maximum-resource-size": "リソースファイルの最大サイズ(バイト)", + "maximum-resource-size-required": "リソースファイルの最大サイズは必須です", + "maximum-resource-size-range": "リソースファイルの最大サイズは負にできません", + "maximum-ota-packages-sum-data-size": "OTAパッケージファイルの合計最大サイズ(バイト)", + "maximum-ota-package-sum-data-size-required": "OTAパッケージファイルの合計最大サイズは必須です。", + "maximum-ota-package-sum-data-size-range": "OTAパッケージファイルの合計最大サイズは負にできません", + "maximum-debug-duration-min": "最大デバッグ時間(分)", + "maximum-debug-duration-min-range": "最大デバッグ時間は負にできません", + "rest-requests-for-tenant": "テナントのRESTリクエスト", + "transport-tenant-telemetry-msg-rate-limit": "トランスポート:テナントのテレメトリメッセージ", + "transport-tenant-telemetry-data-points-rate-limit": "トランスポート:テナントのテレメトリデータポイント", + "transport-device-msg-rate-limit": "トランスポート:デバイスメッセージ", + "transport-device-telemetry-msg-rate-limit": "トランスポート:デバイスのテレメトリメッセージ", + "transport-device-telemetry-data-points-rate-limit": "トランスポート:デバイスのテレメトリデータポイント", + "transport-gateway-msg-rate-limit": "トランスポート:Gatewayメッセージ", + "transport-gateway-telemetry-msg-rate-limit": "トランスポート:Gatewayのテレメトリメッセージ", + "transport-gateway-telemetry-data-points-rate-limit": "トランスポート:Gatewayのテレメトリデータポイント", + "transport-gateway-device-msg-rate-limit": "トランスポート:Gatewayデバイスメッセージ", + "transport-gateway-device-telemetry-msg-rate-limit": "トランスポート:Gatewayデバイスのテレメトリメッセージ", + "transport-gateway-device-telemetry-data-points-rate-limit": "トランスポート:Gatewayデバイスのテレメトリデータポイント", + "tenant-entity-export-rate-limit": "エンティティバージョン作成", + "tenant-entity-import-rate-limit": "エンティティバージョン読み込み", + "tenant-notification-request-rate-limit": "通知リクエスト", + "tenant-notification-requests-per-rule-rate-limit": "通知ルールごとの通知リクエスト", + "max-calculated-fields": "エンティティあたりの計算フィールド最大数", + "max-calculated-fields-range": "エンティティあたりの計算フィールド最大数は負にできません", + "max-calculated-fields-required": "エンティティあたりの計算フィールド最大数は必須です", + "max-data-points-per-rolling-arg": "ローリング引数の最大データポイント数", + "max-data-points-per-rolling-arg-range": "ローリング引数の最大データポイント数は負にできません", + "max-data-points-per-rolling-arg-required": "ローリング引数の最大データポイント数は必須です", + "max-arguments-per-cf": "計算フィールドあたりの引数最大数", + "max-arguments-per-cf-range": "計算フィールドあたりの引数最大数は負にできません", + "max-arguments-per-cf-required": "計算フィールドあたりの引数最大数は必須です", + "max-state-size": "状態の最大サイズ(KB)", + "max-state-size-range": "状態の最大サイズ(KB)は負にできません", + "max-state-size-required": "状態の最大サイズ(KB)は必須です", + "max-value-argument-size": "単一値引数の最大サイズ(KB)", + "max-value-argument-size-range": "単一値引数の最大サイズ(KB)は負にできません", + "max-value-argument-size-required": "単一値引数の最大サイズ(KB)は必須です", + "max-transport-messages": "トランスポートメッセージ最大数", + "max-transport-messages-required": "トランスポートメッセージ最大数は必須です。", + "max-transport-messages-range": "トランスポートメッセージ最大数は負にできません", + "max-transport-data-points": "トランスポートデータポイント最大数 ", + "max-transport-data-points-required": "トランスポートデータポイント最大数 は必須です。", + "max-transport-data-points-range": "トランスポートデータポイント最大数 は負にできません", + "max-r-e-executions": "ルールエンジン実行最大数", + "max-r-e-executions-required": "ルールエンジン実行最大数は必須です。", + "max-r-e-executions-range": "ルールエンジン実行最大数は負にできません", + "max-j-s-executions": "JavaScript 実行最大数 ", + "max-j-s-executions-required": "JavaScript 実行最大数 は必須です。", + "max-j-s-executions-range": "JavaScript 実行最大数 は負にできません", + "max-tbel-executions": "TBEL 実行最大数", + "max-tbel-executions-required": "TBEL 実行最大数は必須です。", + "max-tbel-executions-range": "TBEL 実行最大数は負にできません", + "max-d-p-storage-days": "データポイント保存日数最大数", + "max-d-p-storage-days-required": "データポイント保存日数最大数は必須です。", + "max-d-p-storage-days-range": "データポイント保存日数最大数は負にできません", + "default-storage-ttl-days": "デフォルトのストレージ TTL 日数", + "default-storage-ttl-days-required": "デフォルトのストレージ TTL 日数は必須です。", + "default-storage-ttl-days-range": "デフォルトのストレージ TTL 日数は負にできません", + "alarms-ttl-days": "アラーム TTL 日数", + "alarms-ttl-days-required": "アラーム TTL 日数は必須です", + "alarms-ttl-days-days-range": "アラーム TTL 日数は負にできません", + "rpc-ttl-days": "RPC TTL 日数", + "rpc-ttl-days-required": "RPC TTL 日数は必須です", + "rpc-ttl-days-days-range": "RPC TTL 日数は負にできません", + "queue-stats-ttl-days": "キュー統計 TTL 日数", + "queue-stats-ttl-days-required": "キュー統計 TTL 日数は必須です", + "queue-stats-ttl-days-range": "キュー統計 TTL 日数は負にできません", + "rule-engine-exceptions-ttl-days": "ルールエンジン例外 TTL 日数", + "rule-engine-exceptions-ttl-days-required": "ルールエンジン例外 TTL 日数は必須です", + "rule-engine-exceptions-ttl-days-range": "ルールエンジン例外 TTL 日数は負にできません", + "max-rule-node-executions-per-message": "メッセージあたりのルールノード実行最大数", + "max-rule-node-executions-per-message-required": "メッセージあたりのルールノード実行最大数は必須です。", + "max-rule-node-executions-per-message-range": "メッセージあたりのルールノード実行最大数は負にできません", + "max-emails": "送信 Emails 最大数", + "max-emails-required": "送信 Emails 最大数は必須です。", + "max-emails-range": "送信 Emails 最大数は負にできません", + "sms-enabled": "SMS を有効化", + "max-sms": "送信 SMS 最大数", + "max-sms-required": "送信 SMS 最大数は必須です。", + "max-sms-range": "送信 SMS 最大数は負にできません", + "max-created-alarms": "作成アラーム最大数", + "max-created-alarms-required": "作成アラーム最大数は必須です。", + "max-created-alarms-range": "作成アラーム最大数は負にできません", + "no-queue": "キューが設定されていません", + "add-queue": "キューを追加", + "queues-with-count": "キュー({{count}})", + "tenant-rest-limits": "テナントのRESTリクエスト", + "customer-rest-limits": "顧客のRESTリクエスト", + "incorrect-pattern-for-rate-limits": "形式は、容量と期間(秒)のペアをカンマ区切りにし、ペア内はコロンで区切ります。例: 100:1,2000:60", + "too-small-value-zero": "値は 0 より大きい必要があります", + "too-small-value-one": "値は 1 より大きい必要があります", + "queue-size-is-limited-by-system-configuration": "キューのサイズはシステム設定によっても制限されます。", + "cassandra-write-tenant-core-limits-configuration": "Rest API Cassandra 書き込みクエリ", + "cassandra-read-tenant-core-limits-configuration": "Rest API および WS テレメトリ Cassandra 読み取りクエリ", + "cassandra-write-tenant-rule-engine-limits-configuration": "ルールエンジンテレメトリ Cassandra 書き込みクエリ", + "cassandra-read-tenant-rule-engine-limits-configuration": "ルールエンジンテレメトリ Cassandra 読み取りクエリ", + "ws-limit-max-sessions-per-tenant": "テナントあたりのセッション最大数", + "ws-limit-max-sessions-per-customer": "顧客あたりのセッション最大数", + "ws-limit-max-sessions-per-regular-user": "通常ユーザーあたりのセッション最大数", + "ws-limit-max-sessions-per-public-user": "パブリックユーザーあたりのセッション最大数", + "ws-limit-queue-per-session": "セッションあたりのメッセージキュー最大サイズ", + "ws-limit-max-subscriptions-per-tenant": "テナントあたりのサブスクリプション最大数", + "ws-limit-max-subscriptions-per-customer": "顧客あたりのサブスクリプション最大数", + "ws-limit-max-subscriptions-per-regular-user": "通常ユーザーあたりのサブスクリプション最大数", + "ws-limit-max-subscriptions-per-public-user": "パブリックユーザーあたりのサブスクリプション最大数", + "ws-limit-updates-per-session": "セッションあたりの WS 更新", + "rate-limits": { + "add-limit": "制限を追加", + "and-also-less-than": "かつ次より小さい", + "advanced-settings": "詳細設定", + "edit-limit": "制限を編集", + "calculated-field-debug-event-rate-limit": "計算フィールドのデバッグイベント", + "edit-calculated-field-debug-event-rate-limit": "計算フィールドのデバッグイベントのレート制限を編集", + "edit-transport-tenant-msg-title": "トランスポート:テナントメッセージのレート制限を編集", + "edit-transport-tenant-telemetry-msg-title": "トランスポート:テナントのテレメトリメッセージのレート制限を編集", + "edit-transport-tenant-telemetry-data-points-title": "トランスポート:テナントのテレメトリデータポイントのレート制限を編集", + "edit-transport-device-msg-title": "トランスポート:デバイスメッセージのレート制限を編集", + "edit-transport-device-telemetry-msg-title": "トランスポート:デバイスのテレメトリメッセージのレート制限を編集", + "edit-transport-device-telemetry-data-points-title": "トランスポート:デバイスのテレメトリデータポイントのレート制限を編集", + "edit-transport-gateway-msg-title": "トランスポート:Gatewayメッセージのレート制限を編集", + "edit-transport-gateway-telemetry-msg-title": "トランスポート:Gatewayのテレメトリメッセージのレート制限を編集", + "edit-transport-gateway-telemetry-data-points-title": "トランスポート:Gatewayのテレメトリデータポイントのレート制限を編集", + "edit-transport-gateway-device-msg-title": "トランスポート:Gatewayデバイスメッセージのレート制限を編集", + "edit-transport-gateway-device-telemetry-msg-title": "トランスポート:Gatewayデバイスのテレメトリメッセージのレート制限を編集", + "edit-transport-gateway-device-telemetry-data-points-title": "トランスポート:Gatewayデバイスのテレメトリデータポイントのレート制限を編集", + "edit-tenant-rest-limits-title": "テナントのRESTリクエストのレート制限を編集", + "edit-customer-rest-limits-title": "顧客のRESTリクエストのレート制限を編集", + "edit-ws-limit-updates-per-session-title": "セッションあたりの WS 更新のレート制限を編集", + "edit-cassandra-write-tenant-core-limits-configuration": "Rest API Cassandra 書き込みクエリを編集", + "edit-cassandra-read-tenant-core-limits-configuration": "Rest API および WS テレメトリ Cassandra 読み取りクエリを編集", + "edit-cassandra-write-tenant-rule-engine-limits-configuration": "ルールエンジンテレメトリ Cassandra 書き込みクエリを編集", + "edit-cassandra-read-tenant-rule-engine-limits-configuration": "ルールエンジンテレメトリ Cassandra 読み取りクエリを編集", + "edit-tenant-entity-export-rate-limit-title": "エンティティバージョン作成のレート制限を編集", + "edit-tenant-entity-import-rate-limit-title": "エンティティバージョン読み込みのレート制限を編集", + "edit-tenant-notification-request-rate-limit-title": "通知リクエストのレート制限を編集", + "edit-tenant-notification-requests-per-rule-rate-limit-title": "通知ルールごとの通知リクエストのレート制限を編集", + "edit-edge-events-rate-limit": "Edge イベントのレート制限を編集", + "edit-edge-events-per-edge-rate-limit": "Edge あたりの Edge イベントのレート制限を編集", + "edge-events-rate-limit": "Edge イベント", + "edge-events-per-edge-rate-limit": "Edge あたりの Edge イベント", + "edit-edge-uplink-messages-rate-limit": "Edge アップリンクメッセージのレート制限を編集", + "edit-edge-uplink-messages-per-edge-rate-limit": "Edge あたりの Edge アップリンクメッセージのレート制限を編集", + "edge-uplink-messages-rate-limit": "Edge アップリンクメッセージ", + "edge-uplink-messages-per-edge-rate-limit": "Edge あたりの Edge アップリンクメッセージ", + "messages-per": "次あたりのメッセージ数", + "not-set": "未設定", + "number-of-messages": "メッセージ数", + "number-of-messages-required": "メッセージ数は必須です。", + "number-of-messages-min": "最小値は 1 です。", + "preview": "プレビュー", + "per-seconds": "秒あたり", + "per-seconds-required": "時間レートは必須です。", + "per-seconds-min": "最小値は 1 です。", + "per-seconds-duplicate": "時間レートが重複しています。各時間間隔は一意である必要があります。", + "rate-limits": "レート制限", + "remove-limit": "制限を削除", + "transport-tenant-msg": "トランスポート:テナントメッセージ", + "transport-tenant-telemetry-msg": "トランスポート:テナントのテレメトリメッセージ", + "transport-tenant-telemetry-data-points": "トランスポート:テナントのテレメトリデータポイント", + "transport-device-msg": "トランスポート:デバイスメッセージ", + "transport-device-telemetry-msg": "トランスポート:デバイスのテレメトリメッセージ", + "transport-device-telemetry-data-points": "トランスポート:デバイスのテレメトリデータポイント", + "transport-gateway-msg": "トランスポート:Gatewayメッセージ", + "transport-gateway-telemetry-msg": "トランスポート:Gatewayのテレメトリメッセージ", + "transport-gateway-telemetry-data-points": "トランスポート:Gatewayのテレメトリデータポイント", + "transport-gateway-device-msg": "トランスポート:Gatewayデバイスメッセージ", + "transport-gateway-device-telemetry-msg": "トランスポート:Gatewayデバイスのテレメトリメッセージ", + "transport-gateway-device-telemetry-data-points": "トランスポート:Gatewayデバイスのテレメトリデータポイント", + "sec": "秒" + } + }, + "timeinterval": { + "seconds-interval": "{ seconds, plural, =1 {1秒} other {#秒} }", + "minutes-interval": "{ minutes, plural, =1 {1分} other {#分} }", + "hours-interval": "{ hours, plural, =1 {1時間} other {#時間} }", + "days-interval": "{ days, plural, =1 {1日} other {#日} }", + "days": "日", + "hours": "時間", + "minutes": "分", + "seconds": "秒", + "advanced": "高度な設定", + "custom": "カスタム", + "predefined": { + "yesterday": "昨日", + "day-before-yesterday": "一昨日", + "this-day-last-week": "先週の同じ日", + "previous-week": "前週(日 - 土)", + "previous-week-iso": "前週(月 - 日)", + "previous-month": "前月", + "previous-quarter": "前四半期", + "previous-half-year": "前半期", + "previous-year": "前年", + "current-hour": "現在の時間", + "current-day": "今日", + "current-day-so-far": "今日(現在まで)", + "current-week": "今週(日 - 土)", + "current-week-iso": "今週(月 - 日)", + "current-week-so-far": "今週(現在まで)(日 - 土)", + "current-week-iso-so-far": "今週(現在まで)(月 - 日)", + "current-month": "今月", + "current-month-so-far": "今月(現在まで)", + "current-quarter": "今四半期", + "current-quarter-so-far": "今四半期(現在まで)", + "current-half-year": "今半期", + "current-half-year-so-far": "今半期(現在まで)", + "current-year": "今年", + "current-year-so-far": "今年(現在まで)" + }, + "type": { + "week": "週(日 - 土)", + "week-iso": "週(月 - 日)", + "month": "月", + "quarter": "四半期" + } + }, + "timeunit": { + "milliseconds": "ミリ秒", + "seconds": "秒", + "minutes": "分", + "hours": "時間", + "days": "日" + }, + "timewindow": { + "timewindow": "時間範囲", + "timewindow-settings": "時間範囲設定", + "years": "{ years, plural, =1 {1年 } other {#年 } }", + "years-short": "{{ years }}年", + "months": "{ months, plural, =1 {1か月 } other {#か月 } }", + "months-short": "{{ months }}か月", + "weeks": "{ weeks, plural, =1 {1週 } other {#週 } }", + "weeks-short": "{{ weeks }}週", + "days": "{ days, plural, =1 {1日 } other {#日 } }", + "days-short": "{{ days }}日", + "hours": "{ hours, plural, =0 {時間 } =1 {1時間 } other {#時間 } }", + "hr": "{{ hr }} 時間", + "hr-short": "{{ hr }}時間", + "minutes": "{ minutes, plural, =0 {分 } =1 {1分 } other {#分 } }", + "min": "{{ min }} 分", + "min-short": "{{ min }}分", + "seconds": "{ seconds, plural, =0 {秒 } =1 {1秒 } other {#秒 } }", + "sec": "{{ sec }} 秒", + "sec-short": "{{ sec }}秒", + "short": { + "years": "{ years, plural, =1 {1年 } other {#年 } }", + "days": "{ days, plural, =1 {1日 } other {#日 } }", + "hours": "{ hours, plural, =1 {1時間 } other {#時間 } }", + "minutes": "{{minutes}} 分 ", + "seconds": "{{seconds}} 秒 " + }, + "realtime": "リアルタイム", + "history": "履歴", + "last-prefix": "過去", + "period": "{{ startTime }} から {{ endTime }} まで", + "edit": "時間範囲を編集", + "date-range": "日付範囲", + "for-all-time": "全期間", + "last": "過去", + "time-period": "期間", + "hide": "非表示", + "interval": "間隔", + "just-now": "たった今", + "just-now-lower": "たった今", + "ago": "前", + "style": "時間範囲スタイル", + "icon": "アイコン", + "icon-position": "アイコン位置", + "icon-position-left": "左", + "icon-position-right": "右", + "font": "フォント", + "color": "色", + "displayTypePrefix": "リアルタイム/履歴のプレフィックスを表示", + "preview": "プレビュー", + "relative": "相対", + "range": "範囲", + "hide-timewindow-section": "エンドユーザーに時間範囲セクションを表示しない", + "hide-last-interval": "エンドユーザーに「過去」間隔を表示しない", + "hide-relative-interval": "エンドユーザーに相対間隔を表示しない", + "hide-fixed-interval": "エンドユーザーに固定間隔を表示しない", + "hide-aggregation": "エンドユーザーに集計を表示しない", + "hide-group-interval": "エンドユーザーにグルーピング間隔を表示しない", + "hide-max-values": "エンドユーザーに最大値を表示しない", + "hide-timezone": "エンドユーザーにタイムゾーンを表示しない", + "disable-custom-interval": "カスタム間隔の選択を無効化", + "edit-aggregation-functions-list": "集計関数リストを編集", + "edit-aggregation-functions-list-hint": "利用可能なオプションのリストを指定できます。", + "allowed-aggregation-functions": "許可された集計関数", + "edit-intervals-list": "間隔リストを編集", + "allowed-agg-intervals": "グルーピング間隔", + "default-agg-interval": "デフォルトのグルーピング間隔", + "edit-intervals-list-hint": "利用可能な間隔オプションのリストを指定できます。", + "edit-grouping-intervals-list-hint": "グルーピング間隔リストとデフォルトのグルーピング間隔を設定できます。", + "all": "すべて" + }, + "tooltip": { + "trigger": "トリガー", + "trigger-point": "ポイント", + "trigger-axis": "軸", + "label": "ラベル", + "value": "値", + "date": "日付", + "show-date-time-interval": "日時間隔を表示", + "show-date-time-interval-hint": "データ集計に従って日時間隔を表示します。", + "hide-zero-tooltip-values": "0 の値を非表示", + "show-stack-total": "積み上げモードで合計値を表示", + "background-color": "背景色", + "background-blur": "背景のぼかし" + }, + "unit": { + "set-unit-conversion": "単位変換を設定", + "unit-settings": { + "unit-settings": "単位設定", + "source-unit": "元の単位", + "source-unit-hint": "これは保存された値の単位です。変換元の単位です。元データで使用されている記号を入力してください(例: m, km, ft, in)。", + "target-metric-unit": "変換先のメートル法単位", + "target-metric-unit-hint": "元の値を変換するメートル法(SI)の単位を選択します(例: cm, mm, km)。", + "target-imperial-unit": "変換先のヤード・ポンド法単位", + "target-imperial-unit-hint": "元の値を変換するヤード・ポンド法の単位を選択します(例: in, ft, yd)。", + "target-hybrid-unit": "変換先のハイブリッド単位", + "target-hybrid-unit-hint": "元の値を変換するハイブリッド単位を選択します(例: cm, in, km)。ハイブリッド単位はメートル法またはヤード・ポンド法の単位を組み合わせます。", + "enable-unit-conversion": "単位変換を有効化", + "enable-unit-conversion-hint": "オンにすると変換が有効になります。オフの場合、元の値は変更されずにそのまま渡されます。対応する測定グループに単位が 1 つしかない場合(例: Luminous flux, AQI)は無効になります。" + }, + "unit-system": "単位系", + "unit-system-type": { + "AUTO": "自動", + "METRIC": "メートル法", + "IMPERIAL": "ヤード・ポンド法", + "HYBRID": "ハイブリッド" + }, + "measures": { + "absorbed-dose-rate": "吸収線量率", + "acceleration": "加速度", + "acidity": "酸性度", + "air-quality-index": "大気質指数", + "amount-of-substance": "物質量", + "angle": "角度", + "angular-acceleration": "角加速度", + "area": "面積", + "area-density": "面密度", + "capacitance": "静電容量", + "catalytic-activity": "触媒活性", + "catalytic-concentration": "触媒濃度", + "charge": "電荷", + "current-density": "電流密度", + "data-transfer-rate": "データ転送速度", + "density": "密度", + "digital": "デジタル", + "dimension-ratio": "寸法比", + "dynamic-viscosity": "粘度", + "earthquake-magnitude": "地震マグニチュード", + "electric-charge-density": "電荷密度", + "electric-current": "電流", + "electric-dipole-moment": "電気双極子モーメント", + "electric-field-strength": "電界強度", + "electric-flux": "電束", + "electric-permittivity": "誘電率", + "electric-polarizability": "電気分極率", + "electrical-conductance": "電気コンダクタンス", + "electrical-conductivity": "電気伝導率", + "energy": "エネルギー", + "energy-density": "エネルギー密度", + "force": "力", + "frequency": "周波数", + "fuel-efficiency": "燃費", + "heat-capacity": "熱容量", + "illuminance": "照度", + "inductance": "インダクタンス", + "kinematic-viscosity": "動粘度", + "length": "長さ", + "light-exposure": "露光量", + "linear-charge-density": "線電荷密度", + "logarithmic-ratio": "対数比", + "luminous-efficacy": "発光効率", + "luminous-flux": "光束", + "luminous-intensity": "光度", + "magnetic-field-gradient": "磁場勾配", + "magnetic-flux": "磁束", + "magnetic-flux-density": "磁束密度", + "magnetic-moment": "磁気モーメント", + "magnetic-permeability": "透磁率", + "mass": "質量", + "mass-fraction": "質量分率", + "molar-concentration": "モル濃度", + "molar-energy": "モルエネルギー", + "molar-heat-capacity": "モル熱容量", + "molar-mass": "モル質量", + "number-concentration": "数濃度", + "parts-per-million": "ppm", + "power": "電力", + "power-density": "電力密度", + "pressure": "圧力", + "radiance": "放射輝度", + "radiant-intensity": "放射強度", + "radiation-dose": "放射線量", + "radioactive-decay": "放射性崩壊", + "radioactivity": "放射能", + "radioactivity-concentration": "放射能濃度", + "reciprocal-length": "逆長さ", + "resistance": "抵抗", + "reynolds-number": "レイノルズ数", + "signal-level": "信号レベル", + "solid-angle": "立体角", + "specific-energy": "比エネルギー", + "specific-heat-capacity": "比熱容量", + "specific-humidity": "比湿", + "specific-volume": "比容積", + "speed": "速度", + "surface-charge-density": "表面電荷密度", + "surface-tension": "表面張力", + "temperature": "温度", + "thermal-conductivity": "熱伝導率", + "time": "時間", + "torque": "トルク", + "turbidity": "濁度", + "voltage": "電圧", + "volume": "体積", + "volume-flow": "体積流量" + }, + "millimeter": "ミリメートル", + "centimeter": "センチメートル", + "decimeter": "デシメートル", + "angstrom": "オングストローム", + "nanometer": "ナノメートル", + "micrometer": "マイクロメートル", + "meter": "メートル", + "kilometer": "キロメートル", + "inch": "インチ", + "foot": "フィート", + "foot-us": "フィート(米国測量)", + "yard": "ヤード", + "mile": "マイル", + "nautical-mile": "海里", + "astronomical-unit": "天文単位", + "reciprocal-metre": "逆メートル", + "meter-per-meter": "メートル毎メートル", + "steradian": "ステラジアン", + "thou": "サウ", + "barleycorn": "バーレイコーン", + "hand": "ハンド", + "chain": "チェーン", + "furlong": "ファーロング", + "league": "リーグ", + "fathom": "ファゾム", + "cable": "ケーブル", + "link": "リンク", + "rod": "ロッド", + "nanogram": "ナノグラム", + "microgram": "マイクログラム", + "milligram": "ミリグラム", + "gram": "グラム", + "kilogram": "キログラム", + "tonne": "トン", + "ounce": "オンス", + "pound": "ポンド", + "stone": "ストーン", + "hundredweight-count": "ハンドレッドウェイト(カウント)", + "short-tons": "ショートトン", + "dalton": "ダルトン", + "grain": "グレーン", + "drachm": "ドラクム", + "quarter": "クォーター", + "slug": "スラグ", + "carat": "カラット", + "cubic-millimeter": "立方ミリメートル", + "cubic-centimeter": "立方センチメートル", + "cubic-meter": "立方メートル", + "cubic-kilometer": "立方キロメートル", + "microliter": "マイクロリットル", + "milliliter": "ミリリットル", + "liter": "リットル", + "hectoliter": "ヘクトリットル", + "cubic-inch": "立方インチ", + "cubic-foot": "立方フィート", + "cubic-yard": "立方ヤード", + "fluid-ounce": "液量オンス", + "fluid-ounce-per-second": "液量オンス毎秒", + "pint": "パイント", + "quart": "クォート", + "gallon": "ガロン", + "oil-barrels": "バレル(石油)", + "cubic-meter-per-kilogram": "立方メートル毎キログラム", + "gill": "ジル", + "hogshead": "ホッグスヘッド", + "teaspoon": "ティースプーン", + "tablespoon": "テーブルスプーン", + "cup": "カップ", + "celsius": "摂氏", + "kelvin": "ケルビン", + "rankine": "ランキン", + "fahrenheit": "華氏", + "percent": "パーセント", + "meter-per-second": "メートル毎秒", + "kilometer-per-hour": "キロメートル毎時", + "foot-per-second": "フィート毎秒", + "foot-per-minute": "フィート毎分", + "mile-per-hour": "マイル毎時", + "knot": "ノット", + "inch-per-second": "インチ毎秒", + "inch-per-hour": "インチ毎時", + "millimeters-per-minute": "ミリメートル毎分", + "meter-per-minute": "メートル毎分", + "kilometer-per-hour-squared": "キロメートル毎時毎時", + "foot-per-second-squared": "フィート毎秒毎秒", + "pascal": "パスカル", + "kilopascal": "キロパスカル", + "megapascal": "メガパスカル", + "gigapascal": "ギガパスカル", + "millibar": "ミリバール", + "bar": "バール", + "kilobar": "キロバール", + "newton": "ニュートン", + "newton-meter": "ニュートンメートル", + "foot-pounds": "フィートポンド", + "inch-pounds": "インチポンド", + "newton-per-meter": "ニュートン毎メートル", + "atmospheres": "気圧", + "pounds-per-square-inch": "psi", + "kilopound-per-square-inch": "キロpsi", + "torr": "トル", + "inches-of-mercury": "水銀柱インチ", + "pascal-per-square-meter": "パスカル毎平方メートル", + "pound-per-square-inch": "psi", + "newton-per-square-meter": "ニュートン毎平方メートル", + "kilogram-force-per-square-meter": "キログラム重毎平方メートル", + "pascal-per-square-centimeter": "パスカル毎平方センチメートル", + "ton-force-per-square-inch": "トン重毎平方インチ", + "kilonewton-per-square-meter": "キロニュートン毎平方メートル", + "newton-per-square-millimeter": "ニュートン毎平方ミリメートル", + "microjoule": "マイクロジュール", + "millijoule": "ミリジュール", + "joule": "ジュール", + "kilojoule": "キロジュール", + "megajoule": "メガジュール", + "gigajoule": "ギガジュール", + "watt-hour": "ワット時", + "watt-minute": "ワット分", + "kilowatt-hour": "キロワット時", + "milliwatt-hour": "ミリワット時", + "megawatt-hour": "メガワット時", + "gigawatt-hour": "ギガワット時", + "electron-volts": "電子ボルト", + "joules-per-coulomb": "ジュール毎クーロン", + "british-thermal-unit": "英熱量単位(BTU)", + "thousand-british-thermal-unit": "千BTU", + "million-british-thermal-unit": "百万BTU", + "foot-pound": "フィートポンド", + "calorie": "カロリー", + "small-calorie": "小カロリー", + "kilocalorie": "キロカロリー", + "joule-per-kelvin": "ジュール毎ケルビン", + "joule-per-kilogram-kelvin": "ジュール毎キログラム・ケルビン", + "joule-per-kilogram": "ジュール毎キログラム", + "watt-per-meter-kelvin": "ワット毎メートル・ケルビン", + "joule-per-cubic-meter": "ジュール毎立方メートル", + "therm": "サーム", + "electric-dipole-moment": "電気双極子モーメント", + "magnetic-dipole-moment": "磁気双極子モーメント", + "debye": "デバイ", + "coulomb-per-square-meter-per-volt": "クーロン毎平方メートル毎ボルト", + "milliwatt": "ミリワット", + "microwatt": "マイクロワット", + "watt": "ワット", + "kilowatt": "キロワット", + "megawatt": "メガワット", + "gigawatt": "ギガワット", + "metric-horsepower": "仏馬力", + "milliwatt-per-square-centimeter": "ミリワット毎平方センチメートル", + "watt-per-square-centimeter": "ワット毎平方センチメートル", + "kilowatt-per-square-centimeter": "キロワット毎平方センチメートル", + "milliwatt-per-square-meter": "ミリワット毎平方メートル", + "watt-per-square-meter": "ワット毎平方メートル", + "kilowatt-per-square-meter": "キロワット毎平方メートル", + "watt-per-square-inch": "ワット毎平方インチ", + "kilowatt-per-square-inch": "キロワット毎平方インチ", + "horsepower": "馬力", + "btu-per-hour": "BTU毎時", + "btu-per-second": "BTU毎秒", + "btu-per-day": "BTU毎日", + "mbtu-per-hour": "千BTU毎時", + "mbtu-per-second": "千BTU毎秒", + "mbtu-per-day": "千BTU毎日", + "mmbtu-per-hour": "百万BTU毎時", + "mmbtu-per-second": "百万BTU毎秒", + "mmbtu-per-day": "百万BTU毎日", + "foot-pound-per-second": "フィートポンド毎秒", + "coulomb": "クーロン", + "millicoulomb": "ミリクーロン", + "microcoulomb": "マイクロクーロン", + "nanocoulomb": "ナノクーロン", + "picocoulomb": "ピコクーロン", + "coulomb-per-meter": "クーロン毎メートル", + "coulomb-per-cubic-meter": "クーロン毎立方メートル", + "coulomb-per-square-meter": "クーロン毎平方メートル", + "square-millimeter": "平方ミリメートル", + "square-centimeter": "平方センチメートル", + "square-meter": "平方メートル", + "hectare": "ヘクタール", + "square-kilometer": "平方キロメートル", + "square-inch": "平方インチ", + "square-foot": "平方フィート", + "square-yard": "平方ヤード", + "acre": "エーカー", + "square-mile": "平方マイル", + "are": "アール", + "barn": "バーン", + "circular-inch": "サーキュラーインチ", + "milliampere-hour": "ミリアンペア時", + "ampere-hours": "アンペア時", + "kiloampere-hours": "キロアンペア時", + "nanoampere": "ナノアンペア", + "picoampere": "ピコアンペア", + "microampere": "マイクロアンペア", + "milliampere": "ミリアンペア", + "ampere": "アンペア", + "kiloampere": "キロアンペア", + "megaampere": "メガアンペア", + "gigaampere": "ギガアンペア", + "microampere-per-square-centimeter": "マイクロアンペア毎平方センチメートル", + "ampere-per-square-meter": "アンペア毎平方メートル", + "ampere-per-meter": "アンペア毎メートル", + "oersted": "エルステッド", + "bohr-magneton": "ボーア磁子", + "ampere-meter-squared": "アンペア・平方メートル", + "nanovolt": "ナノボルト", + "picovolt": "ピコボルト", + "millivolt": "ミリボルト", + "microvolt": "マイクロボルト", + "volt": "ボルト", + "kilovolt": "キロボルト", + "megavolt": "メガボルト", + "dbmV": "デシベルボルト", + "dbm": "デシベルミリワット", + "volt-meter": "ボルトメートル", + "kilovolt-meter": "キロボルトメートル", + "megavolt-meter": "メガボルトメートル", + "microvolt-meter": "マイクロボルトメートル", + "millivolt-meter": "ミリボルトメートル", + "nanovolt-meter": "ナノボルトメートル", + "ohm": "オーム", + "microohm": "マイクロオーム", + "milliohm": "ミリオーム", + "kilohm": "キロオーム", + "megohm": "メガオーム", + "gigohm": "ギガオーム", + "millihertz": "ミリヘルツ", + "hertz": "ヘルツ", + "kilohertz": "キロヘルツ", + "megahertz": "メガヘルツ", + "gigahertz": "ギガヘルツ", + "terahertz": "テラヘルツ", + "rpm": "回転数/分", + "candela-per-square-meter": "カンデラ毎平方メートル", + "candela": "カンデラ", + "lumen": "ルーメン", + "lux": "ルクス", + "foot-candle": "フートキャンドル", + "lumen-per-square-meter": "ルーメン毎平方メートル", + "lux-second": "ルクス秒", + "lumen-second": "ルーメン秒", + "lumens-per-watt": "ルーメン毎ワット", + "mole": "モル", + "nanomole": "ナノモル", + "micromole": "マイクロモル", + "millimole": "ミリモル", + "kilomole": "キロモル", + "mole-per-cubic-meter": "モル毎立方メートル", + "rssi": "受信信号強度インジケーター", + "ppm": "ppm", + "ppb": "ppb", + "micrograms-per-cubic-meter": "マイクログラム毎立方メートル", + "aqi": "AQI", + "gram-per-cubic-meter": "グラム毎立方メートル", + "gram-per-kilogram": "比湿", + "millimeters-per-second": "ミリメートル毎秒", + "neper": "ネーパ", + "bel": "ベル", + "decibel": "デシベル", + "meters-per-second-squared": "メートル毎秒毎秒", + "becquerel": "ベクレル", + "curie": "キュリー", + "gray": "グレイ", + "sievert": "シーベルト", + "roentgen": "レントゲン", + "cps": "カウント/秒", + "rad": "ラド", + "rem": "レム", + "dps": "崩壊/秒", + "rutherford": "ラザフォード", + "coulombs-per-kilogram": "クーロン毎キログラム", + "becquerels-per-cubic-meter": "ベクレル毎立方メートル", + "curies-per-liter": "キュリー毎リットル", + "becquerels-per-second": "ベクレル毎秒", + "curies-per-second": "キュリー毎秒", + "gy-per-second": "グレイ毎秒", + "watt-per-steradian": "ワット毎ステラジアン", + "watt-per-square-metre-steradian": "ワット毎平方メートル・ステラジアン", + "ph-level": "pH", + "turbidity": "濁度", + "mg-per-liter": "ミリグラム毎リットル", + "microsiemens-per-centimeter": "マイクロジーメンス毎センチメートル", + "millisiemens-per-meter": "ミリジーメンス毎メートル", + "siemens-per-meter": "ジーメンス毎メートル", + "kilogram-per-cubic-meter": "キログラム毎立方メートル", + "gram-per-cubic-centimeter": "グラム毎立方センチメートル", + "kilogram-per-square-meter": "キログラム毎平方メートル", + "milligram-per-milliliter": "ミリグラム毎ミリリットル", + "milligram-per-cubic-meter": "ミリグラム毎立方メートル", + "pound-per-cubic-foot": "ポンド毎立方フィート", + "ounces-per-cubic-inch": "オンス毎立方インチ", + "tons-per-cubic-yard": "トン毎立方ヤード", + "particle-density": "粒子密度", + "kilometers-per-liter": "キロメートル毎リットル", + "miles-per-gallon": "マイル毎ガロン", + "liters-per-100-km": "100 km あたりリットル", + "gallons-per-mile": "マイルあたりガロン", + "liters-per-hour": "リットル毎時", + "gallons-per-hour": "ガロン毎時", + "beats-per-minute": "拍/分", + "millimeters-of-mercury": "水銀柱ミリメートル", + "milligrams-per-deciliter": "ミリグラム毎デシリットル", + "g-force": "G(加速度)", + "kilonewton": "キロニュートン", + "kilogram-force": "キログラム重", + "pound-force": "ポンド重", + "kilopound-force": "キロポンド重", + "dyne": "ダイン", + "poundal": "パウンダル", + "kip": "キップ", + "gal": "ガル", + "gravity": "重力", + "hectopascal": "ヘクトパスカル", + "atmosphere": "気圧", + "millibars": "ミリバール", + "inch-of-mercury": "水銀柱インチ", + "richter-scale": "リヒター尺度", + "nanosecond": "ナノ秒", + "microsecond": "マイクロ秒", + "millisecond": "ミリ秒", + "second": "秒", + "minute": "分", + "hour": "時間", + "day": "日", + "week": "週", + "month": "月", + "year": "年", + "cubic-foot-per-minute": "立方フィート毎分", + "cubic-meters-per-hour": "立方メートル毎時", + "cubic-meters-per-second": "立方メートル毎秒", + "liter-per-second": "リットル毎秒", + "liter-per-minute": "リットル毎分", + "gallons-per-minute": "ガロン毎分", + "cubic-foot-per-second": "立方フィート毎秒", + "milliliters-per-minute": "ミリリットル毎分", + "cubic-decimeter-per-second": "立方デシメートル毎秒", + "bit": "ビット", + "byte": "バイト", + "kilobyte": "キロバイト", + "megabyte": "メガバイト", + "gigabyte": "ギガバイト", + "terabyte": "テラバイト", + "petabyte": "ペタバイト", + "exabyte": "エクサバイト", + "zettabyte": "ゼタバイト", + "yottabyte": "ヨタバイト", + "bit-per-second": "ビット毎秒", + "kilobit-per-second": "キロビット毎秒", + "megabit-per-second": "メガビット毎秒", + "gigabit-per-second": "ギガビット毎秒", + "terabit-per-second": "テラビット毎秒", + "byte-per-second": "バイト毎秒", + "kilobyte-per-second": "キロバイト毎秒", + "megabyte-per-second": "メガバイト毎秒", + "gigabyte-per-second": "ギガバイト毎秒", + "degree": "度", + "radian": "ラジアン", + "gradian": "グラード", + "arcminute": "分(角分)", + "arcsecond": "秒(角秒)", + "milliradian": "ミリラジアン", + "revolution": "回転", + "siemens": "ジーメンス", + "millisiemens": "ミリジーメンス", + "microsiemens": "マイクロジーメンス", + "kilosiemens": "キロジーメンス", + "megasiemens": "メガジーメンス", + "gigasiemens": "ギガジーメンス", + "farad": "ファラド", + "millifarad": "ミリファラド", + "microfarad": "マイクロファラド", + "nanofarad": "ナノファラド", + "picofarad": "ピコファラド", + "kilofarad": "キロファラド", + "megafarad": "メガファラド", + "gigafarad": "ギガファラド", + "terfarad": "テラファラド", + "farad-per-meter": "ファラド毎メートル", + "tesla": "テスラ", + "gauss": "ガウス", + "kilogauss": "キロガウス", + "millitesla": "ミリテスラ", + "microtesla": "マイクロテスラ", + "nanotesla": "ナノテスラ", + "kilotesla": "キロテスラ", + "megatesla": "メガテスラ", + "millitesla-square-meters": "ミリテスラ平方メートル", + "gamma": "ガンマ", + "lambda": "ラムダ", + "square-meter-per-second": "平方メートル毎秒", + "square-centimeter-per-second": "平方センチメートル毎秒", + "stoke": "ストークス", + "centistokes": "センチストークス", + "square-foot-per-second": "平方フィート毎秒", + "square-inch-per-second": "平方インチ毎秒", + "pascal-second": "パスカル秒", + "centipoise": "センチポアズ", + "poise": "ポアズ", + "reynolds": "レイノルズ", + "pound-per-foot-hour": "ポンド毎フィート時", + "newton-second-per-square-meter": "ニュートン秒毎平方メートル", + "dyne-second-per-square-centimeter": "ダイン秒毎平方センチメートル", + "kilogram-per-meter-second": "キログラム毎メートル秒", + "tesla-square-meters": "テスラ平方メートル", + "maxwell": "マクスウェル", + "tesla-per-meter": "テスラ毎メートル", + "gauss-per-centimeter": "ガウス毎センチメートル", + "weber": "ウェーバ", + "microweber": "マイクロウェーバ", + "milliweber": "ミリウェーバ", + "gauss-square-centimeter": "ガウス平方センチメートル", + "kilogauss-square-centimeter": "キロガウス平方センチメートル", + "henry": "ヘンリー", + "millihenry": "ミリヘンリー", + "microhenry": "マイクロヘンリー", + "nanohenry": "ナノヘンリー", + "henry-per-meter": "ヘンリー毎メートル", + "tesla-meter-per-ampere": "テスラメートル毎アンペア", + "gauss-per-oersted": "ガウス毎エルステッド", + "kilogram-per-mole": "キログラム毎モル", + "gram-per-mole": "グラム毎モル", + "milligram-per-mole": "ミリグラム毎モル", + "joule-per-mole": "ジュール毎モル", + "joule-per-mole-kelvin": "ジュール毎モル・ケルビン", + "millivolts-per-meter": "ミリボルト毎メートル", + "volts-per-meter": "ボルト毎メートル", + "kilovolts-per-meter": "キロボルト毎メートル", + "radian-per-second": "ラジアン毎秒", + "radian-per-second-squared": "ラジアン毎秒毎秒", + "revolutions-per-minute-per-second": "角加速度", + "deg-per-second": "度毎秒", + "rotation-per-minute": "回転/分", + "degrees-brix": "ブリックス度", + "katal": "カタル", + "katal-per-cubic-metre": "カタル毎立方メートル", + "paris-inch": "パリインチ" + }, + "user": { + "user": "ユーザー", + "users": "ユーザー", + "customer-users": "顧客ユーザー", + "tenant-admins": "テナント管理者", + "sys-admin": "システム管理者", + "tenant-admin": "テナント管理者", + "customer": "顧客", + "anonymous": "匿名", + "add": "ユーザーを追加", + "delete": "ユーザーを削除", + "add-user-text": "新しいユーザーを追加", + "no-users-text": "ユーザーが見つかりません", + "user-details": "ユーザー詳細", + "delete-user-title": "ユーザー '{{userEmail}}' を削除してもよろしいですか?", + "delete-user-text": "確認後、ユーザーと関連データは復元できなくなりますのでご注意ください。", + "delete-users-title": "{ count, plural, =1 {1人のユーザー} other {#人のユーザー} } を削除してもよろしいですか?", + "delete-users-action-title": "{ count, plural, =1 {1人のユーザー} other {#人のユーザー} } を削除", + "delete-users-text": "確認後、選択したユーザーはすべて削除され、関連データは復元できなくなりますのでご注意ください。", + "activation-email-sent-message": "アクティベーションメールが正常に送信されました!", + "resend-activation": "アクティベーションを再送", + "email": "メール", + "email-required": "メールは必須です。", + "invalid-email-format": "無効なメール形式です。", + "first-name": "名前", + "last-name": "苗字", + "description": "説明", + "default-dashboard": "デフォルトダッシュボード", + "always-fullscreen": "常に全画面表示", + "select-user": "ユーザーを選択", + "no-users-matching": "「{{entity}}」に一致するユーザーが見つかりません。", + "user-required": "ユーザーは必須です", + "activation-method": "アクティベーション方法", + "display-activation-link": "アクティベーションリンクを表示", + "send-activation-mail": "アクティベーションメールを送信", + "activation-link": "ユーザーアクティベーションリンク", + "activation-link-text": "ユーザーをアクティベートするには、次のアクティベーションリンクを使用してください(有効期限:{{activationLinkTtl}}):", + "copy-activation-link": "アクティベーションリンクをコピー", + "activation-link-copied-message": "ユーザーアクティベーションリンクがクリップボードにコピーされました", + "details": "詳細", + "login-as-tenant-admin": "テナント管理者としてログイン", + "login-as-customer-user": "顧客ユーザーとしてログイン", + "search": "ユーザーを検索", + "selected-users": "{ count, plural, =1 {1人のユーザー} other {#人のユーザー} } を選択", + "disable-account": "ユーザーアカウントを無効化", + "enable-account": "ユーザーアカウントを有効化", + "enable-account-message": "ユーザーアカウントが正常に有効化されました!", + "disable-account-message": "ユーザーアカウントが正常に無効化されました!", + "copyId": "ユーザーIDをコピー", + "idCopiedMessage": "ユーザーIDがクリップボードにコピーされました", + "user-list": "ユーザーリスト", + "user-list-required": "ユーザーリストは必須です" + }, + "value": { + "type": "値の型", + "string": "文字列", + "string-value": "文字列の値", + "string-value-required": "文字列の値は必須です", + "integer": "整数", + "integer-value": "整数の値", + "integer-value-required": "整数の値は必須です", + "invalid-integer-value": "無効な整数の値です", + "double": "倍精度浮動小数点", + "double-value": "倍精度浮動小数点の値", + "double-value-required": "倍精度浮動小数点の値は必須です", + "boolean": "ブール値", + "boolean-value": "ブール値", + "false": "偽", + "true": "真", + "long": "長整数", + "json": "JSON", + "json-value": "JSONの値", + "json-value-invalid": "JSONの値は無効な形式です", + "json-value-required": "JSONの値は必須です" + }, + "version-control": { + "version-control": "バージョン管理", + "management": "バージョン管理", + "search": "バージョンを検索", + "branch": "ブランチ", + "default": "デフォルト", + "select-branch": "ブランチを選択", + "branch-required": "ブランチは必須です", + "create-entity-version": "エンティティバージョンを作成", + "version-name": "バージョン名", + "version-name-required": "バージョン名は必須です", + "author": "作成者", + "export-relations": "関連をエクスポート", + "export-attributes": "属性をエクスポート", + "export-credentials": "認証情報をエクスポート", + "export-calculated-fields": "計算フィールドをエクスポート", + "entity-versions": "エンティティバージョン", + "versions": "バージョン", + "created-time": "作成時間", + "version-id": "バージョンID", + "no-entity-versions-text": "エンティティバージョンが見つかりません", + "no-versions-text": "バージョンが見つかりません", + "copy-full-version-id": "完全なバージョンIDをコピー", + "create-version": "バージョンを作成", + "creating-version": "バージョン作成中... しばらくお待ちください", + "nothing-to-commit": "コミットする変更はありません", + "restore-version": "バージョンを復元", + "restore-entity-from-version": "バージョン '{{versionName}}' からエンティティを復元", + "restoring-entity-version": "エンティティバージョンを復元中... しばらくお待ちください", + "load-relations": "関連を読み込む", + "load-attributes": "属性を読み込む", + "load-credentials": "認証情報を読み込む", + "load-calculated-fields": "計算フィールドを読み込む", + "compare-with-current": "現在のバージョンと比較", + "diff-entity-with-version": "エンティティバージョン '{{versionName}}' と差分を表示", + "previous-difference": "前の差分", + "next-difference": "次の差分", + "current": "現在のバージョン", + "differences": "{ count, plural, =1 {1つの差分} other {#個の差分} }", + "create-entities-version": "エンティティバージョンを作成", + "default-sync-strategy": "デフォルトの同期戦略", + "sync-strategy-merge": "マージ", + "sync-strategy-overwrite": "上書き", + "entities-to-export": "エクスポートするエンティティ", + "entities-to-restore": "復元するエンティティ", + "sync-strategy": "同期戦略", + "all-entities": "すべてのエンティティ", + "no-entities-to-export-prompt": "エクスポートするエンティティを指定してください", + "no-entities-to-restore-prompt": "復元するエンティティを指定してください", + "add-entity-type": "エンティティタイプを追加", + "remove-all": "すべて削除", + "version-create-result": "{ added, plural, =0 {エンティティは追加されませんでした} =1 {1エンティティが追加されました} other {#エンティティが追加されました} }.
{ modified, plural, =0 {エンティティは変更されませんでした} =1 {1エンティティが変更されました} other {#エンティティが変更されました} }.
{ removed, plural, =0 {エンティティは削除されませんでした} =1 {1エンティティが削除されました} other {#エンティティが削除されました} }。", + "remove-other-entities": "他のエンティティを削除", + "find-existing-entity-by-name": "名前で既存のエンティティを検索", + "restore-entities-from-version": "バージョン '{{versionName}}' からエンティティを復元", + "restoring-entities-from-version": "エンティティを復元中... しばらくお待ちください", + "no-entities-restored": "復元されたエンティティはありません", + "created": "{{created}} 作成済み", + "updated": "{{updated}} 更新済み", + "deleted": "{{deleted}} 削除済み", + "remove-other-entities-confirm-text": "ご注意ください!これにより現在のすべてのエンティティが
削除され、復元したいバージョンには存在しません。

確認のため、\"remove other entities\" と入力してください。", + "auto-commit-to-branch": "{{ branch }}ブランチに自動コミット", + "default-create-entity-version-name": "{{entityName}} の更新", + "sync-strategy-merge-hint": "選択したエンティティをリポジトリに作成または更新します。他のリポジトリエンティティは変更されません。", + "sync-strategy-overwrite-hint": "選択したエンティティをリポジトリに作成または更新します。他のリポジトリエンティティは削除されます。", + "device-credentials-conflict": "外部ID {{entityId}} のデバイスの読み込みに失敗しました
別のデバイスにすでに同じ認証情報がデータベースに存在しています。
復元フォームで認証情報の読み込み設定を無効にすることを検討してください。", + "missing-referenced-entity": "外部ID {{sourceEntityId}}{{sourceEntityTypeName}}の読み込みに失敗しました
欠落している{{targetEntityTypeName}}のID {{targetEntityId}} を参照しています。", + "runtime-failed": "失敗: {{message}}", + "auto-commit-settings-read-only-hint": "自動コミット機能はリポジトリ設定で読み取り専用オプションが有効な場合は機能しません。", + "rollback-on-error": "エラー時にロールバック", + "rollback-on-error-hint": "復元するエンティティが大量にある場合、パフォーマンス向上のためこのオプションを無効にすることを検討してください。\n注意:バージョンの読み込み中にエラーが発生した場合、すでに永続化されたエンティティ(関連、属性など)はそのまま残ります。" + }, + "widget": { + "widget-library": "ウィジェットライブラリ", + "widget-bundle": "ウィジェットバンドル", + "all-bundles": "すべてのバンドル", + "select-widgets-bundle": "ウィジェットバンドルを選択", + "widgets": "ウィジェット", + "all-widgets": "すべてのウィジェット", + "widget": "ウィジェット", + "select-widget": "ウィジェットを選択", + "no-widgets-matching": "'{{entity}}' に一致するウィジェットは見つかりませんでした。", + "no-widgets": "ウィジェットはまだありません", + "no-widgets-text": "ウィジェットが見つかりません", + "management": "ウィジェット管理", + "editor": "ウィジェットエディタ", + "confirm-to-exit-editor-html": "未保存のウィジェット設定があります。
このページを離れますか?", + "widget-type-not-found": "ウィジェットの設定の読み込みに問題があります。
おそらく関連するウィジェットタイプが削除されました。", + "widget-type-load-error": "ウィジェットが以下のエラーにより読み込まれませんでした:", + "remove": "ウィジェットを削除", + "delete": "ウィジェットを削除", + "edit": "ウィジェットを編集", + "remove-widget-title": "ウィジェット '{{widgetTitle}}' を削除してもよろしいですか?", + "remove-widget-text": "確認後、ウィジェットと関連するすべてのデータは回復できなくなります。", + "replace-reference-with-widget-copy": "参照をウィジェットのコピーに置き換える", + "timeseries": "タイムシリーズ", + "search-data": "データを検索", + "no-data-found": "データが見つかりません", + "latest": "最新の値", + "rpc": "コントロールウィジェット", + "alarm": "アラームウィジェット", + "static": "静的ウィジェット", + "timeseries-short": "シリーズ", + "latest-short": "最新", + "rpc-short": "コントロール", + "alarm-short": "アラーム", + "static-short": "静的", + "select-widget-type": "ウィジェットタイプを選択", + "missing-widget-title-error": "ウィジェットのタイトルは必須です!", + "widget-saved": "ウィジェットが保存されました", + "unable-to-save-widget-error": "ウィジェットを保存できません!ウィジェットにエラーがあります!", + "save": "ウィジェットを保存", + "saveAs": "ウィジェットを名前を付けて保存", + "move": "ウィジェットを移動", + "save-widget-as": "ウィジェットを名前を付けて保存", + "save-widget-as-text": "新しいウィジェットのタイトルを入力してください", + "toggle-fullscreen": "全画面表示の切り替え", + "run": "ウィジェットを実行", + "widget-title": "ウィジェットのタイトル", + "title": "タイトル", + "title-required": "ウィジェットのタイトルは必須です。", + "title-max-length": "タイトルは256文字以下にしてください。", + "system": "システム", + "type": "ウィジェットの種類", + "resources": "リソース", + "resource-url": "JavaScript/CSS の URL", + "resource-is-extension": "拡張機能ですか", + "remove-resource": "リソースを削除", + "add-resource": "リソースを追加", + "html": "HTML", + "tidy": "整理", + "css": "CSS", + "settings-form": "設定フォーム", + "data-key-settings-form": "データキー設定フォーム", + "latest-data-key-settings-form": "最新のデータキー設定フォーム", + "widget-settings": "ウィジェットの設定", + "description": "説明", + "tags": "タグ", + "image-preview": "画像プレビュー", + "settings-form-selector": "設定フォームの選択", + "data-key-settings-form-selector": "データキー設定フォームの選択", + "latest-data-key-settings-form-selector": "最新のデータキー設定フォームの選択", + "all": "すべて", + "actual": "実際", + "scada": "SCADAシンボル", + "deprecated": "非推奨", + "has-basic-mode": "基本モードがあります", + "basic-mode-form-selector": "基本モードフォームの選択", + "basic-mode": "基本", + "advanced-mode": "高度", + "javascript": "JavaScript", + "js": "JS", + "delete-widget-title": "ウィジェット '{{widgetName}}' を削除してもよろしいですか?", + "delete-widget-text": "確認後、ウィジェットと関連するすべてのデータは回復不可能になります。", + "delete-widgets-title": "{ count, plural, =1 {1 ウィジェット} other {# ウィジェット} } を削除してもよろしいですか?", + "delete-widgets-text": "注意してください。確認後、選択したすべてのウィジェットが削除され、関連するデータは回復不可能になります。", + "delete-widget": "ウィジェットを削除", + "widget-template-load-failed-error": "ウィジェットテンプレートの読み込みに失敗しました!", + "details": "詳細", + "widget-details": "ウィジェットの詳細", + "add": "ウィジェットを追加", + "add-existing-widget": "既存のウィジェットを追加", + "add-new-widget": "新しいウィジェットを追加", + "search-widgets": "ウィジェットを検索", + "selected-widgets": "{ count, plural, =1 {1 ウィジェット} other {# ウィジェット} } が選択されました", + "undo": "ウィジェットの変更を元に戻す", + "export": "ウィジェットをエクスポート", + "export-prompt": "ウィジェットの画像とリソースを埋め込む", + "export-widgets": "ウィジェットをエクスポート", + "export-widgets-prompt": "ウィジェットの画像とリソースを埋め込む", + "import": "ウィジェットをインポート", + "no-data": "ウィジェットに表示するデータがありません", + "data-overflow": "ウィジェットは {{total}} 件のエンティティのうち {{count}} 件を表示しています", + "alarm-data-overflow": "ウィジェットは {{totalEntities}} 件のエンティティのうち {{allowedEntities}} 件(最大許可) のアラームを表示しています", + "search": "ウィジェットを検索", + "filter": "ウィジェットフィルタータイプ", + "loading-widgets": "ウィジェットを読み込み中...", + "widget-template-error": "無効なウィジェットHTMLテンプレートです。", + "reference": "参照" + }, + "widget-action": { + "header-button": "ウィジェットヘッダーボタン", + "do-nothing": "何もしない", + "open-dashboard-state": "新しいダッシュボードステートに移動", + "update-dashboard-state": "現在のダッシュボードステートを更新", + "open-dashboard": "別のダッシュボードに移動", + "custom": "カスタムアクション", + "custom-pretty": "カスタムアクション(HTMLテンプレート付き)", + "custom-pretty-error-title": "カスタムダイアログエラー", + "custom-pretty-template-error": "無効なカスタムダイアログテンプレートです。", + "custom-pretty-controller-error": "カスタムダイアログ機能の評価中にエラーが発生しました。", + "mobile-action": "モバイルアクション", + "target-dashboard-state": "ターゲットダッシュボードステート", + "target-dashboard-state-required": "ターゲットダッシュボードステートは必須です", + "set-entity-from-widget": "ウィジェットからエンティティを設定", + "target-dashboard": "ターゲットダッシュボード", + "select-target-dashboard": "ターゲットダッシュボードを選択", + "target-dashboard-required": "ターゲットダッシュボードは必須です。", + "open-right-layout": "右側ダッシュボードレイアウトを開く(モバイルビュー)", + "state-display-type": "ダッシュボードステート表示オプション", + "open-normal": "通常", + "open-in-separate-dialog": "別のダイアログで開く", + "open-in-popover": "ポップオーバーで開く", + "dialog-title": "ダイアログタイトル", + "dialog-hide-dashboard-toolbar": "ダイアログ内でダッシュボードツールバーを非表示", + "dialog-width": "ダイアログの幅(ビューポートの幅に対するパーセント)", + "dialog-height": "ダイアログの高さ(ビューポートの高さに対するパーセント)", + "dialog-size-range-error": "ダイアログサイズのパーセント値は1から100の範囲である必要があります。", + "popover-preferred-placement": "ポップオーバーの推奨配置", + "popover-placement-top": "上", + "popover-placement-topLeft": "左上", + "popover-placement-topRight": "右上", + "popover-placement-right": "右", + "popover-placement-rightTop": "右上", + "popover-placement-rightBottom": "右下", + "popover-placement-bottom": "下", + "popover-placement-bottomLeft": "左下", + "popover-placement-bottomRight": "右下", + "popover-placement-left": "左", + "popover-placement-leftTop": "左上", + "popover-placement-leftBottom": "左下", + "popover-hide-on-click-outside": "外側クリックでポップオーバーを非表示", + "popover-hide-dashboard-toolbar": "ポップオーバー内でダッシュボードツールバーを非表示", + "popover-width": "ポップオーバーの幅", + "popover-height": "ポップオーバーの高さ", + "popover-style": "ポップオーバーのスタイル", + "open-new-browser-tab": "新しいブラウザタブで開く", + "open-URL": "URLを開く", + "URL": "URL", + "url-required": "URLは必須です。", + "mobile": { + "device-provision": "デバイスのプロビジョニング", + "action-type": "モバイルアクションの種類", + "select-action-type": "モバイルアクションの種類を選択", + "action-type-required": "モバイルアクションの種類は必須です", + "take-picture-from-gallery": "ギャラリーから写真を撮る", + "take-photo": "写真を撮る", + "map-direction": "地図の方向を開く", + "map-location": "地図の位置を開く", + "scan-qr-code": "QRコードをスキャン", + "make-phone-call": "電話をかける", + "get-location": "電話の位置を取得", + "take-screenshot": "スクリーンショットを撮る" + }, + "custom-action-function": "カスタムアクション機能", + "custom-pretty-function": "カスタムアクション(HTMLテンプレート付き)機能", + "map-item-type": "マップアイテムの種類", + "map-item": { + "marker": "マーカー", + "polygon": "ポリゴン", + "rectangle": "長方形", + "circle": "円" + }, + "place-map-item": "マップアイテムを配置", + "map-item-tooltip": { + "customize-map-item-tooltips": "マップアイテムのツールチップをカスタマイズ", + "place-marker": "マーカーを配置", + "start-draw-rectangle": "長方形を描き始める", + "finish-draw-rectangle": "長方形を描き終わる", + "start-draw-polygon": "ポリゴンを描き始める", + "continue-draw-polygon": "ポリゴンの描画を続ける", + "finish-draw-polygon": "ポリゴンを描き終わる", + "start-draw-circle": "円を描き始める", + "finish-draw-circle": "円を描き終わる" + } + }, + "widgets-bundle": { + "current": "現在のバンドル", + "widgets-bundles": "ウィジェットバンドル", + "widgets-bundle-widgets": "ウィジェットバンドルのウィジェット", + "add": "ウィジェットバンドルを追加", + "delete": "ウィジェットバンドルを削除", + "title": "タイトル", + "title-required": "タイトルは必須です。", + "title-max-length": "タイトルは256文字以下である必要があります。", + "description": "説明", + "image-preview": "画像プレビュー", + "scada": "SCADAウィジェットバンドル", + "order": "順序", + "add-widgets-bundle-text": "新しいウィジェットバンドルを追加", + "no-widgets-bundles-text": "ウィジェットバンドルが見つかりません", + "empty": "ウィジェットバンドルは空です", + "details": "詳細", + "widgets-bundle-details": "ウィジェットバンドルの詳細", + "delete-widgets-bundle-title": "ウィジェットバンドル '{{widgetsBundleTitle}}' を削除してもよろしいですか?", + "delete-widgets-bundle-text": "確認後、ウィジェットバンドルと関連するすべてのデータは回復不可能になります。", + "delete-widgets-bundles-title": "{ count, plural, =1 {1 ウィジェットバンドル} other {# ウィジェットバンドル} } を削除してもよろしいですか?", + "delete-widgets-bundles-action-title": "{ count, plural, =1 {1 ウィジェットバンドル} other {# ウィジェットバンドル} } を削除", + "delete-widgets-bundles-text": "確認後、選択したすべてのウィジェットバンドルが削除され、関連するデータは回復不可能になります。", + "no-widgets-bundles-matching": "'{{widgetsBundle}}' に一致するウィジェットバンドルが見つかりませんでした。", + "widgets-bundle-required": "ウィジェットバンドルは必須です。", + "system": "システム", + "import": "ウィジェットバンドルをインポート", + "export": "ウィジェットバンドルをエクスポート", + "export-widgets-bundle-widgets-prompt": "エクスポートするデータにバンドルのウィジェットを含めます(そうでない場合は、参照されているウィジェットFQNのみがエクスポートされます)", + "export-failed-error": "ウィジェットバンドルのエクスポートに失敗しました: {{error}}", + "create-new-widgets-bundle": "新しいウィジェットバンドルを作成", + "widgets-bundle-file": "ウィジェットバンドルファイル", + "invalid-widgets-bundle-file-error": "ウィジェットバンドルのインポートに失敗しました: 無効なウィジェットバンドルのデータ構造。", + "search": "ウィジェットバンドルを検索", + "selected-widgets-bundles": "{ count, plural, =1 {1 ウィジェットバンドル} other {# ウィジェットバンドル} } が選択されました", + "open-widgets-bundle": "ウィジェットバンドルを開く", + "loading-widgets-bundles": "ウィジェットバンドルを読み込み中...", + "create-new": "新しいウィジェットバンドルを作成" + }, + "widget-config": { + "data": "データ", + "settings": "設定", + "advanced": "高度な設定", + "appearance": "外観", + "widget-card": "ウィジェットカード", + "mobile": "モバイル", + "title": "タイトル", + "title-tooltip": "タイトルツールチップ", + "general-settings": "一般設定", + "display-title": "ウィジェットタイトルの表示", + "card-title": "カードタイトル", + "drop-shadow": "ドロップシャドウ", + "enable-fullscreen": "全画面表示を有効にする", + "background-color": "背景色", + "text-color": "テキスト色", + "border-radius": "ボーダー半径", + "padding": "パディング", + "margin": "マージン", + "widget-style": "ウィジェットスタイル", + "widget-css": "ウィジェットCSS", + "title-style": "タイトルスタイル", + "mobile-mode-settings": "モバイルモード", + "order": "順序", + "height": "高さ", + "mobile-hide": "モバイルモードでウィジェットを非表示", + "desktop-hide": "デスクトップモードでウィジェットを非表示", + "units": "値の隣に表示する特殊記号", + "units-by-default": "デフォルトの単位", + "decimals": "小数点以下の桁数", + "decimals-by-default": "デフォルトの小数点", + "default-data-key-parameter-hint": "このパラメーターは、データキー設定によって上書きされない限り、すべてのウィジェット値に適用されます", + "units-short": "単位", + "decimals-short": "小数点", + "decimals-suffix": "小数点", + "digits-suffix": "桁", + "timewindow": "時間ウィンドウ", + "use-dashboard-timewindow": "ダッシュボードの時間ウィンドウを使用", + "use-widget-timewindow": "ウィジェットの時間ウィンドウを使用", + "display-timewindow": "時間ウィンドウを表示", + "legend": "凡例", + "display-legend": "凡例を表示", + "datasources": "データソース", + "datasource": "データソース", + "maximum-datasources": "最大{ count, plural, =1 {1つのデータソースのみ許可されています。} other {#件のデータソースが許可されています。} }", + "timeseries-key-error": "少なくとも1つの時系列データキーを指定する必要があります", + "datasource-type": "タイプ", + "datasource-parameters": "パラメータ", + "remove-datasource": "データソースを削除", + "add-datasource": "データソースを追加", + "target-device": "ターゲットデバイス", + "alarm-source": "アラームソース", + "actions": "アクション", + "action": "アクション", + "add-action": "アクションを追加", + "search-actions": "アクションを検索", + "no-actions-text": "アクションが見つかりません", + "action-source": "アクションソース", + "select-action-source": "アクションソースを選択", + "action-source-required": "アクションソースは必須です。", + "column-index": "列インデックス", + "select-column-index": "列インデックスを選択", + "column-index-required": "列インデックスは必須です。", + "not-set": "設定されていません", + "action-name": "名前", + "action-name-required": "アクション名は必須です。", + "action-name-not-unique": "同じ名前のアクションがすでに存在します。\nアクション名は同一のアクションソース内で一意である必要があります。", + "action-icon": "アイコン", + "header-button": { + "button-settings": "ボタン設定", + "button-type": "ボタンタイプ", + "button-type-basic": "基本", + "button-type-raised": " raised", + "button-type-stroked": "ストローク", + "button-type-flat": "フラット", + "button-type-icon": "アイコン", + "button-type-mini-fab": "FAB", + "colors": "色", + "color": "色", + "background": "背景", + "border": "枠線", + "advanced-button-style": "高度なボタンスタイル", + "button-style": "ボタンスタイル" + }, + "show-hide-action-using-function": "関数を使ってアクションの表示/非表示", + "show-action-function": "アクション表示関数", + "action-type": "タイプ", + "action-type-required": "アクションタイプは必須です。", + "edit-action": "アクションを編集", + "delete-action": "アクションを削除", + "delete-action-title": "ウィジェットアクションの削除", + "delete-action-text": "アクション名 '{{actionName}}' のウィジェットアクションを削除してもよろしいですか?", + "title-icon": "タイトルアイコン", + "display-icon": "タイトルアイコンを表示", + "card-icon": "カードアイコン", + "icon": "アイコン", + "icon-color": "アイコンの色", + "icon-size": "アイコンのサイズ", + "advanced-settings": "高度な設定", + "data-settings": "データ設定", + "limits": "制限", + "no-data-display-message": "\"表示するデータがありません\" の代替メッセージ", + "data-page-size": "データソースごとの最大エンティティ数", + "settings-component-not-found": "セレクタ '{{selector}}' の設定フォームコンポーネントが見つかりません", + "preview": "プレビュー", + "set": "設定", + "set-message": "メッセージを設定", + "advanced-title-style": "高度なタイトルスタイル", + "card-style": "カードスタイル", + "text": "テキスト", + "background": "背景", + "advanced-widget-style": "高度なウィジェットスタイル", + "card-buttons": "カードボタン", + "show-card-buttons": "カードボタンを表示", + "card-border-radius": "カードの枠線の半径", + "card-padding": "カードのパディング", + "card-appearance": "カードの外観", + "color": "色", + "tooltip": "ツールチップ", + "units-required": "単位は必須です。", + "list-layout": "リストレイアウト", + "layout": "レイアウト", + "resize-options": "リサイズオプション", + "resizable": "リサイズ可能", + "preserve-aspect-ratio": "アスペクト比を維持" + }, + "widget-type": { + "import": "ウィジェットタイプをインポート", + "export": "ウィジェットタイプをエクスポート", + "export-failed-error": "ウィジェットのエクスポートに失敗しました: {{error}}", + "widget-file": "ウィジェットファイル", + "invalid-widget-file-error": "ウィジェットのインポートに失敗しました: 無効なウィジェットデータ構造です。" + }, + "markdown": { + "edit": "編集", + "preview": "プレビュー", + "copy-code": "コピーするにはクリック", + "copied": "コピーしました!" + }, + "widgets": { + "mobile-app-qr-code": { + "configuration-hint": "設定はプラットフォームのメイン設定でのモバイルアプリQRコードウィジェットに依存します", + "get-it-on-google-play": "Google Playで入手", + "download-on-the-app-store": "App Storeでダウンロード" + }, + "action-button": { + "behavior": "動作", + "on-click": "クリック時", + "on-click-hint": "ボタンがクリックされたときにトリガーされるアクション", + "first-button-click": "最初のボタンクリック", + "first-button-click-hint": "最初のボタンを押している間のアクション。", + "second-button-click": "2番目のボタンクリック", + "second-button-click-hint": "2番目のボタンを押している間のアクション。", + "button-click-hint": "ウィジェットを押している間のアクション" + }, + "command-button": { + "behavior": "動作", + "on-click": "クリック時", + "on-click-hint": "ボタンがクリックされたときに実行されるアクション" + }, + "power-button": { + "behavior": "動作", + "power-on": "電源 'オン'", + "power-on-hint": "コンポーネントの電源をオンにするアクション。", + "power-off": "電源 'オフ'", + "power-off-hint": "コンポーネントの電源をオフにするアクション。", + "on-label": "オン", + "off-label": "オフ", + "layout": "レイアウト", + "layout-default": "デフォルト", + "layout-simplified": "簡易版", + "layout-outlined": "アウトライン", + "layout-default-volume": "デフォルト.ボリューム", + "layout-simplified-volume": "簡易版.ボリューム", + "layout-outlined-volume": "アウトライン.ボリューム", + "layout-default-icon": "デフォルト.アイコン", + "layout-simplified-icon": "簡易版.アイコン", + "layout-outlined-icon": "アウトライン.アイコン", + "main": "メイン", + "background": "背景", + "button-icon-on": "ボタンアイコン 'オン'", + "button-icon-off": "ボタンアイコン 'オフ'", + "power-on-colors": "電源 'オン' の色", + "power-off-colors": "電源 'オフ' の色", + "disabled-colors": "無効の色", + "button": "ボタン" + }, + "toggle-button": { + "behavior": "動作", + "checked": "チェック済み", + "unchecked": "未チェック", + "check": "チェック", + "check-hint": "コンポーネントをチェックするためのアクション。", + "uncheck": "チェック解除", + "uncheck-hint": "コンポーネントのチェックを解除するためのアクション。", + "auto-scale": "自動スケール", + "horizontal-fill": "横方向にフィル", + "vertical-fill": "縦方向にフィル", + "button-appearance": "ボタンの外観" + }, + "segmented-button": { + "layout": "レイアウト", + "layout-squared": "角型", + "layout-rounded": "丸型", + "card-border": "カードの枠線", + "button-appearance": "ボタンの外観", + "first": "最初", + "second": "次", + "color-styles": "カラースタイル", + "selected": "選択済み", + "unselected": "未選択" + }, + "button": { + "layout": "レイアウト", + "outlined": "アウトライン", + "filled": "塗りつぶし", + "underlined": "下線付き", + "basic": "基本", + "auto-scale": "自動スケール", + "label": "ラベル", + "icon": "アイコン", + "border-radius": "枠線の角丸", + "color-palette": "カラーパレット", + "main": "メイン", + "background": "背景", + "border": "枠線", + "custom-styles": "カスタムスタイル", + "clear-style": "スタイルをクリア", + "shadow": "影", + "enabled": "有効", + "disabled": "無効", + "preview": "プレビュー", + "copy-style-from": "スタイルをコピー元から" + }, + "value-stepper": { + "behavior": "動作", + "simplified": "簡易版", + "filled": "塗りつぶし", + "outlined": "アウトライン", + "volume": "ボリューム", + "initial-state": "初期状態", + "initial-state-hint": "初期値を取得するためのアクション。", + "disabled-state": "無効状態", + "disabled-state-hint": "コンポーネントが無効になる条件を設定。", + "right-button-click": "右ボタンクリック", + "right-button-click-hint": "右ボタンを押している間のアクション。", + "left-button-click": "左ボタンクリック", + "left-button-click-hint": "左ボタンを押している間のアクション。", + "auto-scale": "自動スケール", + "value-range": "範囲", + "min-range": "最小", + "max-range": "最大", + "value-increment-decrement-step": "値の増減ステップ", + "value": "値", + "value-box-background": "値ボックスの背景", + "border": "枠線", + "button-appearance": "ボタンの外観", + "left": "左", + "right": "右", + "left-button": "左ボタン", + "right-button": "右ボタン", + "icon": "アイコン", + "color-palette": "カラーパレット", + "main": "メイン", + "background": "背景", + "button-icon-on": "ボタンアイコン 'オン'", + "button-on-colors": "電源 'オン' の色", + "disabled-colors": "無効の色" + }, + "button-state": { + "activated-state": "アクティブ状態", + "activated-state-hint": "ボタンがアクティブである条件を設定。", + "disabled-state": "無効状態", + "disabled-state-hint": "ボタンが無効である条件を設定。", + "selected-state": "選択されたボタン", + "selected-state-hint": "ボタンが選択される条件を設定。", + "enabled": "有効", + "hovered": "ホバー", + "pressed": "押された", + "activated": "アクティブ", + "disabled": "無効", + "initial": "最初のボタン", + "first": "最初", + "second": "次" + }, + "background": { + "background": "背景", + "background-settings": "背景設定", + "background-type-image": "画像", + "background-type-color": "色", + "image-url": "画像URL", + "overlay": "オーバーレイ", + "enable-overlay": "オーバーレイを有効にする", + "blur": "ぼかし", + "preview": "プレビュー" + }, + "bar-chart": { + "bar-appearance": "バーの外観", + "label-on-bar": "バー上のラベル", + "value-on-bar": "バー上の値", + "bar-chart-style": "バーグラフのスタイル", + "bar-axis": "バー軸" + }, + "polar-area-chart": { + "polar-axis": "極軸", + "start-angle": "開始角度", + "polar-area-chart-style": "極エリアチャートスタイル" + }, + "battery-level": { + "layout": "レイアウト", + "layout-vertical-solid": "縦方向. ソリッド", + "layout-horizontal-solid": "横方向. ソリッド", + "layout-vertical-divided": "縦方向. 分割", + "layout-horizontal-divided": "横方向. 分割", + "icon": "アイコン", + "value": "値", + "auto-scale": "自動スケール", + "battery-level-color": "バッテリーレベルの色", + "battery-shape-color": "バッテリー形状の色", + "battery-level-card-style": "バッテリーレベルカードスタイル", + "sections-count": "セクションの数" + }, + "signal-strength": { + "value": "値", + "last-update": "最終更新", + "no-signal": "信号なし", + "layout": "レイアウト", + "layout-wifi": "Wi-Fi", + "layout-cellular-bar": "セルラーバー", + "icon": "アイコン", + "date": "日付", + "active-bars-color": "アクティブな信号バーの色", + "inactive-bars-color": "非アクティブな信号バーの色", + "signal-strength-card-style": "信号強度カードスタイル", + "no-signal-rssi-value": "\"信号なし\" RSSI値" + }, + "status-widget": { + "behavior": "動作", + "layout": "レイアウト", + "layout-default": "デフォルト", + "layout-center": "中央", + "layout-icon": "アイコン", + "on": "オン", + "off": "オフ", + "label": "ラベル", + "status": "ステータス", + "icon": "アイコン", + "color-palette": "カラーパレット", + "disabled-color-palette": "無効なカラーパレット", + "primary": "プライマリ", + "primary-color-hint": "アイコンとラベルの色", + "secondary": "セカンダリ", + "secondary-color-hint": "ステータスの色", + "background": "背景" + }, + "chart": { + "common-settings": "共通設定", + "enable-stacking-mode": "スタッキングモードを有効にする", + "selection": "時間範囲の選択", + "enable-selection-mode": "選択モードを有効にする", + "line-shadow-size": "ラインシャドウのサイズ", + "display-smooth-lines": "スムーズ(曲線)ラインを表示", + "default-bar-width": "非集計データのデフォルトのバー幅(ミリ秒)", + "bar-alignment": "バーの配置", + "bar-alignment-left": "左", + "bar-alignment-right": "右", + "bar-alignment-center": "中央", + "default-font": "デフォルトフォント", + "default-font-size": "デフォルトフォントサイズ", + "default-font-color": "デフォルトフォントカラー", + "thresholds-line-width": "すべてのしきい値のデフォルトのライン幅", + "tooltip-settings": "ツールチップ設定", + "tooltip": "ツールチップ", + "show-tooltip": "ツールチップを表示", + "hover-individual-points": "個々のポイントをホバー", + "show-cumulative-values": "スタッキングモードで累積値を表示", + "hide-zero-false-values": "ツールチップからゼロ/偽の値を非表示", + "tooltip-value-format-function": "ツールチップの値のフォーマット関数", + "grid-settings": "グリッド設定", + "show-vertical-lines": "縦線を表示", + "show-horizontal-lines": "横線を表示", + "grid-outline-border-width": "グリッドアウトライン/枠線の幅(px)", + "primary-color": "プライマリカラー", + "background-color": "背景色", + "ticks-color": "目盛りの色", + "xaxis-settings": "X軸設定", + "axis-title": "軸タイトル", + "xaxis-tick-labels-settings": "X軸の目盛りラベル設定", + "show-tick-labels": "軸目盛りラベルを表示", + "yaxis-settings": "Y軸設定", + "min-scale-value": "スケールの最小値", + "max-scale-value": "スケールの最大値", + "yaxis-tick-labels-settings": "Y軸の目盛りラベル設定", + "tick-step-size": "目盛り間のステップサイズ", + "number-of-decimals": "表示する小数点以下の桁数", + "ticks-formatter-function": "目盛りのフォーマット関数", + "comparison-settings": "比較設定", + "enable-comparison": "比較を有効にする", + "time-for-comparison": "比較期間", + "time-for-comparison-previous-interval": "前のインターバル(デフォルト)", + "time-for-comparison-days": "1日前", + "time-for-comparison-weeks": "1週間前", + "time-for-comparison-months": "1ヶ月前", + "time-for-comparison-years": "1年前", + "time-for-comparison-custom-interval": "カスタムインターバル", + "custom-interval-value": "カスタムインターバル値(ms)", + "comparison-x-axis-settings": "比較X軸設定", + "axis-position": "軸の位置", + "axis-position-top": "上(デフォルト)", + "axis-position-bottom": "下", + "custom-legend-settings": "カスタム凡例設定", + "enable-custom-legend": "カスタム凡例を有効にする(これにより、キーラベルに属性/時系列の値を使用できるようになります)", + "key-name": "キー名", + "key-name-required": "キー名は必須です", + "key-type": "キータイプ", + "key-type-attribute": "属性", + "key-type-timeseries": "時系列", + "label-keys-list": "ラベルで使用するキーリスト", + "no-label-keys": "設定されたキーはありません", + "add-label-key": "新しいキーを追加", + "line-width": "ライン幅", + "color": "色", + "data-is-hidden-by-default": "データはデフォルトで非表示です", + "disable-data-hiding": "データの非表示を無効にする", + "remove-from-legend": "凡例からデータキーを削除", + "exclude-from-stacking": "スタッキングから除外(「スタッキング」モードで使用可能)", + "line-settings": "ライン設定", + "show-line": "ラインを表示", + "fill-line": "ラインを塗りつぶし", + "fill-line-opacity": "塗りつぶしの不透明度", + "points-settings": "ポイント設定", + "show-points": "ポイントを表示", + "points-line-width": "ポイントのライン幅", + "points-radius": "ポイントの半径", + "point-shape": "ポイントの形状", + "point-shape-circle": "円", + "point-shape-cross": "十字", + "point-shape-diamond": "ひし形", + "point-shape-square": "四角", + "point-shape-triangle": "三角形", + "point-shape-custom": "カスタム関数", + "point-shape-draw-function": "ポイント形状描画関数", + "show-separate-axis": "別々の軸を表示", + "axis-position-left": "左", + "axis-position-right": "右", + "thresholds": "しきい値", + "no-thresholds": "設定されたしきい値はありません", + "add-threshold": "しきい値を追加", + "show-values-for-comparison": "比較のために履歴値を表示", + "comparison-values-label": "履歴値ラベル", + "comparison-line-color": "比較線の色", + "threshold-settings": "しきい値設定", + "use-as-threshold": "キー値をしきい値として使用", + "threshold-line-width": "しきい値のライン幅", + "threshold-color": "しきい値の色", + "common-pie-settings": "共通の円グラフ設定", + "radius": "半径", + "inner-radius": "内半径", + "tilt": "傾き", + "common-pie-settings-range-error": "値は0から1の範囲である必要があります", + "stroke-settings": "線設定", + "width-pixels": "幅(ピクセル)", + "show-labels": "ラベルを表示", + "animation-settings": "アニメーション設定", + "animated-pie": "円グラフのアニメーションを有効にする(実験的)", + "border-settings": "枠線設定", + "border-width": "枠線の幅", + "border-color": "枠線の色", + "legend-settings": "凡例設定", + "display-legend": "凡例を表示", + "labels-font-color": "ラベルのフォント色", + "series": "シリーズ", + "add-series": "シリーズを追加", + "series-settings": "シリーズ設定", + "remove-series": "シリーズを削除", + "no-series": "設定されたシリーズはありません", + "no-series-error": "少なくとも1つのシリーズを指定する必要があります", + "chart-appearance": "グラフの外観", + "vertical-grid-lines": "縦のグリッドライン", + "horizontal-grid-lines": "横のグリッドライン", + "chart-background": "グラフ背景", + "grid-lines-color": "グリッドラインの色", + "border": "枠線", + "axis": "軸", + "vertical-axis": "縦軸", + "ticks": "目盛り", + "horizontal-axis": "横軸", + "shape-empty-circle": "空の円", + "shape-circle": "円", + "shape-rect": "長方形", + "shape-round-rect": "角丸長方形", + "shape-triangle": "三角形", + "shape-diamond": "ひし形", + "shape-pin": "ピン", + "shape-arrow": "矢印", + "shape-none": "なし", + "line-type-solid": "実線", + "line-type-dashed": "破線", + "line-type-dotted": "点線", + "label-position-top": "上", + "label-position-bottom": "下", + "label-position-outside": "外側", + "label-position-inside": "内側", + "fill": "塗りつぶし", + "fill-type-none": "なし", + "fill-type-solid": "実線", + "fill-type-opacity": "不透明度", + "fill-type-gradient": "グラデーション", + "background": "背景", + "opacity": "不透明度", + "gradient-stops": "グラデーションストップ", + "gradient-start": "開始", + "gradient-end": "終了", + "animation": { + "animation": "アニメーション", + "animation-threshold": "アニメーションしきい値", + "animation-duration": "アニメーションの期間", + "animation-easing": "アニメーションのイージング", + "animation-delay": "アニメーションの遅延", + "update-animation-duration": "アニメーション期間を更新", + "update-animation-easing": "アニメーションのイージングを更新", + "update-animation-delay": "アニメーションの遅延を更新" + }, + "chart-axis": { + "scale": "スケール", + "scale-min": "最小", + "scale-max": "最大", + "scale-auto": "自動" + }, + "bar": { + "show-border": "枠線を表示", + "border-width": "枠線の幅", + "border-radius": "枠線の角丸", + "bar-width": "バーの幅", + "label": "ラベル", + "label-hint": "バーの上にラベルを表示。", + "series-label-hint": "バーの上に値とともにラベルを表示。", + "label-background": "ラベルの背景" + } + }, + "color": { + "color-settings": "カラー設定", + "color-type-constant": "定数", + "color-type-gradient": "グラデーション", + "color-type-range": "範囲", + "color-type-function": "関数", + "color": "色", + "value-range": "値の範囲", + "from": "開始", + "to": "終了", + "color-function": "色関数", + "copy-color-settings-from": "カラー設定をコピー元からコピー", + "copy-from": "コピー元", + "settings-type": "設定タイプ", + "basic-mode": "基本", + "advanced-mode": "詳細", + "entity-alias": "エンティティエイリアス", + "entity-attribute": "エンティティ属性", + "gradient-color": "グラデーションカラー", + "gradient-color-min": "色", + "gradient-start": "グラデーション開始色", + "gradient-start-min": "開始", + "gradient-end": "グラデーション終了色", + "gradient-end-min": "終了", + "start-value": "開始値", + "end-value": "終了値", + "gradient-type": "グラデーションタイプ" + }, + "dashboard-state": { + "dashboard-state-settings": "ダッシュボード状態設定", + "dashboard-state": "ダッシュボード状態ID", + "autofill-state-layout": "デフォルトで状態レイアウトの高さを自動入力", + "default-margin": "デフォルトのウィジェットマージン", + "default-background-color": "デフォルトの背景色", + "sync-parent-state-params": "親ダッシュボードと状態パラメータを同期" + }, + "date-range-navigator": { + "date-range-picker-settings": "日付範囲ピッカー設定", + "hide-date-range-picker": "日付範囲ピッカーを非表示", + "picker-one-panel": "日付範囲ピッカー1パネル", + "picker-auto-confirm": "日付範囲ピッカー自動確認", + "picker-show-template": "日付範囲ピッカーのテンプレートを表示", + "first-day-of-week": "週の初めの日", + "interval-settings": "インターバル設定", + "hide-interval": "インターバルを非表示", + "initial-interval": "初期インターバル", + "interval-hour": "時間", + "interval-day": "日", + "interval-week": "週", + "interval-two-weeks": "2週間", + "interval-month": "月", + "interval-three-months": "3ヶ月", + "interval-six-months": "6ヶ月", + "step-settings": "ステップ設定", + "hide-step-size": "ステップサイズを非表示", + "initial-step-size": "初期ステップサイズ", + "hide-labels": "ラベルを非表示", + "use-session-storage": "セッションストレージを使用", + "localizationMap": { + "Sun": "日", + "Mon": "月", + "Tue": "火", + "Wed": "水", + "Thu": "木", + "Fri": "金", + "Sat": "土", + "Jan": "1月", + "Feb": "2月", + "Mar": "3月", + "Apr": "4月", + "May": "5月", + "Jun": "6月", + "Jul": "7月", + "Aug": "8月", + "Sep": "9月", + "Oct": "10月", + "Nov": "11月", + "Dec": "12月", + "January": "1月", + "February": "2月", + "March": "3月", + "April": "4月", + "June": "6月", + "July": "7月", + "August": "8月", + "September": "9月", + "October": "10月", + "November": "11月", + "December": "12月", + "Custom Date Range": "カスタム日付範囲", + "Date Range Template": "日付範囲テンプレート", + "Today": "今日", + "Yesterday": "昨日", + "This Week": "今週", + "Last Week": "先週", + "This Month": "今月", + "Last Month": "先月", + "Year": "年", + "This Year": "今年", + "Last Year": "昨年", + "Date picker": "日付ピッカー", + "Hour": "時間", + "Day": "日", + "Week": "週", + "2 weeks": "2週間", + "Month": "月", + "3 months": "3ヶ月", + "6 months": "6ヶ月", + "Custom interval": "カスタムインターバル", + "Interval": "インターバル", + "Step size": "ステップサイズ", + "Ok": "OK" + } + }, + "doughnut": { + "doughnut-appearance": "ドーナツの外観", + "layout": "レイアウト", + "layout-default": "デフォルト", + "layout-with-total": "合計あり", + "central-total-value": "中央の合計値", + "doughnut-card-style": "ドーナツカードスタイル" + }, + "entities-hierarchy": { + "hierarchy-data-settings": "階層データ設定", + "relations-query-function": "ノード関係クエリ関数", + "has-children-function": "ノードに子がいる関数", + "node-state-settings": "ノード状態設定", + "node-opened-function": "デフォルトのノード開閉関数", + "node-disabled-function": "ノード無効関数", + "display-settings": "表示設定", + "node-icon-function": "ノードアイコン関数", + "node-text-function": "ノードテキスト関数", + "sort-settings": "並べ替え設定", + "nodes-sort-function": "ノード並べ替え関数" + }, + "edge": { + "display-default-title": "デフォルトタイトルを表示" + }, + "gateway": { + "general-settings": "一般設定", + "widget-title": "ウィジェットのタイトル", + "default-archive-file-name": "デフォルトのアーカイブファイル名", + "device-type-for-new-gateway": "新しいgatewayのデバイスタイプ", + "messages-settings": "メッセージ設定", + "save-config-success-message": "正常に保存されたgateway構成についてのテキストメッセージ", + "device-name-exists-message": "入力した名前のデバイスがすでに存在する場合のテキストメッセージ", + "gateway-title": "Gatewayフォーム", + "read-only": "読み取り専用", + "events-title": "Gatewayイベントフォームタイトル", + "events-filter": "イベントフィルター", + "event-key-contains": "イベントキーに含まれる...", + "show-connector": "コネクタ用に表示", + "connector-state-param-key": "コネクタ状態パラメーターキー", + "message": "メッセージ", + "level": "レベル", + "created-time": "作成時間" + }, + "gauge": { + "default-color": "デフォルトの色", + "radial-gauge-settings": "放射状ゲージ設定", + "ticks-settings": "目盛り設定", + "min-value": "最小値", + "max-value": "最大値", + "min-value-short": "最小", + "max-value-short": "最大", + "start-ticks-angle": "目盛り開始角度", + "ticks-angle": "目盛り角度", + "major-ticks": "主要目盛り", + "major-ticks-count": "主要目盛りの数", + "major-ticks-color": "主要目盛りの色", + "minor-ticks": "副目盛り", + "minor-ticks-count": "副目盛りの数", + "minor-ticks-color": "副目盛りの色", + "tick-numbers-font": "目盛り番号フォント", + "unit-title-settings": "単位タイトル設定", + "show-unit-title": "単位タイトルを表示", + "unit-title": "単位タイトル", + "title-font": "タイトルテキストフォント", + "units-settings": "単位設定", + "units-font": "単位テキストフォント", + "value-box-settings": "値ボックス設定", + "show-value-box": "値ボックスを表示", + "value-box": "値ボックス", + "value-int": "値の整数部分の桁数", + "value-text": "値テキスト", + "value-text-shadow": "値テキストの影", + "value-font": "値テキストフォント", + "rect-stroke-color-start": "矩形の枠線色 - 開始グラデーション", + "rect-stroke-color-end": "矩形の枠線色 - 終了グラデーション", + "background-color": "背景色", + "shadow-color": "影の色", + "value-box-rect-stroke-color": "値ボックスの矩形枠線色", + "value-box-rect-stroke-color-end": "値ボックスの矩形枠線色 - 終了グラデーション", + "value-box-background-color": "値ボックスの背景色", + "value-box-shadow-color": "値ボックスの影の色", + "plate-settings": "プレート設定", + "show-plate-border": "プレート枠線を表示", + "plate-color": "プレートの色", + "needle-settings": "針設定", + "needle-circle-size": "針の円のサイズ", + "needle-color": "針の色", + "needle-color-start": "針の色 - 開始グラデーション", + "needle-color-end": "針の色 - 終了グラデーション", + "needle-color-shadow-up": "針の上半分の影の色", + "needle-color-shadow-down": "針の下半分の影の色", + "highlights-settings": "ハイライト設定", + "highlights-width": "ハイライトの幅", + "highlights": "ハイライト", + "highlight-from": "開始", + "highlight-to": "終了", + "highlight-color": "色", + "no-highlights": "設定されたハイライトはありません", + "add-highlight": "ハイライトを追加", + "animation-settings": "アニメーション設定", + "enable-animation": "アニメーションを有効にする", + "animation-duration-rule": "アニメーションの期間とルール", + "animation-duration": "アニメーションの期間", + "animation-rule": "アニメーションルール", + "animation-linear": "線形", + "animation-quad": "四角", + "animation-quint": "五角", + "animation-cycle": "サイクル", + "animation-bounce": "バウンス", + "animation-elastic": "エラスティック", + "animation-dequad": "デクアッド", + "animation-dequint": "デクイン", + "animation-decycle": "デサイクル", + "animation-debounce": "デバウンス", + "animation-delastic": "デラスティック", + "linear-gauge-settings": "リニアゲージ設定", + "bar-stroke": "バーの枠線", + "bar-stroke-width": "バーの枠線幅", + "bar-stroke-color": "バーの枠線色", + "bar-background-color": "バー背景色 - 開始グラデーション", + "bar-background-color-end": "バー背景色 - 終了グラデーション", + "progress-bar-color": "進行状況バーの色", + "progress-bar": "進行状況バー", + "progress-bar-color-start": "進行状況バーの色 - 開始グラデーション", + "progress-bar-color-end": "進行状況バーの色 - 終了グラデーション", + "major-ticks-names": "主要目盛り名", + "show-stroke-ticks": "目盛り枠線を表示", + "major-ticks-font": "主要目盛りフォント", + "border-color": "枠線の色", + "border-width": "枠線の幅", + "needle-circle": "針の円", + "needle-circle-color": "針の円の色", + "animation-target": "アニメーションターゲット", + "animation-target-needle": "針", + "animation-target-plate": "プレート", + "common-settings": "共通ゲージ設定", + "gauge-type": "ゲージタイプ", + "gauge-type-arc": "アーク", + "gauge-type-donut": "ドーナツ", + "gauge-type-horizontal-bar": "横バー", + "gauge-type-vertical-bar": "縦バー", + "donut-start-angle": "開始角度(度)", + "bar-settings": "ゲージバー設定", + "relative-bar-width": "相対的なバー幅", + "neon-glow-brightness": "ネオングロー効果の明るさ(0-100)", + "neon-glow-brightness-hint": "0 - 効果を無効にする", + "stripes-thickness": "ストライプの厚さ", + "stripes-thickness-hint": "0 - ストライプなし", + "rounded-line-cap": "丸みを帯びたラインキャップ", + "bar-color-settings": "バーの色設定", + "use-precise-level-color-values": "正確な色レベルを使用", + "bar-colors": "バーの色(下から上へ)", + "color": "色", + "no-bar-colors": "設定されたバーの色はありません", + "add-bar-color": "バーの色を追加", + "from": "開始", + "to": "終了", + "fixed-level-colors": "境界値を使用したバーの色", + "gauge-title-settings": "ゲージタイトル設定", + "show-gauge-title": "ゲージタイトルを表示", + "gauge-title": "ゲージタイトル", + "gauge-title-font": "ゲージタイトルフォント", + "unit-title-and-timestamp-settings": "単位タイトルとタイムスタンプ設定", + "show-timestamp": "タイムスタンプ", + "timestamp-format": "タイムスタンプ形式", + "label-font": "値の下に表示されるラベルのフォント", + "value-settings": "値設定", + "show-value": "値テキストを表示", + "min-max-settings": "最小/最大ラベル設定", + "show-min-max": "最小および最大値を表示", + "min-max-font": "最小および最大ラベルのフォント", + "show-ticks": "目盛りを表示", + "tick-width": "目盛りの幅", + "tick-color": "目盛りの色", + "tick-values": "目盛り値", + "no-tick-values": "設定された目盛り値はありません", + "add-tick-value": "目盛り値を追加", + "gauge-appearance": "ゲージの外観", + "units-title": "単位タイトル", + "value": "値", + "ticks": "目盛り", + "arrow-and-scale-color": "矢印とスケールのデフォルト色", + "scale-settings": "スケール設定", + "scale": "スケール", + "scale-color": "スケールの色", + "compass-appearance": "コンパスの外観", + "label": "ラベル", + "labels": "ラベル", + "label-style": "ラベルスタイル", + "simple-gauge-type": "タイプ", + "gauge-bar-background": "ゲージバーの背景", + "bar-color": "バーの色", + "min-and-max-value": "最小および最大値", + "min-and-max-label": "最小および最大ラベル", + "font": "フォント", + "tick-width-and-color": "目盛りの幅と色", + "min-max-validation-text": "最大値は最小値より大きくなければなりません" + }, + "gpio": { + "pin": "ピン", + "label": "ラベル", + "row": "行", + "column": "列", + "color": "色", + "panel-settings": "パネル設定", + "background-color": "背景色", + "gpio-switches": "GPIOスイッチ", + "no-gpio-switches": "設定されたGPIOスイッチはありません", + "add-gpio-switch": "GPIOスイッチを追加", + "gpio-status-request": "GPIOステータス要求", + "method-name": "メソッド名", + "method-body": "メソッドボディ", + "gpio-status-change-request": "GPIOステータス変更要求", + "parse-gpio-status-function": "GPIOステータス解析関数", + "gpio-leds": "GPIO LEDs", + "no-gpio-leds": "設定されたGPIO LEDsはありません", + "add-gpio-led": "GPIO LEDを追加" + }, + "html-card": { + "html": "HTML", + "css": "CSS" + }, + "input-widgets": { + "attribute-not-allowed": "このウィジェットでは属性パラメーターは使用できません", + "blocked-location": "ブラウザで位置情報がブロックされています", + "claim-device": "デバイスをクレーム", + "claim-failed": "デバイスのクレームに失敗しました!", + "claim-not-found": "デバイスが見つかりません!", + "claim-successful": "デバイスは正常にクレームされました!", + "date": "日付", + "device-name": "デバイス名", + "device-name-required": "デバイス名は必須です", + "discard-changes": "変更を破棄", + "entity-attribute-required": "エンティティ属性は必須です", + "entity-coordinate-required": "緯度と経度の両方のフィールドが必要です", + "entity-timeseries-required": "エンティティの時系列は必須です", + "get-location": "現在位置を取得", + "invalid-date": "無効な日付", + "latitude": "緯度", + "longitude": "経度", + "min-value-error": "最小値は{{value}}です", + "max-value-error": "最大値は{{value}}です", + "not-allowed-entity": "選択したエンティティには共有属性を持つことができません", + "no-attribute-selected": "属性が選択されていません", + "no-datakey-selected": "データキーが選択されていません", + "no-coordinate-specified": "緯度/経度のデータキーが指定されていません", + "no-entity-selected": "エンティティが選択されていません", + "no-image": "画像がありません", + "no-support-geolocation": "ブラウザは位置情報をサポートしていません", + "no-support-web-camera": "ブラウザはカメラをサポートしていません", + "enable-https-use-widget": "このウィジェットを使用するにはHTTPSを有効にしてください", + "no-found-your-camera": "カメラが見つかりません", + "no-permission-camera": "ユーザーにより許可が拒否されました / このサイトにはカメラ使用の許可がありません", + "no-timeseries-selected": "時系列が選択されていません", + "secret-key": "シークレットキー", + "secret-key-required": "シークレットキーは必須です", + "switch-attribute-value": "エンティティ属性の値を切り替え", + "switch-camera": "カメラを切り替え", + "switch-timeseries-value": "エンティティの時系列値を切り替え", + "take-photo": "写真を撮る", + "time": "時間", + "timeseries-not-allowed": "このウィジェットでは時系列パラメーターは使用できません", + "update-failed": "更新に失敗しました", + "update-successful": "更新が成功しました", + "update-attribute": "属性を更新", + "update-timeseries": "時系列を更新", + "value": "値", + "general-settings": "一般設定", + "widget-title": "ウィジェットタイトル", + "claim-button-label": "クレームボタンのラベル", + "show-secret-key-field": "'シークレットキー'入力フィールドを表示", + "labels-settings": "ラベル設定", + "show-labels": "ラベルを表示", + "device-name-label": "デバイス名入力フィールドのラベル", + "secret-key-label": "シークレットキー入力フィールドのラベル", + "messages-settings": "メッセージ設定", + "claim-device-success-message": "デバイスクレーム成功のテキストメッセージ", + "claim-device-not-found-message": "デバイスが見つからない場合のテキストメッセージ", + "claim-device-failed-message": "デバイスクレーム失敗のテキストメッセージ", + "claim-device-name-required-message": "'デバイス名は必須' エラーメッセージ", + "claim-device-secret-key-required-message": "'シークレットキーは必須' エラーメッセージ", + "show-label": "ラベルを表示", + "label": "ラベル", + "required": "必須", + "required-error-message": "'必須' エラーメッセージ", + "show-result-message": "結果メッセージを表示", + "integer-field-settings": "整数フィールド設定", + "min-value": "最小値", + "max-value": "最大値", + "double-field-settings": "倍精度フィールド設定", + "text-field-settings": "テキストフィールド設定", + "min-length": "最小長さ", + "max-length": "最大長さ", + "checkbox-settings": "チェックボックス設定", + "true-label": "チェック済みラベル", + "false-label": "未チェックラベル", + "image-input-settings": "画像入力設定", + "display-preview": "プレビューを表示", + "display-clear-button": "クリアボタンを表示", + "display-apply-button": "適用ボタンを表示", + "display-discard-button": "破棄ボタンを表示", + "datetime-field-settings": "日付/時刻フィールド設定", + "display-time-input": "時間入力を表示", + "latitude-key-name": "緯度キー名", + "longitude-key-name": "経度キー名", + "show-get-location-button": "「現在位置を取得」ボタンを表示", + "use-high-accuracy": "高精度を使用", + "location-fields-settings": "位置情報フィールド設定", + "latitude-label": "緯度のラベル", + "longitude-label": "経度のラベル", + "input-fields-alignment": "入力フィールドの配置", + "input-fields-alignment-column": "列(デフォルト)", + "input-fields-alignment-row": "行", + "layout": "レイアウト", + "row-gap": "行間のギャップ(ピクセル)", + "column-gap": "列間のギャップ(ピクセル)", + "latitude-field-required": "緯度フィールドは必須です", + "longitude-field-required": "経度フィールドは必須です", + "attribute-settings": "属性設定", + "widget-mode": "ウィジェットモード", + "widget-mode-update-attribute": "属性を更新", + "widget-mode-update-timeseries": "時系列を更新", + "attribute-scope": "属性範囲", + "attribute-scope-server": "サーバー属性", + "attribute-scope-shared": "共有属性", + "value-required": "値は必須です", + "image-settings": "画像設定", + "image-format": "画像形式", + "image-format-jpeg": "JPEG", + "image-format-png": "PNG", + "image-format-webp": "WEBP", + "image-quality": "損失圧縮を使用する画像品質(JPEGやWEBPなど)", + "max-image-width": "最大画像幅", + "max-image-height": "最大画像高さ", + "action-buttons": "アクションボタン", + "show-action-buttons": "アクションボタンを表示", + "update-all-values": "変更された値だけでなく、すべての値を更新", + "save-button-label": "'SAVE' ボタンラベル", + "reset-button-label": "'UNDO' ボタンラベル", + "group-settings": "グループ設定", + "show-group-title": "異なるエンティティに関連するフィールドのグループタイトルを表示", + "group-title": "グループタイトル", + "fields-alignment": "フィールドの配置", + "fields-alignment-row": "行(デフォルト)", + "fields-alignment-column": "列", + "fields-in-row": "行のフィールド数", + "option-value": "値(空のオプションを作成するために 'null' を入力)", + "option-label": "ラベル", + "hide-input-field": "入力フィールドを非表示", + "datakey-type": "データキータイプ", + "datakey-type-server": "サーバー属性(デフォルト)", + "datakey-type-shared": "共有属性", + "datakey-type-timeseries": "時系列", + "datakey-value-type": "データキーの値のタイプ", + "datakey-value-type-string": "文字列", + "datakey-value-type-double": "倍精度", + "datakey-value-type-integer": "整数", + "datakey-value-type-json": "JSON", + "datakey-value-type-boolean-checkbox": "ブール値(チェックボックス)", + "datakey-value-type-boolean-switch": "ブール値(スイッチ)", + "datakey-value-type-date-time": "日付と時刻", + "datakey-value-type-date": "日付", + "datakey-value-type-time": "時間", + "datakey-value-type-select": "選択", + "datakey-value-type-radio": "ラジオ", + "datakey-value-type-color": "色", + "value-is-required": "値は必須です", + "ability-to-edit-attribute": "属性の編集能力", + "ability-to-edit-attribute-editable": "編集可能(デフォルト)", + "ability-to-edit-attribute-disabled": "無効", + "ability-to-edit-attribute-readonly": "読み取り専用", + "disable-on-datakey-name": "他のデータキーの偽の値で無効にする(データキー名を指定)", + "field-appearance": "フィールドの外観", + "appearance-fill": "塗りつぶし", + "appearance-outline": "アウトライン", + "subscript-sizing": "添え字サイズ", + "subscript-sizing-fixed": "固定", + "subscript-sizing-dynamic": "動的", + "slide-toggle-settings": "スライドトグル設定", + "slide-toggle-label-position": "スライドトグルラベル位置", + "slide-toggle-label-position-after": "後", + "slide-toggle-label-position-before": "前", + "select-options": "選択肢", + "no-select-options": "設定された選択肢はありません", + "add-select-option": "選択肢を追加", + "numeric-field-settings": "数値フィールド設定", + "step-interval": "値の間のステップ間隔", + "error-messages": "エラーメッセージ", + "min-value-error-message": "'最小値' エラーメッセージ", + "max-value-error-message": "'最大値' エラーメッセージ", + "invalid-date-error-message": "'無効な日付' エラーメッセージ", + "invalid-JSON-error-message": "'無効なJSON' エラーメッセージ", + "icon-settings": "アイコン設定", + "dialog-editor-settings": "ダイアログエディター設定", + "use-custom-icon": "カスタムアイコンを使用", + "input-cell-icon": "入力セル前に表示するアイコン", + "value-conversion-settings": "値変換設定", + "get-value-settings": "値取得設定", + "use-get-value-function": "getValue関数を使用", + "get-value-function": "getValue関数", + "set-value-settings": "値設定設定", + "use-set-value-function": "setValue関数を使用", + "set-value-function": "setValue関数", + "json-invalid": "JSON値の形式が無効です", + "title": "タイトル", + "cancel-button-label": "'キャンセル' ボタンラベル", + "radio-button-settings": "ラジオボタン設定", + "color": "色", + "columns": "列", + "radio-options": "ラジオオプション", + "no-radio-options": "設定されたラジオオプションはありません", + "add-radio-option": "ラジオオプションを追加", + "radio-label-position": "ラベル位置", + "radio-label-position-before": "前", + "radio-label-position-after": "後" + }, + "invalid-qr-code-text": "QRコードの入力テキストが無効です。入力は文字列タイプである必要があります", + "qr-code": { + "use-qr-code-text-function": "QRコードテキスト関数を使用", + "qr-code-text-pattern": "QRコードテキストパターン(例: '${entityName} | ${keyName} - some text.')", + "qr-code-text-pattern-hint": "QRコードテキストパターンは、エンティティのエイリアス内で最初に見つかったキーの値を使用します。", + "qr-code-text-pattern-required": "QRコードテキストパターンは必須です。", + "qr-code-text-function": "QRコードテキスト関数" + }, + "label-widget": { + "label-pattern": "パターン", + "label-pattern-hint": "ヒント: 例: 'Text ${keyName} units.' または ${#<key index>} units'", + "label-pattern-required": "パターンは必須です", + "label-position": "位置(背景に対するパーセンテージ)", + "x-pos": "X", + "y-pos": "Y", + "background-color": "背景色", + "font-settings": "フォント設定", + "background-image": "背景画像", + "labels": "ラベル", + "no-labels": "設定されたラベルはありません", + "add-label": "ラベルを追加" + }, + "navigation": { + "title": "タイトル", + "navigation-path": "ナビゲーションパス", + "filter-type": "フィルタータイプ", + "filter-type-all": "すべてのアイテム", + "filter-type-include": "アイテムを含む", + "filter-type-exclude": "アイテムを除外", + "items": "アイテム", + "enter-urls-to-filter": "フィルターするURLを入力..." + }, + "persistent-table": { + "rpc-id": "RPC ID", + "message-type": "メッセージタイプ", + "method": "メソッド", + "params": "パラメータ", + "created-time": "作成時間", + "expiration-time": "有効期限", + "retries": "再試行回数", + "status": "ステータス", + "filter": "フィルター", + "refresh": "リフレッシュ", + "add": "RPCリクエストを追加", + "details": "詳細", + "delete": "削除", + "delete-request-title": "永続的なRPCリクエストを削除", + "delete-request-text": "リクエストを削除してもよろしいですか?", + "details-title": "詳細 RPC ID: ", + "additional-info": "追加情報", + "response": "レスポンス", + "any-status": "任意のステータス", + "rpc-status-list": "RPCステータスリスト", + "no-request-prompt": "表示するリクエストはありません", + "send-request": "リクエストを送信", + "add-title": "永続的なRPCリクエストを作成", + "method-error": "メソッドは必須です。", + "timeout-error": "最小タイムアウト値は5000(5秒)です。", + "white-space-error": "空白は許可されていません。", + "rpc-status": { + "QUEUED": "待機中", + "SENT": "送信済み", + "DELIVERED": "配信済み", + "SUCCESSFUL": "成功", + "TIMEOUT": "タイムアウト", + "EXPIRED": "期限切れ", + "FAILED": "失敗" + }, + "rpc-search-status-all": "すべて", + "message-types": { + "false": "双方向", + "true": "一方向" + }, + "general-settings": "一般設定", + "enable-filter": "フィルターを有効にする", + "enable-sticky-header": "スクロール中にヘッダーを表示", + "enable-sticky-action": "スクロール中にアクション列を表示", + "display-request-details": "リクエスト詳細を表示", + "allow-send-request": "RPCリクエストの送信を許可", + "allow-delete-request": "リクエストの削除を許可", + "columns-settings": "列設定", + "display-columns": "表示する列", + "column": "列", + "no-columns-found": "列が見つかりません", + "no-columns-matching": "'{{column}}' が見つかりません。" + }, + "range-chart": { + "chart": "チャート", + "data-zoom": "データズーム", + "range-chart-appearance": "範囲チャートの外観", + "range-colors": "範囲の色", + "out-of-range-color": "範囲外の色", + "show-range-thresholds": "範囲しきい値を表示", + "range-thresholds-settings": "範囲しきい値設定", + "fill-area": "塗りつぶし領域", + "fill-area-opacity": "塗りつぶし領域の不透明度", + "range-chart-style": "範囲チャートスタイル" + }, + "knob": { + "behavior": "動作", + "initial-value": "初期値", + "initial-value-hint": "ノブの初期値を取得するためのアクション。", + "on-value-change": "値の変更時", + "on-value-change-hint": "ノブの値が変更されたときにトリガーされるアクション。", + "range": "範囲", + "min": "最小", + "max": "最大", + "value": "値", + "fallback-initial-value": "フォールバック初期値" + }, + "rpc": { + "value-settings": "値設定", + "initial-value": "初期値", + "retrieve-value-settings": "値の取得設定(オン/オフ)", + "retrieve-value-method": "値を取得する方法", + "retrieve-value-method-none": "取得しない", + "retrieve-value-method-rpc": "RPCのget値メソッドを呼び出す", + "retrieve-value-method-attribute": "属性をサブスクライブする", + "retrieve-value-method-timeseries": "時系列をサブスクライブする", + "attribute-value-key": "属性キー", + "timeseries-value-key": "時系列キー", + "get-value-method": "RPCのget値メソッド", + "parse-value-function": "値解析関数", + "update-value-settings": "値設定の更新", + "set-value-method": "RPCのset値メソッド", + "convert-value-function": "値変換関数", + "rpc-settings": "RPC設定", + "request-timeout": "RPCリクエストタイムアウト(ms)", + "persistent-rpc-settings": "永続的なRPC設定", + "request-persistent": "RPCリクエスト永続化", + "persistent-polling-interval": "永続的なRPCコマンドレスポンスを取得するポーリング間隔(ms)", + "common-settings": "共通設定", + "switch-title": "スイッチタイトル", + "show-on-off-labels": "オン/オフラベルを表示", + "slide-toggle-label": "スライドトグルラベル", + "label-position": "ラベル位置", + "label-position-before": "前", + "label-position-after": "後", + "slider-color": "スライダーの色", + "slider-color-primary": "プライマリ", + "slider-color-accent": "アクセント", + "slider-color-warn": "警告", + "button-style": "ボタンスタイル", + "button-raised": "浮き上がったボタン", + "button-primary": "プライマリカラー", + "button-background-color": "ボタンの背景色", + "button-text-color": "ボタンのテキストカラー", + "widget-title": "ウィジェットタイトル", + "button-label": "ボタンラベル", + "device-attribute-scope": "デバイス属性範囲", + "server-attribute": "サーバー属性", + "shared-attribute": "共有属性", + "device-attribute-parameters": "デバイス属性パラメーター", + "is-one-way-command": "一方向コマンドかどうか", + "rpc-method": "RPCメソッド", + "rpc-method-params": "RPCメソッドパラメーター", + "show-rpc-error": "RPCコマンド実行エラーを表示", + "led-title": "LEDタイトル", + "led-color": "LEDの色", + "check-status-settings": "ステータス確認設定", + "perform-rpc-status-check": "RPCデバイスステータス確認を実行", + "retrieve-led-status-value-method": "方法を使用してLEDステータス値を取得", + "led-status-value-attribute": "LEDステータス値を含むデバイス属性", + "led-status-value-timeseries": "LEDステータス値を含むデバイスタイムシリーズ", + "check-status-method": "RPCデバイスステータスメソッド", + "parse-led-status-value-function": "LEDステータス値解析関数", + "knob-title": "ノブタイトル" + }, + "maps": { + "map-type": { + "type": "地図タイプ", + "map": "地図", + "image": "画像" + }, + "image": { + "image-source": "画像ソース", + "image-source-image": "画像", + "image-source-entity-key": "エンティティキー", + "source-entity-alias": "ソースエンティティエイリアス", + "image-url-key": "画像URLキー", + "image-url-key-required": "画像URLキーは必須です" + }, + "control": { + "map-controls": "地図コントロール", + "position": "位置", + "position-topleft": "左上", + "position-topright": "右上", + "position-bottomleft": "左下", + "position-bottomright": "右下", + "zoom-actions": "ズームアクション", + "zoom-scroll": "スクロール", + "zoom-double-click": "ダブルクリック", + "zoom-control-buttons": "コントロールボタン", + "scale": "スケール", + "scale-metric": "メートル法", + "scale-imperial": "インペリアル単位", + "switch-to-drag-mode-using-button": "ボタンを使用してドラッグモードに切り替え" + }, + "timeline": { + "control-panel": "タイムラインコントロールパネル", + "time-step": "時間ステップ", + "speed-options": "速度オプション", + "timestamp": "タイムスタンプ", + "snap-to-real-location": "実際の位置にスナップ", + "location-snap-filter-function": "位置スナップフィルター関数", + "no-trips-data-available": "利用可能な旅行データはありません" + }, + "map-action": { + "map-action-buttons": "地図アクションボタン", + "label": "ラベル", + "icon": "アイコン", + "color": "色", + "action": "アクション", + "add-button": "ボタンを追加", + "no-action-buttons-configured": "設定されたアクションボタンはありません", + "remove-action-button": "アクションボタンを削除", + "map-action-button": "地図アクションボタン", + "button-requires": "ボタンにはラベルまたはアイコンが必要です" + }, + "common": { + "common-map-settings": "共通の地図設定", + "fit-map-bounds": "地図の境界を調整してすべてのマーカーをカバー", + "default-map-center-position": "デフォルトの地図中央位置", + "default-map-zoom-level": "デフォルトの地図ズームレベル", + "entities-limit": "読み込むエンティティの制限" + }, + "layer": { + "label": "ラベル", + "layer": "レイヤー", + "layers": "レイヤー", + "map-layers": "地図レイヤー", + "add-layer": "レイヤーを追加", + "layer-settings": "レイヤー設定", + "remove-layer": "レイヤーを削除", + "no-layers": "設定されたレイヤーはありません", + "roadmap": "道路地図", + "satellite": "衛星", + "hybrid": "ハイブリッド", + "reference": { + "reference-layer": "参照レイヤー", + "no-layer": "レイヤーなし", + "openstreetmap-hybrid": "OpenStreetMap ハイブリッド", + "world-edition-hybrid": "ワールドエディション ハイブリッド", + "enhanced-contrast-hybrid": "強調コントラスト ハイブリッド" + }, + "provider": { + "provider": "プロバイダー", + "openstreet": { + "title": "OpenStreet", + "mapnik": "Mapnik", + "hot": "HOT", + "esri-street": "WorldStreetMap", + "esri-topo": "WorldTopoMap", + "esri-imagery": "WorldImagery", + "cartodb-positron": "Positron", + "cartodb-dark-matter": "DarkMatter" + }, + "google": { + "title": "Google", + "roadmap": "道路地図", + "satellite": "衛星", + "hybrid": "ハイブリッド", + "terrain": "地形" + }, + "here": { + "title": "HERE", + "normal-day": "通常の日", + "normal-night": "通常の夜", + "hybrid-day": "ハイブリッドの日", + "terrain-day": "地形の日" + }, + "tencent": { + "title": "Tencent", + "normal": "通常", + "satellite": "衛星", + "terrain": "地形" + }, + "custom": { + "title": "カスタム", + "tile-url": "タイルURL" + } + }, + "credentials": { + "credentials": "認証情報", + "api-key": "APIキー" + } + }, + "overlays": { + "overlays": "オーバーレイ", + "overlays-hint": "地図エンティティのデータソース、外観、動作、編集オプション、およびグループ化を設定", + "trips": "旅行", + "markers": "マーカー", + "polygons": "ポリゴン", + "circles": "円" + }, + "data-layer": { + "source": "ソース", + "filter": "フィルター", + "additional-data-keys": "追加データキー", + "additional-datasources": "追加データソース", + "additional-datasources-hint": "地図に表示されていないエンティティから属性またはテレメトリデータにアクセスするためのデータソース、地図オーバーレイ関数で使用可能。", + "more-datasources": "さらにデータソース", + "data-keys": "データキー", + "add-datasource": "データソースを追加", + "no-datasources": "設定されたデータソースはありません", + "remove-datasource": "データソースを削除", + "behavior": "動作", + "on-click": "クリック時", + "on-click-hint": "ユーザーが地図アイテムをクリックしたときに呼び出されるアクション。", + "groups": "グループ", + "groups-hint": "オーバーレイに割り当てられたグループ名のリスト、地図上での可視性の切り替えに使用されます。", + "color": "色", + "color-settings": "色設定", + "color-type-constant": "定数", + "color-type-range": "範囲", + "color-type-function": "関数", + "color-range-source-key": "色範囲ソースキー", + "color-range-source-key-required": "色範囲ソースキーは必須です", + "color-range": "色範囲", + "color-function": "色関数", + "label": "ラベル", + "tooltip": "ツールチップ", + "pattern-type-pattern": "パターン", + "pattern-type-function": "関数", + "label-pattern": "ラベル(パターン例: '${entityName}', '${entityName}: (テキスト ${keyName} 単位.)')", + "label-function": "ラベル関数", + "tooltip-pattern": "ツールチップ(例: 'テキスト ${keyName} 単位.' または リンクテキスト)", + "tooltip-function": "ツールチップ関数", + "tooltip-trigger": "ツールチップトリガー", + "tooltip-trigger-click": "クリック時にツールチップを表示", + "tooltip-trigger-hover": "ホバー時にツールチップを表示", + "auto-close-tooltips": "ツールチップを自動的に閉じる", + "tooltip-offset": "ツールチップオフセット", + "tooltip-offset-horizontal": "水平方向", + "tooltip-offset-vertical": "垂直方向", + "tooltip-tag-actions": "タグアクション", + "add-tooltip-tag-action": "タグアクションを追加", + "edit-tooltip-tag-action": "タグアクションを編集", + "remove-tooltip-tag-action": "タグアクションを削除", + "action-add": "追加", + "action-edit": "編集", + "action-move": "移動", + "action-remove": "削除", + "edit-instruments": "インスツルメント", + "persist-location-attribute-scope": "位置を永続化する属性の範囲", + "enable-snapping": "精密描画のために他の頂点にスナッピングを有効にする", + "enable-snapping-hint": "新しいポイントを既存の形状と自動的に整列させ、描画を簡単かつ正確にします。", + "drag-drop-mode": "ドラッグ&ドロップモード", + "trip": { + "no-trips": "設定された旅行はありません", + "add-trip": "旅行を追加", + "trip-configuration": "旅行設定", + "remove-trip": "旅行を削除" + }, + "marker": { + "marker": "マーカー", + "latitude-key": "緯度キー", + "longitude-key": "経度キー", + "x-pos-key": "X位置キー", + "y-pos-key": "Y位置キー", + "latitude-key-required": "緯度キーは必須です", + "longitude-key-required": "経度キーは必須です", + "x-pos-key-required": "X位置キーは必須です", + "y-pos-key-required": "Y位置キーは必須です", + "no-markers": "設定されたマーカーはありません", + "add-marker": "マーカーを追加", + "marker-configuration": "マーカー設定", + "remove-marker": "マーカーを削除", + "marker-type": "マーカータイプ", + "marker-type-shape": "形状", + "marker-type-icon": "アイコン", + "marker-type-image": "画像", + "shape": "形状", + "icon": "アイコン", + "image": "画像", + "marker-shapes": "マーカー形状", + "marker-icon": "マーカーアイコン", + "marker-appearance": "マーカーの外観", + "marker-image": "マーカー画像", + "marker-image-type-image": "画像", + "marker-image-type-function": "関数", + "custom-marker-image-size": "カスタムマーカー画像サイズ", + "marker-image-function": "マーカー画像関数", + "marker-images": "マーカー画像", + "marker-offset": "マーカーオフセット", + "offset-horizontal": "水平方向", + "offset-vertical": "垂直方向", + "rotate-marker": "マーカーを回転", + "offset-angle": "オフセット角度", + "position-conversion": "位置変換", + "position-conversion-function": "位置変換関数、x,y 座標を0から1の範囲で返す必要があります", + "clustering": { + "use-map-markers-clustering": "地図マーカーのクラスタリングを使用", + "zoom-on-cluster-click": "クラスタをクリックしたときにズーム", + "max-zoom": "マーカーがクラスタの一部として含まれる最大ズームレベル(0 - 18)", + "max-radius": "クラスタがカバーする最大半径", + "zoom-animation": "ズーム時のマーカーのアニメーション", + "bounds-on-cluster-mouse-over": "クラスタにマウスオーバーしたときのマーカーの境界", + "spiderfy-max-zoom-level": "最大ズームレベルでスパイダーファイ(すべてのクラスターマーカーを見るため)", + "load-optimization": "読み込み最適化", + "chunked-load": "ページがフリーズしないようにマーカーをチャンクで追加", + "lazy-load": "マーカーを遅延読み込みで追加", + "use-cluster-marker-color-function": "クラスターマーカーの色関数を使用", + "marker-color-function": "マーカー色関数" + }, + "edit": "マーカーを編集", + "remove-marker-for": "'{{entityName}}'のマーカーを削除", + "place-marker": "マーカーを配置", + "place-marker-hint": "クリックしてマーカーを配置", + "place-marker-hint-with-entity": "'{{entityName}}'エンティティのマーカーを配置するにはクリック" + }, + "path": { + "path": "パス", + "path-decorator": "パスデコレーター", + "decorator-symbol": "デコレーターシンボル", + "decorator-symbol-arrow-head": "矢印", + "decorator-symbol-dash": "ダッシュ", + "decorator-arrangement": "デコレーター配置", + "decorator-offset": "開始", + "decorator-end-offset": "終了", + "decorator-repeat": "繰り返し" + }, + "points": { + "points": "ポイント", + "point-tooltip": "ポイントツールチップ" + }, + "shape": { + "fill": "塗りつぶし", + "fill-type-color": "色", + "fill-type-stripe": "ストライプ", + "fill-type-image": "画像", + "color": "色", + "stripe": "ストライプ", + "image": "画像", + "stroke": "枠線", + "fill-image": "塗りつぶし画像", + "fill-image-type-image": "画像", + "fill-image-type-function": "関数", + "preserve-aspect-ratio": "アスペクト比を保持", + "opacity": "不透明度", + "angle": "回転角度", + "scale": "スケール", + "fill-image-function": "形状塗りつぶし画像関数", + "fill-images": "形状塗りつぶし画像", + "stripe-pattern": "ストライプパターン", + "first-stripe": "最初のストライプ", + "second-stripe": "2番目のストライプ" + }, + "polygon": { + "polygon-key": "ポリゴンキー", + "polygon-key-required": "ポリゴンキーは必須です", + "no-polygons": "設定されたポリゴンはありません", + "add-polygon": "ポリゴンを追加", + "polygon-configuration": "ポリゴン設定", + "remove-polygon": "ポリゴンを削除", + "edit": "ポリゴンを編集", + "remove-polygon-for": "'{{entityName}}'のポリゴンを削除", + "cut": "ポリゴン領域を切り取る", + "rotate": "ポリゴンを回転", + "draw-rectangle": "矩形を描画", + "draw-polygon": "ポリゴンを描画", + "polygon-place-first-point-cut-hint": "最初のポイントを配置するにはクリック", + "continue-polygon-cut-hint": "描画を続けるにはクリック", + "finish-polygon-cut-hint": "最初のマーカーをクリックして描画を終了し、保存", + "polygon-place-first-point-hint": "ポリゴン: 最初のポイントを配置するにはクリック", + "polygon-place-first-point-hint-with-entity": "'{{entityName}}'のポリゴン: 最初のポイントを配置するにはクリック", + "continue-polygon-hint": "ポリゴン: 描画を続けるにはクリック", + "continue-polygon-hint-with-entity": "'{{entityName}}'のポリゴン: 描画を続けるにはクリック", + "finish-polygon-hint": "ポリゴン: 最初のマーカーをクリックして描画を終了", + "finish-polygon-hint-with-entity": "'{{entityName}}'のポリゴン: 最初のマーカーをクリックして描画を終了し、保存", + "rectangle-place-first-point-hint": "矩形: 最初のポイントを配置するにはクリック", + "rectangle-place-first-point-hint-with-entity": "'{{entityName}}'の矩形: 最初のポイントを配置するにはクリック", + "finish-rectangle-hint": "矩形: 描画を終了するにはクリック", + "finish-rectangle-hint-with-entity": "'{{entityName}}'の矩形: 描画を終了して保存するにはクリック" + }, + "circle": { + "circle-key": "円キー", + "circle-key-required": "円キーは必須です", + "no-circles": "設定された円はありません", + "add-circle": "円を追加", + "circle-configuration": "円設定", + "remove-circle": "円を削除", + "edit": "円を編集", + "remove-circle-for": "'{{entityName}}'の円を削除", + "draw-circle": "円を描画", + "place-circle-center-hint-with-entity": "'{{entityName}}'の円: 円の中心を配置するにはクリック", + "place-circle-center-hint": "円: 円の中心を配置するにはクリック", + "finish-circle-hint-with-entity": "'{{entityName}}'の円: 描画を終了して保存するにはクリック", + "finish-circle-hint": "円: 描画を終了するにはクリック" + }, + "select-entity": "エンティティを選択", + "select-entity-hint": "ヒント: 選択後、マップをクリックして位置を設定します" + }, + "select-entity": "エンティティを選択", + "select-entity-hint": "ヒント: 選択後、位置を設定するには地図をクリック", + "tooltips": { + "placeMarker": "'{{entityName}}'エンティティを配置するにはクリック", + "firstVertex": "'{{entityName}}'のポリゴン: 最初のポイントを配置するにはクリック", + "firstVertex-cut": "最初のポイントを配置するにはクリック", + "continueLine": "'{{entityName}}'のポリゴン: 描画を続けるにはクリック", + "continueLine-cut": "描画を続けるにはクリック", + "finishLine": "描画を終了するには既存のマーカーをクリック", + "finishPoly": "'{{entityName}}'のポリゴン: 最初のマーカーをクリックして描画を終了し、保存", + "finishPoly-cut": "最初のマーカーをクリックして描画を終了し、保存", + "finishRect": "'{{entityName}}'のポリゴン: 描画を終了して保存するにはクリック", + "startCircle": "'{{entityName}}'の円: 円の中心を配置するにはクリック", + "finishCircle": "'{{entityName}}'の円: 円の描画を終了するにはクリック", + "placeCircleMarker": "円マーカーを配置するにはクリック" + }, + "actions": { + "finish": "終了", + "cancel": "キャンセル", + "removeLastVertex": "最後のポイントを削除" + }, + "buttonTitles": { + "drawMarkerButton": "エンティティを配置", + "drawPolyButton": "ポリゴンを作成", + "drawLineButton": "ポリラインを作成", + "drawCircleButton": "円を作成", + "drawRectButton": "矩形を作成", + "editButton": "編集モード", + "dragButton": "ドラッグ&ドロップモード", + "cutButton": "ポリゴン領域を切り取る", + "deleteButton": "削除", + "drawCircleMarkerButton": "円マーカーを作成", + "rotateButton": "ポリゴンを回転" + }, + "map-provider-settings": "地図プロバイダー設定", + "map-provider": "地図プロバイダー", + "map-provider-google": "Google マップ", + "map-provider-openstreet": "OpenStreet マップ", + "map-provider-here": "HERE マップ", + "map-provider-image": "画像地図", + "map-provider-tencent": "Tencent マップ", + "openstreet-provider": "OpenStreet マッププロバイダー", + "openstreet-provider-mapnik": "OpenStreetMap.Mapnik(デフォルト)", + "openstreet-provider-hot": "OpenStreetMap.HOT", + "openstreet-provider-esri-street": "Esri.WorldStreetMap", + "openstreet-provider-esri-topo": "Esri.WorldTopoMap", + "openstreet-provider-esri-imagery": "Esri.WorldImagery", + "openstreet-provider-cartodb-positron": "CartoDB.Positron", + "openstreet-provider-cartodb-dark-matter": "CartoDB.DarkMatter", + "use-custom-provider": "カスタムプロバイダーを使用", + "custom-provider-tile-url": "カスタムプロバイダータイルURL", + "google-maps-api-key": "Google Maps APIキー", + "default-map-type": "デフォルトの地図タイプ", + "google-map-type-roadmap": "道路地図", + "google-map-type-satelite": "衛星", + "google-map-type-hybrid": "ハイブリッド", + "google-map-type-terrain": "地形", + "map-layer": "地図レイヤー", + "here-map-normal-day": "HERE.normalDay(デフォルト)", + "here-map-normal-night": "HERE.normalNight", + "here-map-hybrid-day": "HERE.hybridDay", + "here-map-terrain-day": "HERE.terrainDay", + "credentials": "認証情報", + "here-app-id": "HEREアプリID", + "here-app-code": "HEREアプリコード", + "here-api-key": "HERE APIキー", + "here-use-new-version-api-3": "APIバージョン3を使用", + "tencent-maps-api-key": "Tencent Maps APIキー", + "tencent-map-type-roadmap": "道路地図", + "tencent-map-type-satelite": "衛星", + "tencent-map-type-hybrid": "ハイブリッド", + "image-map-background": "画像地図背景", + "image-map-background-from-entity-attribute": "エンティティ属性から画像地図背景を取得", + "image-url-source-entity-alias": "画像URLソースエンティティエイリアス", + "image-url-source-entity-attribute": "画像URLソースエンティティ属性", + "common-map-settings": "共通の地図設定", + "x-pos-key-name": "X位置キー名", + "y-pos-key-name": "Y位置キー名", + "latitude-key-name": "緯度キー名", + "longitude-key-name": "経度キー名", + "default-map-zoom-level": "デフォルトの地図ズームレベル(0 - 20)", + "default-map-center-position": "デフォルトの地図中央位置(0,0)", + "disable-scroll-zooming": "スクロールズームを無効にする", + "disable-double-click-zooming": "ダブルクリックズームを無効にする", + "disable-zoom-control-buttons": "ズームコントロールボタンを無効にする", + "fit-map-bounds": "地図の境界を調整してすべてのマーカーをカバー", + "use-default-map-center-position": "デフォルトの地図中央位置を使用", + "entities-limit": "読み込むエンティティの制限", + "markers-settings": "マーカー設定", + "marker-offset-x": "位置に対するマーカーXオフセット(マーカー幅で乗算)", + "marker-offset-y": "位置に対するマーカーYオフセット(マーカー高さで乗算)", + "position-function": "位置変換関数、x,y 座標を0から1の範囲で返す必要があります", + "draggable-marker": "ドラッグ可能なマーカー", + "label": "ラベル", + "show-label": "ラベルを表示", + "use-label-function": "ラベル関数を使用", + "label-pattern": "ラベル(パターン例: '${entityName}', '${entityName}: (テキスト ${keyName} 単位.)')", + "label-function": "ラベル関数", + "tooltip": "ツールチップ", + "show-tooltip": "ツールチップを表示", + "show-tooltip-action": "ツールチップ表示のアクション", + "show-tooltip-action-click": "クリック時にツールチップを表示(デフォルト)", + "show-tooltip-action-hover": "ホバー時にツールチップを表示", + "auto-close-tooltips": "ツールチップを自動的に閉じる", + "use-tooltip-function": "ツールチップ関数を使用", + "tooltip-pattern": "ツールチップ(例: 'テキスト ${keyName} 単位.' または リンクテキスト)", + "tooltip-function": "ツールチップ関数", + "tooltip-offset-x": "マーカーアンカーに対するツールチップXオフセット(マーカー幅で乗算)", + "tooltip-offset-y": "マーカーアンカーに対するツールチップYオフセット(マーカー高さで乗算)", + "color": "色", + "use-color-function": "色関数を使用", + "color-function": "色関数", + "marker-image": "マーカー画像", + "use-marker-image-function": "マーカー画像関数を使用", + "custom-marker-image": "カスタムマーカー画像", + "custom-marker-image-size": "カスタムマーカー画像サイズ(px)", + "marker-image-function": "マーカー画像関数", + "marker-images": "マーカー画像", + "polygon-settings": "ポリゴン設定", + "show-polygon": "ポリゴンを表示", + "polygon-key-name": "ポリゴンキー名", + "enable-polygon-edit": "ポリゴン編集を有効にする", + "polygon-label": "ポリゴンラベル", + "show-polygon-label": "ポリゴンラベルを表示", + "use-polygon-label-function": "ポリゴンラベル関数を使用", + "polygon-label-pattern": "ポリゴンラベル(パターン例: '${entityName}', '${entityName}: (テキスト ${keyName} 単位.)')", + "polygon-label-function": "ポリゴンラベル関数", + "polygon-tooltip": "ポリゴンツールチップ", + "show-polygon-tooltip": "ポリゴンツールチップを表示", + "auto-close-polygon-tooltips": "ポリゴンツールチップを自動的に閉じる", + "use-polygon-tooltip-function": "ポリゴンツールチップ関数を使用", + "polygon-tooltip-pattern": "ツールチップ(例: 'テキスト ${keyName} 単位.' または リンクテキスト)", + "polygon-tooltip-function": "ポリゴンツールチップ関数", + "polygon-color": "ポリゴン色", + "polygon-opacity": "ポリゴン不透明度", + "use-polygon-color-function": "ポリゴン色関数を使用", + "polygon-color-function": "ポリゴン色関数", + "polygon-stroke": "ポリゴン枠線", + "stroke-color": "枠線の色", + "stroke-opacity": "枠線の不透明度", + "stroke-weight": "枠線の太さ", + "use-polygon-stroke-color-function": "ポリゴン枠線色関数を使用", + "polygon-stroke-color-function": "ポリゴン枠線色関数", + "circle-settings": "円設定", + "show-circle": "円を表示", + "circle-key-name": "円キー名", + "enable-circle-edit": "円編集を有効にする", + "circle-label": "円ラベル", + "show-circle-label": "円ラベルを表示", + "use-circle-label-function": "円ラベル関数を使用", + "circle-label-pattern": "円ラベル(パターン例: '${entityName}', '${entityName}: (テキスト ${keyName} 単位.)')", + "circle-label-function": "円ラベル関数", + "circle-tooltip": "円ツールチップ", + "show-circle-tooltip": "円ツールチップを表示", + "auto-close-circle-tooltips": "円ツールチップを自動的に閉じる", + "use-circle-tooltip-function": "円ツールチップ関数を使用", + "circle-tooltip-pattern": "ツールチップ(例: 'テキスト ${keyName} 単位.' または リンクテキスト)", + "circle-tooltip-function": "円ツールチップ関数", + "circle-fill-color": "円塗りつぶし色", + "circle-fill-color-opacity": "円塗りつぶし色の不透明度", + "use-circle-fill-color-function": "円塗りつぶし色関数を使用", + "circle-fill-color-function": "円塗りつぶし色関数", + "circle-stroke": "円枠線", + "use-circle-stroke-color-function": "円枠線色関数を使用", + "circle-stroke-color-function": "円枠線色関数", + "markers-clustering-settings": "マーカーのクラスタリング設定", + "use-map-markers-clustering": "地図マーカーのクラスタリングを使用", + "zoom-on-cluster-click": "クラスタをクリックしたときにズーム", + "max-cluster-zoom": "マーカーがクラスタの一部として含まれる最大ズームレベル(0 - 18)", + "max-cluster-radius-pixels": "クラスタがカバーする最大半径(ピクセル)", + "cluster-zoom-animation": "ズーム時のマーカーアニメーションを表示", + "show-markers-bounds-on-cluster-mouse-over": "クラスタにマウスオーバーしたときにマーカーの境界を表示", + "spiderfy-max-zoom-level": "最大ズームレベルでスパイダーファイ(すべてのクラスターマーカーを見るため)", + "load-optimization": "読み込み最適化", + "cluster-chunked-loading": "ページがフリーズしないようにマーカーをチャンクで追加", + "cluster-markers-lazy-load": "マーカーの遅延読み込みを使用", + "editor-settings": "エディター設定", + "enable-snapping": "精密描画のために他の頂点にスナッピングを有効にする", + "init-draggable-mode": "地図をドラッグ可能モードで初期化", + "hide-all-edit-buttons": "すべての編集コントロールボタンを非表示", + "hide-draw-buttons": "描画ボタンを非表示", + "hide-edit-buttons": "編集ボタンを非表示", + "hide-remove-button": "削除ボタンを非表示", + "route-map-settings": "ルート地図設定", + "trip-animation-settings": "旅行アニメーション設定", + "normalization-step": "正規化データステップ(ms)", + "tooltip-background-color": "ツールチップ背景色", + "tooltip-font-color": "ツールチップフォント色", + "tooltip-opacity": "ツールチップ不透明度(0-1)", + "auto-close-tooltip": "ツールチップを自動的に閉じる", + "rotation-angle": "マーカーの追加回転角度を設定(度)", + "path-settings": "パス設定", + "path-color": "パス色", + "use-path-color-function": "パス色関数を使用", + "path-color-function": "パス色関数", + "path-decorator": "パスデコレーター", + "use-path-decorator": "パスデコレーターを使用", + "decorator-symbol": "デコレーターシンボル", + "decorator-symbol-arrow-head": "矢印", + "decorator-symbol-dash": "ダッシュ", + "decorator-symbol-size": "デコレーターシンボルのサイズ(px)", + "use-path-decorator-custom-color": "パスデコレーターのカスタムカラーを使用", + "decorator-custom-color": "デコレーターのカスタムカラー", + "decorator-offset": "デコレーターオフセット", + "end-decorator-offset": "終了デコレーターオフセット", + "decorator-repeat": "デコレーターの繰り返し", + "points-settings": "ポイント設定", + "show-points": "ポイントを表示", + "point-color": "ポイントの色", + "point-size": "ポイントのサイズ(px)", + "use-point-color-function": "ポイント色関数を使用", + "point-color-function": "ポイント色関数", + "use-point-as-anchor": "ポイントをアンカーとして使用", + "point-as-anchor-function": "ポイントをアンカーとして使用する関数", + "independent-point-tooltip": "独立したポイントツールチップ", + "clustering-markers": "マーカーのクラスタリング", + "use-icon-create-function": "マーカーの色関数を使用", + "marker-color-function": "マーカー色関数" + }, + "markdown": { + "use-markdown-text-function": "Markdown/HTML値関数を使用", + "markdown-text-function": "Markdown/HTML値関数", + "markdown-text-pattern": "Markdown/HTMLパターン(変数を使用したmarkdownまたはHTML、例: '${entityName} または ${keyName} - 一部のテキスト.')", + "apply-default-markdown-style": "デフォルトのMarkdownスタイルを適用", + "markdown-css": "Markdown/HTML CSS" + }, + "simple-card": { + "label": "ラベル", + "label-position": "ラベル位置", + "label-position-left": "左", + "label-position-top": "上" + }, + "single-switch": { + "behavior": "動作", + "layout": "レイアウト", + "layout-right": "右", + "layout-left": "左", + "layout-centered": "中央", + "auto-scale": "自動スケール", + "label": "ラベル", + "icon": "アイコン", + "switch-color": "スイッチの色", + "on": "オン", + "off": "オフ", + "disabled": "無効", + "tumbler-color": "タンブラーの色", + "on-label": "オンラベル", + "off-label": "オフラベル", + "switch": "スイッチ" + }, + "slider": { + "behavior": "動作", + "initial-value": "初期値", + "initial-value-hint": "スライダーの初期値を取得するためのアクション。", + "on-value-change": "値変更時", + "on-value-change-hint": "スライダーの値が変更されたときにトリガーされるアクション。", + "layout": "レイアウト", + "layout-default": "デフォルト", + "layout-extended": "拡張", + "layout-simplified": "簡易", + "auto-scale": "自動スケール", + "icon": "アイコン", + "value": "値", + "range": "範囲", + "min": "最小", + "max": "最大", + "range-ticks": "範囲目盛り", + "tick-marks": "目盛り", + "colors": "色", + "main": "メイン", + "background": "背景", + "left-icon": "左アイコン", + "right-icon": "右アイコン", + "slider": "スライダー" + }, + "value-card": { + "layout": "レイアウト", + "layout-square": "正方形", + "layout-vertical": "縦", + "layout-centered": "中央", + "layout-simplified": "簡易", + "layout-horizontal": "横", + "layout-horizontal-reversed": "横(逆)", + "label": "ラベル", + "icon": "アイコン", + "value": "値", + "date": "日付", + "value-card-style": "値カードスタイル", + "auto-scale": "自動スケール" + }, + "label-card": { + "auto-scale": "自動スケール", + "label": "ラベル", + "icon": "アイコン", + "label-card-style": "ラベルカードスタイル" + }, + "label-value-card": { + "value": "値", + "label-value-card-style": "ラベルと値カードのスタイル" + }, + "liquid-level-card": { + "layout-simple": "シンプル", + "layout-percentage": "パーセンテージ", + "layout-absolute": "絶対", + "layout": "レイアウト", + "background-overlay": "値の背景オーバーレイ", + "total-volume": "総容量", + "total-volume-units": "総容量単位", + "tank": "タンク", + "shape": "形状", + "datasource-units": "ソース単位", + "widget-units": "ウィジェット単位", + "decimals": "小数点", + "liquid": "液体", + "liquid-color": "液体の色", + "value": "値", + "value-font": "値のフォント", + "level": "レベル", + "last-update": "最終更新", + "shape-by-attribute": "属性名でタンク形状を設定", + "tooltip-background": "背景色", + "background-blur": "背景のぼかし", + "tank-color": "タンクの色", + "static": "静的", + "see-examples": "例を見る", + "attribute": "属性", + "shape-type": "タイプ", + "v-oval": "縦楕円", + "v-cylinder": "縦シリンダー", + "v-capsule": "縦カプセル", + "rectangle": "矩形", + "h-oval": "横楕円", + "h-ellipse": "横楕円形", + "h-dish-ends": "横皿型端", + "h-cylinder": "横シリンダー", + "h-capsule": "横カプセル", + "h-elliptical_2_1": "横2:1楕円", + "icon": "カードアイコン", + "title": "カードタイトル", + "units": "単位", + "color-and-font": "色とフォント", + "shape-attribute-name": "属性名", + "total-volume-required": "総容量は必須です。", + "attribute-name-required": "属性名は必須です。", + "attribute-key-not-set": "属性 '{{attributeName}}' のキーが設定されていません", + "attribute-key-invalid": "属性 '{{attributeName}}' のキーが無効です" + }, + "aggregated-value-card": { + "subtitle": "サブタイトル", + "chart": "チャート", + "values": "値", + "value-appearance": "値の外観", + "position": "位置", + "position-center": "中央", + "position-right-top": "右上", + "position-right-bottom": "右下", + "position-left-top": "左上", + "position-left-bottom": "左下", + "font": "フォント", + "color": "色", + "arrow": "矢印", + "display-up-down-arrow": "上下矢印を表示", + "add-value": "値を追加", + "remove-value": "値を削除", + "no-values": "設定された値はありません", + "aggregation": "集計", + "aggregated-value-card-style": "集計値カードスタイル", + "auto-scale": "自動スケール" + }, + "value-chart-card": { + "layout": "レイアウト", + "layout-left": "左", + "layout-right": "右", + "auto-scale": "自動スケール", + "icon": "アイコン", + "value": "値", + "chart": "チャート", + "value-chart-card-style": "値チャートカードスタイル" + }, + "progress-bar": { + "layout": "レイアウト", + "layout-default": "デフォルト", + "layout-simplified": "簡易", + "auto-scale": "自動スケール", + "icon": "アイコン", + "value": "値", + "range": "範囲", + "min": "最小", + "max": "最大", + "range-ticks": "範囲目盛り", + "bar": "バー", + "bar-color": "バーの色", + "bar-background": "バーの背景", + "progress-bar-card-style": "プログレスバーカードスタイル" + }, + "notification": { + "max-notification-display": "表示する最大通知数", + "counter": "カウンター", + "counter-hint": "\"ウィジェットタイトル\"が有効な場合にカウンターが表示されます", + "icon": "アイコン", + "counter-value": "値", + "counter-color": "色", + "notification-button": "通知ボタン", + "button-view-all": "すべて表示", + "button-filter": "フィルター", + "type-filter": "タイプフィルター", + "button-mark-read": "すべてを既読にマーク", + "notification-types": "通知タイプ", + "notification-type": "通知タイプ", + "search-type": "タイプ検索", + "any-type": "任意のタイプ" + }, + "alarm-count": { + "alarm-count-card-style": "アラームカウントカードスタイル" + }, + "entity-count": { + "entity-count-card-style": "エンティティカウントカードスタイル" + }, + "count": { + "layout": "レイアウト", + "layout-column": "列", + "layout-row": "行", + "label": "ラベル", + "icon": "アイコン", + "icon-background": "アイコン背景", + "value": "値", + "chevron": "シェブロン", + "auto-scale": "自動スケール" + }, + "table": { + "common-table-settings": "共通テーブル設定", + "enable-search": "検索を有効にする", + "enable-sticky-header": "ヘッダーを常に表示", + "enable-sticky-action": "アクション列を常に表示", + "hidden-cell-button-display-mode": "隠れたセルボタンアクションの表示モード", + "show-empty-space-hidden-action": "隠れたセルボタンアクションの代わりに空白を表示", + "dont-reserve-space-hidden-action": "隠れたアクションボタンのためにスペースを予約しない", + "display-timestamp": "タイムスタンプ", + "display-pagination": "ページネーションを表示", + "default-page-size": "デフォルトのページサイズ", + "page-step-settings": "ページステップ設定", + "page-step-count": "ステップ数", + "page-step-increment": "ステップ増分", + "page-step-count-format-message": "1から100の範囲の整数値である必要があります。", + "page-step-increment-format-message": "1以上の整数値である必要があります。", + "use-entity-label-tab-name": "タブ名にエンティティラベルを使用", + "hide-empty-lines": "空白行を非表示", + "row-style": "行スタイル", + "use-row-style-function": "行スタイル関数を使用", + "row-style-function": "行スタイル関数", + "cell-style": "セルスタイル", + "use-cell-style-function": "セルスタイル関数を使用", + "cell-style-function": "セルスタイル関数", + "cell-content": "セルコンテンツ", + "use-cell-content-function": "セルコンテンツ関数を使用", + "cell-content-function": "セルコンテンツ関数", + "show-latest-data-column": "最新データ列を表示", + "latest-data-column-order": "最新データ列の順序", + "entities-table-title": "エンティティテーブルタイトル", + "enable-select-column-display": "表示する列を選択を有効にする", + "display-entity-name": "エンティティ名列を表示", + "entity-name-column-title": "エンティティ名列タイトル", + "display-entity-label": "エンティティラベル列を表示", + "entity-label-column-title": "エンティティラベル列タイトル", + "display-entity-type": "エンティティタイプ列を表示", + "default-sort-order": "デフォルトの並べ替え順序", + "custom-title": "カスタムヘッダータイトル", + "column-width": "列の幅(pxまたは%)", + "default-column-visibility": "デフォルトの列表示設定", + "column-visibility-visible": "表示", + "column-visibility-hidden": "非表示", + "column-visibility-hidden-mobile": "モバイルモードでは非表示", + "column-selection-to-display": "'表示する列' の列選択", + "column-selection-to-display-enabled": "有効", + "column-selection-to-display-disabled": "無効", + "alarms-table-title": "アラームテーブルタイトル", + "enable-alarms-selection": "アラーム選択を有効にする", + "enable-alarms-search": "アラーム検索を有効にする", + "enable-alarm-filter": "アラームフィルターを有効にする", + "display-alarm-details": "アラーム詳細を表示", + "allow-alarms-ack": "アラーム確認を許可", + "allow-alarms-clear": "アラームクリアを許可", + "display-alarm-activity": "アラーム活動を表示", + "allow-alarms-assign": "アラームの割り当てを許可", + "columns": "列", + "column-settings": "列設定", + "remove-column": "列を削除", + "add-column": "列を追加", + "no-columns": "設定された列はありません", + "columns-to-display": "表示する列", + "table-header": "テーブルヘッダー", + "header-buttons": "ヘッダーボタン", + "table-buttons": "テーブルボタン", + "pagination": "ページネーション", + "rows": "行", + "timeseries-column-error": "少なくとも1つの時系列列を指定する必要があります", + "alarm-column-error": "少なくとも1つのアラーム列を指定する必要があります", + "table-tabs": "テーブルタブ", + "show-cell-actions-menu-mobile": "モバイルモードでセルアクションのドロップダウンメニューを表示", + "disable-sorting": "ソートを無効にする" + }, + "latest-chart": { + "total": "合計", + "auto-scale": "自動スケール", + "clockwise-layout": "時計回りのレイアウト", + "sort-series": "ラベルで系列をソート", + "tooltip-value-type-absolute": "絶対", + "tooltip-value-type-percentage": "パーセンテージ" + }, + "pie-chart": { + "pie-chart-appearance": "円グラフの外観", + "label": "ラベル", + "border": "枠線", + "radius": "半径", + "pie-chart-card-style": "円グラフカードスタイル" + }, + "radar-chart": { + "radar-appearance": "レーダーの外観", + "shape": "形状", + "shape-polygon": "ポリゴン", + "shape-circle": "円形", + "color": "色", + "line": "線", + "points": "ポイント", + "points-label": "ポイントラベル", + "radar-axis": "レーダー軸", + "axis-label": "軸ラベル", + "ticks-label": "目盛りラベル", + "radar-chart-style": "レーダーチャートスタイル", + "max-axes-scaling": "最大軸スケーリング", + "max-axes-scaling-hint": "各レーダー軸に個別の最大値を設定するか(別々に)、またはウィジェットデータセットに基づいてすべての軸で最高値を共有するか(共通)を選択します。", + "separate": "別々に", + "common": "共通" + }, + "time-series-chart": { + "chart": "チャート", + "chart-style": "チャートスタイル", + "data-zoom": "データズーム", + "stack-mode": "スタックモード", + "stack-mode-hint": "チャート上で系列を積み重ねます。同じ単位の系列は互いに重ねて表示されます。", + "axes": "軸", + "y-axes": "Y軸", + "line-type": "線の種類", + "line-width": "線の幅", + "type-line": "線", + "type-bar": "バー", + "type-point": "ポイント", + "no-aggregation-bar-width-strategy": "非集計データのバー幅戦略", + "no-aggregation-bar-width-strategy-group": "グループ", + "no-aggregation-bar-width-strategy-separate": "別々に", + "bar-group-width": "バーグループ幅", + "bar-width": "バー幅", + "bar-width-relative": "時間ウィンドウの割合", + "bar-width-absolute": "絶対値(ms)", + "comparison": { + "comparison": "比較", + "comparison-hint": "比較は過去のデータにのみ機能します!", + "show": "表示", + "settings": "比較設定", + "show-values-for-comparison": "比較のために過去のデータを表示", + "comparison-values-label": "比較キーラベル", + "comparison-values-label-auto": "自動", + "comparison-data-color": "比較データの色" + }, + "threshold": { + "thresholds": "閾値", + "source": "ソース", + "key-value": "キー / 値", + "no-thresholds": "設定された閾値はありません", + "add-threshold": "閾値を追加", + "type-constant": "定数", + "type-latest-key": "キー", + "type-entity": "エンティティ", + "threshold-settings": "閾値設定", + "remove-threshold": "閾値を削除", + "threshold-value-required": "閾値の値は必須です。", + "key-required": "キーは必須です。", + "entity-key-required": "エンティティキーは必須です。", + "line-appearance": "線の外観", + "line-color": "線の色", + "start-symbol": "開始シンボル", + "end-symbol": "終了シンボル", + "symbol-size": "サイズ", + "label": "ラベル", + "label-position-start": "開始", + "label-position-middle": "中央", + "label-position-end": "終了", + "label-position-inside-start": "内側開始", + "label-position-inside-start-top": "内側開始上", + "label-position-inside-start-bottom": "内側開始下", + "label-position-inside-middle": "内側中央", + "label-position-inside-middle-top": "内側中央上", + "label-position-inside-middle-bottom": "内側中央下", + "label-position-inside-end": "内側終了", + "label-position-inside-end-top": "内側終了上", + "label-position-inside-end-bottom": "内側終了下", + "label-background": "ラベルの背景" + }, + "state": { + "states": "状態", + "label": "ラベル", + "ticks-value": "目盛りの値", + "source": "ソース", + "value-range": "値 / 範囲", + "no-states": "設定された状態はありません", + "add-state": "状態を追加", + "type-constant": "定数", + "type-range": "範囲", + "from": "から", + "to": "まで", + "remove-state": "状態を削除" + }, + "grid": { + "grid": "グリッド", + "background-color": "背景色", + "border": "枠線" + }, + "axis": { + "axes": "軸", + "x-axis": "X軸", + "y-axis": "Y軸", + "y-axis-settings": "Y軸設定", + "comparison-x-axis-settings": "比較X軸設定", + "remove-y-axis": "Y軸を削除", + "id": "ID", + "label": "ラベル", + "position": "位置", + "position-left": "左", + "position-right": "右", + "position-top": "上", + "position-bottom": "下", + "tick-labels": "目盛りラベル", + "ticks-formatter-function": "目盛り書式関数", + "ticks-generator-function": "目盛り生成関数", + "show-ticks": "目盛りを表示", + "show-line": "線を表示", + "show-split-lines": "分割線を表示", + "show-split-lines-x-axis-hint": "有効にすると、チャート上の縦線が表示されます。", + "show-split-lines-y-axis-hint": "有効にすると、チャート上の横線が表示されます。", + "ticks-interval": "目盛り間隔", + "ticks-interval-hint": "軸の分割間隔を強制的に設定します。", + "split-number": "分割数", + "split-number-hint": "軸が分割されるセグメント数。", + "min": "最小", + "max": "最大", + "show": "表示", + "add-y-axis": "Y軸を追加" + }, + "series": { + "legend-settings": "凡例設定", + "show-in-legend": "凡例に表示", + "show-in-legend-hint": "凡例に系列名とデータを表示します。", + "hidden-by-default": "デフォルトで非表示", + "hidden-by-default-hint": "デフォルトで凡例に系列を非表示にします。", + "series-type": "系列タイプ", + "type": "タイプ", + "type-line": "線", + "type-bar": "バー", + "line": { + "line": "線", + "show-line": "線を表示", + "step-line": "ステップライン", + "step-type-start": "開始", + "step-type-middle": "中央", + "step-type-end": "終了", + "smooth-line": "スムーズライン" + }, + "point": { + "points": "ポイント", + "show-points": "ポイントを表示", + "point-label": "ポイントラベル", + "point-label-hint": "系列ポイント上に値を表示するラベルを表示。", + "point-label-background": "ポイントラベルの背景", + "point-shape": "ポイントの形状", + "point-size": "ポイントのサイズ" + } + } + }, + "wind-speed-direction": { + "layout": "レイアウト", + "layout-default": "デフォルト", + "layout-advanced": "詳細", + "layout-simplified": "簡易", + "values": "値", + "wind-direction": "風向", + "center-value": "中央の値", + "icon": "アイコン", + "arrow": "矢印", + "ticks": "目盛り", + "labels-type": "ラベルの種類", + "directional-names": "方位名", + "degrees": "度", + "major-ticks": "主目盛り", + "minor-ticks": "補助目盛り", + "wind-speed-direction-card-style": "風速・風向カードのスタイル", + "ticks-color": "目盛りの色", + "ticks-labels-type": "目盛りラベルの種類", + "arrow-color": "矢印の色" + }, + "value-source": { + "value-source": "値のソース", + "predefined-value": "定数", + "entity-attribute": "エンティティ属性", + "value": "値", + "value-required": "値は必須です。", + "key-required": "キーは必須です。", + "entity-key-required": "エンティティキーは必須です。", + "source-entity-alias": "ソースエンティティエイリアス", + "source-entity-attribute": "ソースエンティティ属性", + "type-constant": "定数", + "type-latest-key": "キー", + "type-entity": "エンティティ" + }, + "rpc-state": { + "initial-state": "初期状態", + "initial-state-hint": "コンポーネントの初期状態(オン/オフ)を取得するアクション。", + "disabled-state": "無効状態", + "disabled-state-hint": "コンポーネントが無効になる条件を設定します。", + "turn-on": "'オン'にする", + "turn-on-hint": "'オン'に切り替えたときにトリガーされるアクション", + "turn-off": "'オフ'にする", + "turn-off-hint": "'オフ'に切り替えたときにトリガーされるアクション", + "on": "オン", + "off": "オフ", + "disabled": "無効" + }, + "value-action": { + "do-nothing": "何もしない", + "execute-rpc": "RPCを実行", + "get-attribute": "属性を取得", + "set-attribute": "属性を設定", + "get-time-series": "時系列データを取得", + "get-alarm-status": "アラーム状態を取得", + "get-dashboard-state": "ダッシュボード状態IDを取得", + "get-dashboard-state-object": "ダッシュボード状態オブジェクトを取得", + "add-time-series": "時系列データを追加", + "execute-rpc-text": "RPCメソッド '{{methodName}}' を実行", + "get-time-series-text": "時系列 '{{key}}' を使用", + "get-attribute-text": "属性 '{{key}}' を使用", + "get-alarm-status-text": "アラーム状態を使用", + "get-dashboard-state-text": "ダッシュボード状態を使用", + "get-dashboard-state-object-text": "ダッシュボード状態オブジェクトを使用", + "when-dashboard-state-is-text": "ダッシュボード状態IDが '{{state}}' の場合", + "when-dashboard-state-function-is-text": "f(ダッシュボード状態ID)が '{{state}}' の場合", + "when-dashboard-state-object-function-is-text": "f(ダッシュボード状態オブジェクト)が '{{state}}' の場合", + "set-attribute-to-value-text": "'{{key}}' 属性を {{value}} に設定", + "add-time-series-value-text": "'{{key}}' 時系列値を {{value}} に追加", + "set-attribute-text": "'{{key}}' 属性を設定", + "add-time-series-text": "'{{key}}' 時系列データを追加", + "action": "アクション", + "value": "値", + "init-value-hint": "デバイスがデータを送信するまで設定される値。", + "method": "メソッド", + "method-name-required": "メソッド名は必須です。", + "request-timeout-ms": "RPCリクエストタイムアウト(ms)", + "request-timeout-required": "リクエストタイムアウトは必須です。", + "min-request-timeout-error": "リクエストタイムアウト値は5000ms(5秒)以上である必要があります。", + "request-persistent": "RPCリクエストの永続性", + "persistent-polling-interval": "永続的なポーリング間隔(ms)", + "persistent-polling-interval-hint": "永続的なRPCコマンドレスポンスを取得するためのポーリング間隔(ms)", + "persistent-polling-interval-required": "永続的なポーリング間隔は必須です。", + "min-persistent-polling-interval-error": "永続的なポーリング間隔値は1000ms(1秒)以上である必要があります。", + "attribute-scope": "属性スコープ", + "attribute-key": "属性キー", + "attribute-key-required": "属性キーは必須です。", + "time-series-key": "時系列キー", + "time-series-key-required": "時系列キーは必須です。", + "action-result-converter": "アクション結果コンバーター", + "converter-none": "なし", + "converter-function": "関数", + "converter-constant": "定数", + "converter-value": "値", + "parse-value-function": "値解析関数", + "state-when-result-is": "結果が'{{state}}'のとき", + "parameters": "パラメータ", + "convert-value-function": "値変換関数", + "error": { + "target-entity-is-not-set": "ターゲットエンティティが設定されていません!", + "failed-to-perform-action": "{{ actionLabel }}アクションの実行に失敗しました。", + "invalid-attribute-scope": "{{scope}} 属性スコープは{{entityType}}エンティティではサポートされていません。" + } + }, + "widget-font": { + "font-settings": "フォント設定", + "font-family": "フォントファミリ", + "size": "サイズ", + "relative-font-size": "相対フォントサイズ(パーセント)", + "font-style": "スタイル", + "font-style-normal": "標準", + "font-style-italic": "斜体", + "font-style-oblique": "傾斜体", + "font-weight": "太さ", + "font-weight-normal": "標準", + "font-weight-bold": "太字", + "font-weight-bolder": "より太字", + "font-weight-lighter": "より細字", + "color": "色", + "shadow-color": "影の色", + "preview": "プレビュー", + "line-height": "行の高さ", + "auto": "自動" + }, + "home": { + "no-data-available": "データがありません" + }, + "system-info": { + "cpu": "CPU", + "ram": "RAM", + "disk": "ディスク", + "cpu-warning-text": "CPU使用率が高い状態です。システム障害を避けるため、システムパフォーマンスを最適化してください。", + "cpu-critical-text": "CPU使用率が非常に高い状態です。システム障害を避けるため、システムパフォーマンスを最適化してください。", + "ram-warning-text": "RAMの空き容量が少なくなっています。システム障害を避けるため、システムパフォーマンスを最適化するか、RAMのサイズを増加させてください。", + "ram-critical-text": "RAMの空き容量が非常に少ない状態です。システム障害を避けるため、システムパフォーマンスを最適化するか、RAMのサイズを増加させてください。", + "disk-warning-text": "ディスクの空き容量が少なくなっています。データ損失を避けるため、ディスクの空き容量を確保するか、ディスクの容量を増加させてください。", + "disk-critical-text": "ディスクの空き容量が非常に少ない状態です。データ損失を避けるため、ディスクの空き容量を確保するか、ディスクの容量を増加させてください。" + }, + "cluster-info": { + "service-id": "サービスID", + "service-type": "サービスタイプ", + "no-data": "データなし" + }, + "transport-messages": { + "title": "トランスポートメッセージ", + "info": "デバイスから送信されたすべてのメッセージ" + }, + "activity": { + "title": "アクティビティ" + }, + "documentation": { + "title": "ドキュメント", + "add-link": "リンクを追加", + "add-link-title": "ドキュメントリンクを追加", + "name": "名前", + "name-required": "名前は必須です。", + "link": "リンク", + "link-required": "リンクは必須です。", + "columns": "列" + }, + "quick-links": { + "title": "クイックリンク", + "add-link": "リンクを追加", + "add-link-title": "クイックリンクを追加", + "quick-link": "クイックリンク", + "quick-link-required": "クイックリンクは必須です。", + "no-links-matching": "'{{name}}' に一致するリンクは見つかりませんでした。", + "columns": "列" + }, + "recent-dashboards": { + "title": "ダッシュボード", + "last": "最後に表示したもの", + "starred": "お気に入り", + "name": "名前", + "last-viewed": "最後に表示した日時", + "no-last-viewed-dashboards": "最後に表示したダッシュボードはまだありません" + }, + "configured-features": { + "title": "設定された機能", + "info": "設定が必要な機能の状態", + "email-feature": "メール", + "sms-feature": "SMS", + "slack-feature": "Slack", + "oauth2-feature": "OAuth 2", + "2fa-feature": "2FA", + "feature-configured": "機能は設定されています。\n設定するにはクリック", + "feature-not-configured": "機能は設定されていません。\n設定するにはクリック" + }, + "version-info": { + "title": "バージョン", + "contact-us": "お問い合わせ", + "current-version": "現在のバージョン", + "current": "現在", + "available-version": "利用可能なバージョン", + "available": "利用可能", + "upgrade": "アップグレード", + "version-is-up-to-date": "バージョンは最新です" + }, + "usage-info": { + "title": "使用状況", + "entities": "エンティティ", + "api-calls": "API呼び出し" + }, + "functions": { + "title": "機能", + "pe-feature-tooltip": "ThingsBoard\nProfessional Edition のみ", + "switch-to-pe": "PEに切り替え", + "alarms": "アラーム", + "dashboards": "ダッシュボード", + "entities-and-relations": "エンティティ & リレーション", + "profiles": "プロファイル", + "advanced-features": "高度な機能", + "notification-center": "通知センター", + "api-usage": "API使用状況", + "customers": "顧客", + "customers-hierarchy": "顧客階層", + "roles-and-permissions": "ロール & 権限", + "groups": "グループ", + "integrations": "統合", + "solution-templates": "ソリューションテンプレート", + "scheduler": "スケジューラ", + "white-labeling": "ホワイトラベリング" + }, + "devices": { + "view-docs": "ドキュメントを見る", + "inactive": "非アクティブ", + "active": "アクティブ", + "total": "合計" + }, + "alarms": { + "critical": "クリティカル", + "assigned-to-me": "私に割り当てられた", + "total": "合計" + }, + "getting-started": { + "get-started": "始める", + "finish": "終了", + "done-welcome-title": "ようこそ", + "done-welcome-text": "お疲れ様でした!", + "sys-admin": { + "step1": { + "title": "テナント & テナント管理者の作成", + "content": "

テナントとは、デバイスやアセットを所有または製造する個人または組織です。テナントには複数のテナント管理者ユーザー、顧客、デバイス、アセットがあります。

テナント管理者は、テナントアカウント内でデバイス、アセット、顧客、ダッシュボードを作成および管理できます。

作成方法については、以下のドキュメントを参照してください:

", + "how-to-create-tenant": "テナント & テナント管理者を作成する方法" + }, + "step2": { + "title": "機能の設定: メールサーバー", + "content": "

メールサーバーの設定は、ユーザーの有効化、パスワードの回復、アラーム通知の配信に不可欠です。

設定方法については、以下のドキュメントを参照してください:

", + "how-to-configure-mail-server": "メールサーバーを設定する方法" + }, + "step3": { + "title": "機能の設定: SMSプロバイダー", + "content": "

SMSプロバイダーを設定して、顧客にアラームをSMSで通知します。

設定方法については、以下のドキュメントを参照してください:

", + "how-to-configure-sms-provider": "SMSプロバイダーを設定する方法" + }, + "step4": { + "title": "機能の設定: ホワイトラベリング", + "content": "

コードを記述せず、サービスを再起動せずに、会社や製品のロゴやカラースキームを簡単にカスタマイズできます。

設定方法については、以下のドキュメントを参照してください:

" + }, + "step5": { + "title": "機能の設定: 2FA", + "content": "

二要素認証でプラットフォームアカウントのセキュリティを強化します。

設定方法については、以下のドキュメントを参照してください:

" + }, + "step6": { + "title": "機能の設定: OAuth 2", + "content": "

OAuth 2.0を使用したシングルサインオン機能で、テナントと顧客ユーザーのログインを簡素化します。

設定方法については、以下のドキュメントを参照してください:

" + } + }, + "tenant-admin": { + "step1": { + "title": "デバイスの作成", + "content": "

UIを通じて最初のデバイスをプラットフォームにプロビジョニングします。手順については、以下のドキュメントを参照してください:

", + "how-to-create-device": "デバイスの作成方法" + }, + "step2": { + "title": "デバイスの接続", + "content-before": "

デバイスを接続するには、デバイスの認証情報が必要です。このガイドでは、デフォルトで自動生成された認証情報(アクセストークン)を使用することをお勧めします。

HTTP経由でデータを公開するための簡単なコマンドを使用します。$ACCESS_TOKEN をデバイスのアクセストークンに置き換えることを忘れないでください:

", + "ubuntu": { + "install-curl": "UbuntuにcURLをインストール:" + }, + "macos": { + "install-curl": "MacOSにcURLをインストール:" + }, + "windows": { + "install-curl": "Windows 10 b17063以降、cURLはデフォルトで使用可能です。" + }, + "replace-access-token": "$ACCESS_TOKEN をデバイスのトークンに置き換える:", + "content-after": "

MQTT、CoAPなど、他のプロトコルも使用できます。

設定方法については、以下のドキュメントを参照してください:

", + "how-to-connect-device": "デバイスの接続方法" + }, + "step3": { + "title": "ダッシュボードの作成", + "content": "

アセット、デバイスなどのエンティティからデータを可視化するためのダッシュボードを作成します。

作成方法については、以下のドキュメントを参照してください:

", + "how-to-create-dashboard": "ダッシュボードの作成方法" + }, + "step4": { + "title": "アラームルールの設定", + "alarm-rules": "アラームルール", + "content": "

温度が25°Cに達したときにアラームを発生させましょう。設定方法については、以下のドキュメントを参照してください:

", + "how-to-configure-alarm-rules": "アラームルールの設定方法" + }, + "step5": { + "title": "アラームの作成", + "content-before": "

アラームをトリガーするには、新しいテレメトリ値として26°C以上を送信してください。

", + "replace-access-token": "$ACCESS_TOKEN をデバイスのトークンに置き換える:", + "content-after": "

設定方法については、以下のドキュメントを参照してください:

", + "how-to-create-alarm": "アラームの作成方法" + }, + "step6": { + "title": "顧客の作成とダッシュボードの共有", + "content": "

エンドユーザー用のダッシュボードを作成することにより、顧客ユーザーは自分のデバイスのみを表示でき、他の顧客のデータは非表示にされます。

作成方法については、以下のドキュメントを参照してください:

" + } + } + } + }, + "icon": { + "icon": "アイコン", + "icons": "アイコン", + "select-icon": "アイコンを選択", + "material-icons": "マテリアルアイコン", + "show-all": "すべてのアイコンを表示", + "search-icon": "アイコンを検索", + "no-icons-found": "'{{iconSearch}}' のアイコンは見つかりませんでした" + }, + "phone-input": { + "phone-input-label": "電話番号", + "phone-input-required": "電話番号は必須です", + "phone-input-validation": "電話番号が無効か、利用不可能です", + "phone-input-pattern": "無効な電話番号です。E.164形式でなければなりません。例: {{phoneNumber}}", + "phone-input-hint": "E.164形式の電話番号。例: {{phoneNumber}}" + }, + "custom": { + "widget-action": { + "action-cell-button": "アクションセルボタン", + "row-click": "行をクリックしたとき", + "cell-click": "セルをクリックしたとき", + "polygon-click": "ポリゴンをクリックしたとき", + "marker-click": "マーカーをクリックしたとき", + "circle-click": "円をクリックしたとき", + "tooltip-tag-action": "ツールチップタグアクション", + "node-selected": "ノードが選択されたとき", + "element-click": "HTML要素をクリックしたとき", + "pie-slice-click": "スライスをクリックしたとき", + "row-double-click": "行をダブルクリックしたとき", + "cell-double-click": "セルをダブルクリックしたとき", + "card-click": "カードをクリックしたとき", + "click": "クリックしたとき" + } + }, + "paginator": { + "items-per-page": "ページあたりのアイテム数:", + "first-page-label": "最初のページ", + "last-page-label": "最後のページ", + "next-page-label": "次のページ", + "previous-page-label": "前のページ", + "items-per-page-separator": "の" + }, + "language": { + "language": "言語" + } +} \ No newline at end of file diff --git a/ui-ngx/src/assets/locale/locale.constant-nl_NL.json b/ui-ngx/src/assets/locale/locale.constant-nl_NL.json index 810f49ff00..f9adb7f86c 100644 --- a/ui-ngx/src/assets/locale/locale.constant-nl_NL.json +++ b/ui-ngx/src/assets/locale/locale.constant-nl_NL.json @@ -545,13 +545,7 @@ "slack-settings": "Slack-instellingen", "mobile-settings": "Mobiele instellingen", "firebase-service-account-file": "Firebase serviceaccountreferenties JSON-bestand", - "select-firebase-service-account-file": "Sleep je Firebase serviceaccountreferentiesbestand hierheen of ", - "trendz": "Trendz", - "trendz-settings": "Trendz-instellingen", - "trendz-url": "Trendz-URL", - "trendz-url-required": "Trendz-URL is vereist", - "trendz-api-key": "Trendz API-sleutel", - "trendz-enable": "Trendz inschakelen" + "select-firebase-service-account-file": "Sleep je Firebase serviceaccountreferentiesbestand hierheen of " }, "alarm": { "alarm": "Alarm", @@ -794,7 +788,7 @@ "no-assets-matching": "Geen overeenkomende assets gevonden voor '{{entity}}'.", "asset-required": "Asset is verplicht", "name-starts-with": "Assetnaam-expressie", - "help-text": "Gebruik '%' indien nodig: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with'.", + "help-text": "Gebruik '%' naar behoefte: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Assets zoeken", "import": "Assets importeren", "asset-file": "Assetbestand", @@ -898,9 +892,9 @@ "processing-timeouts": "${entityName} Verwerking time-outs", "rule-chain": "Rule chain", "rule-engine": "Rule Engine", - "rule-engine-daily-activity": "Dagelijkse activiteit Rule Engine", "rule-engine-executions": "Rule Engine-uitvoeringen", "rule-engine-hourly-activity": "Uurlijkse activiteit Rule Engine", + "rule-engine-daily-activity": "Dagelijkse activiteit Rule Engine", "rule-engine-monthly-activity": "Maandelijkse activiteit Rule Engine", "rule-engine-statistics": "Rule Engine-statistieken", "rule-node": "Rule node", @@ -917,11 +911,9 @@ "transport": "Transport", "transport-daily-activity": "Dagelijkse activiteit transport", "transport-data-points": "Transport datapunten", - "transport-hourly-activity": "Uurlijkse activiteit transport", - "transport-messages": "Transportberichten", - "transport-monthly-activity": "Maandelijkse activiteit transport", "view-details": "Details bekijken", - "view-statistics": "Statistieken bekijken" + "view-statistics": "Statistieken bekijken", + "transport-messages": "Transportberichten" }, "api-limit": { "cassandra-write-queries-core": "Rest API Cassandra schrijfbewerkingen", @@ -1038,7 +1030,6 @@ "argument-customer": "Klant", "argument-tenant": "Huidige tenant", "argument-type": "Argumenttype", - "see-debug-events": "Debuggebeurtenissen bekijken", "attribute": "Attribuut", "copy-argument-name": "Argumentnaam kopiëren", "timeseries-key": "Tijdreeks-sleutel", @@ -1071,8 +1062,8 @@ "test-with-this-message": "Test met dit bericht", "use-latest-timestamp": "Gebruik laatste tijdstempel", "hint": { - "arguments-simple-with-rolling": "Berekende velden van het type 'eenvoudig' mogen geen sleutels bevatten met een rollende tijdreeks.", - "arguments-empty": "Argumenten mogen niet leeg zijn.", + "arguments-simple-with-rolling": "Een berekend veld van het type Eenvoudig mag geen sleutels bevatten met het type 'Time series rolling'.", + "arguments-empty": "Er moet ten minste één argument worden opgegeven.", "expression-required": "Expressie is vereist.", "expression-invalid": "Expressie is ongeldig", "expression-max-length": "De lengte van de expressie moet minder dan 255 tekens zijn.", @@ -1193,6 +1184,7 @@ "contact": { "country": "Land", "country-required": "Land is verplicht.", + "country-object-required": "Selecteer een geldig land uit de lijst.", "city": "Stad", "state": "Staat / Provincie", "postal-code": "Postcode", @@ -1653,7 +1645,7 @@ "remove-alias": "Apparaatalias verwijderen", "add-alias": "Apparaatalias toevoegen", "name-starts-with": "Apparaatnaam expressie", - "help-text": "Gebruik '%' indien nodig: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "Gebruik '%' naar behoefte: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Apparatenlijst", "use-device-name-filter": "Filter gebruiken", "device-list-empty": "Geen apparaten geselecteerd.", @@ -1780,7 +1772,6 @@ "unable-delete-device-alias-text": "Apparaat-alias '{{deviceAlias}}' kan niet worden verwijderd omdat het wordt gebruikt door de volgende widget(s):
{{widgetsList}}", "is-gateway": "Is gateway", "overwrite-activity-time": "Activiteitstijd voor verbonden apparaat overschrijven", - "device-filter": "Apparaatfilter", "device-filter-title": "Apparaatfilter", "filter-title": "Filter", "device-state": "Apparaatstatus", @@ -2234,7 +2225,7 @@ "short-id-required": "Korte server-ID is verplicht.", "short-id-range": "Korte server-ID moet tussen {{ min }} en {{ max }} liggen.", "short-id-pattern": "Korte server-ID moet een positief geheel getal zijn.", - "lifetime": "Registratieduur client", + "lifetime": "Clientregistratielevensduur", "lifetime-required": "Registratieduur is verplicht.", "lifetime-pattern": "Registratieduur moet een positief geheel getal zijn.", "default-min-period": "Minimale periode tussen meldingen (s)", @@ -2564,7 +2555,7 @@ "no-entities-text": "Geen entiteiten gevonden", "no-entity-types-matching": "Geen entiteittypes gevonden die overeenkomen met '{{entityType}}'.", "name-starts-with": "Naamexpressie", - "help-text": "Gebruik '%' indien nodig: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'.", + "help-text": "Gebruik '%' naar behoefte: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Gebruik filter", "entity-list-empty": "Geen entiteiten geselecteerd.", "entity-type-list-required": "Minstens één entiteittype moet worden geselecteerd.", @@ -2756,7 +2747,7 @@ "remove-alias": "Alias van entiteitweergave verwijderen", "add-alias": "Alias voor entiteitweergave toevoegen", "name-starts-with": "Naamexpressie van entiteitweergave", - "help-text": "Gebruik '%' waar nodig: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "Gebruik '%' naar behoefte: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Lijst van entiteitweergaven", "use-entity-view-name-filter": "Filter gebruiken", "entity-view-list-empty": "Geen entiteitweergaven geselecteerd.", @@ -3798,7 +3789,6 @@ "password-link-sent-message": "Resetlink is verzonden", "email": "E-mail", "invalid-email-format": "Ongeldig e-mailformaat.", - "login-with": "Inloggen met {{name}}", "or": "of", "error": "Inlogfout", "verify-your-identity": "Verifieer uw identiteit", @@ -5410,8 +5400,7 @@ }, "time-series": "Tijdreeksen", "latest": "Laatste waarden", - "web-sockets": "WebSockets", - "calculated-fields": "Berekende velden" + "web-sockets": "WebSockets" }, "save-attribute": { "processing-settings": "Verwerkingsinstellingen", @@ -6658,7 +6647,7 @@ "export-relations": "Exporteer relaties", "export-attributes": "Exporteer attributen", "export-credentials": "Exporteer inloggegevens", - "export-calculated-fields": "Exporteer berekende velden", + "export-calculated-fields": "Berekende velden exporteren \nen alarmregels", "entity-versions": "Entiteitversies", "versions": "Versies", "created-time": "Aangemaakt op", @@ -7475,7 +7464,7 @@ "scale": "Schaal", "scale-min": "min", "scale-max": "max", - "scale-auto": "Automatisch" + "scale-auto": "Auto" }, "bar": { "show-border": "Toon rand", @@ -8508,10 +8497,10 @@ "finish-circle-hint-with-entity": "Cirkel voor '{{entityName}}': klik om te voltooien en op te slaan", "finish-circle-hint": "Cirkel: klik om tekenen te voltooien" }, - "select-entity": "Selecteer entiteit", - "select-entity-hint": "Tip: klik op de kaart na selectie om positie in te stellen" + "select-entity": "Entiteit selecteren", + "select-entity-hint": "Tip: klik na selectie op de kaart om de positie in te stellen" }, - "select-entity": "Selecteer entiteit", + "select-entity": "Entiteit selecteren", "select-entity-hint": "Tip: klik na selectie op de kaart om de positie in te stellen", "tooltips": { "placeMarker": "Klik om entiteit '{{entityName}}' te plaatsen", diff --git a/ui-ngx/src/assets/locale/locale.constant-no_NO.json b/ui-ngx/src/assets/locale/locale.constant-no_NO.json index 9b2a91f75e..c7d1a4d7f3 100644 --- a/ui-ngx/src/assets/locale/locale.constant-no_NO.json +++ b/ui-ngx/src/assets/locale/locale.constant-no_NO.json @@ -677,8 +677,8 @@ "filter-type-entity-list": "Enhetsliste", "filter-type-entity-name": "Enhetsnavn", "filter-type-entity-type": "Enhetstype", - "filter-type-state-entity": "Enhet fra dashboard-tilstand", - "filter-type-state-entity-description": "Enhet hentet fra dashboard-tilstandsparametere", + "filter-type-state-entity": "Entitet fra dashbordtilstand", + "filter-type-state-entity-description": "Entitet hentet fra parametere for dashbordtilstand", "filter-type-asset-type": "Asset-type", "filter-type-asset-type-description": "Assets av typen '{{assetTypes}}'", "filter-type-asset-type-and-name-description": "Assets av typen '{{assetTypes}}' og med navn som begynner med '{{prefix}}'", @@ -709,17 +709,18 @@ "filter-type-required": "Filtertype er påkrevd.", "entity-filter-no-entity-matched": "Ingen enheter samsvarer med spesifisert filter.", "no-entity-filter-specified": "Ingen enhetsfilter spesifisert", - "root-state-entity": "Bruk dashboard-tilstandsenhet som rot", + "root-state-entity": "Bruk entitet for dashbordtilstand som rot", "last-level-relation": "Hent kun siste relasjonsnivå", "root-entity": "Rotenhet", "state-entity-parameter-name": "Parameter for tilstandsenhet", "default-state-entity": "Standard tilstandsenhet", "default-entity-parameter-name": "Som standard", - "max-relation-level": "Maks relasjonsnivå", + "query-options": "Spørringsalternativer", + "max-relation-level": "Maksimalt relasjonsnivå", "unlimited-level": "Ubegrenset nivå", - "state-entity": "Dashboard tilstandsenhet", - "all-entities": "Alle enheter", - "any-relation": "enhver" + "state-entity": "Dashbordtilstandsentitet", + "all-entities": "Alle entiteter", + "any-relation": "alle" }, "asset": { "asset": "Eiendel", @@ -787,7 +788,7 @@ "no-assets-matching": "Ingen eiendeler som samsvarer med '{{entity}}' ble funnet.", "asset-required": "Eiendel er påkrevd", "name-starts-with": "Navneuttrykk for eiendel", - "help-text": "Bruk '%' etter behov: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with'.", + "help-text": "Bruk '%' etter behov: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Søk etter eiendeler", "import": "Importer eiendeler", "asset-file": "Eiendelsfil", @@ -891,9 +892,9 @@ "processing-timeouts": "${entityName} Behandlingstidsavbrudd", "rule-chain": "Regelkjede", "rule-engine": "Regelmotor", - "rule-engine-daily-activity": "Daglig aktivitet for regelmotor", "rule-engine-executions": "Utførelser av regelmotor", "rule-engine-hourly-activity": "Timebasert aktivitet for regelmotor", + "rule-engine-daily-activity": "Daglig aktivitet for regelmotor", "rule-engine-monthly-activity": "Månedlig aktivitet for regelmotor", "rule-engine-statistics": "Statistikk for regelmotor", "rule-node": "Regelnode", @@ -908,16 +909,19 @@ "telemetry-persistence-hourly-activity": "Timebasert aktivitet for telemetrilagring", "telemetry-persistence-monthly-activity": "Månedlig aktivitet for telemetrilagring", "transport": "Transport", - "transport-daily-activity": "Daglig aktivitet for transport", + "transport-daily-activity": "Transport – daglig aktivitet", "transport-data-points": "Transportdatapunkter", - "transport-hourly-activity": "Timebasert aktivitet for transport", - "transport-messages": "Transportmeldinger", - "transport-monthly-activity": "Månedlig aktivitet for transport", "view-details": "Vis detaljer", - "view-statistics": "Vis statistikk" + "view-statistics": "Vis statistikk", + "transport-messages": "Transportmeldinger" }, "api-limit": { - "cassandra-queries": "Cassandra-forespørsler", + "cassandra-write-queries-core": "REST API Cassandra-skrivespørringer", + "cassandra-read-queries-core": "REST API- og WS-telemetri Cassandra-lesespørringer", + "cassandra-write-queries-rule-engine": "Regelmotor-telemetri Cassandra-skrivespørringer", + "cassandra-read-queries-rule-engine": "Regelmotor-telemetri Cassandra-lesespørringer", + "cassandra-write-queries-monolith": "Monolith-telemetri Cassandra-skrivespørringer", + "cassandra-read-queries-monolith": "Monolith-telemetri Cassandra-lesespørringer", "entity-version-creation": "Oppretting av enhetsversjon", "entity-version-load": "Innlasting av enhetsversjon", "notification-requests": "Varslingsforespørsler", @@ -1026,7 +1030,6 @@ "argument-customer": "Kunde", "argument-tenant": "Gjeldende leietaker", "argument-type": "Argumenttype", - "see-debug-events": "Se feilsøkingshendelser", "attribute": "Attributt", "copy-argument-name": "Kopier argumentnavn", "timeseries-key": "Tidsserienøkkel", @@ -1057,8 +1060,9 @@ "delete-multiple-title": "Er du sikker på at du vil slette { count, plural, =1 {1 beregnet felt} other {# beregnede felt} }?", "delete-multiple-text": "Vær forsiktig, etter bekreftelse vil alle valgte beregnede felt bli fjernet og all relatert data vil ikke kunne gjenopprettes.", "test-with-this-message": "Test med denne meldingen", + "use-latest-timestamp": "Bruk nyeste tidsstempel", "hint": { - "arguments-simple-with-rolling": "Beregnede felt av enkel type bør ikke inneholde nøkler med rullende tidsserietype.", + "arguments-simple-with-rolling": "Beregnet felt av typen «Enkel» skal ikke inneholde nøkler med tidsserie-rulleringstype.", "arguments-empty": "Argumenter skal ikke være tomme.", "expression-required": "Uttrykk er påkrevd.", "expression-invalid": "Uttrykk er ugyldig", @@ -1072,9 +1076,106 @@ "max-args": "Maksimalt antall argumenter er nådd.", "decimals-range": "Desimaler som standard må være et tall mellom 0 og 15.", "expression": "Standarduttrykket viser hvordan man konverterer temperatur fra Fahrenheit til Celsius.", - "arguments-entity-not-found": "Målenheten for argument ikke funnet." + "arguments-entity-not-found": "Målenheten for argument ikke funnet.", + "use-latest-timestamp": "Hvis aktivert, lagres den beregnede verdien ved å bruke det nyeste tidsstempelet fra argumentenes telemetri, i stedet for servertid." } }, + "ai-models": { + "ai-models": "AI-modeller", + "ai-model": "AI-modell", + "model": "Modell", + "name": "Navn", + "ai-provider": "AI-leverandør", + "no-found": "Fant ingen AI-modeller", + "list": "{ count, plural, =1 {Én modell} other {Liste over # modeller} }", + "selected-fields": "{ count, plural, =1 {1 modell} other {# modeller} } valgt", + "add": "Legg til modell", + "delete-model-title": "Er du sikker på at du vil slette modellen '{{modelName}}'?", + "delete-model-text": "Vær forsiktig, etter bekreftelsen vil modellen og alle tilknyttede data ikke kunne gjenopprettes.", + "delete-models-title": "Er du sikker på at du vil slette { count, plural, =1 {1 modell} other {# modeller} }?", + "delete-models-text": "Vær forsiktig, etter bekreftelsen vil alle valgte modeller bli fjernet og alle tilknyttede data vil ikke kunne gjenopprettes.", + "ai-providers": { + "openai": "OpenAI", + "azure-openai": "Azure OpenAI", + "google-ai-gemini": "Google AI Gemini", + "google-vertex-ai-gemini": "Google Vertex AI Gemini", + "mistral-ai": "Mistral AI", + "anthropic": "Anthropic", + "amazon-bedrock": "Amazon Bedrock", + "github-models": "GitHub Models", + "ollama": "Ollama" + }, + "name-required": "Navn er påkrevd.", + "name-max-length": "Navn må være 255 tegn eller mindre.", + "provider": "Leverandør", + "api-key": "API-nøkkel", + "api-key-required": "API-nøkkel er påkrevd.", + "api-key-open-ai-required": "API-nøkkel er påkrevd når du bruker den offisielle OpenAI API-en.", + "project-id": "Prosjekt-ID", + "project-id-required": "Prosjekt-ID er påkrevd", + "location": "Plassering", + "location-required": "Plassering er påkrevd.", + "service-account-key-file": "Nøkkelfil for tjenestekonto", + "service-account-key-file-required": "Nøkkelfil for tjenestekonto er påkrevd.", + "no-file": "Ingen fil valgt.", + "drop-file": "Slipp en fil eller klikk for å velge en fil som skal lastes opp.", + "personal-access-token": "Personlig tilgangstoken", + "personal-access-token-required": "Personlig tilgangstoken er påkrevd.", + "configuration": "Konfigurasjon", + "model-id": "Modell-ID", + "model-id-required": "Modell-ID er påkrevd.", + "deployment-name": "Distribusjonsnavn", + "deployment-name-required": "Distribusjonsnavn er påkrevd", + "set": "Angi", + "region": "Region", + "region-required": "Region er påkrevd.", + "access-key-id": "Tilgangsnøkkel-ID", + "access-key-id-required": "Tilgangsnøkkel-ID er påkrevd.", + "secret-access-key": "Hemmelig tilgangsnøkkel", + "secret-access-key-required": "Hemmelig tilgangsnøkkel er påkrevd.", + "temperature": "Temperatur", + "temperature-hint": "Justerer graden av tilfeldighet i modellens output. Høyere verdier øker tilfeldigheten, mens lavere verdier reduserer den.", + "temperature-min": "Må være 0 eller høyere.", + "top-p": "Top P", + "top-p-hint": "Oppretter en pool av de mest sannsynlige tokenene som modellen kan velge fra. Høyere verdier gir en større og mer mangfoldig pool, mens lavere verdier gir en mindre.", + "top-p-min-max": "Må være større enn 0 og opptil 1.", + "top-k": "Top K", + "top-k-hint": "Begrenser modellens valg til et fast sett med de \"K\" mest sannsynlige tokenene.", + "top-k-min": "Må være 0 eller høyere.", + "presence-penalty": "Tilstedeværelsesstraff", + "presence-penalty-hint": "Bruker en fast straff på sannsynligheten for et token hvis det allerede har dukket opp i teksten.", + "frequency-penalty": "Frekvensstraff", + "frequency-penalty-hint": "Bruker en straff på sannsynligheten for et token som øker basert på hvor ofte det forekommer i teksten.", + "max-output-tokens": "Maksimalt antall output-tokener", + "max-output-tokens-hint": "Angir maksimalt antall tokener som \nmodellen kan generere i ett enkelt svar.", + "context-length": "Kontekstlengde", + "context-length-hint": "Definerer størrelsen på kontekstvinduet i tokener. Denne verdien angir den totale minnegrensen for modellen, inkludert både brukerens inndata og det genererte svaret.", + "endpoint": "Endepunkt", + "endpoint-required": "Endepunkt er påkrevd.", + "baseurl": "Basis-URL", + "baseurl-required": "Basis-URL er påkrevd.", + "service-version": "Tjenesteversjon", + "check-connectivity": "Sjekk tilkobling", + "check-connectivity-success": "Testforespørselen var vellykket", + "check-connectivity-failed": "Testforespørselen mislyktes", + "no-model-matching": "Fant ingen modeller som samsvarer med '{{entity}}'.", + "model-required": "Modell er påkrevd.", + "no-model-text": "Fant ingen modeller.", + "authentication": "Autentisering", + "authentication-basic-hint": "Bruker standard HTTP Basic-autentisering. Brukernavn og passord kombineres, Base64-kodes og sendes i en \"Authorization\"-header med hver forespørsel til Ollama-serveren.", + "authentication-token-hint": "Bruker Bearer-tokenautentisering. Det angitte tokenet sendes direkte i en \"Authorization\" eader med hver forespørsel til Ollama-serveren.", + "authentication-type": { + "none": "Ingen", + "basic": "Basic", + "token": "Token" + }, + "username": "Brukernavn", + "username-required": "Brukernavn er påkrevd.", + "password": "Passord", + "password-required": "Passord er påkrevd.", + "token": "Token", + "token-required": "Token er påkrevd." + }, "confirm-on-exit": { "message": "Du har ulagrede endringer. Er du sikker på at du vil forlate denne siden?", "html-message": "Du har ulagrede endringer.
Er du sikker på at du vil forlate denne siden?", @@ -1083,6 +1184,7 @@ "contact": { "country": "Land", "country-required": "Land er påkrevd.", + "country-object-required": "Velg et gyldig land fra listen.", "city": "By", "state": "Stat / Provins", "postal-code": "Postnummer", @@ -1543,7 +1645,7 @@ "remove-alias": "Fjern enhetsalias", "add-alias": "Legg til enhetsalias", "name-starts-with": "Enhetsnavnuttrykk", - "help-text": "Bruk '%' etter behov: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "Bruk '%' etter behov: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Enhetsliste", "use-device-name-filter": "Bruk filter", "device-list-empty": "Ingen enheter valgt.", @@ -1670,7 +1772,6 @@ "unable-delete-device-alias-text": "Enhetsalias '{{deviceAlias}}' kan ikke slettes da det brukes av følgende widget(er):
{{widgetsList}}", "is-gateway": "Er gateway", "overwrite-activity-time": "Overstyr aktivitetstid for tilkoblet enhet", - "device-filter": "Enhetsfilter", "device-filter-title": "Enhetsfilter", "filter-title": "Filter", "device-state": "Enhetstilstand", @@ -1754,6 +1855,7 @@ "selected-options-limit": "Begrensning for valgte alternativer", "advanced-ui-settings": "Avanserte grensesnittinnstillinger", "disable-on-property": "Deaktiver ved egenskap", + "disable-on-property-none": "Ingen (feltet er alltid aktivert)", "display-condition-function": "Visningsbetingelsesfunksjon", "sub-label": "Underetikett", "vertical-divider-after": "Vertikal skillelinje etter", @@ -1787,7 +1889,8 @@ "array-item": "Array-element", "item-type": "Elementtype", "item-name": "Elementnavn", - "no-items": "Ingen elementer" + "no-items": "Ingen elementer", + "support-unit-conversion": "Støtt enhetskonvertering" }, "clear-form": "Tøm skjema", "clear-form-prompt": "Er du sikker på at du vil fjerne alle skjemaegenskaper?", @@ -1911,6 +2014,7 @@ "mqtt-use-json-format-for-default-downlink-topics-hint": "Når aktivert, vil plattformen bruke JSON til å sende attributter og RPC over temaene: v1/devices/me/attributes/response/$request_id, v1/devices/me/attributes, osv. Påvirker ikke abonnementer via nye v2-temaer.", "mqtt-send-ack-on-validation-exception": "Send PUBACK ved valideringsfeil", "mqtt-send-ack-on-validation-exception-hint": "Som standard lukkes MQTT-økten ved valideringsfeil. Hvis aktivert, sendes isteden en bekreftelse.", + "mqtt-protocol-version": "Protokollversjon", "snmp-add-mapping": "Legg til SNMP-mapping", "snmp-mapping-not-configured": "Ingen mapping for OID til tidsserie/telemetri konfigurert", "snmp-timseries-or-attribute-name": "Navn på tidsserie/attributt for mapping", @@ -2143,7 +2247,7 @@ "tqs": "TQS: Både TCP og SMS aktive; TCP i kømodus, SMS i standardmodus (ikke støttet siden LWM2M 1.1)", "sq": "SQ: SMS i kømodus (ikke støttet siden LWM2M 1.1)" }, - "binding-tooltip": "Liste over bindingsmodus i LwM2M serverobjektet - /1/x/7.\nAngir støttede bindingsmodi i klienten.\nBør matche verdien i “Supported Binding and Modes” i Enhetsobjektet (/3/0/16).\nKun én transportbinding brukes per økt.", + "binding-tooltip": "Dette er listen i den\"binding\"-ressursen til LwM2M-serverobjektet - /1/x/7.\nAngir de støttede binding-modusene i LwM2M-klienten.\nDenne verdien BØR være den samme som verdien i ressursen “Supported Binding and Modes” i Device Object (/3/0/16).\nSelv om flere transporter støttes, kan bare én transportbinding brukes under hele transportsesjonen.\nFor eksempel, når både UDP og SMS støttes, kan LwM2M-klienten og LwM2M-serveren velge å kommunisere enten over UDP eller SMS under hele transportsesjonen.", "bootstrap-server": "Bootstrap-server", "lwm2m-server": "LwM2M-server", "include-bootstrap-server": "Inkluder Bootstrap-serveroppdateringer", @@ -2171,6 +2275,9 @@ "add-lwm2m-server-config": "Legg til LwM2M-server", "no-config-servers": "Ingen servere konfigurert", "others-tab": "Andre innstillinger", + "ota-update": "OTA-oppdatering", + "use-object-19-for-ota-update": "Bruk Object 19 for OTA-filmetadata (sjekksum, størrelse, versjon, navn)", + "use-object-19-for-ota-update-hint": "Bruk Resource ObjectId = 19 for OTA-oppdateringer: FirmWare → InstanceId = 65534, SoftWare → InstanceId = 65535. Dataformatet er JSON innkapslet i Base64. Denne JSON-en inneholder OTA-filmetadata (filinfo): \"Checksum\" (SHA256). Ekstra felter: \"Title\" (OTA-navn), \"Version\" (OTA-versjon), \"File Name\" (filnavn for lagring av OTA på klienten), \"File Size\" (OTA-størrelse i byte).", "client-strategy": "Klientstrategi ved tilkobling", "client-strategy-label": "Strategi", "client-strategy-only-observe": "Kun Observer-forespørsel til klienten etter første tilkobling", @@ -2201,7 +2308,17 @@ "default-object-id": "Standard objektversjon (Attributt)", "default-object-id-ver": { "v1-0": "1.0", - "v1-1": "1.1" + "v1-1": "1.1", + "v1-2": "1.2" + }, + "observe-strategy": { + "observe-strategy": "Observe-strategi", + "single": "Enkel", + "single-description": "Én Observe-forespørsel per ressurs (høyere presisjon, mer nettverkstrafikk)", + "composite-all": "Kompositt alle", + "composite-all-description": "Alle ressurser observeres med én enkelt Composite Observe-forespørsel (mer effektivt, mindre fleksibelt)", + "composite-by-object": "Kompositt etter objekter", + "composite-by-object-description": "Ressurser grupperes etter objekttype og observeres ved hjelp av separate Composite Observe-forespørsler (balansert tilnærming)" } }, "snmp": { @@ -2438,7 +2555,7 @@ "no-entities-text": "Ingen enheter funnet", "no-entity-types-matching": "Ingen enhetstyper som samsvarer med '{{entityType}}' ble funnet.", "name-starts-with": "Navnuttrykk", - "help-text": "Bruk '%' etter behov: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'.", + "help-text": "Bruk '%' etter behov: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Bruk filter", "entity-list-empty": "Ingen enheter valgt.", "entity-type-list-required": "Minst én enhetstype må velges.", @@ -2524,6 +2641,8 @@ "type-current-user-owner": "Gjeldende brukereier", "type-calculated-field": "Beregnet felt", "type-calculated-fields": "Beregnete felt", + "type-ai-model": "AI-modell", + "type-ai-models": "AI-modeller", "type-widgets-bundle": "Widget-pakke", "type-widgets-bundles": "Widget-pakker", "list-of-widgets-bundles": "{ count, plural, =1 {Én widget-pakke} other {Liste over # widget-pakker} }", @@ -2553,6 +2672,8 @@ "type-tb-resources": "Ressurser", "list-of-tb-resources": "{ count, plural, =1 {Én ressurs} other {Liste over # ressurser} }", "type-ota-package": "OTA-pakke", + "type-ota-packages": "OTA-pakker", + "list-of-ota-packages": "{ count, plural, =1 {Én OTA-pakke} other {Liste over # OTA-pakker} }", "type-rpc": "RPC", "type-queue": "Kø", "type-queue-stats": "Køstatistikk", @@ -2626,7 +2747,7 @@ "remove-alias": "Fjern alias for entitetsvisning", "add-alias": "Legg til alias for entitetsvisning", "name-starts-with": "Navnuttrykk for entitetsvisning", - "help-text": "Bruk '%' etter behov: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "Bruk '%' etter behov: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Liste over entitetsvisninger", "use-entity-view-name-filter": "Bruk filter", "entity-view-list-empty": "Ingen entitetsvisninger valgt.", @@ -2938,6 +3059,7 @@ "missing-key-filters-error": "Nøkkelfiltre mangler for filter '{{filter}}'.", "filter": "Filter", "editable": "Redigerbar", + "editable-hint": "Tillat brukeren å endre filterverdien i dashbord.", "no-filters-found": "Ingen filtre funnet.", "no-filter-text": "Ingen filter spesifisert", "add-filter-prompt": "Vennligst legg til filter", @@ -2977,6 +3099,8 @@ "filter-user-params": "Brukerparametere for filterpredikat", "user-parameters": "Brukerparametere", "display-label": "Etikett som vises", + "custom-label": "Egendefinert etikett", + "custom-label-hint": "Aktiver for å angi din egen etikett for filteret. Når deaktivert, genereres en etikett automatisk.", "order-priority": "Prioritet for feltrekkefølge", "key-filter": "Nøkkelfilter", "key-filters": "Nøkkelfiltre", @@ -3021,7 +3145,8 @@ "switch-to-dynamic-value": "Bytt til dynamisk verdi", "switch-to-default-value": "Bytt til standardverdi", "inherit-owner": "Arv fra eier", - "source-attribute-not-set": "Hvis kildeattributt ikke er angitt" + "source-attribute-not-set": "Hvis kildeattributt ikke er angitt", + "unit": "Enhet" }, "fullscreen": { "expand": "Utvid til fullskjerm", @@ -3406,6 +3531,7 @@ "power-button-background": "Bakgrunn for strømbryter", "value-box-background": "Bakgrunn for verdiboks", "value-units": "Verdi-enheter", + "enable-units-scale": "Aktiver enheter på skala", "filtration-mode": "Filtreringsmodus", "filtration-mode-hint": "Heltallsverdi som angir gjeldende filtreringsmodus.", "filtration-mode-update": "Oppdater filtreringsmodus", @@ -3657,13 +3783,12 @@ "remember-me": "Husk meg", "forgot-password": "Glemt passord?", "password-reset": "Tilbakestilling av passord", - "expired-password-reset-message": "Dine legitimasjonsopplysninger er utløpt! Vennligst opprett et nytt passord.", + "expired-password-reset-message": "Passordet ditt er utløpt! \nVennligst angi et nytt passord.", "new-password": "Nytt passord", "new-password-again": "Bekreft nytt passord", "password-link-sent-message": "Tilbakestillingslenke er sendt", "email": "Epost", "invalid-email-format": "Ugyldig epostformat.", - "login-with": "Logg inn med {{name}}", "or": "eller", "error": "Innloggingsfeil", "verify-your-identity": "Bekreft din identitet", @@ -3722,6 +3847,8 @@ "mobile-package-max-length": "Applikasjonspakken må være under 256 tegn", "mobile-package-required": "Applikasjonspakke er påkrevd.", "mobile-package-pattern": "Ugyldig format for applikasjonspakke", + "mobile-package-title": "Applikasjonstittel", + "mobile-package-title-max-length": "Applikasjonstittel må være mindre enn 256", "no-application": "Ingen applikasjoner funnet", "no-bundles": "Ingen pakker funnet", "platform-type": "Plattformtype", @@ -3803,19 +3930,15 @@ "configuration-step": { "prepare-environment-title": "Forbered utviklingsmiljø", "prepare-environment-text": "Flutter ThingsBoard Mobile Application krever Flutter SDK. Følg instruksjonene for å sette opp Flutter SDK.", - "get-source-code-title": "Hent kildekode for appen", + "get-source-code-title": "Hent appens kildekode", "get-source-code-text": "Du kan hente kildekoden til Flutter ThingsBoard Mobile Application ved å klone den fra GitHub-repositoriet:", - "configure-api-title": "Konfigurer ThingsBoard API-endepunkt", - "configure-api-text": "Åpne prosjektet flutter_thingsboard_pe_app i editoren/IDE-en din. Rediger:", - "configure-api-hint": "Angi verdien av konstanten thingsBoardApiEndpoint slik at den samsvarer med API-endepunktet til din ThingsBoard-serverinstans. Ikke bruk \"localhost\" eller \"127.0.0.1\" som vertsnavn.", + "configure-app-settings-title": "Konfigurer appinnstillinger", + "configure-app-settings-text": "Last ned konfigurasjonsfilen og legg den i rotkatalogen til prosjektet du klonet i forrige steg.", + "download-file": "Last ned fil", "run-app-title": "Kjør appen", - "run-app-text": "Kjør appen som beskrevet i din IDE.\nHvis du bruker terminalen, kjør appen med følgende kommando:", - "more-information": "Detaljert informasjon finnes i vår Kom-i-gang dokumentasjon.", - "getting-started": "Kom i gang", - "configure-package-title": "Konfigurer applikasjonspakke", - "configure-package-text": "Du kan manuelt endre applikasjonspakken eller bruke tredjeparts CLI-verktøy.", - "configure-package-text-install": "For å installere Rename CLI-verktøyet, kjør følgende kommando:", - "configure-package-run-commands": "Kjør disse kommandoene i prosjektets rotmappe:" + "run-app-text": "Kjør appen som beskrevet i IDE-en din.\nHvis du bruker terminalen, kjør appen med følgende kommando:", + "more-information": "Detaljert informasjon finner du i dokumentasjonen vår for Kom i gang.", + "getting-started": "Kom i gang" } }, "notification": { @@ -3839,6 +3962,7 @@ "new-platform-version-trigger-settings": "Innstillinger for ny plattformversjonsutløser", "rate-limits-trigger-settings": "Innstillinger for utløser ved overskredet hastighetsgrense", "task-processing-failure-trigger-settings": "Innstillinger for utløser ved feil i oppgavebehandling", + "resources-shortage-trigger-settings": "Innstillinger for utløsning ved ressursmangel", "at-least-one-should-be-selected": "Minst én må velges", "basic-settings": "Grunnleggende innstillinger", "button-text": "Knappetekst", @@ -3853,6 +3977,7 @@ "create-new": "Opprett ny", "created": "Opprettet", "customize-messages": "Tilpass meldinger", + "cpu-threshold": "CPU-terskel", "delete-notification-text": "Vær forsiktig, etter bekreftelse vil varslingen ikke kunne gjenopprettes.", "delete-notification-title": "Er du sikker på at du vil slette varslingen?", "delete-notifications-text": "Vær forsiktig, etter bekreftelse vil varslingene ikke kunne gjenopprettes.", @@ -3919,6 +4044,7 @@ "input-fields-support-templatization": "Inndatafelt støtter templatmaler.", "link": "Lenke", "link-required": "Lenke er påkrevd", + "link-max-length": "Lenken må være mindre enn eller lik {{ length }} tegn", "link-type": { "dashboard": "Åpne dashbord", "link": "Åpne URL-lenke" @@ -3945,6 +4071,7 @@ "no-severity-found": "Ingen alvorlighetsgrad funnet", "no-severity-matching": "'{{severity}}' ble ikke funnet.", "no-template-matching": "Ingen ressurser som samsvarer med '{{template}}' ble funnet.", + "create-new-template": "Opprett en ny!", "not-found-slack-recipient": "Slack-mottaker ikke funnet", "notification": "Varsel", "notification-center": "Varslingssenter", @@ -3968,6 +4095,7 @@ "only-rule-chain-lifecycle-failures": "Kun regelkjedens livssyklusfeil", "only-rule-node-lifecycle-failures": "Kun regelnodens livssyklusfeil", "platform-users": "Plattformbrukere", + "ram-threshold": "RAM-terskel", "rate-limits": "Hastighetsgrenser", "rate-limits-hint": "Hvis feltet er tomt, vil utløseren gjelde for alle hastighetsgrenser", "recipient": "Mottaker", @@ -4033,6 +4161,7 @@ "start-from-scratch": "Start fra bunnen", "status": "Status", "stop-escalation-alarm-status-become": "Stopp eskalering når alarmstatus blir:", + "storage-threshold": "Lagringsterskel", "subject": "Emne", "subject-required": "Emne er påkrevd", "subject-max-length": "Emnet må være mindre enn eller lik {{ length }} tegn", @@ -4045,8 +4174,8 @@ "alarm-comment": "Alarmkommentar", "api-usage-limit": "API-bruksgrense", "device-activity": "Enhetsaktivitet", - "entities-limit": "Enhetsgrense", - "entity-action": "Enhetshandling", + "entities-limit": "Entitetsgrense", + "entity-action": "Entitetshandling", "general": "Generelt", "rule-engine-lifecycle-event": "Regelmotor livssyklushendelse", "rule-node": "Regelnode", @@ -4054,7 +4183,8 @@ "rate-limits": "Overskredet grense", "edge-communication-failure": "Edge kommunikasjonsfeil", "edge-connection": "Edge-tilkobling", - "task-processing-failure": "Feil ved oppgavebehandling" + "task-processing-failure": "Feil ved oppgavebehandling", + "resources-shortage": "Ressursmangel" }, "templates": "Maler", "notification-templates": "Varslinger / Maler", @@ -4078,6 +4208,7 @@ "edge-connection": "Edge-tilkobling", "edge-communication-failure": "Edge kommunikasjonsfeil", "task-processing-failure": "Feil ved oppgavebehandling", + "resources-shortage": "Ressursmangel", "trigger": "Utløser", "trigger-required": "Utløser er påkrevd" }, @@ -4119,6 +4250,7 @@ "checksum-copied-message": "Pakkesjekksummen er kopiert til utklippstavlen", "change-firmware": "Endring av fastvaren kan føre til oppdatering av { count, plural, =1 {1 enhet} other {# enheter} }.", "change-software": "Endring av programvaren kan føre til oppdatering av { count, plural, =1 {1 enhet} other {# enheter} }.", + "change-ota-setting-title": "Er du sikker på at du vil endre OTA-innstillinger?", "chose-compatible-device-profile": "Den opplastede pakken vil bare være tilgjengelig for enheter med valgt profil.", "chose-firmware-distributed-device": "Velg fastvare som skal distribueres til enhetene", "chose-software-distributed-device": "Velg programvare som skal distribueres til enhetene", @@ -4314,6 +4446,7 @@ "add-relation-filter": "Legg til relasjonsfilter", "any-relation": "Enhver relasjon", "relation-filters": "Relasjonsfiltre", + "relation-filter": "Relasjonsfilter", "additional-info": "Tilleggsinfo (JSON)", "invalid-additional-info": "Kan ikke tolke tilleggsinfo som gyldig JSON.", "no-relations-text": "Ingen relasjoner funnet", @@ -4354,7 +4487,8 @@ "jks": "JKS", "js-module": "JS-modul", "lwm2m-model": "LWM2M-modell", - "pkcs-12": "PKCS #12" + "pkcs-12": "PKCS #12", + "general": "Generelt" }, "resource-sub-type": "Undertype", "sub-type": { @@ -4362,7 +4496,12 @@ "scada-symbol": "Scada-symbol", "extension": "Utvidelse", "module": "Modul" - } + }, + "resource-is-in-use": "Ressursen brukes av andre entiteter", + "resources-are-in-use": "Ressursene brukes av andre entiteter", + "resource-is-in-use-text": "Ressursen '{{title}}' ble ikke slettet fordi den brukes av følgende entiteter:", + "resources-are-in-use-text": "Ikke alle ressurser ble slettet fordi de brukes av andre entiteter.
Du kan se refererte entiteter ved å klikke på Referanser-knappen i den tilsvarende ressursraden.
Hvis du fortsatt vil slette disse ressursene, velg dem i tabellen nedenfor og klikk på Slett valgte-knappen.", + "delete-resource-in-use-text": "Hvis du fortsatt vil slette ressursen, klikk på Slett likevel-knappen." }, "javascript": { "add": "Legg til JavaScript-ressurs", @@ -5261,8 +5400,7 @@ }, "time-series": "Tidsserie", "latest": "Siste verdier", - "web-sockets": "WebSockets", - "calculated-fields": "Beregnete felt" + "web-sockets": "WebSockets" }, "save-attribute": { "processing-settings": "Behandlingsinnstillinger", @@ -5304,6 +5442,37 @@ "html-text-description": "Lar deg bruke HTML-tag'er for formatering, lenker og bilder i meldingskroppen.", "dynamic-text-description": "Lar deg bruke ren tekst eller HTML dynamisk basert på templatization-funksjon.", "after-template-evaluation-hint": "Etter evaluering må verdien være true for HTML og false for ren tekst." + }, + "ai": { + "ai-model": "AI-modell", + "model": "Modell", + "ai-model-hint": "Velg den forhåndskonfigurerte AI-modellen for å behandle forespørsler sendt av denne regelnoten, eller bruk \"Opprett ny\" for å konfigurere en ny.", + "prompt-settings": "Prompt-innstillinger", + "prompt-settings-hint": "Den valgfrie systemprompten angir AI-ens generelle rolle og begrensninger, mens brukerprompten definerer den spesifikke oppgaven som skal utføres. Begge feltene støtter også maler.", + "system-prompt": "Systemprompt", + "system-prompt-max-length": "Systemprompt må være 500000 tegn eller mindre.", + "system-prompt-blank": "Systemprompt kan ikke være tom.", + "user-prompt": "Brukerprompt", + "user-prompt-required": "Brukerprompt er påkrevd.", + "user-prompt-max-length": "Brukerprompt må være 500000 tegn eller mindre.", + "user-prompt-blank": "Brukerprompt kan ikke være tom.", + "response-format": "Svarformat", + "response-text": "Tekst", + "response-json": "JSON", + "response-json-schema": "JSON Schema", + "response-format-hint-TEXT": "Lar modellen generere vilkårlig tekst, som kan være et gyldig JSON-objekt eller ikke. Hvis output ikke er et gyldig JSON-objekt, pakkes den automatisk inn i et JSON-objekt under nøkkelen \"response\".", + "response-format-hint-JSON": "Modellen må generere et svar som er gyldig JSON. Hvis output ikke er et gyldig JSON-objekt, pakkes den automatisk inn i et JSON-objekt under nøkkelen \"response\".", + "response-format-hint-JSON_SCHEMA": "Modellen må generere en JSON som samsvarer med den spesifikke strukturen og datatypene som er definert i den angitte schemaen. Hvis output ikke er et gyldig JSON-objekt, pakkes den automatisk inn i et JSON-objekt under nøkkelen \"response\".", + "response-json-schema-hint": "Selv om enhver gyldig JSON Schema kan legges inn, støtter denne regelnoten kun et begrenset delsett av funksjonene. Se nodedokumentasjonen for detaljer.", + "response-json-schema-required": "JSON Schema er påkrevd", + "advanced-settings": "Avanserte innstillinger", + "timeout": "Tidsavbrudd", + "timeout-hint": "Maksimal tid å vente på et svar \nfra AI-modellen før forespørselen avsluttes.", + "timeout-required": "Tidsavbrudd er påkrevd", + "timeout-validation": "Må være fra 1 sekund til 10 minutter.", + "force-acknowledgement": "Tving kvittering", + "force-acknowledgement-hint": "Hvis aktivert, kvitteres den innkommende meldingen umiddelbart. Modellens svar legges deretter i kø som en separat, ny melding.", + "ai-resources": "AI-ressurser" } }, "timezone": { @@ -5625,7 +5794,10 @@ "too-small-value-zero": "Verdien må være større enn 0", "too-small-value-one": "Verdien må være større enn 1", "queue-size-is-limited-by-system-configuration": "Størrelsen på køen er også begrenset av systemkonfigurasjonen.", - "cassandra-tenant-limits-configuration": "Cassandra-spørring for leietaker", + "cassandra-write-tenant-core-limits-configuration": "REST API Cassandra-skrivespørringer", + "cassandra-read-tenant-core-limits-configuration": "REST API- og WS-telemetri Cassandra-lesespørringer", + "cassandra-write-tenant-rule-engine-limits-configuration": "Regelmotor-telemetri Cassandra-skrivespørringer", + "cassandra-read-tenant-rule-engine-limits-configuration": "Regelmotor-telemetri Cassandra-lesespørringer", "ws-limit-max-sessions-per-tenant": "Maksimalt antall økter per leietaker", "ws-limit-max-sessions-per-customer": "Maksimalt antall økter per kunde", "ws-limit-max-sessions-per-regular-user": "Maksimalt antall økter per vanlig bruker", @@ -5638,9 +5810,9 @@ "ws-limit-updates-per-session": "WS-oppdateringer per økt", "rate-limits": { "add-limit": "Legg til grense", + "and-also-less-than": "og også mindre enn", "advanced-settings": "Avanserte innstillinger", "edit-limit": "Rediger grense", - "but-less-than": "men mindre enn", "calculated-field-debug-event-rate-limit": "Feilsøkingshendelser for beregnet felt", "edit-calculated-field-debug-event-rate-limit": "Rediger grense for feilsøkingshendelser for beregnet felt", "edit-transport-tenant-msg-title": "Rediger grense for transportmeldinger for leietaker", @@ -5658,7 +5830,10 @@ "edit-tenant-rest-limits-title": "Rediger REST-forespørsler for leietaker", "edit-customer-rest-limits-title": "Rediger REST-forespørsler for kunde", "edit-ws-limit-updates-per-session-title": "Rediger grense for WS-oppdateringer per økt", - "edit-cassandra-tenant-limits-configuration-title": "Rediger Cassandra-spørringsgrenser for leietaker", + "edit-cassandra-write-tenant-core-limits-configuration": "Rediger REST API Cassandra-skrivespørringer", + "edit-cassandra-read-tenant-core-limits-configuration": "Rediger REST API- og WS-telemetri Cassandra-lesespørringer", + "edit-cassandra-write-tenant-rule-engine-limits-configuration": "Rediger Regelmotor-telemetri Cassandra-skrivespørringer", + "edit-cassandra-read-tenant-rule-engine-limits-configuration": "Rediger Regelmotor-telemetri Cassandra-lesespørringer", "edit-tenant-entity-export-rate-limit-title": "Rediger grense for eksport av enhetsversjoner", "edit-tenant-entity-import-rate-limit-title": "Rediger grense for import av enhetsversjoner", "edit-tenant-notification-request-rate-limit-title": "Rediger grense for varslingsforespørsler", @@ -5680,7 +5855,8 @@ "per-seconds": "Per sekunder", "per-seconds-required": "Tidstakt er påkrevd.", "per-seconds-min": "Minimumsverdi er 1.", - "rate-limits": "Hastighetsgrenser", + "per-seconds-duplicate": "Duplisert tidsrate. Hvert tidsintervall må være unikt.", + "rate-limits": "Rategrenser", "remove-limit": "Fjern grense", "transport-tenant-msg": "Transportmeldinger for leietaker", "transport-tenant-telemetry-msg": "Transporttelemetrimedlinger for leietaker", @@ -5828,12 +6004,125 @@ "date": "Dato", "show-date-time-interval": "Vis dato- og tidsintervall", "show-date-time-interval-hint": "Vis dato- og tidsintervall i henhold til dataaggregeringen.", + "hide-zero-tooltip-values": "Skjul nullverdier", + "show-stack-total": "Vis totalverdi i stablingsmodus", "background-color": "Bakgrunnsfarge", "background-blur": "Bakgrunnsuskarphet" }, "unit": { + "set-unit-conversion": "Angi enhetskonvertering", + "unit-settings": { + "unit-settings": "Enhetsinnstillinger", + "source-unit": "Kildeenhet", + "source-unit-hint": "Dette er enheten for den lagrede verdien. Enheten du konverterer fra. Angi symbolet som kildedataene dine bruker (f.eks. m, km, ft, in).", + "target-metric-unit": "Målenhet i metrisk system", + "target-metric-unit-hint": "Velg hvilken metrisk enhet (SI) du vil at kildeverdien skal konverteres til (f.eks. cm, mm, km).", + "target-imperial-unit": "Målenhet i imperialt system", + "target-imperial-unit-hint": "Velg hvilken imperial enhet du vil at kildeverdien skal konverteres til (f.eks. in, ft, yd).", + "target-hybrid-unit": "Målenhet i hybridsystem", + "target-hybrid-unit-hint": "Velg hvilken hybrid enhet du vil at kildeverdien skal konverteres til (f.eks. cm, in, km). Hybridenheter kombinerer metriske eller imperial enheter.", + "enable-unit-conversion": "Aktiver enhetskonvertering", + "enable-unit-conversion-hint": "Slå på for å aktivere konvertering. Når den er av, sendes kildeverdien videre uendret. Deaktivert hvis det bare finnes én enhet i den tilsvarende målegruppen (f.eks. Luminous flux, AQI)." + }, + "unit-system": "Enhetssystem", + "unit-system-type": { + "AUTO": "Auto", + "METRIC": "Metrisk", + "IMPERIAL": "Imperial", + "HYBRID": "Hybrid" + }, + "measures": { + "absorbed-dose-rate": "Absorbert doserate", + "acceleration": "Akselerasjon", + "acidity": "Surhetsgrad", + "air-quality-index": "Luftkvalitetsindeks", + "amount-of-substance": "Stoffmengde", + "angle": "Vinkel", + "angular-acceleration": "Vinkelakselerasjon", + "area": "Areal", + "area-density": "Arealetetthet", + "capacitance": "Kapasitans", + "catalytic-activity": "Katalytisk aktivitet", + "catalytic-concentration": "Katalytisk konsentrasjon", + "charge": "Elektrisk ladning", + "current-density": "Strømtetthet", + "data-transfer-rate": "Dataoverføringshastighet", + "density": "Tetthet", + "digital": "Digital", + "dimension-ratio": "Dimensjonsforhold", + "dynamic-viscosity": "Dynamisk viskositet", + "earthquake-magnitude": "Jordskjelvstyrke", + "electric-charge-density": "Elektrisk ladningstetthet", + "electric-current": "Elektrisk strøm", + "electric-dipole-moment": "Elektrisk dipolmoment", + "electric-field-strength": "Elektrisk feltstyrke", + "electric-flux": "Elektrisk fluks", + "electric-permittivity": "Elektrisk permittivitet", + "electric-polarizability": "Elektrisk polariserbarhet", + "electrical-conductance": "Elektrisk konduktans", + "electrical-conductivity": "Elektrisk ledningsevne", + "energy": "Energi", + "energy-density": "Energitetthet", + "force": "Kraft", + "frequency": "Frekvens", + "fuel-efficiency": "Drivstoffeffektivitet", + "heat-capacity": "Varmekapasitet", + "illuminance": "Belysningsstyrke", + "inductance": "Induktans", + "kinematic-viscosity": "Kinematisk viskositet", + "length": "Lengde", + "light-exposure": "Lyseksponering", + "linear-charge-density": "Lineær ladningstetthet", + "logarithmic-ratio": "Logaritmisk forhold", + "luminous-efficacy": "Lysvirkningsgrad", + "luminous-flux": "Lysfluks", + "luminous-intensity": "Lysintensitet", + "magnetic-field-gradient": "Magnetfeltgradient", + "magnetic-flux": "Magnetisk fluks", + "magnetic-flux-density": "Magnetisk flukstetthet", + "magnetic-moment": "Magnetisk moment", + "magnetic-permeability": "Magnetisk permeabilitet", + "mass": "Masse", + "mass-fraction": "Massefraksjon", + "molar-concentration": "Molarkonsentrasjon", + "molar-energy": "Molar energi", + "molar-heat-capacity": "Molar varmekapasitet", + "molar-mass": "Molarmasse", + "number-concentration": "Tallkonsentrasjon", + "parts-per-million": "Deler per million", + "power": "Effekt", + "power-density": "Effekttetthet", + "pressure": "Trykk", + "radiance": "Radianse", + "radiant-intensity": "Strålingsintensitet", + "radiation-dose": "Stråledose", + "radioactive-decay": "Radioaktivt henfall", + "radioactivity": "Radioaktivitet", + "radioactivity-concentration": "Radioaktivitetskonsentrasjon", + "reciprocal-length": "Omvendt lengde", + "resistance": "Motstand", + "reynolds-number": "Reynolds-tall", + "signal-level": "Signalnivå", + "solid-angle": "Romvinkel", + "specific-energy": "Spesifikk energi", + "specific-heat-capacity": "Spesifikk varmekapasitet", + "specific-humidity": "Spesifikk fuktighet", + "specific-volume": "Spesifikt volum", + "speed": "Hastighet", + "surface-charge-density": "Overflateladningstetthet", + "surface-tension": "Overflatespenning", + "temperature": "Temperatur", + "thermal-conductivity": "Varmeledningsevne", + "time": "Tid", + "torque": "Dreiemoment", + "turbidity": "Turbiditet", + "voltage": "Spenning", + "volume": "Volum", + "volume-flow": "Volumstrøm" + }, "millimeter": "Millimeter", "centimeter": "Centimeter", + "decimeter": "Desimeter", "angstrom": "Ångström", "nanometer": "Nanometer", "micrometer": "Mikrometer", @@ -5841,6 +6130,7 @@ "kilometer": "Kilometer", "inch": "Tommer", "foot": "Fot", + "foot-us": "Fot (US survey)", "yard": "Yard", "mile": "Mil", "nautical-mile": "Nautisk mil", @@ -5887,6 +6177,7 @@ "cubic-foot": "Kubikkfot", "cubic-yard": "Kubikkyard", "fluid-ounce": "Fluid unse", + "fluid-ounce-per-second": "Fluid ounce per sekund", "pint": "Pint", "quart": "Kvart", "gallon": "Gallon", @@ -5905,9 +6196,13 @@ "meter-per-second": "Meter per sekund", "kilometer-per-hour": "Kilometer i timen", "foot-per-second": "Fot per sekund", - "mile-per-hour": "Mil i timen", + "foot-per-minute": "Fot per minutt", + "mile-per-hour": "Mile per time", "knot": "Knop", + "inch-per-second": "Tomme per sekund", + "inch-per-hour": "Tomme per time", "millimeters-per-minute": "Millimeter per minutt", + "meter-per-minute": "Meter per minutt", "kilometer-per-hour-squared": "Kilometer i timen i kvadrat", "foot-per-second-squared": "Fot per sekund i kvadrat", "pascal": "Pascal", @@ -5924,6 +6219,7 @@ "newton-per-meter": "Newton per meter", "atmospheres": "Atmosfærer", "pounds-per-square-inch": "Pund per kvadrattomme", + "kilopound-per-square-inch": "Kilopound per kvadrattomme", "torr": "Torr", "inches-of-mercury": "Tommer kvikksølv", "pascal-per-square-meter": "Pascal per kvadratmeter", @@ -5940,11 +6236,17 @@ "kilojoule": "Kilojoule", "megajoule": "Megajoule", "gigajoule": "Gigajoule", - "watt-hour": "Wattime", - "kilowatt-hour": "Kilowattime", + "watt-hour": "Watt-time", + "watt-minute": "Watt-minutt", + "kilowatt-hour": "Kilowatt-time", + "milliwatt-hour": "Milliwatt-time", + "megawatt-hour": "Megawatt-time", + "gigawatt-hour": "Gigawatt-time", "electron-volts": "Elektronvolt", - "joules-per-coulomb": "Joule per Coulomb", - "british-thermal-unit": "Britisk termisk enhet", + "joules-per-coulomb": "Joule per coulomb", + "british-thermal-unit": "Britiske termiske enheter", + "thousand-british-thermal-unit": "Tusen britiske termiske enheter", + "million-british-thermal-unit": "Million britiske termiske enheter", "foot-pound": "Fot-pund", "calorie": "Kalori", "small-calorie": "Liten kalori", @@ -5975,10 +6277,20 @@ "watt-per-square-inch": "Watt per kvadrattomme", "kilowatt-per-square-inch": "Kilowatt per kvadrattomme", "horsepower": "Hestekraft", - "btu-per-hour": "Britiske termiske enheter/time", + "btu-per-hour": "Britiske termiske enheter per time", + "btu-per-second": "Britiske termiske enheter per sekund", + "btu-per-day": "Britiske termiske enheter per dag", + "mbtu-per-hour": "Tusen britiske termiske enheter per time", + "mbtu-per-second": "Tusen britiske termiske enheter per sekund", + "mbtu-per-day": "Tusen britiske termiske enheter per dag", + "mmbtu-per-hour": "Million britiske termiske enheter per time", + "mmbtu-per-second": "Million britiske termiske enheter per sekund", + "mmbtu-per-day": "Million britiske termiske enheter per dag", + "foot-pound-per-second": "Fot-pound per sekund", "coulomb": "Coulomb", "millicoulomb": "Millicoulomb", "microcoulomb": "Mikrocoulomb", + "nanocoulomb": "Nanocoulomb", "picocoulomb": "Picocoulomb", "coulomb-per-meter": "Coulomb per meter", "coulomb-per-cubic-meter": "Coulomb per kubikkmeter", @@ -6004,6 +6316,9 @@ "microampere": "Mikroampere", "milliampere": "Milliampere", "ampere": "Ampere", + "kiloampere": "Kiloampere", + "megaampere": "Megaampere", + "gigaampere": "Gigaampere", "microampere-per-square-centimeter": "Mikroampere per kvadratcentimeter", "ampere-per-square-meter": "Ampere per kvadratmeter", "ampere-per-meter": "Ampere per meter", @@ -6012,7 +6327,11 @@ "ampere-meter-squared": "Ampere-meter kvadrert", "nanovolt": "Nanovolt", "picovolt": "Picovolt", + "millivolt": "Millivolt", + "microvolt": "Mikrovolt", "volt": "Volt", + "kilovolt": "Kilovolt", + "megavolt": "Megavolt", "dbmV": "dBmV", "dbm": "dBm", "volt-meter": "Volt-meter", @@ -6027,10 +6346,12 @@ "kilohm": "Kiloohm", "megohm": "Megohm", "gigohm": "Gigohm", + "millihertz": "Millihertz", "hertz": "Hertz", "kilohertz": "Kilohertz", "megahertz": "Megahertz", "gigahertz": "Gigahertz", + "terahertz": "Terahertz", "rpm": "Omdreininger per minutt", "candela-per-square-meter": "Candela per kvadratmeter", "candela": "Candela", @@ -6116,6 +6437,9 @@ "millibars": "Millibar", "inch-of-mercury": "Tommer kvikksølv", "richter-scale": "Richterskala", + "nanosecond": "Nanosekund", + "microsecond": "Mikrosekund", + "millisecond": "Millisekund", "second": "Sekund", "minute": "Minutt", "hour": "Time", @@ -6131,6 +6455,7 @@ "gallons-per-minute": "Galloner per minutt", "cubic-foot-per-second": "Kubikkfot per sekund", "milliliters-per-minute": "Milliliter per minutt", + "cubic-decimeter-per-second": "Kubikkdesimeter per sekund", "bit": "Bit", "byte": "Byte", "kilobyte": "Kilobyte", @@ -6153,6 +6478,9 @@ "degree": "Grad", "radian": "Radian", "gradian": "Gradian", + "arcminute": "Bueminutt", + "arcsecond": "Buesekund", + "milliradian": "Milliradian", "revolution": "Revolusjon", "siemens": "Siemens", "millisiemens": "Millisiemens", @@ -6222,10 +6550,12 @@ "radian-per-second": "Radian per sekund", "radian-per-second-squared": "Radian per sekund i kvadrat", "revolutions-per-minute-per-second": "Vinkelakselerasjon", - "deg-per-second": "grader/s", - "degrees-brix": "Grader Brix", + "deg-per-second": "Grader per sekund", + "rotation-per-minute": "Rotasjon per minutt", + "degrees-brix": "Grader brix", "katal": "Katal", - "katal-per-cubic-metre": "Katal per kubikkmeter" + "katal-per-cubic-metre": "Katal per kubikkmeter", + "paris-inch": "Paris-tomme" }, "user": { "user": "Bruker", @@ -6317,7 +6647,7 @@ "export-relations": "Eksporter relasjoner", "export-attributes": "Eksporter attributter", "export-credentials": "Eksporter legitimasjon", - "export-calculated-fields": "Eksporter beregnede felt", + "export-calculated-fields": "Eksporter beregnede felt \nog alarmregler", "entity-versions": "Entitetsversjoner", "versions": "Versjoner", "created-time": "Opprettet tidspunkt", @@ -7775,6 +8105,18 @@ "fill-area-opacity": "Opasitet for fylt område", "range-chart-style": "Stil for områdediagram" }, + "knob": { + "behavior": "Atferd", + "initial-value": "Startverdi", + "initial-value-hint": "Handling for å hente startverdien for dreieknappen.", + "on-value-change": "Ved verdiendring", + "on-value-change-hint": "Handling som utløses når dreieknappens verdi endres.", + "range": "Område", + "min": "min", + "max": "maks", + "value": "Verdi", + "fallback-initial-value": "Fallback-startverdi" + }, "rpc": { "value-settings": "Verdiinnstillinger", "initial-value": "Startverdi", @@ -7831,9 +8173,7 @@ "led-status-value-timeseries": "Enhetstidsserie som inneholder LED-statusverdi", "check-status-method": "RPC-metode for statuskontroll", "parse-led-status-value-function": "Parse LED-statusverdi-funksjon", - "knob-title": "Knappetittel", - "min-value": "Minimumsverdi", - "max-value": "Maksimumsverdi" + "knob-title": "Knappetittel" }, "maps": { "map-type": { @@ -8157,10 +8497,10 @@ "finish-circle-hint-with-entity": "Sirkel for '{{entityName}}': klikk for å avslutte og lagre sirkel", "finish-circle-hint": "Sirkel: klikk for å avslutte tegning" }, - "select-entity": "Velg enhet", + "select-entity": "Velg entitet", "select-entity-hint": "Tips: etter valg, klikk på kartet for å angi posisjon" }, - "select-entity": "Velg enhet", + "select-entity": "Velg entitet", "select-entity-hint": "Tips: etter valg, klikk på kartet for å angi posisjon", "tooltips": { "placeMarker": "Klikk for å plassere '{{entityName}}' enhet", @@ -8688,7 +9028,11 @@ "radar-axis": "Radarakse", "axis-label": "Aksesetikett", "ticks-label": "Tikkeetikett", - "radar-chart-style": "Radar-diagramstil" + "radar-chart-style": "Radar-diagramstil", + "max-axes-scaling": "Maks akseskalering", + "max-axes-scaling-hint": "Velg om hver radarakse har sin egen maksverdi (Separat) eller deler den høyeste verdien på tvers av alle akser basert på widget-datasettet (Felles).", + "separate": "Separat", + "common": "Felles" }, "time-series-chart": { "chart": "Diagram", @@ -9110,7 +9454,7 @@ }, "step2": { "title": "Koble til enhet", - "content-before": "

For å koble til enheten må du hente legitimasjon. Vi anbefaler å bruke automatisk genererte legitimasjonsdata – tilgangstoken – i denne veiledningen.

Bruk enkle kommandoer for å publisere data via HTTP. Husk å erstatte $ACCESS_TOKEN med tilgangstokenet for enheten:

", + "content-before": "

For å koble til enheten må du hente legitimasjon. Vi anbefaler å bruke automatisk genererte legitimasjonsdata – tilgangstoken – i denne veiledningen.

Bruk enkle kommandoer for å publisere data via HTTP. Husk å erstatte $ACCESS_TOKEN med tilgangstokenet for enheten:

", "ubuntu": { "install-curl": "Installer cURL for Ubuntu:" }, @@ -9194,4 +9538,4 @@ "language": { "language": "Språk" } -} +} \ No newline at end of file diff --git a/ui-ngx/src/assets/locale/locale.constant-pt_BR.json b/ui-ngx/src/assets/locale/locale.constant-pt_BR.json index a528be78eb..f13ad03a3b 100644 --- a/ui-ngx/src/assets/locale/locale.constant-pt_BR.json +++ b/ui-ngx/src/assets/locale/locale.constant-pt_BR.json @@ -2,19 +2,24 @@ "access": { "unauthorized": "Não autorizado", "unauthorized-access": "Acesso não autorizado", - "unauthorized-access-text": "Para acessar este recurso, você precisa se inscrever!", + "unauthorized-access-text": "Você precisa fazer login para acessar este recurso!", "access-forbidden": "Acesso proibido", - "access-forbidden-text": "Você não tem direito de acesso a esta localização!
Se ainda deseja acessar esta localização, tente inscrever-se com um nome de usuário diferente.", - "refresh-token-expired": "A sessão expirou", - "refresh-token-failed": "Impossível atualizar a sessão", + "access-forbidden-text": "Você não tem permissão de acesso a este local!
Tente fazer login com outro usuário se ainda deseja obter acesso a este local.", + "refresh-token-expired": "Sessão expirada", + "refresh-token-failed": "Não foi possível atualizar a sessão", "permission-denied": "Permissão negada", "permission-denied-text": "Você não tem permissão para executar esta operação!" }, + "account": { + "account": "Conta", + "notification-settings": "Configurações de notificação" + }, "action": { "activate": "Ativar", "suspend": "Suspender", "save": "Salvar", "saveAs": "Salvar como", + "move": "Mover", "cancel": "Cancelar", "ok": "OK", "delete": "Excluir", @@ -23,22 +28,22 @@ "no": "Não", "update": "Atualizar", "remove": "Remover", - "select": "Selecionar", "search": "Pesquisar", "clear-search": "Limpar pesquisa", "assign": "Atribuir", - "unassign": "Cancelar atribuição", + "unassign": "Desatribuir", "share": "Compartilhar", "make-private": "Tornar privado", "apply": "Aplicar", "apply-changes": "Aplicar alterações", "edit-mode": "Modo de edição", "enter-edit-mode": "Entrar no modo de edição", - "decline-changes": "Rejeitar alterações", + "decline-changes": "Recusar alterações", + "decline": "Recusar", "close": "Fechar", "back": "Voltar", "run": "Executar", - "sign-in": "Inscreva-se!", + "sign-in": "Entrar!", "edit": "Editar", "view": "Visualizar", "create": "Criar", @@ -52,59 +57,137 @@ "import": "Importar", "export": "Exportar", "share-via": "Compartilhar via {{provider}}", + "select": "Selecionar", "continue": "Continuar", "discard-changes": "Descartar alterações", - "download": "Download", - "done": "Concluído" + "download": "Baixar", + "next": "Próximo", + "next-with-label": "Próximo: {{label}}", + "read-more": "Ler mais", + "hide": "Ocultar", + "test": "Testar", + "done": "Concluir", + "print": "Imprimir", + "restore": "Restaurar", + "confirm": "Confirmar", + "more": "Mais", + "less": "Menos", + "skip": "Ignorar", + "send": "Enviar", + "reset": "Redefinir", + "show-more": "Mostrar mais", + "dont-show-again": "Não mostrar novamente", + "see-documentation": "Ver documentação", + "clear": "Limpar", + "upload": "Carregar", + "delete-anyway": "Excluir mesmo assim", + "delete-selected": "Excluir selecionados", + "set": "Definir" }, "aggregation": { "aggregation": "Agregação", "function": "Função de agregação de dados", - "limit": "Valores máx.", + "limit": "Máximo de valores", "group-interval": "Intervalo de agrupamento", - "min": "Mín.", - "max": "Máx.", + "min": "Mín", + "max": "Máx", "avg": "Média", "sum": "Soma", "count": "Contagem", "none": "Nenhum" }, "admin": { + "settings": "Configurações", "general": "Geral", - "general-settings": "Configuração geral", - "outgoing-mail": "Servidor de e-mail", - "outgoing-mail-settings": "Configuração do servidor de saída de e-mail", - "system-settings": "Configuração do sistema", - "test-mail-sent": "O e-mail de teste foi enviado corretamente!", - "base-url": "URL de base", - "base-url-required": "O URL de base é obrigatório.", - "mail-from": "E-mail de", - "mail-from-required": "'E-mail de' é obrigatório.", + "general-settings": "Configurações gerais", + "home-settings": "Configurações da página inicial", + "home": "Início", + "outgoing-mail": "Servidor de email", + "outgoing-mail-settings": "Configurações do servidor de email de saída", + "system-settings": "Configurações do sistema", + "test-mail-sent": "Email de teste enviado com sucesso!", + "base-url": "URL base", + "base-url-required": "URL base é obrigatória.", + "prohibit-different-url": "Proibir o uso de hostname dos cabeçalhos de requisição do cliente", + "prohibit-different-url-hint": "Esta configuração deve ser habilitada em ambientes de produção. Pode causar problemas de segurança quando desabilitada", + "device-connectivity": { + "device-connectivity": "Conectividade do dispositivo", + "http-s": "HTTP(s)", + "mqtt-s": "MQTT(s)", + "coap-s": "COAP(s)", + "http": "HTTP", + "https": "HTTPs", + "mqtt": "MQTT", + "mqtts": "MQTTs", + "coap": "COAP", + "coaps": "COAPs", + "hint": "Se os campos de host ou porta estiverem vazios, o valor padrão do protocolo será utilizado.", + "host": "Host", + "port": "Porta", + "port-pattern": "A porta deve ser um número inteiro positivo.", + "port-range": "A porta deve estar no intervalo de 1 a 65535." + }, + "mail-from": "Remetente do email", + "mail-from-required": "Remetente do email é obrigatório.", "smtp-protocol": "Protocolo SMTP", "smtp-host": "Host SMTP", - "smtp-host-required": "O host SMTP é obrigatório.", + "smtp-host-required": "Host SMTP é obrigatório.", "smtp-port": "Porta SMTP", - "smtp-port-required": "É necessário informar a porta SMPT.", - "smtp-port-invalid": "Esta não parece ser uma porta SMTP válida.", - "timeout-msec": "Tempo limite (ms)", - "timeout-required": "O tempo limite é obrigatório.", - "timeout-invalid": "Este não parece ser um tempo limite válido.", - "enable-tls": "Habilitar TLS", - "tls-version": "Versão de TLS", - "enable-proxy": "Habilitar proxy", - "proxy-host": "Host de proxy", - "proxy-host-required": "O host de proxy é obrigatório.", + "smtp-port-required": "É necessário informar uma porta SMTP.", + "smtp-port-invalid": "Isso não parece uma porta SMTP válida.", + "timeout-msec": "Tempo limite (msec)", + "timeout-required": "Tempo limite é obrigatório.", + "timeout-invalid": "Isso não parece um tempo limite válido.", + "enable-tls": "Ativar TLS", + "tls-version": "Versão TLS", + "enable-proxy": "Ativar proxy", + "proxy-host": "Host do proxy", + "proxy-host-required": "Host do proxy é obrigatório.", "proxy-port": "Porta do proxy", - "proxy-port-required": "A porta do proxy é obrigatória.", - "proxy-port-range": "A porta do proxy deve estar em um intervalo de 1 a 65535.", + "proxy-port-required": "Porta do proxy é obrigatória.", + "proxy-port-range": "A porta do proxy deve estar no intervalo de 1 a 65535.", "proxy-user": "Usuário do proxy", "proxy-password": "Senha do proxy", - "send-test-mail": "Enviar e-mail de teste", - "security-settings": "Configuração de segurança", - "password-policy": "Política de senhas", + "change-password": "Alterar senha", + "send-test-mail": "Enviar email de teste", + "sms-provider": "Provedor de SMS", + "sms-provider-settings": "Configurações do provedor de SMS", + "sms-provider-type": "Tipo de provedor de SMS", + "sms-provider-type-required": "Tipo de provedor de SMS é obrigatório.", + "sms-provider-type-aws-sns": "Amazon SNS", + "sms-provider-type-twilio": "Twilio", + "sms-provider-type-smpp": "SMPP", + "aws-access-key-id": "AWS Access Key ID", + "aws-access-key-id-required": "AWS Access Key ID é obrigatório", + "aws-secret-access-key": "AWS Secret Access Key", + "aws-secret-access-key-required": "AWS Secret Access Key é obrigatório", + "aws-region": "Região AWS", + "aws-region-required": "Região AWS é obrigatória", + "number-from": "Número de telefone remetente", + "number-from-required": "Número de telefone remetente é obrigatório.", + "number-to": "Número de telefone destinatário", + "number-to-required": "Número de telefone destinatário é obrigatório.", + "phone-number-hint": "Número de telefone no formato E.164, ex.: +19995550123", + "phone-number-hint-twilio": "Número de telefone no formato E.164/SID do número de telefone/SID do serviço de mensagens, ex.: +19995550123/PNXXX/MGXXX", + "phone-number-pattern": "Número de telefone inválido. Deve estar no formato E.164, ex.: +19995550123.", + "phone-number-pattern-twilio": "Número de telefone inválido. Deve estar no formato E.164/SID do número de telefone/SID do serviço de mensagens, ex.: +19995550123/PNXXX/MGXXX.", + "sms-message": "Mensagem SMS", + "sms-message-required": "Mensagem SMS é obrigatória.", + "sms-message-max-length": "A mensagem SMS não pode ter mais de 1600 caracteres", + "twilio-account-sid": "Twilio Account SID", + "twilio-account-sid-required": "Twilio Account SID é obrigatório", + "twilio-account-token": "Twilio Account Token", + "twilio-account-token-required": "Twilio Account Token é obrigatório", + "send-test-sms": "Enviar SMS de teste", + "test-sms-sent": "SMS de teste enviado com sucesso!", + "security-settings": "Configurações de segurança", + "password-policy": "Política de senha", "minimum-password-length": "Comprimento mínimo da senha", - "minimum-password-length-required": "O comprimento mínimo da senha é obrigatório", - "minimum-password-length-range": "O comprimento mínimo da senha deve estar em um intervalo de 5 a 50.", + "minimum-password-length-required": "Comprimento mínimo da senha é obrigatório", + "minimum-password-length-range": "O comprimento mínimo da senha deve estar no intervalo de 6 a 50", + "maximum-password-length": "Comprimento máximo da senha", + "maximum-password-length-min": "O comprimento máximo da senha deve ser de pelo menos 6", + "maximum-password-length-less-min": "O comprimento máximo da senha deve ser maior que o comprimento mínimo", "minimum-uppercase-letters": "Número mínimo de letras maiúsculas", "minimum-uppercase-letters-range": "O número mínimo de letras maiúsculas não pode ser negativo", "minimum-lowercase-letters": "Número mínimo de letras minúsculas", @@ -113,36 +196,381 @@ "minimum-digits-range": "O número mínimo de dígitos não pode ser negativo", "minimum-special-characters": "Número mínimo de caracteres especiais", "minimum-special-characters-range": "O número mínimo de caracteres especiais não pode ser negativo", - "password-expiration-period-days": "Período de expiração de senha em dias", - "password-expiration-period-days-range": "O período de expiração de senha não pode ser negativo", + "password-expiration-period-days": "Período de expiração da senha em dias", + "password-expiration-period-days-range": "O período de expiração da senha em dias não pode ser negativo", "password-reuse-frequency-days": "Frequência de reutilização de senha em dias", - "password-reuse-frequency-days-range": "A frequência em dias de reutilização da senha não pode ser negativa", + "password-reuse-frequency-days-range": "A frequência de reutilização de senha em dias não pode ser negativa", + "allow-whitespace": "Permitir espaço em branco", + "force-reset-password-if-no-valid": "Forçar redefinição de senha se não for válida", + "force-reset-password-if-no-valid-hint": "Tenha cuidado ao habilitar este recurso: ele exigirá que usuários com senha inválida redefinam sua senha por email.", "general-policy": "Política geral", - "max-failed-login-attempts": "Número máximo de tentativas de login com falha antes de bloquear a conta", - "minimum-max-failed-login-attempts-range": "O número máximo de tentativas de login com falha não pode ser negativo", - "user-lockout-notification-email": "Em caso de bloqueio de conta do usuário, enviar notificação para o endereço de e-mail" + "max-failed-login-attempts": "Número máximo de tentativas de login falhas antes de bloquear a conta", + "minimum-max-failed-login-attempts-range": "O número máximo de tentativas de login falhas não pode ser negativo", + "user-lockout-notification-email": "Em caso de bloqueio de conta do usuário, enviar notificação por email", + "user-activation-token-ttl": "TTL do link de ativação do usuário em horas", + "user-activation-token-ttl-range": "O TTL do link de ativação do usuário deve estar no intervalo de 1 a 24 horas", + "password-reset-token-ttl": "TTL do link de redefinição de senha em horas", + "password-reset-token-ttl-range": "O TTL do link de redefinição de senha deve estar no intervalo de 1 a 24 horas", + "mobile-secret-key-length": "Comprimento da chave secreta do aplicativo móvel", + "mobile-secret-key-length-range": "O comprimento da chave secreta do aplicativo móvel deve ser positivo", + "domain-name": "Nome de domínio", + "domain-name-unique": "O nome de domínio e o protocolo precisam ser únicos.", + "domain-name-max-length": "O nome de domínio deve ter menos de 256 caracteres", + "error-verification-url": "O nome de domínio não deve conter os símbolos '/' e ':'. Exemplo: thingsboard.io", + "connection-settings": "Configurações de conexão", + "oauth2": { + "access-token-uri": "Access token URI", + "access-token-uri-required": "Access token URI é obrigatório.", + "activate-user": "Ativar usuário", + "add-domain": "Adicionar domínio", + "delete-domain": "Excluir domínio", + "add-provider": "Adicionar provedor", + "delete-provider": "Excluir provedor", + "allow-user-creation": "Permitir criação de usuário", + "always-fullscreen": "Sempre em tela cheia", + "authorization-uri": "Authorization URI", + "authorization-uri-required": "Authorization URI é obrigatório.", + "add-client": "Adicionar cliente OAuth 2.0", + "client-details": "Detalhes do cliente OAuth 2.0", + "client": "Cliente OAuth 2.0", + "clients": "Clientes OAuth 2.0", + "no-oauth2-clients": "Nenhum cliente OAuth 2.0 encontrado", + "search-oauth2-clients": "Pesquisar clientes OAuth 2.0", + "delete-client-title": "Tem certeza de que deseja excluir o cliente OAuth 2.0 '{{clientName}}'?", + "delete-client-text": "Atenção: após a confirmação, o cliente e todos os dados relacionados serão irrecuperáveis.", + "delete-mobile-app-title": "Tem certeza de que deseja excluir o aplicativo móvel '{{applicationName}}'?", + "delete-mobile-app-text": "Atenção: após a confirmação, o aplicativo móvel e todos os dados relacionados serão irrecuperáveis.", + "title": "Título", + "client-title-required": "Título é obrigatório", + "client-title-max-length": "O título deve ter menos de 100 caracteres", + "advanced-settings": "Configurações avançadas", + "domain-details": "Detalhes do domínio", + "no-domains": "Nenhum domínio encontrado", + "search-domains": "Pesquisar domínios", + "mobile-app-details": "Detalhes do aplicativo móvel", + "add-mobile-app": "Adicionar aplicativo móvel", + "no-mobile-apps": "Nenhum aplicativo móvel encontrado", + "search-mobile-apps": "Pesquisar aplicativos móveis", + "send-token": "Enviar token", + "create-new": "Criar novo", + "client-authentication-method": "Método de autenticação do cliente", + "client-id": "Client ID", + "client-id-required": "Client ID é obrigatório.", + "client-id-max-length": "O Client ID deve ter menos de 256 caracteres", + "client-secret": "Client secret", + "client-secret-required": "Client secret é obrigatório.", + "client-secret-max-length": "O Client secret deve ter menos de 2049 caracteres", + "custom-setting": "Configurações personalizadas", + "customer-name-pattern": "Padrão de nome do cliente", + "customer-name-pattern-max-length": "O padrão de nome do cliente deve ter menos de 256 caracteres", + "default-dashboard-name": "Nome do Dashboard padrão", + "default-dashboard-name-max-length": "O nome do Dashboard padrão deve ter menos de 256 caracteres", + "delete-domain-text": "Atenção: após a confirmação, o domínio e todos os dados do provedor ficarão indisponíveis.", + "delete-domain-title": "Tem certeza de que deseja excluir o domínio '{{domainName}}'?", + "delete-registration-text": "Atenção: após a confirmação, os dados do provedor ficarão indisponíveis.", + "delete-registration-title": "Tem certeza de que deseja excluir o provedor '{{name}}'?", + "email-attribute-key": "Chave de atributo de email", + "email-attribute-key-required": "Chave de atributo de email é obrigatória.", + "email-attribute-key-max-length": "A chave de atributo de email deve ter menos de 32 caracteres", + "first-name-attribute-key": "Chave de atributo de nome", + "first-name-attribute-key-max-length": "A chave de atributo de nome deve ter menos de 32 caracteres", + "general": "Geral", + "jwk-set-uri": "JSON Web Key URI", + "last-name-attribute-key": "Chave de atributo de sobrenome", + "last-name-attribute-key-max-length": "A chave de atributo de sobrenome deve ter menos de 32 caracteres", + "login-button-icon": "Ícone do botão de login", + "login-button-label": "Rótulo do provedor", + "login-button-label-placeholder": "Login with $(Provider label)", + "login-button-label-required": "Rótulo é obrigatório.", + "login-provider": "Provedor de login", + "mapper": "Mapeador", + "new-domain": "Novo domínio", + "oauth2": "OAuth 2.0", + "password-max-length": "A senha deve ter menos de 256 caracteres", + "redirect-uri-template": "Redirect URI template", + "copy-redirect-uri": "Copiar Redirect URI", + "registration-id": "ID de registro", + "registration-id-required": "ID de registro é obrigatório.", + "registration-id-unique": "O ID de registro precisa ser único no sistema.", + "scope": "Scope", + "scope-required": "Scope é obrigatório.", + "tenant-name-pattern": "Padrão de nome do tenant", + "tenant-name-pattern-required": "Padrão de nome do tenant é obrigatório.", + "tenant-name-pattern-max-length": "O padrão de nome do tenant deve ter menos de 256 caracteres", + "tenant-name-strategy": "Estratégia de nome do tenant", + "type": "Tipo de mapeador", + "uri-pattern-error": "Formato de URI inválido.", + "url": "URL", + "url-pattern": "Formato de URL inválido.", + "url-required": "URL é obrigatória.", + "url-max-length": "A URL deve ter menos de 256 caracteres", + "user-info-uri": "URI de informações do usuário", + "user-info-uri-required": "URI de informações do usuário é obrigatório.", + "username-max-length": "O nome de usuário deve ter menos de 256 caracteres", + "user-name-attribute-name": "Chave de atributo do nome de usuário", + "user-name-attribute-name-required": "Chave de atributo do nome de usuário é obrigatória", + "protocol": "Protocolo", + "domain-schema-http": "HTTP", + "domain-schema-https": "HTTPS", + "domain-schema-mixed": "HTTP+HTTPS", + "enable": "Ativar configurações OAuth 2.0", + "disable": "Desativar configurações OAuth 2.0", + "edge": "Propagar para Edge", + "edge-enable": "Ativar propagação para Edge", + "edge-disable": "Desativar propagação para Edge", + "domains": "Domínios", + "mobile-apps": "Aplicativos móveis", + "mobile-package": "Pacote do aplicativo", + "mobile-package-placeholder": "Ex.: my.example.app", + "mobile-package-hint": "Para Android: seu ID de aplicativo único. Para iOS: identificador do bundle do produto.", + "mobile-package-unique": "O pacote do aplicativo deve ser único.", + "mobile-package-required": "Pacote do aplicativo é obrigatório.", + "mobile-package-max-length": "O pacote do aplicativo deve ter menos de 256 caracteres", + "mobile-package-spaces": "O pacote do aplicativo não deve conter espaços", + "mobile-app-secret": "Application secret", + "mobile-app-secret-hint": "String codificada em Base64 representando pelo menos 512 bits de dados.", + "mobile-app-secret-required": "Application secret é obrigatório.", + "mobile-app-secret-min-length": "Application secret deve conter pelo menos 512 bits de dados.", + "mobile-app-secret-base64": "Application secret deve estar no formato base64.", + "invalid-mobile-app-secret": "Application secret deve conter apenas caracteres alfanuméricos e ter entre 16 e 2048 caracteres.", + "copy-mobile-app-secret": "Copiar application secret", + "delete-mobile-app": "Excluir informações do aplicativo", + "providers": "Provedores", + "platform-web": "Web", + "platform-android": "Android", + "platform-ios": "iOS", + "all-platforms": "Todas as plataformas", + "smtp-provider": "Provedor SMTP", + "allowed-platforms": "Plataformas permitidas", + "authentication": "Autenticação", + "basic": "Básico", + "provider": "Provedor", + "redirect-url": "Redirect URI", + "domain-name": "Nome de domínio", + "domain-name-required": "Nome de domínio é obrigatório", + "redirect-url-template": "Redirect URI template", + "microsoft-tenant-id": "ID do diretório (tenant)", + "microsoft-tenant-id-required": "ID do diretório (tenant) é obrigatório", + "token-uri": "Token URI", + "token-uri-required": "Token URI é obrigatório", + "redirect-uri": "Redirect URI", + "google-provider": "Google", + "microsoft-provider": "Office 365", + "sendgrid-provider": "Sendgrid", + "custom-provider": "Personalizado", + "generate-access-token": "Gerar access token", + "update-access-token": "Atualizar access token", + "access-token-status": "Status do access token:", + "token-status-generated": "gerado", + "token-status-not-generated": "não gerado" + }, + "smpp-provider": { + "smpp-version": "Versão SMPP", + "smpp-host": "Host SMPP", + "smpp-host-required": "Host SMPP é obrigatório", + "smpp-port": "Porta SMPP", + "smpp-port-required": "Porta SMPP é obrigatória", + "system-id": "ID do sistema", + "system-id-required": "ID do sistema é obrigatório", + "password": "Senha", + "password-required": "Senha é obrigatória", + "type-settings": "Configurações de tipo", + "source-settings": "Configurações de origem", + "destination-settings": "Configurações de destino", + "additional-settings": "Configurações adicionais", + "system-type": "Tipo de sistema", + "bind-type": "Tipo de bind", + "service-type": "Tipo de serviço", + "source-address": "Endereço de origem", + "source-ton": "TON de origem", + "source-npi": "NPI de origem", + "destination-ton": "TON de destino (Type of Number)", + "destination-npi": "NPI de destino (Numbering Plan Identification)", + "address-range": "Intervalo de endereços", + "coding-scheme": "Esquema de codificação", + "bind-type-tx": "Transmissor", + "bind-type-rx": "Receptor", + "bind-type-trx": "Transceptor", + "ton-unknown": "Desconhecido", + "ton-international": "Internacional", + "ton-national": "Nacional", + "ton-network-specific": "Específico de rede", + "ton-subscriber-number": "Número do assinante", + "ton-alphanumeric": "Alfanumérico", + "ton-abbreviated": "Abreviado", + "npi-unknown": "0 - Desconhecido", + "npi-isdn": "1 - Plano de numeração ISDN/telefônico (E163/E164)", + "npi-data-numbering-plan": "3 - Plano de numeração de dados (X.121)", + "npi-telex-numbering-plan": "4 - Plano de numeração de telex (F.69)", + "npi-land-mobile": "6 - Móvel terrestre (E.212)", + "npi-national-numbering-plan": "8 - Plano de numeração nacional", + "npi-private-numbering-plan": "9 - Plano de numeração privado", + "npi-ermes-numbering-plan": "10 - Plano de numeração ERMES (ETSI DE/PS 3 01-3)", + "npi-internet": "13 - Internet (IP)", + "npi-wap-client-id": "18 - WAP Client Id (a ser definido pelo WAP Forum)", + "scheme-smsc": "0 - Alfabeto padrão SMSC (ASCII para código curto e longo e GSM para tarifa gratuita)", + "scheme-ia5": "1 - IA5 (ASCII para código curto e longo, Latin 9 para tarifa gratuita (ISO-8859-9))", + "scheme-octet-unspecified-2": "2 - Octet não especificado (binário de 8 bits)", + "scheme-latin-1": "3 - Latin 1 (ISO-8859-1)", + "scheme-octet-unspecified-4": "4 - Octet não especificado (binário de 8 bits)", + "scheme-jis": "5 - JIS (X 0208-1990)", + "scheme-cyrillic": "6 - Cirílico (ISO-8859-5)", + "scheme-latin-hebrew": "7 - Latino/Hebraico (ISO-8859-8)", + "scheme-ucs-utf": "8 - UCS2/UTF-16 (ISO/IEC-10646)", + "scheme-pictogram-encoding": "9 - Codificação pictográfica", + "scheme-music-codes": "10 - Códigos musicais (ISO-2022-JP)", + "scheme-extended-kanji-jis": "13 - Kanji JIS estendido (X 0212-1990)", + "scheme-korean-graphic-character-set": "14 - Conjunto de caracteres gráficos coreanos (KS C 5601/KS X 1001)" + }, + "queue-select-name": "Selecionar nome da fila", + "queue-name": "Nome", + "queue-name-required": "Nome da fila é obrigatório!", + "queues": "Filas", + "queue-partitions": "Partições", + "queue-submit-strategy": "Estratégia de envio", + "queue-processing-strategy": "Estratégia de processamento", + "queue-configuration": "Configuração da fila", + "repository-settings": "Configurações do repositório", + "repository": "Repositório", + "repository-url": "URL do repositório", + "repository-url-required": "URL do repositório é obrigatória.", + "default-branch": "Nome do branch padrão", + "repository-read-only": "Somente leitura", + "show-merge-commits": "Mostrar commits de merge", + "authentication-settings": "Configurações de autenticação", + "auth-method": "Método de autenticação", + "auth-method-username-password": "Senha / token de acesso", + "auth-method-username-password-hint": "Usuários do GitHub devem usar tokens de acesso com permissões de gravação no repositório.", + "auth-method-private-key": "Chave privada", + "password-access-token": "Senha / token de acesso", + "change-password-access-token": "Alterar senha / token de acesso", + "private-key": "Chave privada", + "drop-private-key-file-or": "Arraste e solte um arquivo de chave privada ou", + "passphrase": "Frase secreta", + "enter-passphrase": "Inserir frase secreta", + "change-passphrase": "Alterar frase secreta", + "check-access": "Verificar acesso", + "check-repository-access-success": "Acesso ao repositório verificado com sucesso!", + "delete-repository-settings-title": "Tem certeza de que deseja excluir as configurações do repositório?", + "delete-repository-settings-text": "Atenção: após a confirmação, as configurações do repositório serão removidas e o recurso de controle de versão ficará indisponível.", + "auto-commit-settings": "Configurações de auto-commit", + "auto-commit": "Auto-commit", + "auto-commit-entities": "Entidades com auto-commit", + "no-auto-commit-entities-prompt": "Nenhuma entidade configurada para auto-commit", + "delete-auto-commit-settings-title": "Tem certeza de que deseja excluir as configurações de auto-commit?", + "delete-auto-commit-settings-text": "Atenção: após a confirmação, as configurações de auto-commit serão removidas e o auto-commit ficará desativado para todas as entidades.", + "mobile-app": { + "mobile-app": "Aplicativo móvel", + "mobile-app-qr-code-widget-settings": "Configurações do widget de QR code do aplicativo móvel", + "applications": "Aplicativos", + "default": "Padrão", + "custom": "Personalizado", + "android": "Android", + "ios": "iOS", + "appearance": "Aparência", + "appearance-on-home-page": "Aparência na página inicial", + "enabled": "Habilitado", + "disabled": "Desabilitado", + "badges": "Selos", + "label": "Rótulo", + "label-required": "Rótulo é obrigatório", + "label-max-length": "O rótulo deve ter no máximo 50 caracteres", + "right": "Direita", + "left": "Esquerda", + "set": "Definir", + "preview": "Pré-visualização", + "connect-mobile-app": "Conectar aplicativo móvel", + "use-system-settings": "Usar configurações do sistema" + }, + "2fa": { + "2fa": "Autenticação de dois fatores", + "available-providers": "Provedores disponíveis", + "issuer-name": "Nome do emissor", + "issuer-name-required": "Nome do emissor é obrigatório.", + "max-verification-failures-before-user-lockout": "Máximo de falhas de verificação antes do bloqueio do usuário", + "max-verification-failures-before-user-lockout-pattern": "O máximo de falhas de verificação deve ser um número inteiro positivo.", + "number-of-checking-attempts": "Número de tentativas de verificação", + "number-of-checking-attempts-pattern": "O número de tentativas de verificação deve ser um número inteiro positivo.", + "number-of-checking-attempts-required": "Número de tentativas de verificação é obrigatório.", + "number-of-codes": "Número de códigos", + "number-of-codes-pattern": "O número de códigos deve ser um número inteiro positivo.", + "number-of-codes-required": "Número de códigos é obrigatório.", + "provider": "Provedor", + "retry-verification-code-period": "Período de reenvio do código de verificação", + "retry-verification-code-period-pattern": "O período mínimo é de 5 seg", + "retry-verification-code-period-required": "Período de reenvio do código de verificação é obrigatório.", + "total-allowed-time-for-verification": "Tempo total permitido para verificação", + "total-allowed-time-for-verification-pattern": "O tempo total mínimo permitido é de 60 seg", + "total-allowed-time-for-verification-required": "Tempo total permitido é obrigatório.", + "use-system-two-factor-auth-settings": "Usar configurações de autenticação de dois fatores do sistema", + "verification-code-check-rate-limit": "Limite de taxa de verificação do código", + "verification-code-lifetime": "Tempo de vida do código de verificação", + "verification-code-lifetime-pattern": "O tempo de vida do código de verificação deve ser um número inteiro positivo.", + "verification-code-lifetime-required": "Tempo de vida do código de verificação é obrigatório.", + "verification-message-template": "Modelo de mensagem de verificação", + "verification-limitations": "Limitações de verificação", + "verification-message-template-pattern": "A mensagem de verificação precisa conter o padrão: ${code}", + "verification-message-template-required": "Modelo de mensagem de verificação é obrigatório.", + "within-time": "Dentro do tempo", + "within-time-pattern": "O tempo deve ser um número inteiro positivo.", + "within-time-required": "Tempo é obrigatório." + }, + "jwt": { + "security-settings": "Configurações de segurança JWT", + "issuer-name": "Nome do emissor", + "issuer-name-required": "Nome do emissor é obrigatório.", + "signings-key": "Chave de assinatura", + "signings-key-hint": "String codificada em Base64 representando pelo menos 512 bits de dados.", + "signings-key-required": "Chave de assinatura é obrigatória.", + "signings-key-min-length": "A chave de assinatura deve conter pelo menos 512 bits de dados.", + "signings-key-base64": "A chave de assinatura deve estar no formato base64.", + "expiration-time": "Tempo de expiração do token (seg)", + "expiration-time-required": "Tempo de expiração do token é obrigatório.", + "expiration-time-max": "O tempo máximo permitido é de 2147483647 segundos (68 anos).", + "expiration-time-min": "O tempo mínimo é de 60 segundos (1 minuto).", + "refresh-expiration-time": "Tempo de expiração do token de atualização (seg)", + "refresh-expiration-time-required": "Tempo de expiração do token de atualização é obrigatório.", + "refresh-expiration-time-max": "O tempo máximo permitido é de 2147483647 segundos (68 anos).", + "refresh-expiration-time-min": "O tempo mínimo é de 900 segundos (15 minutos).", + "refresh-expiration-time-less-token": "O tempo do token de atualização deve ser maior que o tempo do token.", + "generate-key": "Gerar chave", + "info-header": "Todos os usuários precisarão fazer login novamente", + "info-message": "A alteração da chave de assinatura JWT fará com que todos os tokens emitidos se tornem inválidos. Todos os usuários precisarão fazer login novamente. Isso também afetará scripts que utilizam a API REST/Websockets." + }, + "resources": "Recursos", + "notifications": "Notificações", + "notifications-settings": "Configurações de notificações", + "slack-api-token": "Token de API do Slack", + "slack": "Slack", + "slack-settings": "Configurações do Slack", + "mobile-settings": "Configurações móveis", + "firebase-service-account-file": "Arquivo JSON de credenciais da conta de serviço do Firebase", + "select-firebase-service-account-file": "Arraste e solte o arquivo de credenciais da conta de serviço do Firebase ou " }, "alarm": { "alarm": "Alarme", "alarms": "Alarmes", + "all-alarms": "Todos os alarmes", "select-alarm": "Selecionar alarme", - "no-alarms-matching": "Nenhum alarme encontrado que coincida com '{{entity}}'.", - "alarm-required": "O alarme é obrigatório", + "no-alarms-matching": "Nenhum alarme correspondente a '{{entity}}' foi encontrado.", + "alarm-required": "Alarme é obrigatório", + "alarm-filter": "Filtro de alarme", + "filter": "Filtro", "alarm-status": "Status do alarme", - "alarm-status-list": "Lista de status de alarmes", + "alarm-status-list": "Lista de status de alarme", "any-status": "Qualquer status", "search-status": { "ANY": "Qualquer", "ACTIVE": "Ativo", "CLEARED": "Limpo", - "ACK": "Confirmado", - "UNACK": "Não confirmado" + "ACK": "Reconhecido", + "UNACK": "Não reconhecido" }, "display-status": { - "ACTIVE_UNACK": "Não confirmado ativo", - "ACTIVE_ACK": "Confirmado ativo", - "CLEARED_UNACK": "Não confirmado limpo", - "CLEARED_ACK": "Confirmado limpo" + "ACTIVE_UNACK": "Ativo não reconhecido", + "ACTIVE_ACK": "Ativo reconhecido", + "CLEARED_UNACK": "Limpo não reconhecido", + "CLEARED_ACK": "Limpo reconhecido" }, "no-alarms-prompt": "Nenhum alarme encontrado", "created-time": "Hora de criação", @@ -151,46 +579,93 @@ "originator": "Originador", "originator-type": "Tipo de originador", "details": "Detalhes", + "originator-label": "Rótulo do originador", + "assign": "Atribuir", + "assignments": "Atribuições", + "assignee": "Responsável", + "assignee-id": "Id do responsável", + "assignee-first-name": "Nome do responsável", + "assignee-last-name": "Sobrenome do responsável", + "assignee-email": "Email do responsável", + "unassigned": "Não atribuído", + "user-deleted": "Usuário excluído", + "assignee-not-set": "Todos", "status": "Status", "alarm-details": "Detalhes do alarme", "start-time": "Hora de início", + "assign-time": "Hora de atribuição", "end-time": "Hora de término", - "ack-time": "Horário de confirmação", - "clear-time": "Horário de limpeza", - "alarm-severity-list": "Lista de severidade de alarmes", + "ack-time": "Hora de reconhecimento", + "clear-time": "Hora de limpeza", + "duration": "Duração", + "alarm-severity": "Severidade do alarme", + "alarm-severity-list": "Lista de severidades de alarme", "any-severity": "Qualquer severidade", - "severity-critical": "Crítica", - "severity-major": "Principal", + "severity-critical": "Crítico", + "severity-major": "Maior", "severity-minor": "Menor", "severity-warning": "Aviso", "severity-indeterminate": "Indeterminado", - "acknowledge": "Confirmar", + "acknowledge": "Reconhecer", "clear": "Limpar", + "delete": "Excluir", "search": "Pesquisar alarmes", - "selected-alarms": "{ count, plural, =1 {1 alarm} other {# alarms} } selecionado(s)", - "no-data": "Nenhum dado para exibição", - "polling-interval": "Intervalo seletivo de alarmes (s)", - "polling-interval-required": "O intervalo de chamada seletiva de alarmes é obrigatório.", - "min-polling-interval-message": "É permitido no mínimo 1 segundo de intervalo de chamada seletiva.", - "aknowledge-alarms-title": "Confirmar { count, plural, =1 {1 alarm} other {# alarms} }", - "aknowledge-alarms-text": "Tem certeza de que deseja confirmar { count, plural, =1 {1 alarm} other {# alarms} }?", - "aknowledge-alarm-title": "Confirmar alarme", - "aknowledge-alarm-text": "Tem certeza de que deseja confirmar o alarme?", - "clear-alarms-title": "Limpar { count, plural, =1 {1 alarm} other {# alarms} }", - "clear-alarms-text": "Tem certeza de que deseja limpar { count, plural, =1 {1 alarm} other {# alarms} }?", + "selected-alarms": "{ count, plural, =1 {1 alarme} other {# alarmes} } selecionado(s)", + "no-data": "Sem dados para exibir", + "polling-interval": "Intervalo de consulta de alarmes (seg)", + "polling-interval-required": "O intervalo de consulta de alarmes é obrigatório.", + "min-polling-interval-message": "É permitido no mínimo 1 seg de intervalo de consulta.", + "aknowledge-alarms-title": "Reconhecer { count, plural, =1 {1 alarme} other {# alarmes} }", + "aknowledge-alarms-text": "Tem certeza de que deseja reconhecer { count, plural, =1 {1 alarme} other {# alarmes} }?", + "aknowledge-alarm-title": "Reconhecer alarme", + "aknowledge-alarm-text": "Tem certeza de que deseja reconhecer o alarme?", + "selected-alarms-are-acknowledged": "Os alarmes selecionados já estão reconhecidos", + "clear-alarms-title": "Limpar { count, plural, =1 {1 alarme} other {# alarmes} }", + "clear-alarms-text": "Tem certeza de que deseja limpar { count, plural, =1 {1 alarme} other {# alarmes} }?", "clear-alarm-title": "Limpar alarme", - "clear-alarm-text": "Tem certeza de que deseja limpar alarme?", - "alarm-status-filter": "Filtro de status de alarmes", - "alarm-filter": "Filtro de alarmes", - "max-count-load": "Número máximo de alarmes a serem carregados (0 - ilimitado)", - "max-count-load-required": "O número máximo de alarmes é obrigatório.", + "clear-alarm-text": "Tem certeza de que deseja limpar o alarme?", + "delete-alarms-title": "Excluir { count, plural, =1 {1 alarme} other {# alarmes} }", + "delete-alarms-text": "Tem certeza de que deseja excluir { count, plural, =1 {1 alarme} other {# alarmes} }?", + "selected-alarms-are-cleared": "Os alarmes selecionados já estão limpos", + "alarm-status-filter": "Filtro de status de alarme", + "alarm-filter-title": "Filtro de alarme", + "assigned": "Atribuído", + "filter-title": "Filtro", + "max-count-load": "Número máximo de alarmes a carregar (0 - ilimitado)", + "max-count-load-required": "O número máximo de alarmes a carregar é obrigatório.", "max-count-load-error-min": "O valor mínimo é 0.", - "fetch-size": "Tamanho da busca", - "fetch-size-required": "O tamanho da busca é obrigatório.", + "fetch-size": "Tamanho de busca", + "fetch-size-required": "O tamanho de busca é obrigatório.", "fetch-size-error-min": "O valor mínimo é 10.", - "alarm-type-list": "Lista de tipos de alarmes", + "alarm-types": "Tipos de alarme", + "alarm-type-list": "Lista de tipos de alarme", "any-type": "Qualquer tipo", - "search-propagated-alarms": "Pesquisar alarmes propagados" + "assigned-to-current-user": "Atribuído ao usuário atual", + "assigned-to-me": "Atribuído a mim", + "search-propagated-alarms": "Pesquisar alarmes propagados", + "comments": "Comentários de alarme", + "show-more": "Mostrar mais", + "additional-info": "Informações adicionais", + "alarm-type": "Tipo de alarme", + "enter-alarm-type": "Inserir tipo de alarme", + "no-alarm-types-matching": "Nenhum tipo de alarme correspondente a '{{entitySubtype}}' foi encontrado.", + "alarm-type-list-empty": "Nenhum tipo de alarme selecionado." + }, + "alarm-activity": { + "add": "Adicionar um comentário...", + "alarm-comment": "Comentário de alarme", + "comments": "Comentários", + "delete-alarm-comment": "Deseja excluir este comentário?", + "refresh": "Atualizar", + "oldest-first": "Mais antigos primeiro", + "newest-first": "Mais recentes primeiro", + "activity": "Atividade", + "export": "Exportar para CSV", + "author": "Autor", + "created-date": "Data de criação", + "edited-date": "Data de edição", + "text": "Texto", + "system": "Sistema" }, "alias": { "add": "Adicionar alias", @@ -198,43 +673,52 @@ "name": "Nome do alias", "name-required": "O nome do alias é obrigatório", "duplicate-alias": "Já existe um alias com o mesmo nome.", - "filter-type-single-entity": "Entidade individual", + "filter-type-single-entity": "Entidade única", "filter-type-entity-list": "Lista de entidades", "filter-type-entity-name": "Nome da entidade", + "filter-type-entity-type": "Tipo de entidade", "filter-type-state-entity": "Entidade do estado do dashboard", "filter-type-state-entity-description": "Entidade obtida dos parâmetros de estado do dashboard", "filter-type-asset-type": "Tipo de ativo", "filter-type-asset-type-description": "Ativos do tipo '{{assetTypes}}'", - "filter-type-asset-type-and-name-description": "Ativos do tipo '{{assetTypes}}' cujo nome começa com '{{prefix}}'", + "filter-type-asset-type-and-name-description": "Ativos do tipo '{{assetTypes}}' e com nome começando com '{{prefix}}'", "filter-type-device-type": "Tipo de dispositivo", "filter-type-device-type-description": "Dispositivos do tipo '{{deviceTypes}}'", - "filter-type-device-type-and-name-description": "Dispositivos do tipo '{{deviceTypes}}' cujo nome começa com '{{prefix}}'", - "filter-type-entity-view-type": "Tipo de exibições de entidades", - "filter-type-entity-view-type-description": "Exibições de entidades do tipo '{{entityViewTypes}}'", - "filter-type-entity-view-type-and-name-description": "Exibições de entidades do tipo '{{entityViewTypes}}' cujo nome começa com '{{prefix}}'", + "filter-type-device-type-and-name-description": "Dispositivos do tipo '{{deviceTypes}}' e com nome começando com '{{prefix}}'", + "filter-type-entity-view-type": "Tipo de visualização de entidade", + "filter-type-entity-view-type-description": "Visualizações de entidade do tipo '{{entityViewTypes}}'", + "filter-type-entity-view-type-and-name-description": "Visualizações de entidade do tipo '{{entityViewTypes}}' e com nome começando com '{{prefix}}'", + "filter-type-edge-type": "Tipo de edge", + "filter-type-edge-type-description": "Edges do tipo '{{edgeTypes}}'", + "filter-type-edge-type-and-name-description": "Edges do tipo '{{edgeTypes}}' e com nome começando com '{{prefix}}'", "filter-type-relations-query": "Consulta de relações", - "filter-type-relations-query-description": "{{entities}} que tem relação de {{relationType}} {{direction}} {{rootEntity}}", + "filter-type-relations-query-description": "{{entities}} que têm relação {{relationType}} {{direction}} {{rootEntity}}", + "filter-type-edge-search-query": "Consulta de pesquisa de edge", + "filter-type-edge-search-query-description": "Edges com tipos {{edgeTypes}} que têm relação {{relationType}} {{direction}} {{rootEntity}}", "filter-type-asset-search-query": "Consulta de pesquisa de ativo", - "filter-type-asset-search-query-description": "Ativos dos tipos {{assetTypes}} que têm relação de {{relationType}} {{direction}} {{rootEntity}}", + "filter-type-asset-search-query-description": "Ativos com tipos {{assetTypes}} que têm relação {{relationType}} {{direction}} {{rootEntity}}", "filter-type-device-search-query": "Consulta de pesquisa de dispositivo", - "filter-type-device-search-query-description": "Dispositivos dos tipos {{deviceTypes}} que têm relação de {{relationType}} {{direction}} {{rootEntity}}", - "filter-type-entity-view-search-query": "Consulta de pesquisa de exibição de entidade", - "filter-type-entity-view-search-query-description": "Exibições de entidades dos tipos {{entityViewTypes}} que têm relação de {{relationType}} {{direction}} {{rootEntity}}", - "entity-filter": "Filtro de entidades", - "resolve-multiple": "Resolver como entidades múltiplas", + "filter-type-device-search-query-description": "Dispositivos com tipos {{deviceTypes}} que têm relação {{relationType}} {{direction}} {{rootEntity}}", + "filter-type-entity-view-search-query": "Consulta de pesquisa de visualização de entidade", + "filter-type-entity-view-search-query-description": "Visualizações de entidade com tipos {{entityViewTypes}} que têm relação {{relationType}} {{direction}} {{rootEntity}}", + "filter-type-apiUsageState": "Estado de uso de API", + "entity-filter": "Filtro de entidade", + "resolve-multiple": "Resolver como múltiplas entidades", + "resolve-multiple-hint": "Ativar para renderizar dados de todas as entidades filtradas simultaneamente. \nSe desativado, o widget exibe dados somente da entidade selecionada.", "filter-type": "Tipo de filtro", "filter-type-required": "O tipo de filtro é obrigatório.", - "entity-filter-no-entity-matched": "Nenhuma entidade encontrada que coincida com o filtro especificado.", + "entity-filter-no-entity-matched": "Nenhuma entidade correspondente ao filtro especificado foi encontrada.", "no-entity-filter-specified": "Nenhum filtro de entidade especificado", - "root-state-entity": "Usar entidade de estado do dashboard como raiz", - "last-level-relation": "Procurar apenas último nível de relação", + "root-state-entity": "Usar entidade do estado do dashboard como raiz", + "last-level-relation": "Buscar somente relação do último nível", "root-entity": "Entidade raiz", - "state-entity-parameter-name": "Nome do parâmetro de entidade de estado", + "state-entity-parameter-name": "Nome do parâmetro da entidade de estado", "default-state-entity": "Entidade de estado padrão", - "default-entity-parameter-name": "Predefinido", - "max-relation-level": "Nível máx. de relação", + "default-entity-parameter-name": "Por padrão", + "query-options": "Opções de consulta", + "max-relation-level": "Nível máximo de relação", "unlimited-level": "Nível ilimitado", - "state-entity": "Entidade de estado do dashboard", + "state-entity": "Entidade do estado do dashboard", "all-entities": "Todas as entidades", "any-relation": "qualquer" }, @@ -244,28 +728,31 @@ "management": "Gerenciamento de ativos", "view-assets": "Visualizar ativos", "add": "Adicionar ativo", - "assign-to-customer": "Atribuir a cliente", - "assign-asset-to-customer": "Atribuir ativo(s) a cliente", + "asset-type-max-length": "O tipo de ativo deve ter menos de 256 caracteres", + "assign-to-customer": "Atribuir ao cliente", + "assign-asset-to-customer": "Atribuir ativo(s) ao cliente", "assign-asset-to-customer-text": "Selecione os ativos a serem atribuídos ao cliente", "no-assets-text": "Nenhum ativo encontrado", - "assign-to-customer-text": "Selecione o cliente para atribuir o(s) ativo(s)", + "assign-to-customer-text": "Selecione o cliente ao qual atribuir o(s) ativo(s)", "public": "Público", "assignedToCustomer": "Atribuído ao cliente", "make-public": "Tornar ativo público", "make-private": "Tornar ativo privado", - "unassign-from-customer": "Remover atribuição a cliente", + "unassign-from-customer": "Desatribuir do cliente", "delete": "Excluir ativo", "asset-public": "Ativo é público", "asset-type": "Tipo de ativo", "asset-type-required": "O tipo de ativo é obrigatório.", "select-asset-type": "Selecionar tipo de ativo", - "enter-asset-type": "Inserir tipo de ativo", + "enter-asset-type": "Inserir perfil do ativo", "any-asset": "Qualquer ativo", - "no-asset-types-matching": "Nenhum tipo de ativo encontrado que coincida com '{{entitySubtype}}'.", + "no-asset-types-matching": "Nenhum tipo de ativo correspondente a '{{entitySubtype}}' foi encontrado.", "asset-type-list-empty": "Nenhum tipo de ativo selecionado.", - "asset-types": "Tipos de ativos", + "asset-types": "Tipos de ativo", "name": "Nome", "name-required": "O nome é obrigatório.", + "name-max-length": "O nome deve ter menos de 256 caracteres", + "label-max-length": "O rótulo deve ter menos de 256 caracteres", "description": "Descrição", "type": "Tipo", "type-required": "O tipo é obrigatório.", @@ -274,54 +761,72 @@ "add-asset-text": "Adicionar novo ativo", "asset-details": "Detalhes do ativo", "assign-assets": "Atribuir ativos", - "assign-assets-text": "Atribuir { count, plural, =1 {1 asset} other {# assets} } a cliente", + "assign-assets-text": "Atribuir { count, plural, =1 {1 ativo} other {# ativos} } ao cliente", + "assign-asset-to-edge-title": "Atribuir ativo(s) ao Edge", + "assign-asset-to-edge-text": "Selecione os ativos a serem atribuídos ao Edge", "delete-assets": "Excluir ativos", - "unassign-assets": "Remover atribuição de ativos", - "unassign-assets-action-title": "Remover atribuição de { count, plural, =1 {1 asset} other {# assets} } a cliente", + "unassign-assets": "Desatribuir ativos", + "unassign-assets-action-title": "Desatribuir { count, plural, =1 {1 ativo} other {# ativos} } do cliente", "assign-new-asset": "Atribuir novo ativo", "delete-asset-title": "Tem certeza de que deseja excluir o ativo '{{assetName}}'?", - "delete-asset-text": "Cuidado, após confirmar, não será possível recuperar o ativo e nenhum dado associado.", - "delete-assets-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 asset} other {# assets} }?", - "delete-assets-action-title": "Excluir { count, plural, =1 {1 asset} other {# assets} }", - "delete-assets-text": "Cuidado, após confirmar, todos os ativos selecionados serão removidos e não será possível recuperar nenhum dado associado.", + "delete-asset-text": "Atenção: após a confirmação, o ativo e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-assets-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 ativo} other {# ativos} }?", + "delete-assets-action-title": "Excluir { count, plural, =1 {1 ativo} other {# ativos} }", + "delete-assets-text": "Atenção: após a confirmação, todos os ativos selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", "make-public-asset-title": "Tem certeza de que deseja tornar o ativo '{{assetName}}' público?", - "make-public-asset-text": "Após confirmar, o ativo e todos os dados associados a ele se tornarão públicos e poderão ser acessados por outros.", + "make-public-asset-text": "Após a confirmação, o ativo e todos os seus dados serão tornados públicos e acessíveis por outros.", "make-private-asset-title": "Tem certeza de que deseja tornar o ativo '{{assetName}}' privado?", - "make-private-asset-text": "Após confirmar, o ativo e todos os dados associados a ele se tornarão privados e não poderão ser acessados por outros.", - "unassign-asset-title": "Tem certeza de que deseja remover a atribuição do ativo '{{assetName}}'?", - "unassign-asset-text": "Após confirmar, a atribuição do ativo será removida e ele não poderá ser acessado pelo cliente.", - "unassign-asset": "Remover atribuição de ativo", - "unassign-assets-title": "Tem certeza de que deseja remover a atribuição de { count, plural, =1 {1 asset} other {# assets} }?", - "unassign-assets-text": "Após confirmar, a atribuição de todos os ativos selecionados será removida e eles não poderão ser acessados pelo cliente.", + "make-private-asset-text": "Após a confirmação, o ativo e todos os seus dados serão tornados privados e não estarão acessíveis por outros.", + "unassign-asset-title": "Tem certeza de que deseja desatribuir o ativo '{{assetName}}'?", + "unassign-asset-text": "Após a confirmação, o ativo será desatribuído e não estará acessível pelo cliente.", + "unassign-asset": "Desatribuir ativo", + "unassign-assets-title": "Tem certeza de que deseja desatribuir { count, plural, =1 {1 ativo} other {# ativos} }?", + "unassign-assets-text": "Após a confirmação, todos os ativos selecionados serão desatribuídos e não estarão acessíveis pelo cliente.", "copyId": "Copiar ID do ativo", "idCopiedMessage": "O ID do ativo foi copiado para a área de transferência", "select-asset": "Selecionar ativo", - "no-assets-matching": "Nenhum ativo encontrado que coincida com '{{entity}}'.", - "asset-required": "O ativo é obrigatório", - "name-starts-with": "O nome do ativo começa com", + "no-assets-matching": "Nenhum ativo correspondente a '{{entity}}' foi encontrado.", + "asset-required": "O ativo é obrigatório.", + "name-starts-with": "Expressão do nome do ativo", + "help-text": "Use '%' conforme necessário: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", + "search": "Pesquisar ativos", "import": "Importar ativos", - "asset-file": "Arquivo de ativos", - "search": "Pesquisar ativo", - "selected-assets": "{ count, plural, =1 {1 asset} other {# assets} } selecionado(s)", - "label": "Etiqueta" + "asset-file": "Arquivo de ativo", + "label": "Rótulo", + "assign-asset-to-edge": "Atribuir ativo(s) ao edge", + "unassign-asset-from-edge": "Desatribuir ativo", + "unassign-asset-from-edge-title": "Tem certeza de que deseja desatribuir o ativo '{{assetName}}'?", + "unassign-asset-from-edge-text": "Após a confirmação, o ativo será desatribuído e não estará acessível pelo edge.", + "unassign-assets-from-edge-title": "Tem certeza de que deseja desatribuir { count, plural, =1 {1 ativo} other {# ativos} }?", + "unassign-assets-from-edge-text": "Após a confirmação, todos os ativos selecionados serão desatribuídos e não estarão acessíveis pelo edge.", + "selected-assets": "{ count, plural, =1 {1 ativo} other {# ativos} } selecionado(s)" }, "attribute": { "attributes": "Atributos", - "latest-telemetry": "Última telemetria", - "attributes-scope": "Escopo de atributos de entidade", + "latest-telemetry": "Telemetria mais recente", + "no-latest-telemetry": "Sem telemetria mais recente", + "attributes-scope": "Escopo de atributos da entidade", "scope-telemetry": "Telemetria", - "scope-latest-telemetry": "Última telemetria", + "scope-latest-telemetry": "Telemetria mais recente", "scope-client": "Atributos do cliente", "scope-server": "Atributos do servidor", "scope-shared": "Atributos compartilhados", + "scope-client-short": "Cliente", + "scope-server-short": "Servidor", + "scope-shared-short": "Compartilhado", + "scope-latest-short": "Mais recente", + "scope-any": "Qualquer", "add": "Adicionar atributo", "key": "Chave", - "last-update-time": "Horário da última atualização", - "key-required": "A chave de atributo é obrigatória.", + "key-max-length": "A chave deve ter menos de 256 caracteres", + "last-update-time": "Hora da última atualização", + "key-required": "A chave do atributo é obrigatória.", "value": "Valor", "value-required": "O valor do atributo é obrigatório.", - "delete-attributes-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 attribute} other {# attributes} }?", - "delete-attributes-text": "Cuidado, após confirmar, todos os atributos selecionados serão removidos.", + "telemetry-key-required": "A chave de telemetria é obrigatória", + "telemetry-value-required": "O valor de telemetria é obrigatório", + "delete-attributes-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 atributo} other {# atributos} }?", + "delete-attributes-text": "Atenção: após a confirmação, todos os atributos selecionados serão removidos.", "delete-attributes": "Excluir atributos", "enter-attribute-value": "Inserir valor do atributo", "show-on-widget": "Mostrar no widget", @@ -330,15 +835,113 @@ "prev-widget": "Widget anterior", "add-to-dashboard": "Adicionar ao dashboard", "add-widget-to-dashboard": "Adicionar widget ao dashboard", - "selected-attributes": "{ count, plural, =1 {1 attribute} other {# attributes} } selecionado(s)", - "selected-telemetry": "{ count, plural, =1 {1 telemetry unit} other {# telemetry units} } selecionado(s)", + "selected-attributes": "{ count, plural, =1 {1 atributo} other {# atributos} } selecionado(s)", + "selected-telemetry": "{ count, plural, =1 {1 unidade de telemetria} other {# unidades de telemetria} } selecionada(s)", "no-attributes-text": "Nenhum atributo encontrado", - "no-telemetry-text": "Nenhuma telemetria encontrada" + "no-telemetry-text": "Nenhuma telemetria encontrada", + "copy-key": "Copiar chave", + "add-telemetry": "Adicionar telemetria", + "copy-value": "Copiar valor", + "delete-timeseries": { + "start-time": "Hora de início", + "ends-on": "Termina em", + "strategy": "Estratégia", + "delete-strategy": "Estratégia de exclusão", + "all-data": "Excluir todos os dados", + "all-data-except-latest-value": "Excluir todos os dados exceto o valor mais recente", + "latest-value": "Excluir o valor mais recente", + "all-data-for-time-period": "Excluir todos os dados do período", + "rewrite-latest-value": "Reescrever o valor mais recente" + } + }, + "api-usage": { + "api-features": "Funcionalidades de API", + "api-usage": "Uso de API", + "alarm": "Alarme", + "alarms-created": "Alarmes criados", + "queue-stats": "Estatísticas de fila", + "processing-failures-and-timeouts": "Falhas de processamento e tempos limite", + "exceptions": "Exceções", + "alarms-created-daily-activity": "Atividade diária de alarmes criados", + "alarms-created-hourly-activity": "Atividade horária de alarmes criados", + "alarms-created-monthly-activity": "Atividade mensal de alarmes criados", + "data-points": "Pontos de dados", + "data-points-storage-days": "Dias de armazenamento de pontos de dados", + "device-api": "API do dispositivo", + "email": "Email", + "email-messages": "Mensagens de email", + "email-messages-daily-activity": "Atividade diária de mensagens de email", + "email-messages-monthly-activity": "Atividade mensal de mensagens de email", + "executions": "Execuções", + "scripts": "Scripts", + "scripts-hourly-activity": "Atividade horária de scripts", + "scripts-daily-activity": "Atividade diária de scripts", + "scripts-monthly-activity": "Atividade mensal de scripts", + "javascript": "JavaScript", + "javascript-executions": "Execuções de JavaScript", + "tbel": "TBEL", + "tbel-executions": "Execuções de TBEL", + "latest-error": "Último erro", + "messages": "Mensagens", + "notifications": "Notificações", + "notifications-email-sms": "Notificações (Email/SMS)", + "notifications-hourly-activity": "Atividade horária de notificações", + "permanent-failures": "${entityName} Falhas permanentes", + "permanent-timeouts": "${entityName} Tempos Limite permanentes", + "processing-failures": "${entityName} Falhas de processamento", + "processing-timeouts": "${entityName} Tempos Limite de processamento", + "rule-chain": "Cadeia de regras", + "rule-engine": "Motor de regras", + "rule-engine-executions": "Execuções do motor de regras", + "rule-engine-hourly-activity": "Atividade horária do motor de regras", + "rule-engine-daily-activity": "Atividade diária do motor de regras", + "rule-engine-monthly-activity": "Atividade mensal do motor de regras", + "rule-engine-statistics": "Estatísticas do motor de regras", + "rule-node": "Nó de regra", + "sms": "SMS", + "sms-messages": "Mensagens SMS", + "sms-messages-daily-activity": "Atividade diária de mensagens SMS", + "sms-messages-monthly-activity": "Atividade mensal de mensagens SMS", + "successful": "${entityName} Bem-sucedido", + "telemetry": "Telemetria", + "telemetry-persistence": "Persistência de telemetria", + "telemetry-persistence-daily-activity": "Atividade diária de persistência de telemetria", + "telemetry-persistence-hourly-activity": "Atividade horária de persistência de telemetria", + "telemetry-persistence-monthly-activity": "Atividade mensal de persistência de telemetria", + "transport": "Transporte", + "transport-daily-activity": "Atividade diária de transporte", + "transport-data-points": "Pontos de dados de transporte", + "view-details": "Visualizar detalhes", + "view-statistics": "Visualizar estatísticas", + "transport-messages": "Mensagens de transporte" + }, + "api-limit": { + "cassandra-write-queries-core": "Consultas de escrita Cassandra da API Rest", + "cassandra-read-queries-core": "Consultas de leitura Cassandra da API REST e telemetria WS", + "cassandra-write-queries-rule-engine": "Consultas de escrita Cassandra de telemetria do motor de regras", + "cassandra-read-queries-rule-engine": "Consultas de leitura Cassandra de telemetria do motor de regras", + "cassandra-write-queries-monolith": "Consultas de escrita Cassandra de telemetria monolítica", + "cassandra-read-queries-monolith": "Consultas de leitura Cassandra de telemetria monolítica", + "entity-version-creation": "Criação de versão de entidade", + "entity-version-load": "Carregamento de versão de entidade", + "notification-requests": "Requisições de notificação", + "notification-requests-per-rule": "Requisições de notificação por regra", + "rest-api-requests": "Requisições de API REST", + "rest-api-requests-per-customer": "Requisições de API REST por cliente", + "transport-messages": "Mensagens de transporte", + "transport-messages-per-device": "Mensagens de transporte por dispositivo", + "transport-messages-per-gateway": "Mensagens de transporte por gateway", + "transport-messages-per-gateway-device": "Mensagens de transporte por dispositivo de gateway", + "ws-updates-per-session": "Atualizações WS por sessão", + "edge-events": "Eventos de edge", + "edge-events-per-edge": "Eventos de edge por edge", + "edge-uplink-messages": "Mensagens uplink de edge", + "edge-uplink-messages-per-edge": "Mensagens uplink de edge por edge" }, "audit-log": { "audit": "Auditoria", "audit-logs": "Logs de auditoria", - "timestamp": "Carimbo de data/hora", + "timestamp": "Timestamp", "entity-type": "Tipo de entidade", "entity-name": "Nome da entidade", "user": "Usuário", @@ -352,8 +955,10 @@ "type-attributes-deleted": "Atributos excluídos", "type-rpc-call": "Chamada RPC", "type-credentials-updated": "Credenciais atualizadas", - "type-assigned-to-customer": "Atribuído ao cliente", - "type-unassigned-from-customer": "Atribuição a cliente removida", + "type-assigned-to-customer": "Atribuído ao Cliente", + "type-unassigned-from-customer": "Desatribuído do Cliente", + "type-assigned-to-edge": "Atribuído ao Edge", + "type-unassigned-from-edge": "Desatribuído do Edge", "type-activated": "Ativado", "type-suspended": "Suspenso", "type-credentials-read": "Credenciais lidas", @@ -361,66 +966,299 @@ "type-relation-add-or-update": "Relação atualizada", "type-relation-delete": "Relação excluída", "type-relations-delete": "Todas as relações excluídas", - "type-alarm-ack": "Confirmado", - "type-alarm-clear": "Limpo", + "type-alarm-ack": "Alarme reconhecido", + "type-alarm-clear": "Alarme limpo", + "type-alarm-delete": "Alarme excluído", + "type-alarm-assign": "Alarme atribuído", + "type-alarm-unassign": "Alarme desatribuído", + "type-added-comment": "Comentário adicionado", + "type-updated-comment": "Comentário atualizado", + "type-deleted-comment": "Comentário excluído", "type-login": "Login", "type-logout": "Logout", "type-lockout": "Bloqueio", - "status-success": "Êxito", + "status-success": "Sucesso", "status-failure": "Falha", - "audit-log-details": "Detalhes da trilha de auditoria", + "audit-log-details": "Detalhes do log de auditoria", "no-audit-logs-prompt": "Nenhum log encontrado", "action-data": "Dados da ação", "failure-details": "Detalhes da falha", "search": "Pesquisar logs de auditoria", "clear-search": "Limpar pesquisa", - "type-assigned-from-tenant": "Atribuído do locatário", - "type-assigned-to-tenant": "Atribuído a locatário" + "type-assigned-from-tenant": "Atribuído do Tenant", + "type-assigned-to-tenant": "Atribuído ao Tenant", + "type-provision-success": "Dispositivo provisionado", + "type-provision-failure": "Falha no provisionamento do dispositivo", + "type-timeseries-updated": "Telemetria atualizada", + "type-timeseries-deleted": "Telemetria excluída", + "type-sms-sent": "SMS enviado" + }, + "debug-settings": { + "label": "Configuração de depuração", + "on-failure": "Somente falhas (24/7)", + "all-messages": "Todas as mensagens ({{time}})", + "failures": "Falhas", + "entity": "entidade", + "hint": { + "main-limited": "Não serão registradas mais de {{msg}} mensagens de depuração de {{entity}} a cada {{time}}.", + "on-failure": "Registrar apenas mensagens de erro.", + "all-messages": "Registrar todas as mensagens de depuração." + } + }, + "calculated-fields": { + "expression": "Expressão", + "no-found": "Nenhum campo calculado encontrado", + "list": "{ count, plural, =1 {Um campo calculado} other {Lista de # campos calculados} }", + "selected-fields": "{ count, plural, =1 {1 campo calculado} other {# campos calculados} } selecionado(s)", + "type": { + "simple": "Simples", + "script": "Script" + }, + "arguments": "Argumentos", + "decimals-by-default": "Casas decimais padrão", + "debugging": "Depuração de campo calculado", + "argument-name": "Nome do argumento", + "datasource": "Fonte de dados", + "add-argument": "Adicionar argumento", + "test-script-function": "Testar função do script", + "no-arguments": "É necessário pelo menos um argumento.", + "argument-settings": "Configurações do argumento", + "argument-current": "Entidade atual", + "argument-current-tenant": "Tenant atual", + "argument-device": "Dispositivo", + "argument-asset": "Ativo", + "argument-customer": "Cliente", + "argument-tenant": "Tenant atual", + "argument-type": "Tipo de argumento", + "attribute": "Atributo", + "copy-argument-name": "Copiar nome do argumento", + "timeseries-key": "Chave de série temporal", + "device-name": "Nome do dispositivo", + "latest-telemetry": "Telemetria mais recente", + "rolling": "Série temporal deslizante", + "attribute-scope": "Escopo do atributo", + "server-attributes": "Atributos do servidor", + "client-attributes": "Atributos do cliente", + "shared-attributes": "Atributos compartilhados", + "attribute-key": "Chave do atributo", + "default-value": "Valor padrão", + "limit": "Máximo de valores", + "time-window": "Janela de tempo", + "customer-name": "Nome do cliente", + "asset-name": "Nome do ativo", + "timeseries": "Série temporal", + "output": "Saída", + "create": "Criar novo campo calculado", + "file": "Arquivo de campo calculado", + "invalid-file-error": "Formato de arquivo inválido. Certifique-se de que o arquivo é um arquivo JSON válido.", + "import": "Importar campo calculado", + "export": "Exportar campo calculado", + "export-failed-error": "Não foi possível exportar o campo calculado: {{error}}", + "output-type": "Tipo de saída", + "delete-title": "Tem certeza de que deseja excluir o campo calculado '{{title}}'?", + "delete-text": "Atenção: após a confirmação, o campo calculado e todos os dados relacionados serão irrecuperáveis.", + "delete-multiple-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 campo calculado} other {# campos calculados} }?", + "delete-multiple-text": "Atenção: após a confirmação, todos os campos calculados selecionados serão removidos e todos os dados relacionados serão irrecuperáveis.", + "test-with-this-message": "Testar com esta mensagem", + "use-latest-timestamp": "Usar timestamp mais recente", + "hint": { + "arguments-simple-with-rolling": "O campo calculado do tipo simples não deve conter chaves com tipo de série temporal deslizante.", + "arguments-empty": "Pelo menos um argumento deve ser especificado.", + "expression-required": "A expressão é obrigatória.", + "expression-invalid": "A expressão é inválida", + "expression-max-length": "O comprimento da expressão deve ter menos de 255 caracteres.", + "argument-name-required": "O nome do argumento é obrigatório.", + "argument-name-pattern": "O nome do argumento é inválido.", + "argument-name-duplicate": "Já existe um argumento com esse nome.", + "argument-name-max-length": "O nome do argumento deve ter menos de 256 caracteres.", + "argument-name-forbidden": "O nome do argumento é reservado e não pode ser usado.", + "argument-type-required": "O tipo de argumento é obrigatório.", + "max-args": "Número máximo de argumentos atingido.", + "decimals-range": "As casas decimais padrão devem ser um número entre 0 e 15.", + "expression": "A expressão padrão demonstra como transformar uma temperatura de Fahrenheit para Celsius.", + "arguments-entity-not-found": "Entidade alvo do argumento não encontrada.", + "use-latest-timestamp": "Se habilitado, o valor calculado será persistido usando o timestamp mais recente da telemetria dos argumentos, em vez do horário do servidor." + } + }, + "ai-models": { + "ai-models": "Modelos de IA", + "ai-model": "Modelo de IA", + "model": "Modelo", + "name": "Nome", + "ai-provider": "Provedor de IA", + "no-found": "Nenhum modelo de IA encontrado", + "list": "{ count, plural, =1 {Um modelo} other {Lista de # modelos} }", + "selected-fields": "{ count, plural, =1 {1 modelo} other {# modelos} } selecionado(s)", + "add": "Adicionar modelo", + "delete-model-title": "Tem certeza de que deseja excluir o modelo '{{modelName}}'?", + "delete-model-text": "Atenção: após a confirmação, o modelo e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-models-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 modelo} other {# modelos} }?", + "delete-models-text": "Atenção: após a confirmação, todos os modelos selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", + "ai-providers": { + "openai": "OpenAI", + "azure-openai": "Azure OpenAI", + "google-ai-gemini": "Google AI Gemini", + "google-vertex-ai-gemini": "Google Vertex AI Gemini", + "mistral-ai": "Mistral AI", + "anthropic": "Anthropic", + "amazon-bedrock": "Amazon Bedrock", + "github-models": "GitHub Models", + "ollama": "Ollama" + }, + "name-required": "O nome é obrigatório.", + "name-max-length": "O nome deve ter 255 caracteres ou menos.", + "provider": "Provedor", + "api-key": "Chave de API", + "api-key-required": "A chave de API é obrigatória.", + "api-key-open-ai-required": "A chave de API é obrigatória ao usar a API oficial do OpenAI.", + "project-id": "ID do projeto", + "project-id-required": "O ID do projeto é obrigatório", + "location": "Localização", + "location-required": "A localização é obrigatória.", + "service-account-key-file": "Arquivo de chave da conta de serviço", + "service-account-key-file-required": "O arquivo de chave da conta de serviço é obrigatório.", + "no-file": "Nenhum arquivo selecionado.", + "drop-file": "Solte um arquivo ou clique para selecionar um arquivo para upload.", + "personal-access-token": "Token de acesso pessoal", + "personal-access-token-required": "O token de acesso pessoal é obrigatório.", + "configuration": "Configuração", + "model-id": "ID do modelo", + "model-id-required": "O ID do modelo é obrigatório.", + "deployment-name": "Nome do deployment", + "deployment-name-required": "O nome do deployment é obrigatório", + "set": "Definir", + "region": "Região", + "region-required": "A região é obrigatória.", + "access-key-id": "ID da chave de acesso", + "access-key-id-required": "O ID da chave de acesso é obrigatório.", + "secret-access-key": "Chave de acesso secreta", + "secret-access-key-required": "A chave de acesso secreta é obrigatória.", + "temperature": "Temperatura", + "temperature-hint": "Ajusta o nível de aleatoriedade na saída do modelo. Valores mais altos aumentam a aleatoriedade, enquanto valores mais baixos a diminuem.", + "temperature-min": "Deve ser 0 ou maior.", + "top-p": "Top P", + "top-p-hint": "Cria um conjunto dos tokens mais prováveis para o modelo escolher. Valores mais altos criam um conjunto maior e mais diversificado, enquanto valores mais baixos criam um conjunto menor.", + "top-p-min-max": "Deve ser maior que 0 e até 1.", + "top-k": "Top K", + "top-k-hint": "Restringe as escolhas do modelo a um conjunto fixo dos \"K\" tokens mais prováveis.", + "top-k-min": "Deve ser 0 ou maior.", + "presence-penalty": "Penalidade de presença", + "presence-penalty-hint": "Aplica uma penalidade fixa à probabilidade de um token se ele já apareceu no texto.", + "frequency-penalty": "Penalidade de frequência", + "frequency-penalty-hint": "Aplica uma penalidade à probabilidade de um token que aumenta com base na sua frequência no texto.", + "max-output-tokens": "Máximo de tokens de saída", + "max-output-tokens-hint": "Define o número máximo de tokens que o \nmodelo pode gerar em uma única resposta.", + "context-length": "Comprimento do contexto", + "context-length-hint": "Define o tamanho da janela de contexto em tokens. Este valor define o limite total de memória para o modelo, incluindo tanto a entrada do usuário quanto a resposta gerada.", + "endpoint": "Endpoint", + "endpoint-required": "O Endpoint é obrigatório.", + "baseurl": "URL base", + "baseurl-required": "A URL base é obrigatória.", + "service-version": "Versão do serviço", + "check-connectivity": "Verificar conectividade", + "check-connectivity-success": "A solicitação de teste foi bem-sucedida", + "check-connectivity-failed": "A solicitação de teste falhou", + "no-model-matching": "Nenhum modelo correspondente a '{{entity}}' foi encontrado.", + "model-required": "O modelo é obrigatório.", + "no-model-text": "Nenhum modelo encontrado.", + "authentication": "Autenticação", + "authentication-basic-hint": "Usa autenticação HTTP Basic padrão. O nome de usuário e a senha serão combinados, codificados em Base64 e enviados em um cabeçalho \"Authorization\" a cada solicitação ao servidor Ollama.", + "authentication-token-hint": "Usa autenticação por token Bearer. O token fornecido será enviado diretamente em um cabeçalho \"Authorization\" a cada solicitação ao servidor Ollama.", + "authentication-type": { + "none": "Nenhuma", + "basic": "Basic", + "token": "Token" + }, + "username": "Nome de usuário", + "username-required": "O nome de usuário é obrigatório.", + "password": "Senha", + "password-required": "A senha é obrigatória.", + "token": "Token", + "token-required": "O token é obrigatório." }, "confirm-on-exit": { - "message": "Existem alterações sem salvar. Tem certeza de que deseja sair desta página?", - "html-message": "Existem alterações sem salvar.
Tem certeza de que deseja sair desta página?", - "title": "Alterações sem salvar" + "message": "Há alterações não salvas. Tem certeza de que deseja sair desta página?", + "html-message": "Há alterações não salvas.
Tem certeza de que deseja sair desta página?", + "title": "Alterações não salvas" }, "contact": { "country": "País", + "country-required": "O país é obrigatório.", + "country-object-required": "Selecione um país válido da lista.", "city": "Cidade", - "state": "Estado", + "state": "Estado / Província", "postal-code": "CEP / Código postal", - "postal-code-invalid": "Formato de código postal / CEP inválido.", + "postal-code-invalid": "Formato de CEP / Código postal inválido.", "address": "Endereço", "address2": "Endereço 2", "phone": "Telefone", - "email": "E-mail", - "no-address": "Em endereço" + "email": "Email", + "no-address": "Sem endereço", + "no-country-found": "Nenhum país encontrado.", + "no-country-matching": "Nenhum país correspondente a '{{country}}' foi encontrado.", + "state-max-length": "O comprimento do estado deve ser menor que 256", + "phone-max-length": "O número de telefone deve ter menos de 256 caracteres", + "city-max-length": "A cidade especificada deve ter menos de 256 caracteres" }, "common": { + "name": "Nome", + "type": "Tipo", + "general": "Geral", "username": "Nome de usuário", "password": "Senha", + "data": "Dados", + "timestamp": "Timestamp", "enter-username": "Inserir nome de usuário", "enter-password": "Inserir senha", "enter-search": "Inserir pesquisa", "created-time": "Hora de criação", - "loading": "Carregando..." + "disabled": "Desativado", + "loading": "Carregando...", + "proceed": "Prosseguir", + "open-details-page": "Abrir página de detalhes", + "not-found": "Não encontrado", + "value": "Valor", + "documentation": "Documentação", + "time-left": "{{time}} restante", + "output": "Saída", + "suffix": { + "s": "s", + "ms": "ms" + }, + "hint": { + "name-required": "O nome é obrigatório.", + "name-pattern": "O nome é inválido.", + "name-max-length": "O nome deve ter menos de 256 caracteres.", + "title-required": "O título é obrigatório.", + "title-pattern": "O título é inválido.", + "title-max-length": "O título deve ter menos de 256 caracteres.", + "key-required": "A chave é obrigatória.", + "key-pattern": "A chave é inválida.", + "key-max-length": "A chave deve ter menos de 256 caracteres." + }, + "required-fields": "Campos obrigatórios ausentes" }, "content-type": { "json": "Json", "text": "Texto", "binary": "Binário (Base64)" }, + "color": { + "color": "Cor" + }, "customer": { "customer": "Cliente", "customers": "Clientes", "management": "Gerenciamento de clientes", - "dashboard": "Dashboard de clientes", - "dashboards": "Dashboards de clientes", + "dashboard": "Dashboard do cliente", + "dashboards": "Dashboards do cliente", "devices": "Dispositivos do cliente", - "entity-views": "Exibições de entidades do cliente", + "entity-views": "Visualizações de entidade do cliente", "assets": "Ativos do cliente", "public-dashboards": "Dashboards públicos", "public-devices": "Dispositivos públicos", "public-assets": "Ativos públicos", - "public-entity-views": "Exibições de entidades públicas", + "public-entity-views": "Visualizações de entidade públicas", "add": "Adicionar cliente", "delete": "Excluir cliente", "manage-customer-users": "Gerenciar usuários do cliente", @@ -429,446 +1267,1449 @@ "manage-public-devices": "Gerenciar dispositivos públicos", "manage-public-dashboards": "Gerenciar dashboards públicos", "manage-customer-assets": "Gerenciar ativos do cliente", + "manage-customer-edges": "Gerenciar edges do cliente", "manage-public-assets": "Gerenciar ativos públicos", "add-customer-text": "Adicionar novo cliente", "no-customers-text": "Nenhum cliente encontrado", "customer-details": "Detalhes do cliente", - "delete-customer-title": "Tem certeza de que deseja excluir o ativo cliente '{{customerTitle}}'?", - "delete-customer-text": "Cuidado, após confirmar, não será possível recuperar o cliente e nenhum dado associado.", - "delete-customers-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 customer} other {# customers} }?", - "delete-customers-action-title": "Excluir { count, plural, =1 {1 customer} other {# customers} }", - "delete-customers-text": "Cuidado, após confirmar, todos os clientes selecionados serão removidos e não será possível recuperar nenhum dado associado.", + "delete-customer-title": "Tem certeza de que deseja excluir o cliente '{{customerTitle}}'?", + "delete-customer-text": "Cuidado, após a confirmação o cliente e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-customers-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 cliente} other {# clientes} }?", + "delete-customers-action-title": "Excluir { count, plural, =1 {1 cliente} other {# clientes} }", + "delete-customers-text": "Cuidado, após a confirmação todos os clientes selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", "manage-users": "Gerenciar usuários", "manage-assets": "Gerenciar ativos", "manage-devices": "Gerenciar dispositivos", "manage-dashboards": "Gerenciar dashboards", "title": "Título", "title-required": "O título é obrigatório.", + "title-max-length": "O título deve ter menos de 256 caracteres", "description": "Descrição", "details": "Detalhes", "events": "Eventos", - "copyId": "Copiar ID de cliente", + "copyId": "Copiar ID do cliente", "idCopiedMessage": "O ID do cliente foi copiado para a área de transferência", "select-customer": "Selecionar cliente", - "no-customers-matching": "Nenhum cliente encontrado que coincida com '{{entity}}'.", - "customer-required": "O cliente é obrigatório", - "select-default-customer": "Selecionar cliente predefinido", - "default-customer": "Cliente predefinido", - "default-customer-required": "O cliente predefinido é necessário para depurar o dashboard no nível de locatário", + "no-customers-matching": "Nenhum cliente correspondente a '{{entity}}' foi encontrado.", + "customer-required": "O cliente é obrigatório.", + "select-default-customer": "Selecionar cliente padrão", + "default-customer": "Cliente padrão", + "default-customer-required": "O cliente padrão é obrigatório para depurar o dashboard no nível do Tenant", "search": "Pesquisar clientes", - "selected-customers": "{ count, plural, =1 {1 customer} other {# customers} } selecionado(s)" + "selected-customers": "{ count, plural, =1 {1 cliente} other {# clientes} } selecionado(s)", + "edges": "Instâncias de edge do cliente", + "manage-edges": "Gerenciar edges" + }, + "css-size": { + "size-value-required": "O valor de tamanho é obrigatório", + "invalid-size-value": "Valor de tamanho inválido" + }, + "date": { + "last-update-n-ago": "Última atualização N atrás", + "last-update-n-ago-text": "Última atualização {{ agoText }}", + "custom-date": "Data personalizada", + "format": "Formato", + "preview": "Visualização", + "auto": "Automático", + "time-granularity-formats": "Formatos de granularidade de tempo", + "unit-year": "Anos", + "unit-month": "Meses", + "unit-day": "Dias", + "unit-hour": "Horas", + "unit-minute": "Minutos", + "unit-second": "Segundos", + "unit-millisecond": "Milissegundos" }, "datetime": { - "date-from": "Data de", - "time-from": "Hora de", - "date-to": "Data até", - "time-to": "Hora até" + "date-from": "Data de início", + "time-from": "Hora de início", + "date-to": "Data de término", + "time-to": "Hora de término", + "from": "De", + "to": "Até" }, "dashboard": { "dashboard": "Dashboard", "dashboards": "Dashboards", "management": "Gerenciamento de dashboards", - "view-dashboards": "Visualizar dashboards", + "view-dashboards": "Visualizar Dashboards", "add": "Adicionar dashboard", - "assign-dashboard-to-customer": "Atribuir dashboard(s) a cliente", + "assign-dashboard-to-customer": "Atribuir Dashboard(s) ao Cliente", "assign-dashboard-to-customer-text": "Selecione os dashboards a serem atribuídos ao cliente", - "assign-to-customer-text": "Selecione o cliente para atribuir o(s) dashboard(s)", - "assign-to-customer": "Atribuir a cliente", - "unassign-from-customer": "Remover atribuição a cliente", - "make-public": "Tornar dashboards público", - "make-private": "Tornar dashboards privado", + "assign-to-customer-text": "Selecione o cliente ao qual atribuir o(s) dashboard(s)", + "assign-to-customer": "Atribuir ao cliente", + "unassign-from-customer": "Cancelar atribuição ao cliente", + "make-public": "Tornar dashboard público", + "make-private": "Tornar dashboard privado", "manage-assigned-customers": "Gerenciar clientes atribuídos", "assigned-customers": "Clientes atribuídos", - "assign-to-customers": "Atribuir Dashboard(s) a Clientes", - "assign-to-customers-text": "Selecione os clientes para atribuir o(s) dashboard(s)", - "unassign-from-customers": "Remover Atribuição de Dashboard(s) a Clientes", - "unassign-from-customers-text": "Selecione os clientes para remover a atribuição do(s) dashboard(s)", + "assign-to-customers": "Atribuir Dashboard(s) aos Clientes", + "assign-to-customers-text": "Selecione os clientes aos quais atribuir o(s) dashboard(s)", + "unassign-from-customers": "Cancelar atribuição de Dashboard(s) dos Clientes", + "unassign-from-customers-text": "Selecione os clientes para cancelar a atribuição do(s) dashboard(s)", "no-dashboards-text": "Nenhum dashboard encontrado", - "no-widgets": "Nenhum widgets configurado", + "no-widgets": "Nenhum widget configurado", "add-widget": "Adicionar novo widget", + "add-widget-button-text": "Adicionar widget", "title": "Título", + "image": "Imagem do dashboard", + "mobile-app-settings": "Configurações do aplicativo móvel", + "mobile-order": "Ordem do dashboard no aplicativo móvel", + "mobile-hide": "Ocultar dashboard no aplicativo móvel", + "update-image": "Atualizar imagem do dashboard", + "take-screenshot": "Tirar captura de tela", "select-widget-title": "Selecionar widget", - "select-widget-subtitle": "Lista de tipos de widget disponíveis", + "select-widget-value": "{{title}}: selecionar widget", + "select-widget-subtitle": "Lista de tipos de widgets disponíveis", "delete": "Excluir dashboard", "title-required": "O título é obrigatório.", + "title-max-length": "O título deve ter menos de 256 caracteres", "description": "Descrição", "details": "Detalhes", "dashboard-details": "Detalhes do dashboard", "add-dashboard-text": "Adicionar novo dashboard", "assign-dashboards": "Atribuir dashboards", "assign-new-dashboard": "Atribuir novo dashboard", - "assign-dashboards-text": "Atribuir { count, plural, =1 {1 dashboard} other {# dashboards} } a clientes", - "unassign-dashboards-action-text": "Remover atribuição de { count, plural, =1 {1 dashboard} other {# dashboards} } a clientes", + "assign-dashboards-text": "Atribuir { count, plural, =1 {1 dashboard} other {# dashboards} } aos clientes", + "unassign-dashboards-action-text": "Cancelar atribuição de { count, plural, =1 {1 dashboard} other {# dashboards} } dos clientes", "delete-dashboards": "Excluir dashboards", - "unassign-dashboards": "Remover atribuição de dashboards", - "unassign-dashboards-action-title": "Remover atribuição de { count, plural, =1 {1 dashboard} other {# dashboards} } a cliente", + "unassign-dashboards": "Cancelar atribuição de dashboards", + "unassign-dashboards-action-title": "Cancelar atribuição de { count, plural, =1 {1 dashboard} other {# dashboards} } do cliente", "delete-dashboard-title": "Tem certeza de que deseja excluir o dashboard '{{dashboardTitle}}'?", - "delete-dashboard-text": "Cuidado, após confirmar, não será possível recuperar o dashboard e nenhum dado associado.", + "delete-dashboard-text": "Cuidado, após a confirmação o dashboard e todos os dados relacionados se tornarão irrecuperáveis.", "delete-dashboards-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 dashboard} other {# dashboards} }?", "delete-dashboards-action-title": "Excluir { count, plural, =1 {1 dashboard} other {# dashboards} }", - "delete-dashboards-text": "Cuidado, após confirmar, todos os dashboards selecionados serão removidos e não será possível recuperar nenhum dado associado.", - "unassign-dashboard-title": "Tem certeza de que deseja remover a atribuição do dashboard '{{dashboardTitle}}'?", - "unassign-dashboard-text": "Após confirmar, a atribuição do dashboard será removida e ele não poderá ser acessado pelo cliente.", - "unassign-dashboard": "Remover atribuição de dashboard", - "unassign-dashboards-title": "Tem certeza de que deseja remover a atribuição de { count, plural, =1 {1 dashboard} other {# dashboards} }?", - "unassign-dashboards-text": "Após confirmar, a atribuição de todos os dashboards selecionados será removida e eles não poderão ser acessados pelo cliente.", - "public-dashboard-title": "Agora o dashboard é público", - "public-dashboard-text": "Agora o dashboard {{dashboardTitle}} é público e pode ser acessado pelo próximo link público:", - "public-dashboard-notice": "Observação: Não se esqueça de tornar dispositivos relacionados públicos para poder acessar seus dados.", + "delete-dashboards-text": "Cuidado, após a confirmação todos os dashboards selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", + "unassign-dashboard-title": "Tem certeza de que deseja cancelar a atribuição do dashboard '{{dashboardTitle}}'?", + "unassign-dashboard-text": "Após a confirmação o dashboard terá sua atribuição cancelada e não estará mais acessível pelo cliente.", + "unassign-dashboard": "Cancelar atribuição do dashboard", + "unassign-dashboards-title": "Tem certeza de que deseja cancelar a atribuição de { count, plural, =1 {1 dashboard} other {# dashboards} }?", + "unassign-dashboards-text": "Após a confirmação todos os dashboards selecionados terão suas atribuições canceladas e não estarão mais acessíveis pelo cliente.", + "public-dashboard-title": "O dashboard agora é público", + "public-dashboard-text": "Seu dashboard {{dashboardTitle}} agora é público e acessível via link público:", + "public-dashboard-notice": "Observação: Não se esqueça de tornar os dispositivos relacionados públicos para acessar seus dados.", "make-private-dashboard-title": "Tem certeza de que deseja tornar o dashboard '{{dashboardTitle}}' privado?", - "make-private-dashboard-text": "Após confirmar, o dashboard e todos os dados associados a ele se tornarão privados e não poderão ser acessados por outros.", - "make-private-dashboard": "Tornar dashboards privado", - "socialshare-text": "'{{dashboardTitle}}' da plataforma ThingsBoard", - "socialshare-title": "'{{dashboardTitle}}' da plataforma ThingsBoard", + "make-private-dashboard-text": "Após a confirmação o dashboard será tornado privado e não estará mais acessível por outros.", + "make-private-dashboard": "Tornar dashboard privado", + "socialshare-text": "'{{dashboardTitle}}' desenvolvido com ThingsBoard", + "socialshare-title": "'{{dashboardTitle}}' desenvolvido com ThingsBoard", "select-dashboard": "Selecionar dashboard", - "no-dashboards-matching": "Nenhum dashboard encontrado que coincida com '{{entity}}'.", + "no-dashboards-matching": "Nenhum dashboard correspondente a '{{entity}}' foi encontrado.", "dashboard-required": "O dashboard é obrigatório.", "select-existing": "Selecionar dashboard existente", "create-new": "Criar novo dashboard", - "new-dashboard-title": "Novo título de dashboard", + "new-dashboard-title": "Título do novo dashboard", "open-dashboard": "Abrir dashboard", "set-background": "Definir plano de fundo", "background-color": "Cor de fundo", - "background-image": "Imagem de fundo", - "background-size-mode": "Modo de tamanho de fundo", + "background-image": "Imagem do plano de fundo", + "background-size-mode": "Modo de tamanho do plano de fundo", "no-image": "Nenhuma imagem selecionada", + "empty-image": "Sem imagem", "drop-image": "Solte uma imagem ou clique para selecionar um arquivo para carregar.", + "maximum-upload-file-size": "Tamanho máximo do arquivo para upload: {{ size }}", + "cannot-upload-file": "Não é possível carregar o arquivo", "settings": "Configurações", - "columns-count": "Contagem de colunas", - "columns-count-required": "A contagem de colunas é obrigatória.", - "min-columns-count-message": "Somente é permitida uma contagem de no mínimo 10 colunas.", - "max-columns-count-message": "Somente é permitida uma contagem de no máximo 1000 colunas.", + "move-all-widgets": "Mover todos os widgets", + "move-by": "Mover por", + "cols": "colunas", + "rows": "linhas", + "layout": "Layout", + "layout-type-default": "Padrão", + "layout-type-scada": "SCADA", + "layout-type-divider": "Divisor", + "layout-settings-type": "Configurações de layout: ponto de interrupção {{ type }}", + "columns-count": "Quantidade de colunas", + "columns-count-required": "A quantidade de colunas é obrigatória.", + "min-columns-count-message": "A quantidade mínima permitida de colunas é 10.", + "max-columns-count-message": "A quantidade máxima permitida de colunas é 1000.", + "min-layout-width": "Largura mínima do layout", + "columns-suffix": "colunas", "widgets-margins": "Margem entre widgets", "margin-required": "O valor da margem é obrigatório.", - "min-margin-message": "Somente 0 é permitido como valor mínimo de margem.", - "max-margin-message": "Somente 50 é permitido como valor máximo de margem.", + "min-margin-message": "O valor mínimo permitido para a margem é 0.", + "max-margin-message": "O valor máximo permitido para a margem é 50.", "horizontal-margin": "Margem horizontal", "horizontal-margin-required": "O valor da margem horizontal é obrigatório.", - "min-horizontal-margin-message": "Somente 0 é permitido como valor mínimo de margem horizontal.", - "max-horizontal-margin-message": "Somente 50 é permitido como valor máximo de margem horizontal.", + "min-horizontal-margin-message": "O valor mínimo permitido para a margem horizontal é 0.", + "max-horizontal-margin-message": "O valor máximo permitido para a margem horizontal é 50.", "vertical-margin": "Margem vertical", "vertical-margin-required": "O valor da margem vertical é obrigatório.", - "min-vertical-margin-message": "Somente 0 é permitido como valor mínimo de margem vertical.", - "max-vertical-margin-message": "Somente 50 é permitido como valor máximo de margem vertical.", - "autofill-height": "Altura do layout de preenchimento automático", - "mobile-layout": "Configuração de layout móvel", - "mobile-row-height": "Altura de linha móvel, px", - "mobile-row-height-required": "O valor da altura de linha móvel é obrigatório.", - "min-mobile-row-height-message": "Somente 5 pixels é permitido como valor mínimo da altura de linha móvel.", - "max-mobile-row-height-message": "Somente 200 pixels é permitido como valor máximo da altura de linha móvel.", - "display-title": "Exibir título de dashboard", - "toolbar-always-open": "Manter barra de ferramentas aberto", + "min-vertical-margin-message": "O valor mínimo permitido para a margem vertical é 0.", + "max-vertical-margin-message": "O valor máximo permitido para a margem vertical é 50.", + "apply-outer-margin": "Aplicar margem às bordas do layout", + "autofill-height": "Preencher automaticamente a altura do layout", + "mobile-layout": "Configurações de layout móvel", + "mobile-row-height": "Altura da linha no layout móvel", + "mobile-row-height-required": "O valor da altura da linha no layout móvel é obrigatório.", + "min-mobile-row-height-message": "O valor mínimo permitido para a altura da linha no layout móvel é 5 pixels.", + "max-mobile-row-height-message": "O valor máximo permitido para a altura da linha no layout móvel é 200 pixels.", + "row-height": "Altura da linha", + "row-height-required": "O valor da altura da linha é obrigatório.", + "min-row-height-message": "O valor mínimo permitido para a altura da linha é 5 pixels.", + "max-row-height-message": "O valor máximo permitido para a altura da linha é 200 pixels.", + "display-first-in-mobile-view": "Exibir primeiro na visualização móvel", + "title-settings": "Configurações do título", + "display-title": "Exibir título do dashboard", "title-color": "Cor do título", + "toolbar-settings": "Configurações da barra de ferramentas", + "hide-toolbar": "Ocultar barra de ferramentas", + "toolbar-always-open": "Manter barra de ferramentas aberta", "display-dashboards-selection": "Exibir seleção de dashboards", "display-entities-selection": "Exibir seleção de entidades", "display-filters": "Exibir filtros", - "display-dashboard-timewindow": "Exibir timewindow", + "display-dashboard-timewindow": "Exibir janela de tempo", "display-dashboard-export": "Exibir exportação", + "display-update-dashboard-image": "Exibir atualização de imagem do dashboard", + "dashboard-logo-settings": "Configurações do logotipo do dashboard", + "display-dashboard-logo": "Exibir logotipo no modo de tela cheia do dashboard", + "dashboard-logo-image": "Imagem do logotipo do dashboard", + "advanced-settings": "Configurações avançadas", + "dashboard-css": "CSS do dashboard", "import": "Importar dashboard", "export": "Exportar dashboard", - "export-failed-error": "Impossível exportar dashboard: {{error}}", + "export-failed-error": "Não foi possível exportar o dashboard: {{error}}", + "export-prompt": "Incorporar imagens e recursos do dashboard", "create-new-dashboard": "Criar novo dashboard", - "dashboard-file": "Arquivo de dashboard", - "invalid-dashboard-file-error": "Impossível importar dashboard: Estrutura de dados do dashboard inválida", - "dashboard-import-missing-aliases-title": "Configurar aliases usados por dashboard importado", + "dashboard-file": "Arquivo do dashboard", + "invalid-dashboard-file-error": "Não foi possível importar o dashboard: Estrutura de dados do dashboard inválida.", + "dashboard-import-missing-aliases-title": "Configurar aliases usados pelo dashboard importado", "create-new-widget": "Criar novo widget", "import-widget": "Importar widget", - "widget-file": "Arquivo de widget", - "invalid-widget-file-error": "Impossível importar widget: Estrutura de dados do widget inválida.", - "widget-import-missing-aliases-title": "Configurar aliases usados por widget importado", - "open-toolbar": "Abrir barra de ferramentas de dashboard", + "widget-file": "Arquivo do widget", + "invalid-widget-file-error": "Não foi possível importar o widget: Estrutura de dados do widget inválida.", + "widget-import-missing-aliases-title": "Configurar aliases usados pelo widget importado", + "open-toolbar": "Abrir barra de ferramentas do dashboard", "close-toolbar": "Fechar barra de ferramentas", "configuration-error": "Erro de configuração", - "alias-resolution-error-title": "Erro de configuração de aliases de dashboard", - "invalid-aliases-config": "Impossível encontrar dispositivos que coincidam com algum dos filtros de aliases.
Para resolver esta questão, encontre em contato com seu administrador.", + "alias-resolution-error-title": "Erro de configuração de aliases do dashboard", + "invalid-aliases-config": "Não foi possível encontrar dispositivos correspondentes a alguns dos filtros de aliases.
Entre em contato com o administrador para resolver este problema.", "select-devices": "Selecionar dispositivos", "assignedToCustomer": "Atribuído ao cliente", "assignedToCustomers": "Atribuído aos clientes", "public": "Público", + "copyId": "Copiar ID do dashboard", + "idCopiedMessage": "O ID do dashboard foi copiado para a área de transferência", "public-link": "Link público", "copy-public-link": "Copiar link público", - "public-link-copied-message": "O link público da dashboard foi copiado para a área de transferência", - "manage-states": "Gerenciar estados de dashboards", - "states": "Estados de dashboards", - "search-states": "Pesquisar estados de dashboards", - "selected-states": "{ count, plural, =1 {1 dashboard state} other {# dashboard states} } selecionado(s)", - "edit-state": "Editar estado de dashboard", - "delete-state": "Excluir estado de dashboard", - "add-state": "Adicionar estado de dashboard", + "public-link-copied-message": "O link público do dashboard foi copiado para a área de transferência", + "manage-states": "Gerenciar estados do dashboard", + "states": "Estados do dashboard", + "states-short": "Estados", + "search-states": "Pesquisar estados do dashboard", + "selected-states": "{ count, plural, =1 {1 estado do dashboard} other {# estados do dashboard} } selecionado(s)", + "edit-state": "Editar estado do dashboard", + "delete-state": "Excluir estado do dashboard", + "add-state": "Adicionar estado do dashboard", "no-states-text": "Nenhum estado encontrado", "state": "Estado do dashboard", "state-name": "Nome", "state-name-required": "O nome do estado do dashboard é obrigatório.", "state-id": "ID do estado", "state-id-required": "O ID do estado do dashboard é obrigatório.", - "state-id-exists": "Já existe um estado de dashboard com o mesmo ID.", + "state-id-exists": "Já existe um estado do dashboard com o mesmo ID.", "is-root-state": "Estado raiz", - "delete-state-title": "Excluir estado de dashboard", - "delete-state-text": "Tem certeza de que deseja excluir o estado de dashboard com o nome '{{stateName}}'?", + "delete-state-title": "Excluir estado do dashboard", + "delete-state-text": "Tem certeza de que deseja excluir o estado do dashboard com o nome '{{stateName}}'?", "show-details": "Mostrar detalhes", "hide-details": "Ocultar detalhes", - "select-state": "Selecionar estado alvo", + "select-state": "Selecionar estado de destino", "state-controller": "Controlador de estado", - "search": "Selecionar dashboards", - "selected-dashboards": "{ count, plural, =1 {1 dashboard} other {# dashboards} } selecionado(s)" + "state-controller-default": "estático (obsoleto)", + "search": "Pesquisar dashboards", + "selected-dashboards": "{ count, plural, =1 {1 dashboard} other {# dashboards} } selecionado(s)", + "home-dashboard": "Dashboard inicial", + "home-dashboard-hide-toolbar": "Ocultar barra de ferramentas do dashboard inicial", + "unassign-dashboard-from-edge-text": "Após a confirmação o dashboard terá sua atribuição cancelada e não estará mais acessível pelo edge.", + "unassign-dashboards-from-edge-title": "Tem certeza de que deseja cancelar a atribuição de { count, plural, =1 {1 dashboard} other {# dashboards} }?", + "unassign-dashboards-from-edge-text": "Após a confirmação todos os dashboards selecionados terão suas atribuições canceladas e não estarão mais acessíveis pelo edge.", + "assign-dashboard-to-edge": "Atribuir Dashboard(s) ao Edge", + "assign-dashboard-to-edge-text": "Selecione os dashboards a serem atribuídos ao edge", + "non-existent-dashboard-state-error": "O estado do dashboard com ID \"{{ stateId }}\" não foi encontrado", + "edit-mode": "Modo de edição", + "duplicate-state-action": "Duplicar estado", + "breakpoint-value": "Ponto de interrupção ({{ value }})", + "breakpoints-id": { + "default": "Padrão", + "xs": "Móvel (xs)", + "sm": "Tablet (sm)", + "md": "Laptop (md)", + "lg": "Desktop (lg)", + "xl": "Desktop (xl)" + }, + "view-format-type-grid": "Grade", + "view-format-type-list": "Lista", + "view-format": "Formato de visualização" }, "datakey": { "settings": "Configurações", + "general": "Geral", "advanced": "Avançado", - "label": "Etiqueta", + "key": "Chave", + "keys": "Chaves", + "label": "Rótulo", "color": "Cor", - "units": "Símbolo especial a ser exibido ao lado do valor", - "decimals": "Número de dígitos após ponto de flutuação", + "units": "Símbolo especial para exibir ao lado do valor", + "decimals": "Número de dígitos após o ponto flutuante", "data-generation-func": "Função de geração de dados", "use-data-post-processing-func": "Usar função de pós-processamento de dados", - "configuration": "Configuração de dados-chave", - "timeseries": "Intervalos de tempo", + "configuration": "Configuração da chave de dados", + "timeseries": "Séries temporais", "attributes": "Atributos", - "entity-field": "Campo de entidade", - "alarm": "Campos de alarmes", - "timeseries-required": "Os intervalos de tempo de entidade são obrigatórios.", - "timeseries-or-attributes-required": "Os intervalos de tempo/atributos de entidade são obrigatórios.", - "alarm-fields-timeseries-or-attributes-required": "Os campos de alarmes ou intervalos de tempo/atributos de entidade são obrigatórios.", - "maximum-timeseries-or-attributes": "No máximo { count, plural, =1 {1 timeseries/attribute is allowed.} other {# timeseries/attributes are allowed} }", - "alarm-fields-required": "Os campos de alarmes são obrigatórios.", + "entity-field": "Campo da entidade", + "alarm": "Campos de alarme", + "timeseries-required": "As séries temporais da entidade são obrigatórias.", + "timeseries-or-attributes-required": "Séries temporais/atributos da entidade são obrigatórios.", + "alarm-fields-timeseries-or-attributes-required": "Campos de alarme ou séries temporais/atributos da entidade são obrigatórios.", + "maximum-timeseries-or-attributes": "Máximo { count, plural, =1 {1 série temporal/atributo permitido.} other {# séries temporais/atributos permitidos} }", + "alarm-fields-required": "Os campos de alarme são obrigatórios.", "function-types": "Tipos de função", + "function-type": "Tipo de função", "function-types-required": "Os tipos de função são obrigatórios.", - "maximum-function-types": "No máximo { count, plural, =1 {1 function type is allowed.} other {# function types are allowed} }", - "time-description": "carimbo de data/horário do valor atual;", + "data-keys": "Chaves de dados", + "data-key": "Chave de dados", + "data-keys-required": "As chaves de dados são obrigatórias.", + "data-key-required": "A chave de dados é obrigatória.", + "alarm-keys": "Chaves de dados de alarme", + "alarm-key": "Chave de dados de alarme", + "alarm-key-functions": "Funções de chave de alarme", + "alarm-key-function": "Função de chave de alarme", + "latest-keys": "Chaves de dados mais recentes", + "latest-key": "Chave de dados mais recente", + "latest-key-functions": "Funções de chave mais recente", + "latest-key-function": "Função de chave mais recente", + "timeseries-keys": "Chaves de dados de séries temporais", + "timeseries-key": "Chave de dados de série temporal", + "timeseries-key-functions": "Funções de chave de séries temporais", + "timeseries-key-function": "Função de chave de série temporal", + "maximum-function-types": "Máximo { count, plural, =1 {1 tipo de função permitido.} other {# tipos de função permitidos} }", + "time-description": "timestamp do valor atual;", "value-description": "o valor atual;", "prev-value-description": "resultado da chamada de função anterior;", - "time-prev-description": "carimbo de data/horário do valor anterior;", - "prev-orig-value-description": "valor original anterior;" + "time-prev-description": "timestamp do valor anterior;", + "prev-orig-value-description": "valor anterior original;", + "aggregation": "Agregação", + "aggregation-type-hint-common": "Por motivos de desempenho, o cálculo de valores agregados está disponível apenas para intervalos de tempo fixos como \"dia atual\", \"mês atual\", etc., e não está disponível para intervalos de janela deslizante como 'últimos 30 minutos' ou 'últimas 24 horas'.", + "aggregation-type-none-hint": "Obter o valor mais recente.", + "aggregation-type-min-hint": "Encontrar o valor mínimo entre os pontos de dados dentro de uma janela de tempo selecionada.", + "aggregation-type-max-hint": "Encontrar o valor máximo entre os pontos de dados dentro de uma janela de tempo selecionada.", + "aggregation-type-avg-hint": "Calcular um valor médio entre os pontos de dados dentro de uma janela de tempo selecionada.", + "aggregation-type-sum-hint": "Somar todos os valores dos pontos de dados dentro de uma janela de tempo selecionada.", + "aggregation-type-count-hint": "Número total de pontos de dados dentro de uma janela de tempo selecionada.", + "delta-calculation": "Cálculo delta", + "enable-delta-calculation": "Habilitar cálculo delta", + "enable-delta-calculation-hint": "Quando habilitado, o valor da chave de dados é calculado com base nos valores agregados para uma janela de tempo selecionada e um período de comparação especificado. Por motivos de desempenho, o cálculo delta está disponível apenas para janelas de tempo históricas e não para valores em tempo real. Por exemplo, é possível calcular o delta entre o consumo de energia de ontem comparado ao consumo de energia do dia anterior.", + "delta-calculation-result": "Resultado do cálculo delta", + "delta-calculation-result-previous-value": "Valor anterior", + "delta-calculation-result-delta-absolute": "Delta (absoluto)", + "delta-calculation-result-delta-percent": "Delta (percentual)", + "source": "Fonte", + "latest": "Mais recente", + "latest-value": "Valor mais recente", + "delta": "delta", + "percent": "percentual", + "absolute": "absoluto" }, "datasource": { "type": "Tipo de fonte de dados", "name": "Nome", - "add-datasource-prompt": "Adicione a fonte de dados" + "label": "Rótulo", + "add-datasource-prompt": "Adicione uma fonte de dados" }, "details": { "details": "Detalhes", "edit-mode": "Modo de edição", "edit-json": "Editar JSON", - "toggle-edit-mode": "Alternar o modo de edição" + "toggle-edit-mode": "Alternar modo de edição" }, "device": { "device": "Dispositivo", - "device-required": "O nome do dispositivo é obrigatório.", + "device-required": "O dispositivo é obrigatório.", "devices": "Dispositivos", "management": "Gerenciamento de dispositivos", - "view-devices": "Exibir Dispositivos", + "view-devices": "Visualizar dispositivos", "device-alias": "Alias do dispositivo", + "device-type-max-length": "O tipo de dispositivo deve ter menos de 256 caracteres", "aliases": "Aliases de dispositivos", "no-alias-matching": "'{{alias}}' não encontrado.", "no-aliases-found": "Nenhum alias encontrado.", "no-key-matching": "'{{key}}' não encontrado.", - "no-keys-found": "Nenhuma chave encontrado.", + "no-keys-found": "Nenhuma chave encontrada.", "create-new-alias": "Criar um novo!", "create-new-key": "Criar um novo!", - "duplicate-alias-error": "Alias '{{alias}}' duplicado encontrado.
Os aliases de dispositivos devem ser exclusivos no dashboard.", - "configure-alias": "Configurar alias de '{{alias}}'", - "no-devices-matching": "Nenhum dispositivo encontrado que coincida com '{{entity}}'.", + "duplicate-alias-error": "Alias duplicado encontrado '{{alias}}'.
Os aliases de dispositivos devem ser únicos no dashboard.", + "configure-alias": "Configurar alias '{{alias}}'", + "no-devices-matching": "Nenhum dispositivo correspondente a '{{entity}}' foi encontrado.", "alias": "Alias", "alias-required": "O alias do dispositivo é obrigatório.", "remove-alias": "Remover alias do dispositivo", "add-alias": "Adicionar alias do dispositivo", - "name-starts-with": "O nome do dispositivo começa com", + "name-starts-with": "Expressão de nome do dispositivo", + "help-text": "Use '%' conforme necessário: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Lista de dispositivos", "use-device-name-filter": "Usar filtro", "device-list-empty": "Nenhum dispositivo selecionado.", - "device-name-filter-required": "O filtro do nome do dispositivo é obrigatório.", - "device-name-filter-no-device-matched": "Nenhum dispositivo encontrado que comece com '{{device}}'.", - "add": "Adicionar Dispositivo", - "assign-to-customer": "Atribuir a cliente", - "assign-device-to-customer": "Atribuir Dispositivo(s) a Cliente", + "device-name-filter-required": "O filtro de nome de dispositivo é obrigatório.", + "device-name-filter-no-device-matched": "Nenhum dispositivo iniciando com '{{device}}' foi encontrado.", + "add": "Adicionar dispositivo", + "assign-to-customer": "Atribuir ao cliente", + "assign-device-to-customer": "Atribuir dispositivo(s) ao cliente", "assign-device-to-customer-text": "Selecione os dispositivos a serem atribuídos ao cliente", "make-public": "Tornar dispositivo público", "make-private": "Tornar dispositivo privado", "no-devices-text": "Nenhum dispositivo encontrado", - "assign-to-customer-text": "Selecione cliente para atribuir o(s) dispositivo(s)", + "assign-to-customer-text": "Selecione o cliente ao qual atribuir o(s) dispositivo(s)", "device-details": "Detalhes do dispositivo", "add-device-text": "Adicionar novo dispositivo", "credentials": "Credenciais", "manage-credentials": "Gerenciar credenciais", "delete": "Excluir dispositivo", "assign-devices": "Atribuir dispositivos", - "assign-devices-text": "Atribuir { count, plural, =1 {1 device} other {# devices} } a cliente", + "assign-devices-text": "Atribuir { count, plural, =1 {1 dispositivo} other {# dispositivos} } ao cliente", "delete-devices": "Excluir dispositivos", - "unassign-from-customer": "Remover atribuição a cliente", - "unassign-devices": "Remover atribuição de dispositivos", - "unassign-devices-action-title": "Remover atribuição de { count, plural, =1 {1 device} other {# devices} } a cliente", + "unassign-from-customer": "Cancelar atribuição ao cliente", + "unassign-devices": "Cancelar atribuição de dispositivos", + "unassign-devices-action-title": "Cancelar atribuição de { count, plural, =1 {1 dispositivo} other {# dispositivos} } ao cliente", + "unassign-device-from-edge-title": "Tem certeza de que deseja cancelar a atribuição do dispositivo '{{deviceName}}'?", + "unassign-device-from-edge-text": "Após a confirmação, a atribuição do dispositivo será cancelada e ele não estará acessível pelo edge.", + "unassign-devices-from-edge": "Cancelar atribuição de dispositivos do edge", "assign-new-device": "Atribuir novo dispositivo", "make-public-device-title": "Tem certeza de que deseja tornar o dispositivo '{{deviceName}}' público?", - "make-public-device-text": "Após confirmar, o dispositivo e todos os dados associados a ele se tornarão públicos e poderão ser acessados por outros.", + "make-public-device-text": "Após a confirmação, o dispositivo e todos os seus dados serão tornados públicos e acessíveis por outros.", "make-private-device-title": "Tem certeza de que deseja tornar o dispositivo '{{deviceName}}' privado?", - "make-private-device-text": "Após confirmar, o dispositivo e todos os dados associados a ele se tornarão privados e não poderão ser acessados por outros.", - "view-credentials": "Exibir credenciais", + "make-private-device-text": "Após a confirmação, o dispositivo e todos os seus dados serão tornados privados e não estarão acessíveis por outros.", + "view-credentials": "Visualizar credenciais", "delete-device-title": "Tem certeza de que deseja excluir o dispositivo '{{deviceName}}'?", - "delete-device-text": "Cuidado, após confirmar, não será possível recuperar o dispositivo e nenhum dado associado.", - "delete-devices-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 device} other {# devices} }?", - "delete-devices-action-title": "Excluir { count, plural, =1 {1 device} other {# devices} }", - "delete-devices-text": "Cuidado, após confirmar, todos os dispositivos selecionados serão removidos e não será possível recuperar nenhum dado associado.", - "unassign-device-title": "Tem certeza de que deseja remover a atribuição do dispositivo '{{deviceName}}'?", - "unassign-device-text": "Após confirmar, a atribuição do dispositivo será removida e ele não poderá ser acessado pelo cliente.", - "unassign-device": "Remover atribuição de dispositivo", - "unassign-devices-title": "Tem certeza de que deseja remover a atribuição de { count, plural, =1 {1 device} other {# devices} }?", - "unassign-devices-text": "Após confirmar, a atribuição de todos os dispositivos selecionados será removida e eles não poderão ser acessados pelo cliente.", + "delete-device-text": "Atenção: após a confirmação, o dispositivo e todos os dados relacionados serão irrecuperáveis.", + "delete-devices-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 dispositivo} other {# dispositivos} }?", + "delete-devices-action-title": "Excluir { count, plural, =1 {1 dispositivo} other {# dispositivos} }", + "delete-devices-text": "Atenção: após a confirmação, todos os dispositivos selecionados serão removidos e todos os dados relacionados serão irrecuperáveis.", + "unassign-device-title": "Tem certeza de que deseja cancelar a atribuição do dispositivo '{{deviceName}}'?", + "unassign-device-text": "Após a confirmação, a atribuição do dispositivo será cancelada e ele não estará acessível pelo cliente.", + "unassign-device": "Cancelar atribuição do dispositivo", + "unassign-devices-title": "Tem certeza de que deseja cancelar a atribuição de { count, plural, =1 {1 dispositivo} other {# dispositivos} }?", + "unassign-devices-text": "Após a confirmação, a atribuição de todos os dispositivos selecionados será cancelada e eles não estarão acessíveis pelo cliente.", "device-credentials": "Credenciais do dispositivo", - "credentials-type": "Tipo de credencial", + "loading-device-credentials": "Carregando credenciais do dispositivo...", + "credentials-type": "Tipo de credenciais", "access-token": "Token de acesso", "access-token-required": "O token de acesso é obrigatório.", - "access-token-invalid": "O token de acesso deve ter de 1 a 32 caracteres.", - "secret": "Segredo", - "secret-required": "O segredo é obrigatório.", - "device-type": "Tipo de dispositivo", + "access-token-invalid": "O comprimento do token de acesso deve ser de 1 a 32 caracteres.", + "certificate-pem-format": "Certificado no formato PEM", + "certificate-pem-format-required": "O certificado é obrigatório.", + "copy-access-token": "Copiar token de acesso", + "copy-certificate": "Copiar certificado", + "copy-client-id": "Copiar Client ID", + "copy-user-name": "Copiar nome de usuário", + "copy-password": "Copiar senha", + "generate-client-id": "Gerar Client ID", + "generate-user-name": "Gerar nome de usuário", + "generate-password": "Gerar senha", + "generate-access-token": "Gerar token de acesso", + "lwm2m-security-config": { + "identity": "Identidade do cliente", + "identity-required": "A identidade do cliente é obrigatória.", + "identity-tooltip": "O identificador PSK é um identificador PSK arbitrário de até 128 bytes, conforme descrito no padrão [RFC7925].\nO identificador PSK DEVE ser primeiro convertido em uma string de caracteres e depois codificado em octetos usando UTF-8.", + "client-key": "Chave do cliente", + "client-key-required": "A chave do cliente é obrigatória.", + "client-key-tooltip-prk": "A chave pública ou id RPK deve estar no padrão [RFC7250] e codificada no formato Base64!", + "client-key-tooltip-psk": "A chave PSK deve estar no padrão [RFC4279] e no formato HexDec: 32, 64, 128 caracteres!", + "endpoint": "Nome do Endpoint do cliente", + "endpoint-required": "O nome do Endpoint do cliente é obrigatório.", + "client-public-key": "Chave pública do cliente", + "client-public-key-hint": "Se a chave pública do cliente estiver vazia, o certificado confiável será utilizado", + "client-public-key-tooltip": "A chave pública X509 deve estar no formato X509v3 codificado em DER e suportar exclusivamente o algoritmo EC, e então ser codificada no formato Base64!", + "mode": "Modo de configuração de segurança", + "client-tab": "Configuração de segurança do cliente", + "client-certificate": "Certificado do cliente", + "bootstrap-tab": "Bootstrap do cliente", + "bootstrap-server": "Servidor Bootstrap", + "lwm2m-server": "Servidor LwM2M", + "client-publicKey-or-id": "Chave pública ou Id do cliente", + "client-publicKey-or-id-required": "A chave pública ou Id do cliente é obrigatória.", + "client-publicKey-or-id-tooltip-psk": "O identificador PSK é um identificador PSK arbitrário de até 128 bytes, conforme descrito no padrão [RFC7925].\nO identificador PSK DEVE ser primeiro convertido em uma string de caracteres e depois codificado em octetos usando UTF-8.", + "client-publicKey-or-id-tooltip-rpk": "A chave pública ou id RPK deve estar no padrão [RFC7250] e codificada no formato Base64!", + "client-publicKey-or-id-tooltip-x509": "A chave pública X509 deve estar no formato X509v3 codificado em DER e suportar exclusivamente o algoritmo EC, e então ser codificada no formato Base64", + "client-secret-key": "Chave secreta do cliente", + "client-secret-key-required": "A chave secreta do cliente é obrigatória.", + "client-secret-key-tooltip-psk": "A chave PSK deve estar no padrão [RFC4279] e no formato HexDec: 32, 64, 128 caracteres!", + "client-secret-key-tooltip-prk": "A chave secreta RPK deve estar no formato PKCS_8 (codificação DER, padrão [RFC5958]) e então ser codificada no formato Base64!", + "client-secret-key-tooltip-x509": "A chave secreta X509 deve estar no formato PKCS_8 (codificação DER, padrão [RFC5958]) e então ser codificada no formato Base64!" + }, + "client-id": "Client ID", + "client-id-pattern": "Contém caractere inválido.", + "user-name": "Nome de usuário", + "user-name-required": "O nome de usuário é obrigatório.", + "client-id-or-user-name-necessary": "Client ID e/ou nome de usuário são necessários", + "password": "Senha", + "secret": "Secret", + "secret-required": "O secret é obrigatório.", + "device-type": "Perfil do dispositivo", "device-type-required": "O tipo de dispositivo é obrigatório.", "select-device-type": "Selecionar tipo de dispositivo", - "enter-device-type": "Inserir tipo de dispositivo", + "enter-device-type": "Inserir perfil do dispositivo", "any-device": "Qualquer dispositivo", - "no-device-types-matching": "Nenhum tipo de dispositivo encontrado que coincida com '{{entitySubtype}}'.", - "device-type-list-empty": "Nenhum tipo de dispositivo selecionado.", - "device-types": "Tipos de dispositivos", + "no-device-types-matching": "Nenhum perfil de dispositivo correspondente a '{{entitySubtype}}' foi encontrado.", + "device-type-list-empty": "Nenhum perfil de dispositivo selecionado!", + "device-profile-type-list-empty": "Pelo menos um perfil de dispositivo deve ser selecionado.", + "device-types": "Tipos de dispositivo", "name": "Nome", "name-required": "O nome é obrigatório.", + "name-max-length": "O nome deve ter menos de 256 caracteres", + "label-max-length": "O rótulo deve ter menos de 256 caracteres", "description": "Descrição", - "label": "Etiqueta", + "label": "Rótulo", "events": "Eventos", "details": "Detalhes", - "copyId": "Copiar ID de dispositivo", + "copyId": "Copiar Id do dispositivo", "copyAccessToken": "Copiar token de acesso", - "idCopiedMessage": "O ID do dispositivo foi copiado para a área de transferência", - "accessTokenCopiedMessage": "O token de acesso foi copiado para a área de transferência", + "copy-mqtt-authentication": "Copiar credenciais MQTT", + "idCopiedMessage": "Id do dispositivo foi copiado para a área de transferência", + "accessTokenCopiedMessage": "Token de acesso do dispositivo foi copiado para a área de transferência", + "mqtt-authentication-copied-message": "Autenticação MQTT do dispositivo foi copiada para a área de transferência", "assignedToCustomer": "Atribuído ao cliente", - "unable-delete-device-alias-title": "Impossível excluir alias do dispositivo", - "unable-delete-device-alias-text": "Não é possível excluir o alias do dispositivo '{{deviceAlias}}' porque ele é usado pelo(s) seguinte(s) widget(s):
{{widgetsList}}", + "unable-delete-device-alias-title": "Não é possível excluir o alias do dispositivo", + "unable-delete-device-alias-text": "O alias do dispositivo '{{deviceAlias}}' não pode ser excluído pois é utilizado pelo(s) seguinte(s) widget(s):
{{widgetsList}}", "is-gateway": "É gateway", + "overwrite-activity-time": "Sobrescrever tempo de atividade do dispositivo conectado", + "device-filter-title": "Filtro de dispositivo", + "filter-title": "Filtro", + "device-state": "Estado do dispositivo", + "state": "Estado", + "any": "Qualquer", + "active": "Ativo", + "inactive": "Inativo", "public": "Público", "device-public": "O dispositivo é público", "select-device": "Selecionar dispositivo", "import": "Importar dispositivo", "device-file": "Arquivo de dispositivo", "search": "Pesquisar dispositivos", - "selected-devices": "{ count, plural, =1 {1 device} other {# devices} } selecionado(s)" + "selected-devices": "{ count, plural, =1 {1 dispositivo} other {# dispositivos} } selecionado(s)", + "device-configuration": "Configuração do dispositivo", + "transport-configuration": "Configuração de transporte", + "wizard": { + "device-details": "Detalhes do dispositivo" + }, + "unassign-devices-from-edge-title": "Tem certeza de que deseja cancelar a atribuição de { count, plural, =1 {1 dispositivo} other {# dispositivos} }?", + "unassign-devices-from-edge-text": "Após a confirmação, a atribuição de todos os dispositivos selecionados será cancelada e eles não estarão acessíveis pelo edge.", + "time": "Tempo", + "connectivity": { + "check-connectivity": "Verificar conectividade", + "device-created-check-connectivity": "Dispositivo criado. Vamos verificar a conectividade!", + "loading-check-connectivity-command": "Carregando comandos de verificação de conectividade...", + "use-following-instructions": "Use as instruções a seguir para enviar telemetria em nome do dispositivo usando shell", + "execute-following-command": "Execute o seguinte comando", + "install-curl-windows": "A partir do Windows 10 b17063, o cURL está disponível por padrão", + "install-curl-macos": "A partir do Mac OS X 10.2 6C115 (Jaguar), o cURL está disponível por padrão", + "install-mqtt-windows": "Use as instruções para baixar, instalar, configurar e executar o mosquitto_pub", + "install-coap-client": "Use as instruções para baixar, instalar, configurar e executar o coap-client", + "install-necessary-client-tools": "Instalar as ferramentas de cliente necessárias", + "mqtts-x509-command": "Use a seguinte documentação para conectar o dispositivo via MQTT com autorização X509", + "coaps-x509-command": "Use a seguinte documentação para conectar o dispositivo via CoAP over DTLS com autorização X509", + "snmp-command": "Use a seguinte documentação para conectar o dispositivo por meio do SNMP.", + "sparkplug-command": "Use a seguinte documentação para conectar o dispositivo por meio do MQTT Sparkplug.", + "lwm2m-command": "Use a seguinte documentação para conectar o dispositivo por meio do LWM2M." + } + }, + "dynamic-form": { + "property": { + "properties": "Propriedades", + "property": "Propriedade", + "id": "Id", + "name": "Nome", + "type": "Tipo", + "type-text": "Texto", + "type-password": "Senha", + "type-textarea": "Área de texto", + "type-number": "Número", + "type-switch": "Chave", + "type-select": "Seleção", + "type-radios": "Botões de rádio", + "type-datetime": "Data/Hora", + "type-image": "Imagem", + "type-javascript": "JavaScript", + "type-json": "JSON", + "type-html": "HTML", + "type-css": "CSS", + "type-markdown": "Markdown", + "type-color": "Cor", + "type-color-settings": "Configurações de cor", + "type-font": "Fonte", + "type-units": "Unidades", + "type-icon": "Ícone", + "type-fieldset": "Conjunto de campos", + "type-array": "Array", + "type-html-section": "Seção HTML", + "group-title": "Título do grupo", + "no-properties": "Nenhuma propriedade configurada", + "add-property": "Adicionar propriedade", + "property-settings": "Configurações da propriedade", + "remove-property": "Remover propriedade", + "default-value": "Valor padrão", + "value-required": "Valor obrigatório", + "number-settings": "Configurações de número", + "min": "Mín", + "max": "Máx", + "step": "Passo", + "selected-options-limit": "Limite de opções selecionadas", + "advanced-ui-settings": "Configurações avançadas de interface", + "disable-on-property": "Desabilitar na propriedade", + "disable-on-property-none": "Nenhum (campo sempre habilitado)", + "display-condition-function": "Função de condição de exibição", + "sub-label": "Sub-rótulo", + "vertical-divider-after": "Divisor vertical após", + "input-field-suffix": "Sufixo do campo de entrada", + "property-row-classes": "Classes de linha da propriedade", + "property-field-classes": "Classes de campo da propriedade", + "not-unique-property-ids-error": "Os IDs de propriedade devem ser únicos!", + "enable-multiple-select": "Habilitar seleção múltipla", + "allow-empty-select-option": "Permitir opção vazia", + "select-options": "Opções de seleção", + "not-unique-select-option-value-error": "Os valores das opções de seleção devem ser únicos!", + "value": "Valor", + "label": "Rótulo", + "add-option": "Adicionar opção", + "no-options": "Nenhuma opção configurada", + "remove-option": "Remover opção", + "textarea-rows": "Linhas da área de texto", + "help-id": "Id de ajuda", + "buttons-direction": "Direção dos botões", + "direction-row": "Linha", + "direction-column": "Coluna", + "radio-button-options": "Opções de botão de rádio", + "datetime-type": "Tipo do campo Data/Hora", + "datetime-type-date": "Data", + "datetime-type-time": "Hora", + "datetime-type-datetime": "Data/Hora", + "enable-clear-button": "Habilitar botão de limpar", + "html-section-settings": "Configurações de seção HTML", + "html-section-classes": "Classes de seção HTML", + "html-section-content": "Conteúdo da seção HTML", + "array-item": "Item do array", + "item-type": "Tipo do item", + "item-name": "Nome do item", + "no-items": "Nenhum item", + "support-unit-conversion": "Suportar conversão de unidades" + }, + "clear-form": "Limpar formulário", + "clear-form-prompt": "Tem certeza de que deseja remover todas as propriedades do formulário?", + "import-form": "Importar formulário de JSON", + "export-form": "Exportar formulário para JSON", + "json-file": "Arquivo JSON", + "json-content": "Conteúdo JSON", + "invalid-form-json-file-error": "Não foi possível importar o formulário do JSON: Estrutura de dados JSON do formulário inválida." + }, + "asset-profile": { + "asset-profile": "Perfil do ativo", + "asset-profiles": "Perfis do ativo", + "all-asset-profiles": "Todos", + "add": "Adicionar perfil do ativo", + "edit": "Editar perfil do ativo", + "asset-profile-details": "Detalhes do perfil do ativo", + "no-asset-profiles-text": "Nenhum perfil do ativo encontrado", + "search": "Pesquisar perfis do ativo", + "selected-asset-profiles": "{ count, plural, =1 {1 perfil do ativo} other {# perfis do ativo} } selecionado(s)", + "no-asset-profiles-matching": "Nenhum perfil do ativo correspondente a '{{entity}}' foi encontrado.", + "asset-profile-required": "Perfil do ativo é obrigatório", + "idCopiedMessage": "ID do perfil do ativo copiado para a área de transferência", + "set-default": "Definir perfil do ativo como padrão", + "delete": "Excluir perfil do ativo", + "copyId": "Copiar ID do perfil do ativo", + "name-max-length": "O nome deve ter menos de 256 caracteres", + "new-device-profile-name": "Nome do perfil do ativo", + "new-device-profile-name-required": "O nome do perfil do ativo é obrigatório.", + "name": "Nome", + "name-required": "O nome é obrigatório.", + "image": "Imagem do perfil do ativo", + "description": "Descrição", + "default": "Padrão", + "default-rule-chain": "Cadeia de regras padrão", + "default-edge-rule-chain": "Cadeia de regras padrão do edge", + "default-edge-rule-chain-hint": "Usada no edge como cadeia de regras para processar dados recebidos de ativos deste perfil do ativo", + "mobile-dashboard": "Dashboard móvel", + "mobile-dashboard-hint": "Usado pelo aplicativo móvel como dashboard de detalhes do ativo", + "select-queue-hint": "Selecione em uma lista suspensa.", + "delete-asset-profile-title": "Tem certeza de que deseja excluir o perfil do ativo '{{assetProfileName}}'?", + "delete-asset-profile-text": "Atenção: após a confirmação, o perfil do ativo e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-asset-profiles-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 perfil do ativo} other {# perfis do ativo} }?", + "delete-asset-profiles-text": "Atenção: após a confirmação, todos os perfis do ativo selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", + "set-default-asset-profile-title": "Tem certeza de que deseja definir o perfil do ativo '{{assetProfileName}}' como padrão?", + "set-default-asset-profile-text": "Após a confirmação, o perfil do ativo será marcado como padrão e será usado para novos ativos sem perfil especificado.", + "no-asset-profiles-found": "Nenhum perfil do ativo encontrado.", + "create-new-asset-profile": "Criar um novo!", + "create-asset-profile": "Criar novo perfil do ativo", + "import": "Importar perfil do ativo", + "export": "Exportar perfil do ativo", + "export-failed-error": "Não foi possível exportar o perfil do ativo: {{error}}", + "asset-profile-file": "Arquivo do perfil do ativo", + "invalid-asset-profile-file-error": "Não foi possível importar o perfil do ativo: Estrutura de dados do perfil do ativo inválida." + }, + "device-profile": { + "device-profile": "Perfil do dispositivo", + "device-profiles": "Perfis do dispositivo", + "all-device-profiles": "Todos", + "add": "Adicionar perfil do dispositivo", + "edit": "Editar perfil do dispositivo", + "device-profile-details": "Detalhes do perfil do dispositivo", + "no-device-profiles-text": "Nenhum perfil do dispositivo encontrado", + "search": "Pesquisar perfis do dispositivo", + "selected-device-profiles": "{ count, plural, =1 {1 perfil do dispositivo} other {# perfis do dispositivo} } selecionado(s)", + "no-device-profiles-matching": "Nenhum perfil do dispositivo correspondente a '{{entity}}' foi encontrado.", + "device-profile-required": "Perfil do dispositivo é obrigatório", + "idCopiedMessage": "ID do perfil do dispositivo copiado para a área de transferência", + "set-default": "Definir perfil do dispositivo como padrão", + "delete": "Excluir perfil do dispositivo", + "copyId": "Copiar ID do perfil do dispositivo", + "name-max-length": "O nome deve ter menos de 256 caracteres", + "name": "Nome", + "name-required": "O nome é obrigatório.", + "type": "Tipo de perfil", + "type-required": "O tipo de perfil é obrigatório.", + "type-default": "Padrão", + "image": "Imagem do perfil do dispositivo", + "transport-type": "Tipo de transporte", + "transport-type-required": "O tipo de transporte é obrigatório.", + "transport-type-default": "Padrão", + "transport-type-default-hint": "Suporta transporte básico MQTT, HTTP e CoAP", + "transport-type-mqtt": "MQTT", + "transport-type-mqtt-hint": "Habilita configurações avançadas de transporte MQTT", + "transport-type-coap": "CoAP", + "transport-type-coap-hint": "Habilita configurações avançadas de transporte CoAP", + "transport-type-lwm2m": "LWM2M", + "transport-type-lwm2m-hint": "Tipo de transporte LWM2M", + "transport-type-snmp": "SNMP", + "transport-type-snmp-hint": "Especificar configuração de transporte SNMP", + "transport-type-http": "HTTP", + "description": "Descrição", + "default": "Padrão", + "profile-configuration": "Configuração do perfil", + "transport-configuration": "Configuração de transporte", + "default-rule-chain": "Cadeia de regras padrão", + "default-edge-rule-chain": "Cadeia de regras padrão do edge", + "default-edge-rule-chain-hint": "Usada no edge como cadeia de regras para processar dados recebidos de dispositivos deste perfil do dispositivo", + "mobile-dashboard": "Dashboard móvel", + "mobile-dashboard-hint": "Usado pelo aplicativo móvel como dashboard de detalhes do dispositivo", + "select-queue-hint": "Selecione em uma lista suspensa.", + "delete-device-profile-title": "Tem certeza de que deseja excluir o perfil do dispositivo '{{deviceProfileName}}'?", + "delete-device-profile-text": "Atenção: após a confirmação, o perfil do dispositivo e todos os dados relacionados, incluindo atualizações OTA associadas, se tornarão irrecuperáveis.", + "delete-device-profiles-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 perfil do dispositivo} other {# perfis do dispositivo} }?", + "delete-device-profiles-text": "Atenção: após a confirmação, todos os perfis do dispositivo selecionados serão removidos e todos os dados relacionados, incluindo atualizações OTA associadas, se tornarão irrecuperáveis.", + "set-default-device-profile-title": "Tem certeza de que deseja definir o perfil do dispositivo '{{deviceProfileName}}' como padrão?", + "set-default-device-profile-text": "Após a confirmação, o perfil do dispositivo será marcado como padrão e será usado para novos dispositivos sem perfil especificado.", + "no-device-profiles-found": "Nenhum perfil do dispositivo encontrado.", + "create-new-device-profile": "Criar um novo!", + "mqtt-device-topic-filters": "Filtros de tópico MQTT do dispositivo", + "mqtt-device-topic-filters-unique": "Os filtros de tópico MQTT do dispositivo devem ser únicos.", + "mqtt-device-topic-filters-spark-plug": "Nó MQTT Sparkplug B Edge of Network (EoN).", + "mqtt-device-topic-filters-spark-plug-hint": "Permitir conexões de nós EoN com formato de payload e tópico Sparkplug B.", + "mqtt-device-topic-filters-spark-plug-attribute-metric-names": "Métricas SparkPlug para armazenar como atributos.", + "mqtt-device-topic-filters-spark-plug-attribute-metric-names-hint": "Nomes das métricas SparkPlug que serão armazenadas como atributos do dispositivo. Todas as outras métricas serão armazenadas como telemetria do dispositivo.", + "mqtt-device-payload-type": "Payload MQTT do dispositivo", + "mqtt-device-payload-type-json": "JSON", + "mqtt-device-payload-type-proto": "Protobuf", + "mqtt-enable-compatibility-with-json-payload-format": "Habilitar compatibilidade com outros formatos de payload.", + "mqtt-enable-compatibility-with-json-payload-format-hint": "Quando habilitado, a plataforma usará o formato de payload Protobuf por padrão. Se o parsing falhar, a plataforma tentará usar o formato de payload JSON. Útil para compatibilidade retroativa durante atualizações de firmware. Por exemplo, a versão inicial do firmware usa Json, enquanto a nova versão usa Protobuf. Durante o processo de atualização de firmware de um conjunto de dispositivos, é necessário suportar Protobuf e JSON simultaneamente. O modo de compatibilidade introduz uma leve degradação de desempenho, portanto recomenda-se desabilitar este modo assim que todos os dispositivos estiverem atualizados.", + "mqtt-use-json-format-for-default-downlink-topics": "Usar formato Json para tópicos de downlink padrão", + "mqtt-use-json-format-for-default-downlink-topics-hint": "Quando habilitado, a plataforma usará o formato de payload Json para enviar atributos e RPC pelos seguintes tópicos: v1/devices/me/attributes/response/$request_id, v1/devices/me/attributes, v1/devices/me/rpc/request/$request_id, v1/devices/me/rpc/response/$request_id. Esta configuração não afeta as assinaturas de atributos e rpc enviadas usando os novos tópicos (v2): v2/a/res/$request_id, v2/a, v2/r/req/$request_id, v2/r/res/$request_id. Onde $request_id é um identificador de solicitação inteiro.", + "mqtt-send-ack-on-validation-exception": "Enviar PUBACK em caso de falha de validação de mensagem PUBLISH", + "mqtt-send-ack-on-validation-exception-hint": "Por padrão, a plataforma encerrará a sessão MQTT em caso de falha de validação de mensagem. Quando habilitado, a plataforma enviará confirmação de publicação em vez de encerrar a sessão.", + "mqtt-protocol-version": "Versão do protocolo", + "snmp-add-mapping": "Adicionar mapeamento SNMP", + "snmp-mapping-not-configured": "Nenhum mapeamento de OID para série temporal/telemetria configurado", + "snmp-timseries-or-attribute-name": "Nome da série temporal/atributo para mapeamento", + "snmp-timseries-or-attribute-type": "Tipo da série temporal/atributo para mapeamento", + "snmp-method-pdu-type-get-request": "GetRequest", + "snmp-method-pdu-type-get-next-request": "GetNextRequest", + "snmp-oid": "OID", + "transport-device-payload-type-json": "JSON", + "transport-device-payload-type-proto": "Protobuf", + "mqtt-payload-type-required": "O tipo de payload é obrigatório.", + "coap-device-type": "Tipo de dispositivo CoAP", + "coap-device-payload-type": "Payload do dispositivo CoAP", + "coap-device-type-required": "O tipo de dispositivo CoAP é obrigatório.", + "coap-device-type-default": "Padrão", + "coap-device-type-efento": "Efento NB-IoT", + "support-level-wildcards": "Suporte a curingas de nível único [+] e de múltiplos níveis [#].", + "telemetry-topic-filter": "Filtro de tópico de telemetria", + "telemetry-topic-filter-required": "O filtro de tópico de telemetria é obrigatório.", + "attributes-topic-filter": "Filtro de tópico de publicação de atributos", + "attributes-subscribe-topic-filter": "Filtro de tópico de assinatura de atributos", + "attributes-topic-filter-required": "O filtro de tópico de publicação de atributos é obrigatório.", + "attributes-subscribe-topic-filter-required": "O tópico de assinatura de atributos é obrigatório", + "telemetry-proto-schema": "Schema proto de telemetria", + "telemetry-proto-schema-required": "O schema proto de telemetria é obrigatório.", + "attributes-proto-schema": "Schema proto de atributos", + "attributes-proto-schema-required": "O schema proto de atributos é obrigatório.", + "rpc-response-proto-schema": "Schema proto de resposta RPC", + "rpc-response-proto-schema-required": "O schema proto de resposta RPC é obrigatório.", + "rpc-response-topic-filter": "Filtro de tópico de resposta RPC", + "rpc-response-topic-filter-required": "O filtro de tópico de resposta RPC é obrigatório.", + "rpc-request-proto-schema": "Schema proto de requisição RPC", + "rpc-request-proto-schema-required": "O schema proto de requisição RPC é obrigatório.", + "rpc-request-proto-schema-hint": "A mensagem de requisição RPC deve sempre ter os campos: string method = 1; int32 requestId = 2; e params = 3 de qualquer tipo de dado.", + "not-valid-pattern-topic-filter": "Filtro de tópico padrão inválido", + "not-valid-single-character": "Uso inválido de caractere curinga de nível único", + "not-valid-multi-character": "Uso inválido de caractere curinga de múltiplos níveis", + "single-level-wildcards-hint": "[+] é adequado para qualquer nível de filtro de tópico. Ex.: v1/devices/+/telemetry ou +/devices/+/attributes.", + "multi-level-wildcards-hint": "[#] pode substituir o próprio filtro de tópico e deve ser o último símbolo do tópico. Ex.: # ou v1/devices/me/#.", + "alarm-rules": "Regras de alarme", + "alarm-rules-with-count": "Regras de alarme ({{count}})", + "no-alarm-rules": "Nenhuma regra de alarme configurada", + "add-alarm-rule": "Adicionar regra de alarme", + "edit-alarm-rule": "Editar regra de alarme", + "alarm-type": "Tipo de alarme", + "alarm-type-required": "O tipo de alarme é obrigatório.", + "alarm-type-unique": "O tipo de alarme deve ser único nas regras de alarme do perfil do dispositivo.", + "alarm-type-max-length": "O tipo de alarme deve ter menos de 256 caracteres", + "create-alarm-pattern": "Criar alarme {{alarmType}}", + "create-alarm-rules": "Criar regras de alarme", + "no-create-alarm-rules": "Nenhuma condição de criação configurada", + "add-create-alarm-rule-prompt": "Adicione uma regra de criação de alarme", + "clear-alarm-rule": "Limpar regra de alarme", + "no-clear-alarm-rule": "Nenhuma condição de limpeza configurada", + "add-create-alarm-rule": "Adicionar condição de criação", + "add-clear-alarm-rule": "Adicionar condição de limpeza", + "select-alarm-severity": "Selecionar severidade do alarme", + "alarm-severity-required": "A severidade do alarme é obrigatória.", + "condition-duration": "Duração da condição", + "condition-duration-value": "Valor da duração", + "condition-duration-time-unit": "Unidade de tempo", + "condition-duration-value-range": "O valor da duração deve estar entre 1 e 2147483647.", + "condition-duration-value-pattern": "O valor da duração deve ser um número inteiro.", + "condition-duration-value-required": "O valor da duração é obrigatório.", + "condition-duration-time-unit-required": "A unidade de tempo é obrigatória.", + "advanced-settings": "Configurações avançadas", + "alarm-rule-additional-info": "Informações adicionais", + "edit-alarm-rule-additional-info": "Editar informações adicionais", + "alarm-rule-additional-info-placeholder": "Insira seus comentários e ajustes aqui para exibi-los nos detalhes do Alarme em Informações adicionais", + "alarm-rule-additional-info-hint": "Dica: use ${keyName} para substituir valores dos atributos ou chaves de telemetria usados na condição da regra de alarme.", + "alarm-rule-mobile-dashboard": "Dashboard móvel", + "alarm-rule-mobile-dashboard-hint": "Usado pelo aplicativo móvel como dashboard de detalhes do alarme", + "alarm-rule-no-mobile-dashboard": "Nenhum dashboard selecionado", + "propagate-alarm": "Propagar alarme para entidades relacionadas", + "alarm-rule-relation-types-list": "Tipos de relação", + "alarm-rule-relation-types-list-hint": "Define os tipos de relação para filtrar as entidades relacionadas. Se não definido, o alarme será propagado para todas as entidades relacionadas.", + "propagate-alarm-to-owner": "Propagar alarme para o proprietário da entidade (Cliente ou Tenant)", + "propagate-alarm-to-tenant": "Propagar alarme para o Tenant", + "alarm-rule-condition": "Condição da regra de alarme", + "enter-alarm-rule-condition-prompt": "Adicione uma condição de regra de alarme", + "edit-alarm-rule-condition": "Editar condição da regra de alarme", + "device-provisioning": "Provisionamento de dispositivo", + "provision-strategy": "Estratégia de provisionamento", + "provision-strategy-required": "A estratégia de provisionamento é obrigatória.", + "provision-strategy-disabled": "Desabilitado", + "provision-strategy-created-new": "Permitir criar novos dispositivos", + "provision-strategy-check-pre-provisioned": "Verificar dispositivos pré-provisionados", + "provision-device-key": "Chave de provisionamento do dispositivo", + "provision-device-key-required": "A chave de provisionamento do dispositivo é obrigatória.", + "copy-provision-key": "Copiar chave de provisionamento", + "provision-key-copied-message": "Chave de provisionamento copiada para a área de transferência", + "provision-device-secret": "Segredo de provisionamento do dispositivo", + "provision-device-secret-required": "O segredo de provisionamento do dispositivo é obrigatório.", + "copy-provision-secret": "Copiar segredo de provisionamento", + "provision-secret-copied-message": "Segredo de provisionamento copiado para a área de transferência", + "provision-strategy-x509": { + "certificate-chain": "Cadeia de certificados X509", + "certificate-chain-hint": "A estratégia de certificados X.509 é usada para provisionar dispositivos por certificados de cliente em comunicação TLS bidirecional.", + "allow-create-new-devices": "Criar novos dispositivos", + "allow-create-new-devices-hint": "Se selecionado, novos dispositivos serão criados e o certificado de cliente será usado como credencial do dispositivo.", + "certificate-value": "Certificado em formato PEM", + "certificate-value-required": "O certificado em formato PEM é obrigatório", + "cn-regex-variable": "Variável de expressão regular CN", + "cn-regex-variable-required": "A variável de expressão regular CN é obrigatória", + "cn-regex-variable-hint": "Necessário para obter o nome do dispositivo a partir do nome comum do certificado X509 do dispositivo." + }, + "condition": "Condição", + "condition-type": "Tipo de condição", + "condition-type-simple": "Simples", + "condition-type-duration": "Duração", + "condition-during": "Durante {{during}}", + "condition-during-dynamic": "Durante \"{{ attribute }}\" ({{during}})", + "condition-type-repeating": "Repetição", + "condition-type-required": "O tipo de condição é obrigatório.", + "condition-repeating-value": "Contagem de eventos", + "condition-repeating-value-range": "A contagem de eventos deve estar entre 1 e 2147483647.", + "condition-repeating-value-pattern": "A contagem de eventos deve ser um número inteiro.", + "condition-repeating-value-required": "A contagem de eventos é obrigatória.", + "condition-repeat-times": "Repete { count, plural, =1 {1 vez} other {# vezes} }", + "condition-repeat-times-dynamic": "Repete \"{ attribute }\" ({ count, plural, =1 {1 vez} other {# vezes} })", + "schedule-type": "Tipo de agendador", + "schedule-type-required": "O tipo de agendador é obrigatório.", + "schedule": "Agendamento", + "edit-schedule": "Editar agendamento de alarme", + "schedule-any-time": "Ativo o tempo todo", + "schedule-specific-time": "Ativo em um horário específico", + "schedule-custom": "Personalizado", + "schedule-day": { + "monday": "Segunda-feira", + "tuesday": "Terça-feira", + "wednesday": "Quarta-feira", + "thursday": "Quinta-feira", + "friday": "Sexta-feira", + "saturday": "Sábado", + "sunday": "Domingo" + }, + "schedule-days": "Dias", + "schedule-time": "Hora", + "schedule-time-from": "De", + "schedule-time-to": "Até", + "schedule-days-of-week-required": "Pelo menos um dia da semana deve ser selecionado.", + "create-device-profile": "Criar novo perfil do dispositivo", + "import": "Importar perfil do dispositivo", + "export": "Exportar perfil do dispositivo", + "export-failed-error": "Não foi possível exportar o perfil do dispositivo: {{error}}", + "device-profile-file": "Arquivo do perfil do dispositivo", + "invalid-device-profile-file-error": "Não foi possível importar o perfil do dispositivo: Estrutura de dados do perfil do dispositivo inválida.", + "power-saving-mode": "Modo de economia de energia", + "power-saving-mode-type": { + "default": "Usar modo de economia de energia do perfil do dispositivo", + "psm": "Modo de economia de energia (PSM)", + "drx": "Recepção descontínua (DRX)", + "edrx": "Recepção descontínua estendida (eDRX)" + }, + "edrx-cycle": "Ciclo eDRX", + "edrx-cycle-required": "O ciclo eDRX é obrigatório.", + "edrx-cycle-pattern": "O ciclo eDRX deve ser um número inteiro positivo.", + "edrx-cycle-min": "O número mínimo do ciclo eDRX é {{ min }} segundos.", + "paging-transmission-window": "Janela de transmissão de paginação", + "paging-transmission-window-required": "A janela de transmissão de paginação é obrigatória.", + "paging-transmission-window-pattern": "A janela de transmissão de paginação deve ser um número inteiro positivo.", + "paging-transmission-window-min": "O número mínimo da janela de transmissão de paginação é {{ min }} segundos.", + "psm-activity-timer": "Temporizador de atividade PSM", + "psm-activity-timer-required": "O temporizador de atividade PSM é obrigatório.", + "psm-activity-timer-pattern": "O temporizador de atividade PSM deve ser um número inteiro positivo.", + "psm-activity-timer-min": "O número mínimo do temporizador de atividade PSM é {{ min }} segundos.", + "lwm2m": { + "object-list": "Lista de objetos", + "object-list-empty": "Nenhum objeto selecionado.", + "no-objects-found": "Nenhum objeto encontrado.", + "no-objects-matching": "Nenhum objeto correspondente a '{{object}}' foi encontrado.", + "model-tab": "Modelo LWM2M", + "add-new-instances": "Adicionar novas instâncias", + "instances-list": "Lista de instâncias", + "instances-list-required": "A lista de instâncias é obrigatória.", + "instance-id-pattern": "O ID da instância deve ser um número inteiro positivo.", + "instance-id-max": "Valor máximo do ID da instância: {{max}}.", + "instance": "Instância", + "resource-label": "#ID Nome do recurso", + "observe-label": "Observar", + "attribute-label": "Atributo", + "telemetry-label": "Telemetria", + "edit-observe-select": "Para editar observar, selecione telemetria ou atributo", + "edit-attributes-select": "Para editar atributos, selecione telemetria ou atributo", + "no-attributes-set": "Nenhum atributo definido", + "key-name": "Nome da chave", + "key-name-required": "O nome da chave é obrigatório", + "attribute-name": "Nome do atributo", + "attribute-name-required": "O nome do atributo é obrigatório.", + "attribute-value": "Valor do atributo", + "attribute-value-required": "O valor do atributo é obrigatório.", + "attribute-value-pattern": "O valor do atributo deve ser um número inteiro positivo.", + "edit-attributes": "Editar atributos: {{ name }}", + "view-attributes": "Visualizar atributos: {{ name }}", + "add-attribute": "Adicionar atributo", + "edit-attribute": "Editar atributo", + "view-attribute": "Visualizar atributo", + "remove-attribute": "Remover atributo", + "delete-server-text": "Atenção: após a confirmação, a configuração do servidor se tornará irrecuperável.", + "delete-server-title": "Tem certeza de que deseja excluir o servidor?", + "mode": "Modo de configuração de segurança", + "bootstrap-tab": "Bootstrap", + "bootstrap-server-legend": "Servidor Bootstrap (ShortId...)", + "lwm2m-server-legend": "Servidor LwM2M (ShortId...)", + "server": "Servidor", + "short-id": "ID curto do servidor", + "short-id-tooltip": "ID curto do servidor. Usado como link para associar a instância do objeto servidor.\nEste identificador identifica exclusivamente cada servidor LwM2M configurado para o cliente LwM2M.\nO recurso DEVE ser definido quando o recurso Bootstrap-Server tem o valor 'false'.\nOs valores ID:0 e ID:65535 NÃO DEVEM ser usados para identificar o servidor LwM2M.", + "short-id-tooltip-bootstrap": "ID curto do servidor. Usado como link para associar a instância do objeto servidor.\nEste identificador identifica exclusivamente cada servidor LwM2M configurado para o cliente LwM2M.\nO recurso DEVE ser definido quando o recurso Bootstrap-Server tem o valor 'false'.", + "short-id-required": "O ID curto do servidor é obrigatório.", + "short-id-range": "O ID curto do servidor deve estar entre {{ min }} e {{ max }}.", + "short-id-pattern": "O ID curto do servidor deve ser um número inteiro positivo.", + "lifetime": "Tempo de vida do registro do cliente", + "lifetime-required": "O tempo de vida do registro do cliente é obrigatório.", + "lifetime-pattern": "O tempo de vida do registro do cliente deve ser um número inteiro positivo.", + "default-min-period": "Período mínimo entre duas notificações (s)", + "default-min-period-tooltip": "O valor padrão que o cliente LwM2M deve usar para o Período Mínimo de uma Observação na ausência deste parâmetro em uma Observação.", + "default-min-period-required": "O período mínimo é obrigatório.", + "default-min-period-pattern": "O período mínimo deve ser um número inteiro positivo.", + "notification-storing": "Armazenamento de notificações quando desabilitado ou offline", + "binding": "Vinculação", + "binding-type": { + "u": "U: O cliente é acessível via vinculação UDP a qualquer momento.", + "m": "M: O cliente é acessível via vinculação MQTT a qualquer momento.", + "h": "H: O cliente é acessível via vinculação HTTP a qualquer momento.", + "t": "T: O cliente é acessível via vinculação TCP a qualquer momento.", + "s": "S: O cliente é acessível via vinculação SMS a qualquer momento.", + "n": "N: O cliente DEVE enviar a resposta a tal solicitação pela vinculação Non-IP (suportado desde LWM2M 1.1).", + "uq": "UQ: Conexão UDP em modo fila (não suportado desde LWM2M 1.1)", + "uqs": "UQS: conexões UDP e SMS ativas; UDP em modo fila, SMS em modo padrão (não suportado desde LWM2M 1.1)", + "tq": "TQ: Conexão TCP em modo fila (não suportado desde LWM2M 1.1)", + "tqs": "TQS: conexões TCP e SMS ativas; TCP em modo fila, SMS em modo padrão (não suportado desde LWM2M 1.1)", + "sq": "SQ: Conexão SMS em modo fila (não suportado desde LWM2M 1.1)" + }, + "binding-tooltip": "Esta é a lista no recurso \"binding\" do objeto de servidor LwM2M - /1/x/7.\nIndica os modos de vinculação suportados no cliente LwM2M.\nEste valor DEVE ser o mesmo que o valor no recurso \"Supported Binding and Modes\" no objeto Device (/3/0/16).\nEmbora múltiplos transportes sejam suportados, apenas uma vinculação de transporte pode ser usada durante toda a Sessão de Transporte.\nComo exemplo, quando UDP e SMS são ambos suportados, o cliente LwM2M e o servidor LwM2M podem optar por se comunicar por UDP ou SMS durante toda a Sessão de Transporte.", + "bootstrap-server": "Servidor Bootstrap", + "lwm2m-server": "Servidor LwM2M", + "include-bootstrap-server": "Incluir atualizações do servidor Bootstrap", + "bootstrap-update-title": "Você já tem um servidor Bootstrap configurado. Tem certeza de que deseja excluir as atualizações?", + "bootstrap-update-text": "Atenção: após a confirmação, os dados de configuração do servidor Bootstrap se tornarão irrecuperáveis.", + "server-host": "Host", + "server-host-required": "O host é obrigatório.", + "server-port": "Porta", + "server-port-required": "A porta é obrigatória.", + "server-port-pattern": "A porta deve ser um número inteiro positivo.", + "server-port-range": "A porta deve estar entre 1 e 65535.", + "server-public-key": "Chave pública do servidor", + "server-public-key-required": "A chave pública do servidor é obrigatória.", + "client-hold-off-time": "Tempo de espera", + "client-hold-off-time-required": "O tempo de espera é obrigatório.", + "client-hold-off-time-pattern": "O tempo de espera deve ser um número inteiro positivo.", + "client-hold-off-time-tooltip": "Tempo de espera do cliente para uso exclusivo com um servidor Bootstrap", + "account-after-timeout": "Conta após o tempo limite", + "account-after-timeout-required": "A conta após o tempo limite é obrigatória.", + "account-after-timeout-pattern": "A conta após o tempo limite deve ser um número inteiro positivo.", + "account-after-timeout-tooltip": "Conta do servidor Bootstrap após o valor de tempo limite fornecido por este recurso.", + "server-type": "Tipo de servidor", + "add-new-server-title": "Adicionar nova configuração de servidor", + "add-server-config": "Adicionar configuração de servidor", + "add-lwm2m-server-config": "Adicionar servidor LwM2M", + "no-config-servers": "Nenhum servidor configurado", + "others-tab": "Outras configurações", + "ota-update": "Atualização OTA", + "use-object-19-for-ota-update": "Usar Objeto 19 para metadados de arquivo OTA (checksum, tamanho, versão, nome)", + "use-object-19-for-ota-update-hint": "Usar Recurso ObjectId = 19 para atualizações OTA: FirmWare → InstanceId = 65534, SoftWare → InstanceId = 65535. O formato de dados é JSON encapsulado em Base64. Este JSON contém metadados do arquivo OTA (informações do arquivo): \"Checksum\" (SHA256). Campos adicionais: \"Title\" (nome OTA), \"Version\" (versão OTA), \"File Name\" (nome do arquivo para armazenar OTA no cliente), \"File Size\" (tamanho OTA em bytes).", + "client-strategy": "Estratégia do cliente ao conectar", + "client-strategy-label": "Estratégia", + "client-strategy-only-observe": "Apenas Observe Request para o cliente após a conexão inicial", + "client-strategy-read-all": "Ler todos os recursos e Observe Request para o cliente após o registro", + "fw-update": "Atualização de firmware", + "fw-update-strategy": "Estratégia de atualização de firmware", + "fw-update-strategy-data": "Enviar atualização de firmware como arquivo binário usando Objeto 19 e Recurso 0 (Data)", + "fw-update-strategy-package": "Enviar atualização de firmware como arquivo binário usando Objeto 5 e Recurso 0 (Package)", + "fw-update-strategy-package-uri": "Gerar automaticamente URL CoAP única para baixar o pacote e enviar atualização de firmware como Objeto 5 e Recurso 1 (Package URI)", + "sw-update": "Atualização de software", + "sw-update-strategy": "Estratégia de atualização de software", + "sw-update-strategy-package": "Enviar arquivo binário usando Objeto 9 e Recurso 2 (Package)", + "sw-update-strategy-package-uri": "Gerar automaticamente URL CoAP única para baixar o pacote e enviar atualização de software usando Objeto 9 e Recurso 3 (Package URI)", + "fw-update-resource": "Recurso CoAP de atualização de firmware", + "fw-update-resource-required": "O recurso CoAP de atualização de firmware é obrigatório.", + "sw-update-resource": "Recurso CoAP de atualização de software", + "sw-update-resource-required": "O recurso CoAP de atualização de software é obrigatório.", + "config-json-tab": "Perfil de dispositivo de configuração Json", + "attributes-name": { + "min-period": "Período mínimo", + "max-period": "Período máximo", + "greater-than": "Maior que", + "less-than": "Menor que", + "step": "Passo", + "min-evaluation-period": "Período mínimo de avaliação", + "max-evaluation-period": "Período máximo de avaliação" + }, + "default-object-id": "Versão padrão do objeto (Atributo)", + "default-object-id-ver": { + "v1-0": "1.0", + "v1-1": "1.1", + "v1-2": "1.2" + }, + "observe-strategy": { + "observe-strategy": "Estratégia de observação", + "single": "Individual", + "single-description": "Uma solicitação Observe por recurso (maior precisão, mais tráfego de rede)", + "composite-all": "Composto total", + "composite-all-description": "Todos os recursos são observados com uma única solicitação Composite Observe (mais eficiente, menos flexível)", + "composite-by-object": "Composto por objetos", + "composite-by-object-description": "Os recursos são agrupados por tipo de objeto e observados usando solicitações Composite Observe separadas (abordagem equilibrada)" + } + }, + "snmp": { + "add-communication-config": "Adicionar configuração de comunicação", + "add-mapping": "Adicionar mapeamento", + "authentication-passphrase": "Frase de autenticação", + "authentication-passphrase-required": "A frase de autenticação é obrigatória.", + "authentication-protocol": "Protocolo de autenticação", + "authentication-protocol-required": "O protocolo de autenticação é obrigatório.", + "communication-configs": "Configurações de comunicação", + "community": "String de comunidade", + "community-required": "A string de comunidade é obrigatória.", + "context-name": "Nome do contexto", + "data-key": "Chave de dados", + "data-key-required": "A chave de dados é obrigatória.", + "data-type": "Tipo de dados", + "data-type-required": "O tipo de dados é obrigatório.", + "engine-id": "ID do motor", + "host": "Host", + "host-required": "O host é obrigatório.", + "oid": "OID", + "oid-pattern": "Formato OID inválido.", + "oid-required": "O OID é obrigatório.", + "please-add-communication-config": "Adicione uma configuração de comunicação", + "please-add-mapping-config": "Adicione uma configuração de mapeamento", + "port": "Porta", + "port-format": "Formato de porta inválido.", + "port-required": "A porta é obrigatória.", + "privacy-passphrase": "Frase de privacidade", + "privacy-passphrase-required": "A frase de privacidade é obrigatória.", + "privacy-protocol": "Protocolo de privacidade", + "privacy-protocol-required": "O protocolo de privacidade é obrigatório.", + "protocol-version": "Versão do protocolo", + "protocol-version-required": "A versão do protocolo é obrigatória.", + "querying-frequency": "Frequência de consulta, ms", + "querying-frequency-invalid-format": "A frequência de consulta deve ser um número inteiro positivo.", + "querying-frequency-required": "A frequência de consulta é obrigatória.", + "retries": "Tentativas", + "retries-invalid-format": "O número de tentativas deve ser um número inteiro positivo.", + "retries-required": "O número de tentativas é obrigatório.", + "scope": "Escopo", + "scope-required": "O escopo é obrigatório.", + "security-name": "Nome de segurança", + "security-name-required": "O nome de segurança é obrigatório.", + "timeout-ms": "Tempo limite, ms", + "timeout-ms-invalid-format": "O tempo limite deve ser um número inteiro positivo.", + "timeout-ms-required": "O tempo limite é obrigatório.", + "user-name": "Nome de usuário", + "user-name-required": "O nome de usuário é obrigatório." + } }, "dialog": { - "close": "Fechar diálogo" + "close": "Fechar diálogo", + "error-message-title": "Mensagem de erro:", + "error-details-title": "Detalhes do erro" }, "direction": { "column": "Coluna", "row": "Linha" }, + "edge": { + "edge": "Edge", + "edge-instances": "Instâncias do edge", + "instances": "Instâncias", + "edge-file": "Arquivo do edge", + "name-max-length": "O nome deve ter menos de 256 caracteres", + "label-max-length": "O rótulo deve ter menos de 256 caracteres", + "type-max-length": "O tipo deve ter menos de 256 caracteres", + "management": "Gerenciamento do edge", + "no-edges-matching": "Nenhum edge correspondente a '{{entity}}' foi encontrado.", + "add": "Adicionar edge", + "no-edges-text": "Nenhum edge encontrado", + "edge-details": "Detalhes do edge", + "add-edge-text": "Adicionar novo edge", + "delete": "Excluir edge", + "delete-edge-title": "Tem certeza de que deseja excluir o edge '{{edgeName}}'?", + "delete-edge-text": "Atenção: após a confirmação, o edge e todos os dados relacionados serão irrecuperáveis.", + "delete-edges-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 edge} other {# edges} }?", + "delete-edges-text": "Atenção: após a confirmação, todos os edges selecionados serão removidos e todos os dados relacionados serão irrecuperáveis.", + "name": "Nome", + "name-starts-with": "Nome do edge começa com", + "name-required": "O nome é obrigatório.", + "description": "Descrição", + "details": "Detalhes", + "events": "Eventos", + "copy-id": "Copiar ID do edge", + "id-copied-message": "ID do edge copiado para a área de transferência", + "sync": "Sincronizar edge", + "edge-required": "Edge é obrigatório", + "edge-type": "Tipo do edge", + "edge-type-required": "O tipo do edge é obrigatório.", + "event-action": "Ação do evento", + "entity-id": "ID da entidade", + "select-edge-type": "Selecionar tipo do edge", + "assign-to-customer": "Atribuir ao cliente", + "assign-to-customer-text": "Selecione o cliente ao qual deseja atribuir o(s) edge(s)", + "assign-edge-to-customer": "Atribuir edge(s) ao cliente", + "assign-edge-to-customer-text": "Selecione os edges a serem atribuídos ao cliente", + "assignedToCustomer": "Atribuído ao cliente", + "edge-public": "Edge é público", + "assigned-to-customer": "Atribuído a: {{customerTitle}}", + "unassign-from-customer": "Desatribuir do cliente", + "unassign-edge-title": "Tem certeza de que deseja desatribuir o edge '{{edgeName}}'?", + "unassign-edge-text": "Após a confirmação, o edge será desatribuído e não estará mais acessível pelo cliente.", + "unassign-edges-title": "Tem certeza de que deseja desatribuir { count, plural, =1 {1 edge} other {# edges} }?", + "unassign-edges-text": "Após a confirmação, todos os edges selecionados serão desatribuídos e não estarão mais acessíveis pelo cliente.", + "make-public": "Tornar edge público", + "make-public-edge-title": "Tem certeza de que deseja tornar o edge '{{edgeName}}' público?", + "make-public-edge-text": "Após a confirmação, o edge e todos os seus dados serão tornados públicos e acessíveis por outros.", + "make-private": "Tornar edge privado", + "public": "Público", + "make-private-edge-title": "Tem certeza de que deseja tornar o edge '{{edgeName}}' privado?", + "make-private-edge-text": "Após a confirmação, o edge e todos os seus dados serão tornados privados e não estarão mais acessíveis por outros.", + "import": "Importar edge", + "install-connect-instructions": "Instruções de instalação e conexão", + "install-connect-instructions-edge-created": "Edge criado! Veja as instruções de instalação e conexão", + "loading-edge-instructions": "Carregando instruções do edge...", + "label": "Rótulo", + "load-entity-error": "Falha ao carregar os dados. A entidade foi excluída.", + "assign-new-edge": "Atribuir novo edge", + "unassign-from-edge": "Desatribuir do edge", + "edge-key": "Chave do edge", + "copy-edge-key": "Copiar chave do edge", + "edge-key-copied-message": "Chave do edge copiada para a área de transferência", + "edge-secret": "Segredo do edge", + "copy-edge-secret": "Copiar segredo do edge", + "edge-secret-copied-message": "Segredo do edge copiado para a área de transferência", + "manage-assets": "Gerenciar ativos", + "manage-devices": "Gerenciar dispositivos", + "manage-entity-views": "Gerenciar visualizações de entidade", + "manage-dashboards": "Gerenciar dashboards", + "manage-rulechains": "Gerenciar cadeias de regras", + "assets": "Ativos do edge", + "devices": "Dispositivos do edge", + "entity-views": "Visualizações de entidade do edge", + "dashboard": "Dashboard do edge", + "dashboards": "Dashboards do edge", + "rulechain-templates": "Modelos de cadeia de regras", + "edge-rulechain-templates": "Modelos de cadeia de regras do edge", + "rulechains": "Cadeias de regras do edge", + "search": "Pesquisar edges", + "selected-edges": "{ count, plural, =1 {1 edge} other {# edges} } selecionado(s)", + "any-edge": "Qualquer edge", + "no-edge-types-matching": "Nenhum tipo de edge correspondente a '{{entitySubtype}}' foi encontrado.", + "edge-type-list-empty": "Nenhum tipo de edge selecionado.", + "edge-types": "Tipos de edge", + "enter-edge-type": "Inserir tipo do edge", + "deployed": "Implantado", + "pending": "Pendente", + "downlinks": "Downlinks", + "no-downlinks-prompt": "Nenhum downlink encontrado", + "sync-process-started-successfully": "Processo de sincronização iniciado com sucesso!", + "missing-related-rule-chains-title": "O edge possui cadeia(s) de regras relacionada(s) ausente(s)", + "missing-related-rule-chains-text": "A(s) cadeia(s) de regras atribuída(s) ao edge utiliza(m) nós de regra que encaminham mensagem(s) para cadeia(s) de regras que não estão atribuídas a este edge.

Lista de cadeia(s) de regras ausente(s):
{{missingRuleChains}}", + "widget-datasource-error": "Este widget suporta apenas a fonte de dados da entidade EDGE", + "upgrade-instructions": "Instruções de atualização", + "connected": "Conectado", + "disconnected": "Desconectado" + }, + "edge-event": { + "type-dashboard": "Dashboard", + "type-asset": "Ativo", + "type-device": "Dispositivo", + "type-device-profile": "Perfil do dispositivo", + "type-asset-profile": "Perfil do ativo", + "type-entity-view": "Visualização de entidade", + "type-alarm": "Alarme", + "type-rule-chain": "Cadeia de regras", + "type-rule-chain-metadata": "Metadados da cadeia de regras", + "type-edge": "Edge", + "type-user": "Usuário", + "type-tenant": "Tenant", + "type-tenant-profile": "Perfil do tenant", + "type-customer": "Cliente", + "type-relation": "Relação", + "type-widgets-bundle": "Conjunto de widgets", + "type-widgets-type": "Tipo de widgets", + "type-admin-settings": "Configurações de administração", + "type-ota-package": "Pacote OTA", + "type-queue": "Fila", + "action-type-added": "Adicionado", + "action-type-deleted": "Excluído", + "action-type-updated": "Atualizado", + "action-type-post-attributes": "Publicar atributos", + "action-type-attributes-updated": "Atributos atualizados", + "action-type-attributes-deleted": "Atributos excluídos", + "action-type-timeseries-updated": "Séries temporais atualizadas", + "action-type-credentials-updated": "Credenciais atualizadas", + "action-type-assigned-to-customer": "Atribuído ao cliente", + "action-type-unassigned-from-customer": "Desatribuído do cliente", + "action-type-relation-add-or-update": "Adição ou atualização de relação", + "action-type-relation-deleted": "Relação excluída", + "action-type-rpc-call": "Chamada RPC", + "action-type-alarm-ack": "Confirmação de alarme", + "action-type-alarm-clear": "Limpeza de alarme", + "action-type-alarm-assigned": "Alarme atribuído", + "action-type-alarm-unassigned": "Alarme desatribuído", + "action-type-assigned-to-edge": "Atribuído ao edge", + "action-type-unassigned-from-edge": "Desatribuído do edge", + "action-type-credentials-request": "Solicitação de credenciais", + "action-type-entity-merge-request": "Solicitação de mesclagem de entidade" + }, "error": { - "unable-to-connect": "Impossível conectar ao servidor! Verifique sua conexão à Internet.", - "unhandled-error-code": "Código de erro sem tratamento: {{errorCode}}", + "unable-to-connect": "Não foi possível conectar ao servidor! Verifique sua conexão com a internet.", + "unhandled-error-code": "Código de erro não tratado: {{errorCode}}", "unknown-error": "Erro desconhecido" }, "entity": { "entity": "Entidade", "entities": "Entidades", - "aliases": "Aliases de entidades", + "entities-count": "Contagem de entidades", + "alarms-count": "Contagem de alarmes", + "aliases": "Aliases de entidade", + "aliases-short": "Aliases", "entity-alias": "Alias de entidade", - "unable-delete-entity-alias-title": "Impossível excluir alias de entidade", - "unable-delete-entity-alias-text": "Não é possível excluir o alias de entidade '{{entityAlias}}' porque ele é usado pelo(s) seguinte(s) widget(s):
{{widgetsList}}", - "duplicate-alias-error": "Alias '{{alias}}' duplicado encontrado.
Os aliases de entidades devem ser exclusivos no dashboard.", + "unable-delete-entity-alias-title": "Não é possível excluir o alias de entidade", + "unable-delete-entity-alias-text": "O alias de entidade '{{entityAlias}}' não pode ser excluído pois é utilizado pelo(s) seguinte(s) widget(s):
{{widgetsList}}", + "duplicate-alias-error": "Alias duplicado encontrado '{{alias}}'.
Os aliases de entidade devem ser únicos no dashboard.", "missing-entity-filter-error": "Filtro ausente para o alias '{{alias}}'.", - "configure-alias": "Configurar alias de '{{alias}}'", + "configure-alias": "Configurar alias '{{alias}}'", "alias": "Alias", "alias-required": "O alias de entidade é obrigatório.", "remove-alias": "Remover alias de entidade", "add-alias": "Adicionar alias de entidade", + "edit-alias": "Editar alias de entidade", "entity-list": "Lista de entidades", "entity-type": "Tipo de entidade", - "entity-types": "Tipos de entidades", - "entity-type-list": "Lista de tipos de entidades", + "entity-types": "Tipos de entidade", + "entity-type-list": "Lista de tipos de entidade", "any-entity": "Qualquer entidade", + "add-entity-type": "Adicionar tipo de entidade", "enter-entity-type": "Inserir tipo de entidade", - "no-entities-matching": "Nenhuma entidade encontrada que coincida com '{{entity}}'.", - "no-entity-types-matching": "Nenhum tipo de entidade encontrado que coincida com '{{entityType}}'.", - "name-starts-with": "O nome começa com", + "no-entities-matching": "Nenhuma entidade correspondente a '{{entity}}' foi encontrada.", + "no-entities-text": "Nenhuma entidade encontrada", + "no-entity-types-matching": "Nenhum tipo de entidade correspondente a '{{entityType}}' foi encontrado.", + "name-starts-with": "Expressão de nome", + "help-text": "Use '%' conforme necessário: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Usar filtro", "entity-list-empty": "Nenhuma entidade selecionada.", - "entity-name-filter-required": "O filtro do nome de entidade é obrigatório.", - "entity-name-filter-no-entity-matched": "Nenhuma entidade encontrada que comece com '{{entity}}'.", - "all-subtypes": "Tudo", + "entity-type-list-required": "Pelo menos um tipo de entidade deve ser selecionado.", + "entity-name-filter-required": "O filtro de nome de entidade é obrigatório.", + "entity-name-filter-no-entity-matched": "Nenhuma entidade começando com '{{entity}}' foi encontrada.", + "all-subtypes": "Todos", "select-entities": "Selecionar entidades", "no-aliases-found": "Nenhum alias encontrado.", "no-alias-matching": "'{{alias}}' não encontrado.", - "create-new-alias": "Criar um novo!", + "create-new-alias": "Criar novo!", + "create-new": "Criar novo", "key": "Chave", "key-name": "Nome da chave", - "no-keys-found": "Nenhuma chave encontrado.", + "no-keys-found": "Nenhuma chave encontrada.", "no-key-matching": "'{{key}}' não encontrado.", - "create-new-key": "Criar um novo!", + "create-new-key": "Criar novo!", "type": "Tipo", "type-required": "O tipo de entidade é obrigatório.", "type-device": "Dispositivo", "type-devices": "Dispositivos", - "list-of-devices": "{ count, plural, =1 {One device} other {List of # devices} }", + "list-of-devices": "{ count, plural, =1 {Um dispositivo} other {Lista de # dispositivos} }", "device-name-starts-with": "Dispositivos cujos nomes começam com '{{prefix}}'", + "type-device-profile": "Perfil do dispositivo", + "type-device-profiles": "Perfis do dispositivo", + "clear-selected-profiles": "Limpar perfis selecionados", + "list-of-device-profiles": "{ count, plural, =1 {Um perfil do dispositivo} other {Lista de # perfis do dispositivo} }", + "device-profile-name-starts-with": "Perfis do dispositivo cujos nomes começam com '{{prefix}}'", + "type-asset-profile": "Perfil do ativo", + "type-asset-profiles": "Perfis do ativo", + "list-of-asset-profiles": "{ count, plural, =1 {Um perfil do ativo} other {Lista de # perfis do ativo} }", + "asset-profile-name-starts-with": "Perfis do ativo cujos nomes começam com '{{prefix}}'", "type-asset": "Ativo", "type-assets": "Ativos", - "list-of-assets": "{ count, plural, =1 {One asset} other {List of # assets} }", + "list-of-assets": "{ count, plural, =1 {Um ativo} other {Lista de # ativos} }", "asset-name-starts-with": "Ativos cujos nomes começam com '{{prefix}}'", - "type-entity-view": "Exibição de entidade", - "type-entity-views": "Exibições de entidades", - "list-of-entity-views": "{ count, plural, =1 {One entity view} other {List of # entity views} }", - "entity-view-name-starts-with": "Exibições de entidades cujos nomes começam com '{{prefix}}'", + "type-entity-view": "Visualização de entidade", + "type-entity-views": "Visualizações de entidade", + "list-of-entity-views": "{ count, plural, =1 {Uma visualização de entidade} other {Lista de # visualizações de entidade} }", + "entity-view-name-starts-with": "Visualizações de entidade cujos nomes começam com '{{prefix}}'", "type-rule": "Regra", "type-rules": "Regras", - "list-of-rules": "{ count, plural, =1 {One rule} other {List of # rules} }", + "list-of-rules": "{ count, plural, =1 {Uma regra} other {Lista de # regras} }", "rule-name-starts-with": "Regras cujos nomes começam com '{{prefix}}'", - "type-plugin": "Plug-in", - "type-plugins": "Plug-ins", - "list-of-plugins": "{ count, plural, =1 {One plugin} other {List of # plugins} }", - "plugin-name-starts-with": "Plug-ins cujos nomes começam com '{{prefix}}'", - "type-tenant": "Locatário", - "type-tenants": "Locatários", - "list-of-tenants": "{ count, plural, =1 {One tenant} other {List of # tenants} }", - "tenant-name-starts-with": "Locatários cujos nomes começam com '{{prefix}}'", + "type-plugin": "Plugin", + "type-plugins": "Plugins", + "list-of-plugins": "{ count, plural, =1 {Um plugin} other {Lista de # plugins} }", + "plugin-name-starts-with": "Plugins cujos nomes começam com '{{prefix}}'", + "type-tenant": "Tenant", + "type-tenants": "Tenants", + "list-of-tenants": "{ count, plural, =1 {Um tenant} other {Lista de # tenants} }", + "tenant-name-starts-with": "Tenants cujos nomes começam com '{{prefix}}'", + "type-tenant-profile": "Perfil do tenant", + "type-tenant-profiles": "Perfis do tenant", + "list-of-tenant-profiles": "{ count, plural, =1 {Um perfil do tenant} other {Lista de # perfis do tenant} }", + "tenant-profile-name-starts-with": "Perfis do tenant cujos nomes começam com '{{prefix}}'", "type-customer": "Cliente", "type-customers": "Clientes", - "list-of-customers": "{ count, plural, =1 {One customer} other {List of # customers} }", + "list-of-customers": "{ count, plural, =1 {Um cliente} other {Lista de # clientes} }", "customer-name-starts-with": "Clientes cujos nomes começam com '{{prefix}}'", "type-user": "Usuário", "type-users": "Usuários", - "list-of-users": "{ count, plural, =1 {One user} other {List of # users} }", + "list-of-users": "{ count, plural, =1 {Um usuário} other {Lista de # usuários} }", "user-name-starts-with": "Usuários cujos nomes começam com '{{prefix}}'", "type-dashboard": "Dashboard", "type-dashboards": "Dashboards", - "list-of-dashboards": "{ count, plural, =1 {One dashboard} other {List of # dashboards} }", + "list-of-dashboards": "{ count, plural, =1 {Um dashboard} other {Lista de # dashboards} }", "dashboard-name-starts-with": "Dashboards cujos nomes começam com '{{prefix}}'", "type-alarm": "Alarme", "type-alarms": "Alarmes", - "list-of-alarms": "{ count, plural, =1 {One alarms} other {List of # alarms} }", + "list-of-alarms": "{ count, plural, =1 {Um alarme} other {Lista de # alarmes} }", "alarm-name-starts-with": "Alarmes cujos nomes começam com '{{prefix}}'", "type-rulechain": "Cadeia de regras", "type-rulechains": "Cadeias de regras", - "list-of-rulechains": "{ count, plural, =1 {One rule chain} other {List of # rule chains} }", + "list-of-rulechains": "{ count, plural, =1 {Uma cadeia de regras} other {Lista de # cadeias de regras} }", "rulechain-name-starts-with": "Cadeias de regras cujos nomes começam com '{{prefix}}'", "type-rulenode": "Nó de regra", - "type-rulenodes": "Nós de regras", - "list-of-rulenodes": "{ count, plural, =1 {One rule node} other {List of # rule nodes} }", - "rulenode-name-starts-with": "Nós de regras cujos nomes começam com '{{prefix}}'", + "type-rulenodes": "Nós de regra", + "list-of-rulenodes": "{ count, plural, =1 {Um nó de regra} other {Lista de # nós de regra} }", + "rulenode-name-starts-with": "Nós de regra cujos nomes começam com '{{prefix}}'", "type-current-customer": "Cliente atual", - "type-current-tenant": "Locatário atual", + "type-current-tenant": "Tenant atual", "type-current-user": "Usuário atual", - "type-current-user-owner": "Proprietário de usuário atual", + "type-current-user-owner": "Proprietário do usuário atual", + "type-calculated-field": "Campo calculado", + "type-calculated-fields": "Campos calculados", + "type-ai-model": "Modelo de IA", + "type-ai-models": "Modelos de IA", + "type-widgets-bundle": "Conjunto de widgets", + "type-widgets-bundles": "Conjuntos de widgets", + "list-of-widgets-bundles": "{ count, plural, =1 {Um conjunto de widgets} other {Lista de # conjuntos de widgets} }", + "type-widget": "Widget", + "type-widgets": "Widgets", + "list-of-widgets": "{ count, plural, =1 {Um widget} other {Lista de # widgets} }", "search": "Pesquisar entidades", - "selected-entities": "{ count, plural, =1 {1 entity} other {# entities} } selecionado(s)", + "selected-entities": "{ count, plural, =1 {1 entidade} other {# entidades} } selecionada(s)", "entity-name": "Nome da entidade", - "entity-label": "Etiqueta de entidade", - "details": "Detalhes de entidades", + "entity-label": "Rótulo da entidade", + "details": "Detalhes da entidade", "no-entities-prompt": "Nenhuma entidade encontrada", - "no-data": "Nenhum dado para exibição", - "columns-to-display": "Colunas para Exibição" + "no-data": "Nenhum dado para exibir", + "columns-to-display": "Colunas a exibir", + "type-api-usage-state": "Estado de uso da API", + "type-edge": "Edge", + "type-edges": "Edges", + "list-of-edges": "{ count, plural, =1 {Um edge} other {Lista de # edges} }", + "edge-name-starts-with": "Edges cujos nomes começam com '{{prefix}}'", + "version-conflict": { + "message": "Deseja sobrescrever a versão existente ou descartar as alterações e carregar a versão mais recente?", + "link": "Você pode baixar sua versão do {{entityType}} usando este", + "overwrite": "Sobrescrever versão", + "discard": "Descartar alterações" + }, + "type-tb-resource": "Recurso", + "type-tb-resources": "Recursos", + "list-of-tb-resources": "{ count, plural, =1 {Um recurso} other {Lista de # recursos} }", + "type-ota-package": "Pacote OTA", + "type-ota-packages": "Pacotes OTA", + "list-of-ota-packages": "{ count, plural, =1 {Um pacote OTA} other {Lista de # pacotes OTA} }", + "type-rpc": "RPC", + "type-queue": "Fila", + "type-queue-stats": "Estatísticas da fila", + "type-queues-stats": "Estatísticas das filas", + "type-notification": "Notificação", + "type-notification-rule": "Regra de notificação", + "type-notification-rules": "Regras de notificação", + "list-of-notification-rules": "{ count, plural, =1 {Uma regra de notificação} other {Lista de # regras de notificação} }", + "type-notification-target": "Destinatário de notificação", + "type-notification-targets": "Destinatários de notificação", + "list-of-notification-targets": "{ count, plural, =1 {Um destinatário de notificação} other {Lista de # destinatários de notificação} }", + "type-notification-request": "Solicitação de notificação", + "type-notification-template": "Modelo de notificação", + "type-notification-templates": "Modelos de notificação", + "list-of-notification-templates": "{ count, plural, =1 {Um modelo de notificação} other {Lista de # modelos de notificação} }", + "link": "link", + "type-oauth2-client": "Cliente OAuth 2.0", + "type-oauth2-clients": "Clientes OAuth 2.0", + "list-of-oauth2-clients": "{ count, plural, =1 {Um cliente OAuth 2.0} other {Lista de # clientes OAuth 2.0} }", + "type-domain": "Domínio", + "type-domains": "Domínios", + "list-of-domains": "{ count, plural, =1 {Um domínio} other {Lista de # domínios} }", + "type-mobile-app": "Aplicativo móvel", + "type-mobile-apps": "Aplicativos móveis", + "list-of-mobile-apps": "{ count, plural, =1 {Um aplicativo móvel} other {Lista de # aplicativos móveis} }", + "type-mobile-app-bundle": "Pacote móvel", + "type-mobile-app-bundles": "Pacotes móveis", + "list-of-mobile-app-bundles": "{ count, plural, =1 {Um pacote móvel} other {Lista de # pacotes móveis} }" }, "entity-field": { - "created-time": "Hora de criação", + "created-time": "Data de criação", "name": "Nome", "type": "Tipo", "first-name": "Nome", "last-name": "Sobrenome", - "email": "E-mail", + "email": "Email", "title": "Título", "country": "País", "state": "Estado", @@ -877,287 +2718,321 @@ "address2": "Endereço 2", "zip": "CEP", "phone": "Telefone", - "label": "Etiqueta" + "label": "Rótulo", + "queue-name": "Nome da fila", + "service-id": "ID do serviço", + "owner-name": "Nome do proprietário", + "owner-type": "Tipo do proprietário" }, "entity-view": { - "entity-view": "Exibição de entidade", - "entity-view-required": "A exibição de entidade é obrigatória.", - "entity-views": "Exibições de entidades", - "management": "Habilitar gerenciamento de exibições", - "view-entity-views": "Visualizar exibições de entidades", - "entity-view-alias": "Alias de exibição de entidade", - "aliases": "Aliases de exibições de entidades", + "entity-view": "Visualização de entidade", + "entity-view-required": "Visualização de entidade é obrigatória.", + "entity-views": "Visualizações de entidade", + "management": "Gerenciamento de visualização de entidade", + "view-entity-views": "Visualizar visualizações de entidade", + "entity-view-alias": "Alias de visualização de entidade", + "aliases": "Aliases de visualização de entidade", "no-alias-matching": "'{{alias}}' não encontrado.", "no-aliases-found": "Nenhum alias encontrado.", "no-key-matching": "'{{key}}' não encontrado.", - "no-keys-found": "Nenhuma chave encontrado.", + "no-keys-found": "Nenhuma chave encontrada.", "create-new-alias": "Criar um novo!", "create-new-key": "Criar um novo!", - "duplicate-alias-error": "Alias '{{alias}}' duplicado encontrado.
Os aliases de exibições de entidades devem ser exclusivos no dashboard.", - "configure-alias": "Configurar alias de '{{alias}}'", - "no-entity-views-matching": "Nenhuma exibição de entidade encontrada que coincida com '{{entity}}'.", + "duplicate-alias-error": "Alias duplicado encontrado '{{alias}}'.
Os aliases de visualização de entidade devem ser únicos no dashboard.", + "configure-alias": "Configurar alias '{{alias}}'", + "no-entity-views-matching": "Nenhuma visualização de entidade correspondente a '{{entity}}' foi encontrada.", "public": "Público", "alias": "Alias", - "alias-required": "O alias de exibição de entidade é obrigatório.", - "remove-alias": "Remover alias de exibição de entidade", - "add-alias": "Adicionar alias de exibição de entidade", - "name-starts-with": "O nome da exibição de entidade começa com", - "entity-view-list": "Lista de exibições de entidades", + "alias-required": "O alias de visualização de entidade é obrigatório.", + "remove-alias": "Remover alias de visualização de entidade", + "add-alias": "Adicionar alias de visualização de entidade", + "name-starts-with": "Expressão de nome de visualização de entidade", + "help-text": "Use '%' conforme necessário: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", + "entity-view-list": "Lista de visualizações de entidade", "use-entity-view-name-filter": "Usar filtro", - "entity-view-list-empty": "Nenhuma exibição de entidade selecionada.", - "entity-view-name-filter-required": "O filtro de nomes de exibições de entidades é obrigatório.", - "entity-view-name-filter-no-entity-view-matched": "Nenhuma exibição de entidade encontrada que comece com '{{entityView}}'.", - "add": "Adicionar exibição de entidade", - "entity-view-public": "A exibição de entidade é pública", - "assign-to-customer": "Atribuir a cliente", - "assign-entity-view-to-customer": "Atribuir Exibição(ões) de entidade(s) a Cliente", - "assign-entity-view-to-customer-text": "Selecione as exibições de entidades a serem atribuídas ao cliente", - "no-entity-views-text": "Nenhuma exibição de entidade encontrada", - "assign-to-customer-text": "Selecione o cliente para atribuir a(s) exibição(ões) de entidade(s)", - "entity-view-details": "Detalhes de exibições de entidades", - "add-entity-view-text": "Adicionar nova exibição de entidade", - "delete": "Excluir exibição de entidade", - "assign-entity-views": "Atribuir exibições de entidades", - "assign-entity-views-text": "Atribuir { count, plural, =1 {1 entity view} other {# entity views} } a cliente", - "delete-entity-views": "Excluir exibições de entidades", - "unassign-from-customer": "Remover atribuição a cliente", - "unassign-entity-views": "Remover atribuição de exibições de entidades", - "unassign-entity-views-action-title": "Remover atribuição de { count, plural, =1 {1 entity view} other {# entity views} } a cliente", - "assign-new-entity-view": "Atribuir nova exibição de entidade", - "delete-entity-view-title": "Tem certeza de que deseja excluir a exibição de entidade '{{entityViewName}}'?", - "delete-entity-view-text": "Cuidado, após confirmar, não será possível recuperar a exibição de entidade e todos os dados associados.", - "delete-entity-views-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 entity view} other {# entity views} }?", - "delete-entity-views-action-title": "Excluir { count, plural, =1 {1 entity view} other {# entity views} }", - "delete-entity-views-text": "Cuidado, após confirmar, todas as exibições de entidades selecionadas serão removidas e não será possível recuperar nenhum dado associado.", - "unassign-entity-view-title": "Tem certeza de que deseja remover a atribuição da exibição de entidade '{{entityViewName}}'?", - "unassign-entity-view-text": "Após confirmar, a atribuição da exibição de entidade será removida e ela não poderá ser acessada pelo cliente.", - "unassign-entity-view": "Remover atribuição de exibição de entidade", - "unassign-entity-views-title": "Tem certeza de que deseja remover a atribuição de { count, plural, =1 {1 entity view} other {# entity views} }?", - "unassign-entity-views-text": "Após confirmar, a atribuição de todas as exibições de entidade selecionadas será removida e elas não poderão ser acessadas pelo cliente.", - "entity-view-type": "Tipo de exibições de entidades", - "entity-view-type-required": "O tipo de exibição de entidade é obrigatório.", - "select-entity-view-type": "Selecionar tipo de exibição de entidade", - "enter-entity-view-type": "Inserir tipo de exibição de entidade", - "any-entity-view": "Qualquer exibição de entidade", - "no-entity-view-types-matching": "Nenhum tipo de exibição de entidade encontrado que coincida com '{{entitySubtype}}'.", - "entity-view-type-list-empty": "Nenhum tipo de exibição de entidade selecionado.", - "entity-view-types": "Tipos de exibição de entidade", - "created-time": "Hora de criação", + "entity-view-list-empty": "Nenhuma visualização de entidade selecionada.", + "entity-view-name-filter-required": "O filtro de nome de visualização de entidade é obrigatório.", + "entity-view-name-filter-no-entity-view-matched": "Nenhuma visualização de entidade começando com '{{entityView}}' foi encontrada.", + "add": "Adicionar visualização de entidade", + "entity-view-public": "A visualização de entidade é pública", + "assign-to-customer": "Atribuir ao cliente", + "assign-entity-view-to-customer": "Atribuir visualização(ões) de entidade ao cliente", + "assign-entity-view-to-customer-text": "Selecione as visualizações de entidade para atribuir ao cliente", + "no-entity-views-text": "Nenhuma visualização de entidade encontrada", + "assign-to-customer-text": "Selecione o cliente para atribuir a(s) visualização(ões) de entidade", + "entity-view-details": "Detalhes da visualização de entidade", + "add-entity-view-text": "Adicionar nova visualização de entidade", + "delete": "Excluir visualização de entidade", + "assign-entity-views": "Atribuir visualizações de entidade", + "assign-entity-views-text": "Atribuir { count, plural, =1 {1 visualização de entidade} other {# visualizações de entidade} } ao cliente", + "delete-entity-views": "Excluir visualizações de entidade", + "make-public": "Tornar visualização de entidade pública", + "make-private": "Tornar visualização de entidade privada", + "unassign-from-customer": "Desatribuir do cliente", + "unassign-entity-views": "Desatribuir visualizações de entidade", + "unassign-entity-views-action-title": "Desatribuir { count, plural, =1 {1 visualização de entidade} other {# visualizações de entidade} } do cliente", + "assign-new-entity-view": "Atribuir nova visualização de entidade", + "delete-entity-view-title": "Tem certeza de que deseja excluir a visualização de entidade '{{entityViewName}}'?", + "delete-entity-view-text": "Atenção: após a confirmação, a visualização de entidade e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-entity-views-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 visualização de entidade} other {# visualizações de entidade} }?", + "delete-entity-views-action-title": "Excluir { count, plural, =1 {1 visualização de entidade} other {# visualizações de entidade} }", + "delete-entity-views-text": "Atenção: após a confirmação, todas as visualizações de entidade selecionadas serão removidas e todos os dados relacionados se tornarão irrecuperáveis.", + "make-public-entity-view-title": "Tem certeza de que deseja tornar a visualização de entidade '{{entityViewName}}' pública?", + "make-public-entity-view-text": "Após a confirmação, a visualização de entidade e todos os seus dados serão tornados públicos e acessíveis por outros.", + "make-private-entity-view-title": "Tem certeza de que deseja tornar a visualização de entidade '{{entityViewName}}' privada?", + "make-private-entity-view-text": "Após a confirmação, a visualização de entidade e todos os seus dados serão tornados privados e não serão acessíveis por outros.", + "unassign-entity-view-title": "Tem certeza de que deseja desatribuir a visualização de entidade '{{entityViewName}}'?", + "unassign-entity-view-text": "Após a confirmação, a visualização de entidade será desatribuída e não estará acessível ao cliente.", + "unassign-entity-view": "Desatribuir visualização de entidade", + "unassign-entity-views-title": "Tem certeza de que deseja desatribuir { count, plural, =1 {1 visualização de entidade} other {# visualizações de entidade} }?", + "unassign-entity-views-text": "Após a confirmação, todas as visualizações de entidade selecionadas serão desatribuídas e não estarão acessíveis ao cliente.", + "entity-view-type": "Tipo de visualização de entidade", + "entity-view-type-required": "O tipo de visualização de entidade é obrigatório.", + "select-entity-view-type": "Selecionar tipo de visualização de entidade", + "enter-entity-view-type": "Inserir tipo de visualização de entidade", + "any-entity-view": "Qualquer visualização de entidade", + "no-entity-view-types-matching": "Nenhum tipo de visualização de entidade correspondente a '{{entitySubtype}}' foi encontrado.", + "entity-view-type-list-empty": "Nenhum tipo de visualização de entidade selecionado.", + "entity-view-types": "Tipos de visualização de entidade", + "created-time": "Data de criação", "name": "Nome", - "name-required": "O nome é obrigatório.", + "name-required": "Nome é obrigatório.", + "name-max-length": "O nome deve ter menos de 256 caracteres", + "type-max-length": "O tipo de visualização de entidade deve ter menos de 256 caracteres", "description": "Descrição", "events": "Eventos", "details": "Detalhes", - "copyId": "Copiar ID de exibição de entidade", - "idCopiedMessage": "O ID de exibição de entidade foi copiado para a área de transferência", + "copyId": "Copiar Id da visualização de entidade", + "idCopiedMessage": "O Id da visualização de entidade foi copiado para a área de transferência", "assignedToCustomer": "Atribuído ao cliente", - "unable-entity-view-device-alias-title": "Impossível excluir alias de exibição de entidade", - "unable-entity-view-device-alias-text": "Não é possível excluir o alias do dispositivo '{{entityViewAlias}}' porque ele é usado pelo(s) seguinte(s) widget(s):
{{widgetsList}}", - "select-entity-view": "Selecionar exibição de entidade", - "make-public": "Tornar exibição de entidade pública", - "make-private": "Tornar exibição de entidade privada", - "start-date": "Data de início", + "unable-entity-view-device-alias-title": "Não é possível excluir o alias de visualização de entidade", + "unable-entity-view-device-alias-text": "O alias de dispositivo '{{entityViewAlias}}' não pode ser excluído pois é usado pelo(s) seguinte(s) widget(s):
{{widgetsList}}", + "select-entity-view": "Selecionar visualização de entidade", "start-ts": "Hora de início", - "end-date": "Data de término", "end-ts": "Hora de término", - "date-limits": "Limites de datas", + "date-limits": "Limites de data", "client-attributes": "Atributos do cliente", "shared-attributes": "Atributos compartilhados", "server-attributes": "Atributos do servidor", - "timeseries": "Intervalos de tempo", + "timeseries": "Séries temporais", "client-attributes-placeholder": "Atributos do cliente", "shared-attributes-placeholder": "Atributos compartilhados", "server-attributes-placeholder": "Atributos do servidor", - "timeseries-placeholder": "Intervalos de tempo", - "target-entity": "Entidade alvo", + "timeseries-placeholder": "Séries temporais", + "target-entity": "Entidade de destino", "attributes-propagation": "Propagação de atributos", - "attributes-propagation-hint": "A exibição de entidade copiará automaticamente atributos especificados da entidade alvo sempre que essa exibição de entidade for salva ou atualizada. Por questões de desempenho, os atributos da entidade alvo não são propagados para a exibição de entidade em cada alteração de atributo. A propagação automática pode ser habilitada configurando o nó de regra \"copiar para exibição\" na cadeia de regras e vinculando mensagens de \"Pós-Atributos\" e \"Atributos Atualizados\" ao novo nó de regra.", - "timeseries-data": "Dados de intervalos de tempo", - "timeseries-data-hint": "Configurar chaves de dados de intervalos de tempo da entidade alvo que estará acessível para a exibição de entidade. Esses dados de intervalo de tempo são apenas de leitura.", - "make-public-entity-view-title": "Tem certeza de que deseja tornar a exibição de entidade '{{entityViewName}}' pública?", - "make-public-entity-view-text": "Após confirmar, a exibição de entidade e todos os dados associados a ela se tornarão públicos e poderão ser acessados por outros.", - "make-private-entity-view-title": "Tem certeza de que deseja tornar a exibição de entidade '{{entityViewName}}' privada?", - "make-private-entity-view-text": "Após confirmar, a exibição de entidade e todos os dados associados a ela se tornarão privados e não poderão ser acessados por outros.", - "search": "Pesquisar exibições de entidades", - "selected-entity-views": "{ count, plural, =1 {1 entity view} other {# entity views} } selecionado(s)" + "attributes-propagation-hint": "A visualização de entidade copiará automaticamente os atributos especificados da entidade de destino cada vez que você salvar ou atualizar esta visualização de entidade. Por razões de desempenho, os atributos da entidade de destino não são propagados para a visualização de entidade a cada alteração de atributo. Você pode habilitar a propagação automática configurando o nó de regra \"copy to view\" na sua cadeia de regras e vinculando as mensagens \"Post attributes\" e \"Attributes Updated\" ao novo nó de regra.", + "timeseries-data": "Dados de séries temporais", + "timeseries-data-hint": "Configure as chaves de dados de séries temporais da entidade de destino que estarão acessíveis à visualização de entidade. Esses dados de séries temporais são somente leitura.", + "search": "Pesquisar visualizações de entidade", + "selected-entity-views": "{ count, plural, =1 {1 visualização de entidade} other {# visualizações de entidade} } selecionada(s)", + "assign-entity-view-to-edge": "Atribuir visualização(ões) de entidade ao Edge", + "assign-entity-view-to-edge-text": "Selecione as visualizações de entidade para atribuir ao edge", + "unassign-entity-view-from-edge-title": "Tem certeza de que deseja desatribuir a visualização de entidade '{{entityViewName}}'?", + "unassign-entity-view-from-edge-text": "Após a confirmação, a visualização de entidade será desatribuída e não estará acessível ao edge.", + "unassign-entity-views-from-edge-action-title": "Desatribuir { count, plural, =1 {1 visualização de entidade} other {# visualizações de entidade} } do edge", + "unassign-entity-view-from-edge": "Desatribuir visualização de entidade", + "unassign-entity-views-from-edge-title": "Tem certeza de que deseja desatribuir { count, plural, =1 {1 visualização de entidade} other {# visualizações de entidade} }?", + "unassign-entity-views-from-edge-text": "Após a confirmação, todas as visualizações de entidade selecionadas serão desatribuídas e não estarão acessíveis ao edge." }, "event": { "event-type": "Tipo de evento", + "events-filter": "Filtro de eventos", + "clean-events": "Limpar eventos", "type-error": "Erro", "type-lc-event": "Evento de ciclo de vida", "type-stats": "Estatísticas", "type-debug-rule-node": "Depuração", "type-debug-rule-chain": "Depuração", + "type-debug-calculated-field": "Depuração", + "arguments": "Argumentos", + "result": "Resultado", "no-events-prompt": "Nenhum evento encontrado", "error": "Erro", "alarm": "Alarme", - "event-time": "Tempo de evento", + "event-time": "Hora do evento", "server": "Servidor", "body": "Corpo", "method": "Método", "type": "Tipo", - "message-id": "ID de mensagem", - "message-type": "Tipo de Mensagem", - "data-type": "Tipo de Dados", - "relation-type": "Tipo de Relação", "metadata": "Metadados", + "message": "Mensagem", + "message-id": "Id da mensagem", + "copy-message-id": "Copiar Id da mensagem", + "message-type": "Tipo de mensagem", + "data-type": "Tipo de dados", + "relation-type": "Tipo de relação", "data": "Dados", "event": "Evento", "status": "Status", - "success": "Êxito", + "success": "Sucesso", "failed": "Falhou", "messages-processed": "Mensagens processadas", - "errors-occurred": "Erros", - "all-events": "Tudo", - "entity-type": "Tipo de entidade" + "max-messages-processed": "Máximo de mensagens processadas", + "min-messages-processed": "Mínimo de mensagens processadas", + "errors-occurred": "Erros ocorridos", + "max-errors-occurred": "Máximo de erros ocorridos", + "min-errors-occurred": "Mínimo de erros ocorridos", + "min-value": "O valor mínimo é 0.", + "all-events": "Todos", + "has-error": "Contém erro", + "entity-id": "Id da entidade", + "copy-entity-id": "Copiar Id da entidade", + "entity-type": "Tipo de entidade", + "clear-filter": "Limpar filtro", + "clear-request-title": "Limpar todos os eventos", + "clear-request-text": "Tem certeza de que deseja limpar todos os eventos?", + "started": "Iniciado", + "updated": "Atualizado", + "stopped": "Parado" }, "extension": { "extensions": "Extensões", - "selected-extensions": "{ count, plural, =1 {1 extension} other {# extensions} } selecionado(s)", + "selected-extensions": "{ count, plural, =1 {1 extensão} other {# extensões} } selecionada(s)", "type": "Tipo", "key": "Chave", "value": "Valor", - "id": "ID", - "extension-id": "ID da extensão", + "id": "Id", + "extension-id": "Id da extensão", "extension-type": "Tipo de extensão", "transformer-json": "JSON *", - "unique-id-required": "O ID de extensão atual já existe.", + "unique-id-required": "O id da extensão atual já existe.", "delete": "Excluir extensão", "add": "Adicionar extensão", "edit": "Editar extensão", "delete-extension-title": "Tem certeza de que deseja excluir a extensão '{{extensionId}}'?", - "delete-extension-text": "Cuidado, após confirmar, não será possível recuperar a extensão e nenhum dado associado.", - "delete-extensions-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 extension} other {# extensions} }?", - "delete-extensions-text": "Cuidado, após confirmar, todas as extensões selecionadas serão removidas.", + "delete-extension-text": "Atenção: após a confirmação, a extensão e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-extensions-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 extensão} other {# extensões} }?", + "delete-extensions-text": "Atenção: após a confirmação, todas as extensões selecionadas serão removidas.", "converters": "Conversores", - "converter-id": "ID do conversor", + "converter-id": "Id do conversor", "configuration": "Configuração", - "converter-configurations": "Configurações de conversores", + "converter-configurations": "Configurações do conversor", "token": "Token de segurança", "add-converter": "Adicionar conversor", "add-config": "Adicionar configuração de conversor", - "device-name-expression": "Expressão do nome do dispositivo", - "device-type-expression": "Expressão do tipo de dispositivo", + "device-name-expression": "Expressão de nome do dispositivo", + "device-type-expression": "Expressão de tipo do dispositivo", "custom": "Personalizado", - "to-double": "Duplicar", + "to-double": "Para Double", "transformer": "Transformador", - "json-required": "O json do transformador é obrigatório", - "json-parse": "Impossível analisar json do transformador", + "json-required": "O JSON do transformador é obrigatório.", + "json-parse": "Não foi possível analisar o JSON do transformador.", "attributes": "Atributos", "add-attribute": "Adicionar atributo", "add-map": "Adicionar elemento de mapeamento", - "timeseries": "Intervalos de tempo", - "add-timeseries": "Adicionar intervalos de tempo", - "field-required": "O campo é obrigatório", + "timeseries": "Séries temporais", + "add-timeseries": "Adicionar séries temporais", + "field-required": "Campo é obrigatório", "brokers": "Brokers", "add-broker": "Adicionar broker", "host": "Host", "port": "Porta", - "port-range": "A porta deve estar em um intervalo de 1 a 65535.", + "port-range": "A porta deve estar no intervalo de 1 a 65535.", "ssl": "Ssl", "credentials": "Credenciais", "username": "Nome de usuário", "password": "Senha", - "retry-interval": "Intervalo de repetição em milissegundos", + "retry-interval": "Intervalo de nova tentativa em milissegundos", "anonymous": "Anônimo", "basic": "Básico", "pem": "PEM", - "ca-cert": "Arquivo de certificado da Autoridade de Certificação *", + "ca-cert": "Arquivo de certificado CA *", "private-key": "Arquivo de chave privada *", "cert": "Arquivo de certificado *", "no-file": "Nenhum arquivo selecionado.", - "drop-file": "Solte um arquivo ou clique para selecionar um arquivo para carregar.", + "drop-file": "Arraste um arquivo ou clique para selecionar um arquivo para upload.", "mapping": "Mapeamento", "topic-filter": "Filtro de tópico", "converter-type": "Tipo de conversor", "converter-json": "Json", - "json-name-expression": "Expressão json do nome do dispositivo", - "topic-name-expression": "Expressão de tópico do nome do dispositivo", - "json-type-expression": "Expressão json do tipo de dispositivo", - "topic-type-expression": "Expressão de tópico do tipo de dispositivo", - "attribute-key-expression": "Expressão da chave de atributo", - "attr-json-key-expression": "Expressão json da chave de atributo", - "attr-topic-key-expression": "Expressão de tópico da chave de atributo", - "request-id-expression": "Expressão de ID da solicitação", - "request-id-json-expression": "Expressão json de ID da solicitação", - "request-id-topic-expression": "Expressão de tópico de ID da solicitação", + "json-name-expression": "Expressão JSON de nome do dispositivo", + "topic-name-expression": "Expressão de tópico de nome do dispositivo", + "json-type-expression": "Expressão JSON de tipo do dispositivo", + "topic-type-expression": "Expressão de tópico de tipo do dispositivo", + "attribute-key-expression": "Expressão de chave de atributo", + "attr-json-key-expression": "Expressão JSON de chave de atributo", + "attr-topic-key-expression": "Expressão de tópico de chave de atributo", + "request-id-expression": "Expressão de id de solicitação", + "request-id-json-expression": "Expressão JSON de id de solicitação", + "request-id-topic-expression": "Expressão de tópico de id de solicitação", "response-topic-expression": "Expressão de tópico de resposta", - "value-expression": "Expressão do valor", + "value-expression": "Expressão de valor", "topic": "Tópico", - "timeout": "Tempo limite em milissegundos", - "converter-json-required": "Json do conversor é obrigatório.", - "converter-json-parse": "Impossível analisar json do conversor", - "filter-expression": "Expressão do filtro", + "timeout": "Tempo Limite em milissegundos", + "converter-json-required": "O JSON do conversor é obrigatório.", + "converter-json-parse": "Não foi possível analisar o JSON do conversor.", + "filter-expression": "Expressão de filtro", "connect-requests": "Solicitações de conexão", "add-connect-request": "Adicionar solicitação de conexão", "disconnect-requests": "Solicitações de desconexão", "add-disconnect-request": "Adicionar solicitação de desconexão", "attribute-requests": "Solicitações de atributo", "add-attribute-request": "Adicionar solicitação de atributo", - "attribute-updates": "Atualizações de atributos", + "attribute-updates": "Atualizações de atributo", "add-attribute-update": "Adicionar atualização de atributo", - "server-side-rpc": "RPC no lado do servidor", - "add-server-side-rpc-request": "Adicionar solicitação de RPC no lado do servidor", - "device-name-filter": "Filtro do nome do dispositivo", + "server-side-rpc": "RPC do lado do servidor", + "add-server-side-rpc-request": "Adicionar solicitação RPC do lado do servidor", + "device-name-filter": "Filtro de nome do dispositivo", "attribute-filter": "Filtro de atributo", "method-filter": "Filtro de método", "request-topic-expression": "Expressão de tópico de solicitação", "response-timeout": "Tempo limite de resposta em milissegundos", "topic-expression": "Expressão de tópico", - "client-scope": "Escopo de cliente", + "client-scope": "Escopo do cliente", "add-device": "Adicionar dispositivo", "opc-server": "Servidores", "opc-add-server": "Adicionar servidor", - "opc-add-server-prompt": "Adicione servidor", - "opc-application-name": "Nome do aplicativo", - "opc-application-uri": "Uri do aplicativo", - "opc-scan-period-in-seconds": "Período de digitalização em segundos", + "opc-add-server-prompt": "Adicione um servidor", + "opc-application-name": "Nome da aplicação", + "opc-application-uri": "URI da aplicação", + "opc-scan-period-in-seconds": "Período de varredura em segundos", "opc-security": "Segurança", "opc-identity": "Identidade", "opc-keystore": "Keystore", "opc-type": "Tipo", "opc-keystore-type": "Tipo", - "opc-keystore-location": "Localização*", + "opc-keystore-location": "Localização *", "opc-keystore-password": "Senha", "opc-keystore-alias": "Alias", - "opc-keystore-key-password": "Senha principal", - "opc-device-node-pattern": "Padrão de nó de dispositivo", - "opc-device-name-pattern": "Padrão de nome de dispositivo", - "modbus-server": "Servidores/subordinados", - "modbus-add-server": "Adicionar servidor/subordinado", - "modbus-add-server-prompt": "Adicione servidor/subordinado", + "opc-keystore-key-password": "Senha da chave", + "opc-device-node-pattern": "Padrão de nó do dispositivo", + "opc-device-name-pattern": "Padrão de nome do dispositivo", + "modbus-server": "Servidores/escravos", + "modbus-add-server": "Adicionar servidor/escravo", + "modbus-add-server-prompt": "Adicione um servidor/escravo", "modbus-transport": "Transporte", "modbus-tcp-reconnect": "Reconectar automaticamente", - "modbus-rtu-over-tcp": "RTU sobre TCP", + "modbus-rtu-over-tcp": "RTU over TCP", "modbus-port-name": "Nome da porta serial", "modbus-encoding": "Codificação", "modbus-parity": "Paridade", "modbus-baudrate": "Taxa de transmissão", "modbus-databits": "Bits de dados", "modbus-stopbits": "Bits de parada", - "modbus-databits-range": "Os bits de dados devem estar em um intervalo de 7 a 8.", - "modbus-stopbits-range": "Os bits de parada devem estar em um intervalo de 1 a 2.", + "modbus-databits-range": "Os bits de dados devem estar no intervalo de 7 a 8.", + "modbus-stopbits-range": "Os bits de parada devem estar no intervalo de 1 a 2.", "modbus-unit-id": "ID da unidade", - "modbus-unit-id-range": "O ID da unidade deve estar em um intervalo de 1 a 247.", + "modbus-unit-id-range": "O ID da unidade deve estar no intervalo de 1 a 247.", "modbus-device-name": "Nome do dispositivo", - "modbus-poll-period": "Período de sondagem (ms)", - "modbus-attributes-poll-period": "Atributos do período de sondagem (ms)", - "modbus-timeseries-poll-period": "Intervalos de tempo do período de sondagem (ms)", - "modbus-poll-period-range": "O período de sondagem deve ser um valor positivo.", - "modbus-tag": "Etiqueta", + "modbus-poll-period": "Período de polling (ms)", + "modbus-attributes-poll-period": "Período de polling de atributos (ms)", + "modbus-timeseries-poll-period": "Período de polling de séries temporais (ms)", + "modbus-poll-period-range": "O período de polling deve ser um valor positivo.", + "modbus-tag": "Tag", "modbus-function": "Função", - "modbus-register-address": "Endereço do registro", - "modbus-register-address-range": "O endereço do registro deve estar em um intervalo de 0 a 65535.", - "modbus-register-bit-index": "Índice de bits", - "modbus-register-bit-index-range": "O índice de bits deve estar em um intervalo de 0 a 15.", - "modbus-register-count": "Contagem de registro", - "modbus-register-count-range": "A contagem de registro deve ser um valor positivo.", - "modbus-byte-order": "Ordem de byte", + "modbus-register-address": "Endereço do registrador", + "modbus-register-address-range": "O endereço do registrador deve estar no intervalo de 0 a 65535.", + "modbus-register-bit-index": "Índice de bit", + "modbus-register-bit-index-range": "O índice de bit deve estar no intervalo de 0 a 15.", + "modbus-register-count": "Contagem de registradores", + "modbus-register-count-range": "A contagem de registradores deve ser um valor positivo.", + "modbus-byte-order": "Ordem de bytes", "sync": { "status": "Status", "sync": "Sincronizar", - "not-sync": "Não sincronizar", - "last-sync-time": "Horário da última sincronização", + "not-sync": "Não sincronizado", + "last-sync-time": "Último horário de sincronização", "not-available": "Não disponível" }, "export-extensions-configuration": "Exportar configuração de extensões", @@ -1168,6 +3043,9 @@ "file": "Arquivo de extensões", "invalid-file-error": "Arquivo de extensão inválido" }, + "feature": { + "advanced-features": "Recursos avançados" + }, "filter": { "add": "Adicionar filtro", "edit": "Editar filtro", @@ -1175,16 +3053,20 @@ "name-required": "O nome do filtro é obrigatório.", "duplicate-filter": "Já existe um filtro com o mesmo nome.", "filters": "Filtros", - "unable-delete-filter-title": "Impossível excluir filtro", - "unable-delete-filter-text": "Não é possível excluir o filtro '{{filter}}' porque ele é usado pelo(s) seguinte(s) widget(s):
{{widgetsList}}", - "duplicate-filter-error": "Filtro '{{filter}}' duplicado encontrado.
Os filtros devem ser exclusivos no dashboard.", - "missing-key-filters-error": "Filtros chave ausentes para o filtro '{{filter}}'.", + "unable-delete-filter-title": "Não é possível excluir o filtro", + "unable-delete-filter-text": "O filtro '{{filter}}' não pode ser excluído pois é usado pelo(s) seguinte(s) widget(s):
{{widgetsList}}", + "duplicate-filter-error": "Filtro duplicado encontrado '{{filter}}'.
Os filtros devem ser únicos no dashboard.", + "missing-key-filters-error": "Filtros de chave ausentes para o filtro '{{filter}}'.", "filter": "Filtro", "editable": "Editável", + "editable-hint": "Permitir que o usuário altere o valor do filtro nos dashboards.", "no-filters-found": "Nenhum filtro encontrado.", + "no-filter-text": "Nenhum filtro especificado", + "add-filter-prompt": "Adicione um filtro", "no-filter-matching": "'{{filter}}' não encontrado.", "create-new-filter": "Criar um novo!", - "filter-required": "O filtro é obrigatório.", + "create-new": "Criar novo", + "filter-required": "Filtro é obrigatório.", "operation": { "operation": "Operação", "equal": "igual", @@ -1198,220 +3080,1334 @@ "greater-or-equal": "maior ou igual", "less-or-equal": "menor ou igual", "and": "e", - "or": "ou" + "or": "ou", + "in": "em", + "not-in": "não em" }, - "ignore-case": "Ignorar caixa", + "ignore-case": "ignorar maiúsculas/minúsculas", "value": "Valor", "remove-filter": "Remover filtro", + "duplicate-filter-action": "Duplicar filtro", + "preview": "Pré-visualização do filtro", "no-filters": "Nenhum filtro configurado", "add-filter": "Adicionar filtro", "add-complex-filter": "Adicionar filtro complexo", "add-complex": "Adicionar complexo", "complex-filter": "Filtro complexo", "edit-complex-filter": "Editar filtro complexo", - "edit-filter-user-params": "Editar parâmetros de usuário de predicado de filtro", - "user-parameters": "Parâmetros de usuário", - "display-label": "Etiqueta para exibição", - "order-priority": "Prioridade de ordem de campo", - "key-filter": "Filtro chave", - "key-filters": "Filtros chave", + "edit-filter-user-params": "Editar parâmetros de usuário do predicado do filtro", + "filter-user-params": "Parâmetros de usuário do predicado do filtro", + "user-parameters": "Parâmetros do usuário", + "display-label": "Rótulo de exibição", + "custom-label": "Rótulo personalizado", + "custom-label-hint": "Habilite para definir seu próprio rótulo para o filtro. Quando desabilitado, um rótulo será gerado automaticamente.", + "order-priority": "Ordem de exibição", + "key-filter": "Filtro de chave", + "key-filters": "Filtros de chave", "key-name": "Nome da chave", "key-name-required": "O nome da chave é obrigatório.", "key-type": { "key-type": "Tipo de chave", "attribute": "Atributo", - "timeseries": "Intervalos de tempo", - "entity-field": "Campo de entidade" + "timeseries": "Séries temporais", + "entity-field": "Campo de entidade", + "constant": "Constante", + "client-attribute": "Atributo do cliente", + "server-attribute": "Atributo do servidor", + "shared-attribute": "Atributo compartilhado" }, "value-type": { "value-type": "Tipo de valor", - "string": "Cadeia de caracteres", + "string": "String", "numeric": "Numérico", - "boolean": "Booliano", - "date-time": "Data/Hora" - }, - "value-type-required": "O tipo de valor chave é obrigatório.", - "key-value-type-change-title": "Tem certeza de que deseja alterar o tipo de valor chave?", - "key-value-type-change-message": "Se confirmar o novo tipo de valor, todos os filtros chave inseridos serão removidos.", - "no-key-filters": "Nenhum filtro chave configurado", - "add-key-filter": "Adicionar filtro chave", - "remove-key-filter": "Remover filtro chave", - "edit-key-filter": "Editar filtro chave", + "boolean": "Booleano", + "date-time": "Data e hora" + }, + "value-type-required": "O tipo de valor da chave é obrigatório.", + "key-value-type-change-title": "Tem certeza de que deseja alterar o tipo de valor da chave?", + "key-value-type-change-message": "Se confirmar o novo tipo de valor, todos os filtros de chave inseridos serão removidos.", + "no-key-filters": "Nenhum filtro de chave configurado", + "add-key-filter": "Adicionar filtro de chave", + "remove-key-filter": "Remover filtro de chave", + "edit-key-filter": "Editar filtro de chave", "date": "Data", "time": "Hora", - "current-tenant": "Locatário atual", + "current-tenant": "Tenant atual", "current-customer": "Cliente atual", "current-user": "Usuário atual", + "current-device": "Dispositivo atual", "default-value": "Valor padrão", + "default-comma-separated-values": "Valores padrão separados por vírgula", "dynamic-source-type": "Tipo de fonte dinâmica", - "no-dynamic-value": "Nenhum valor dinâmico", - "source-attribute": "Atributo da fonte", + "dynamic-value": "Valor dinâmico", + "no-dynamic-value": "Sem valor dinâmico", + "source-attribute": "Atributo de origem", "switch-to-dynamic-value": "Alternar para valor dinâmico", - "switch-to-default-value": "Alternar para valor padrão" + "switch-to-default-value": "Alternar para valor padrão", + "inherit-owner": "Herdar do proprietário", + "source-attribute-not-set": "Se o atributo de origem não estiver definido", + "unit": "Unidade" }, "fullscreen": { - "expand": "Expandir para tela inteira", - "exit": "Sair de tela inteira", - "toggle": "Alternar modo de tela inteira", - "fullscreen": "Tela inteira" + "expand": "Expandir para tela cheia", + "exit": "Sair da tela cheia", + "toggle": "Alternar modo de tela cheia", + "fullscreen": "Tela cheia" }, "function": { "function": "Função" }, "gateway": { - "create-new-gateway": "Criar um novo gateway", - "create-new-gateway-text": "Tem certeza de que deseja criar um novo gateway com o nome: '{{gatewayName}}'?", - "gateway": "Gateway", - "gateway-exists": "Já existe um dispositivo com o mesmo nome.", "gateway-name": "Nome do gateway", "gateway-name-required": "O nome do gateway é obrigatório.", - "gateway-saved": "A configuração do gateway foi salva corretamente.", + "gateways": "Gateways", + "create-new-gateway": "Criar um novo gateway", + "create-new-gateway-text": "Tem certeza de que deseja criar um novo gateway com o nome: '{{gatewayName}}'?", + "launch-command": "Comando de inicialização", "no-gateway-found": "Nenhum gateway encontrado.", "no-gateway-matching": " '{{item}}' não encontrado." }, "grid": { "delete-item-title": "Tem certeza de que deseja excluir este item?", - "delete-item-text": "Cuidado, após confirmar, não será possível recuperar este item e nenhum dado associado.", - "delete-items-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 item} other {# items} }?", - "delete-items-action-title": "Excluir { count, plural, =1 {1 item} other {# items} }", - "delete-items-text": "Cuidado, após confirmar, todos os itens selecionados serão removidos e não será possível recuperar nenhum dado associado.", + "delete-item-text": "Atenção: após a confirmação, este item e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-items-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 item} other {# itens} }?", + "delete-items-action-title": "Excluir { count, plural, =1 {1 item} other {# itens} }", + "delete-items-text": "Atenção: após a confirmação, todos os itens selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", "add-item-text": "Adicionar novo item", "no-items-text": "Nenhum item encontrado", "item-details": "Detalhes do item", "delete-item": "Excluir item", "delete-items": "Excluir itens", - "scroll-to-top": "Rolar para o início" + "scroll-to-top": "Rolar para o topo" }, "help": { - "goto-help-page": "Ir para a página de Ajuda" + "goto-help-page": "Ir para a página de ajuda", + "show-help": "Mostrar ajuda" }, "home": { - "home": "Página Inicial", + "home": "Início", "profile": "Perfil", - "logout": "Logout", + "logout": "Sair", "menu": "Menu", "avatar": "Avatar", - "open-user-menu": "Abrir menu de usuário" + "open-user-menu": "Abrir menu do usuário" + }, + "file-input": { + "browse-file": "Procurar arquivo", + "browse-files": "Procurar arquivos" + }, + "image": { + "gallery": "Galeria de imagens", + "search": "Pesquisar imagem", + "selected-images": "{ count, plural, =1 {1 imagem} other {# imagens} } selecionada(s)", + "created-time": "Data de criação", + "name": "Nome", + "name-required": "Nome é obrigatório.", + "resolution": "Resolução", + "size": "Tamanho", + "system": "Sistema", + "download-image": "Baixar imagem", + "export-image": "Exportar imagem para JSON", + "import-image": "Importar imagem de JSON", + "upload-image": "Fazer upload de imagem", + "edit-image": "Editar imagem", + "image-details": "Detalhes da imagem", + "no-images": "Nenhuma imagem encontrada", + "delete-image": "Excluir imagem", + "delete-image-title": "Tem certeza de que deseja excluir a imagem '{{imageTitle}}'?", + "delete-image-text": "Atenção: após a confirmação, a imagem se tornará irrecuperável.", + "delete-images-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 imagem} other {# imagens} }?", + "delete-images-text": "Atenção: após a confirmação, todas as imagens selecionadas serão removidas e todos os dados relacionados se tornarão irrecuperáveis.", + "list-mode": "Visualização em lista", + "grid-mode": "Visualização em grade", + "image-preview": "Pré-visualização da imagem", + "update-image": "Atualizar imagem", + "export-failed-error": "Não foi possível exportar a imagem: {{error}}", + "image-json-file": "Arquivo JSON da imagem", + "invalid-image-json-file-error": "Não foi possível importar a imagem do JSON: Estrutura de dados JSON da imagem inválida.", + "image-is-in-use": "A imagem está sendo usada por outras entidades", + "images-are-in-use": "As imagens estão sendo usadas por outras entidades", + "image-is-in-use-text": "A imagem '{{title}}' não foi excluída porque é usada pelas seguintes entidades:", + "images-are-in-use-text": "Nem todas as imagens foram excluídas porque são usadas por outras entidades.
Você pode visualizar as entidades referenciadas clicando no botão Referências na linha da imagem correspondente.
Se ainda quiser excluir essas imagens, selecione-as na tabela abaixo e clique no botão Excluir selecionadas.", + "delete-image-in-use-text": "Se ainda quiser excluir a imagem, clique no botão Excluir mesmo assim.", + "system-entities": "Entidades do sistema:", + "entities": "entidades:", + "references": "Referências", + "include-system-images": "Incluir imagens do sistema", + "clear-image": "Limpar imagem", + "no-image": "Sem imagem", + "no-image-selected": "Nenhuma imagem selecionada", + "browse-from-gallery": "Procurar na galeria", + "set-link": "Definir link", + "image-link": "Link da imagem", + "link": "Link", + "copy-image-link": "Copiar link da imagem", + "embed-image": "Incorporar imagem", + "embed-to-html": "Incorporar em HTML", + "embed-to-html-hint": "Este recurso tornará o link disponível para qualquer usuário não autenticado.", + "embed-to-html-text": "Usando o seguinte trecho de código, você pode incorporar uma imagem nos componentes baseados em HTML puro.
Esses componentes incluem widgets de cartão HTML, funções de conteúdo de célula, etc.", + "embed-to-angular-template": "Incorporar em template Angular HTML", + "embed-to-angular-template-text": "Usando o seguinte trecho de código, você pode incorporar uma imagem no template Angular HTML que será usado para componentes.
Esses componentes incluem o widget Markdown, seção HTML no editor de widgets, ações personalizadas, etc." + }, + "image-input": { + "drop-images-or": "Arraste e solte imagens ou", + "drag-and-drop": "Arrastar e soltar", + "or": "ou", + "browse": "Procurar", + "no-images": "Nenhuma imagem selecionada", + "images": "imagens" }, "import": { "no-file": "Nenhum arquivo selecionado", - "drop-file": "Solte um arquivo JSON ou clique para selecionar um arquivo para carregar.", - "drop-file-csv": "Solte um arquivo CSV ou clique para selecionar um arquivo para carregar.", + "drop-file": "Solte um arquivo JSON ou clique para selecionar um arquivo para enviar.", + "drop-json-file-or": "Arraste e solte um arquivo JSON ou", + "drop-file-csv": "Solte um arquivo CSV ou clique para selecionar um arquivo para enviar.", + "drop-file-csv-or": "Arraste e solte um arquivo CSV ou", "column-value": "Valor", "column-title": "Título", - "column-example": "Exemplo de dados de valor", + "column-example": "Dados de valor de exemplo", "column-key": "Chave de atributo/telemetria", - "csv-delimiter": "Delimitador de CSV", - "csv-first-line-header": "A primeira linha contém nomes de coluna", + "credentials": "Credenciais", + "csv-delimiter": "Delimitador CSV", + "csv-first-line-header": "A primeira linha contém nomes de colunas", "csv-update-data": "Atualizar atributos/telemetria", - "import-csv-number-columns-error": "Um arquivo deve conter no mínimo duas colunas", + "details": "Detalhes", + "import-csv-number-columns-error": "O arquivo deve conter pelo menos duas colunas", "import-csv-invalid-format-error": "Formato de arquivo inválido. Linha: '{{line}}'", "column-type": { "name": "Nome", "type": "Tipo", - "label": "Etiqueta", + "label": "Rótulo", "column-type": "Tipo de coluna", "client-attribute": "Atributo do cliente", "shared-attribute": "Atributo compartilhado", "server-attribute": "Atributo do servidor", - "timeseries": "Intervalos de tempo", + "timeseries": "Série temporal", "entity-field": "Campo de entidade", "access-token": "Token de acesso", + "x509": "X.509", + "mqtt": { + "client-id": "Client ID MQTT", + "user-name": "Nome de usuário MQTT", + "password": "Senha MQTT" + }, + "lwm2m": { + "client-endpoint": "Nome do cliente do Endpoint LwM2M", + "security-config-mode": "Modo de configuração de segurança LwM2M", + "client-identity": "Identidade do cliente LwM2M", + "client-key": "Chave do cliente LwM2M", + "client-cert": "Chave pública do cliente LwM2M", + "bootstrap-server-security-mode": "Modo de segurança do servidor bootstrap LwM2M", + "bootstrap-server-secret-key": "Chave secreta do servidor bootstrap LwM2M", + "bootstrap-server-public-key-id": "Chave pública ou ID do servidor bootstrap LwM2M", + "lwm2m-server-security-mode": "Modo de segurança do servidor LwM2M", + "lwm2m-server-secret-key": "Chave secreta do servidor LwM2M", + "lwm2m-server-public-key-id": "Chave pública ou ID do servidor LwM2M" + }, + "snmp": { + "host": "Host SNMP", + "port": "Porta SNMP", + "version": "Versão SNMP (v1, v2c ou v3)", + "community-string": "String de comunidade SNMP" + }, "isgateway": "É Gateway", - "description": "Descrição" + "activity-time-from-gateway-device": "Tempo de atividade do dispositivo gateway", + "description": "Descrição", + "routing-key": "Chave do edge", + "secret": "Segredo do edge" }, "stepper-text": { "select-file": "Selecionar um arquivo", - "configuration": "Importar configuração", - "column-type": "Selecionar tipos de colunas", - "creat-entities": "Criar novas entidades" + "configuration": "Configuração de importação", + "column-type": "Selecionar tipo de colunas", + "creat-entities": "Criando novas entidades" }, "message": { - "create-entities": "{{count}} novas entidades foram criadas corretamente.", - "update-entities": "{{count}} novas entidades foram atualizadas corretamente.", + "create-entities": "{{count}} novas entidades foram criadas com sucesso.", + "update-entities": "{{count}} entidades foram atualizadas com sucesso.", "error-entities": "Ocorreu um erro ao criar {{count}} entidades." } }, + "scada": { + "symbols": "Símbolos SCADA", + "search": "Pesquisar símbolo", + "selected-symbols": "{ count, plural, =1 {1 símbolo} other {# símbolos} } selecionado(s)", + "download-symbol": "Baixar símbolo SCADA", + "export-symbol": "Exportar símbolo SCADA para JSON", + "import-symbol": "Importar símbolo SCADA de JSON", + "upload-symbol": "Carregar símbolo SCADA", + "update-symbol": "Atualizar símbolo SCADA", + "edit-symbol": "Editar símbolo SCADA", + "symbol-details": "Detalhes do símbolo SCADA", + "mode-svg": "SVG", + "mode-xml": "XML", + "no-symbols": "Nenhum símbolo encontrado", + "show-hidden-elements": "Mostrar elementos ocultos", + "hide-hidden-elements": "Ocultar elementos ocultos", + "delete-symbol": "Excluir símbolo SCADA", + "delete-symbol-title": "Tem certeza de que deseja excluir o símbolo SCADA '{{imageTitle}}'?", + "delete-symbol-text": "Atenção: após a confirmação, o símbolo SCADA não poderá ser recuperado.", + "delete-symbols-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 símbolo SCADA} other {# símbolos SCADA} }?", + "delete-symbols-text": "Atenção: após a confirmação, todos os símbolos SCADA selecionados serão removidos e todos os dados relacionados não poderão ser recuperados.", + "include-system-symbols": "Incluir símbolos do sistema", + "symbol-preview": "Visualização do símbolo", + "general": "Geral", + "tags": "Tags", + "properties": "Propriedades", + "title": "Título", + "description": "Descrição", + "search-tags": "Pesquisar tags", + "widget-size": "Tamanho do widget", + "cols": "colunas", + "rows": "linhas", + "state-render-function": "Função de renderização de estado", + "preview": "Visualização", + "preview-widget-action-text": "Ação do widget '{{type}}' invocada com sucesso!", + "no-symbol": "Nenhum símbolo SCADA", + "no-symbol-selected": "Nenhum símbolo SCADA selecionado", + "clear-symbol": "Limpar símbolo SCADA", + "browse-symbol-from-gallery": "Procurar símbolo SCADA na galeria", + "zoom-in": "Aproximar", + "zoom-out": "Afastar", + "create-widget": "Criar widget", + "create-widget-from-symbol": "Criar widget a partir do símbolo SCADA", + "hidden": "oculto", + "tag": { + "tag": "Tag", + "on-click-action": "Ação ao clicar", + "no-tags": "Nenhuma tag configurada", + "delete-tag-text": "Tem certeza de que deseja excluir a tag
{{tag}} do elemento {{elementType}}?", + "update-tag": "Atualizar tag", + "enter-tag": "Inserir tag", + "tag-settings": "Configurações de tag", + "remove-tag": "Remover tag", + "add-tag": "Adicionar tag" + }, + "behavior": { + "behavior": "Comportamento", + "id": "Id", + "name": "Nome", + "type": "Tipo", + "no-behaviors": "Nenhum comportamento configurado", + "add-behavior": "Adicionar comportamento", + "type-action": "Ação", + "type-value": "Valor", + "type-widget-action": "Ação do widget", + "behavior-settings": "Configurações de comportamento", + "remove-behavior": "Remover comportamento", + "hint": "Dica", + "group-title": "Título do grupo", + "value-type": "Tipo de valor", + "default-value": "Valor padrão", + "true-label": "Rótulo verdadeiro", + "false-label": "Rótulo falso", + "state-label": "Rótulo de estado", + "default-payload": "Payload padrão", + "not-unique-behavior-ids-error": "Os IDs de comportamento devem ser únicos!", + "default-settings": "Configurações padrão" + }, + "symbol": { + "symbol": "Símbolo SCADA", + "fluid-presence": "Presença de fluido", + "fluid-presence-hint": "Indica se há fluido presente no tubo.", + "fluid-present": "Fluido presente", + "present": "Presente", + "absent": "Ausente", + "flow-presence": "Presença de fluxo", + "flow-presence-hint": "Indica se o fluido está fluindo no tubo.", + "flow-present": "Fluxo presente", + "flow-direction": "Direção do fluxo", + "flow-direction-hint": "Indica a direção do fluxo de fluido.", + "forward": "Avançar", + "reverse": "Reverso", + "flow-animation-speed": "Velocidade de animação do fluxo", + "flow-animation-speed-hint": "Valor decimal que indica a velocidade de animação do fluxo. 1 - velocidade normal, 0 - sem animação, < 1 - animação mais lenta, > 1 - animação mais rápida.", + "leak": "Vazamento", + "leak-hint": "Indica se há vazamento presente no tubo.", + "leak-present": "Vazamento presente", + "fluid-color": "Cor do fluido", + "pipe-color": "Cor do tubo", + "horizontal-pipe": "Tubo horizontal", + "vertical-pipe": "Tubo vertical", + "horizontal-fluid-color": "Cor do fluido horizontal", + "vertical-fluid-color": "Cor do fluido vertical", + "left-pipe": "Tubo esquerdo", + "right-pipe": "Tubo direito", + "top-pipe": "Tubo superior", + "bottom-pipe": "Tubo inferior", + "left-fluid-color": "Cor do fluido esquerdo", + "right-fluid-color": "Cor do fluido direito", + "top-fluid-color": "Cor do fluido superior", + "bottom-fluid-color": "Cor do fluido inferior", + "display": "Exibição", + "display-format": "Formato de exibição", + "value": "Valor", + "decimals": "Decimais", + "units": "Unidades", + "flow-meter-value-hint": "Valor decimal exibido no display do medidor de fluxo", + "value-hint": "Valor decimal que indica o valor atual", + "running": "Em execução", + "running-hint": "Indica se o componente está em estado de execução.", + "warning-state": "Estado de aviso", + "warning": "Aviso", + "warning-click": "Clique de aviso", + "warning-state-hint": "Indica se o componente está em estado de aviso.", + "critical-state": "Estado crítico", + "critical": "Crítico", + "critical-click": "Clique crítico", + "critical-state-hint": "Indica se o componente está em estado crítico.", + "critical-state-animation": "Animação de estado crítico", + "critical-state-animation-hint": "Se deve habilitar a animação piscante quando o componente está em estado crítico.", + "warning-critical-state-animation": "Animação de estado de aviso/crítico", + "warning-critical-state-animation-hint": "Se deve habilitar a animação piscante quando o componente está em estado de aviso ou crítico.", + "animation": "Animação", + "broken": "Com falha", + "broken-hint": "Indica se o componente está com falha.", + "on-display-click": "Ao clicar no display", + "on-display-click-hint": "Ação invocada quando o usuário clica no display.", + "pipe": "Tubo", + "default-border-color": "Cor padrão da borda", + "active-border-color": "Cor da borda ativa", + "warning-border-color": "Cor da borda de aviso", + "critical-border-color": "Cor da borda crítica", + "background-color": "Cor de fundo", + "rotation-animation-speed": "Velocidade de animação de rotação", + "rotation-animation-speed-hint": "Valor decimal que indica a velocidade de animação de rotação. 1 - velocidade normal, 0 - sem animação, < 1 - animação mais lenta, > 1 - animação mais rápida.", + "on-click": "Ao clicar", + "on-click-hint": "Ação invocada quando o usuário clica no componente.", + "connectors-positions": "Posições dos conectores", + "right-connector": "Conector direito", + "right-top-connector": "Conector superior direito", + "right-bottom-connector": "Conector inferior direito", + "left-connector": "Conector esquerdo", + "left-top-connector": "Conector superior esquerdo", + "left-bottom-connector": "Conector inferior esquerdo", + "top-left-connector": "Conector esquerdo superior", + "top-right-connector": "Conector direito superior", + "top-connector": "Conector superior", + "bottom-connector": "Conector inferior", + "running-color": "Cor em execução", + "stopped-color": "Cor parado", + "stopped": "Parado", + "warning-color": "Cor de aviso", + "critical-color": "Cor crítica", + "opened": "Aberto", + "opened-hint": "Indica se o componente está em estado aberto.", + "open": "Abrir", + "open-hint": "Ação invocada quando o usuário clica para abrir o componente.", + "close": "Fechar", + "close-hint": "Ação invocada quando o usuário clica para fechar o componente.", + "close-state-animation": "Animação de estado fechado", + "close-state-animation-hint": "Se deve habilitar a animação piscante quando o componente está em estado fechado.", + "opened-color": "Cor aberto", + "closed-color": "Cor fechado", + "opened-rotation-angle": "Ângulo de rotação aberto", + "closed-rotation-angle": "Ângulo de rotação fechado", + "tank-capacity": "Capacidade do tanque", + "tank-capacity-hint": "Valor decimal que indica a capacidade total do tanque.", + "current-volume": "Volume atual", + "current-volume-hint": "Valor decimal que indica o volume ocupado atualmente.", + "tank-color": "Cor do tanque", + "value-box": "Caixa de valor", + "value-text": "Texto de valor", + "scale": "Escala", + "transparent-mode": "Modo transparente", + "major-ticks": "Marcações principais", + "intervals": "Intervalos", + "major-ticks-color": "Cor das marcações principais", + "normal": "Normal", + "minor-ticks": "Marcações secundárias", + "minor-ticks-color": "Cor das marcações secundárias", + "temperature": "Temperatura", + "temperature-hint": "Valor decimal que indica a temperatura atual.", + "update-temperature": "Atualizar temperatura", + "update-temperature-hint": "Ação invocada quando o usuário clica para alterar a temperatura atual.", + "run": "Executar", + "run-hint": "Ação invocada quando o usuário clica para executar o componente.", + "stop": "Parar", + "stop-hint": "Ação invocada quando o usuário clica para parar o componente.", + "temperature-step": "Incremento de passo de temperatura", + "heat-pump-color": "Cor da bomba de calor", + "power-button-background": "Fundo do botão de energia", + "value-box-background": "Fundo da caixa de valor", + "value-units": "Unidades de valor", + "enable-units-scale": "Habilitar unidades na escala", + "filtration-mode": "Modo de filtração", + "filtration-mode-hint": "Valor inteiro que indica o modo de filtração atual.", + "filtration-mode-update": "Estado de atualização do modo de filtração", + "filtration-mode-update-hint": "Ação invocada quando o usuário clica para alterar o modo de filtração atual.", + "filter-mode": "Filtro", + "waste-mode": "Descarte", + "backwash-mode": "Retrolavagem", + "recirculate-mode": "Recircular", + "rinse-mode": "Enxaguar", + "closed-mode": "Fechado", + "sand-filter-color": "Cor do filtro de areia", + "mode-box-background": "Fundo da caixa de modo", + "border-color": "Cor da borda", + "label-color": "Cor do rótulo", + "water-leak-hint": "Indica se há vazamento.", + "default-color": "Cor padrão", + "leak-color": "Cor de vazamento", + "full-value": "Valor cheio", + "full-value-hint": "Valor decimal que indica o valor cheio.", + "label": "Rótulo", + "icon": "Ícone", + "button-color": "Cor do botão", + "on-label": "Texto do rótulo 'Ligado'", + "off-label": "Texto do rótulo 'Desligado'", + "arrow-presence": "Presença de seta", + "arrow-presence-hint": "Indica se há seta presente no conector.", + "arrow-present": "Seta presente", + "arrow-direction": "Direção do fluxo", + "arrow-direction-hint": "Indica a direção do fluxo.", + "flow-animation": "Presença de fluxo", + "flow-animation-hint": "Indica se o fluido está fluindo no conector.", + "flow": "Fluxo", + "flow-line": "Linha", + "flow-line-style": "Estilo de linha", + "flow-style-hint": "Defina os valores de Traço e Espaço de modo que a soma seja divisível por 100 sem resto para sincronização perfeita da animação.", + "flow-dash-cap": "Cap do traço", + "dash-cap-butt": "Plano", + "dash-cap-round": "Arredondado", + "dash-cap-square": "Quadrado", + "dash": "Traço", + "gap": "Espaço", + "main-line": "Linha principal", + "line": "Linha", + "line-color": "Cor da linha", + "arrow-color": "Cor da seta", + "target-value": "Valor alvo", + "target-value-hint": "Indica o ponto alvo na escala.", + "min-max-value": "Valor mínimo e máximo", + "min-value": "Mín", + "max-value": "Máx", + "progress-bar": "Barra de progresso", + "progress-arrow": "Seta de progresso", + "warning-scale-color": "Cor da escala de aviso", + "critical-scale-color": "Cor da escala crítica", + "scale-color": "Cor da escala", + "target": "Alvo", + "high-warning-state": "Estado de aviso alto", + "show-high-warning-scale": "Mostrar escala de aviso alto", + "high-warning-scale": "Escala de aviso alto", + "high-warning-state-hint": "Valor decimal que indica um intervalo de aviso alto até um valor crítico alto ou máximo.", + "low-warning-state": "Estado de aviso baixo", + "show-low-warning-scale": "Mostrar escala de aviso baixo", + "low-warning-scale": "Escala de aviso baixo", + "low-warning-state-hint": "Valor decimal que indica um intervalo de aviso baixo até um valor crítico baixo ou mínimo.", + "high-critical-state": "Estado crítico alto", + "show-high-critical-scale": "Mostrar escala crítica alta", + "high-critical-scale": "Escala crítica alta", + "high-critical-state-hint": "Valor decimal que indica um intervalo crítico alto até a escala de valor máximo.", + "low-critical-state": "Estado crítico baixo", + "show-low-critical-scale": "Mostrar estado crítico baixo", + "low-critical-scale": "Estado crítico baixo", + "low-critical-state-hint": "Valor decimal que indica um intervalo crítico baixo até a escala de valor mínimo.", + "filter-color": "Cor do filtro", + "colors": "Cores", + "indicator-colors": "Cores do indicador", + "enabled": "Habilitado", + "disabled": "Desabilitado", + "on": "LIGADO", + "off": "DESLIGADO", + "on-off-state": "Estado ligado/desligado", + "on-off-state-hint": "Indica se o componente está no estado Ligado ou Desligado.", + "on-update-state": "Estado de atualização para ligado", + "on-update-state-hint": "Ação invocada quando o usuário clica para atualizar o estado para Ligado.", + "off-update-state": "Estado de atualização para desligado", + "off-update-state-hint": "Ação invocada quando o usuário clica para atualizar o estado para Desligado.", + "voltage": "Tensão", + "input-voltage": "Tensão de entrada", + "input-voltage-hint": "Valor decimal que indica o valor da tensão de entrada.", + "output-voltage": "Tensão de saída", + "output-voltage-hint": "Valor decimal que indica o valor da tensão de saída.", + "first-phase-voltage": "Tensão da primeira fase", + "second-phase-voltage": "Tensão da segunda fase", + "third-phase-voltage": "Tensão da terceira fase", + "phase-voltage-hint": "Valor decimal que indica o valor de tensão para a fase atual", + "voltage-hint": "Valor decimal que indica a tensão atual", + "current-voltage-color": "Cor da tensão atual", + "phase-indicator-color": "Cor do indicador de fase", + "measured": "Medido", + "measured-hint": "Valor decimal que indica o consumo de energia em quilowatt-hora", + "day-rate": "Tarifa diurna", + "night-rate": "Tarifa noturna", + "off-peak-rate": "Tarifa fora de pico", + "peak-rate": "Tarifa de pico", + "export-rate": "Tarifa de exportação", + "operating-mode": "Modo de operação", + "bypass-mode": "Bypass", + "operating-mode-hint": "Valor inteiro que indica o modo de operação atual (0 - DESLIGADO, 1 - LIGADO, 2 - BYPASS)", + "connected": "Conectado", + "connected-hint": "Indica se o componente está em estado conectado.", + "disconnected": "Desconectado", + "indicator": "Indicador", + "operation-mode": "Modo de operação", + "operation-mode-hint": "Indica se o inversor está no modo Rede ou Inversor.", + "operation-mode-indicators-color": "Cor dos indicadores de modo de operação", + "mains-on-mode": "Rede ligada", + "inverter-on-mode": "Inversor ligado", + "charging-mode": "Modo de carregamento", + "charging-mode-hint": "Valor inteiro que indica o modo de carregamento atual (1 - Bulk, 2 - Absorção, 3 - Float)", + "charging-mode-indicators-color": "Cor dos indicadores de modo de carregamento", + "inverter-faults": "Falhas", + "inverter-fault-indicators-color": "Cor dos indicadores de falha", + "overload-fault": "Sobrecarga", + "overload-fault-hint": "Indica se o inversor está em condição de sobrecarga.", + "low-battery-fault": "Bateria fraca", + "low-battery-fault-hint": "Indica se a bateria está excessivamente descarregada.", + "temperature-fault": "Temperatura", + "temperature-fault-hint": "Indica se há alta temperatura no inversor.", + "triangle": "Triângulo", + "socket": "Tomada", + "left-button": "Botão esquerdo", + "right-button": "Botão direito", + "alarm-colors": "Cores de alarme", + "hook-color": "Cor do gancho" + } + }, "item": { "selected": "Selecionado" }, "js-func": { "no-return-error": "A função deve retornar um valor!", "return-type-mismatch": "A função deve retornar um valor do tipo '{{type}}'!", - "tidy": "Tidy", - "mini": "Mini" + "tidy": "Organizar", + "mini": "Mini", + "modules": "Módulos", + "remove-module": "Remover módulo", + "no-modules": "Nenhum módulo configurado", + "add-module": "Adicionar módulo", + "module-alias": "Alias", + "invalid-module-alias-name": "Nome de alias inválido", + "module-resource": "Recurso do módulo JS", + "not-unique-module-aliases-error": "Os aliases de módulo devem ser únicos!", + "show-module-info": "Mostrar informações do módulo", + "show-module-source-code": "Mostrar código-fonte do módulo", + "module-members": "Membros do módulo", + "module-no-members": "O módulo não possui membros exportados", + "module-load-error": "Erro ao carregar módulo", + "source-code": "Código-fonte", + "source-code-load-error": "Erro ao carregar código-fonte", + "no-js-module-text": "Nenhum módulo JS encontrado", + "no-js-module-matching": "Nenhum módulo JS correspondente a '{{module}}' foi encontrado." }, "key-val": { "key": "Chave", "value": "Valor", "remove-entry": "Remover entrada", "add-entry": "Adicionar entrada", - "no-data": "Sem entradas" + "no-data": "Nenhuma entrada" }, "layout": { "layout": "Layout", + "layouts": "Layouts", "manage": "Gerenciar layouts", - "settings": "Configuração de layout", + "settings": "Configurações de layout", "color": "Cor", "main": "Principal", "right": "Direita", - "select": "Selecionar layout alvo" + "left": "Esquerda", + "select": "Selecionar layout de destino", + "percentage-width": "Largura percentual (%)", + "fixed-width": "Largura fixa (px)", + "left-width": "Coluna esquerda (%)", + "right-width": "Coluna direita (%)", + "pick-fixed-side": "Lado fixo: ", + "layout-fixed-width": "Largura fixa (px)", + "value-min-error": "O valor deve ser maior que {{min}}{{unit}}", + "value-max-error": "O valor deve ser menor que {{max}}{{unit}}", + "layout-fixed-width-required": "A largura fixa é obrigatória", + "right-width-percentage-required": "O percentual direito é obrigatório", + "left-width-percentage-required": "O percentual esquerdo é obrigatório", + "divider": "Divisor", + "right-side": "Layout do lado direito", + "left-side": "Layout do lado esquerdo", + "add-new-breakpoint": "Adicionar novo breakpoint", + "breakpoint": "Breakpoint", + "breakpoints": "Breakpoints", + "copy-from": "Copiar de", + "size": "Tamanho", + "delete-breakpoint-title": "Tem certeza de que deseja excluir o breakpoint '{{name}}'?", + "delete-breakpoint-text": "Atenção: após a confirmação, o breakpoint não poderá ser recuperado e as configurações serão revertidas para o breakpoint padrão." }, "legend": { - "direction": "Direção da legenda", - "position": "Posição da legenda", + "direction": "Direção", + "position": "Posição", + "show-values": "Mostrar valores", + "min-option": "Mín", + "max-option": "Máx", + "average-option": "Média", + "total-option": "Total", + "latest-option": "Mais recente", + "sort-legend": "Ordenar chaves de dados na legenda", "show-max": "Mostrar valor máximo", "show-min": "Mostrar valor mínimo", "show-avg": "Mostrar valor médio", "show-total": "Mostrar valor total", - "settings": "Configuração de legenda", - "min": "mín.", - "max": "máx.", - "avg": "méd.", + "show-latest": "Mostrar valor mais recente", + "settings": "Configurações de legenda", + "min": "mín", + "max": "máx", + "avg": "méd", "total": "total", + "latest": "mais recente", + "Min": "Mín", + "Max": "Máx", + "Avg": "Méd", + "Total": "Total", + "Latest": "Mais recente", "comparison-time-ago": { + "previousInterval": "(intervalo anterior)", + "customInterval": "(intervalo personalizado)", "days": "(dia atrás)", "weeks": "(semana atrás)", "months": "(mês atrás)", "years": "(ano atrás)" - } + }, + "column-title": "Título da coluna", + "label": "Rótulo", + "value": "Valor" }, "login": { "login": "Login", "request-password-reset": "Solicitar redefinição de senha", "reset-password": "Redefinir senha", "create-password": "Criar senha", - "passwords-mismatch-error": "As senhas inseridas devem ser idênticas!", - "password-again": "Repetir senha", - "sign-in": "Inscreva-se", - "username": "Nome de usuário (e-mail)", - "remember-me": "Lembrar-me", - "forgot-password": "Esqueceu a senha?", - "password-reset": "Redefinir senha", - "expired-password-reset-message": "As credenciais de expiraram! Crie uma nova senha.", + "two-factor-authentication": "Autenticação de dois fatores", + "passwords-mismatch-error": "As senhas inseridas devem ser iguais!", + "password-again": "Confirmar senha", + "sign-in": "Entrar", + "username": "Nome de usuário (email)", + "remember-me": "Lembrar de mim", + "forgot-password": "Esqueceu sua senha?", + "password-reset": "Redefinição de senha", + "expired-password-reset-message": "Sua senha expirou! \nInsira uma nova senha.", "new-password": "Nova senha", - "new-password-again": "Repetir nova senha", - "password-link-sent-message": "O link de redefinição de senha foi enviado corretamente!", - "email": "E-mail", - "login-with": "Login com {{name}}", + "new-password-again": "Confirmar nova senha", + "password-link-sent-message": "Link de redefinição foi enviado", + "email": "Email", + "invalid-email-format": "Formato de email inválido.", "or": "ou", - "error": "Erro de login" + "error": "Erro de login", + "verify-your-identity": "Verificar sua identidade", + "select-way-to-verify": "Selecionar uma forma de verificação", + "resend-code": "Reenviar código", + "resend-code-wait": "Reenviar código em { time, plural, =1 {1 segundo} other {# segundos} }", + "try-another-way": "Tentar outra forma", + "totp-auth-description": "Insira o código de segurança do seu aplicativo autenticador.", + "totp-auth-placeholder": "Código", + "sms-auth-description": "Um código de segurança foi enviado para o seu telefone em {{contact}}.", + "sms-auth-placeholder": "Código SMS", + "email-auth-description": "Um código de segurança foi enviado para o seu endereço de email em {{contact}}.", + "email-auth-placeholder": "Código de email", + "backup-code-auth-description": "Insira um dos seus códigos de backup.", + "backup-code-auth-placeholder": "Código de backup", + "activation-link-expired": "O link de ativação expirou", + "activation-link-expired-message": "O link para ativar seu perfil expirou. Você pode retornar à página de login para receber um novo email.", + "reset-password-link-expired": "O link de redefinição de senha expirou", + "reset-password-link-expired-message": "O link para redefinir sua senha expirou. Você pode retornar à página de login para receber um novo email." + }, + "mobile": { + "add-application": "Adicionar aplicação", + "app-id": "ID de associação do site do aplicativo", + "app-id-required": "O ID de associação do site do aplicativo é obrigatório", + "app-id-pattern": "Formato inválido do ID de associação do site do aplicativo", + "app-store-link": "Link da App Store", + "app-store-link-required": "O link da App Store é obrigatório", + "application-details": "Detalhes da aplicação", + "application-package": "Pacote da aplicação", + "application-secret": "Application Secret", + "application-secret-required": "O Application Secret é obrigatório", + "application": "Aplicação", + "applications": "Aplicações", + "copy-app-id": "Copiar ID do aplicativo", + "copy-app-store-link": "Copiar link da App Store", + "copy-application-package": "Copiar pacote da aplicação", + "copy-application-secret": "Copiar Application Secret", + "copy-google-play-link": "Copiar link do Google Play", + "copy-sha256-certificate-fingerprints": "Copiar impressões digitais do certificado SHA256", + "delete-application": "Excluir aplicação", + "delete-application-button-text": "Entendo as consequências, excluir aplicação", + "delete-application-text": "Esta ação não pode ser desfeita. Isso excluirá permanentemente sua aplicação.
Se não quiser excluí-la permanentemente, você pode suspender a aplicação temporariamente.
Para excluir a aplicação mesmo assim, digite \"{{phrase}}\" para confirmar.", + "delete-application-title-short": "Tem certeza de que deseja excluir a aplicação '{{name}}'?", + "delete-application-text-short": "Tenha cuidado, após a confirmação, as aplicações e todos os dados relacionados serão irrecuperáveis.", + "delete-application-phrase": "excluir aplicação", + "delete-applications-bundle-text": "Tenha cuidado, após a confirmação, o conjunto mobile e todos os dados relacionados serão irrecuperáveis.", + "delete-applications-bundle-title": "Tem certeza de que deseja excluir o conjunto mobile '{{bundleName}}'?", + "generate-application-secret": "Gerar Application Secret", + "google-play-link": "Link do Google Play", + "google-play-link-required": "O link do Google Play é obrigatório", + "latest-version": "Versão mais recente", + "min-version": "Versão mínima", + "invalid-version-pattern": "Formato de versão inválido. Use o formato: major.minor.patch (ex.: 1.0.0).", + "mobile-center": "Central móvel", + "mobile-package": "Pacote da aplicação", + "mobile-package-max-length": "O pacote da aplicação deve ter menos de 256 caracteres", + "mobile-package-required": "O pacote da aplicação é obrigatório.", + "mobile-package-pattern": "Formato inválido do pacote da aplicação", + "mobile-package-title": "Título da aplicação", + "mobile-package-title-max-length": "O título da aplicação deve ter menos de 256 caracteres", + "no-application": "Nenhuma aplicação encontrada", + "no-bundles": "Nenhum conjunto encontrado", + "platform-type": "Tipo de plataforma", + "search-application": "Pesquisar aplicações", + "search-bundles": "Pesquisar conjuntos", + "set": "Definir", + "sha256-certificate-fingerprints": "Impressões digitais do certificado SHA256", + "sha256-certificate-fingerprints-required": "As impressões digitais do certificado SHA256 são obrigatórias", + "sha256-certificate-fingerprints-pattern": "Formato inválido da impressão digital do certificado SHA256", + "show-hidden-pages": "Mostrar páginas ocultas", + "status": "Status", + "status-type": { + "deprecated": "Descontinuado", + "draft": "Rascunho", + "published": "Publicado", + "suspended": "Suspenso" + }, + "store-information": "Informações da loja", + "version-information": "Informações de versão", + "min-version-release-notes": "Notas de versão da versão mínima", + "latest-version-release-notes": "Notas de versão da versão mais recente", + "bundle": "Conjunto", + "bundles": "Conjuntos", + "add-bundle": "Adicionar conjunto", + "title": "Título", + "title-required": "O título é obrigatório", + "title-cannot-contain-only-spaces": "O título não pode conter apenas espaços", + "title-max-length": "O título deve ter menos de 256 caracteres", + "oauth-clients": "Clientes OAuth 2.0", + "android-app": "Aplicativo Android", + "android-application": "Aplicação Android", + "ios-app": "Aplicativo iOS", + "ios-application": "Aplicação iOS", + "invalid-store-link": "Link da loja inválido", + "enable-oauth": "Habilitar OAuth 2.0", + "enable-self-registration": "Habilitar autorregistro", + "edit-bundle": "Editar conjunto", + "description": "Descrição", + "basic-settings": "Configurações básicas", + "no-application-matching": "Nenhuma aplicação correspondente a '{{entity}}' foi encontrada.", + "no-bundle-matching": "Nenhum conjunto correspondente a '{{entity}}' foi encontrado.", + "application-required": "A aplicação é obrigatória.", + "bundle-required": "O conjunto é obrigatório.", + "no-application-text": "Nenhuma aplicação encontrada", + "no-bundle-text": "Nenhum conjunto encontrado", + "layout": "Layout", + "pages": "Páginas", + "hide-all-pages": "Ocultar todas as páginas", + "reset-to-default-pages": "Redefinir para páginas padrão", + "add-specific-page": "Adicionar página específica", + "visible": "Visível", + "hidden": "Oculto", + "reset-to-page-default": "Redefinir página para o padrão", + "mobile-599": "Mobile (máx. 599px)", + "tablet-959": "Tablet (máx. 959px)", + "max-element-number": "Número máximo de elementos", + "page-name": "Nome da página", + "page-name-required": "O nome da página é obrigatório.", + "page-name-cannot-contain-only-spaces": "O nome da página não pode conter apenas espaços.", + "page-name-max-length": "O nome da página deve ter menos de 256 caracteres", + "page-type": "Tipo de página", + "pages-types": { + "dashboard": "Dashboard", + "web-view": "Visualização web", + "custom": "Personalizado" + }, + "url": "URL", + "invalid-url-format": "Formato de URL inválido", + "path": "Caminho", + "invalid-path-format": "Formato de caminho inválido", + "custom-page": "Página personalizada", + "edit-page": "Editar página", + "edit-custom-page": "Editar página personalizada", + "delete-page": "Excluir página", + "qr-code-widget": "Widget de código QR", + "type-here": "Digite aqui", + "configuration-dialog": "Diálogo de configuração", + "configuration-app": "Aplicação de configuração", + "configuration-step": { + "prepare-environment-title": "Preparar ambiente de desenvolvimento", + "prepare-environment-text": "O Flutter ThingsBoard Mobile Application requer o Flutter SDK. Siga as instruções para configurar o Flutter SDK.", + "get-source-code-title": "Obter código-fonte do aplicativo", + "get-source-code-text": "Você pode obter o código-fonte do Flutter ThingsBoard Mobile Application clonando-o do repositório GitHub:", + "configure-app-settings-title": "Configurar as definições do aplicativo", + "configure-app-settings-text": "Baixe o arquivo de configuração e coloque-o no diretório raiz do projeto clonado na etapa anterior.", + "download-file": "Baixar arquivo", + "run-app-title": "Executar o aplicativo", + "run-app-text": "Execute o aplicativo conforme descrito na sua IDE.\nSe estiver usando o terminal, execute o aplicativo com o seguinte comando:", + "more-information": "Informações detalhadas podem ser encontradas na nossa documentação de Primeiros Passos.", + "getting-started": "Primeiros Passos" + } + }, + "notification": { + "action-button": "Botão de ação", + "action-type": "Tipo de ação", + "active": "Ativo", + "add-notification-recipients-group": "Adicionar grupo de destinatários de notificação", + "add-notification-template": "Adicionar modelo de notificação", + "add-recipient": "Adicionar destinatário", + "add-recipients": "Adicionar destinatários", + "add-rule": "Adicionar regra", + "add-stage": "Adicionar etapa", + "add-template": "Adicionar modelo", + "after": "Após", + "alarm-assignment-trigger-settings": "Configurações do gatilho de atribuição de alarme", + "alarm-comment-trigger-settings": "Configurações do gatilho de comentário de alarme", + "alarm-trigger-settings": "Configurações do gatilho de alarme", + "all": "Todos", + "api-feature-hint": "Se o campo estiver vazio, o gatilho será aplicado a todos os recursos de API", + "api-usage-trigger-settings": "Configurações do gatilho de uso de API", + "new-platform-version-trigger-settings": "Configurações do gatilho de nova versão da plataforma", + "rate-limits-trigger-settings": "Configurações do gatilho de limites de taxa excedidos", + "task-processing-failure-trigger-settings": "Configurações do gatilho de falha no processamento de tarefas", + "resources-shortage-trigger-settings": "Configurações do gatilho de escassez de recursos", + "at-least-one-should-be-selected": "Pelo menos um deve ser selecionado", + "basic-settings": "Configurações básicas", + "button-text": "Texto do botão", + "button-text-required": "O texto do botão é obrigatório", + "button-text-max-length": "O texto do botão deve ter no máximo {{ length }} caracteres", + "compose": "Redigir", + "conversation": "Conversa", + "conversation-required": "A conversa é obrigatória", + "copy-notification-template": "Copiar modelo de notificação", + "copy-rule": "Copiar regra", + "copy-template": "Copiar modelo", + "create-new": "Criar novo", + "created": "Criado", + "customize-messages": "Personalizar mensagens", + "cpu-threshold": "Limite de CPU", + "delete-notification-text": "Tenha cuidado, após a confirmação a notificação será irrecuperável.", + "delete-notification-title": "Tem certeza de que deseja excluir a notificação?", + "delete-notifications-text": "Tenha cuidado, após a confirmação as notificações serão irrecuperáveis.", + "delete-notifications-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 notificação} other {# notificações} }?", + "delete-recipient-text": "Tenha cuidado, após a confirmação o destinatário será irrecuperável.", + "delete-recipient-title": "Tem certeza de que deseja excluir o destinatário '{{recipientName}}'?", + "delete-recipients-text": "Tenha cuidado, após a confirmação os destinatários serão irrecuperáveis.", + "delete-recipients-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 destinatário} other {# destinatários} }?", + "delete-request-text": "Tenha cuidado, após a confirmação a solicitação será irrecuperável.", + "delete-request-title": "Tem certeza de que deseja excluir a solicitação?", + "delete-requests-text": "Tenha cuidado, após a confirmação as solicitações serão irrecuperáveis.", + "delete-requests-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 solicitação} other {# solicitações} }?", + "delete-rule-text": "Tenha cuidado, após a confirmação a regra será irrecuperável.", + "delete-rule-title": "Tem certeza de que deseja excluir a regra '{{ruleName}}'?", + "delete-rules-text": "Tenha cuidado, após a confirmação as regras serão irrecuperáveis.", + "delete-rules-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 regra} other {# regras} }?", + "delete-template-text": "Tenha cuidado, após a confirmação o modelo será irrecuperável.", + "delete-template-title": "Tem certeza de que deseja excluir o modelo '{{templateName}}'?", + "delete-templates-text": "Tenha cuidado, após a confirmação os modelos serão irrecuperáveis.", + "delete-templates-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 modelo} other {# modelos} }?", + "deleted": "Excluído", + "delivery-method": { + "delivery-method": "Método de entrega", + "email": "Email", + "email-preview": "Visualização de notificação por Email", + "slack": "Slack", + "slack-preview": "Visualização de notificação do Slack", + "microsoft-teams": "Microsoft Teams", + "microsoft-teams-preview": "Visualização de notificação do Microsoft Teams", + "sms": "SMS", + "sms-preview": "Visualização de notificação por SMS", + "web": "Web", + "web-preview": "Visualização de notificação web", + "mobile-app": "Aplicativo mobile", + "mobile-app-preview": "Visualização de notificação do aplicativo mobile" + }, + "delivery-method-not-configure-click": "O método de entrega não está configurado. Clique para configurar.", + "delivery-method-not-configure-contact": "O método de entrega não está configurado. Entre em contato com o administrador do sistema.", + "delivery-methods": "Métodos de entrega", + "description": "Descrição", + "device-activity-trigger-settings": "Configurações do gatilho de atividade do dispositivo", + "device-list-rule-hint": "Se o campo estiver vazio, o gatilho será aplicado a todos os dispositivos", + "device-profiles-list-rule-hint": "Se o campo estiver vazio, o gatilho será aplicado a todos os perfis de dispositivo", + "disabled": "Desabilitado", + "edge-trigger-settings": "Configurações do gatilho do Edge", + "edge-list-rule-hint": "Se o campo estiver vazio, o gatilho será aplicado a todas as instâncias do Edge", + "edit-notification-recipients-group": "Editar grupo de destinatários de notificação", + "edit-notification-template": "Editar modelo de notificação", + "edit-rule": "Editar regra", + "edit-template": "Editar modelo", + "enabled": "Habilitado", + "entities-limit-trigger-settings": "Configurações do gatilho de limite de entidades", + "entity-action-trigger-settings": "Configurações do gatilho de ação de entidade", + "entity-type": "Tipo de entidade", + "escalation-chain": "Cadeia de escalonamento", + "failed-send": "Falhas de envio", + "fails": "{ count, plural, =1 {1 falha} other {# falhas} }", + "filter": "Filtro", + "first-recipient": "Primeiro destinatário", + "inactive": "Inativo", + "inbox": "Caixa de entrada", + "notification-inbox": "Notificações / Caixa de entrada", + "input-field-support-templatization": "O campo de entrada suporta templatização.", + "input-fields-support-templatization": "Os campos de entrada suportam templatização.", + "link": "Link", + "link-required": "O link é obrigatório", + "link-max-length": "O link deve ter no máximo {{ length }} caracteres", + "link-type": { + "dashboard": "Abrir Dashboard", + "link": "Abrir link URL" + }, + "loading-notifications": "Carregando notificações...", + "management": "Gerenciamento de notificações", + "mark-all-as-read": "Marcar todas como lidas", + "mark-as-read": "Marcar como lida", + "message": "Mensagem", + "message-required": "A mensagem é obrigatória", + "message-max-length": "A mensagem deve ter no máximo {{ length }} caracteres", + "name": "Nome", + "name-required": "O nome é obrigatório", + "new-notification": "Nova notificação", + "no-inbox-notification": "Nenhuma notificação encontrada", + "no-notification-request": "Nenhuma solicitação de notificação", + "no-notification-templates": "Nenhum modelo de notificação encontrado", + "no-notifications-yet": "Nenhuma notificação ainda", + "no-recipients-notification": "Nenhuma notificação de destinatários", + "no-recipients-matching": "Nenhum destinatário correspondente a '{{entity}}' foi encontrado.", + "no-recipients-text": "Nenhum destinatário encontrado", + "no-rule": "Nenhuma regra configurada", + "no-rules-notification": "Nenhuma notificação de regras", + "no-severity-found": "Nenhuma severidade encontrada", + "no-severity-matching": "'{{severity}}' não encontrado.", + "no-template-matching": "Nenhum recurso correspondente a '{{template}}' foi encontrado.", + "create-new-template": "Criar um novo!", + "not-found-slack-recipient": "Destinatário Slack não encontrado", + "notification": "Notificação", + "notification-center": "Central de notificações", + "notification-tap-action": "Ação ao tocar na notificação", + "notification-tap-action-hint": "Se não estiver habilitado, o Dashboard de alarme padrão será usado", + "notify": "notificar", + "notify-again": "Notificar novamente", + "notify-alarm-action": { + "acknowledged": "Alarme reconhecido", + "assigned": "Alarme atribuído", + "cleared": "Alarme resolvido", + "created": "Alarme criado", + "severity-changed": "Severidade do alarme alterada", + "unassigned": "Alarme não atribuído" + }, + "notify-on": "Notificar em", + "notify-on-comment-update": "Notificar na atualização de comentário", + "notify-on-required": "Notificar em é obrigatório", + "notify-on-unassign": "Notificar ao cancelar atribuição", + "notify-only-user-comments": "Notificar apenas comentários de usuários", + "only-rule-chain-lifecycle-failures": "Apenas falhas no ciclo de vida da cadeia de regras", + "only-rule-node-lifecycle-failures": "Apenas falhas no ciclo de vida do nó de regra", + "platform-users": "Usuários da plataforma", + "ram-threshold": "Limite de RAM", + "rate-limits": "Limites de taxa", + "rate-limits-hint": "Se o campo estiver vazio, o gatilho será aplicado a todos os limites de taxa", + "recipient": "Destinatário", + "recipient-group": "Grupo de destinatários", + "recipient-type": { + "affected-tenant-administrators": "Administradores do tenant afetado", + "affected-user": "Usuário afetado", + "all-users": "Todos os usuários", + "customer-users": "Usuários do cliente", + "system-administrators": "Administradores do sistema", + "tenant-administrators": "Administradores do tenant", + "user-filters": "Filtro de usuário", + "user-list": "Lista de usuários", + "users-entity-owner": "Usuários do proprietário da entidade" + }, + "recipients": "Destinatários", + "notification-recipient": "Destinatário da notificação", + "notification-recipient-required": "O destinatário da notificação é obrigatório.", + "notification-recipients": "Notificações / Destinatários", + "recipients-count": "{ count, plural, =1 {1 destinatário} other {# destinatários} }", + "recipients-required": "Os destinatários são obrigatórios", + "refresh-allow-delivery-method": "Atualizar método de entrega permitido", + "request-search": "Pesquisar solicitações", + "request-status": { + "processing": "Processando", + "scheduled": "Agendado", + "sent": "Enviado" + }, + "review": "Revisar", + "rule": "Regra", + "rule-chain-list-rule-hint": "Se o campo estiver vazio, o gatilho será aplicado a todas as cadeias de regras", + "rule-engine-events-trigger-settings": "Configurações do gatilho de eventos do motor de regras", + "rule-engine-filter": "Filtro do motor de regras", + "rule-name": "Nome da regra", + "rule-name-required": "O nome é obrigatório", + "rule-disable": "Desabilitar regra de notificação", + "rule-enable": "Habilitar regra de notificação", + "rule-node-filter": "Filtro de nó de regra", + "rules": "Regras", + "notification-rules": "Notificações / Regras", + "scheduler-later": "Agendar para mais tarde", + "search-notification": "Pesquisar notificações", + "search-recipients": "Pesquisar destinatários", + "search-rules": "Pesquisar regras", + "search-templates": "Pesquisar modelos", + "see-documentation": "Ver documentação", + "selected-notifications": "{ count, plural, =1 {1 notificação} other {# notificações} } selecionada(s)", + "selected-recipients": "{ count, plural, =1 {1 destinatário} other {# destinatários} } selecionado(s)", + "selected-requests": "{ count, plural, =1 {1 solicitação} other {# solicitações} } selecionada(s)", + "selected-rules": "{ count, plural, =1 {1 regra} other {# regras} } selecionada(s)", + "selected-template": "{ count, plural, =1 {1 modelo} other {# modelos} } selecionado(s)", + "send-notification": "Enviar notificação", + "sent": "Enviado", + "setup": "Configurar", + "notification-sent": "Notificações / Enviadas", + "set-entity-from-notification": "Definir entidade da notificação para o estado do Dashboard", + "slack-chanel-type": "Tipo de canal do Slack", + "slack-chanel-types": { + "direct": "Mensagem direta", + "private-channel": "Canal privado", + "public-channel": "Canal público" + }, + "start-from-scratch": "Começar do zero", + "status": "Status", + "stop-escalation-alarm-status-become": "Parar o escalonamento quando o status do alarme se tornar:", + "storage-threshold": "Limite de armazenamento", + "subject": "Assunto", + "subject-required": "O assunto é obrigatório", + "subject-max-length": "O assunto deve ter no máximo {{ length }} caracteres", + "template": "Modelo", + "template-name": "Nome do modelo", + "template-required": "O modelo é obrigatório", + "template-type": { + "alarm": "Alarme", + "alarm-assignment": "Atribuição de alarme", + "alarm-comment": "Comentário de alarme", + "api-usage-limit": "Limite de uso de API", + "device-activity": "Atividade do dispositivo", + "entities-limit": "Limite de entidades", + "entity-action": "Ação de entidade", + "general": "Geral", + "rule-engine-lifecycle-event": "Evento de ciclo de vida do motor de regras", + "rule-node": "Nó de regra", + "new-platform-version": "Nova versão da plataforma", + "rate-limits": "Limites de taxa excedidos", + "edge-communication-failure": "Falha de comunicação do Edge", + "edge-connection": "Conexão do Edge", + "task-processing-failure": "Falha no processamento de tarefas", + "resources-shortage": "Escassez de recursos" + }, + "templates": "Modelos", + "notification-templates": "Notificações / Modelos", + "tenant-profiles-list-rule-hint": "Se o campo estiver vazio, o gatilho será aplicado a todos os perfis de tenant", + "tenants-list-rule-hint": "Se o campo estiver vazio, o gatilho será aplicado a todos os tenants", + "threshold": "Limite", + "theme-color": "Cor do tema", + "time": "Hora", + "track-rule-node-events": "Rastrear eventos de nó de regra", + "trigger": { + "alarm": "Alarme", + "alarm-assignment": "Atribuição de alarme", + "alarm-comment": "Comentário de alarme", + "api-usage-limit": "Limite de uso de API", + "device-activity": "Atividade do dispositivo", + "entities-limit": "Limite de entidades", + "entity-action": "Ação de entidade", + "rule-engine-lifecycle-event": "Evento de ciclo de vida do motor de regras", + "new-platform-version": "Nova versão da plataforma", + "rate-limits": "Limites de taxa excedidos", + "edge-connection": "Conexão do Edge", + "edge-communication-failure": "Falha de comunicação do Edge", + "task-processing-failure": "Falha no processamento de tarefas", + "resources-shortage": "Escassez de recursos", + "trigger": "Gatilho", + "trigger-required": "O gatilho é obrigatório" + }, + "type": "Tipo", + "unread": "Não lida", + "updated": "Atualizado", + "use-deprecated-webhook-connectors": "Usar conectores Webhook obsoletos", + "use-old-api": "Usar API antiga", + "use-template": "Usar modelo", + "view-all": "Ver todos", + "warning": "Aviso", + "webhook-url": "Webhook URL", + "webhook-url-required": "O Webhook URL é obrigatório", + "workflow-url": "Workflow URL", + "workflow-url-required": "O Workflow URL é obrigatório", + "channel-name": "Nome do canal", + "channel-name-required": "O nome do canal é obrigatório", + "settings": { + "notification-settings": "Configurações de notificação", + "reset-all": "Redefinir todas as configurações", + "reset-all-title": "Tem certeza de que deseja redefinir o formulário?", + "reset-all-text": "Após a confirmação, o formulário de configurações será redefinido para o valor padrão e salvo.", + "type": "Tipo", + "enable-all": "Habilitar todos", + "disable-all": "Desabilitar todos", + "delivery-not-configured": "O método de entrega não está configurado" + } + }, + "ota-update": { + "add": "Adicionar pacote", + "assign-firmware": "Firmware atribuído", + "assign-firmware-required": "O firmware atribuído é obrigatório", + "assign-software": "Software atribuído", + "assign-software-required": "O software atribuído é obrigatório", + "auto-generate-checksum": "Gerar checksum automaticamente", + "checksum": "Checksum", + "checksum-hint": "Se o checksum estiver vazio, será gerado automaticamente", + "checksum-algorithm": "Algoritmo de checksum", + "checksum-copied-message": "O checksum do pacote foi copiado para a área de transferência", + "change-firmware": "A alteração do firmware pode causar a atualização de { count, plural, =1 {1 dispositivo} other {# dispositivos} }.", + "change-software": "A alteração do software pode causar a atualização de { count, plural, =1 {1 dispositivo} other {# dispositivos} }.", + "change-ota-setting-title": "Tem certeza de que deseja alterar as configurações de OTA?", + "chose-compatible-device-profile": "O pacote carregado estará disponível apenas para dispositivos com o perfil escolhido.", + "chose-firmware-distributed-device": "Escolher o firmware que será distribuído aos dispositivos", + "chose-software-distributed-device": "Escolher o software que será distribuído aos dispositivos", + "content-type": "Tipo de conteúdo", + "copy-checksum": "Copiar checksum", + "copy-direct-url": "Copiar URL direta", + "copyId": "Copiar ID do pacote", + "copied": "Copiado!", + "delete": "Excluir pacote", + "delete-ota-update-text": "Tenha cuidado, após a confirmação a atualização OTA será irrecuperável.", + "delete-ota-update-title": "Tem certeza de que deseja excluir a atualização OTA '{{title}}'?", + "delete-ota-updates-text": "Tenha cuidado, após a confirmação todas as atualizações OTA selecionadas serão removidas.", + "delete-ota-updates-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 atualização OTA} other {# atualizações OTA} }?", + "description": "Descrição", + "direct-url": "URL direta", + "direct-url-copied-message": "A URL direta do pacote foi copiada para a área de transferência", + "direct-url-required": "A URL direta é obrigatória", + "download": "Baixar pacote", + "drop-file": "Arraste um arquivo de pacote ou clique para selecionar um arquivo para upload.", + "drop-package-file-or": "Arraste e solte um arquivo de pacote ou", + "file-name": "Nome do arquivo", + "file-size": "Tamanho do arquivo", + "file-size-bytes": "Tamanho do arquivo em bytes", + "idCopiedMessage": "O ID do pacote foi copiado para a área de transferência", + "no-firmware-matching": "Nenhum pacote de atualização OTA de Firmware compatível correspondente a '{{entity}}' foi encontrado.", + "no-firmware-text": "Nenhum pacote de atualização OTA de Firmware compatível provisionado.", + "no-packages-text": "Nenhum pacote encontrado", + "no-software-matching": "Nenhum pacote de atualização OTA de Software compatível correspondente a '{{entity}}' foi encontrado.", + "no-software-text": "Nenhum pacote de atualização OTA de Software compatível provisionado.", + "ota-update": "Atualização OTA", + "ota-update-details": "Detalhes da atualização OTA", + "ota-updates": "Atualizações OTA", + "package-file": "Arquivo de pacote", + "package-type": "Tipo de pacote", + "packages-repository": "Repositório de pacotes", + "search": "Pesquisar pacotes", + "selected-package": "{ count, plural, =1 {1 pacote} other {# pacotes} } selecionado(s)", + "title": "Título", + "title-required": "O título é obrigatório.", + "title-max-length": "O título deve ter menos de 256 caracteres", + "types": { + "firmware": "Firmware", + "software": "Software" + }, + "upload-binary-file": "Fazer upload de arquivo binário", + "use-external-url": "Usar URL externa", + "version": "Versão", + "version-required": "A versão é obrigatória.", + "version-tag": "Tag de versão", + "version-tag-hint": "A tag personalizada deve corresponder à versão do pacote informada pelo seu dispositivo.", + "version-max-length": "A versão deve ter menos de 256 caracteres", + "warning-after-save-no-edit": "Após o upload do pacote, não será possível modificar o título, a versão, o perfil do dispositivo e o tipo de pacote." }, "position": { - "top": "Acima", - "bottom": "Abaixo", + "top": "Superior", + "bottom": "Inferior", "left": "Esquerda", "right": "Direita" }, "profile": { "profile": "Perfil", "last-login-time": "Último login", - "change-password": "Modificar senha", - "current-password": "Senha atual" + "change-password": "Alterar senha", + "current-password": "Senha atual", + "copy-jwt-token": "Copiar token JWT", + "jwt-token": "Token JWT", + "token-valid-till": "Token válido até", + "tokenCopiedSuccessMessage": "Token JWT foi copiado para a área de transferência", + "tokenCopiedWarnMessage": "Token JWT expirou! Por favor, atualize a página." + }, + "profiles": { + "profiles": "Perfis" + }, + "security": { + "security": "Segurança", + "general-settings": "Configurações gerais de segurança", + "access-token": "Token de acesso", + "access-token-required": "Token de acesso é obrigatório", + "clientId": "Client ID", + "clientId-required": "Client ID é obrigatório", + "username": "Nome de usuário", + "username-required": "Nome de usuário é obrigatório", + "ca-cert": "Certificado CA", + "2fa": { + "2fa": "Autenticação de dois fatores", + "2fa-description": "A autenticação de dois fatores protege sua conta contra acesso não autorizado. Basta inserir um código de segurança ao fazer login.", + "authenticate-with": "Você pode autenticar com:", + "disable-2fa-provider-text": "Desativar {{name}} tornará sua conta menos segura", + "disable-2fa-provider-title": "Tem certeza de que deseja desativar {{name}}?", + "get-new-code": "Obter novo código", + "main-2fa-method": "Usar como método principal de autenticação de dois fatores", + "dialog": { + "activation-step-description-email": "Na próxima vez que fizer login, será solicitado que insira o código de segurança que será enviado para seu endereço de email.", + "activation-step-description-sms": "Na próxima vez que fizer login, será solicitado que insira o código de segurança que será enviado para o número de telefone.", + "activation-step-description-totp": "Na próxima vez que fizer login, será necessário fornecer um código de autenticação de dois fatores.", + "activation-step-label": "Ativação", + "backup-code-description": "Imprima os códigos para tê-los à mão quando precisar usá-los para fazer login em sua conta. Você pode usar cada código de backup uma vez.", + "backup-code-warn": "Ao sair desta página, esses códigos não poderão ser exibidos novamente. Armazene-os com segurança usando as opções abaixo.", + "download-txt": "Baixar (txt)", + "email-step-description": "Insira um email para usar como autenticador.", + "email-step-label": "Email", + "enable-email-title": "Ativar autenticador por email", + "enable-sms-title": "Ativar autenticador por SMS", + "enable-totp-title": "Ativar aplicativo autenticador", + "enter-verification-code": "Insira o código de 6 dígitos aqui", + "get-backup-code-title": "Obter código de backup", + "next": "Próximo", + "scan-qr-code": "Escaneie este código QR com seu aplicativo de verificação", + "send-code": "Enviar código", + "sms-step-description": "Insira um número de telefone para usar como autenticador.", + "sms-step-label": "Número de telefone", + "success": "Sucesso!", + "totp-step-description-install": "Você pode instalar aplicativos como Google Authenticator, Authy ou Duo.", + "totp-step-description-open": "Abra o aplicativo autenticador no seu celular.", + "totp-step-label": "Obter aplicativo", + "verification-code": "Código de 6 dígitos", + "verification-code-invalid": "Formato de código de verificação inválido", + "verification-code-incorrect": "Código de verificação incorreto", + "verification-code-many-request": "Muitas solicitações para verificar o código de verificação", + "verification-step-description": "Insira o código de 6 dígitos que acabamos de enviar para {{address}}", + "verification-step-label": "Verificação" + }, + "provider": { + "email": "Email", + "email-description": "Use um código de segurança enviado para seu endereço de email para autenticar.", + "email-hint": "Códigos de autenticação são enviados por email para {{ info }}", + "sms": "SMS", + "sms-description": "Use seu telefone para autenticar. Enviaremos um código de segurança via SMS quando você fizer login.", + "sms-hint": "Códigos de autenticação são enviados por mensagem de texto para {{ info }}", + "totp": "Aplicativo autenticador", + "totp-description": "Use aplicativos como Google Authenticator, Authy ou Duo no seu telefone para autenticar. Será gerado um código de segurança para login.", + "totp-hint": "O aplicativo autenticador está configurado para sua conta", + "backup_code": "Código de backup", + "backup-code-description": "Esses códigos de acesso único imprimíveis permitem que você faça login quando estiver longe do seu telefone, como quando está viajando.", + "backup-code-hint": "{{ info }} códigos de uso único estão ativos no momento" + } + }, + "password-requirement": { + "at-least": "Pelo menos:", + "character": "{ count, plural, =1 {1 caractere} other {# caracteres} }", + "digit": "{ count, plural, =1 {1 dígito} other {# dígitos} }", + "incorrect-password-try-again": "Senha incorreta. Tente novamente", + "lowercase-letter": "{ count, plural, =1 {1 letra minúscula} other {# letras minúsculas} }", + "new-passwords-not-match": "A nova senha não coincide", + "password-should-not-contain-spaces": "Sua senha não deve conter espaços", + "password-not-meet-requirements": "A senha não atende aos requisitos", + "password-requirements": "Requisitos de senha", + "password-should-difference": "A nova senha deve ser diferente da atual", + "special-character": "{ count, plural, =1 {1 caractere especial} other {# caracteres especiais} }", + "uppercase-letter": "{ count, plural, =1 {1 letra maiúscula} other {# letras maiúsculas} }", + "at-most": "No máximo:" + } }, "relation": { "relations": "Relações", "direction": "Direção", + "clear-relation-type": "Limpar tipo de relação", "search-direction": { "FROM": "De", "TO": "Para" @@ -1422,214 +4418,2152 @@ }, "from-relations": "Relações de saída", "to-relations": "Relações de entrada", - "selected-relations": "{ count, plural, =1 {1 relation} other {# relations} } selecionado(s)", + "selected-relations": "{ count, plural, =1 {1 relação} other {# relações} } selecionada(s)", "type": "Tipo", - "to-entity-type": "Para tipo de entidade", - "to-entity-name": "Para nome de entidade", - "from-entity-type": "De tipo de entidade", - "from-entity-name": "De nome de entidade", - "to-entity": "Para entidade", - "from-entity": "De entidade", + "to-entity-type": "Tipo de entidade destino", + "to-entity-name": "Nome da entidade destino", + "from-entity-type": "Tipo de entidade origem", + "from-entity-name": "Nome da entidade origem", + "to-entity": "Entidade destino", + "from-entity": "Entidade origem", "delete": "Excluir relação", "relation-type": "Tipo de relação", - "relation-type-required": "O tipo de relação é obrigatório.", + "relation-type-required": "Tipo de relação é obrigatório.", + "relation-type-max-length": "Tipo de relação deve ter menos de 256 caracteres", "any-relation-type": "Qualquer tipo", "add": "Adicionar relação", "edit": "Editar relação", "delete-to-relation-title": "Tem certeza de que deseja excluir a relação com a entidade '{{entityName}}'?", - "delete-to-relation-text": "Cuidado, após confirmar, a relação da entidade '{{entityName}}' com a entidade atual será anulada.", - "delete-to-relations-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 relation} other {# relations} }?", - "delete-to-relations-text": "Cuidado, após confirmar, todas as relações serão removidas e a relação das entidades correspondentes com a entidade atual será anulada.", + "delete-to-relation-text": "Atenção: após a confirmação, a entidade '{{entityName}}' ficará sem relação com a entidade atual.", + "delete-to-relations-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 relação} other {# relações} }?", + "delete-to-relations-text": "Atenção: após a confirmação, todas as relações selecionadas serão removidas e as entidades correspondentes ficarão sem relação com a entidade atual.", "delete-from-relation-title": "Tem certeza de que deseja excluir a relação da entidade '{{entityName}}'?", - "delete-from-relation-text": "Cuidado, após confirmar, a relação da entidade atual com a entidade '{{entityName}}' será anulada.", - "delete-from-relations-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 relation} other {# relations} }?", - "delete-from-relations-text": "Cuidado, após confirmar, todas as relações serão removidas e a relação da entidade atual com as entidades correspondentes será anulada.", + "delete-from-relation-text": "Atenção: após a confirmação, a entidade atual ficará sem relação com a entidade '{{entityName}}'.", + "delete-from-relations-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 relação} other {# relações} }?", + "delete-from-relations-text": "Atenção: após a confirmação, todas as relações selecionadas serão removidas e a entidade atual ficará sem relação com as entidades correspondentes.", "remove-relation-filter": "Remover filtro de relação", + "remove-filter": "Remover filtro", "add-relation-filter": "Adicionar filtro de relação", "any-relation": "Qualquer relação", "relation-filters": "Filtros de relação", + "relation-filter": "Filtro de relação", "additional-info": "Informações adicionais (JSON)", - "invalid-additional-info": "Impossível analisar informações adicionais de json", - "no-relations-text": "Nenhuma relação encontrada" + "invalid-additional-info": "Não foi possível analisar o JSON de informações adicionais.", + "no-relations-text": "Nenhuma relação encontrada", + "not": "Não" + }, + "resource": { + "add": "Adicionar recurso", + "all-types": "Todos", + "copyId": "Copiar ID do recurso", + "delete": "Excluir recurso", + "delete-resource-text": "Atenção: após a confirmação, o recurso se tornará irrecuperável.", + "delete-resource-title": "Tem certeza de que deseja excluir o recurso '{{resourceTitle}}'?", + "delete-resources-action-title": "Excluir { count, plural, =1 {1 recurso} other {# recursos} }", + "delete-resources-text": "Observe que os recursos selecionados, mesmo que estejam sendo usados em perfis de dispositivos, serão excluídos.", + "delete-resources-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 recurso} other {# recursos} }?", + "download": "Baixar recurso", + "drop-file": "Solte um arquivo de recurso ou clique para selecionar um arquivo para enviar.", + "drop-resource-file-or": "Arraste e solte um arquivo de recurso ou", + "empty": "Recurso está vazio", + "file-name": "Nome do arquivo", + "idCopiedMessage": "ID do recurso foi copiado para a área de transferência", + "no-resource-matching": "Nenhum recurso correspondente a '{{widgetsBundle}}' foi encontrado.", + "no-resource-text": "Nenhum recurso encontrado", + "open-widgets-bundle": "Abrir conjunto de widgets", + "resource": "Recurso", + "resource-file": "Arquivo de recurso", + "resource-files": "Arquivos de recurso", + "resource-library-details": "Detalhes do recurso", + "resource-type": "Tipo de recurso", + "resources-library": "Biblioteca de recursos", + "search": "Pesquisar recursos", + "selected-resources": "{ count, plural, =1 {1 recurso} other {# recursos} } selecionado(s)", + "system": "Sistema", + "title": "Título", + "title-required": "Título é obrigatório.", + "title-max-length": "Título deve ter menos de 256 caracteres", + "type": { + "jks": "JKS", + "js-module": "Módulo JS", + "lwm2m-model": "Modelo LWM2M", + "pkcs-12": "PKCS #12", + "general": "Geral" + }, + "resource-sub-type": "Subtipo", + "sub-type": { + "image": "imagem", + "scada-symbol": "Símbolo Scada", + "extension": "Extensão", + "module": "Módulo" + }, + "resource-is-in-use": "Recurso está sendo usado por outras entidades", + "resources-are-in-use": "Recursos estão sendo usados por outras entidades", + "resource-is-in-use-text": "O recurso '{{title}}' não foi excluído porque está sendo usado pelas seguintes entidades:", + "resources-are-in-use-text": "Nem todos os recursos foram excluídos porque estão sendo usados por outras entidades.
Você pode visualizar as entidades referenciadas clicando no botão Referências na linha do recurso correspondente.
Se ainda quiser excluir esses recursos, selecione-os na tabela abaixo e clique no botão Excluir selecionados.", + "delete-resource-in-use-text": "Se ainda quiser excluir o recurso, clique no botão Excluir assim mesmo." + }, + "javascript": { + "add": "Adicionar recurso JavaScript", + "delete": "Excluir recurso JavaScript", + "delete-javascript-resource-text": "Atenção: após a confirmação, o recurso JavaScript se tornará irrecuperável.", + "delete-javascript-resource-title": "Tem certeza de que deseja excluir o recurso JavaScript '{{resourceTitle}}'?", + "delete-javascript-resources-action-title": "Excluir JavaScript { count, plural, =1 {1 recurso} other {# recursos} }", + "delete-javascript-resources-text": "Observe que os recursos JavaScript selecionados, mesmo que estejam sendo usados em funções JavaScript, serão excluídos.", + "delete-javascript-resources-title": "Tem certeza de que deseja excluir JavaScript { count, plural, =1 {1 recurso} other {# recursos} }?", + "delete-javascript-resource-in-use-text": "Se ainda quiser excluir o recurso JavaScript, clique no botão Excluir assim mesmo.", + "download": "Baixar recurso JavaScript", + "upload-from-file": "Enviar JavaScript de arquivo", + "resource-file": "Arquivo de recurso JavaScript", + "drop-file": "Solte um arquivo JavaScript ou clique para selecionar um arquivo para enviar.", + "drop-resource-file-or": "Arraste e solte um arquivo JavaScript ou", + "javascript-library": "Biblioteca JavaScript", + "javascript-type": "Tipo JavaScript", + "javascript-resource-details": "Detalhes do recurso JavaScript", + "javascript-resource-is-in-use": "Recurso JavaScript está sendo usado por outras entidades", + "javascript-resources-are-in-use": "Recursos JavaScript estão sendo usados por outras entidades", + "javascript-resource-is-in-use-text": "O recurso JavaScript '{{title}}' não foi excluído porque está sendo usado pelas seguintes entidades:", + "javascript-resources-are-in-use-text": "Nem todos os recursos JavaScript foram excluídos porque estão sendo usados por outras entidades.
Você pode visualizar as entidades referenciadas clicando no botão Referências na linha do recurso correspondente.
Se ainda quiser excluir esses recursos JavaScript, selecione-os na tabela abaixo e clique no botão Excluir selecionados.", + "search": "Pesquisar recursos JavaScript", + "selected-javascript-resources": "{ count, plural, =1 {1 recurso JavaScript} other {# recursos JavaScript} } selecionado(s)", + "no-javascript-resource-text": "Nenhum recurso JavaScript encontrado", + "all-types": "Todos", + "module-script": "Script de módulo" + }, + "rpc": { + "error": { + "target-device-is-not-set": "Dispositivo de destino não está definido!", + "invalid-target-entity": "Comandos RPC não são suportados pela entidade {{entityType}}.", + "failed-to-resolve-target-device": "Falha ao resolver o dispositivo de destino!", + "request-timeout": "Tempo limite da solicitação", + "rpc-http-error": "Erro: {{status}} - {{statusText}}" + } }, "rulechain": { "rulechain": "Cadeia de regras", + "rulechain-events": "Eventos da cadeia de regras", "rulechains": "Cadeias de regras", "root": "Raiz", "delete": "Excluir cadeia de regras", "name": "Nome", - "name-required": "O nome é obrigatório.", + "name-required": "Nome é obrigatório.", + "name-max-length": "Nome deve ter menos de 256 caracteres", "description": "Descrição", "add": "Adicionar cadeia de regras", - "set-root": "Tornar cadeia de regras em raiz", - "set-root-rulechain-title": "Tem certeza de que deseja tornar a cadeia de regras '{{ruleChainName}}' em raiz?", - "set-root-rulechain-text": "Após confirmar, a cadeia de regras se tornará em raiz e irá tratar todas as mensagens de transporte recebidas.", + "set-root": "Definir cadeia de regras como raiz", + "set-root-rulechain-title": "Tem certeza de que deseja definir a cadeia de regras '{{ruleChainName}}' como raiz?", + "set-root-rulechain-text": "Após a confirmação, a cadeia de regras se tornará raiz e irá processar todas as mensagens de transporte recebidas.", "delete-rulechain-title": "Tem certeza de que deseja excluir a cadeia de regras '{{ruleChainName}}'?", - "delete-rulechain-text": "Cuidado, após confirmar, não será possível recuperar a cadeia de regras e todos os dados associados.", - "delete-rulechains-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 rule chain} other {# rule chains} }?", - "delete-rulechains-action-title": "Excluir { count, plural, =1 {1 rule chain} other {# rule chains} }", - "delete-rulechains-text": "Cuidado, após confirmar, todas as cadeias de regras serão removidas e não será possível recuperar nenhum dado associado.", + "delete-rulechain-text": "Atenção: após a confirmação, a cadeia de regras e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-rulechains-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 cadeia de regras} other {# cadeias de regras} }?", + "delete-rulechains-action-title": "Excluir { count, plural, =1 {1 cadeia de regras} other {# cadeias de regras} }", + "delete-rulechains-text": "Atenção: após a confirmação, todas as cadeias de regras selecionadas serão removidas e todos os dados relacionados se tornarão irrecuperáveis.", "add-rulechain-text": "Adicionar nova cadeia de regras", "no-rulechains-text": "Nenhuma cadeia de regras encontrada", - "rulechain-details": "Detalhes de cadeia de regras", + "rulechain-details": "Detalhes da cadeia de regras", "details": "Detalhes", "events": "Eventos", "system": "Sistema", "import": "Importar cadeia de regras", "export": "Exportar cadeia de regras", - "export-failed-error": "Impossível exportar cadeia de regras: {{error}}", + "export-failed-error": "Não foi possível exportar a cadeia de regras: {{error}}", "create-new-rulechain": "Criar nova cadeia de regras", "rulechain-file": "Arquivo de cadeia de regras", - "invalid-rulechain-file-error": "Impossível importar cadeia de regras: Estrutura de dados de cadeia de regras inválida.", - "copyId": "Copiar ID de cadeia de regras", - "idCopiedMessage": "O ID da cadeia de regras foi copiado para a área de transferência", + "invalid-rulechain-file-error": "Não foi possível importar a cadeia de regras: estrutura de dados da cadeia de regras inválida.", + "copyId": "Copiar ID da cadeia de regras", + "idCopiedMessage": "ID da cadeia de regras foi copiado para a área de transferência", "select-rulechain": "Selecionar cadeia de regras", - "no-rulechains-matching": "Nenhuma cadeia de regras encontrada que coincida com '{{entity}}'.", - "rulechain-required": "A cadeia de regras é obrigatória", + "no-rulechains-matching": "Nenhuma cadeia de regras correspondente a '{{entity}}' foi encontrada.", + "rulechain-required": "Cadeia de regras é obrigatória", "management": "Gerenciamento de regras", "debug-mode": "Modo de depuração", "search": "Pesquisar cadeias de regras", - "selected-rulechains": "{ count, plural, =1 {1 rule chain} other {# rule chains} } selecionada(s)", - "open-rulechain": "Abrir cadeia de regras" + "selected-rulechains": "{ count, plural, =1 {1 cadeia de regras} other {# cadeias de regras} } selecionada(s)", + "open-rulechain": "Abrir cadeia de regras", + "edge-template-root": "Raiz do template", + "assign-to-edge": "Atribuir ao edge", + "edge-rulechain": "Cadeia de regras do edge", + "unassign-rulechain-from-edge-text": "Após a confirmação, a cadeia de regras será desatribuída e não estará acessível pelo edge.", + "unassign-rulechains-from-edge-title": "Tem certeza de que deseja desatribuir { count, plural, =1 {1 cadeia de regras} other {# cadeias de regras} }?", + "unassign-rulechains-from-edge-text": "Após a confirmação, todas as cadeias de regras selecionadas serão desatribuídas e não estarão acessíveis pelo edge.", + "assign-rulechain-to-edge-title": "Atribuir cadeia(s) de regras ao edge", + "assign-rulechain-to-edge-text": "Selecione as cadeias de regras para atribuir ao edge", + "set-edge-template-root-rulechain": "Definir cadeia de regras como raiz do template do edge", + "set-edge-template-root-rulechain-title": "Tem certeza de que deseja definir a cadeia de regras '{{ruleChainName}}' como raiz do template do edge?", + "set-edge-template-root-rulechain-text": "Após a confirmação, a cadeia de regras se tornará a raiz do template do edge e será a cadeia de regras raiz para os edges criados.", + "invalid-rulechain-type-error": "Não foi possível importar a cadeia de regras: tipo de cadeia de regras inválido. O tipo esperado é {{expectedRuleChainType}}.", + "set-auto-assign-to-edge": "Atribuir cadeia de regras ao(s) edge(s) na criação", + "set-auto-assign-to-edge-title": "Tem certeza de que deseja atribuir a cadeia de regras do edge '{{ruleChainName}}' ao(s) edge(s) na criação?", + "set-auto-assign-to-edge-text": "Após a confirmação, a cadeia de regras do edge será automaticamente atribuída ao(s) edge(s) na criação.", + "unset-auto-assign-to-edge": "Não atribuir cadeia de regras ao(s) edge(s) na criação", + "unset-auto-assign-to-edge-title": "Tem certeza de que não deseja atribuir a cadeia de regras do edge '{{ruleChainName}}' ao(s) edge(s) na criação?", + "unset-auto-assign-to-edge-text": "Após a confirmação, a cadeia de regras do edge não será mais automaticamente atribuída ao(s) edge(s) na criação.", + "unassign-rulechain-title": "Tem certeza de que deseja desatribuir a cadeia de regras '{{ruleChainName}}'?", + "unassign-rulechains": "Desatribuir cadeias de regras" }, "rulenode": { + "rule-node-events": "Eventos do nó de regra", "details": "Detalhes", "events": "Eventos", "search": "Pesquisar nós", "open-node-library": "Abrir biblioteca de nós", + "close-node-library": "Fechar biblioteca de nós", "add": "Adicionar nó de regra", "name": "Nome", - "name-required": "O nome é obrigatório.", + "name-required": "Nome é obrigatório.", + "name-max-length": "Nome deve ter menos de 256 caracteres", "type": "Tipo", - "description": "Descrição", - "delete": "Excluir nó de regras", + "rule-node-description": "Descrição do nó de regra", + "delete": "Excluir nó de regra", "select-all-objects": "Selecionar todos os nós e conexões", "deselect-all-objects": "Desmarcar todos os nós e conexões", "delete-selected-objects": "Excluir nós e conexões selecionados", - "delete-selected": "Excluir selecionado", + "delete-selected": "Excluir selecionados", + "create-nested-rulechain": "Criar cadeia de regras aninhada", "select-all": "Selecionar tudo", - "copy-selected": "Copiar selecionado(s)", + "copy-selected": "Copiar selecionados", "deselect-all": "Desmarcar tudo", - "rulenode-details": "Detalhes do nó de regras", + "rulenode-details": "Detalhes do nó de regra", "debug-mode": "Modo de depuração", + "singleton": "Singleton", "configuration": "Configuração", "link": "Link", - "link-details": "Detalhes do link do nó de regras", + "link-details": "Detalhes do link do nó de regra", "add-link": "Adicionar link", - "link-label": "Etiqueta de link", - "link-label-required": "A etiqueta de link é obrigatória.", - "custom-link-label": "Etiqueta de link personalizada", - "custom-link-label-required": "A etiqueta de link personalizada é obrigatória.", - "link-labels": "Etiquetas de links", - "link-labels-required": "As etiquetas de links são obrigatórias.", - "no-link-labels-found": "Nenhuma etiqueta de link encontrada", + "link-label": "Rótulo do link", + "link-label-required": "Rótulo do link é obrigatório.", + "custom-link-label": "Rótulo de link personalizado", + "custom-link-label-required": "Rótulo de link personalizado é obrigatório.", + "link-labels": "Rótulos do link", + "link-labels-required": "Rótulos do link são obrigatórios.", + "no-link-labels-found": "Nenhum rótulo de link encontrado", "no-link-label-matching": "'{{label}}' não encontrado.", "create-new-link-label": "Criar um novo!", - "type-filter": "Filtrar", + "type-filter": "Filtro", "type-filter-details": "Filtrar mensagens recebidas com condições configuradas", "type-enrichment": "Enriquecimento", - "type-enrichment-details": "Adicionar informações adicionais aos Metadados de mensagens", + "type-enrichment-details": "Adicionar informações adicionais nos Metadados da mensagem", "type-transformation": "Transformação", - "type-transformation-details": "Alterar payload e metadados de mensagens", + "type-transformation-details": "Alterar payload e Metadados da mensagem", "type-action": "Ação", "type-action-details": "Executar ação especial", "type-external": "Externo", "type-external-details": "Interage com sistema externo", - "type-rule-chain": "Cadeia de Regras", - "type-rule-chain-details": "Encaminha mensagens recebidas para cadeia de regras especificada", + "type-rule-chain": "Cadeia de regras", + "type-rule-chain-details": "Encaminha mensagens recebidas para a cadeia de regras especificada", + "type-flow": "Fluxo", + "type-flow-details": "Organiza o fluxo de mensagens", "type-input": "Entrada", - "type-input-details": "Entrada lógica de cadeia de regras, encaminha mensagens recebidas para nó de regras associado", + "type-input-details": "Entrada lógica da cadeia de regras, encaminha mensagens recebidas para o próximo nó de regra relacionado", "type-unknown": "Desconhecido", - "type-unknown-details": "Nó de regras não resolvido", - "directive-is-not-loaded": "Diretriz de configuração '{{directiveName}}' definida não está disponível.", - "ui-resources-load-error": "Erro ao carregar configuração de recursos de interface de usuário.", - "invalid-target-rulechain": "Impossível resolver cadeia de regras alvo!", - "test-script-function": "Testar funcionamento de script", + "type-unknown-details": "Nó de regra não resolvido", + "directive-is-not-loaded": "A diretiva de configuração definida '{{directiveName}}' não está disponível.", + "ui-resources-load-error": "Falha ao carregar recursos de interface de configuração.", + "invalid-target-rulechain": "Não foi possível resolver a cadeia de regras de destino!", + "test-script-function": "Testar função de script", + "script-lang-java-script": "JavaScript", + "script-lang-tbel": "TBEL", "message": "Mensagem", "message-type": "Tipo de mensagem", "select-message-type": "Selecionar tipo de mensagem", - "message-type-required": "O tipo de mensagem é obrigatório", + "message-type-required": "Tipo de mensagem é obrigatório", "metadata": "Metadados", - "metadata-required": "As entradas de metadados não podem estar em branco.", + "metadata-required": "As entradas de metadados não podem estar vazias.", "output": "Saída", - "test": "Teste", - "help": "Ajuda" + "test": "Testar", + "help": "Ajuda", + "reset-debug-settings": "Redefinir configurações de depuração em todos os nós", + "test-with-this-message": "{{test}} com esta mensagem", + "queue-hint": "Selecione uma fila para encaminhamento de mensagens para outra fila. A fila 'Main' é usada por padrão.", + "queue-singleton-hint": "Selecione uma fila para encaminhamento de mensagens em ambientes com múltiplas instâncias. A fila 'Main' é usada por padrão." + }, + "rule-node-config": { + "id": "Id", + "additional-info": "Informações adicionais", + "advanced-settings": "Configurações avançadas", + "create-entity-if-not-exists": "Criar nova entidade se não existir", + "create-entity-if-not-exists-hint": "Se habilitado, uma nova entidade com os parâmetros especificados será criada caso ainda não exista. As entidades existentes serão usadas como estão para a relação.", + "select-device-connectivity-event": "Selecionar evento de conectividade do dispositivo", + "entity-name-pattern": "Padrão de nome", + "device-name-pattern": "Nome do dispositivo", + "asset-name-pattern": "Nome do ativo", + "entity-view-name-pattern": "Nome da visualização de entidade", + "customer-title-pattern": "Título do cliente", + "dashboard-name-pattern": "Título do dashboard", + "user-name-pattern": "Email do usuário", + "edge-name-pattern": "Nome do edge", + "entity-name-pattern-required": "O padrão de nome é obrigatório", + "entity-name-pattern-hint": "O campo de padrão de nome suporta templatização. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "copy-message-type": "Copiar tipo de mensagem", + "entity-type-pattern": "Padrão de tipo", + "entity-type-pattern-required": "O padrão de tipo é obrigatório", + "message-type-value": "Valor do tipo de mensagem", + "message-type-value-required": "O valor do tipo de mensagem é obrigatório", + "message-type-value-max-length": "O valor do tipo de mensagem deve ter menos de 256 caracteres", + "output-message-type": "Tipo de mensagem de saída", + "entity-cache-expiration": "Tempo de expiração do cache de entidades (seg)", + "entity-cache-expiration-hint": "Especifica o intervalo de tempo máximo permitido para armazenar os registros de entidades encontrados. O valor 0 significa que os registros nunca expirarão.", + "entity-cache-expiration-required": "O tempo de expiração do cache de entidades é obrigatório.", + "entity-cache-expiration-range": "O tempo de expiração do cache de entidades deve ser maior ou igual a 0.", + "customer-name-pattern": "Título do cliente", + "customer-name-pattern-required": "O título do cliente é obrigatório", + "customer-name-pattern-hint": "Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "create-customer-if-not-exists": "Criar novo cliente se não existir", + "unassign-from-customer": "Desatribuir de cliente específico se o originador for um dashboard", + "unassign-from-customer-tooltip": "Apenas dashboards podem ser atribuídos a múltiplos clientes ao mesmo tempo. \nSe o originador da mensagem for um dashboard, é necessário especificar explicitamente o título do cliente para desatribuir.", + "customer-cache-expiration": "Tempo de expiração do cache de clientes (seg)", + "customer-cache-expiration-hint": "Especifica o intervalo de tempo máximo permitido para armazenar os registros de clientes encontrados. O valor 0 significa que os registros nunca expirarão.", + "customer-cache-expiration-required": "O tempo de expiração do cache de clientes é obrigatório.", + "customer-cache-expiration-range": "O tempo de expiração do cache de clientes deve ser maior ou igual a 0.", + "interval-start": "Início do intervalo", + "interval-end": "Fim do intervalo", + "time-unit": "Unidade de tempo", + "fetch-mode": "Modo de busca", + "order-by-timestamp": "Ordenar por timestamp", + "limit": "Limite", + "limit-hint": "O valor mínimo do limite é 2 e o máximo é 1000. Se desejar buscar uma única entrada, selecione o modo de busca 'Primeiro' ou 'Último'.", + "limit-required": "O limite é obrigatório.", + "limit-range": "O limite deve estar no intervalo de 2 a 1000.", + "time-unit-milliseconds": "Milissegundos", + "time-unit-seconds": "Segundos", + "time-unit-minutes": "Minutos", + "time-unit-hours": "Horas", + "time-unit-days": "Dias", + "time-value-range": "Intervalo permitido de 1 a 2147483647.", + "start-interval-value-required": "O início do intervalo é obrigatório.", + "end-interval-value-required": "O fim do intervalo é obrigatório.", + "filter": "Filtro", + "switch": "Switch", + "math-templatization-tooltip": "Este campo suporta templatização. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "add-message-type": "Adicionar tipo de mensagem", + "select-message-types-required": "Pelo menos um tipo de mensagem deve ser selecionado.", + "select-message-types": "Selecionar tipos de mensagem", + "no-message-types-found": "Nenhum tipo de mensagem encontrado", + "no-message-type-matching": "'{{messageType}}' não encontrado.", + "create-new-message-type": "Criar um novo.", + "message-types-required": "Os tipos de mensagem são obrigatórios.", + "client-attributes": "Atributos do cliente", + "shared-attributes": "Atributos compartilhados", + "server-attributes": "Atributos do servidor", + "attributes-keys": "Chaves de atributos", + "attributes-keys-required": "As chaves de atributos são obrigatórias", + "attributes-scope": "Escopo dos atributos", + "attributes-scope-value": "Valor do escopo dos atributos", + "attributes-scope-value-copy": "Copiar valor do escopo dos atributos", + "attributes-scope-hint": "Use a chave de metadados 'scope' para definir dinamicamente o escopo do atributo por mensagem. Se fornecida, isso substitui o escopo definido na configuração.", + "notify-device": "Forçar notificação ao dispositivo", + "send-attributes-updated-notification": "Enviar notificação de atributos atualizados", + "send-attributes-updated-notification-hint": "Envia notificação sobre atributos atualizados como uma mensagem separada para a fila do motor de regras.", + "send-attributes-deleted-notification": "Enviar notificação de atributos excluídos", + "send-attributes-deleted-notification-hint": "Envia notificação sobre atributos excluídos como uma mensagem separada para a fila do motor de regras.", + "update-attributes-only-on-value-change": "Salvar atributos somente se o valor mudar", + "update-attributes-only-on-value-change-hint": "Atualiza os atributos a cada mensagem recebida independentemente de o valor ter mudado. Aumenta o uso da API e reduz o desempenho.", + "update-attributes-only-on-value-change-hint-enabled": "Atualiza os atributos somente se o valor tiver mudado. Se o valor não for alterado, nenhuma atualização no timestamp do atributo nem notificação de alteração de atributo será enviada.", + "fetch-credentials-to-metadata": "Buscar credenciais para os metadados", + "notify-device-on-update-hint": "Se habilitado, força a notificação ao dispositivo sobre a atualização de atributos compartilhados. Se desabilitado, o comportamento da notificação é controlado pelo parâmetro 'notifyDevice' dos metadados da mensagem recebida. Para desativar a notificação, os metadados da mensagem devem conter o parâmetro 'notifyDevice' definido como 'false'. Em qualquer outro caso, a notificação será enviada ao dispositivo.", + "notify-device-on-delete-hint": "Se habilitado, força a notificação ao dispositivo sobre a remoção de atributos compartilhados. Se desabilitado, o comportamento da notificação é controlado pelo parâmetro 'notifyDevice' dos metadados da mensagem recebida. Para ativar a notificação, os metadados da mensagem devem conter o parâmetro 'notifyDevice' definido como 'true'. Em qualquer outro caso, a notificação não será disparada para o dispositivo.", + "latest-timeseries": "Chaves de dados de séries temporais mais recentes", + "timeseries-keys": "Chaves de séries temporais", + "timeseries-keys-required": "Pelo menos uma chave de série temporal deve ser selecionada.", + "add-timeseries-key": "Adicionar chave de série temporal", + "add-message-field": "Adicionar campo de mensagem", + "relation-search-parameters": "Parâmetros de busca de relação", + "relation-parameters": "Parâmetros de relação", + "add-metadata-field": "Adicionar campo de metadados", + "data-keys": "Nomes dos campos da mensagem", + "copy-from": "Copiar de", + "data-to-metadata": "Dados para metadados", + "metadata-to-data": "Metadados para dados", + "use-regular-expression-hint": "Use expressão regular para copiar chaves por padrão.\n\nDicas e truques:\nPressione 'Enter' para concluir a entrada do nome do campo.\nPressione 'Backspace' para excluir o nome do campo. Múltiplos nomes de campos são suportados.", + "interval": "Intervalo", + "interval-required": "O intervalo é obrigatório", + "interval-hint": "Intervalo de deduplicação em segundos.", + "interval-min-error": "O valor mínimo permitido é 1", + "max-pending-msgs": "Máximo de mensagens pendentes", + "max-pending-msgs-hint": "Número máximo de mensagens armazenadas em memória para cada id de deduplicação único.", + "max-pending-msgs-required": "O máximo de mensagens pendentes é obrigatório", + "max-pending-msgs-max-error": "O valor máximo permitido é 1000", + "max-pending-msgs-min-error": "O valor mínimo permitido é 1", + "max-retries": "Máximo de tentativas", + "max-retries-required": "O máximo de tentativas é obrigatório", + "max-retries-hint": "Número máximo de tentativas para enviar as mensagens deduplicadas para a fila. Um atraso de 10 segundos é utilizado entre as tentativas", + "max-retries-max-error": "O valor máximo permitido é 100", + "max-retries-min-error": "O valor mínimo permitido é 0", + "strategy": "Estratégia", + "strategy-required": "A estratégia é obrigatória", + "strategy-all-hint": "Retorna todas as mensagens recebidas durante o período de deduplicação como uma única mensagem de array JSON. Onde cada elemento representa um objeto com as propriedades internas msg e metadata.", + "strategy-first-hint": "Retorna a primeira mensagem recebida durante o período de deduplicação.", + "strategy-last-hint": "Retorna a última mensagem recebida durante o período de deduplicação.", + "first": "Primeiro", + "last": "Último", + "all": "Todos", + "output-msg-type-hint": "O tipo de mensagem do resultado de deduplicação.", + "queue-name-hint": "O nome da fila onde o resultado de deduplicação será publicado.", + "keys": "Chaves", + "keys-required": "As chaves são obrigatórias", + "rename-keys-in": "Renomear chaves em", + "data": "Dados", + "message": "Mensagem", + "metadata": "Metadados", + "current-key-name": "Nome da chave atual", + "key-name-required": "O nome da chave é obrigatório", + "new-key-name": "Novo nome de chave", + "new-key-name-required": "O novo nome de chave é obrigatório", + "metadata-keys": "Nomes dos campos de metadados", + "json-path-expression": "Expressão de caminho JSON", + "json-path-expression-required": "A expressão de caminho JSON é obrigatória", + "json-path-expression-hint": "O JSONPath especifica um caminho para um elemento ou conjunto de elementos em uma estrutura JSON. '$' representa o objeto ou array raiz.", + "relations-query": "Consulta de relações", + "device-relations-query": "Consulta de relações de dispositivos", + "max-relation-level": "Nível máximo de relação", + "max-relation-level-error": "O valor deve ser maior que 0 ou não especificado.", + "max-relation-level-invalid": "O valor deve ser um número inteiro.", + "relation-type": "Tipo de relação", + "relation-type-pattern": "Padrão de tipo de relação", + "relation-type-pattern-required": "O padrão de tipo de relação é obrigatório", + "relation-types-list": "Tipos de relação a propagar", + "relation-types-list-hint": "Se os tipos de relação a propagar não forem selecionados, os alarmes serão propagados sem filtragem por tipo de relação.", + "unlimited-level": "Nível ilimitado", + "latest-telemetry": "Telemetria mais recente", + "add-telemetry-key": "Adicionar chave de telemetria", + "delete-from": "Excluir de", + "use-regular-expression-delete-hint": "Use expressão regular para excluir chaves por padrão.\n\nDicas e truques:\nPressione 'Enter' para concluir a entrada do nome do campo.\nPressione 'Backspace' para excluir o nome do campo.\nMúltiplos nomes de campos são suportados.", + "fetch-into": "Buscar em", + "attr-mapping": "Mapeamento de atributos:", + "source-attribute": "Chave do atributo de origem", + "source-attribute-required": "A chave do atributo de origem é obrigatória.", + "source-telemetry": "Chave de telemetria de origem", + "source-telemetry-required": "A chave de telemetria de origem é obrigatória.", + "target-key": "Chave de destino", + "target-key-required": "A chave de destino é obrigatória.", + "attr-mapping-required": "Pelo menos uma entrada de mapeamento deve ser especificada.", + "fields-mapping": "Mapeamento de campos", + "fields-mapping-hint": "Se o campo da mensagem for definido como $entityId, o id do originador da mensagem será salvo na coluna da tabela especificada.", + "relations-query-config-direction-suffix": "originador", + "profile-name": "Nome do perfil", + "fetch-circle-parameter-info-from-metadata-hint": "O campo de metadados '{{perimeterKeyName}}' deve ser definido no seguinte formato: {\"latitude\":48.196, \"longitude\":24.6532, \"radius\":100.0, \"radiusUnit\":\"METER\"}", + "fetch-poligon-parameter-info-from-metadata-hint": "O campo de metadados '{{perimeterKeyName}}' deve ser definido no seguinte formato: [[48.19736,24.65235],[48.19800,24.65060],...,[48.19849,24.65420]]", + "short-templatization-tooltip": "Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "fields-mapping-required": "Pelo menos um mapeamento de campo deve ser especificado.", + "at-least-one-field-required": "Pelo menos um campo de entrada deve ter valor(es) fornecido(s).", + "originator-fields-sv-map-hint": "Os campos de chave de destino suportam templatização. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "sv-map-hint": "Apenas os campos de chave de destino suportam templatização. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "source-field": "Campo de origem", + "source-field-required": "O campo de origem é obrigatório.", + "originator-source": "Fonte do originador", + "new-originator": "Novo originador", + "originator-customer": "Cliente", + "originator-tenant": "Tenant", + "originator-related": "Entidade relacionada", + "originator-alarm-originator": "Originador do alarme", + "originator-entity": "Entidade por padrão de nome", + "clone-message": "Clonar mensagem", + "transform": "Transformar", + "default-ttl": "TTL padrão", + "default-ttl-required": "O TTL padrão é obrigatório.", + "default-ttl-hint": "O nó de regra buscará o valor de Time-to-Live (TTL) nos metadados da mensagem. Se nenhum valor estiver presente, o padrão será o TTL especificado na configuração. Se o valor for definido como 0, o TTL da configuração do perfil do tenant será aplicado.", + "default-ttl-zero-hint": "O TTL não será aplicado se seu valor for definido como 0.", + "min-default-ttl-message": "Apenas o TTL mínimo de 0 é permitido.", + "generation-parameters": "Parâmetros de geração", + "message-count": "Limite de mensagens geradas (0 - ilimitado)", + "message-count-required": "O limite de mensagens geradas é obrigatório.", + "min-message-count-message": "Apenas a contagem mínima de mensagens igual a 0 é permitida.", + "period-seconds": "Período em segundos", + "period-seconds-required": "O período é obrigatório.", + "generation-frequency-seconds": "Frequência de geração em segundos", + "generation-frequency-required": "A frequência de geração é obrigatória.", + "min-generation-frequency-message": "O mínimo permitido é 60 segundos.", + "script-lang-tbel": "TBEL", + "script-lang-js": "JS", + "use-metadata-period-in-seconds-patterns": "Usar padrão de período em segundos", + "use-metadata-period-in-seconds-patterns-hint": "Se selecionado, o nó de regra usa o padrão de intervalo de período em segundos dos metadados ou dados da mensagem, assumindo que os intervalos estão em segundos.", + "period-in-seconds-pattern": "Padrão de período em segundos", + "period-in-seconds-pattern-required": "O padrão de período em segundos é obrigatório", + "min-period-seconds-message": "O período mínimo permitido é 60 segundos.", + "originator": "Originador", + "message-body": "Corpo da mensagem", + "message-metadata": "Metadados da mensagem", + "generate": "Gerar", + "current-rule-node": "Nó de regra atual", + "current-tenant": "Tenant atual", + "generator-function": "Função geradora", + "test-generator-function": "Testar função geradora", + "generator": "Gerador", + "test-filter-function": "Testar função de filtro", + "test-switch-function": "Testar função switch", + "test-transformer-function": "Testar função de transformação", + "transformer": "Transformador", + "alarm-create-condition": "Condição de criação de alarme", + "test-condition-function": "Testar função de condição", + "alarm-clear-condition": "Condição de limpeza de alarme", + "alarm-details-builder": "Construtor de detalhes do alarme", + "test-details-function": "Testar função de detalhes", + "alarm-type": "Tipo de alarme", + "select-entity-types": "Selecionar tipos de entidade", + "alarm-type-required": "O tipo de alarme é obrigatório.", + "alarm-severity": "Severidade do alarme", + "alarm-severity-required": "A severidade do alarme é obrigatória", + "alarm-severity-pattern": "Padrão de severidade do alarme", + "alarm-status-filter": "Filtro de status do alarme", + "alarm-status-list-empty": "A lista de status de alarme está vazia", + "no-alarm-status-matching": "Nenhum status de alarme correspondente foi encontrado.", + "propagate": "Propagar alarme para entidades relacionadas", + "propagate-to-owner": "Propagar alarme para o proprietário da entidade (Cliente ou Tenant)", + "propagate-to-tenant": "Propagar alarme para o Tenant", + "condition": "Condição", + "details": "Detalhes", + "to-string": "Para string", + "test-to-string-function": "Testar função para string", + "from-template": "De", + "from-template-required": "O campo De é obrigatório", + "message-to-metadata": "Mensagem para metadados", + "metadata-to-message": "Metadados para mensagem", + "from-message": "Da mensagem", + "from-metadata": "Dos metadados", + "to-template": "Para", + "to-template-required": "O template Para é obrigatório", + "mail-address-list-template-hint": "Lista de endereços separada por vírgula, use ${metadataKey} para valor dos metadados, $[messageKey] para valor do corpo da mensagem", + "cc-template": "Cc", + "bcc-template": "Bcc", + "subject-template": "Assunto", + "subject-template-required": "O template de Assunto é obrigatório", + "body-template": "Corpo", + "body-template-required": "O template de Corpo é obrigatório", + "dynamic-mail-body-type": "Tipo de corpo de email dinâmico", + "mail-body-type": "Tipo de corpo do email", + "body-type-template": "Template de tipo de corpo", + "reply-routing-configuration": "Configuração de roteamento de resposta", + "rpc-reply-routing-configuration-hint": "Estes parâmetros de configuração especificam os nomes das chaves de metadados usados para identificar o serviço, a sessão e a solicitação para o envio de uma resposta.", + "reply-routing-configuration-hint": "Estes parâmetros de configuração especificam os nomes das chaves de metadados usados para identificar o serviço e a solicitação para o envio de uma resposta.", + "request-id-metadata-attribute": "Id da solicitação", + "service-id-metadata-attribute": "Id do serviço", + "session-id-metadata-attribute": "Id da sessão", + "timeout-sec": "Tempo Limite em segundos", + "timeout-required": "O tempo limite é obrigatório", + "min-timeout-message": "Apenas o valor mínimo de tempo limite igual a 0 é permitido.", + "endpoint-url-pattern": "Padrão de URL do Endpoint", + "endpoint-url-pattern-required": "O padrão de URL do Endpoint é obrigatório", + "request-method": "Método da solicitação", + "use-simple-client-http-factory": "Usar factory HTTP de cliente simples", + "ignore-request-body": "Sem corpo de solicitação", + "parse-to-plain-text": "Converter para texto simples", + "parse-to-plain-text-hint": "Se selecionado, o payload da mensagem do corpo da solicitação será transformado de string JSON para texto simples, por exemplo, msg = \"Hello,\\t\"world\"\" será convertido para Hello, \"world\"", + "read-timeout": "Tempo Limite de leitura em milissegundos", + "read-timeout-hint": "O valor 0 significa tempo limite infinito", + "max-parallel-requests-count": "Número máximo de solicitações paralelas", + "max-parallel-requests-count-hint": "O valor 0 especifica sem limite no processamento paralelo", + "max-response-size": "Tamanho máximo de resposta (em KB)", + "max-response-size-hint": "A quantidade máxima de memória alocada para armazenamento em buffer de dados ao decodificar ou codificar mensagens HTTP, como payloads JSON ou XML", + "headers": "Cabeçalhos", + "headers-hint": "Use ${metadataKey} para valor dos metadados, $[messageKey] para valor do corpo da mensagem nos campos de cabeçalho/valor", + "header": "Cabeçalho", + "header-required": "O cabeçalho é obrigatório", + "value": "Valor", + "value-required": "O valor é obrigatório", + "topic-pattern": "Padrão de tópico", + "key-pattern": "Padrão de chave", + "key-pattern-hint": "Opcional. Se um número de partição válido for especificado, ele será usado ao enviar o registro. Se nenhuma partição for especificada, a chave será usada. Se nenhum dos dois for especificado, uma partição será atribuída de forma round-robin.", + "topic-pattern-required": "O padrão de tópico é obrigatório", + "topic": "Tópico", + "topic-required": "O tópico é obrigatório", + "bootstrap-servers": "Servidores de bootstrap", + "bootstrap-servers-required": "O valor dos servidores bootstrap é obrigatório", + "other-properties": "Outras propriedades", + "key": "Chave", + "key-required": "A chave é obrigatória", + "retries": "Número de tentativas automáticas em caso de falha", + "min-retries-message": "Apenas 0 tentativas mínimas é permitido.", + "batch-size-bytes": "Tamanho do lote produzido em bytes", + "min-batch-size-bytes-message": "Apenas 0 como tamanho mínimo de lote é permitido.", + "linger-ms": "Tempo de buffer local (ms)", + "min-linger-ms-message": "Apenas 0 ms como valor mínimo é permitido.", + "buffer-memory-bytes": "Tamanho máximo do buffer do cliente em bytes", + "min-buffer-memory-message": "Apenas 0 como tamanho mínimo de buffer é permitido.", + "memory-buffer-size-range": "O tamanho do buffer de memória deve estar entre 0 e {{max}} KB", + "acks": "Número de confirmações", + "topic-arn-pattern": "Padrão de ARN do tópico", + "topic-arn-pattern-required": "O padrão de ARN do tópico é obrigatório", + "aws-access-key-id": "AWS Access Key ID", + "aws-access-key-id-required": "AWS Access Key ID é obrigatório", + "aws-secret-access-key": "AWS Secret Access Key", + "aws-secret-access-key-required": "AWS Secret Access Key é obrigatório", + "aws-region": "Região AWS", + "aws-region-required": "Região AWS é obrigatória", + "exchange-name-pattern": "Padrão de nome de exchange", + "routing-key-pattern": "Padrão de chave de roteamento", + "message-properties": "Propriedades da mensagem", + "host": "Host", + "host-required": "O host é obrigatório", + "port": "Porta", + "port-required": "A porta é obrigatória", + "port-range": "A porta deve estar no intervalo de 1 a 65535.", + "virtual-host": "Host virtual", + "username": "Nome de usuário", + "password": "Senha", + "automatic-recovery": "Recuperação automática", + "connection-timeout-ms": "Tempo Limite de conexão (ms)", + "min-connection-timeout-ms-message": "Apenas 0 ms como valor mínimo é permitido.", + "handshake-timeout-ms": "Tempo Limite de handshake (ms)", + "min-handshake-timeout-ms-message": "Apenas 0 ms como valor mínimo é permitido.", + "client-properties": "Propriedades do cliente", + "queue-url-pattern": "Padrão de URL da fila", + "queue-url-pattern-required": "O padrão de URL da fila é obrigatório", + "delay-seconds": "Atraso (segundos)", + "min-delay-seconds-message": "Apenas 0 segundos como valor mínimo é permitido.", + "max-delay-seconds-message": "Apenas 900 segundos como valor máximo é permitido.", + "name": "Nome", + "name-required": "O nome é obrigatório", + "queue-type": "Tipo de fila", + "sqs-queue-standard": "Padrão", + "sqs-queue-fifo": "FIFO", + "gcp-project-id": "ID do projeto GCP", + "gcp-project-id-required": "O ID do projeto GCP é obrigatório", + "gcp-service-account-key": "Arquivo de chave de conta de serviço GCP", + "gcp-service-account-key-required": "O arquivo de chave de conta de serviço GCP é obrigatório", + "pubsub-topic-name": "Nome do tópico", + "pubsub-topic-name-required": "O nome do tópico é obrigatório", + "message-attributes": "Atributos da mensagem", + "message-attributes-hint": "Use ${metadataKey} para valor dos metadados, $[messageKey] para valor do corpo da mensagem nos campos de nome/valor", + "connect-timeout": "Tempo limite de conexão (seg)", + "connect-timeout-required": "O tempo limite de conexão é obrigatório.", + "connect-timeout-range": "O tempo limite de conexão deve estar no intervalo de 1 a 200.", + "client-id": "Client ID", + "client-id-hint": "Opcional. Deixe em branco para Client ID gerado automaticamente. Tenha cuidado ao especificar o Client ID. A maioria dos brokers MQTT não permite múltiplas conexões com o mesmo Client ID. Para conectar a esses brokers, seu Client ID MQTT deve ser único. Quando a plataforma está sendo executada no modo de microsserviços, a cópia do nó de regra é iniciada em cada microsserviço. Isso automaticamente levará a múltiplos clientes mqtt com o mesmo ID e pode causar falhas no nó de regra. Para evitar tais falhas, habilite a opção \"Adicionar ID do serviço como sufixo ao Client ID\" abaixo.", + "append-client-id-suffix": "Adicionar ID do serviço como sufixo ao Client ID", + "client-id-suffix-hint": "Opcional. Aplicado quando o \"Client ID\" é especificado explicitamente. Se selecionado, o ID do serviço será adicionado ao Client ID como sufixo. Ajuda a evitar falhas quando a plataforma está sendo executada no modo de microsserviços.", + "device-id": "ID do dispositivo", + "device-id-required": "O ID do dispositivo é obrigatório.", + "clean-session": "Sessão limpa", + "enable-ssl": "Habilitar SSL", + "credentials": "Credenciais", + "credentials-type": "Tipo de credenciais", + "credentials-type-required": "O tipo de credenciais é obrigatório.", + "credentials-anonymous": "Anônimo", + "credentials-basic": "Básico", + "credentials-pem": "PEM", + "credentials-pem-hint": "Pelo menos o arquivo de certificado CA do servidor ou um par de arquivos de certificado do cliente e chave privada do cliente são obrigatórios", + "credentials-sas": "Shared Access Signature", + "sas-key": "Chave SAS", + "sas-key-required": "A chave SAS é obrigatória.", + "hostname": "Nome do host", + "hostname-required": "O nome do host é obrigatório.", + "azure-ca-cert": "Arquivo de certificado CA", + "username-required": "O nome de usuário é obrigatório.", + "password-required": "A senha é obrigatória.", + "ca-cert": "Arquivo de certificado CA do servidor", + "private-key": "Arquivo de chave privada do cliente", + "cert": "Arquivo de certificado do cliente", + "no-file": "Nenhum arquivo selecionado.", + "drop-file": "Arraste um arquivo ou clique para selecionar um arquivo para upload.", + "private-key-password": "Senha da chave privada", + "use-system-smtp-settings": "Usar configurações SMTP do sistema", + "use-metadata-dynamic-interval": "Usar intervalo dinâmico", + "metadata-dynamic-interval-hint": "Os campos de entrada de início e fim do intervalo suportam templatização. O valor do template substituído deve ser definido em milissegundos. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "use-metadata-interval-patterns-hint": "Se selecionado, o nó de regra usa os padrões de intervalo de início e fim dos metadados ou dados da mensagem, assumindo que os intervalos estão em milissegundos.", + "use-message-alarm-data": "Usar dados de alarme da mensagem", + "overwrite-alarm-details": "Sobrescrever detalhes do alarme", + "use-alarm-severity-pattern": "Usar padrão de severidade de alarme", + "check-all-keys": "Verificar se todos os campos especificados estão presentes", + "check-all-keys-hint": "Se selecionado, verifica se todas as chaves especificadas estão presentes nos dados e metadados da mensagem.", + "check-relation-to-specific-entity": "Verificar relação com entidade específica", + "check-relation-to-specific-entity-tooltip": "Se habilitado, verifica a presença de relação com uma entidade específica; caso contrário, verifica a presença de relação com qualquer entidade. Em ambos os casos, a busca de relação é baseada na direção e no tipo configurados.", + "check-relation-hint": "Verifica a existência de relação com uma entidade específica ou com qualquer entidade com base na direção e no tipo de relação.", + "delete-relation-with-specific-entity": "Excluir relação com entidade específica", + "delete-relation-with-specific-entity-hint": "Se habilitado, excluirá a relação com apenas uma entidade específica. Caso contrário, a relação será removida de todas as entidades correspondentes.", + "delete-relation-hint": "Exclui a relação do originador da mensagem recebida para a entidade especificada ou lista de entidades com base na direção e no tipo.", + "remove-current-relations": "Remover relações atuais", + "remove-current-relations-hint": "Remove as relações atuais do originador da mensagem recebida com base na direção e no tipo.", + "change-originator-to-related-entity": "Alterar originador para entidade relacionada", + "change-originator-to-related-entity-hint": "Usado para processar a mensagem enviada como uma mensagem de outra entidade.", + "start-interval": "Início do intervalo", + "end-interval": "Fim do intervalo", + "start-interval-required": "O início do intervalo é obrigatório.", + "end-interval-required": "O fim do intervalo é obrigatório.", + "smtp-protocol": "Protocolo", + "smtp-host": "Host SMTP", + "smtp-host-required": "O host SMTP é obrigatório.", + "smtp-port": "Porta SMTP", + "smtp-port-required": "É necessário fornecer uma porta SMTP.", + "smtp-port-range": "A porta SMTP deve estar no intervalo de 1 a 65535.", + "timeout-msec": "Tempo Limite ms", + "min-timeout-msec-message": "Apenas 0 ms como valor mínimo é permitido.", + "enter-username": "Inserir nome de usuário", + "enter-password": "Inserir senha", + "enable-tls": "Habilitar TLS", + "tls-version": "Versão TLS", + "enable-proxy": "Ativar proxy", + "use-system-proxy-properties": "Usar propriedades de proxy do sistema", + "proxy-host": "Host do proxy", + "proxy-host-required": "O host do proxy é obrigatório.", + "proxy-port": "Porta do proxy", + "proxy-port-required": "A porta do proxy é obrigatória.", + "proxy-port-range": "A porta do proxy deve estar no intervalo de 1 a 65535.", + "proxy-user": "Usuário do proxy", + "proxy-password": "Senha do proxy", + "proxy-scheme": "Esquema do proxy", + "numbers-to-template": "Números de telefone para o template", + "numbers-to-template-required": "Números de telefone para o template são obrigatórios", + "numbers-to-template-hint": "Números de telefone separados por vírgula. Use ${metadataKey} para valor de metadados, $[messageKey] para valor do corpo da mensagem", + "sms-message-template": "Template da mensagem SMS", + "sms-message-template-required": "O template da mensagem SMS é obrigatório", + "use-system-sms-settings": "Usar configurações do provedor SMS do sistema", + "min-period-0-seconds-message": "Somente período mínimo de 0 segundo é permitido.", + "max-pending-messages": "Máximo de mensagens pendentes", + "max-pending-messages-required": "O máximo de mensagens pendentes é obrigatório.", + "max-pending-messages-range": "O máximo de mensagens pendentes deve estar no intervalo de 1 a 100000.", + "originator-types-filter": "Filtro de tipos de originador", + "interval-seconds": "Intervalo em segundos", + "interval-seconds-required": "O intervalo é obrigatório.", + "int-range": "O valor não deve exceder o limite máximo de inteiro (2147483648)", + "min-interval-seconds-message": "Somente intervalo mínimo de 1 segundo é permitido.", + "output-timeseries-key-prefix": "Prefixo da chave de série temporal de saída", + "output-timeseries-key-prefix-required": "O prefixo da chave de série temporal de saída é obrigatório.", + "separator-hint": "Pressione \"Enter\" para concluir a entrada do campo.", + "select-details": "Selecionar detalhes", + "entity-details-id": "Id", + "entity-details-title": "Título", + "entity-details-country": "País", + "entity-details-state": "Estado", + "entity-details-city": "Cidade", + "entity-details-zip": "CEP", + "entity-details-address": "Endereço", + "entity-details-address2": "Endereço2", + "entity-details-additional_info": "Informações adicionais", + "entity-details-phone": "Telefone", + "entity-details-email": "Email", + "email-sender": "Remetente do email", + "fields-to-check": "Campos a verificar", + "add-detail": "Adicionar detalhe", + "check-all-keys-tooltip": "Se habilitado, verifica a presença de todos os campos listados nos nomes de campos da mensagem e dos metadados dentro da mensagem recebida e seus metadados.", + "fields-to-check-hint": "Pressione \"Enter\" para concluir a entrada do nome do campo. Múltiplos nomes de campos são suportados.", + "entity-details-list-empty": "Pelo menos um detalhe deve ser selecionado.", + "alarm-status": "Status do alarme", + "alarm-required": "Pelo menos um status de alarme deve ser selecionado.", + "no-entity-details-matching": "Nenhum detalhe de entidade correspondente foi encontrado.", + "custom-table-name": "Nome da tabela personalizada", + "custom-table-name-required": "O nome da tabela é obrigatório", + "custom-table-hint": "A tabela deve ser criada no seu cluster Cassandra e seu nome deve começar com o prefixo 'cs_tb_' para evitar a inserção de dados nas tabelas comuns do TB. Insira o nome da tabela aqui sem o prefixo 'cs_tb_'.", + "message-field": "Campo da mensagem", + "message-field-required": "O campo da mensagem é obrigatório.", + "table-col": "Coluna da tabela", + "table-col-required": "A coluna da tabela é obrigatória.", + "latitude-field-name": "Nome do campo de latitude", + "longitude-field-name": "Nome do campo de longitude", + "latitude-field-name-required": "O nome do campo de latitude é obrigatório.", + "longitude-field-name-required": "O nome do campo de longitude é obrigatório.", + "fetch-perimeter-info-from-metadata": "Buscar informações de perímetro dos metadados", + "fetch-perimeter-info-from-metadata-tooltip": "Se o tipo de perímetro for definido como 'Polygon', o valor do campo de metadados '{{perimeterKeyName}}' será definido como a definição do perímetro sem análise adicional do valor. Caso contrário, se o tipo de perímetro for definido como 'Circle', o valor do campo de metadados '{{perimeterKeyName}}' será analisado para extrair os campos 'latitude', 'longitude', 'radius', 'radiusUnit' usados para a definição do perímetro circular.", + "perimeter-key-name": "Nome da chave do perímetro", + "perimeter-key-name-hint": "Nome do campo de metadados que inclui as informações do perímetro.", + "perimeter-key-name-required": "O nome da chave do perímetro é obrigatório.", + "perimeter-circle": "Círculo", + "perimeter-polygon": "Polígono", + "perimeter-type": "Tipo de perímetro", + "circle-center-latitude": "Latitude do centro", + "circle-center-latitude-required": "A latitude do centro é obrigatória.", + "circle-center-longitude": "Longitude do centro", + "circle-center-longitude-required": "A longitude do centro é obrigatória.", + "range-unit-meter": "Metro", + "range-unit-kilometer": "Quilômetro", + "range-unit-foot": "Pé", + "range-unit-mile": "Milha", + "range-unit-nautical-mile": "Milha náutica", + "range-units": "Unidades de alcance", + "range-units-required": "As unidades de alcance são obrigatórias.", + "range": "Alcance", + "range-required": "O alcance é obrigatório.", + "polygon-definition": "Definição do polígono", + "polygon-definition-required": "A definição do polígono é obrigatória.", + "polygon-definition-hint": "Use o seguinte formato para a definição manual do polígono: [[lat1,lon1],[lat2,lon2], ... ,[latN,lonN]].", + "min-inside-duration": "Duração mínima interna", + "min-inside-duration-value-required": "A duração mínima interna é obrigatória", + "min-inside-duration-time-unit": "Unidade de tempo da duração mínima interna", + "min-outside-duration": "Duração mínima externa", + "min-outside-duration-value-required": "A duração mínima externa é obrigatória", + "min-outside-duration-time-unit": "Unidade de tempo da duração mínima externa", + "tell-failure-if-absent": "Indicar falha", + "tell-failure-if-absent-hint": "Se pelo menos uma chave selecionada não existir, a mensagem de saída reportará \"Falha\".", + "get-latest-value-with-ts": "Buscar timestamp para os valores de telemetria mais recentes", + "get-latest-value-with-ts-hint": "Se selecionado, os valores de telemetria mais recentes também incluirão o timestamp, ex: \"temp\": \"{\"ts\":1574329385897, \"value\":42}\"", + "ignore-null-strings": "Ignorar strings nulas", + "ignore-null-strings-hint": "Se selecionado, o nó de regra ignorará campos de entidade com valor vazio.", + "add-metadata-key-values-as-kafka-headers": "Adicionar pares chave-valor dos metadados da mensagem aos cabeçalhos do registro Kafka", + "add-metadata-key-values-as-kafka-headers-hint": "Se selecionado, os pares chave-valor dos metadados da mensagem serão adicionados aos cabeçalhos dos registros de saída como arrays de bytes com codificação de charset predefinida.", + "charset-encoding": "Codificação de charset", + "charset-encoding-required": "A codificação de charset é obrigatória.", + "charset-us-ascii": "US-ASCII", + "charset-iso-8859-1": "ISO-8859-1", + "charset-utf-8": "UTF-8", + "charset-utf-16be": "UTF-16BE", + "charset-utf-16le": "UTF-16LE", + "charset-utf-16": "UTF-16", + "select-queue-hint": "O nome da fila pode ser selecionado em uma lista suspensa ou adicionar um nome personalizado.", + "device-profile-node-hint": "Útil se você tiver condições de duração ou de repetição para garantir a continuidade da avaliação do estado do alarme.", + "persist-alarm-rules": "Persistir estado das regras de alarme", + "persist-alarm-rules-hint": "Se habilitado, o nó de regra armazenará o estado do processamento no banco de dados.", + "fetch-alarm-rules": "Buscar estado das regras de alarme", + "fetch-alarm-rules-hint": "Se habilitado, o nó de regra restaurará o estado do processamento na inicialização e garantirá que os alarmes sejam acionados mesmo após reinicializações do servidor. Caso contrário, o estado será restaurado quando a primeira mensagem do dispositivo chegar.", + "input-value-key": "Chave do valor de entrada", + "input-value-key-required": "A chave do valor de entrada é obrigatória.", + "output-value-key": "Chave do valor de saída", + "output-value-key-required": "A chave do valor de saída é obrigatória.", + "number-of-digits-after-floating-point": "Número de dígitos após o ponto flutuante", + "number-of-digits-after-floating-point-range": "O número de dígitos após o ponto flutuante deve estar no intervalo de 0 a 15.", + "failure-if-delta-negative": "Indicar falha se o delta for negativo", + "failure-if-delta-negative-tooltip": "O nó de regra força a falha no processamento da mensagem se o valor delta for negativo.", + "use-caching": "Usar cache", + "use-caching-tooltip": "O nó de regra armazenará em cache o valor de \"{{inputValueKey}}\" que chega da mensagem recebida para melhorar o desempenho. Observe que o cache não será atualizado se você modificar o valor de \"{{inputValueKey}}\" em outro lugar.", + "add-time-difference-between-readings": "Adicionar a diferença de tempo entre leituras de \"{{inputValueKey}}\"", + "add-time-difference-between-readings-tooltip": "Se habilitado, o nó de regra adicionará o \"{{periodValueKey}}\" à mensagem de saída.", + "period-value-key": "Chave do valor de período", + "period-value-key-required": "A chave do valor de período é obrigatória.", + "general-pattern-hint": "Use ${metadataKey} para valor de metadados, $[messageKey] para valor do corpo da mensagem.", + "alarm-severity-pattern-hint": "Use ${metadataKey} para valor de metadados, $[messageKey] para valor do corpo da mensagem. A severidade do alarme deve ser do sistema (CRITICAL, MAJOR etc.)", + "output-node-name-hint": "O nome do nó de regra corresponde ao tipo de relação da mensagem de saída e é usado para encaminhar mensagens para outros nós de regra na cadeia de regras chamadora.", + "use-server-ts": "Usar timestamp do servidor", + "use-server-ts-hint": "Use o timestamp atual do servidor para dados de série temporal que não possuem um timestamp explícito. Isso ajuda a manter a ordenação correta ao processar mensagens de múltiplas fontes ou quando as mensagens chegam fora de sequência.", + "kv-map-pattern-hint": "Todos os campos de entrada suportam templatização. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "kv-map-single-pattern-hint": "O campo de entrada suporta templatização. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "shared-scope": "Escopo compartilhado", + "server-scope": "Escopo do servidor", + "client-scope": "Escopo do cliente", + "attribute-type": "Atributo", + "attribute-type-description": "Buscar valor do atributo do banco de dados", + "attribute-type-result-description": "Armazenar resultado como atributo de entidade no banco de dados", + "constant-type": "Constante", + "constant-type-description": "Definir valor constante", + "time-series-type": "Série temporal", + "time-series-type-description": "Buscar o valor de série temporal mais recente do banco de dados", + "time-series-type-result-description": "Armazenar resultado como série temporal de entidade no banco de dados", + "message-body-type": "Mensagem", + "message-body-type-description": "Buscar valor do argumento da mensagem recebida", + "message-body-type-result-description": "Adicionar resultado à mensagem de saída", + "message-metadata-type": "Metadados", + "message-metadata-type-description": "Buscar valor do argumento dos metadados da mensagem recebida", + "message-metadata-result-description": "Adicionar resultado aos metadados da mensagem de saída", + "argument-tile": "Argumentos", + "no-arguments-prompt": "Nenhum argumento configurado", + "result-title": "Resultado", + "functions-field-input": "Funções", + "no-option-found": "Nenhuma opção encontrada", + "argument-source-field-input": "Fonte", + "argument-source-field-input-required": "A fonte do argumento é obrigatória.", + "argument-key-field-input": "Chave", + "argument-key-field-input-required": "A chave do argumento é obrigatória.", + "constant-value-field-input": "Valor constante", + "constant-value-field-input-required": "O valor constante é obrigatório.", + "attribute-scope-field-input": "Escopo do atributo", + "attribute-scope-field-input-required": "O escopo do atributo é obrigatório.", + "default-value-field-input": "Valor padrão", + "type-field-input": "Tipo", + "type-field-input-required": "O tipo é obrigatório.", + "key-field-input": "Chave", + "add-entity-type": "Adicionar tipo de entidade", + "add-device-profile": "Adicionar perfil do dispositivo", + "key-field-input-required": "A chave é obrigatória.", + "number-floating-point-field-input": "Número de dígitos após o ponto flutuante", + "number-floating-point-field-input-hint": "Use 0 para converter o resultado em inteiro", + "add-to-message-field-input": "Adicionar à mensagem", + "add-to-metadata-field-input": "Adicionar aos metadados", + "custom-expression-field-input": "Expressão matemática", + "custom-expression-field-input-required": "A expressão matemática é obrigatória", + "custom-expression-field-input-hint": "Especifique uma expressão matemática para avaliar. A expressão padrão demonstra como transformar Fahrenheit em Celsius", + "retained-message": "Retida", + "attributes-mapping": "Mapeamento de atributos", + "latest-telemetry-mapping": "Mapeamento de telemetria mais recente", + "add-mapped-attribute-to": "Adicionar atributos mapeados a", + "add-mapped-latest-telemetry-to": "Adicionar telemetria mais recente mapeada a", + "add-mapped-fields-to": "Adicionar campos mapeados a", + "add-selected-details-to": "Adicionar detalhes selecionados a", + "clear-selected-types": "Limpar tipos selecionados", + "clear-selected-details": "Limpar detalhes selecionados", + "clear-selected-fields": "Limpar campos selecionados", + "clear-selected-keys": "Limpar chaves selecionadas", + "geofence-configuration": "Configuração de geofence", + "coordinate-field-names": "Nomes dos campos de coordenadas", + "coordinate-field-hint": "O nó de regra tenta recuperar os campos especificados da mensagem. Se não estiverem presentes, buscará nos metadados.", + "presence-monitoring-strategy": "Estratégia de monitoramento de presença", + "presence-monitoring-strategy-on-first-message": "Na primeira mensagem", + "presence-monitoring-strategy-on-each-message": "A cada mensagem", + "presence-monitoring-strategy-on-first-message-hint": "Reporta o status de presença 'Dentro' ou 'Fora' na primeira mensagem após a duração mínima configurada ter decorrido desde a última atualização do status de presença 'Entrou' ou 'Saiu'.", + "presence-monitoring-strategy-on-each-message-hint": "Reporta o status de presença 'Dentro' ou 'Fora' a cada mensagem após a atualização do status de presença 'Entrou' ou 'Saiu'.", + "fetch-credentials-to": "Buscar credenciais para", + "add-originator-attributes-to": "Adicionar atributos do originador a", + "originator-attributes": "Atributos do originador", + "fetch-latest-telemetry-with-timestamp": "Buscar telemetria mais recente com timestamp", + "fetch-latest-telemetry-with-timestamp-tooltip": "Se selecionado, os valores de telemetria mais recentes serão adicionados aos metadados de saída com o timestamp, ex: \"{{latestTsKeyName}}\": \"{\"ts\":1574329385897, \"value\":42}\"", + "tell-failure": "Indicar falha se algum dos atributos estiver ausente", + "tell-failure-tooltip": "Se pelo menos uma chave selecionada não existir, a mensagem de saída reportará \"Falha\".", + "created-time": "Hora de criação", + "chip-help": "Pressione 'Enter' para concluir a entrada de {{inputName}}. \nPressione 'Backspace' para excluir {{inputName}}. \nMúltiplos valores são suportados.", + "detail": "detalhe", + "field-name": "nome do campo", + "device-profile": "perfil do dispositivo", + "entity-type": "tipo de entidade", + "message-type": "tipo de mensagem", + "timeseries-key": "chave de série temporal", + "type": "Tipo", + "first-name": "Nome", + "last-name": "Sobrenome", + "label": "Rótulo", + "originator-fields-mapping": "Mapeamento de campos do originador", + "add-mapped-originator-fields-to": "Adicionar campos do originador mapeados a", + "fields": "Campos", + "skip-empty-fields": "Ignorar campos vazios", + "skip-empty-fields-tooltip": "Campos com valores vazios não serão adicionados à mensagem de saída/metadados de saída.", + "fetch-interval": "Intervalo de busca", + "fetch-strategy": "Estratégia de busca", + "fetch-timeseries-from-to": "Buscar série temporal de {{startInterval}} {{startIntervalTimeUnit}} atrás até {{endInterval}} {{endIntervalTimeUnit}} atrás.", + "fetch-timeseries-from-to-invalid": "Busca de série temporal inválida (\"Início do intervalo\" deve ser menor que \"Fim do intervalo\").", + "use-metadata-dynamic-interval-tooltip": "Se selecionado, o nó de regra usará intervalo dinâmico de início e fim baseado nos padrões da mensagem e dos metadados.", + "all-mode-hint": "Se o modo de busca \"All\" for selecionado, o nó de regra recuperará a telemetria do intervalo de busca com parâmetros de consulta configuráveis.", + "first-mode-hint": "Se o modo de busca \"First\" for selecionado, o nó de regra recuperará a telemetria mais próxima do início do intervalo de busca.", + "last-mode-hint": "Se o modo de busca \"Last\" for selecionado, o nó de regra recuperará a telemetria mais próxima do fim do intervalo de busca.", + "ascending": "Crescente", + "descending": "Decrescente", + "min": "Mín", + "max": "Máx", + "average": "Média", + "sum": "Soma", + "count": "Contagem", + "none": "Nenhum", + "last-level-relation-tooltip": "Se selecionado, o nó de regra pesquisará entidades relacionadas somente no nível definido no nível máximo de relação.", + "last-level-device-relation-tooltip": "Se selecionado, o nó de regra pesquisará dispositivos relacionados somente no nível definido no nível máximo de relação.", + "data-to-fetch": "Dados a buscar", + "mapping-of-customers": "Mapeamento de clientes", + "map-fields-required": "Todos os campos de mapeamento são obrigatórios.", + "attributes": "Atributos", + "related-device-attributes": "Atributos de dispositivos relacionados", + "add-selected-attributes-to": "Adicionar atributos selecionados a", + "device-profiles": "Perfis do dispositivo", + "mapping-of-tenant": "Mapeamento do tenant", + "add-attribute-key": "Adicionar chave de atributo", + "message-template": "Template da mensagem", + "message-template-required": "O template da mensagem é obrigatório", + "use-system-slack-settings": "Usar configurações do Slack do sistema", + "slack-api-token": "Token da API do Slack", + "slack-api-token-required": "O token da API do Slack é obrigatório", + "keys-mapping": "mapeamento de chaves", + "add-key": "Adicionar chave", + "recipients": "Destinatários", + "message-subject-and-content": "Assunto e conteúdo da mensagem", + "template-rules-hint": "Ambos os campos de entrada suportam templatização. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados da mensagem.", + "originator-customer-desc": "Usar o cliente do originador da mensagem recebida como novo originador.", + "originator-tenant-desc": "Usar o tenant atual como novo originador.", + "originator-related-entity-desc": "Usar entidade relacionada como novo originador. Busca baseada no tipo de relação e direção configurados.", + "originator-alarm-originator-desc": "Usar o originador do alarme como novo originador. Somente se o originador da mensagem recebida for uma entidade de alarme.", + "originator-entity-by-name-pattern-desc": "Usar entidade buscada do banco de dados como novo originador. Busca baseada no tipo de entidade e no padrão de nome especificado.", + "email-from-template-hint": "Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "recipients-block-main-hint": "Lista de endereços separados por vírgula. Todos os campos de entrada suportam templatização. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "forward-msg-default-rule-chain": "Encaminhar mensagem para a cadeia de regras padrão do originador", + "forward-msg-default-rule-chain-tooltip": "Se habilitado, a mensagem será encaminhada para a cadeia de regras padrão do originador, ou para a cadeia de regras da configuração, se o originador não tiver cadeia de regras padrão definida no perfil da entidade.", + "exclude-zero-deltas": "Excluir deltas zero da mensagem de saída", + "exclude-zero-deltas-hint": "Se habilitado, a chave de saída \"{{outputValueKey}}\" será adicionada à mensagem de saída somente se seu valor não for zero.", + "exclude-zero-deltas-time-difference-hint": "Se habilitado, as chaves de saída \"{{outputValueKey}}\" e \"{{periodValueKey}}\" serão adicionadas à mensagem de saída somente se o valor de \"{{outputValueKey}}\" não for zero.", + "search-direction-from": "Do originador para a entidade de destino", + "search-direction-to": "Da entidade de destino para o originador", + "del-relation-direction-from": "Do originador", + "del-relation-direction-to": "Para o originador", + "target-entity": "Entidade de destino", + "function-configuration": "Configuração da função", + "function-name": "Nome da função", + "function-name-required": "O nome da função é obrigatório.", + "qualifier": "Qualificador", + "qualifier-hint": "Se o qualificador não for especificado, o qualificador padrão \"$LATEST\" será usado.", + "aws-credentials": "Credenciais AWS", + "connection-timeout": "Tempo Limite de conexão", + "connection-timeout-required": "O tempo limite de conexão é obrigatório.", + "connection-timeout-min": "O tempo limite mínimo de conexão é 0.", + "connection-timeout-hint": "O tempo de espera em segundos ao estabelecer inicialmente uma conexão antes de desistir e expirar. Um valor de 0 significa infinito e não é recomendado.", + "request-timeout": "Tempo Limite de requisição", + "request-timeout-required": "O tempo limite de requisição é obrigatório", + "request-timeout-min": "O tempo limite mínimo de requisição é 0", + "request-timeout-hint": "O tempo de espera em segundos para a requisição ser concluída antes de desistir e expirar. Um valor de 0 significa infinito e não é recomendado.", + "units": "Unidades", + "tell-failure-aws-lambda": "Indicar falha se a execução da função AWS Lambda lançar exceção", + "tell-failure-aws-lambda-hint": "O nó de regra força a falha no processamento da mensagem se a execução da função AWS Lambda lançar exceção.", + "basic-mode": "Básico", + "advanced-mode": "Avançado", + "save-time-series": { + "processing-settings": "Configurações de processamento", + "processing-settings-hint": "Defina como as mensagens recebidas são processadas. As configurações básicas de processamento permitem selecionar estratégias pré-configuradas, enquanto as configurações avançadas permitem selecionar estratégias de processamento individuais para cada ação.", + "advanced-settings-hint": "Tenha cuidado ao configurar estratégias de processamento. Certas combinações podem levar a comportamentos inesperados.", + "strategy": "Estratégia", + "deduplication-interval": "Intervalo de deduplicação", + "deduplication-interval-required": "O intervalo de deduplicação é obrigatório", + "deduplication-interval-min-max-range": "O intervalo de deduplicação deve ser de pelo menos 1 segundo e no máximo 1 dia", + "strategy-type": { + "every-message": "A cada mensagem", + "skip": "Ignorar", + "deduplicate": "Deduplicar", + "web-sockets-only": "Somente WebSockets" + }, + "time-series": "Série temporal", + "latest": "Valores mais recentes", + "web-sockets": "WebSockets" + }, + "save-attribute": { + "processing-settings": "Configurações de processamento", + "processing-settings-hint": "Defina como as mensagens recebidas são processadas. As configurações básicas de processamento permitem selecionar estratégias pré-configuradas, enquanto as configurações avançadas permitem selecionar estratégias de processamento individuais para cada ação.", + "advanced-settings-hint": "Tenha cuidado ao configurar estratégias de processamento. Certas combinações podem levar a comportamentos inesperados.", + "strategy": "Estratégia", + "deduplication-interval": "Intervalo de deduplicação", + "deduplication-interval-required": "O intervalo de deduplicação é obrigatório", + "deduplication-interval-min-max-range": "O intervalo de deduplicação deve ser de pelo menos 1 segundo e no máximo 1 dia", + "scope": "Escopo", + "strategy-type": { + "every-message": "A cada mensagem", + "skip": "Ignorar", + "deduplicate": "Deduplicar", + "web-sockets-only": "Somente WebSockets" + }, + "attributes": "Atributos" + }, + "key-val": { + "key": "Chave", + "value": "Valor", + "see-examples": "Ver exemplos.", + "remove-entry": "Remover entrada", + "remove-mapping-entry": "Remover entrada de mapeamento", + "add-mapping-entry": "Adicionar mapeamento", + "add-entry": "Adicionar entrada", + "copy-key-values-from": "Copiar pares chave-valor de", + "delete-key-values": "Excluir pares chave-valor", + "delete-key-values-from": "Excluir pares chave-valor de", + "at-least-one-key-error": "Pelo menos uma chave deve ser selecionada.", + "unique-key-value-pair-error": "'{{keyText}}' deve ser diferente de '{{valText}}'!" + }, + "mail-body-types": { + "plain-text": "Texto simples", + "html": "HTML", + "dynamic": "Dinâmico", + "use-body-type-template": "Usar template de tipo de corpo", + "plain-text-description": "Texto simples sem formatação especial ou estilização.", + "html-text-description": "Permite usar tags HTML para formatação, links e imagens no corpo do email.", + "dynamic-text-description": "Permite usar o tipo de corpo Texto Simples ou HTML dinamicamente com base no recurso de templatização.", + "after-template-evaluation-hint": "Após a avaliação do template, o valor deve ser true para HTML e false para texto simples." + }, + "ai": { + "ai-model": "Modelo de IA", + "model": "Modelo", + "ai-model-hint": "Selecione o modelo de IA pré-configurado para processar as requisições enviadas por este nó de regra, ou use \"Criar novo\" para configurar um novo.", + "prompt-settings": "Configurações de prompt", + "prompt-settings-hint": "O prompt de sistema opcional define o papel geral e as restrições da IA, enquanto o prompt do usuário define a tarefa específica a ser executada. Ambos os campos também suportam templatização.", + "system-prompt": "Prompt de sistema", + "system-prompt-max-length": "O prompt de sistema deve ter 500000 caracteres ou menos.", + "system-prompt-blank": "O prompt de sistema não deve estar em branco.", + "user-prompt": "Prompt do usuário", + "user-prompt-required": "O prompt do usuário é obrigatório.", + "user-prompt-max-length": "O prompt do usuário deve ter 500000 caracteres ou menos.", + "user-prompt-blank": "O prompt do usuário não deve estar em branco.", + "response-format": "Formato de resposta", + "response-text": "Texto", + "response-json": "JSON", + "response-json-schema": "JSON Schema", + "response-format-hint-TEXT": "Permite que o modelo gere texto arbitrário, que pode ou não ser um objeto JSON válido. Se a saída não for um objeto JSON válido, será automaticamente encapsulada em um objeto JSON sob a chave \"response\".", + "response-format-hint-JSON": "O modelo é obrigado a gerar uma resposta que seja um JSON válido. Se a saída não for um objeto JSON válido, será automaticamente encapsulada em um objeto JSON sob a chave \"response\".", + "response-format-hint-JSON_SCHEMA": "O modelo é obrigado a gerar um JSON que corresponda à estrutura específica e aos tipos de dados definidos no esquema fornecido. Se a saída não for um objeto JSON válido, será automaticamente encapsulada em um objeto JSON sob a chave \"response\".", + "response-json-schema-hint": "Embora qualquer JSON Schema válido possa ser inserido, este nó de regra suporta apenas um subconjunto limitado de seus recursos. Consulte a documentação do nó para obter detalhes.", + "response-json-schema-required": "O JSON Schema é obrigatório", + "advanced-settings": "Configurações avançadas", + "timeout": "Tempo Limite", + "timeout-hint": "Tempo máximo de espera por uma resposta \ndo modelo de IA antes de a requisição ser encerrada.", + "timeout-required": "O tempo limite é obrigatório", + "timeout-validation": "Deve ser de 1 segundo a 10 minutos.", + "force-acknowledgement": "Forçar confirmação", + "force-acknowledgement-hint": "Se habilitado, a mensagem recebida é confirmada imediatamente. A resposta do modelo é então enfileirada como uma nova mensagem separada.", + "ai-resources": "Recursos de IA" + } }, "timezone": { "timezone": "Fuso horário", "select-timezone": "Selecionar fuso horário", - "no-timezones-matching": "Nenhum fuso horário encontrado que coincida com '{{timezone}}'.", - "timezone-required": "O fuso horário é obrigatório." + "no-timezones-matching": "Nenhum fuso horário correspondente a '{{timezone}}' foi encontrado.", + "timezone-required": "Fuso horário é obrigatório.", + "browser-time": "Horário do navegador" }, "queue": { - "select_name": "Selecionar nome de fila", - "name": "Nome de Fila", - "name_required": "O nome de fila é obrigatório!" + "queue-name": "Fila", + "no-queues-found": "Nenhuma fila encontrada.", + "no-queues-matching": "Nenhuma fila correspondente a '{{queue}}' foi encontrada.", + "select-name": "Selecionar nome da fila", + "name": "Nome", + "name-required": "O nome da fila é obrigatório!", + "name-unique": "O nome da fila não é único!", + "name-pattern": "O nome da fila contém um caractere diferente de alfanuméricos ASCII, '.', '_' e '-'!", + "queue-required": "A fila é obrigatória!", + "topic-required": "O tópico da fila é obrigatório!", + "poll-interval-required": "O intervalo de polling é obrigatório!", + "poll-interval-min-value": "O valor do intervalo de polling não pode ser menor que 1", + "partitions-required": "As partições são obrigatórias!", + "partitions-min-value": "O valor das partições não pode ser menor que 1", + "pack-processing-timeout-required": "O tempo limite de processamento é obrigatório", + "pack-processing-timeout-min-value": "O valor do tempo limite de processamento não pode ser menor que 1", + "batch-size-required": "O tamanho do lote é obrigatório!", + "batch-size-min-value": "O valor do tamanho do lote não pode ser menor que 1", + "retries-required": "As tentativas são obrigatórias!", + "retries-min-value": "O valor das tentativas não pode ser negativo", + "failure-percentage-required": "O percentual de falhas é obrigatório!", + "failure-percentage-min-value": "O valor do percentual de falhas não pode ser menor que 0", + "failure-percentage-max-value": "O valor do percentual de falhas não pode ser maior que 100", + "pause-between-retries-required": "A pausa entre tentativas é obrigatória!", + "pause-between-retries-min-value": "O valor da pausa entre tentativas não pode ser menor que 1", + "max-pause-between-retries-required": "A pausa máxima entre tentativas é obrigatória!", + "max-pause-between-retries-min-value": "O valor da pausa máxima entre tentativas não pode ser menor que 1", + "submit-strategy-type-required": "O tipo de estratégia de envio é obrigatório!", + "processing-strategy-type-required": "O tipo de estratégia de processamento é obrigatório!", + "queues": "Filas", + "selected-queues": "{ count, plural, =1 {1 fila} other {# filas} } selecionada(s)", + "delete-queue-title": "Tem certeza de que deseja excluir a fila '{{queueName}}'?", + "delete-queues-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 fila} other {# filas} }?", + "delete-queue-text": "Atenção: após a confirmação, a fila e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-queues-text": "Após a confirmação, todas as filas selecionadas serão excluídas e não estarão mais acessíveis.", + "search": "Pesquisar fila", + "add": "Adicionar fila", + "details": "Detalhes da fila", + "topic": "Tópico", + "submit-settings": "Configurações de envio", + "submit-strategy": "Tipo de estratégia *", + "grouping-parameter": "Parâmetro de agrupamento", + "processing-settings": "Configurações de processamento de tentativas", + "processing-strategy": "Tipo de processamento *", + "retries-settings": "Configurações de tentativas", + "polling-settings": "Configurações de polling", + "batch-processing": "Processamento em lote", + "poll-interval": "Intervalo de polling", + "partitions": "Partições", + "immediate-processing": "Processamento imediato", + "consumer-per-partition": "Enviar polling de mensagens para cada consumidor", + "consumer-per-partition-hint": "Ativar consumidor(es) separado(s) por partição", + "duplicate-msg-to-all-partitions": "Duplicar mensagem para todas as partições", + "processing-timeout": "Processamento em, ms", + "batch-size": "Tamanho do lote", + "retries": "Número de tentativas (0 – ilimitado)", + "failure-percentage": "Mensagens de falha para ignorar tentativas, %", + "pause-between-retries": "Tentar novamente em, seg", + "max-pause-between-retries": "Tentativa adicional em, seg", + "delete": "Excluir fila", + "copyId": "Copiar ID da fila", + "idCopiedMessage": "O ID da fila foi copiado para a área de transferência", + "description": "Descrição", + "description-hint": "Este texto será exibido na descrição da fila em vez da estratégia selecionada", + "alt-description": "Estratégia de envio: {{submitStrategy}}, Estratégia de processamento: {{processingStrategy}}", + "custom-properties": "Propriedades personalizadas", + "custom-properties-hint": "Propriedades personalizadas de criação de fila (tópico), ex.: 'retention.ms:604800000;retention.bytes:1048576000'", + "strategies": { + "sequential-by-originator-label": "Sequencial por originador", + "sequential-by-originator-hint": "A nova mensagem para, por ex., o dispositivo A não é enviada até que a mensagem anterior para o dispositivo A seja confirmada", + "sequential-by-tenant-label": "Sequencial por tenant", + "sequential-by-tenant-hint": "A nova mensagem para, por ex., o tenant A não é enviada até que a mensagem anterior para o tenant A seja confirmada", + "sequential-label": "Sequencial", + "sequential-hint": "A nova mensagem não é enviada até que a mensagem anterior seja confirmada", + "burst-label": "Burst", + "burst-hint": "Todas as mensagens são enviadas para as cadeias de regras na ordem em que chegam", + "batch-label": "Lote", + "batch-hint": "O novo lote não é enviado até que o lote anterior seja confirmado", + "skip-all-failures-label": "Ignorar todas as falhas", + "skip-all-failures-hint": "Ignorar todas as falhas", + "skip-all-failures-and-timeouts-label": "Ignorar todas as falhas e tempos limite", + "skip-all-failures-and-timeouts-hint": "Ignorar todas as falhas e tempos limite", + "retry-all-label": "Tentar novamente todos", + "retry-all-hint": "Tentar novamente todas as mensagens do pacote de processamento", + "retry-failed-label": "Tentar novamente as com falha", + "retry-failed-hint": "Tentar novamente todas as mensagens com falha do pacote de processamento", + "retry-timeout-label": "Tentar novamente as com tempo limite", + "retry-timeout-hint": "Tentar novamente todas as mensagens com tempo limite do pacote de processamento", + "retry-failed-and-timeout-label": "Tentar novamente as com falha e tempo limite", + "retry-failed-and-timeout-hint": "Tentar novamente todas as mensagens com falha e tempo limite do pacote de processamento" + } + }, + "queue-statistics": { + "queue-statistics": "Estatísticas de fila", + "no-queue-statistics-matching": "Nenhuma estatística de fila correspondente a '{{entity}}' foi encontrada.", + "queue-statistics-required": "Estatísticas de fila são obrigatórias.", + "list-of-queue-statistics": "{ count, plural, =1 {Uma estatística de fila} other {Lista de # estatísticas de fila} }", + "selected-queue-statistics": "{ count, plural, =1 {1 estatística de fila} other {# estatísticas de fila} } selecionada(s)", + "no-queue-statistics-text": "Nenhuma estatística de fila encontrada", + "queue-statistics-starts-with": "Estatísticas de fila cujos nomes começam com '{{prefix}}'" + }, + "server-error": { + "general": "Erro geral do servidor", + "authentication": "Erro de autenticação", + "jwt-token-expired": "Token JWT expirado", + "tenant-trial-expired": "Período de avaliação do tenant expirado", + "credentials-expired": "Credenciais expiradas", + "permission-denied": "Permissão negada", + "invalid-arguments": "Argumentos inválidos", + "bad-request-params": "Parâmetros de requisição inválidos", + "item-not-found": "Item não encontrado", + "too-many-requests": "Muitas requisições", + "too-many-updates": "Muitas atualizações" }, "tenant": { - "tenant": "Locatário", - "tenants": "Locatários", - "management": "Gerenciamento de locatários", - "add": "Adicionar Locatário", + "tenant": "Tenant", + "tenants": "Tenants", + "management": "Gerenciamento de tenants", + "add": "Adicionar tenant", "admins": "Administradores", - "manage-tenant-admins": "Gerenciar administradores de locatários", - "delete": "Excluir locatário", - "add-tenant-text": "Adicionar novo locatário", - "no-tenants-text": "Nenhum locatário encontrado", - "tenant-details": "Detalhes do locatário", - "delete-tenant-title": "Tem certeza de que deseja excluir o locatário '{{tenantTitle}}'?", - "delete-tenant-text": "Cuidado, após confirmar, não será possível recuperar o locatário e nenhum dado associado.", + "manage-tenant-admins": "Gerenciar administradores do tenant", + "delete": "Excluir tenant", + "add-tenant-text": "Adicionar novo tenant", + "no-tenants-text": "Nenhum tenant encontrado", + "tenant-details": "Detalhes do tenant", + "title-max-length": "O título deve ter menos de 256 caracteres", + "delete-tenant-title": "Tem certeza de que deseja excluir o tenant '{{tenantTitle}}'?", + "delete-tenant-text": "Atenção: após a confirmação, o tenant e todos os dados relacionados se tornarão irrecuperáveis.", "delete-tenants-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 tenant} other {# tenants} }?", "delete-tenants-action-title": "Excluir { count, plural, =1 {1 tenant} other {# tenants} }", - "delete-tenants-text": "Cuidado, após confirmar, todos os locatários selecionados serão removidos e não será possível recuperar nenhum dado associado.", + "delete-tenants-text": "Atenção: após a confirmação, todos os tenants selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", "title": "Título", "title-required": "O título é obrigatório.", "description": "Descrição", "details": "Detalhes", "events": "Eventos", - "copyId": "Copiar ID do locatário", - "idCopiedMessage": "O ID do locatário foi copiado para a área de transferência", - "select-tenant": "Selecionar locatário", - "no-tenants-matching": "Nenhum locatário encontrado que coincida com '{{entity}}'.", - "tenant-required": "O locatário é obrigatório", - "search": "Pesquisar locatários", + "copyId": "Copiar ID do tenant", + "idCopiedMessage": "O ID do tenant foi copiado para a área de transferência", + "select-tenant": "Selecionar tenant", + "no-tenants-matching": "Nenhum tenant correspondente a '{{entity}}' foi encontrado.", + "tenant-required": "Tenant é obrigatório", + "search": "Pesquisar tenants", "selected-tenants": "{ count, plural, =1 {1 tenant} other {# tenants} } selecionado(s)", - "isolated-tb-rule-engine": "Processamento em contêiner isolado do ThingsBoard Rule Engine", - "isolated-tb-rule-engine-details": "Exige microsserviço(s) separado(s) para cada locatário isolado" + "isolated-tb-rule-engine": "Usar filas isoladas do ThingsBoard Motor de regras", + "isolated-tb-rule-engine-details": "Cada tenant terá filas dedicadas do Motor de regras" + }, + "tenant-profile": { + "tenant-profile": "Perfil do tenant", + "tenant-profiles": "Perfis do tenant", + "add": "Adicionar perfil do tenant", + "add-profile": "Adicionar perfil", + "debug": "Depuração", + "edit": "Editar perfil do tenant", + "tenant-profile-details": "Detalhes do perfil do tenant", + "no-tenant-profiles-text": "Nenhum perfil do tenant encontrado", + "name-max-length": "O nome deve ter menos de 256 caracteres", + "search": "Pesquisar perfis do tenant", + "selected-tenant-profiles": "{ count, plural, =1 {1 perfil do tenant} other {# perfis do tenant} } selecionado(s)", + "no-tenant-profiles-matching": "Nenhum perfil do tenant correspondente a '{{entity}}' foi encontrado.", + "tenant-profile-required": "Perfil do tenant é obrigatório", + "idCopiedMessage": "O ID do perfil do tenant foi copiado para a área de transferência", + "set-default": "Definir perfil do tenant como padrão", + "delete": "Excluir perfil do tenant", + "copyId": "Copiar ID do perfil do tenant", + "name": "Nome", + "name-required": "O nome é obrigatório.", + "data": "Dados do perfil", + "profile-configuration": "Configuração do perfil", + "description": "Descrição", + "default": "Padrão", + "delete-tenant-profile-title": "Tem certeza de que deseja excluir o perfil do tenant '{{tenantProfileName}}'?", + "delete-tenant-profile-text": "Atenção: após a confirmação, o perfil do tenant e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-tenant-profiles-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 perfil do tenant} other {# perfis do tenant} }?", + "delete-tenant-profiles-text": "Atenção: após a confirmação, todos os perfis do tenant selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", + "set-default-tenant-profile-title": "Tem certeza de que deseja tornar o perfil do tenant '{{tenantProfileName}}' o padrão?", + "set-default-tenant-profile-text": "Após a confirmação, o perfil do tenant será marcado como padrão e será utilizado para novos tenants sem perfil especificado.", + "no-tenant-profiles-found": "Nenhum perfil do tenant encontrado.", + "create-new-tenant-profile": "Criar um novo!", + "create-tenant-profile": "Criar novo perfil do tenant", + "import": "Importar perfil do tenant", + "export": "Exportar perfil do tenant", + "export-failed-error": "Não foi possível exportar o perfil do tenant: {{error}}", + "tenant-profile-file": "Arquivo de perfil do tenant", + "invalid-tenant-profile-file-error": "Não foi possível importar o perfil do tenant: estrutura de dados do perfil do tenant inválida.", + "advanced-settings": "Configurações avançadas", + "entities": "Entidades", + "rule-engine": "Motor de regras", + "time-to-live": "Time-to-live", + "calculated-fields": "Campos calculados", + "alarms-and-notifications": "Alarmes e notificações", + "ota-files-in-bytes": "Arquivos", + "ws-title": "WS", + "unlimited": "(0 - ilimitado)", + "maximum-devices": "Número máximo de dispositivos", + "maximum-devices-required": "O número máximo de dispositivos é obrigatório.", + "maximum-devices-range": "O número máximo de dispositivos não pode ser negativo", + "maximum-assets": "Número máximo de ativos", + "maximum-assets-required": "O número máximo de ativos é obrigatório.", + "maximum-assets-range": "O número máximo de ativos não pode ser negativo", + "maximum-customers": "Número máximo de clientes", + "maximum-customers-required": "O número máximo de clientes é obrigatório.", + "maximum-customers-range": "O número máximo de clientes não pode ser negativo", + "maximum-users": "Número máximo de usuários", + "maximum-users-required": "O número máximo de usuários é obrigatório.", + "maximum-users-range": "O número máximo de usuários não pode ser negativo", + "maximum-dashboards": "Número máximo de dashboards", + "maximum-dashboards-required": "O número máximo de dashboards é obrigatório.", + "maximum-dashboards-range": "O número máximo de dashboards não pode ser negativo", + "maximum-edges": "Número máximo de edges", + "maximum-edges-required": "O número máximo de edges é obrigatório.", + "maximum-edges-range": "O número máximo de edges não pode ser negativo", + "maximum-rule-chains": "Número máximo de cadeias de regras", + "maximum-rule-chains-required": "O número máximo de cadeias de regras é obrigatório.", + "maximum-rule-chains-range": "O número máximo de cadeias de regras não pode ser negativo", + "maximum-resources-sum-data-size": "Tamanho total máximo dos arquivos de recursos (bytes)", + "maximum-resources-sum-data-size-required": "O tamanho total máximo dos arquivos de recursos é obrigatório.", + "maximum-resources-sum-data-size-range": "O tamanho total máximo dos arquivos de recursos não pode ser negativo", + "maximum-resource-size": "Tamanho máximo do arquivo de recurso (bytes)", + "maximum-resource-size-required": "O tamanho máximo do arquivo de recurso é obrigatório", + "maximum-resource-size-range": "O tamanho máximo do arquivo de recurso não pode ser negativo", + "maximum-ota-packages-sum-data-size": "Tamanho total máximo dos arquivos de pacotes OTA (bytes)", + "maximum-ota-package-sum-data-size-required": "O tamanho total máximo dos arquivos de pacotes OTA é obrigatório.", + "maximum-ota-package-sum-data-size-range": "O tamanho total máximo dos arquivos de pacotes OTA não pode ser negativo", + "maximum-debug-duration-min": "Duração máxima de depuração (min)", + "maximum-debug-duration-min-range": "A duração máxima de depuração não pode ser negativa", + "rest-requests-for-tenant": "Requisições REST para tenant", + "transport-tenant-telemetry-msg-rate-limit": "Mensagens de telemetria do tenant de transporte", + "transport-tenant-telemetry-data-points-rate-limit": "Pontos de dados de telemetria do tenant de transporte", + "transport-device-msg-rate-limit": "Mensagens de dispositivo de transporte", + "transport-device-telemetry-msg-rate-limit": "Mensagens de telemetria do dispositivo de transporte", + "transport-device-telemetry-data-points-rate-limit": "Pontos de dados de telemetria do dispositivo de transporte", + "transport-gateway-msg-rate-limit": "Mensagens de gateway de transporte", + "transport-gateway-telemetry-msg-rate-limit": "Mensagens de telemetria do gateway de transporte", + "transport-gateway-telemetry-data-points-rate-limit": "Pontos de dados de telemetria do gateway de transporte", + "transport-gateway-device-msg-rate-limit": "Mensagens de dispositivo do gateway de transporte", + "transport-gateway-device-telemetry-msg-rate-limit": "Mensagens de telemetria do dispositivo do gateway de transporte", + "transport-gateway-device-telemetry-data-points-rate-limit": "Pontos de dados de telemetria do dispositivo do gateway de transporte", + "tenant-entity-export-rate-limit": "Criação de versão de entidade", + "tenant-entity-import-rate-limit": "Carregamento de versão de entidade", + "tenant-notification-request-rate-limit": "Requisições de notificação", + "tenant-notification-requests-per-rule-rate-limit": "Requisições de notificação por regra de notificação", + "max-calculated-fields": "Número máximo de campos calculados por entidade", + "max-calculated-fields-range": "O número máximo de campos calculados por entidade não pode ser negativo", + "max-calculated-fields-required": "O número máximo de campos calculados por entidade é obrigatório", + "max-data-points-per-rolling-arg": "Número máximo de pontos de dados em argumentos de janela deslizante", + "max-data-points-per-rolling-arg-range": "O número máximo de pontos de dados em argumentos de janela deslizante não pode ser negativo", + "max-data-points-per-rolling-arg-required": "O número máximo de pontos de dados em argumentos de janela deslizante é obrigatório", + "max-arguments-per-cf": "Número máximo de argumentos por campo calculado", + "max-arguments-per-cf-range": "O número máximo de argumentos por campo calculado não pode ser negativo", + "max-arguments-per-cf-required": "O número máximo de argumentos por campo calculado é obrigatório", + "max-state-size": "Tamanho máximo do estado em KB", + "max-state-size-range": "O tamanho máximo do estado em KB não pode ser negativo", + "max-state-size-required": "O tamanho máximo do estado em KB é obrigatório", + "max-value-argument-size": "Tamanho máximo do argumento de valor único em KB", + "max-value-argument-size-range": "O tamanho máximo do argumento de valor único em KB não pode ser negativo", + "max-value-argument-size-required": "O tamanho máximo do argumento de valor único em KB é obrigatório", + "max-transport-messages": "Número máximo de mensagens de transporte", + "max-transport-messages-required": "O número máximo de mensagens de transporte é obrigatório.", + "max-transport-messages-range": "O número máximo de mensagens de transporte não pode ser negativo", + "max-transport-data-points": "Número máximo de pontos de dados de transporte ", + "max-transport-data-points-required": "O número máximo de pontos de dados de transporte é obrigatório.", + "max-transport-data-points-range": "O número máximo de pontos de dados de transporte não pode ser negativo", + "max-r-e-executions": "Número máximo de execuções do Motor de regras", + "max-r-e-executions-required": "O número máximo de execuções do Motor de regras é obrigatório.", + "max-r-e-executions-range": "O número máximo de execuções do Motor de regras não pode ser negativo", + "max-j-s-executions": "Número máximo de execuções JavaScript ", + "max-j-s-executions-required": "O número máximo de execuções JavaScript é obrigatório.", + "max-j-s-executions-range": "O número máximo de execuções JavaScript não pode ser negativo", + "max-tbel-executions": "Número máximo de execuções TBEL ", + "max-tbel-executions-required": "O número máximo de execuções TBEL é obrigatório.", + "max-tbel-executions-range": "O número máximo de execuções TBEL não pode ser negativo", + "max-d-p-storage-days": "Número máximo de dias de armazenamento de pontos de dados", + "max-d-p-storage-days-required": "O número máximo de dias de armazenamento de pontos de dados é obrigatório.", + "max-d-p-storage-days-range": "O número máximo de dias de armazenamento de pontos de dados não pode ser negativo", + "default-storage-ttl-days": "Dias de TTL de armazenamento por padrão", + "default-storage-ttl-days-required": "Os dias de TTL de armazenamento por padrão são obrigatórios.", + "default-storage-ttl-days-range": "Os dias de TTL de armazenamento por padrão não podem ser negativos", + "alarms-ttl-days": "Dias de TTL de alarmes", + "alarms-ttl-days-required": "Os dias de TTL de alarmes são obrigatórios", + "alarms-ttl-days-days-range": "Os dias de TTL de alarmes não podem ser negativos", + "rpc-ttl-days": "Dias de TTL de RPC", + "rpc-ttl-days-required": "Os dias de TTL de RPC são obrigatórios", + "rpc-ttl-days-days-range": "Os dias de TTL de RPC não podem ser negativos", + "queue-stats-ttl-days": "Dias de TTL de estatísticas de fila", + "queue-stats-ttl-days-required": "Os dias de TTL de estatísticas de fila são obrigatórios", + "queue-stats-ttl-days-range": "Os dias de TTL de estatísticas de fila não podem ser negativos", + "rule-engine-exceptions-ttl-days": "Dias de TTL de exceções do Motor de regras", + "rule-engine-exceptions-ttl-days-required": "Os dias de TTL de exceções do Motor de regras são obrigatórios", + "rule-engine-exceptions-ttl-days-range": "Os dias de TTL de exceções do Motor de regras não podem ser negativos", + "max-rule-node-executions-per-message": "Número máximo de execuções de nó de regra por mensagem", + "max-rule-node-executions-per-message-required": "O número máximo de execuções de nó de regra por mensagem é obrigatório.", + "max-rule-node-executions-per-message-range": "O número máximo de execuções de nó de regra por mensagem não pode ser negativo", + "max-emails": "Número máximo de emails enviados", + "max-emails-required": "O número máximo de emails enviados é obrigatório.", + "max-emails-range": "O número máximo de emails enviados não pode ser negativo", + "sms-enabled": "SMS ativado", + "max-sms": "Número máximo de SMS enviados", + "max-sms-required": "O número máximo de SMS enviados é obrigatório.", + "max-sms-range": "O número máximo de SMS enviados não pode ser negativo", + "max-created-alarms": "Número máximo de alarmes criados", + "max-created-alarms-required": "O número máximo de alarmes criados é obrigatório.", + "max-created-alarms-range": "O número máximo de alarmes criados não pode ser negativo", + "no-queue": "Nenhuma fila configurada", + "add-queue": "Adicionar fila", + "queues-with-count": "Filas ({{count}})", + "tenant-rest-limits": "Requisições REST para tenant", + "customer-rest-limits": "Requisições REST para cliente", + "incorrect-pattern-for-rate-limits": "O formato são pares separados por vírgula de capacidade e período (em segundos) com dois-pontos entre eles, ex.: 100:1,2000:60", + "too-small-value-zero": "O valor deve ser maior que 0", + "too-small-value-one": "O valor deve ser maior que 1", + "queue-size-is-limited-by-system-configuration": "O tamanho da fila também é limitado pela configuração do sistema.", + "cassandra-write-tenant-core-limits-configuration": "Consultas de gravação Cassandra da API REST", + "cassandra-read-tenant-core-limits-configuration": "Consultas de leitura Cassandra da API REST e telemetria WS", + "cassandra-write-tenant-rule-engine-limits-configuration": "Consultas de gravação Cassandra de telemetria do Motor de regras", + "cassandra-read-tenant-rule-engine-limits-configuration": "Consultas de leitura Cassandra de telemetria do Motor de regras", + "ws-limit-max-sessions-per-tenant": "Número máximo de sessões por tenant", + "ws-limit-max-sessions-per-customer": "Número máximo de sessões por cliente", + "ws-limit-max-sessions-per-regular-user": "Número máximo de sessões por usuário regular", + "ws-limit-max-sessions-per-public-user": "Número máximo de sessões por usuário público", + "ws-limit-queue-per-session": "Tamanho máximo da fila de mensagens por sessão", + "ws-limit-max-subscriptions-per-tenant": "Número máximo de assinaturas por tenant", + "ws-limit-max-subscriptions-per-customer": "Número máximo de assinaturas por cliente", + "ws-limit-max-subscriptions-per-regular-user": "Número máximo de assinaturas por usuário regular", + "ws-limit-max-subscriptions-per-public-user": "Número máximo de assinaturas por usuário público", + "ws-limit-updates-per-session": "Atualizações WS por sessão", + "rate-limits": { + "add-limit": "Adicionar limite", + "and-also-less-than": "e também menor que", + "advanced-settings": "Configurações avançadas", + "edit-limit": "Editar limite", + "calculated-field-debug-event-rate-limit": "Eventos de depuração do campo calculado", + "edit-calculated-field-debug-event-rate-limit": "Editar limites de taxa de eventos de depuração do campo calculado", + "edit-transport-tenant-msg-title": "Editar limites de taxa de mensagens do tenant de transporte", + "edit-transport-tenant-telemetry-msg-title": "Editar limites de taxa de mensagens de telemetria do tenant de transporte", + "edit-transport-tenant-telemetry-data-points-title": "Editar limites de taxa de pontos de dados de telemetria do tenant de transporte", + "edit-transport-device-msg-title": "Editar limites de taxa de mensagens de dispositivo de transporte", + "edit-transport-device-telemetry-msg-title": "Editar limites de taxa de mensagens de telemetria do dispositivo de transporte", + "edit-transport-device-telemetry-data-points-title": "Editar limites de taxa de pontos de dados de telemetria do dispositivo de transporte", + "edit-transport-gateway-msg-title": "Editar limites de taxa de mensagens de gateway de transporte", + "edit-transport-gateway-telemetry-msg-title": "Editar limites de taxa de mensagens de telemetria do gateway de transporte", + "edit-transport-gateway-telemetry-data-points-title": "Editar limites de taxa de pontos de dados de telemetria do gateway de transporte", + "edit-transport-gateway-device-msg-title": "Editar limites de taxa de mensagens de dispositivo do gateway de transporte", + "edit-transport-gateway-device-telemetry-msg-title": "Editar limites de taxa de mensagens de telemetria do dispositivo do gateway de transporte", + "edit-transport-gateway-device-telemetry-data-points-title": "Editar limites de taxa de pontos de dados de telemetria do dispositivo do gateway de transporte", + "edit-tenant-rest-limits-title": "Editar limites de taxa de requisições REST para tenant", + "edit-customer-rest-limits-title": "Editar limites de taxa de requisições REST para cliente", + "edit-ws-limit-updates-per-session-title": "Editar limites de taxa de atualizações WS por sessão", + "edit-cassandra-write-tenant-core-limits-configuration": "Editar consultas de gravação Cassandra da API REST", + "edit-cassandra-read-tenant-core-limits-configuration": "Editar consultas de leitura Cassandra da API REST e telemetria WS", + "edit-cassandra-write-tenant-rule-engine-limits-configuration": "Editar consultas de gravação Cassandra de telemetria do Motor de regras", + "edit-cassandra-read-tenant-rule-engine-limits-configuration": "Editar consultas de leitura Cassandra de telemetria do Motor de regras", + "edit-tenant-entity-export-rate-limit-title": "Editar limites de taxa de criação de versão de entidade", + "edit-tenant-entity-import-rate-limit-title": "Editar limites de taxa de carregamento de versão de entidade", + "edit-tenant-notification-request-rate-limit-title": "Editar limites de taxa de requisições de notificação", + "edit-tenant-notification-requests-per-rule-rate-limit-title": "Editar limites de taxa de requisições de notificação por regra de notificação", + "edit-edge-events-rate-limit": "Editar limites de taxa de eventos de edge", + "edit-edge-events-per-edge-rate-limit": "Editar limites de taxa de eventos de edge por edge", + "edge-events-rate-limit": "Eventos de edge", + "edge-events-per-edge-rate-limit": "Eventos de edge por edge", + "edit-edge-uplink-messages-rate-limit": "Editar limites de taxa de mensagens uplink de edge", + "edit-edge-uplink-messages-per-edge-rate-limit": "Editar limites de taxa de mensagens uplink de edge por edge", + "edge-uplink-messages-rate-limit": "Mensagens uplink de edge", + "edge-uplink-messages-per-edge-rate-limit": "Mensagens uplink de edge por edge", + "messages-per": "mensagens por", + "not-set": "Não definido", + "number-of-messages": "Número de mensagens", + "number-of-messages-required": "O número de mensagens é obrigatório.", + "number-of-messages-min": "O valor mínimo é 1.", + "preview": "Visualizar", + "per-seconds": "Por segundos", + "per-seconds-required": "A taxa de tempo é obrigatória.", + "per-seconds-min": "O valor mínimo é 1.", + "per-seconds-duplicate": "Taxa de tempo duplicada. Cada intervalo de tempo deve ser único.", + "rate-limits": "Limites de taxa", + "remove-limit": "Remover limite", + "transport-tenant-msg": "Mensagens do tenant de transporte", + "transport-tenant-telemetry-msg": "Mensagens de telemetria do tenant de transporte", + "transport-tenant-telemetry-data-points": "Pontos de dados de telemetria do tenant de transporte", + "transport-device-msg": "Mensagens de dispositivo de transporte", + "transport-device-telemetry-msg": "Mensagens de telemetria do dispositivo de transporte", + "transport-device-telemetry-data-points": "Pontos de dados de telemetria do dispositivo de transporte", + "transport-gateway-msg": "Mensagens de gateway de transporte", + "transport-gateway-telemetry-msg": "Mensagens de telemetria do gateway de transporte", + "transport-gateway-telemetry-data-points": "Pontos de dados de telemetria do gateway de transporte", + "transport-gateway-device-msg": "Mensagens de dispositivo do gateway de transporte", + "transport-gateway-device-telemetry-msg": "Mensagens de telemetria do dispositivo do gateway de transporte", + "transport-gateway-device-telemetry-data-points": "Pontos de dados de telemetria do dispositivo do gateway de transporte", + "sec": "seg" + } }, "timeinterval": { - "seconds-interval": "{ seconds, plural, =1 {1 second} other {# seconds} }", - "minutes-interval": "{ minutes, plural, =1 {1 minute} other {# minutes} }", - "hours-interval": "{ hours, plural, =1 {1 hour} other {# hours} }", - "days-interval": "{ days, plural, =1 {1 day} other {# days} }", + "seconds-interval": "{ seconds, plural, =1 {1 segundo} other {# segundos} }", + "minutes-interval": "{ minutes, plural, =1 {1 minuto} other {# minutos} }", + "hours-interval": "{ hours, plural, =1 {1 hora} other {# horas} }", + "days-interval": "{ days, plural, =1 {1 dia} other {# dias} }", "days": "Dias", "hours": "Horas", "minutes": "Minutos", "seconds": "Segundos", - "advanced": "Avançado" + "advanced": "Avançado", + "custom": "Personalizado", + "predefined": { + "yesterday": "Ontem", + "day-before-yesterday": "Anteontem", + "this-day-last-week": "Este dia na semana passada", + "previous-week": "Semana anterior (Dom - Sáb)", + "previous-week-iso": "Semana anterior (Seg - Dom)", + "previous-month": "Mês anterior", + "previous-quarter": "Trimestre anterior", + "previous-half-year": "Semestre anterior", + "previous-year": "Ano anterior", + "current-hour": "Hora atual", + "current-day": "Dia atual", + "current-day-so-far": "Dia atual até agora", + "current-week": "Semana atual (Dom - Sáb)", + "current-week-iso": "Semana atual (Seg - Dom)", + "current-week-so-far": "Semana atual até agora (Dom - Sáb)", + "current-week-iso-so-far": "Semana atual até agora (Seg - Dom)", + "current-month": "Mês atual", + "current-month-so-far": "Mês atual até agora", + "current-quarter": "Trimestre atual", + "current-quarter-so-far": "Trimestre atual até agora", + "current-half-year": "Semestre atual", + "current-half-year-so-far": "Semestre atual até agora", + "current-year": "Ano atual", + "current-year-so-far": "Ano atual até agora" + }, + "type": { + "week": "Semana (Dom - Sáb)", + "week-iso": "Semana (Seg - Dom)", + "month": "Mês", + "quarter": "Trimestre" + } + }, + "timeunit": { + "milliseconds": "Milissegundos", + "seconds": "Segundos", + "minutes": "Minutos", + "hours": "Horas", + "days": "Dias" }, "timewindow": { - "days": "{ days, plural, =1 { day } other {# days } }", - "hours": "{ hours, plural, =0 { hour } =1 {1 hour } other {# hours } }", - "minutes": "{ minutes, plural, =0 { minute } =1 {1 minute } other {# minutes } }", - "seconds": "{ seconds, plural, =0 { second } =1 {1 second } other {# seconds } }", + "timewindow": "Janela de tempo", + "timewindow-settings": "Configurações da janela de tempo", + "years": "{ years, plural, =1 {1 ano } other {# anos } }", + "years-short": "{{ years }}y", + "months": "{ months, plural, =1 {1 mês } other {# meses } }", + "months-short": "{{ months }}M", + "weeks": "{ weeks, plural, =1 {1 semana } other {# semanas } }", + "weeks-short": "{{ weeks }}w", + "days": "{ days, plural, =1 {1 dia } other {# dias } }", + "days-short": "{{ days }}d", + "hours": "{ hours, plural, =0 { hora } =1 {1 hora } other {# horas } }", + "hr": "{{ hr }} hr", + "hr-short": "{{ hr }}h", + "minutes": "{ minutes, plural, =0 { minuto } =1 {1 minuto } other {# minutos } }", + "min": "{{ min }} min", + "min-short": "{{ min }}m", + "seconds": "{ seconds, plural, =0 { segundo } =1 {1 segundo } other {# segundos } }", + "sec": "{{ sec }} sec", + "sec-short": "{{ sec }}s", + "short": { + "years": "{ years, plural, =1 {1 ano } other {# anos } }", + "days": "{ days, plural, =1 {1 dia } other {# dias } }", + "hours": "{ hours, plural, =1 {1 hora } other {# horas } }", + "minutes": "{{minutes}} min ", + "seconds": "{{seconds}} sec " + }, "realtime": "Tempo real", "history": "Histórico", - "last-prefix": "último", + "last-prefix": "últimos", "period": "de {{ startTime }} até {{ endTime }}", "edit": "Editar janela de tempo", "date-range": "Intervalo de datas", - "last": "Última", + "for-all-time": "Para todo o período", + "last": "Último", "time-period": "Período de tempo", - "hide": "Ocultar" + "hide": "Ocultar", + "interval": "Intervalo", + "just-now": "Agora mesmo", + "just-now-lower": "agora mesmo", + "ago": "atrás", + "style": "Estilo da janela de tempo", + "icon": "Ícone", + "icon-position": "Posição do ícone", + "icon-position-left": "Esquerda", + "icon-position-right": "Direita", + "font": "Fonte", + "color": "Cor", + "displayTypePrefix": "Exibir prefixo Tempo real/Histórico", + "preview": "Pré-visualização", + "relative": "Relativo", + "range": "Intervalo", + "hide-timewindow-section": "Ocultar seção de janela de tempo dos usuários finais", + "hide-last-interval": "Ocultar último intervalo dos usuários finais", + "hide-relative-interval": "Ocultar intervalo relativo dos usuários finais", + "hide-fixed-interval": "Ocultar intervalo fixo dos usuários finais", + "hide-aggregation": "Ocultar agregação dos usuários finais", + "hide-group-interval": "Ocultar intervalo de agrupamento dos usuários finais", + "hide-max-values": "Ocultar valores máximos dos usuários finais", + "hide-timezone": "Ocultar fuso horário dos usuários finais", + "disable-custom-interval": "Desativar seleção de intervalo personalizado", + "edit-aggregation-functions-list": "Editar lista de funções de agregação", + "edit-aggregation-functions-list-hint": "É possível especificar a lista de opções disponíveis.", + "allowed-aggregation-functions": "Funções de agregação permitidas", + "edit-intervals-list": "Editar lista de intervalos", + "allowed-agg-intervals": "Intervalos de agrupamento", + "default-agg-interval": "Intervalo de agrupamento padrão", + "edit-intervals-list-hint": "É possível especificar a lista de opções de intervalo disponíveis.", + "edit-grouping-intervals-list-hint": "É possível configurar a lista de intervalos de agrupamento e o intervalo de agrupamento padrão.", + "all": "Todos" + }, + "tooltip": { + "trigger": "Acionador", + "trigger-point": "Ponto", + "trigger-axis": "Eixo", + "label": "Rótulo", + "value": "Valor", + "date": "Data", + "show-date-time-interval": "Exibir intervalo de data e hora", + "show-date-time-interval-hint": "Exibir intervalo de data e hora conforme a agregação de dados.", + "hide-zero-tooltip-values": "Ocultar valores zero", + "show-stack-total": "Exibir valor total no modo empilhado", + "background-color": "Cor de fundo", + "background-blur": "Desfoque de fundo" + }, + "unit": { + "set-unit-conversion": "Definir conversão de unidade", + "unit-settings": { + "unit-settings": "Configurações de unidade", + "source-unit": "Unidade de origem", + "source-unit-hint": "Esta é a unidade do valor armazenado. A unidade a partir da qual você está convertendo. Insira o símbolo usado pelos dados de origem (ex.: m, km, ft, in).", + "target-metric-unit": "Unidade métrica de destino", + "target-metric-unit-hint": "Escolha para qual unidade métrica (SI) deseja converter o valor de origem (ex.: cm, mm, km).", + "target-imperial-unit": "Unidade imperial de destino", + "target-imperial-unit-hint": "Escolha para qual unidade imperial deseja converter o valor de origem (ex.: in, ft, yd).", + "target-hybrid-unit": "Unidade híbrida de destino", + "target-hybrid-unit-hint": "Escolha para qual unidade híbrida deseja converter o valor de origem (ex.: cm, in, km). Unidades híbridas combinam unidades métricas ou imperiais.", + "enable-unit-conversion": "Ativar conversão de unidade", + "enable-unit-conversion-hint": "Ative para habilitar a conversão. Quando desativado, o valor de origem será transmitido sem alterações. Desativado se houver apenas uma unidade no grupo de medição correspondente (ex.: fluxo luminoso, AQI)." + }, + "unit-system": "Sistema de unidades", + "unit-system-type": { + "AUTO": "Automático", + "METRIC": "Métrico", + "IMPERIAL": "Imperial", + "HYBRID": "Híbrido" + }, + "measures": { + "absorbed-dose-rate": "Taxa de dose absorvida", + "acceleration": "Aceleração", + "acidity": "Acidez", + "air-quality-index": "Índice de qualidade do ar", + "amount-of-substance": "Quantidade de substância", + "angle": "Ângulo", + "angular-acceleration": "Aceleração angular", + "area": "Área", + "area-density": "Densidade de área", + "capacitance": "Capacitância", + "catalytic-activity": "Atividade catalítica", + "catalytic-concentration": "Concentração catalítica", + "charge": "Carga", + "current-density": "Densidade de corrente", + "data-transfer-rate": "Taxa de transferência de dados", + "density": "Densidade", + "digital": "Digital", + "dimension-ratio": "Razão dimensional", + "dynamic-viscosity": "Viscosidade dinâmica", + "earthquake-magnitude": "Magnitude de terremoto", + "electric-charge-density": "Densidade de carga elétrica", + "electric-current": "Corrente elétrica", + "electric-dipole-moment": "Momento de dipolo elétrico", + "electric-field-strength": "Intensidade do campo elétrico", + "electric-flux": "Fluxo elétrico", + "electric-permittivity": "Permissividade elétrica", + "electric-polarizability": "Polarizabilidade elétrica", + "electrical-conductance": "Condutância elétrica", + "electrical-conductivity": "Condutividade elétrica", + "energy": "Energia", + "energy-density": "Densidade de energia", + "force": "Força", + "frequency": "Frequência", + "fuel-efficiency": "Eficiência de combustível", + "heat-capacity": "Capacidade térmica", + "illuminance": "Iluminância", + "inductance": "Indutância", + "kinematic-viscosity": "Viscosidade cinemática", + "length": "Comprimento", + "light-exposure": "Exposição à luz", + "linear-charge-density": "Densidade linear de carga", + "logarithmic-ratio": "Razão logarítmica", + "luminous-efficacy": "Eficácia luminosa", + "luminous-flux": "Fluxo luminoso", + "luminous-intensity": "Intensidade luminosa", + "magnetic-field-gradient": "Gradiente do campo magnético", + "magnetic-flux": "Fluxo magnético", + "magnetic-flux-density": "Densidade de fluxo magnético", + "magnetic-moment": "Momento magnético", + "magnetic-permeability": "Permeabilidade magnética", + "mass": "Massa", + "mass-fraction": "Fração mássica", + "molar-concentration": "Concentração molar", + "molar-energy": "Energia molar", + "molar-heat-capacity": "Capacidade térmica molar", + "molar-mass": "Massa molar", + "number-concentration": "Concentração numérica", + "parts-per-million": "Partes por milhão", + "power": "Potência", + "power-density": "Densidade de potência", + "pressure": "Pressão", + "radiance": "Radiância", + "radiant-intensity": "Intensidade radiante", + "radiation-dose": "Dose de radiação", + "radioactive-decay": "Decaimento radioativo", + "radioactivity": "Radioatividade", + "radioactivity-concentration": "Concentração de radioatividade", + "reciprocal-length": "Comprimento recíproco", + "resistance": "Resistência", + "reynolds-number": "Número de Reynolds", + "signal-level": "Nível de sinal", + "solid-angle": "Ângulo sólido", + "specific-energy": "Energia específica", + "specific-heat-capacity": "Capacidade térmica específica", + "specific-humidity": "Umidade específica", + "specific-volume": "Volume específico", + "speed": "Velocidade", + "surface-charge-density": "Densidade de carga superficial", + "surface-tension": "Tensão superficial", + "temperature": "Temperatura", + "thermal-conductivity": "Condutividade térmica", + "time": "Tempo", + "torque": "Torque", + "turbidity": "Turbidez", + "voltage": "Tensão", + "volume": "Volume", + "volume-flow": "Vazão volumétrica" + }, + "millimeter": "Milímetro", + "centimeter": "Centímetro", + "decimeter": "Decímetro", + "angstrom": "Angstrom", + "nanometer": "Nanômetro", + "micrometer": "Micrômetro", + "meter": "Metro", + "kilometer": "Quilômetro", + "inch": "Polegada", + "foot": "Pé", + "foot-us": "Pé (levantamento EUA)", + "yard": "Jarda", + "mile": "Milha", + "nautical-mile": "Milha náutica", + "astronomical-unit": "Unidade astronômica", + "reciprocal-metre": "Metro recíproco", + "meter-per-meter": "Metro por metro", + "steradian": "Esterradiano", + "thou": "Thou", + "barleycorn": "Barleycorn", + "hand": "Hand", + "chain": "Chain", + "furlong": "Furlong", + "league": "League", + "fathom": "Fathom", + "cable": "Cable", + "link": "Link", + "rod": "Rod", + "nanogram": "Nanograma", + "microgram": "Micrograma", + "milligram": "Miligrama", + "gram": "Grama", + "kilogram": "Quilograma", + "tonne": "Tonelada", + "ounce": "Onça", + "pound": "Libra", + "stone": "Stone", + "hundredweight-count": "Hundredweight", + "short-tons": "Toneladas curtas", + "dalton": "Dalton", + "grain": "Grão", + "drachm": "Dracma", + "quarter": "Quarter", + "slug": "Slug", + "carat": "Quilate", + "cubic-millimeter": "Milímetro cúbico", + "cubic-centimeter": "Centímetro cúbico", + "cubic-meter": "Metro cúbico", + "cubic-kilometer": "Quilômetro cúbico", + "microliter": "Microlitro", + "milliliter": "Mililitro", + "liter": "Litro", + "hectoliter": "Hectolitro", + "cubic-inch": "Polegada cúbica", + "cubic-foot": "Pé cúbico", + "cubic-yard": "Jarda cúbica", + "fluid-ounce": "Onça fluida", + "fluid-ounce-per-second": "Onça fluida por segundo", + "pint": "Pinta", + "quart": "Quart", + "gallon": "Galão", + "oil-barrels": "Barril de petróleo", + "cubic-meter-per-kilogram": "Metro cúbico por quilograma", + "gill": "Gill", + "hogshead": "Hogshead", + "teaspoon": "Colher de chá", + "tablespoon": "Colher de sopa", + "cup": "Xícara", + "celsius": "Celsius", + "kelvin": "Kelvin", + "rankine": "Rankine", + "fahrenheit": "Fahrenheit", + "percent": "Porcentagem", + "meter-per-second": "Metro por segundo", + "kilometer-per-hour": "Quilômetro por hora", + "foot-per-second": "Pé por segundo", + "foot-per-minute": "Pé por minuto", + "mile-per-hour": "Milha por hora", + "knot": "Nó", + "inch-per-second": "Polegada por segundo", + "inch-per-hour": "Polegada por hora", + "millimeters-per-minute": "Milímetros por minuto", + "meter-per-minute": "Metro por minuto", + "kilometer-per-hour-squared": "Quilômetro por hora ao quadrado", + "foot-per-second-squared": "Pé por segundo ao quadrado", + "pascal": "Pascal", + "kilopascal": "Quilopascal", + "megapascal": "Megapascal", + "gigapascal": "Gigapascal", + "millibar": "Milibar", + "bar": "Bar", + "kilobar": "Quilobar", + "newton": "Newton", + "newton-meter": "Newton-metro", + "foot-pounds": "Pé-libra", + "inch-pounds": "Polegada-libra", + "newton-per-meter": "Newton por metro", + "atmospheres": "Atmosferas", + "pounds-per-square-inch": "Libras por polegada quadrada", + "kilopound-per-square-inch": "Quilolibra por polegada quadrada", + "torr": "Torr", + "inches-of-mercury": "Polegadas de mercúrio", + "pascal-per-square-meter": "Pascal por metro quadrado", + "pound-per-square-inch": "Libra por polegada quadrada", + "newton-per-square-meter": "Newton por metro quadrado", + "kilogram-force-per-square-meter": "Quilograma-força por metro quadrado", + "pascal-per-square-centimeter": "Pascal por centímetro quadrado", + "ton-force-per-square-inch": "Tonelada-força por polegada quadrada", + "kilonewton-per-square-meter": "Quilonewton por metro quadrado", + "newton-per-square-millimeter": "Newton por milímetro quadrado", + "microjoule": "Microjoule", + "millijoule": "Milijoule", + "joule": "Joule", + "kilojoule": "Quilojoule", + "megajoule": "Megajoule", + "gigajoule": "Gigajoule", + "watt-hour": "Watt-hora", + "watt-minute": "Watt-minuto", + "kilowatt-hour": "Quilowatt-hora", + "milliwatt-hour": "Miliwatt-hora", + "megawatt-hour": "Megawatt-hora", + "gigawatt-hour": "Gigawatt-hora", + "electron-volts": "Elétron-volts", + "joules-per-coulomb": "Joules por coulomb", + "british-thermal-unit": "Unidades térmicas britânicas", + "thousand-british-thermal-unit": "Mil unidades térmicas britânicas", + "million-british-thermal-unit": "Milhão de unidades térmicas britânicas", + "foot-pound": "Pé-libra", + "calorie": "Caloria", + "small-calorie": "Caloria pequena", + "kilocalorie": "Quilocaloria", + "joule-per-kelvin": "Joule por kelvin", + "joule-per-kilogram-kelvin": "Joule por quilograma-kelvin", + "joule-per-kilogram": "Joule por quilograma", + "watt-per-meter-kelvin": "Watt por metro-kelvin", + "joule-per-cubic-meter": "Joule por metro cúbico", + "therm": "Therm", + "electric-dipole-moment": "Momento de dipolo elétrico", + "magnetic-dipole-moment": "Momento de dipolo magnético", + "debye": "Debye", + "coulomb-per-square-meter-per-volt": "Coulomb por metro quadrado por volt", + "milliwatt": "Miliwatt", + "microwatt": "Microwatt", + "watt": "Watt", + "kilowatt": "Quilowatt", + "megawatt": "Megawatt", + "gigawatt": "Gigawatt", + "metric-horsepower": "Cavalo-vapor métrico", + "milliwatt-per-square-centimeter": "Miliwatts por centímetro quadrado", + "watt-per-square-centimeter": "Watts por centímetro quadrado", + "kilowatt-per-square-centimeter": "Quilowatts por centímetro quadrado", + "milliwatt-per-square-meter": "Miliwatts por metro quadrado", + "watt-per-square-meter": "Watts por metro quadrado", + "kilowatt-per-square-meter": "Quilowatts por metro quadrado", + "watt-per-square-inch": "Watts por polegada quadrada", + "kilowatt-per-square-inch": "Quilowatts por polegada quadrada", + "horsepower": "Cavalo-vapor", + "btu-per-hour": "Unidades térmicas britânicas por hora", + "btu-per-second": "Unidades térmicas britânicas por segundo", + "btu-per-day": "Unidades térmicas britânicas por dia", + "mbtu-per-hour": "Mil unidades térmicas britânicas por hora", + "mbtu-per-second": "Mil unidades térmicas britânicas por segundo", + "mbtu-per-day": "Mil unidades térmicas britânicas por dia", + "mmbtu-per-hour": "Milhão de unidades térmicas britânicas por hora", + "mmbtu-per-second": "Milhão de unidades térmicas britânicas por segundo", + "mmbtu-per-day": "Milhão de unidades térmicas britânicas por dia", + "foot-pound-per-second": "Pé-libra por segundo", + "coulomb": "Coulomb", + "millicoulomb": "Millicoulombs", + "microcoulomb": "Microcoulomb", + "nanocoulomb": "Nanocoulomb", + "picocoulomb": "Picocoulomb", + "coulomb-per-meter": "Coulomb por metro", + "coulomb-per-cubic-meter": "Coulomb por metro cúbico", + "coulomb-per-square-meter": "Coulomb por metro quadrado", + "square-millimeter": "Milímetro quadrado", + "square-centimeter": "Centímetro quadrado", + "square-meter": "Metro quadrado", + "hectare": "Hectare", + "square-kilometer": "Quilômetro quadrado", + "square-inch": "Polegada quadrada", + "square-foot": "Pé quadrado", + "square-yard": "Jarda quadrada", + "acre": "Acre", + "square-mile": "Milha quadrada", + "are": "Are", + "barn": "Barn", + "circular-inch": "Polegada circular", + "milliampere-hour": "Miliampere-hora", + "ampere-hours": "Ampere-horas", + "kiloampere-hours": "Quiloampere-horas", + "nanoampere": "Nanoampere", + "picoampere": "Picoampere", + "microampere": "Microampere", + "milliampere": "Miliampere", + "ampere": "Ampere", + "kiloampere": "Quiloampere", + "megaampere": "Megaampere", + "gigaampere": "Gigaampere", + "microampere-per-square-centimeter": "Microampere por centímetro quadrado", + "ampere-per-square-meter": "Ampere por metro quadrado", + "ampere-per-meter": "Ampere por metro", + "oersted": "Oersted", + "bohr-magneton": "Magneton de Bohr", + "ampere-meter-squared": "Ampere-metro quadrado", + "nanovolt": "Nanovolt", + "picovolt": "Picovolt", + "millivolt": "Milivolts", + "microvolt": "Microvolts", + "volt": "Volt", + "kilovolt": "Quilovolt", + "megavolt": "Megavolt", + "dbmV": "Decibel-volt", + "dbm": "Decibel-miliwatts", + "volt-meter": "Volt-metro", + "kilovolt-meter": "Quilovolt-metro", + "megavolt-meter": "Megavolt-metro", + "microvolt-meter": "Microvolt-metro", + "millivolt-meter": "Milivolt-metro", + "nanovolt-meter": "Nanovolt-metro", + "ohm": "Ohm", + "microohm": "Micro-ohm", + "milliohm": "Mili-ohm", + "kilohm": "Quilohm", + "megohm": "Megohm", + "gigohm": "Gigohm", + "millihertz": "Milihertz", + "hertz": "Hertz", + "kilohertz": "Quilohertz", + "megahertz": "Megahertz", + "gigahertz": "Gigahertz", + "terahertz": "Terahertz", + "rpm": "Rotações por minuto", + "candela-per-square-meter": "Candela por metro quadrado", + "candela": "Candela", + "lumen": "Lúmen", + "lux": "Lux", + "foot-candle": "Pé-candela", + "lumen-per-square-meter": "Lúmen por metro quadrado", + "lux-second": "Lux-segundo", + "lumen-second": "Lúmen-segundo", + "lumens-per-watt": "Lúmens por watt", + "mole": "Mol", + "nanomole": "Nanomol", + "micromole": "Micromol", + "millimole": "Milimol", + "kilomole": "Quilomol", + "mole-per-cubic-meter": "Mol por metro cúbico", + "rssi": "Indicador de intensidade do sinal recebido", + "ppm": "Partes por milhão", + "ppb": "Partes por bilhão", + "micrograms-per-cubic-meter": "Microgramas por metro cúbico", + "aqi": "Aqi", + "gram-per-cubic-meter": "Grama por metro cúbico", + "gram-per-kilogram": "Umidade específica", + "millimeters-per-second": "Milímetros por segundo", + "neper": "Neper", + "bel": "Bel", + "decibel": "Decibel", + "meters-per-second-squared": "Metros por segundo ao quadrado", + "becquerel": "Becquerel", + "curie": "Curie", + "gray": "Gray", + "sievert": "Sievert", + "roentgen": "Roentgen", + "cps": "Contagens por segundo", + "rad": "Rad", + "rem": "Rem", + "dps": "Desintegrações por segundo", + "rutherford": "Rutherford", + "coulombs-per-kilogram": "Coulombs por quilograma", + "becquerels-per-cubic-meter": "Becquerels por metro cúbico", + "curies-per-liter": "Curies por litro", + "becquerels-per-second": "Becquerels por segundo", + "curies-per-second": "Curies por segundo", + "gy-per-second": "Gray por segundo", + "watt-per-steradian": "Watt por esterradiano", + "watt-per-square-metre-steradian": "Watt por metro quadrado-esterradiano", + "ph-level": "Nível de pH", + "turbidity": "Turbidez", + "mg-per-liter": "Miligramas por litro", + "microsiemens-per-centimeter": "Microsiemens por centímetro", + "millisiemens-per-meter": "Milisiemens por metro", + "siemens-per-meter": "Siemens por metro", + "kilogram-per-cubic-meter": "Quilograma por metro cúbico", + "gram-per-cubic-centimeter": "Grama por centímetro cúbico", + "kilogram-per-square-meter": "Quilograma por metro quadrado", + "milligram-per-milliliter": "Miligrama por mililitro", + "milligram-per-cubic-meter": "Miligrama por metro cúbico", + "pound-per-cubic-foot": "Libra por pé cúbico", + "ounces-per-cubic-inch": "Onças por polegada cúbica", + "tons-per-cubic-yard": "Toneladas por jarda cúbica", + "particle-density": "Densidade de partículas", + "kilometers-per-liter": "Quilômetros por litro", + "miles-per-gallon": "Milhas por galão", + "liters-per-100-km": "Litros por 100 km", + "gallons-per-mile": "Galões por milha", + "liters-per-hour": "Litros por hora", + "gallons-per-hour": "Galões por hora", + "beats-per-minute": "Batimentos por minuto", + "millimeters-of-mercury": "Milímetros de mercúrio", + "milligrams-per-deciliter": "Miligramas por decilitro", + "g-force": "Força g", + "kilonewton": "Quilonewton", + "kilogram-force": "Quilograma-força", + "pound-force": "Libra-força", + "kilopound-force": "Quilolibra-força", + "dyne": "Dina", + "poundal": "Poundal", + "kip": "Kip", + "gal": "Gal", + "gravity": "Gravidade", + "hectopascal": "Hectopascal", + "atmosphere": "Atmosfera", + "millibars": "Milibares", + "inch-of-mercury": "Uma polegada de mercúrio", + "richter-scale": "Escala Richter", + "nanosecond": "Nanossegundo", + "microsecond": "Microssegundo", + "millisecond": "Milissegundo", + "second": "Segundo", + "minute": "Minuto", + "hour": "Hora", + "day": "Dia", + "week": "Semana", + "month": "Mês", + "year": "Ano", + "cubic-foot-per-minute": "Pé cúbico por minuto", + "cubic-meters-per-hour": "Metros cúbicos por hora", + "cubic-meters-per-second": "Metros cúbicos por segundo", + "liter-per-second": "Litro por segundo", + "liter-per-minute": "Litro por minuto", + "gallons-per-minute": "Galões por minuto", + "cubic-foot-per-second": "Pé cúbico por segundo", + "milliliters-per-minute": "Mililitros por minuto", + "cubic-decimeter-per-second": "Decímetro cúbico por segundo", + "bit": "Bit", + "byte": "Byte", + "kilobyte": "Kilobyte", + "megabyte": "Megabyte", + "gigabyte": "Gigabyte", + "terabyte": "Terabyte", + "petabyte": "Petabyte", + "exabyte": "Exabyte", + "zettabyte": "Zettabyte", + "yottabyte": "Yottabyte", + "bit-per-second": "Bit por segundo", + "kilobit-per-second": "Kilobit por segundo", + "megabit-per-second": "Megabit por segundo", + "gigabit-per-second": "Gigabit por segundo", + "terabit-per-second": "Terabit por segundo", + "byte-per-second": "Byte por segundo", + "kilobyte-per-second": "Kilobyte por segundo", + "megabyte-per-second": "Megabyte por segundo", + "gigabyte-per-second": "Gigabyte por segundo", + "degree": "Grau", + "radian": "Radiano", + "gradian": "Gradiano", + "arcminute": "Arcminuto", + "arcsecond": "Arcssegundo", + "milliradian": "Miliradiano", + "revolution": "Revolução", + "siemens": "Siemens", + "millisiemens": "Milisiemens", + "microsiemens": "Microsiemens", + "kilosiemens": "Quilosiemens", + "megasiemens": "Megasiemens", + "gigasiemens": "Gigasiemens", + "farad": "Farad", + "millifarad": "Milifarad", + "microfarad": "Microfarad", + "nanofarad": "Nanofarad", + "picofarad": "Picofarad", + "kilofarad": "Quilofarad", + "megafarad": "Megafarad", + "gigafarad": "Gigafarad", + "terfarad": "Terafarad", + "farad-per-meter": "Farad por metro", + "tesla": "Tesla", + "gauss": "Gauss", + "kilogauss": "Quilogauss", + "millitesla": "Militesla", + "microtesla": "Microtesla", + "nanotesla": "Nanotesla", + "kilotesla": "Quilotesla", + "megatesla": "Megatesla", + "millitesla-square-meters": "Militesla metros quadrados", + "gamma": "Gamma", + "lambda": "Lambda", + "square-meter-per-second": "Metro quadrado por segundo", + "square-centimeter-per-second": "Centímetro quadrado por segundo", + "stoke": "Stoke", + "centistokes": "Centistokes", + "square-foot-per-second": "Pé quadrado por segundo", + "square-inch-per-second": "Polegada quadrada por segundo", + "pascal-second": "Pascal-segundo", + "centipoise": "Centipoise", + "poise": "Poise", + "reynolds": "Reynolds", + "pound-per-foot-hour": "Libra por pé-hora", + "newton-second-per-square-meter": "Newton-segundo por metro quadrado", + "dyne-second-per-square-centimeter": "Dina-segundo por centímetro quadrado", + "kilogram-per-meter-second": "Quilograma por metro-segundo", + "tesla-square-meters": "Tesla metros quadrados", + "maxwell": "Maxwell", + "tesla-per-meter": "Tesla por metro", + "gauss-per-centimeter": "Gauss por centímetro", + "weber": "Weber", + "microweber": "Microweber", + "milliweber": "Miliweber", + "gauss-square-centimeter": "Gauss-centímetro quadrado", + "kilogauss-square-centimeter": "Quilogauss-centímetro quadrado", + "henry": "Henry", + "millihenry": "Milihenry", + "microhenry": "Microhenry", + "nanohenry": "Nanohenry", + "henry-per-meter": "Henry por metro", + "tesla-meter-per-ampere": "Tesla-metro por ampere", + "gauss-per-oersted": "Gauss por oersted", + "kilogram-per-mole": "Quilograma por mol", + "gram-per-mole": "Grama por mol", + "milligram-per-mole": "Miligrama por mol", + "joule-per-mole": "Joule por mol", + "joule-per-mole-kelvin": "Joule por mol-kelvin", + "millivolts-per-meter": "Milivolts por metro", + "volts-per-meter": "Volts por metro", + "kilovolts-per-meter": "Quilovolts por metro", + "radian-per-second": "Radiano por segundo", + "radian-per-second-squared": "Radiano por segundo ao quadrado", + "revolutions-per-minute-per-second": "Aceleração angular", + "deg-per-second": "Graus por segundo", + "rotation-per-minute": "Rotação por minuto", + "degrees-brix": "Graus Brix", + "katal": "Katal", + "katal-per-cubic-metre": "Katal por metro cúbico", + "paris-inch": "Polegada de Paris" }, "user": { "user": "Usuário", "users": "Usuários", "customer-users": "Usuários do cliente", - "tenant-admins": "Administradores de locatários", + "tenant-admins": "Administradores do tenant", "sys-admin": "Administrador do sistema", - "tenant-admin": "Administrador de locatários", + "tenant-admin": "Administrador do tenant", "customer": "Cliente", "anonymous": "Anônimo", "add": "Adicionar usuário", @@ -1638,221 +6572,969 @@ "no-users-text": "Nenhum usuário encontrado", "user-details": "Detalhes do usuário", "delete-user-title": "Tem certeza de que deseja excluir o usuário '{{userEmail}}'?", - "delete-user-text": "Cuidado, após confirmar, não será possível recuperar o usuário e nenhum dado associado.", - "delete-users-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 user} other {# users} }?", - "delete-users-action-title": "Excluir { count, plural, =1 {1 user} other {# users} }", - "delete-users-text": "Cuidado, após confirmar, todos os usuários selecionados serão removidos e não será possível recuperar nenhum dado associado.", - "activation-email-sent-message": "O e-mail de ativação foi enviado corretamente!", + "delete-user-text": "Atenção: após a confirmação, o usuário e todos os dados relacionados serão irrecuperáveis.", + "delete-users-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 usuário} other {# usuários} }?", + "delete-users-action-title": "Excluir { count, plural, =1 {1 usuário} other {# usuários} }", + "delete-users-text": "Atenção: após a confirmação, todos os usuários selecionados serão removidos e todos os dados relacionados serão irrecuperáveis.", + "activation-email-sent-message": "Email de ativação enviado com sucesso!", "resend-activation": "Reenviar ativação", - "email": "E-mail", - "email-required": "O e-mail é obrigatório.", - "invalid-email-format": "Formato de e-mail inválido.", + "email": "Email", + "email-required": "Email é obrigatório.", + "invalid-email-format": "Formato de email inválido.", "first-name": "Nome", "last-name": "Sobrenome", "description": "Descrição", "default-dashboard": "Dashboard padrão", - "always-fullscreen": "Sempre tela inteira", + "always-fullscreen": "Sempre em tela cheia", "select-user": "Selecionar usuário", - "no-users-matching": "Nenhum usuário encontrado que coincida com '{{entity}}'.", - "user-required": "O usuário é obrigatório", + "no-users-matching": "Nenhum usuário correspondente a '{{entity}}' foi encontrado.", + "user-required": "Usuário é obrigatório", "activation-method": "Método de ativação", "display-activation-link": "Exibir link de ativação", - "send-activation-mail": "Enviar e-mail de ativação", - "activation-link": "Link de ativação de usuário", - "activation-link-text": "Para ativar o usuário, utilize o seguinte link de ativação:", + "send-activation-mail": "Enviar email de ativação", + "activation-link": "Link de ativação do usuário", + "activation-link-text": "Para ativar o usuário, utilize o seguinte link de ativação (expira em {{activationLinkTtl}}) :", "copy-activation-link": "Copiar link de ativação", - "activation-link-copied-message": "O link de ativação foi copiado para a área de transferência", + "activation-link-copied-message": "Link de ativação do usuário copiado para a área de transferência", "details": "Detalhes", - "login-as-tenant-admin": "Login como administrador de locatários", - "login-as-customer-user": "Login como usuário do cliente", + "login-as-tenant-admin": "Entrar como administrador do tenant", + "login-as-customer-user": "Entrar como usuário do cliente", "search": "Pesquisar usuários", - "selected-users": "{ count, plural, =1 {1 user} other {# users} } selecionado(s)", - "disable-account": "Desativar conta de usuário", - "enable-account": "Ativar conta de usuário", - "enable-account-message": "A conta de usuário foi ativada corretamente!", - "disable-account-message": "A conta de usuário foi desativada corretamente!" + "selected-users": "{ count, plural, =1 {1 usuário} other {# usuários} } selecionado(s)", + "disable-account": "Desativar conta do usuário", + "enable-account": "Ativar conta do usuário", + "enable-account-message": "Conta do usuário ativada com sucesso!", + "disable-account-message": "Conta do usuário desativada com sucesso!", + "copyId": "Copiar ID do usuário", + "idCopiedMessage": "ID do usuário copiado para a área de transferência", + "user-list": "Lista de usuários", + "user-list-required": "Lista de usuários é obrigatória" }, "value": { "type": "Tipo de valor", - "string": "Cadeia de caracteres", - "string-value": "Valor da cadeia de caracteres", - "string-value-required": "O valor da cadeia de caracteres é obrigatório", - "integer": "Número inteiro", - "integer-value": "Valor do número inteiro", - "integer-value-required": "O valor do número inteiro é obrigatório", - "invalid-integer-value": "Valor de número inteiro inválido", - "double": "Duplo", - "double-value": "Valor duplo", - "double-value-required": "O valor duplo de caracteres é obrigatório", - "boolean": "Booliano", - "boolean-value": "Valor booliano", + "string": "String", + "string-value": "Valor string", + "string-value-required": "Valor string é obrigatório", + "integer": "Inteiro", + "integer-value": "Valor inteiro", + "integer-value-required": "Valor inteiro é obrigatório", + "invalid-integer-value": "Valor inteiro inválido", + "double": "Double", + "double-value": "Valor double", + "double-value-required": "Valor double é obrigatório", + "boolean": "Booleano", + "boolean-value": "Valor booleano", "false": "Falso", "true": "Verdadeiro", - "long": "Longo", + "long": "Long", "json": "JSON", - "json-value": "Valor de JSON", - "json-value-invalid": "O formato do valor de JSON é inválido", - "json-value-required": "O valor de JSON é obrigatório." + "json-value": "Valor JSON", + "json-value-invalid": "O valor JSON possui um formato inválido", + "json-value-required": "Valor JSON é obrigatório." + }, + "version-control": { + "version-control": "Controle de versão", + "management": "Gerenciamento de controle de versão", + "search": "Pesquisar versões", + "branch": "Branch", + "default": "Padrão", + "select-branch": "Selecionar branch", + "branch-required": "Branch é obrigatório", + "create-entity-version": "Criar versão da entidade", + "version-name": "Nome da versão", + "version-name-required": "Nome da versão é obrigatório", + "author": "Autor", + "export-relations": "Exportar relações", + "export-attributes": "Exportar atributos", + "export-credentials": "Exportar credenciais", + "export-calculated-fields": "Exportar campos calculados \ne regras de alarme", + "entity-versions": "Versões da entidade", + "versions": "Versões", + "created-time": "Hora de criação", + "version-id": "ID da versão", + "no-entity-versions-text": "Nenhuma versão de entidade encontrada", + "no-versions-text": "Nenhuma versão encontrada", + "copy-full-version-id": "Copiar ID completo da versão", + "create-version": "Criar versão", + "creating-version": "Criando versão... Aguarde", + "nothing-to-commit": "Nenhuma alteração para confirmar", + "restore-version": "Restaurar versão", + "restore-entity-from-version": "Restaurar entidade da versão '{{versionName}}'", + "restoring-entity-version": "Restaurando versão da entidade... Aguarde", + "load-relations": "Carregar relações", + "load-attributes": "Carregar atributos", + "load-credentials": "Carregar credenciais", + "load-calculated-fields": "Carregar campos calculados e regras de alarme", + "compare-with-current": "Comparar com o atual", + "diff-entity-with-version": "Diferença com a versão da entidade '{{versionName}}'", + "previous-difference": "Diferença anterior", + "next-difference": "Próxima diferença", + "current": "Atual", + "differences": "{ count, plural, =1 {1 diferença} other {# diferenças} }", + "create-entities-version": "Criar versão das entidades", + "default-sync-strategy": "Estratégia de sincronização padrão", + "sync-strategy-merge": "Mesclar", + "sync-strategy-overwrite": "Sobrescrever", + "entities-to-export": "Entidades para exportar", + "entities-to-restore": "Entidades para restaurar", + "sync-strategy": "Estratégia de sincronização", + "all-entities": "Todas as entidades", + "no-entities-to-export-prompt": "Especifique as entidades a exportar", + "no-entities-to-restore-prompt": "Especifique as entidades a restaurar", + "add-entity-type": "Adicionar tipo de entidade", + "remove-all": "Remover todos", + "version-create-result": "{ added, plural, =0 {Nenhuma entidade} =1 {1 entidade} other {# entidades} } adicionada(s).
{ modified, plural, =0 {Nenhuma entidade} =1 {1 entidade} other {# entidades} } modificada(s).
{ removed, plural, =0 {Nenhuma entidade} =1 {1 entidade} other {# entidades} } removida(s).", + "remove-other-entities": "Remover outras entidades", + "find-existing-entity-by-name": "Localizar entidade existente por nome", + "restore-entities-from-version": "Restaurar entidades da versão '{{versionName}}'", + "restoring-entities-from-version": "Restaurando entidades... Aguarde", + "no-entities-restored": "Nenhuma entidade restaurada", + "created": "{{created}} criado(s)", + "updated": "{{updated}} atualizado(s)", + "deleted": "{{deleted}} excluído(s)", + "remove-other-entities-confirm-text": "Atenção! Isso irá excluir permanentemente todas as entidades atuais
não presentes na versão que deseja restaurar.

Digite \"remove other entities\" para confirmar.", + "auto-commit-to-branch": "auto-commit para o branch {{ branch }}", + "default-create-entity-version-name": "Atualização de {{entityName}}", + "sync-strategy-merge-hint": "Cria ou atualiza as entidades selecionadas no repositório. Todas as demais entidades do repositório não são modificadas.", + "sync-strategy-overwrite-hint": "Cria ou atualiza as entidades selecionadas no repositório. Todas as demais entidades do repositório são excluídas.", + "device-credentials-conflict": "Não foi possível carregar o dispositivo com ID externo {{entityId}}
pois as mesmas credenciais já estão presentes no banco de dados para outro dispositivo.
Considere desativar a configuração carregar credenciais no formulário de restauração.", + "missing-referenced-entity": "Não foi possível carregar o {{sourceEntityTypeName}} com ID externo {{sourceEntityId}}
porque ele faz referência a um {{targetEntityTypeName}} ausente com ID {{targetEntityId}}.", + "runtime-failed": "Falha: {{message}}", + "auto-commit-settings-read-only-hint": "O recurso de auto-commit não funciona com a opção somente leitura habilitada nas configurações do repositório.", + "rollback-on-error": "Reverter em caso de erro", + "rollback-on-error-hint": "Se houver um grande número de entidades para restaurar, considere desativar esta opção para aumentar o desempenho.\n Observe que, se ocorrer um erro durante o carregamento da versão, as entidades já persistidas (com relações, atributos, etc.) permanecerão como estão" }, "widget": { "widget-library": "Biblioteca de widgets", - "widget-bundle": "Pacote de widgets", - "select-widgets-bundle": "Selecionar pacote de widgets", + "widget-bundle": "Conjunto de widgets", + "all-bundles": "Todos os conjuntos", + "select-widgets-bundle": "Selecionar conjunto de widgets", + "widgets": "Widgets", + "all-widgets": "Todos os widgets", + "widget": "Widget", + "select-widget": "Selecionar widget", + "no-widgets-matching": "Nenhum widget correspondente a '{{entity}}' foi encontrado.", + "no-widgets": "Nenhum widget ainda", + "no-widgets-text": "Nenhum widget encontrado", "management": "Gerenciamento de widgets", - "editor": "Editor de widgets", - "widget-type-not-found": "Problema ao carregar configuração de widget.
Provavelmente\n o tipo de widget foi removido.", + "editor": "Editor de widget", + "confirm-to-exit-editor-html": "Você tem configurações de widget não salvas.
Tem certeza de que deseja sair desta página?", + "widget-type-not-found": "Problema ao carregar a configuração do widget.
Provavelmente o tipo de widget\n associado foi removido.", "widget-type-load-error": "O widget não foi carregado devido aos seguintes erros:", "remove": "Remover widget", + "delete": "Excluir widget", "edit": "Editar widget", "remove-widget-title": "Tem certeza de que deseja remover o widget '{{widgetTitle}}'?", - "remove-widget-text": "Após confirmar, não será possível recuperar o widget e nenhum dado associado.", - "timeseries": "Intervalos de tempo", + "remove-widget-text": "Após a confirmação, o widget e todos os dados relacionados se tornarão irrecuperáveis.", + "replace-reference-with-widget-copy": "Substituir referência por cópia do widget", + "timeseries": "Série temporal", "search-data": "Pesquisar dados", "no-data-found": "Nenhum dado encontrado", "latest": "Últimos valores", "rpc": "Widget de controle", "alarm": "Widget de alarme", "static": "Widget estático", + "timeseries-short": "séries", + "latest-short": "últimos", + "rpc-short": "controle", + "alarm-short": "alarme", + "static-short": "estático", "select-widget-type": "Selecionar tipo de widget", - "missing-widget-title-error": "É necessário especificar o título de widget!", + "missing-widget-title-error": "O título do widget deve ser especificado!", "widget-saved": "Widget salvo", - "unable-to-save-widget-error": "Impossível salvar widget! O widget tem erros!", + "unable-to-save-widget-error": "Não foi possível salvar o widget! O widget contém erros!", "save": "Salvar widget", "saveAs": "Salvar widget como", - "save-widget-type-as": "Salvar tipo de widget como", - "save-widget-type-as-text": "Inserir novo título de widget e/ou selecionar pacote de widgets alvo", - "toggle-fullscreen": "Alternar tela inteira", + "move": "Mover widget", + "save-widget-as": "Salvar widget como", + "save-widget-as-text": "Insira o novo título do widget", + "toggle-fullscreen": "Alternar tela cheia", "run": "Executar widget", - "title": "Título de widget", + "widget-title": "Título do widget", + "title": "Título", "title-required": "O título do widget é obrigatório.", + "title-max-length": "O título deve ter menos de 256 caracteres", + "system": "Sistema", "type": "Tipo de widget", "resources": "Recursos", - "resource-url": "URL de JavaScript/CSS", + "resource-url": "URL JavaScript/CSS", + "resource-is-extension": "É extensão", "remove-resource": "Remover recurso", "add-resource": "Adicionar recurso", "html": "HTML", - "tidy": "Tidy", + "tidy": "Organizar", "css": "CSS", - "settings-schema": "Esquema de configuração", - "datakey-settings-schema": "Esquema de configuração de chave de dados", + "settings-form": "Formulário de configurações", + "data-key-settings-form": "Formulário de configurações de chave de dados", + "latest-data-key-settings-form": "Formulário de configurações de chave de dados mais recentes", + "widget-settings": "Configurações do widget", + "description": "Descrição", + "tags": "Tags", + "image-preview": "Pré-visualização de imagem", + "settings-form-selector": "Seletor de formulário de configurações", + "data-key-settings-form-selector": "Seletor de formulário de configurações de chave de dados", + "latest-data-key-settings-form-selector": "Seletor de formulário de configurações de chave de dados mais recentes", + "all": "Todos", + "actual": "Atual", + "scada": "Símbolo SCADA", + "deprecated": "Obsoleto", + "has-basic-mode": "Possui modo básico", + "basic-mode-form-selector": "Seletor de formulário do modo básico", + "basic-mode": "Básico", + "advanced-mode": "Avançado", "javascript": "Javascript", "js": "JS", - "add-widget-type": "Adicionar novo tipo de widget", - "widget-template-load-failed-error": "Erro ao carregar modelo de widget!", + "delete-widget-title": "Tem certeza de que deseja excluir o widget '{{widgetName}}'?", + "delete-widget-text": "Após a confirmação, o widget e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-widgets-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 widget} other {# widgets} }?", + "delete-widgets-text": "Atenção: após a confirmação, todos os widgets selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-widget": "Excluir widget", + "widget-template-load-failed-error": "Falha ao carregar o template do widget!", + "details": "Detalhes", + "widget-details": "Detalhes do widget", "add": "Adicionar widget", - "undo": "Desfazer alterações de widget", + "add-existing-widget": "Adicionar widget existente", + "add-new-widget": "Adicionar novo widget", + "search-widgets": "Pesquisar widgets", + "selected-widgets": "{ count, plural, =1 {1 widget} other {# widgets} } selecionado(s)", + "undo": "Desfazer alterações do widget", "export": "Exportar widget", - "no-data": "Nenhum dado para exibição em widget", - "data-overflow": "O widget exibe {{count}} de um total de {{total}} entidades", - "alarm-data-overflow": "O widget exibe alarmes para (no máximo) {{allowedEntities}} entidades de um total de {{totalEntities}} entidades" + "export-prompt": "Incorporar imagens e recursos do widget", + "export-widgets": "Exportar widgets", + "export-widgets-prompt": "Incorporar imagens e recursos dos widgets", + "import": "Importar widget", + "no-data": "Sem dados para exibir no widget", + "data-overflow": "O widget exibe {{count}} de {{total}} entidades", + "alarm-data-overflow": "O widget exibe alarmes para {{allowedEntities}} (máximo permitido) entidades de {{totalEntities}} entidades", + "search": "Pesquisar widget", + "filter": "Tipo de filtro do widget", + "loading-widgets": "Carregando widgets...", + "widget-template-error": "Template HTML do widget inválido.", + "reference": "Referência" }, "widget-action": { - "header-button": "Botão de cabeçalho de widget", - "open-dashboard-state": "Navegar para novo estado de dashboard", - "update-dashboard-state": "Atualizar estado de dashboard atual", + "header-button": "Botão do cabeçalho do widget", + "do-nothing": "Não fazer nada", + "open-dashboard-state": "Navegar para novo estado do dashboard", + "update-dashboard-state": "Atualizar estado atual do dashboard", "open-dashboard": "Navegar para outro dashboard", - "custom": "Personalizar ação", - "custom-pretty": "Personalizar ação (com modelo de HTML)", - "target-dashboard-state": "Estado de dashboard alvo", - "target-dashboard-state-required": "O estado do dashboard alvo é obrigatório", - "set-entity-from-widget": "Definir entidade em widget", - "target-dashboard": "Dashboard alvo", - "open-right-layout": "Abrir layout do dashboard à direita (exibição móvel)" + "custom": "Ação personalizada", + "custom-pretty": "Ação personalizada (com template HTML)", + "custom-pretty-error-title": "Erro no diálogo personalizado", + "custom-pretty-template-error": "Template do diálogo personalizado inválido.", + "custom-pretty-controller-error": "Ocorreu um erro ao avaliar a função do diálogo personalizado.", + "mobile-action": "Ação mobile", + "target-dashboard-state": "Estado de destino do dashboard", + "target-dashboard-state-required": "O estado de destino do dashboard é obrigatório", + "set-entity-from-widget": "Definir entidade a partir do widget", + "target-dashboard": "Dashboard de destino", + "select-target-dashboard": "Selecionar dashboard de destino", + "target-dashboard-required": "O dashboard de destino é obrigatório.", + "open-right-layout": "Abrir layout direito do dashboard (visualização mobile)", + "state-display-type": "Opção de exibição do estado do dashboard", + "open-normal": "Normal", + "open-in-separate-dialog": "Abrir em diálogo separado", + "open-in-popover": "Abrir em popover", + "dialog-title": "Título do diálogo", + "dialog-hide-dashboard-toolbar": "Ocultar barra de ferramentas do dashboard no diálogo", + "dialog-width": "Largura do diálogo em percentual relativo à largura da viewport", + "dialog-height": "Altura do diálogo em percentual relativo à altura da viewport", + "dialog-size-range-error": "O valor percentual do tamanho do diálogo deve estar entre 1 e 100.", + "popover-preferred-placement": "Posicionamento preferencial do popover", + "popover-placement-top": "Superior", + "popover-placement-topLeft": "Superior esquerdo", + "popover-placement-topRight": "Superior direito", + "popover-placement-right": "Direito", + "popover-placement-rightTop": "Direito superior", + "popover-placement-rightBottom": "Direito inferior", + "popover-placement-bottom": "Inferior", + "popover-placement-bottomLeft": "Inferior esquerdo", + "popover-placement-bottomRight": "Inferior direito", + "popover-placement-left": "Esquerdo", + "popover-placement-leftTop": "Esquerdo superior", + "popover-placement-leftBottom": "Esquerdo inferior", + "popover-hide-on-click-outside": "Ocultar popover ao clicar fora", + "popover-hide-dashboard-toolbar": "Ocultar barra de ferramentas do dashboard no popover", + "popover-width": "Largura do popover", + "popover-height": "Altura do popover", + "popover-style": "Estilo do popover", + "open-new-browser-tab": "Abrir em nova aba do navegador", + "open-URL": "Abrir URL", + "URL": "URL", + "url-required": "URL é obrigatória.", + "mobile": { + "device-provision": "Provisionamento de dispositivo", + "action-type": "Tipo de ação mobile", + "select-action-type": "Selecionar tipo de ação mobile", + "action-type-required": "O tipo de ação mobile é obrigatório", + "take-picture-from-gallery": "Tirar foto da galeria", + "take-photo": "Tirar foto", + "map-direction": "Abrir direções no mapa", + "map-location": "Abrir localização no mapa", + "scan-qr-code": "Escanear QR Code", + "make-phone-call": "Fazer ligação", + "get-location": "Obter localização do telefone", + "take-screenshot": "Tirar screenshot" + }, + "custom-action-function": "Função de ação personalizada", + "custom-pretty-function": "Função de ação personalizada (com template HTML)", + "map-item-type": "Tipo de item do mapa", + "map-item": { + "marker": "Marcador", + "polygon": "Polígono", + "rectangle": "Retângulo", + "circle": "Círculo" + }, + "place-map-item": "Posicionar item no mapa", + "map-item-tooltip": { + "customize-map-item-tooltips": "Personalizar tooltips de itens do mapa", + "place-marker": "Posicionar marcador", + "start-draw-rectangle": "Iniciar desenho de retângulo", + "finish-draw-rectangle": "Finalizar desenho de retângulo", + "start-draw-polygon": "Iniciar desenho de polígono", + "continue-draw-polygon": "Continuar desenho de polígono", + "finish-draw-polygon": "Finalizar desenho de polígono", + "start-draw-circle": "Iniciar desenho de círculo", + "finish-draw-circle": "Finalizar desenho de círculo" + } }, "widgets-bundle": { - "current": "Pacote atual", - "widgets-bundles": "Pacotes de widgets", - "add": "Adicionar pacote de widgets", - "delete": "Excluir pacote de widgets", + "current": "Conjunto atual", + "widgets-bundles": "Conjuntos de widgets", + "widgets-bundle-widgets": "Widgets do conjunto de widgets", + "add": "Adicionar conjunto de widgets", + "delete": "Excluir conjunto de widgets", "title": "Título", "title-required": "O título é obrigatório.", - "add-widgets-bundle-text": "Adicionar novo pacote de widgets", - "no-widgets-bundles-text": "Nenhum pacote de widgets encontrado", - "empty": "O pacote de widgets está vazio", + "title-max-length": "O título deve ter menos de 256 caracteres", + "description": "Descrição", + "image-preview": "Pré-visualização de imagem", + "scada": "Conjunto de widgets SCADA", + "order": "Ordem", + "add-widgets-bundle-text": "Adicionar novo conjunto de widgets", + "no-widgets-bundles-text": "Nenhum conjunto de widgets encontrado", + "empty": "O conjunto de widgets está vazio", "details": "Detalhes", - "widgets-bundle-details": "Detalhes do pacote de widgets", - "delete-widgets-bundle-title": "Tem certeza de que deseja excluir o pacote de widgets '{{widgetsBundleTitle}}'?", - "delete-widgets-bundle-text": "Cuidado, após confirmar, não será possível recuperar o pacote de widgets e nenhum dado associado.", - "delete-widgets-bundles-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 widgets bundle} other {# widgets bundles} }?", - "delete-widgets-bundles-action-title": "Excluir { count, plural, =1 {1 widgets bundle} other {# widgets bundles} }", - "delete-widgets-bundles-text": "Cuidado, após confirmar, todos os pacotes de widgets selecionados serão removidos e não será possível recuperar nenhum dado associado.", - "no-widgets-bundles-matching": "Nenhum conversor de pacotes de widgets encontrado que coincida com '{{widgetsBundle}}'.", - "widgets-bundle-required": "O pacote de widgets é obrigatório.", + "widgets-bundle-details": "Detalhes do conjunto de widgets", + "delete-widgets-bundle-title": "Tem certeza de que deseja excluir o conjunto de widgets '{{widgetsBundleTitle}}'?", + "delete-widgets-bundle-text": "Atenção: após a confirmação, o conjunto de widgets e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-widgets-bundles-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 conjunto de widgets} other {# conjuntos de widgets} }?", + "delete-widgets-bundles-action-title": "Excluir { count, plural, =1 {1 conjunto de widgets} other {# conjuntos de widgets} }", + "delete-widgets-bundles-text": "Atenção: após a confirmação, todos os conjuntos de widgets selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", + "no-widgets-bundles-matching": "Nenhum conjunto de widgets correspondente a '{{widgetsBundle}}' foi encontrado.", + "widgets-bundle-required": "O conjunto de widgets é obrigatório.", "system": "Sistema", - "import": "Importar pacote de widgets", - "export": "Exportar pacote de widgets", - "export-failed-error": "Impossível exportar pacote de widgets: {{error}}", - "create-new-widgets-bundle": "Criar novo pacote de widgets", - "widgets-bundle-file": "Arquivo de pacote de widgets", - "invalid-widgets-bundle-file-error": "Impossível importar pacote de widgets: Estrutura de dados de pacote de widgets inválida.", - "search": "Pesquisar pacotes de widgets", - "selected-widgets-bundles": "{ count, plural, =1 {1 widgets bundle} other {# widgets bundles} } selecionado(s)", - "open-widgets-bundle": "Abrir pacote de widgets" + "import": "Importar conjunto de widgets", + "export": "Exportar conjunto de widgets", + "export-widgets-bundle-widgets-prompt": "Incluir widgets do conjunto nos dados exportados (caso contrário, apenas os FQNs dos widgets referenciados serão exportados)", + "export-failed-error": "Não foi possível exportar o conjunto de widgets: {{error}}", + "create-new-widgets-bundle": "Criar novo conjunto de widgets", + "widgets-bundle-file": "Arquivo do conjunto de widgets", + "invalid-widgets-bundle-file-error": "Não foi possível importar o conjunto de widgets: estrutura de dados do conjunto de widgets inválida.", + "search": "Pesquisar conjuntos de widgets", + "selected-widgets-bundles": "{ count, plural, =1 {1 conjunto de widgets} other {# conjuntos de widgets} } selecionado(s)", + "open-widgets-bundle": "Abrir conjunto de widgets", + "loading-widgets-bundles": "Carregando conjuntos de widgets...", + "create-new": "Criar novo conjunto de widgets" }, "widget-config": { "data": "Dados", "settings": "Configurações", "advanced": "Avançado", + "appearance": "Aparência", + "widget-card": "Card do widget", + "mobile": "Mobile", "title": "Título", - "title-tooltip": "Título da dica de ferramenta", - "general-settings": "Configuração geral", - "display-title": "Exibir título", - "drop-shadow": "Sombra projetada", - "enable-fullscreen": "Habilitar tela inteira", + "title-tooltip": "Tooltip do título", + "general-settings": "Configurações gerais", + "display-title": "Exibir título do widget", + "card-title": "Título do card", + "drop-shadow": "Sombra", + "enable-fullscreen": "Habilitar tela cheia", "background-color": "Cor de fundo", - "text-color": "Cor de texto", - "padding": "Preenchimento", + "text-color": "Cor do texto", + "border-radius": "Raio da borda", + "padding": "Espaçamento interno", "margin": "Margem", - "widget-style": "Estilo de widget", + "widget-style": "Estilo do widget", + "widget-css": "CSS do widget", "title-style": "Estilo do título", - "mobile-mode-settings": "Configuração do modo móvel", + "mobile-mode-settings": "Modo mobile", "order": "Ordem", "height": "Altura", + "mobile-hide": "Ocultar widget no modo mobile", + "desktop-hide": "Ocultar widget no modo desktop", "units": "Símbolo especial a ser exibido ao lado do valor", - "decimals": "Número de dígitos após ponto de flutuação", + "units-by-default": "Unidades padrão", + "decimals": "Número de dígitos após o ponto flutuante", + "decimals-by-default": "Decimais padrão", + "default-data-key-parameter-hint": "Este parâmetro se aplica a todos os valores do widget, a menos que seja substituído pela configuração da chave de dados", + "units-short": "Unidades", + "decimals-short": "Decimais", + "decimals-suffix": "decimais", + "digits-suffix": "dígitos", "timewindow": "Janela de tempo", "use-dashboard-timewindow": "Usar janela de tempo do dashboard", - "display-timewindow": "Exibir timewindow", + "use-widget-timewindow": "Usar janela de tempo do widget", + "display-timewindow": "Exibir janela de tempo", + "legend": "Legenda", "display-legend": "Exibir legenda", "datasources": "Fontes de dados", - "maximum-datasources": "No máximo { count, plural, =1 {1 datasource is allowed.} other {# datasources are allowed} }", + "datasource": "Fonte de dados", + "maximum-datasources": "Máximo de { count, plural, =1 {1 fonte de dados permitida.} other {# fontes de dados permitidas} }", + "timeseries-key-error": "Pelo menos uma chave de dados de série temporal deve ser especificada", "datasource-type": "Tipo", "datasource-parameters": "Parâmetros", "remove-datasource": "Remover fonte de dados", "add-datasource": "Adicionar fonte de dados", - "target-device": "Dispositivo alvo", - "alarm-source": "Fonte do alarme", + "target-device": "Dispositivo de destino", + "alarm-source": "Fonte de alarme", "actions": "Ações", "action": "Ação", "add-action": "Adicionar ação", "search-actions": "Pesquisar ações", "no-actions-text": "Nenhuma ação encontrada", "action-source": "Fonte da ação", + "select-action-source": "Selecionar fonte da ação", "action-source-required": "A fonte da ação é obrigatória.", + "column-index": "Índice da coluna", + "select-column-index": "Selecionar índice da coluna", + "column-index-required": "O índice da coluna é obrigatório.", + "not-set": "Não definido", "action-name": "Nome", - "action-name-required": "O nome da ação é obrigatório!", - "action-name-not-unique": "Já existe outra ação com o mesmo nome.\nO nome da ação na mesma fonte de ação deve ser exclusivo.", + "action-name-required": "O nome da ação é obrigatório.", + "action-name-not-unique": "Já existe outra ação com o mesmo nome.\nO nome da ação deve ser único dentro da mesma fonte de ação.", "action-icon": "Ícone", + "header-button": { + "button-settings": "Configurações do botão", + "button-type": "Tipo de botão", + "button-type-basic": "Básico", + "button-type-raised": "Elevado", + "button-type-stroked": "Contornado", + "button-type-flat": "Plano", + "button-type-icon": "Ícone", + "button-type-mini-fab": "FAB", + "colors": "Cores", + "color": "Cor", + "background": "Plano de fundo", + "border": "Borda", + "advanced-button-style": "Estilo avançado do botão", + "button-style": "Estilo do botão" + }, + "show-hide-action-using-function": "Mostrar/ocultar ação usando função", + "show-action-function": "Função para exibir ação", "action-type": "Tipo", "action-type-required": "O tipo de ação é obrigatório.", "edit-action": "Editar ação", "delete-action": "Excluir ação", - "delete-action-title": "Excluir ação de widget", - "delete-action-text": "Tem certeza de que deseja excluir a ação de widget com o nome '{{actionName}}'?", - "display-icon": "Exibir ícone de título", + "delete-action-title": "Excluir ação do widget", + "delete-action-text": "Tem certeza de que deseja excluir a ação do widget com o nome '{{actionName}}'?", + "title-icon": "Ícone do título", + "display-icon": "Exibir ícone do título", + "card-icon": "Ícone do card", + "icon": "Ícone", "icon-color": "Cor do ícone", - "icon-size": "Tamanho do ícone" + "icon-size": "Tamanho do ícone", + "advanced-settings": "Configurações avançadas", + "data-settings": "Configurações de dados", + "limits": "Limites", + "no-data-display-message": "Mensagem alternativa para \"Sem dados para exibir\"", + "data-page-size": "Máximo de entidades por fonte de dados", + "settings-component-not-found": "Componente de formulário de configurações não encontrado para o seletor '{{selector}}'", + "preview": "Pré-visualização", + "set": "Definir", + "set-message": "Definir mensagem", + "advanced-title-style": "Estilo avançado do título", + "card-style": "Estilo do card", + "text": "Texto", + "background": "Plano de fundo", + "advanced-widget-style": "Estilo avançado do widget", + "card-buttons": "Botões do card", + "show-card-buttons": "Exibir botões do card", + "card-border-radius": "Raio da borda do card", + "card-padding": "Espaçamento interno do card", + "card-appearance": "Aparência do card", + "color": "Cor", + "tooltip": "Tooltip", + "units-required": "A unidade é obrigatória.", + "list-layout": "Layout de lista", + "layout": "Layout", + "resize-options": "Opções de redimensionamento", + "resizable": "Redimensionável", + "preserve-aspect-ratio": "Preservar proporção de aspecto" }, "widget-type": { "import": "Importar tipo de widget", "export": "Exportar tipo de widget", - "export-failed-error": "Impossível exportar tipo de widget: {{error}}", - "create-new-widget-type": "Criar novo tipo de widget", - "widget-type-file": "Arquivo de tipo de widget", - "invalid-widget-type-file-error": "Impossível importar tipo de widget: Estrutura de dados de tipo de widget inválida." + "export-failed-error": "Não foi possível exportar o widget: {{error}}", + "widget-file": "Arquivo do widget", + "invalid-widget-file-error": "Não foi possível importar o widget: estrutura de dados do widget inválida." + }, + "markdown": { + "edit": "Editar", + "preview": "Visualizar", + "copy-code": "Clique para copiar", + "copied": "Copiado!" }, "widgets": { + "mobile-app-qr-code": { + "configuration-hint": "A configuração depende do widget de QR code do aplicativo móvel nas configurações principais da plataforma", + "get-it-on-google-play": "Disponível no Google Play", + "download-on-the-app-store": "Baixar na App Store" + }, + "action-button": { + "behavior": "Comportamento", + "on-click": "Ao clicar", + "on-click-hint": "Ação acionada quando o botão é clicado", + "first-button-click": "Clique no primeiro botão", + "first-button-click-hint": "Ação ao pressionar o primeiro botão.", + "second-button-click": "Clique no segundo botão", + "second-button-click-hint": "Ação ao pressionar o segundo botão.", + "button-click-hint": "Ação ao pressionar o widget." + }, + "command-button": { + "behavior": "Comportamento", + "on-click": "Ao clicar", + "on-click-hint": "Ação executada quando o botão é clicado." + }, + "power-button": { + "behavior": "Comportamento", + "power-on": "Ligar 'On'", + "power-on-hint": "Ação executada para ligar o componente.", + "power-off": "Desligar 'Off'", + "power-off-hint": "Ação executada para desligar o componente.", + "on-label": "On", + "off-label": "Off", + "layout": "Layout", + "layout-default": "Padrão", + "layout-simplified": "Simplificado", + "layout-outlined": "Contornado", + "layout-default-volume": "Padrão.Volume", + "layout-simplified-volume": "Simplificado.Volume", + "layout-outlined-volume": "Contornado.Volume", + "layout-default-icon": "Padrão.Ícone", + "layout-simplified-icon": "Simplificado.Ícone", + "layout-outlined-icon": "Contornado.Ícone", + "main": "Principal", + "background": "Plano de fundo", + "button-icon-on": "Ícone do botão 'On'", + "button-icon-off": "Ícone do botão 'Off'", + "power-on-colors": "Cores 'On'", + "power-off-colors": "Cores 'Off'", + "disabled-colors": "Cores desabilitadas", + "button": "Botão" + }, + "toggle-button": { + "behavior": "Comportamento", + "checked": "Marcado", + "unchecked": "Desmarcado", + "check": "Marcar", + "check-hint": "Ação executada para marcar o componente.", + "uncheck": "Desmarcar", + "uncheck-hint": "Ação executada para desmarcar o componente.", + "auto-scale": "Escala automática", + "horizontal-fill": "Preenchimento horizontal", + "vertical-fill": "Preenchimento vertical", + "button-appearance": "Aparência do botão" + }, + "segmented-button": { + "layout": "Layout", + "layout-squared": "Quadrado", + "layout-rounded": "Arredondado", + "card-border": "Borda do cartão", + "button-appearance": "Aparência do botão", + "first": "Primeiro", + "second": "Segundo", + "color-styles": "Estilos de cor", + "selected": "Selecionado", + "unselected": "Não selecionado" + }, + "button": { + "layout": "Layout", + "outlined": "Contornado", + "filled": "Preenchido", + "underlined": "Sublinhado", + "basic": "Básico", + "auto-scale": "Escala automática", + "label": "Rótulo", + "icon": "Ícone", + "border-radius": "Raio da borda", + "color-palette": "Paleta de cores", + "main": "Principal", + "background": "Plano de fundo", + "border": "Borda", + "custom-styles": "Estilos personalizados", + "clear-style": "Limpar estilo", + "shadow": "Sombra", + "enabled": "Habilitado", + "disabled": "Desabilitado", + "preview": "Visualização", + "copy-style-from": "Copiar estilo de" + }, + "value-stepper": { + "behavior": "Comportamento", + "simplified": "Simplificado", + "filled": "Preenchido", + "outlined": "Contornado", + "volume": "Volume", + "initial-state": "Estado inicial", + "initial-state-hint": "Ação para obter o valor inicial.", + "disabled-state": "Estado desabilitado", + "disabled-state-hint": "Configure a condição sob a qual o componente é desabilitado.", + "right-button-click": "Clique no botão direito", + "right-button-click-hint": "Ação ao pressionar o botão direito.", + "left-button-click": "Clique no botão esquerdo", + "left-button-click-hint": "Ação ao pressionar o botão esquerdo.", + "auto-scale": "Escala automática", + "value-range": "Intervalo", + "min-range": "Mín", + "max-range": "Máx", + "value-increment-decrement-step": "Passo de incremento/decremento do valor", + "value": "Valor", + "value-box-background": "Plano de fundo da caixa de valor", + "border": "Borda", + "button-appearance": "Aparência do botão", + "left": "Esquerdo", + "right": "Direito", + "left-button": "Botão esquerdo", + "right-button": "Botão direito", + "icon": "Ícone", + "color-palette": "Paleta de cores", + "main": "Principal", + "background": "Plano de fundo", + "button-icon-on": "Ícone do botão 'On'", + "button-on-colors": "Cores 'On'", + "disabled-colors": "Cores desabilitadas" + }, + "button-state": { + "activated-state": "Estado ativado", + "activated-state-hint": "Configure a condição sob a qual o botão está ativo.", + "disabled-state": "Estado desabilitado", + "disabled-state-hint": "Configure a condição sob a qual o botão está desabilitado.", + "selected-state": "Selecionar botão", + "selected-state-hint": "Configure a condição sob a qual o botão está selecionado.", + "enabled": "Habilitado", + "hovered": "Com cursor", + "pressed": "Pressionado", + "activated": "Ativado", + "disabled": "Desabilitado", + "initial": "Primeiro botão", + "first": "Primeiro", + "second": "Segundo" + }, + "background": { + "background": "Plano de fundo", + "background-settings": "Configurações de plano de fundo", + "background-type-image": "Imagem", + "background-type-color": "Cor", + "image-url": "URL da imagem", + "overlay": "Sobreposição", + "enable-overlay": "Habilitar sobreposição", + "blur": "Desfoque", + "preview": "Pré-visualização" + }, + "bar-chart": { + "bar-appearance": "Aparência da barra", + "label-on-bar": "Rótulo na barra", + "value-on-bar": "Valor na barra", + "bar-chart-style": "Estilo do gráfico de barras", + "bar-axis": "Eixo da barra" + }, + "polar-area-chart": { + "polar-axis": "Eixo polar", + "start-angle": "Ângulo inicial", + "polar-area-chart-style": "Estilo do gráfico de área polar" + }, + "battery-level": { + "layout": "Layout", + "layout-vertical-solid": "Vertical. Sólido", + "layout-horizontal-solid": "Horizontal. Sólido", + "layout-vertical-divided": "Vertical. Dividido", + "layout-horizontal-divided": "Horizontal. Dividido", + "icon": "Ícone", + "value": "Valor", + "auto-scale": "Escala automática", + "battery-level-color": "Cor do nível da bateria", + "battery-shape-color": "Cor do formato da bateria", + "battery-level-card-style": "Estilo do cartão de nível da bateria", + "sections-count": "Quantidade de seções" + }, + "signal-strength": { + "value": "Valor", + "last-update": "Última atualização", + "no-signal": "Sem sinal", + "layout": "Layout", + "layout-wifi": "Wi-Fi", + "layout-cellular-bar": "Barra celular", + "icon": "Ícone", + "date": "Data", + "active-bars-color": "Cor das barras de sinal ativas", + "inactive-bars-color": "Cor das barras de sinal inativas", + "signal-strength-card-style": "Estilo do cartão de intensidade de sinal", + "no-signal-rssi-value": "Valor rssi \"Sem sinal\"" + }, + "status-widget": { + "behavior": "Comportamento", + "layout": "Layout", + "layout-default": "Padrão", + "layout-center": "Centro", + "layout-icon": "Ícone", + "on": "On", + "off": "Off", + "label": "Rótulo", + "status": "Status", + "icon": "Ícone", + "color-palette": "Paleta de cores", + "disabled-color-palette": "Paleta de cores desabilitada", + "primary": "Primário", + "primary-color-hint": "Cor do ícone e rótulo", + "secondary": "Secundário", + "secondary-color-hint": "Cor do status", + "background": "Plano de fundo" + }, + "chart": { + "common-settings": "Configurações comuns", + "enable-stacking-mode": "Habilitar modo de empilhamento", + "selection": "Seleção de intervalo de tempo", + "enable-selection-mode": "Habilitar modo de seleção", + "line-shadow-size": "Tamanho da sombra da linha", + "display-smooth-lines": "Exibir linhas suaves (curvas)", + "default-bar-width": "Largura padrão da barra para dados não agregados (milissegundos)", + "bar-alignment": "Alinhamento da barra", + "bar-alignment-left": "Esquerda", + "bar-alignment-right": "Direita", + "bar-alignment-center": "Centro", + "default-font": "Fonte padrão", + "default-font-size": "Tamanho da fonte padrão", + "default-font-color": "Cor da fonte padrão", + "thresholds-line-width": "Largura de linha padrão para todos os limites", + "tooltip-settings": "Configurações de tooltip", + "tooltip": "Tooltip", + "show-tooltip": "Exibir tooltip", + "hover-individual-points": "Passar o cursor sobre pontos individuais", + "show-cumulative-values": "Exibir valores cumulativos no modo de empilhamento", + "hide-zero-false-values": "Ocultar valores zero/falso do tooltip", + "tooltip-value-format-function": "Função de formatação do valor do tooltip", + "grid-settings": "Configurações de grade", + "show-vertical-lines": "Exibir linhas verticais", + "show-horizontal-lines": "Exibir linhas horizontais", + "grid-outline-border-width": "Largura do contorno/borda da grade (px)", + "primary-color": "Cor primária", + "background-color": "Cor de fundo", + "ticks-color": "Cor dos marcadores", + "xaxis-settings": "Configurações do eixo X", + "axis-title": "Título do eixo", + "xaxis-tick-labels-settings": "Configurações dos rótulos de marcadores do eixo X", + "show-tick-labels": "Exibir rótulos de marcadores do eixo", + "yaxis-settings": "Configurações do eixo Y", + "min-scale-value": "Valor mínimo na escala", + "max-scale-value": "Valor máximo na escala", + "yaxis-tick-labels-settings": "Configurações dos rótulos de marcadores do eixo Y", + "tick-step-size": "Tamanho do passo entre marcadores", + "number-of-decimals": "Quantidade de casas decimais a exibir", + "ticks-formatter-function": "Função de formatação dos marcadores", + "comparison-settings": "Configurações de comparação", + "enable-comparison": "Habilitar comparação", + "time-for-comparison": "Período de comparação", + "time-for-comparison-previous-interval": "Intervalo anterior (padrão)", + "time-for-comparison-days": "Dia atrás", + "time-for-comparison-weeks": "Semana atrás", + "time-for-comparison-months": "Mês atrás", + "time-for-comparison-years": "Ano atrás", + "time-for-comparison-custom-interval": "Intervalo personalizado", + "custom-interval-value": "Valor do intervalo personalizado (ms)", + "comparison-x-axis-settings": "Configurações do eixo X de comparação", + "axis-position": "Posição do eixo", + "axis-position-top": "Superior (padrão)", + "axis-position-bottom": "Inferior", + "custom-legend-settings": "Configurações de legenda personalizada", + "enable-custom-legend": "Habilitar legenda personalizada (permite usar valores de atributo/série temporal nos rótulos de chave)", + "key-name": "Nome da chave", + "key-name-required": "Nome da chave é obrigatório", + "key-type": "Tipo de chave", + "key-type-attribute": "Atributo", + "key-type-timeseries": "Série temporal", + "label-keys-list": "Lista de chaves para usar nos rótulos", + "no-label-keys": "Nenhuma chave configurada", + "add-label-key": "Adicionar nova chave", + "line-width": "Largura da linha", + "color": "Cor", + "data-is-hidden-by-default": "Dados ocultos por padrão", + "disable-data-hiding": "Desabilitar ocultação de dados", + "remove-from-legend": "Remover chave de dados da legenda", + "exclude-from-stacking": "Excluir do empilhamento (disponível no modo \"Empilhamento\")", + "line-settings": "Configurações de linha", + "show-line": "Exibir linha", + "fill-line": "Preencher linha", + "fill-line-opacity": "Opacidade do preenchimento", + "points-settings": "Configurações de pontos", + "show-points": "Exibir pontos", + "points-line-width": "Largura da linha dos pontos", + "points-radius": "Raio dos pontos", + "point-shape": "Forma do ponto", + "point-shape-circle": "Círculo", + "point-shape-cross": "Cruz", + "point-shape-diamond": "Diamante", + "point-shape-square": "Quadrado", + "point-shape-triangle": "Triângulo", + "point-shape-custom": "Função personalizada", + "point-shape-draw-function": "Função de desenho da forma do ponto", + "show-separate-axis": "Exibir eixo separado", + "axis-position-left": "Esquerda", + "axis-position-right": "Direita", + "thresholds": "Limites", + "no-thresholds": "Nenhum limite configurado", + "add-threshold": "Adicionar limite", + "show-values-for-comparison": "Exibir valores históricos para comparação", + "comparison-values-label": "Rótulo dos valores históricos", + "comparison-line-color": "Cor da linha de comparação", + "threshold-settings": "Configurações de limite", + "use-as-threshold": "Usar valor da chave como limite", + "threshold-line-width": "Largura da linha do limite", + "threshold-color": "Cor do limite", + "common-pie-settings": "Configurações comuns do gráfico de pizza", + "radius": "Raio", + "inner-radius": "Raio interno", + "tilt": "Inclinação", + "common-pie-settings-range-error": "O valor deve estar no intervalo de 0 a 1", + "stroke-settings": "Configurações de traço", + "width-pixels": "Largura (pixels)", + "show-labels": "Exibir rótulos", + "animation-settings": "Configurações de animação", + "animated-pie": "Habilitar animação de pizza (experimental)", + "border-settings": "Configurações de borda", + "border-width": "Largura da borda", + "border-color": "Cor da borda", + "legend-settings": "Configurações de legenda", + "display-legend": "Exibir legenda", + "labels-font-color": "Cor da fonte dos rótulos", + "series": "Séries", + "add-series": "Adicionar série", + "series-settings": "Configurações de séries", + "remove-series": "Remover série", + "no-series": "Nenhuma série configurada", + "no-series-error": "Pelo menos uma série deve ser especificada", + "chart-appearance": "Aparência do gráfico", + "vertical-grid-lines": "Linhas de grade verticais", + "horizontal-grid-lines": "Linhas de grade horizontais", + "chart-background": "Plano de fundo do gráfico", + "grid-lines-color": "Cor das linhas de grade", + "border": "Borda", + "axis": "Eixo", + "vertical-axis": "Eixo vertical", + "ticks": "Marcadores", + "horizontal-axis": "Eixo horizontal", + "shape-empty-circle": "Círculo vazio", + "shape-circle": "Círculo", + "shape-rect": "Retângulo", + "shape-round-rect": "Retângulo arredondado", + "shape-triangle": "Triângulo", + "shape-diamond": "Diamante", + "shape-pin": "Pino", + "shape-arrow": "Seta", + "shape-none": "Nenhum", + "line-type-solid": "Sólido", + "line-type-dashed": "Tracejado", + "line-type-dotted": "Pontilhado", + "label-position-top": "Superior", + "label-position-bottom": "Inferior", + "label-position-outside": "Fora", + "label-position-inside": "Dentro", + "fill": "Preenchimento", + "fill-type-none": "Nenhum", + "fill-type-solid": "Sólido", + "fill-type-opacity": "Opacidade", + "fill-type-gradient": "Gradiente", + "background": "Plano de fundo", + "opacity": "Opacidade", + "gradient-stops": "Paradas de gradiente", + "gradient-start": "início", + "gradient-end": "fim", + "animation": { + "animation": "Animação", + "animation-threshold": "Limite de animação", + "animation-duration": "Duração da animação", + "animation-easing": "Suavização da animação", + "animation-delay": "Atraso da animação", + "update-animation-duration": "Duração da animação de atualização", + "update-animation-easing": "Suavização da animação de atualização", + "update-animation-delay": "Atraso da animação de atualização" + }, + "chart-axis": { + "scale": "Escala", + "scale-min": "mín", + "scale-max": "máx", + "scale-auto": "Automático" + }, + "bar": { + "show-border": "Exibir borda", + "border-width": "Largura da borda", + "border-radius": "Raio da borda", + "bar-width": "Largura da barra", + "label": "Rótulo", + "label-hint": "Exibir rótulo acima da barra.", + "series-label-hint": "Exibir rótulo com valor acima da barra.", + "label-background": "Plano de fundo do rótulo" + } + }, + "color": { + "color-settings": "Configurações de cor", + "color-type-constant": "Constante", + "color-type-gradient": "Gradiente", + "color-type-range": "Intervalo", + "color-type-function": "Função", + "color": "Cor", + "value-range": "Intervalo de valores", + "from": "De", + "to": "Até", + "color-function": "Função de cor", + "copy-color-settings-from": "Copiar configurações de cor de", + "copy-from": "Copiar de", + "settings-type": "Tipo de configurações", + "basic-mode": "Básico", + "advanced-mode": "Avançado", + "entity-alias": "Alias de entidade", + "entity-attribute": "Atributo de entidade", + "gradient-color": "Cor do gradiente", + "gradient-color-min": "Cor", + "gradient-start": "Cor inicial do gradiente", + "gradient-start-min": "Início", + "gradient-end": "Cor final do gradiente", + "gradient-end-min": "Fim", + "start-value": "Valor inicial", + "end-value": "Valor final", + "gradient-type": "Tipo de gradiente" + }, + "dashboard-state": { + "dashboard-state-settings": "Configurações de estado do Dashboard", + "dashboard-state": "ID do estado do Dashboard", + "autofill-state-layout": "Preenchimento automático da altura do layout do estado por padrão", + "default-margin": "Margem padrão dos widgets", + "default-background-color": "Cor de fundo padrão", + "sync-parent-state-params": "Sincronizar parâmetros de estado com o Dashboard pai" + }, "date-range-navigator": { + "date-range-picker-settings": "Configurações do seletor de intervalo de datas", + "hide-date-range-picker": "Ocultar seletor de intervalo de datas", + "picker-one-panel": "Seletor de intervalo de datas em painel único", + "picker-auto-confirm": "Confirmação automática do seletor de intervalo de datas", + "picker-show-template": "Exibir modelo no seletor de intervalo de datas", + "first-day-of-week": "Primeiro dia da semana", + "interval-settings": "Configurações de intervalo", + "hide-interval": "Ocultar intervalo", + "initial-interval": "Intervalo inicial", + "interval-hour": "Hora", + "interval-day": "Dia", + "interval-week": "Semana", + "interval-two-weeks": "2 semanas", + "interval-month": "Mês", + "interval-three-months": "3 meses", + "interval-six-months": "6 meses", + "step-settings": "Configurações de passo", + "hide-step-size": "Ocultar tamanho do passo", + "initial-step-size": "Tamanho do passo inicial", + "hide-labels": "Ocultar rótulos", + "use-session-storage": "Usar armazenamento de sessão", "localizationMap": { "Sun": "Dom", "Mon": "Seg", @@ -1865,7 +7547,7 @@ "Feb": "Fev", "Mar": "Mar", "Apr": "Abr", - "May": "Maio", + "May": "Mai", "Jun": "Jun", "Jul": "Jul", "Aug": "Ago", @@ -1884,7 +7566,7 @@ "October": "Outubro", "November": "Novembro", "December": "Dezembro", - "Custom Date Range": "Personalizar intervalo de datas", + "Custom Date Range": "Intervalo de datas personalizado", "Date Range Template": "Modelo de intervalo de datas", "Today": "Hoje", "Yesterday": "Ontem", @@ -1899,77 +7581,1961 @@ "Hour": "Hora", "Day": "Dia", "Week": "Semana", - "2 weeks": "2 semanas", + "2 weeks": "2 Semanas", "Month": "Mês", - "3 months": "3 meses", - "6 months": "6 meses", + "3 months": "3 Meses", + "6 months": "6 Meses", "Custom interval": "Intervalo personalizado", "Interval": "Intervalo", - "Step size": "Tamanho da etapa", - "Ok": "OK" + "Step size": "Tamanho do passo", + "Ok": "Ok" } }, + "doughnut": { + "doughnut-appearance": "Aparência do gráfico de rosca", + "layout": "Layout", + "layout-default": "Padrão", + "layout-with-total": "Com total", + "central-total-value": "Valor total central", + "doughnut-card-style": "Estilo do cartão de rosca" + }, + "entities-hierarchy": { + "hierarchy-data-settings": "Configurações de dados da hierarquia", + "relations-query-function": "Função de consulta de relações do nó", + "has-children-function": "Função de verificação de filhos do nó", + "node-state-settings": "Configurações de estado do nó", + "node-opened-function": "Função padrão de nó aberto", + "node-disabled-function": "Função de nó desabilitado", + "display-settings": "Configurações de exibição", + "node-icon-function": "Função de ícone do nó", + "node-text-function": "Função de texto do nó", + "sort-settings": "Configurações de ordenação", + "nodes-sort-function": "Função de ordenação dos nós" + }, + "edge": { + "display-default-title": "Exibir título padrão" + }, + "gateway": { + "general-settings": "Configurações gerais", + "widget-title": "Título do widget", + "default-archive-file-name": "Nome padrão do arquivo de arquivamento", + "device-type-for-new-gateway": "Tipo de dispositivo para novo gateway", + "messages-settings": "Configurações de mensagens", + "save-config-success-message": "Mensagem de texto sobre configuração do gateway salva com sucesso", + "device-name-exists-message": "Mensagem de texto quando dispositivo com o nome informado já existe", + "gateway-title": "Formulário do gateway", + "read-only": "Somente leitura", + "events-title": "Título do formulário de eventos do gateway", + "events-filter": "Filtro de eventos", + "event-key-contains": "Chave do evento contém...", + "show-connector": "Exibir para o conector", + "connector-state-param-key": "Chave do parâmetro de estado do conector", + "message": "Mensagem", + "level": "Nível", + "created-time": "Hora de criação" + }, + "gauge": { + "default-color": "Cor padrão", + "radial-gauge-settings": "Configurações do medidor radial", + "ticks-settings": "Configurações de marcadores", + "min-value": "Valor mínimo", + "max-value": "Valor máximo", + "min-value-short": "mín", + "max-value-short": "máx", + "start-ticks-angle": "Ângulo inicial dos marcadores", + "ticks-angle": "Ângulo dos marcadores", + "major-ticks": "Marcadores principais", + "major-ticks-count": "Quantidade de marcadores principais", + "major-ticks-color": "Cor dos marcadores principais", + "minor-ticks": "Marcadores secundários", + "minor-ticks-count": "Quantidade de marcadores secundários", + "minor-ticks-color": "Cor dos marcadores secundários", + "tick-numbers-font": "Fonte dos números dos marcadores", + "unit-title-settings": "Configurações do título da unidade", + "show-unit-title": "Título das unidades", + "unit-title": "Título da unidade", + "title-font": "Fonte do texto do título", + "units-settings": "Configurações de unidades", + "units-font": "Fonte do texto das unidades", + "value-box-settings": "Configurações da caixa de valor", + "show-value-box": "Exibir caixa de valor", + "value-box": "Caixa de valor", + "value-int": "Quantidade de dígitos para a parte inteira do valor", + "value-text": "Texto do valor", + "value-text-shadow": "Sombra do texto do valor", + "value-font": "Fonte do texto do valor", + "rect-stroke-color-start": "Cor do traço do retângulo - gradiente inicial", + "rect-stroke-color-end": "Cor do traço do retângulo - gradiente final", + "background-color": "Cor de fundo", + "shadow-color": "Cor da sombra", + "value-box-rect-stroke-color": "Cor do traço do retângulo da caixa de valor", + "value-box-rect-stroke-color-end": "Cor do traço do retângulo da caixa de valor - gradiente final", + "value-box-background-color": "Cor de fundo da caixa de valor", + "value-box-shadow-color": "Cor da sombra da caixa de valor", + "plate-settings": "Configurações do mostrador", + "show-plate-border": "Borda do mostrador", + "plate-color": "Cor do mostrador", + "needle-settings": "Configurações do ponteiro", + "needle-circle-size": "Tamanho do círculo do ponteiro", + "needle-color": "Cor do ponteiro", + "needle-color-start": "Cor do ponteiro - gradiente inicial", + "needle-color-end": "Cor do ponteiro - gradiente final", + "needle-color-shadow-up": "Cor da sombra da metade superior do ponteiro", + "needle-color-shadow-down": "Sombra projetada", + "highlights-settings": "Configurações de destaques", + "highlights-width": "Largura dos destaques", + "highlights": "Destaques", + "highlight-from": "De", + "highlight-to": "Até", + "highlight-color": "Cor", + "no-highlights": "Nenhum destaque configurado", + "add-highlight": "Adicionar destaque", + "animation-settings": "Configurações de animação", + "enable-animation": "Animação", + "animation-duration-rule": "Duração e regra de animação", + "animation-duration": "Duração da animação", + "animation-rule": "Regra de animação", + "animation-linear": "Linear", + "animation-quad": "Quad", + "animation-quint": "Quint", + "animation-cycle": "Cycle", + "animation-bounce": "Bounce", + "animation-elastic": "Elastic", + "animation-dequad": "Dequad", + "animation-dequint": "Dequint", + "animation-decycle": "Decycle", + "animation-debounce": "Debounce", + "animation-delastic": "Delastic", + "linear-gauge-settings": "Configurações do medidor linear", + "bar-stroke": "Traço da barra", + "bar-stroke-width": "Largura do traço da barra", + "bar-stroke-color": "Cor do traço da barra", + "bar-background-color": "Cor de fundo da barra - gradiente inicial", + "bar-background-color-end": "Cor de fundo da barra - gradiente final", + "progress-bar-color": "Cor da barra de progresso", + "progress-bar": "Barra de progresso", + "progress-bar-color-start": "Cor da barra de progresso - gradiente inicial", + "progress-bar-color-end": "Cor da barra de progresso - gradiente final", + "major-ticks-names": "Nomes dos marcadores principais", + "show-stroke-ticks": "Exibir traço dos marcadores", + "major-ticks-font": "Fonte dos marcadores principais", + "border-color": "Cor da borda", + "border-width": "Largura da borda", + "needle-circle": "Círculo do ponteiro", + "needle-circle-color": "Cor do círculo do ponteiro", + "animation-target": "Alvo da animação", + "animation-target-needle": "Ponteiro", + "animation-target-plate": "Mostrador", + "common-settings": "Configurações comuns do medidor", + "gauge-type": "Tipo de medidor", + "gauge-type-arc": "Arco", + "gauge-type-donut": "Rosca", + "gauge-type-horizontal-bar": "Barra horizontal", + "gauge-type-vertical-bar": "Barra vertical", + "donut-start-angle": "Ângulo inicial (graus)", + "bar-settings": "Configurações da barra do medidor", + "relative-bar-width": "Largura relativa da barra", + "neon-glow-brightness": "Brilho do efeito de brilho neon (0-100)", + "neon-glow-brightness-hint": "0 - desabilitar efeito ", + "stripes-thickness": "Espessura das listras", + "stripes-thickness-hint": "0 - sem listras", + "rounded-line-cap": "Tampa de linha arredondada", + "bar-color-settings": "Configurações de cor da barra", + "use-precise-level-color-values": "Usar níveis de cor precisos", + "bar-colors": "Cores da barra, da inferior para a superior", + "color": "Cor", + "no-bar-colors": "Nenhuma cor de barra configurada", + "add-bar-color": "Adicionar cor de barra", + "from": "De", + "to": "Até", + "fixed-level-colors": "Cores da barra usando valores de limite", + "gauge-title-settings": "Configurações do título do medidor", + "show-gauge-title": "Exibir título do medidor", + "gauge-title": "Título do medidor", + "gauge-title-font": "Fonte do título do medidor", + "unit-title-and-timestamp-settings": "Configurações do título de unidades e timestamp", + "show-timestamp": "Timestamp", + "timestamp-format": "Formato do timestamp", + "label-font": "Fonte do rótulo exibido abaixo do valor", + "value-settings": "Configurações de valor", + "show-value": "Exibir texto do valor", + "min-max-settings": "Configurações dos rótulos mínimo/máximo", + "show-min-max": "Exibir valores mínimo e máximo", + "min-max-font": "Fonte dos rótulos mínimo e máximo", + "show-ticks": "Exibir marcadores", + "tick-width": "Largura do marcador", + "tick-color": "Cor do marcador", + "tick-values": "Valores dos marcadores", + "no-tick-values": "Nenhum valor de marcador configurado", + "add-tick-value": "Adicionar valor de marcador", + "gauge-appearance": "Aparência do medidor", + "units-title": "Título das unidades", + "value": "Valor", + "ticks": "Marcadores", + "arrow-and-scale-color": "Cor padrão da seta e da escala", + "scale-settings": "Configurações de escala", + "scale": "Escala", + "scale-color": "Cores da escala", + "compass-appearance": "Aparência da bússola", + "label": "Rótulo", + "labels": "Rótulos", + "label-style": "Estilo do rótulo", + "simple-gauge-type": "Tipo", + "gauge-bar-background": "Plano de fundo da barra do medidor", + "bar-color": "Cor da barra", + "min-and-max-value": "Valor mínimo e máximo", + "min-and-max-label": "Rótulo mínimo e máximo", + "font": "Fonte", + "tick-width-and-color": "Largura e cor do marcador", + "min-max-validation-text": "O valor máximo deve ser maior que o valor mínimo" + }, + "gpio": { + "pin": "Pino", + "label": "Rótulo", + "row": "Linha", + "column": "Coluna", + "color": "Cor", + "panel-settings": "Configurações do painel", + "background-color": "Cor de fundo", + "gpio-switches": "Chaves GPIO", + "no-gpio-switches": "Nenhuma chave GPIO configurada", + "add-gpio-switch": "Adicionar chave GPIO", + "gpio-status-request": "Solicitação de status GPIO", + "method-name": "Nome do método", + "method-body": "Corpo do método", + "gpio-status-change-request": "Solicitação de mudança de status GPIO", + "parse-gpio-status-function": "Função de análise do status gpio", + "gpio-leds": "LEDs GPIO", + "no-gpio-leds": "Nenhum LED GPIO configurado", + "add-gpio-led": "Adicionar LED GPIO" + }, + "html-card": { + "html": "HTML", + "css": "CSS" + }, "input-widgets": { "attribute-not-allowed": "O parâmetro de atributo não pode ser usado neste widget", "blocked-location": "A geolocalização está bloqueada no seu navegador", - "claim-device": "Obter dispositivo", - "claim-failed": "Erro ao obter dispositivo!", + "claim-device": "Reivindicar dispositivo", + "claim-failed": "Falha ao reivindicar o dispositivo!", "claim-not-found": "Dispositivo não encontrado!", - "claim-successful": "O dispositivo foi obtido corretamente!", + "claim-successful": "Dispositivo reivindicado com sucesso!", "date": "Data", "device-name": "Nome do dispositivo", - "device-name-required": "O nome do dispositivo é obrigatório", + "device-name-required": "Nome do dispositivo é obrigatório", "discard-changes": "Descartar alterações", - "entity-attribute-required": "O atributo da entidade é obrigatório", - "entity-coordinate-required": "Os dois campos, latitude e longitude, são obrigatórios", - "entity-timeseries-required": "Os intervalos de tempo de entidade são obrigatórios", + "entity-attribute-required": "Atributo de entidade é obrigatório", + "entity-coordinate-required": "Ambos os campos, latitude e longitude, são obrigatórios", + "entity-timeseries-required": "Série temporal de entidade é obrigatória", "get-location": "Obter localização atual", + "invalid-date": "Data inválida", "latitude": "Latitude", "longitude": "Longitude", + "min-value-error": "Valor mínimo é {{value}}", + "max-value-error": "Valor máximo é {{value}}", "not-allowed-entity": "A entidade selecionada não pode ter atributos compartilhados", "no-attribute-selected": "Nenhum atributo selecionado", "no-datakey-selected": "Nenhuma chave de dados selecionada", - "no-coordinate-specified": "Chave de dados de latitude/longitude não especificada", + "no-coordinate-specified": "Chave de dados para latitude/longitude não especificada", "no-entity-selected": "Nenhuma entidade selecionada", "no-image": "Sem imagem", - "no-support-geolocation": "Seu navegador não é compatível com geolocalização", - "no-support-web-camera": "Nenhuma câmera Web compatível", - "no-timeseries-selected": "Nenhum intervalo de tempo selecionado", - "secret-key": "Chave de segredo", - "secret-key-required": "A chave de segredo é obrigatória", - "switch-attribute-value": "Alternar valor de atributo da entidade", + "no-support-geolocation": "Seu navegador não suporta geolocalização", + "no-support-web-camera": "Seu navegador não suporta câmeras", + "enable-https-use-widget": "Habilite HTTPS para usar este widget", + "no-found-your-camera": "Não foi possível encontrar sua câmera", + "no-permission-camera": "Permissão negada pelo usuário / Este site não tem permissão para usar a câmera", + "no-timeseries-selected": "Nenhuma série temporal selecionada", + "secret-key": "Chave secreta", + "secret-key-required": "Chave secreta é obrigatória", + "switch-attribute-value": "Alternar valor do atributo da entidade", "switch-camera": "Alternar câmera", - "switch-timeseries-value": "Alternar valor de intervalo de tempo da entidade", + "switch-timeseries-value": "Alternar valor da série temporal da entidade", "take-photo": "Tirar foto", "time": "Hora", - "timeseries-not-allowed": "O parâmetro de intervalo de série não pode ser usado neste widget", + "timeseries-not-allowed": "O parâmetro de série temporal não pode ser usado neste widget", "update-failed": "Atualização falhou", "update-successful": "Atualização bem-sucedida", "update-attribute": "Atualizar atributo", - "update-timeseries": "Atualizar intervalos de tempo", - "value": "Valor" + "update-timeseries": "Atualizar série temporal", + "value": "Valor", + "general-settings": "Configurações gerais", + "widget-title": "Título do widget", + "claim-button-label": "Rótulo do botão de reivindicação", + "show-secret-key-field": "Exibir campo de entrada 'Chave secreta'", + "labels-settings": "Configurações de rótulos", + "show-labels": "Exibir rótulos", + "device-name-label": "Rótulo para o campo de entrada do nome do dispositivo", + "secret-key-label": "Rótulo para o campo de entrada da chave secreta", + "messages-settings": "Configurações de mensagens", + "claim-device-success-message": "Mensagem de texto de reivindicação de dispositivo bem-sucedida", + "claim-device-not-found-message": "Mensagem de texto quando o dispositivo não é encontrado", + "claim-device-failed-message": "Mensagem de texto de falha na reivindicação do dispositivo", + "claim-device-name-required-message": "Mensagem de erro 'Nome do dispositivo obrigatório'", + "claim-device-secret-key-required-message": "Mensagem de erro 'Chave secreta obrigatória'", + "show-label": "Exibir rótulo", + "label": "Rótulo", + "required": "Obrigatório", + "required-error-message": "Mensagem de erro 'Obrigatório'", + "show-result-message": "Exibir mensagem de resultado", + "integer-field-settings": "Configurações de campo inteiro", + "min-value": "Valor mínimo", + "max-value": "Valor máximo", + "double-field-settings": "Configurações de campo decimal", + "text-field-settings": "Configurações de campo de texto", + "min-length": "Comprimento mínimo", + "max-length": "Comprimento máximo", + "checkbox-settings": "Configurações de caixa de seleção", + "true-label": "Rótulo marcado", + "false-label": "Rótulo desmarcado", + "image-input-settings": "Configurações de entrada de imagem", + "display-preview": "Exibir visualização", + "display-clear-button": "Exibir botão limpar", + "display-apply-button": "Exibir botão aplicar", + "display-discard-button": "Exibir botão descartar", + "datetime-field-settings": "Configurações de campo de data/hora", + "display-time-input": "Exibir entrada de hora", + "latitude-key-name": "Nome da chave de latitude", + "longitude-key-name": "Nome da chave de longitude", + "show-get-location-button": "Exibir botão 'Obter localização atual'", + "use-high-accuracy": "Usar alta precisão", + "location-fields-settings": "Configurações de campos de localização", + "latitude-label": "Rótulo para latitude", + "longitude-label": "Rótulo para longitude", + "input-fields-alignment": "Alinhamento dos campos de entrada", + "input-fields-alignment-column": "Coluna (padrão)", + "input-fields-alignment-row": "Linha", + "layout": "Layout", + "row-gap": "Espaçamento entre linhas em pixels", + "column-gap": "Espaçamento entre colunas em pixels", + "latitude-field-required": "Campo de latitude obrigatório", + "longitude-field-required": "Campo de longitude obrigatório", + "attribute-settings": "Configurações de atributo", + "widget-mode": "Modo do widget", + "widget-mode-update-attribute": "Atualizar atributo", + "widget-mode-update-timeseries": "Atualizar série temporal", + "attribute-scope": "Escopo do atributo", + "attribute-scope-server": "Atributo do servidor", + "attribute-scope-shared": "Atributo compartilhado", + "value-required": "Valor obrigatório", + "image-settings": "Configurações de saída de imagem", + "image-format": "Formato de imagem", + "image-format-jpeg": "JPEG", + "image-format-png": "PNG", + "image-format-webp": "WEBP", + "image-quality": "Qualidade da imagem", + "max-image-width": "Largura máxima", + "max-image-height": "Altura máxima", + "action-buttons": "Botões de ação", + "show-action-buttons": "Exibir botões de ação", + "update-all-values": "Atualizar todos os valores, não apenas os modificados", + "save-button-label": "Rótulo do botão 'SALVAR'", + "reset-button-label": "Rótulo do botão 'DESFAZER'", + "group-settings": "Configurações de grupo", + "show-group-title": "Exibir título para grupo de campos relacionados a diferentes entidades", + "group-title": "Título do grupo", + "fields-alignment": "Alinhamento dos campos", + "fields-alignment-row": "Linha (padrão)", + "fields-alignment-column": "Coluna", + "fields-in-row": "Número de campos na linha", + "option-value": "Valor (escreva 'null' para criar opção vazia)", + "option-label": "Rótulo", + "hide-input-field": "Ocultar campo de entrada", + "datakey-type": "Tipo de chave de dados", + "datakey-type-server": "Atributo do servidor (padrão)", + "datakey-type-shared": "Atributo compartilhado", + "datakey-type-timeseries": "Série temporal", + "datakey-value-type": "Tipo de valor da chave de dados", + "datakey-value-type-string": "String", + "datakey-value-type-double": "Double", + "datakey-value-type-integer": "Inteiro", + "datakey-value-type-json": "JSON", + "datakey-value-type-boolean-checkbox": "Booleano (Caixa de seleção)", + "datakey-value-type-boolean-switch": "Booleano (Alternância)", + "datakey-value-type-date-time": "Data e Hora", + "datakey-value-type-date": "Data", + "datakey-value-type-time": "Hora", + "datakey-value-type-select": "Seleção", + "datakey-value-type-radio": "Rádio", + "datakey-value-type-color": "Cor", + "value-is-required": "Valor é obrigatório", + "ability-to-edit-attribute": "Capacidade de editar atributo", + "ability-to-edit-attribute-editable": "Editável (padrão)", + "ability-to-edit-attribute-disabled": "Desabilitado", + "ability-to-edit-attribute-readonly": "Somente leitura", + "disable-on-datakey-name": "Desabilitar quando o valor falso de outra chave de dados (especifique o nome da chave de dados)", + "field-appearance": "Aparência do campo", + "appearance-fill": "Preenchido", + "appearance-outline": "Contornado", + "subscript-sizing": "Dimensionamento de subscrito", + "subscript-sizing-fixed": "Fixo", + "subscript-sizing-dynamic": "Dinâmico", + "slide-toggle-settings": "Configurações de alternância deslizante", + "slide-toggle-label-position": "Posição do rótulo da alternância deslizante", + "slide-toggle-label-position-after": "Depois", + "slide-toggle-label-position-before": "Antes", + "select-options": "Opções de seleção", + "no-select-options": "Nenhuma opção de seleção configurada", + "add-select-option": "Adicionar opção de seleção", + "numeric-field-settings": "Configurações de campo numérico", + "step-interval": "Intervalo de passo entre valores", + "error-messages": "Mensagens de erro", + "min-value-error-message": "Mensagem de erro 'Valor mínimo'", + "max-value-error-message": "Mensagem de erro 'Valor máximo'", + "invalid-date-error-message": "Mensagem de erro 'Data inválida'", + "invalid-JSON-error-message": "Mensagem de erro 'JSON inválido'", + "icon-settings": "Configurações de ícone", + "dialog-editor-settings": "Configurações do editor de diálogo", + "use-custom-icon": "Usar ícone personalizado", + "input-cell-icon": "Ícone a exibir antes da célula de entrada", + "value-conversion-settings": "Configurações de conversão de valor", + "get-value-settings": "Configurações de obtenção de valor", + "use-get-value-function": "Usar função getValue", + "get-value-function": "Função getValue", + "set-value-settings": "Configurações de definição de valor", + "use-set-value-function": "Usar função setValue", + "set-value-function": "Função setValue", + "json-invalid": "O valor JSON tem formato inválido", + "title": "Título", + "cancel-button-label": "Rótulo do botão 'Cancelar'", + "radio-button-settings": "Configurações de botão de rádio", + "color": "Cor", + "columns": "Colunas", + "radio-options": "Opções de rádio", + "no-radio-options": "Nenhuma opção de rádio configurada", + "add-radio-option": "Adicionar opção de rádio", + "radio-label-position": "Posição do rótulo", + "radio-label-position-before": "Antes", + "radio-label-position-after": "Depois" + }, + "invalid-qr-code-text": "Texto de entrada inválido para o código QR. A entrada deve ser do tipo string", + "qr-code": { + "use-qr-code-text-function": "Usar função de texto do código QR", + "qr-code-text-pattern": "Padrão de texto do código QR (ex.: '${entityName} | ${keyName} - algum texto.')", + "qr-code-text-pattern-hint": "O padrão de texto do código QR usa o valor da primeira chave encontrada nas entidades no alias de entidade.", + "qr-code-text-pattern-required": "O padrão de texto do código QR é obrigatório.", + "qr-code-text-function": "Função de texto do código QR" + }, + "label-widget": { + "label-pattern": "Padrão", + "label-pattern-hint": "Dica: ex.: 'Texto ${keyName} unidades.' ou ${#<key index>} unidades'", + "label-pattern-required": "O padrão é obrigatório", + "label-position": "Posição (Porcentagem relativa ao fundo)", + "x-pos": "X", + "y-pos": "Y", + "background-color": "Cor de fundo", + "font-settings": "Configurações de fonte", + "background-image": "Imagem do plano de fundo", + "labels": "Rótulos", + "no-labels": "Nenhum rótulo configurado", + "add-label": "Adicionar rótulo" + }, + "navigation": { + "title": "Título", + "navigation-path": "Caminho de navegação", + "filter-type": "Tipo de filtro", + "filter-type-all": "Todos os itens", + "filter-type-include": "Incluir itens", + "filter-type-exclude": "Excluir itens", + "items": "Itens", + "enter-urls-to-filter": "Insira URLs para filtrar..." + }, + "persistent-table": { + "rpc-id": "RPC ID", + "message-type": "Tipo de mensagem", + "method": "Método", + "params": "Parâmetros", + "created-time": "Hora de criação", + "expiration-time": "Hora de expiração", + "retries": "Tentativas", + "status": "Status", + "filter": "Filtro", + "refresh": "Atualizar", + "add": "Adicionar solicitação RPC", + "details": "Detalhes", + "delete": "Excluir", + "delete-request-title": "Excluir solicitação RPC persistente", + "delete-request-text": "Tem certeza de que deseja excluir a solicitação?", + "details-title": "Detalhes RPC ID: ", + "additional-info": "Informações adicionais", + "response": "Resposta", + "any-status": "Qualquer status", + "rpc-status-list": "Lista de status RPC", + "no-request-prompt": "Nenhuma solicitação para exibir", + "send-request": "Enviar solicitação", + "add-title": "Criar solicitação RPC persistente", + "method-error": "O método é obrigatório.", + "timeout-error": "O valor mínimo de tempo limite é 5000 (5 segundos).", + "white-space-error": "Espaço em branco não é permitido.", + "rpc-status": { + "QUEUED": "QUEUED", + "SENT": "SENT", + "DELIVERED": "DELIVERED", + "SUCCESSFUL": "SUCCESSFUL", + "TIMEOUT": "TEMPO LIMITE", + "EXPIRED": "EXPIRED", + "FAILED": "FAILED" + }, + "rpc-search-status-all": "ALL", + "message-types": { + "false": "Bidirecional", + "true": "Unidirecional" + }, + "general-settings": "Configurações gerais", + "enable-filter": "Ativar filtro", + "enable-sticky-header": "Exibir cabeçalho durante a rolagem", + "enable-sticky-action": "Exibir coluna de ações durante a rolagem", + "display-request-details": "Exibir detalhes da solicitação", + "allow-send-request": "Permitir enviar solicitação RPC", + "allow-delete-request": "Permitir excluir solicitação", + "columns-settings": "Configurações de colunas", + "display-columns": "Colunas para exibir", + "column": "Coluna", + "no-columns-found": "Nenhuma coluna encontrada", + "no-columns-matching": "'{{column}}' não encontrado." + }, + "range-chart": { + "chart": "Gráfico", + "data-zoom": "Zoom de dados", + "range-chart-appearance": "Aparência do gráfico de intervalo", + "range-colors": "Cores do intervalo", + "out-of-range-color": "Cor fora do intervalo", + "show-range-thresholds": "Exibir limites do intervalo", + "range-thresholds-settings": "Configurações de limites do intervalo", + "fill-area": "Preencher área", + "fill-area-opacity": "Opacidade do preenchimento da área", + "range-chart-style": "Estilo do gráfico de intervalo" + }, + "knob": { + "behavior": "Comportamento", + "initial-value": "Valor inicial", + "initial-value-hint": "Ação para obter o valor inicial do knob.", + "on-value-change": "Ao alterar o valor", + "on-value-change-hint": "Ação acionada quando o valor do knob é alterado.", + "range": "Intervalo", + "min": "mín", + "max": "máx", + "value": "Valor", + "fallback-initial-value": "Valor inicial de fallback" + }, + "rpc": { + "value-settings": "Configurações de valor", + "initial-value": "Valor inicial", + "retrieve-value-settings": "Configurações de recuperação do valor ligado/desligado", + "retrieve-value-method": "Recuperar valor usando método", + "retrieve-value-method-none": "Não recuperar", + "retrieve-value-method-rpc": "Chamar método RPC de obtenção de valor", + "retrieve-value-method-attribute": "Assinar atributo", + "retrieve-value-method-timeseries": "Assinar série temporal", + "attribute-value-key": "Chave do atributo", + "timeseries-value-key": "Chave da série temporal", + "get-value-method": "Método RPC de obtenção de valor", + "parse-value-function": "Função de análise de valor", + "update-value-settings": "Configurações de atualização de valor", + "set-value-method": "Método RPC de definição de valor", + "convert-value-function": "Função de conversão de valor", + "rpc-settings": "Configurações de RPC", + "request-timeout": "Tempo Limite da requisição RPC (ms)", + "persistent-rpc-settings": "Configurações RPC persistente", + "request-persistent": "Requisição RPC persistente", + "persistent-polling-interval": "Intervalo de polling (ms) para obter resposta do comando RPC persistente", + "common-settings": "Configurações comuns", + "switch-title": "Título do switch", + "show-on-off-labels": "Exibir rótulos ligado/desligado", + "slide-toggle-label": "Rótulo do botão deslizante", + "label-position": "Posição do rótulo", + "label-position-before": "Antes", + "label-position-after": "Depois", + "slider-color": "Cor do slider", + "slider-color-primary": "Primária", + "slider-color-accent": "Destaque", + "slider-color-warn": "Aviso", + "button-style": "Estilo do botão", + "button-raised": "Botão elevado", + "button-primary": "Cor primária", + "button-background-color": "Cor de fundo do botão", + "button-text-color": "Cor do texto do botão", + "widget-title": "Título do widget", + "button-label": "Rótulo do botão", + "device-attribute-scope": "Escopo do atributo do dispositivo", + "server-attribute": "Atributo do servidor", + "shared-attribute": "Atributo compartilhado", + "device-attribute-parameters": "Parâmetros do atributo do dispositivo", + "is-one-way-command": "É comando unidirecional", + "rpc-method": "Método RPC", + "rpc-method-params": "Parâmetros do método RPC", + "show-rpc-error": "Exibir erro de execução do comando RPC", + "led-title": "Título do LED", + "led-color": "Cor do LED", + "check-status-settings": "Configurações de verificação de status", + "perform-rpc-status-check": "Realizar verificação de status do dispositivo via RPC", + "retrieve-led-status-value-method": "Recuperar valor de status do LED usando método", + "led-status-value-attribute": "Atributo do dispositivo contendo o valor de status do LED", + "led-status-value-timeseries": "Série temporal do dispositivo contendo o valor de status do LED", + "check-status-method": "Método RPC de verificação de status do dispositivo", + "parse-led-status-value-function": "Função de análise do valor de status do LED", + "knob-title": "Título do knob" + }, + "maps": { + "map-type": { + "type": "Tipo de mapa", + "map": "Mapa", + "image": "Imagem" + }, + "image": { + "image-source": "Fonte da imagem", + "image-source-image": "Imagem", + "image-source-entity-key": "Chave de entidade", + "source-entity-alias": "Alias de entidade de origem", + "image-url-key": "Chave de URL da imagem", + "image-url-key-required": "A chave de URL da imagem é obrigatória" + }, + "control": { + "map-controls": "Controles do mapa", + "position": "Posição", + "position-topleft": "Superior esquerdo", + "position-topright": "Superior direito", + "position-bottomleft": "Inferior esquerdo", + "position-bottomright": "Inferior direito", + "zoom-actions": "Ações de zoom", + "zoom-scroll": "Rolagem", + "zoom-double-click": "Duplo clique", + "zoom-control-buttons": "Botões de controle", + "scale": "Escala", + "scale-metric": "Métrico", + "scale-imperial": "Imperial", + "switch-to-drag-mode-using-button": "Alternar para modo arrastar usando botão" + }, + "timeline": { + "control-panel": "Painel de controle da linha do tempo", + "time-step": "Passo de tempo", + "speed-options": "Opções de velocidade", + "timestamp": "Timestamp", + "snap-to-real-location": "Ajustar à localização real", + "location-snap-filter-function": "Função de filtro de ajuste de localização", + "no-trips-data-available": "Nenhum dado de viagem disponível" + }, + "map-action": { + "map-action-buttons": "Botões de ação do mapa", + "label": "Rótulo", + "icon": "Ícone", + "color": "Cor", + "action": "Ação", + "add-button": "Adicionar botão", + "no-action-buttons-configured": "Nenhum botão de ação configurado", + "remove-action-button": "Remover botão de ação", + "map-action-button": "Botão de ação do mapa", + "button-requires": "O botão requer rótulo ou ícone" + }, + "common": { + "common-map-settings": "Configurações comuns do mapa", + "fit-map-bounds": "Ajustar limites do mapa para cobrir todos os marcadores", + "default-map-center-position": "Posição central padrão do mapa", + "default-map-zoom-level": "Nível de zoom padrão do mapa", + "entities-limit": "Limite de entidades a carregar" + }, + "layer": { + "label": "Rótulo", + "layer": "Camada", + "layers": "Camadas", + "map-layers": "Camadas do mapa", + "add-layer": "Adicionar camada", + "layer-settings": "Configurações da camada", + "remove-layer": "Remover camada", + "no-layers": "Nenhuma camada configurada", + "roadmap": "Mapa de ruas", + "satellite": "Satélite", + "hybrid": "Híbrido", + "reference": { + "reference-layer": "Camada de referência", + "no-layer": "Sem camada", + "openstreetmap-hybrid": "OpenStreetMap Hybrid", + "world-edition-hybrid": "World Edition Hybrid", + "enhanced-contrast-hybrid": "Enhanced Contrast Hybrid" + }, + "provider": { + "provider": "Provedor", + "openstreet": { + "title": "OpenStreet", + "mapnik": "Mapnik", + "hot": "HOT", + "esri-street": "WorldStreetMap", + "esri-topo": "WorldTopoMap", + "esri-imagery": "WorldImagery", + "cartodb-positron": "Positron", + "cartodb-dark-matter": "DarkMatter" + }, + "google": { + "title": "Google", + "roadmap": "Mapa de ruas", + "satellite": "Satélite", + "hybrid": "Híbrido", + "terrain": "Terreno" + }, + "here": { + "title": "HERE", + "normal-day": "Dia normal", + "normal-night": "Noite normal", + "hybrid-day": "Dia híbrido", + "terrain-day": "Dia de terreno" + }, + "tencent": { + "title": "Tencent", + "normal": "Normal", + "satellite": "Satélite", + "terrain": "Terreno" + }, + "custom": { + "title": "Personalizado", + "tile-url": "URL de tile" + } + }, + "credentials": { + "credentials": "Credenciais", + "api-key": "Chave de API" + } + }, + "overlays": { + "overlays": "Sobreposições", + "overlays-hint": "Configure fontes de dados, aparência, comportamento, opções de edição e agrupamento para entidades do mapa", + "trips": "Viagens", + "markers": "Marcadores", + "polygons": "Polígonos", + "circles": "Círculos" + }, + "data-layer": { + "source": "Fonte", + "filter": "Filtro", + "additional-data-keys": "Chaves de dados adicionais", + "additional-datasources": "Fontes de dados adicionais", + "additional-datasources-hint": "Fonte de dados para acessar atributos ou telemetria de entidades não exibidas no mapa, utilizável em funções de sobreposição do mapa.", + "more-datasources": "Mais fontes de dados", + "data-keys": "Chaves de dados", + "add-datasource": "Adicionar fonte de dados", + "no-datasources": "Nenhuma fonte de dados configurada", + "remove-datasource": "Remover fonte de dados", + "behavior": "Comportamento", + "on-click": "Ao clicar", + "on-click-hint": "Ação invocada quando o usuário clica no item do mapa.", + "groups": "Grupos", + "groups-hint": "Lista de nomes de grupos atribuídos à sobreposição, usada para alternar sua visibilidade no mapa.", + "color": "Cor", + "color-settings": "Configurações de cor", + "color-type-constant": "Constante", + "color-type-range": "Intervalo", + "color-type-function": "Função", + "color-range-source-key": "Chave de origem do intervalo de cores", + "color-range-source-key-required": "A chave de origem do intervalo de cores é obrigatória", + "color-range": "Intervalo de cores", + "color-function": "Função de cor", + "label": "Rótulo", + "tooltip": "Tooltip", + "pattern-type-pattern": "Padrão", + "pattern-type-function": "Função", + "label-pattern": "Rótulo (exemplos de padrão: '${entityName}', '${entityName}: (Texto ${keyName} unidades.)' )", + "label-function": "Função de rótulo", + "tooltip-pattern": "Tooltip (ex.: 'Texto ${keyName} unidades.' ou Texto do link)", + "tooltip-function": "Função de tooltip", + "tooltip-trigger": "Acionador do tooltip", + "tooltip-trigger-click": "Exibir tooltip ao clicar", + "tooltip-trigger-hover": "Exibir tooltip ao passar o mouse", + "auto-close-tooltips": "Fechar tooltips automaticamente", + "tooltip-offset": "Deslocamento do tooltip", + "tooltip-offset-horizontal": "Horizontal", + "tooltip-offset-vertical": "Vertical", + "tooltip-tag-actions": "Ações de tag", + "add-tooltip-tag-action": "Adicionar ação de tag", + "edit-tooltip-tag-action": "Editar ação de tag", + "remove-tooltip-tag-action": "Remover ação de tag", + "action-add": "Adicionar", + "action-edit": "Editar", + "action-move": "Mover", + "action-remove": "Remover", + "edit-instruments": "Instrumentos", + "persist-location-attribute-scope": "Escopo do atributo para persistir localização", + "enable-snapping": "Ativar ajuste a outros vértices para desenho preciso", + "enable-snapping-hint": "Alinha automaticamente novos pontos com formas existentes para facilitar e tornar o desenho mais preciso.", + "drag-drop-mode": "Modo arrastar e soltar", + "trip": { + "no-trips": "Nenhuma viagem configurada", + "add-trip": "Adicionar viagem", + "trip-configuration": "Configuração de viagem", + "remove-trip": "Remover viagem" + }, + "marker": { + "marker": "Marcador", + "latitude-key": "Chave de latitude", + "longitude-key": "Chave de longitude", + "x-pos-key": "Chave de posição X", + "y-pos-key": "Chave de posição Y", + "latitude-key-required": "Chave de latitude obrigatória", + "longitude-key-required": "Chave de longitude obrigatória", + "x-pos-key-required": "Chave de posição X obrigatória", + "y-pos-key-required": "Chave de posição Y obrigatória", + "no-markers": "Nenhum marcador configurado", + "add-marker": "Adicionar marcador", + "marker-configuration": "Configuração de marcador", + "remove-marker": "Remover marcador", + "marker-type": "Tipo de marcador", + "marker-type-shape": "Forma", + "marker-type-icon": "Ícone", + "marker-type-image": "Imagem", + "shape": "Forma", + "icon": "Ícone", + "image": "Imagem", + "marker-shapes": "Formas de marcador", + "marker-icon": "Ícone do marcador", + "marker-appearance": "Aparência do marcador", + "marker-image": "Imagem do marcador", + "marker-image-type-image": "Imagem", + "marker-image-type-function": "Função", + "custom-marker-image-size": "Tamanho personalizado da imagem do marcador", + "marker-image-function": "Função de imagem do marcador", + "marker-images": "Imagens do marcador", + "marker-offset": "Deslocamento do marcador", + "offset-horizontal": "Horizontal", + "offset-vertical": "Vertical", + "rotate-marker": "Girar marcador", + "offset-angle": "Ângulo de deslocamento", + "position-conversion": "Conversão de posição", + "position-conversion-function": "Função de conversão de posição, deve retornar coordenadas x,y como double de 0 a 1 cada", + "clustering": { + "use-map-markers-clustering": "Usar agrupamento de marcadores do mapa", + "zoom-on-cluster-click": "Aplicar zoom ao clicar em um cluster", + "max-zoom": "O nível máximo de zoom em que um marcador pode fazer parte de um cluster (0 - 18)", + "max-radius": "Raio máximo que um cluster cobrirá", + "zoom-animation": "Animação nos marcadores ao aplicar zoom", + "bounds-on-cluster-mouse-over": "Limites dos marcadores ao passar o mouse sobre um cluster", + "spiderfy-max-zoom-level": "Spiderfy no nível máximo de zoom (para ver todos os marcadores do cluster)", + "load-optimization": "Otimização de carregamento", + "chunked-load": "Usar blocos para adicionar marcadores de forma que a página não congele", + "lazy-load": "Usar carregamento lazy para adicionar marcadores", + "use-cluster-marker-color-function": "Usar função de cor dos marcadores do cluster", + "marker-color-function": "Função de cor do marcador" + }, + "edit": "Editar marcador", + "remove-marker-for": "Remover marcador para '{{entityName}}'", + "place-marker": "Posicionar marcador", + "place-marker-hint": "Clique para posicionar o marcador", + "place-marker-hint-with-entity": "Clique para posicionar a entidade '{{entityName}}'" + }, + "path": { + "path": "Caminho", + "path-decorator": "Decorador de caminho", + "decorator-symbol": "Símbolo do decorador", + "decorator-symbol-arrow-head": "Seta", + "decorator-symbol-dash": "Traço", + "decorator-arrangement": "Disposição do decorador", + "decorator-offset": "Início", + "decorator-end-offset": "Fim", + "decorator-repeat": "Repetir" + }, + "points": { + "points": "Pontos", + "point-tooltip": "Tooltip do ponto" + }, + "shape": { + "fill": "Preenchimento", + "fill-type-color": "Cor", + "fill-type-stripe": "Listras", + "fill-type-image": "Imagem", + "color": "Cor", + "stripe": "Listras", + "image": "Imagem", + "stroke": "Contorno", + "fill-image": "Imagem de preenchimento", + "fill-image-type-image": "Imagem", + "fill-image-type-function": "Função", + "preserve-aspect-ratio": "Preservar proporção", + "opacity": "Opacidade", + "angle": "Ângulo de rotação", + "scale": "Escala", + "fill-image-function": "Função de imagem de preenchimento da forma", + "fill-images": "Imagens de preenchimento da forma", + "stripe-pattern": "Padrão de listras", + "first-stripe": "Primeira listra", + "second-stripe": "Segunda listra" + }, + "polygon": { + "polygon-key": "Chave do polígono", + "polygon-key-required": "Chave do polígono obrigatória", + "no-polygons": "Nenhum polígono configurado", + "add-polygon": "Adicionar polígono", + "polygon-configuration": "Configuração de polígono", + "remove-polygon": "Remover polígono", + "edit": "Editar polígono", + "remove-polygon-for": "Remover polígono para '{{entityName}}'", + "cut": "Recortar área do polígono", + "rotate": "Girar polígono", + "draw-rectangle": "Desenhar retângulo", + "draw-polygon": "Desenhar polígono", + "polygon-place-first-point-cut-hint": "Clique para posicionar o primeiro ponto", + "continue-polygon-cut-hint": "Clique para continuar desenhando", + "finish-polygon-cut-hint": "Clique no primeiro marcador para concluir e salvar", + "polygon-place-first-point-hint": "Polígono: clique para posicionar o primeiro ponto", + "polygon-place-first-point-hint-with-entity": "Polígono para '{{entityName}}': clique para posicionar o primeiro ponto", + "continue-polygon-hint": "Polígono: clique para continuar desenhando", + "continue-polygon-hint-with-entity": "Polígono para '{{entityName}}': clique para continuar desenhando", + "finish-polygon-hint": "Polígono: clique no primeiro marcador para concluir o desenho", + "finish-polygon-hint-with-entity": "Polígono para '{{entityName}}': clique no primeiro marcador para concluir e salvar", + "rectangle-place-first-point-hint": "Retângulo: clique para posicionar o primeiro ponto", + "rectangle-place-first-point-hint-with-entity": "Retângulo para '{{entityName}}': clique para posicionar o primeiro ponto", + "finish-rectangle-hint": "Retângulo: clique para concluir o desenho", + "finish-rectangle-hint-with-entity": "Retângulo para '{{entityName}}': clique para concluir e salvar" + }, + "circle": { + "circle-key": "Chave do círculo", + "circle-key-required": "Chave do círculo obrigatória", + "no-circles": "Nenhum círculo configurado", + "add-circle": "Adicionar círculo", + "circle-configuration": "Configuração de círculo", + "remove-circle": "Remover círculo", + "edit": "Editar círculo", + "remove-circle-for": "Remover círculo para '{{entityName}}'", + "draw-circle": "Desenhar círculo", + "place-circle-center-hint-with-entity": "Círculo para '{{entityName}}': clique para posicionar o centro do círculo", + "place-circle-center-hint": "Círculo: clique para posicionar o centro do círculo", + "finish-circle-hint-with-entity": "Círculo para '{{entityName}}': clique para concluir e salvar o círculo", + "finish-circle-hint": "Círculo: clique para concluir o desenho" + }, + "select-entity": "Selecionar entidade", + "select-entity-hint": "Dica: após a seleção, clique no mapa para definir a posição" + }, + "select-entity": "Selecionar entidade", + "select-entity-hint": "Dica: após a seleção, clique no mapa para definir a posição", + "tooltips": { + "placeMarker": "Clique para posicionar a entidade '{{entityName}}'", + "firstVertex": "Polígono para '{{entityName}}': clique para posicionar o primeiro ponto", + "firstVertex-cut": "Clique para posicionar o primeiro ponto", + "continueLine": "Polígono para '{{entityName}}': clique para continuar desenhando", + "continueLine-cut": "Clique para continuar desenhando", + "finishLine": "Clique em qualquer marcador existente para concluir", + "finishPoly": "Polígono para '{{entityName}}': clique no primeiro marcador para concluir e salvar", + "finishPoly-cut": "Clique no primeiro marcador para concluir e salvar", + "finishRect": "Polígono para '{{entityName}}': clique para concluir e salvar", + "startCircle": "Círculo para '{{entityName}}': clique para posicionar o centro do círculo", + "finishCircle": "Círculo para '{{entityName}}': clique para concluir o círculo", + "placeCircleMarker": "Clique para posicionar o marcador de círculo" + }, + "actions": { + "finish": "Concluir", + "cancel": "Cancelar", + "removeLastVertex": "Remover último ponto" + }, + "buttonTitles": { + "drawMarkerButton": "Posicionar entidade", + "drawPolyButton": "Criar polígono", + "drawLineButton": "Criar polilinha", + "drawCircleButton": "Criar círculo", + "drawRectButton": "Criar retângulo", + "editButton": "Modo de edição", + "dragButton": "Modo arrastar e soltar", + "cutButton": "Recortar área do polígono", + "deleteButton": "Remover", + "drawCircleMarkerButton": "Criar marcador de círculo", + "rotateButton": "Girar polígono" + }, + "map-provider-settings": "Configurações do provedor de mapa", + "map-provider": "Provedor de mapa", + "map-provider-google": "Google Maps", + "map-provider-openstreet": "OpenStreet Maps", + "map-provider-here": "HERE Maps", + "map-provider-image": "Mapa de imagem", + "map-provider-tencent": "Tencent Maps", + "openstreet-provider": "Provedor de mapa OpenStreet", + "openstreet-provider-mapnik": "OpenStreetMap.Mapnik (Padrão)", + "openstreet-provider-hot": "OpenStreetMap.HOT", + "openstreet-provider-esri-street": "Esri.WorldStreetMap", + "openstreet-provider-esri-topo": "Esri.WorldTopoMap", + "openstreet-provider-esri-imagery": "Esri.WorldImagery", + "openstreet-provider-cartodb-positron": "CartoDB.Positron", + "openstreet-provider-cartodb-dark-matter": "CartoDB.DarkMatter", + "use-custom-provider": "Usar provedor personalizado", + "custom-provider-tile-url": "URL de tile do provedor personalizado", + "google-maps-api-key": "Chave de API do Google Maps", + "default-map-type": "Tipo de mapa padrão", + "google-map-type-roadmap": "Mapa de ruas", + "google-map-type-satelite": "Satélite", + "google-map-type-hybrid": "Híbrido", + "google-map-type-terrain": "Terreno", + "map-layer": "Camada do mapa", + "here-map-normal-day": "HERE.normalDay (Padrão)", + "here-map-normal-night": "HERE.normalNight", + "here-map-hybrid-day": "HERE.hybridDay", + "here-map-terrain-day": "HERE.terrainDay", + "credentials": "Credenciais", + "here-app-id": "ID do app HERE", + "here-app-code": "Código do app HERE", + "here-api-key": "Chave de API HERE", + "here-use-new-version-api-3": "Usar versão 3 da API", + "tencent-maps-api-key": "Chave de API do Tencent Maps", + "tencent-map-type-roadmap": "Mapa de ruas", + "tencent-map-type-satelite": "Satélite", + "tencent-map-type-hybrid": "Híbrido", + "image-map-background": "Fundo do mapa de imagem", + "image-map-background-from-entity-attribute": "Obter fundo do mapa de imagem do atributo de entidade", + "image-url-source-entity-alias": "Alias de entidade de origem da URL da imagem", + "image-url-source-entity-attribute": "Atributo de entidade de origem da URL da imagem", + "common-map-settings": "Configurações comuns do mapa", + "x-pos-key-name": "Nome da chave de posição X", + "y-pos-key-name": "Nome da chave de posição Y", + "latitude-key-name": "Nome da chave de latitude", + "longitude-key-name": "Nome da chave de longitude", + "default-map-zoom-level": "Nível de zoom padrão do mapa (0 - 20)", + "default-map-center-position": "Posição central padrão do mapa (0,0)", + "disable-scroll-zooming": "Desativar zoom por rolagem", + "disable-double-click-zooming": "Desativar zoom por duplo clique", + "disable-zoom-control-buttons": "Desativar botões de controle de zoom", + "fit-map-bounds": "Ajustar limites do mapa para cobrir todos os marcadores", + "use-default-map-center-position": "Usar posição central padrão do mapa", + "entities-limit": "Limite de entidades a carregar", + "markers-settings": "Configurações de marcadores", + "marker-offset-x": "Deslocamento X do marcador relativo à posição multiplicado pela largura do marcador", + "marker-offset-y": "Deslocamento Y do marcador relativo à posição multiplicado pela altura do marcador", + "position-function": "Função de conversão de posição, deve retornar coordenadas x,y como double de 0 a 1 cada", + "draggable-marker": "Marcador arrastável", + "label": "Rótulo", + "show-label": "Exibir rótulo", + "use-label-function": "Usar função de rótulo", + "label-pattern": "Rótulo (exemplos de padrão: '${entityName}', '${entityName}: (Texto ${keyName} unidades.)' )", + "label-function": "Função de rótulo", + "tooltip": "Tooltip", + "show-tooltip": "Exibir tooltip", + "show-tooltip-action": "Ação para exibir o tooltip", + "show-tooltip-action-click": "Exibir tooltip ao clicar (Padrão)", + "show-tooltip-action-hover": "Exibir tooltip ao passar o mouse", + "auto-close-tooltips": "Fechar tooltips automaticamente", + "use-tooltip-function": "Usar função de tooltip", + "tooltip-pattern": "Tooltip (ex.: 'Texto ${keyName} unidades.' ou Texto do link')", + "tooltip-function": "Função de tooltip", + "tooltip-offset-x": "Deslocamento X do tooltip relativo à âncora do marcador multiplicado pela largura do marcador", + "tooltip-offset-y": "Deslocamento Y do tooltip relativo à âncora do marcador multiplicado pela altura do marcador", + "color": "Cor", + "use-color-function": "Usar função de cor", + "color-function": "Função de cor", + "marker-image": "Imagem do marcador", + "use-marker-image-function": "Usar função de imagem do marcador", + "custom-marker-image": "Imagem personalizada do marcador", + "custom-marker-image-size": "Tamanho da imagem personalizada do marcador (px)", + "marker-image-function": "Função de imagem do marcador", + "marker-images": "Imagens do marcador", + "polygon-settings": "Configurações de polígono", + "show-polygon": "Exibir polígono", + "polygon-key-name": "Nome da chave do polígono", + "enable-polygon-edit": "Ativar edição de polígono", + "polygon-label": "Rótulo do polígono", + "show-polygon-label": "Exibir rótulo do polígono", + "use-polygon-label-function": "Usar função de rótulo do polígono", + "polygon-label-pattern": "Rótulo do polígono (exemplos de padrão: '${entityName}', '${entityName}: (Texto ${keyName} unidades.)' )", + "polygon-label-function": "Função de rótulo do polígono", + "polygon-tooltip": "Tooltip do polígono", + "show-polygon-tooltip": "Exibir tooltip do polígono", + "auto-close-polygon-tooltips": "Fechar tooltips do polígono automaticamente", + "use-polygon-tooltip-function": "Usar função de tooltip do polígono", + "polygon-tooltip-pattern": "Tooltip (ex.: 'Texto ${keyName} unidades.' ou Texto do link')", + "polygon-tooltip-function": "Função de tooltip do polígono", + "polygon-color": "Cor do polígono", + "polygon-opacity": "Opacidade do polígono", + "use-polygon-color-function": "Usar função de cor do polígono", + "polygon-color-function": "Função de cor do polígono", + "polygon-stroke": "Contorno do polígono", + "stroke-color": "Cor do contorno", + "stroke-opacity": "Opacidade do contorno", + "stroke-weight": "Espessura do contorno", + "use-polygon-stroke-color-function": "Usar função de cor do contorno do polígono", + "polygon-stroke-color-function": "Função de cor do contorno do polígono", + "circle-settings": "Configurações de círculo", + "show-circle": "Exibir círculo", + "circle-key-name": "Nome da chave do círculo", + "enable-circle-edit": "Ativar edição de círculo", + "circle-label": "Rótulo do círculo", + "show-circle-label": "Exibir rótulo do círculo", + "use-circle-label-function": "Usar função de rótulo do círculo", + "circle-label-pattern": "Rótulo do círculo (exemplos de padrão: '${entityName}', '${entityName}: (Texto ${keyName} unidades.)' )", + "circle-label-function": "Função de rótulo do círculo", + "circle-tooltip": "Tooltip do círculo", + "show-circle-tooltip": "Exibir tooltip do círculo", + "auto-close-circle-tooltips": "Fechar tooltips do círculo automaticamente", + "use-circle-tooltip-function": "Usar função de tooltip do círculo", + "circle-tooltip-pattern": "Tooltip (ex.: 'Texto ${keyName} unidades.' ou Texto do link')", + "circle-tooltip-function": "Função de tooltip do círculo", + "circle-fill-color": "Cor de preenchimento do círculo", + "circle-fill-color-opacity": "Opacidade da cor de preenchimento do círculo", + "use-circle-fill-color-function": "Usar função de cor de preenchimento do círculo", + "circle-fill-color-function": "Função de cor de preenchimento do círculo", + "circle-stroke": "Contorno do círculo", + "use-circle-stroke-color-function": "Usar função de cor do contorno do círculo", + "circle-stroke-color-function": "Função de cor do contorno do círculo", + "markers-clustering-settings": "Configurações de agrupamento de marcadores", + "use-map-markers-clustering": "Usar agrupamento de marcadores do mapa", + "zoom-on-cluster-click": "Aplicar zoom ao clicar em um cluster", + "max-cluster-zoom": "O nível máximo de zoom em que um marcador pode fazer parte de um cluster (0 - 18)", + "max-cluster-radius-pixels": "Raio máximo que um cluster cobrirá em pixels", + "cluster-zoom-animation": "Exibir animação nos marcadores ao aplicar zoom", + "show-markers-bounds-on-cluster-mouse-over": "Exibir os limites dos marcadores ao passar o mouse sobre um cluster", + "spiderfy-max-zoom-level": "Spiderfy no nível máximo de zoom (para ver todos os marcadores do cluster)", + "load-optimization": "Otimização de carregamento", + "cluster-chunked-loading": "Usar blocos para adicionar marcadores de forma que a página não congele", + "cluster-markers-lazy-load": "Usar carregamento lazy para adicionar marcadores", + "editor-settings": "Configurações do editor", + "enable-snapping": "Ativar ajuste a outros vértices para desenho preciso", + "init-draggable-mode": "Inicializar o mapa em modo arrastável", + "hide-all-edit-buttons": "Ocultar todos os botões de controle de edição", + "hide-draw-buttons": "Ocultar botões de desenho", + "hide-edit-buttons": "Ocultar botões de edição", + "hide-remove-button": "Ocultar botão de remoção", + "route-map-settings": "Configurações do mapa de rotas", + "trip-animation-settings": "Configurações de animação de viagem", + "normalization-step": "Passo de normalização de dados (ms)", + "tooltip-background-color": "Cor de fundo do tooltip", + "tooltip-font-color": "Cor da fonte do tooltip", + "tooltip-opacity": "Opacidade do tooltip (0-1)", + "auto-close-tooltip": "Fechar tooltip automaticamente", + "rotation-angle": "Definir ângulo de rotação adicional para o marcador (graus)", + "path-settings": "Configurações de caminho", + "path-color": "Cor do caminho", + "use-path-color-function": "Usar função de cor do caminho", + "path-color-function": "Função de cor do caminho", + "path-decorator": "Decorador de caminho", + "use-path-decorator": "Usar decorador de caminho", + "decorator-symbol": "Símbolo do decorador", + "decorator-symbol-arrow-head": "Seta", + "decorator-symbol-dash": "Traço", + "decorator-symbol-size": "Tamanho do símbolo do decorador (px)", + "use-path-decorator-custom-color": "Usar cor personalizada do decorador de caminho", + "decorator-custom-color": "Cor personalizada do decorador", + "decorator-offset": "Deslocamento do decorador", + "end-decorator-offset": "Deslocamento final do decorador", + "decorator-repeat": "Repetição do decorador", + "points-settings": "Configurações de pontos", + "show-points": "Exibir pontos", + "point-color": "Cor do ponto", + "point-size": "Tamanho do ponto (px)", + "use-point-color-function": "Usar função de cor do ponto", + "point-color-function": "Função de cor do ponto", + "use-point-as-anchor": "Usar ponto como âncora", + "point-as-anchor-function": "Função de ponto como âncora", + "independent-point-tooltip": "Tooltip de ponto independente", + "clustering-markers": "Agrupamento de marcadores", + "use-icon-create-function": "Usar função de cor dos marcadores", + "marker-color-function": "Função de cor do marcador" + }, + "markdown": { + "use-markdown-text-function": "Usar função de valor Markdown/HTML", + "markdown-text-function": "Função de valor Markdown/HTML", + "markdown-text-pattern": "Padrão Markdown/HTML (markdown ou HTML com variáveis, ex.: '${entityName} ou ${keyName} - algum texto.')", + "apply-default-markdown-style": "Aplicar estilo Markdown padrão", + "markdown-css": "CSS Markdown/HTML" + }, + "simple-card": { + "label": "Rótulo", + "label-position": "Posição do rótulo", + "label-position-left": "Esquerda", + "label-position-top": "Superior" + }, + "single-switch": { + "behavior": "Comportamento", + "layout": "Layout", + "layout-right": "Direita", + "layout-left": "Esquerda", + "layout-centered": "Centralizado", + "auto-scale": "Escala automática", + "label": "Rótulo", + "icon": "Ícone", + "switch-color": "Cor do switch", + "on": "On", + "off": "Off", + "disabled": "Desabilitado", + "tumbler-color": "Cor do botão", + "on-label": "Rótulo ligado", + "off-label": "Rótulo desligado", + "switch": "Switch" + }, + "slider": { + "behavior": "Comportamento", + "initial-value": "Valor inicial", + "initial-value-hint": "Ação para obter o valor inicial do slider.", + "on-value-change": "Ao alterar o valor", + "on-value-change-hint": "Ação acionada quando o valor do slider é alterado.", + "layout": "Layout", + "layout-default": "Padrão", + "layout-extended": "Estendido", + "layout-simplified": "Simplificado", + "auto-scale": "Escala automática", + "icon": "Ícone", + "value": "Valor", + "range": "Intervalo", + "min": "mín", + "max": "máx", + "range-ticks": "Marcações do intervalo", + "tick-marks": "Marcas de graduação", + "colors": "Cores", + "main": "Principal", + "background": "Plano de fundo", + "left-icon": "Ícone esquerdo", + "right-icon": "Ícone direito", + "slider": "Slider" + }, + "value-card": { + "layout": "Layout", + "layout-square": "Quadrado", + "layout-vertical": "Vertical", + "layout-centered": "Centralizado", + "layout-simplified": "Simplificado", + "layout-horizontal": "Horizontal", + "layout-horizontal-reversed": "Horizontal invertido", + "label": "Rótulo", + "icon": "Ícone", + "value": "Valor", + "date": "Data", + "value-card-style": "Estilo do cartão de valor", + "auto-scale": "Escala automática" + }, + "label-card": { + "auto-scale": "Escala automática", + "label": "Rótulo", + "icon": "Ícone", + "label-card-style": "Estilo do cartão de rótulo" + }, + "label-value-card": { + "value": "Valor", + "label-value-card-style": "Estilo do cartão de rótulo e valor" + }, + "liquid-level-card": { + "layout-simple": "Simples", + "layout-percentage": "Porcentagem", + "layout-absolute": "Absoluto", + "layout": "Layout", + "background-overlay": "Sobreposição de fundo do valor", + "total-volume": "Volume total", + "total-volume-units": "Unidades de volume total", + "tank": "Tanque", + "shape": "Forma", + "datasource-units": "Unidades da fonte", + "widget-units": "Unidades do widget", + "decimals": "Casas decimais", + "liquid": "Líquido", + "liquid-color": "Cor do líquido", + "value": "Valor", + "value-font": "Fonte do valor", + "level": "Nível", + "last-update": "Última atualização", + "shape-by-attribute": "Definir forma do tanque por nome de atributo", + "tooltip-background": "Cor de fundo", + "background-blur": "Desfoque de fundo", + "tank-color": "Cor do tanque", + "static": "Estático", + "see-examples": "Ver exemplos", + "attribute": "Atributo", + "shape-type": "Tipo", + "v-oval": "Oval vertical", + "v-cylinder": "Cilindro vertical", + "v-capsule": "Cápsula vertical", + "rectangle": "Retângulo", + "h-oval": "Oval horizontal", + "h-ellipse": "Elipse horizontal", + "h-dish-ends": "Extremidades de prato horizontal", + "h-cylinder": "Cilindro horizontal", + "h-capsule": "Cápsula horizontal", + "h-elliptical_2_1": "Elíptico horizontal 2:1", + "icon": "Ícone do card", + "title": "Título do card", + "units": "Unidades", + "color-and-font": "Cor e fonte", + "shape-attribute-name": "Nome do atributo", + "total-volume-required": "O volume total é obrigatório.", + "attribute-name-required": "O nome do atributo é obrigatório.", + "attribute-key-not-set": "Chave do atributo '{{attributeName}}' não definida", + "attribute-key-invalid": "Chave do atributo '{{attributeName}}' é inválida" + }, + "aggregated-value-card": { + "subtitle": "Subtítulo", + "chart": "Gráfico", + "values": "Valores", + "value-appearance": "Aparência do valor", + "position": "Posição", + "position-center": "Centro", + "position-right-top": "Direito superior", + "position-right-bottom": "Direito inferior", + "position-left-top": "Esquerdo superior", + "position-left-bottom": "Esquerdo inferior", + "font": "Fonte", + "color": "Cor", + "arrow": "Seta", + "display-up-down-arrow": "Exibir seta para cima/baixo", + "add-value": "Adicionar valor", + "remove-value": "Remover valor", + "no-values": "Nenhum valor configurado", + "aggregation": "Agregação", + "aggregated-value-card-style": "Estilo do cartão de valor agregado", + "auto-scale": "Escala automática" + }, + "value-chart-card": { + "layout": "Layout", + "layout-left": "Esquerda", + "layout-right": "Direita", + "auto-scale": "Escala automática", + "icon": "Ícone", + "value": "Valor", + "chart": "Gráfico", + "value-chart-card-style": "Estilo do cartão de gráfico de valor" + }, + "progress-bar": { + "layout": "Layout", + "layout-default": "Padrão", + "layout-simplified": "Simplificado", + "auto-scale": "Escala automática", + "icon": "Ícone", + "value": "Valor", + "range": "Intervalo", + "min": "mín", + "max": "máx", + "range-ticks": "Marcações do intervalo", + "bar": "Barra", + "bar-color": "Cor da barra", + "bar-background": "Fundo da barra", + "progress-bar-card-style": "Estilo do cartão de barra de progresso" + }, + "notification": { + "max-notification-display": "Máximo de notificações a exibir", + "counter": "Contador", + "counter-hint": "O contador será exibido se \"Título do widget\" estiver ativado", + "icon": "Ícone", + "counter-value": "Valor", + "counter-color": "Cor", + "notification-button": "Botões de notificação", + "button-view-all": "Ver todos", + "button-filter": "Filtro", + "type-filter": "Filtro de tipo", + "button-mark-read": "Marcar todos como lidos", + "notification-types": "Tipos de notificação", + "notification-type": "Tipo de notificação", + "search-type": "Tipo de pesquisa", + "any-type": "Qualquer tipo" + }, + "alarm-count": { + "alarm-count-card-style": "Estilo do cartão de contagem de alarmes" + }, + "entity-count": { + "entity-count-card-style": "Estilo do cartão de contagem de entidades" + }, + "count": { + "layout": "Layout", + "layout-column": "Coluna", + "layout-row": "Linha", + "label": "Rótulo", + "icon": "Ícone", + "icon-background": "Fundo do ícone", + "value": "Valor", + "chevron": "Divisa", + "auto-scale": "Escala automática" + }, + "table": { + "common-table-settings": "Configurações comuns da tabela", + "enable-search": "Ativar pesquisa", + "enable-sticky-header": "Sempre exibir cabeçalho", + "enable-sticky-action": "Sempre exibir coluna de ações", + "hidden-cell-button-display-mode": "Modo de exibição das ações de botão de célula oculta", + "show-empty-space-hidden-action": "Exibir espaço vazio em vez da ação de botão de célula oculta", + "dont-reserve-space-hidden-action": "Não reservar espaço para botões de ação ocultos", + "display-timestamp": "Timestamp", + "display-pagination": "Exibir paginação", + "default-page-size": "Tamanho padrão da página", + "page-step-settings": "Configurações de passo de página", + "page-step-count": "Número de passos", + "page-step-increment": "Incremento do passo", + "page-step-count-format-message": "Deve ser um valor inteiro no intervalo de 1 a 100.", + "page-step-increment-format-message": "Deve ser um valor inteiro maior ou igual a 1.", + "use-entity-label-tab-name": "Usar rótulo de entidade no nome da aba", + "hide-empty-lines": "Ocultar linhas vazias", + "row-style": "Estilo da linha", + "use-row-style-function": "Usar função de estilo de linha", + "row-style-function": "Função de estilo de linha", + "cell-style": "Estilo da célula", + "use-cell-style-function": "Usar função de estilo de célula", + "cell-style-function": "Função de estilo de célula", + "cell-content": "Conteúdo da célula", + "use-cell-content-function": "Usar função de conteúdo de célula", + "cell-content-function": "Função de conteúdo de célula", + "show-latest-data-column": "Exibir coluna de dados mais recentes", + "latest-data-column-order": "Ordem da coluna de dados mais recentes", + "entities-table-title": "Título da tabela de entidades", + "enable-select-column-display": "Ativar seleção de colunas a exibir", + "display-entity-name": "Exibir coluna de nome da entidade", + "entity-name-column-title": "Título da coluna de nome da entidade", + "display-entity-label": "Exibir coluna de rótulo da entidade", + "entity-label-column-title": "Título da coluna de rótulo da entidade", + "display-entity-type": "Exibir coluna de tipo de entidade", + "default-sort-order": "Ordem de classificação padrão", + "custom-title": "Título personalizado do cabeçalho", + "column-width": "Largura da coluna (px ou %)", + "default-column-visibility": "Visibilidade padrão da coluna", + "column-visibility-visible": "Visível", + "column-visibility-hidden": "Oculto", + "column-visibility-hidden-mobile": "Oculto no modo móvel", + "column-selection-to-display": "Seleção de coluna em 'Colunas para exibir'", + "column-selection-to-display-enabled": "Ativado", + "column-selection-to-display-disabled": "Desativado", + "alarms-table-title": "Título da tabela de alarmes", + "enable-alarms-selection": "Ativar seleção de alarmes", + "enable-alarms-search": "Ativar pesquisa de alarmes", + "enable-alarm-filter": "Ativar filtro de alarme", + "display-alarm-details": "Exibir detalhes do alarme", + "allow-alarms-ack": "Permitir confirmação de alarmes", + "allow-alarms-clear": "Permitir limpar alarmes", + "display-alarm-activity": "Exibir atividade do alarme", + "allow-alarms-assign": "Permitir atribuição de alarmes", + "columns": "Colunas", + "column-settings": "Configurações da coluna", + "remove-column": "Remover coluna", + "add-column": "Adicionar coluna", + "no-columns": "Nenhuma coluna configurada", + "columns-to-display": "Colunas para exibir", + "table-header": "Cabeçalho da tabela", + "header-buttons": "Botões do cabeçalho", + "table-buttons": "Botões da tabela", + "pagination": "Paginação", + "rows": "Linhas", + "timeseries-column-error": "Pelo menos uma coluna de série temporal deve ser especificada", + "alarm-column-error": "Pelo menos uma coluna de alarme deve ser especificada", + "table-tabs": "Abas da tabela", + "show-cell-actions-menu-mobile": "Exibir menu suspenso de ações de célula no modo móvel", + "disable-sorting": "Desativar classificação" + }, + "latest-chart": { + "total": "Total", + "auto-scale": "Escala automática", + "clockwise-layout": "Layout no sentido horário", + "sort-series": "Ordenar séries por rótulo", + "tooltip-value-type-absolute": "Absoluto", + "tooltip-value-type-percentage": "Porcentagem" + }, + "pie-chart": { + "pie-chart-appearance": "Aparência do gráfico de pizza", + "label": "Rótulo", + "border": "Borda", + "radius": "Raio", + "pie-chart-card-style": "Estilo do cartão de gráfico de pizza" + }, + "radar-chart": { + "radar-appearance": "Aparência do radar", + "shape": "Forma", + "shape-polygon": "Polígono", + "shape-circle": "Círculo", + "color": "Cor", + "line": "Linha", + "points": "Pontos", + "points-label": "Rótulo dos pontos", + "radar-axis": "Eixo do radar", + "axis-label": "Rótulo do eixo", + "ticks-label": "Rótulo das marcações", + "radar-chart-style": "Estilo do gráfico de radar", + "max-axes-scaling": "Escala máxima dos eixos", + "max-axes-scaling-hint": "Escolha se cada eixo do radar tem seu próprio valor máximo (Separado) ou compartilha o maior valor entre todos os eixos com base no conjunto de dados do widget (Comum).", + "separate": "Separado", + "common": "Comum" + }, + "time-series-chart": { + "chart": "Gráfico", + "chart-style": "Estilo do gráfico", + "data-zoom": "Zoom de dados", + "stack-mode": "Modo de empilhamento", + "stack-mode-hint": "Empilha séries no gráfico. As séries com a mesma unidade serão sobrepostas.", + "axes": "Eixos", + "y-axes": "Eixos Y", + "line-type": "Tipo de linha", + "line-width": "Largura da linha", + "type-line": "Linha", + "type-bar": "Barra", + "type-point": "Ponto", + "no-aggregation-bar-width-strategy": "Estratégia de largura de barra para dados não agregados", + "no-aggregation-bar-width-strategy-group": "Grupo", + "no-aggregation-bar-width-strategy-separate": "Separado", + "bar-group-width": "Largura do grupo de barras", + "bar-width": "Largura da barra", + "bar-width-relative": "Percentual da janela de tempo", + "bar-width-absolute": "Absoluto (ms)", + "comparison": { + "comparison": "Comparação", + "comparison-hint": "A comparação funciona apenas com dados históricos!", + "show": "Exibir", + "settings": "Configurações de comparação", + "show-values-for-comparison": "Exibir dados históricos para comparação", + "comparison-values-label": "Rótulo da chave de comparação", + "comparison-values-label-auto": "Automático", + "comparison-data-color": "Cor dos dados de comparação" + }, + "threshold": { + "thresholds": "Limites", + "source": "Fonte", + "key-value": "Chave / Valor", + "no-thresholds": "Nenhum limite configurado", + "add-threshold": "Adicionar limite", + "type-constant": "Constante", + "type-latest-key": "Chave", + "type-entity": "Entidade", + "threshold-settings": "Configurações de limite", + "remove-threshold": "Remover limite", + "threshold-value-required": "O valor do limite é obrigatório.", + "key-required": "A chave é obrigatória.", + "entity-key-required": "A chave da entidade é obrigatória.", + "line-appearance": "Aparência da linha", + "line-color": "Cor da linha", + "start-symbol": "Símbolo inicial", + "end-symbol": "Símbolo final", + "symbol-size": "tamanho", + "label": "Rótulo", + "label-position-start": "Início", + "label-position-middle": "Meio", + "label-position-end": "Fim", + "label-position-inside-start": "Início interno", + "label-position-inside-start-top": "Início interno superior", + "label-position-inside-start-bottom": "Início interno inferior", + "label-position-inside-middle": "Meio interno", + "label-position-inside-middle-top": "Meio interno superior", + "label-position-inside-middle-bottom": "Meio interno inferior", + "label-position-inside-end": "Fim interno", + "label-position-inside-end-top": "Fim interno superior", + "label-position-inside-end-bottom": "Fim interno inferior", + "label-background": "Plano de fundo do rótulo" + }, + "state": { + "states": "Estados", + "label": "Rótulo", + "ticks-value": "Valor das marcações", + "source": "Fonte", + "value-range": "Valor / Intervalo", + "no-states": "Nenhum estado configurado", + "add-state": "Adicionar estado", + "type-constant": "Constante", + "type-range": "Intervalo", + "from": "De", + "to": "Até", + "remove-state": "Remover estado" + }, + "grid": { + "grid": "Grade", + "background-color": "Cor do plano de fundo", + "border": "Borda" + }, + "axis": { + "axes": "Eixos", + "x-axis": "Eixo X", + "y-axis": "Eixo Y", + "y-axis-settings": "Configurações do eixo Y", + "comparison-x-axis-settings": "Configurações do eixo X de comparação", + "remove-y-axis": "Remover eixo Y", + "id": "Id", + "label": "Rótulo", + "position": "Posição", + "position-left": "Esquerda", + "position-right": "Direita", + "position-top": "Superior", + "position-bottom": "Inferior", + "tick-labels": "Rótulos das marcações", + "ticks-formatter-function": "Função de formatação de marcações", + "ticks-generator-function": "Função geradora de marcações", + "show-ticks": "Exibir marcações", + "show-line": "Exibir linha", + "show-split-lines": "Exibir linhas de divisão", + "show-split-lines-x-axis-hint": "Se habilitado, as linhas verticais no gráfico serão exibidas.", + "show-split-lines-y-axis-hint": "Se habilitado, as linhas horizontais no gráfico serão exibidas.", + "ticks-interval": "Intervalo das marcações", + "ticks-interval-hint": "Define obrigatoriamente o intervalo de segmentação para o eixo.", + "split-number": "Número de divisões", + "split-number-hint": "Número de segmentos em que o eixo é dividido.", + "min": "Mín", + "max": "Máx", + "show": "Exibir", + "add-y-axis": "Adicionar eixo Y" + }, + "series": { + "legend-settings": "Configurações da legenda", + "show-in-legend": "Exibir na legenda", + "show-in-legend-hint": "Exibe o nome da série e os dados na legenda.", + "hidden-by-default": "Oculto por padrão", + "hidden-by-default-hint": "Oculta a série na legenda por padrão.", + "series-type": "Tipo de série", + "type": "Tipo", + "type-line": "Linha", + "type-bar": "Barra", + "line": { + "line": "Linha", + "show-line": "Exibir linha", + "step-line": "Linha em degrau", + "step-type-start": "Início", + "step-type-middle": "Meio", + "step-type-end": "Fim", + "smooth-line": "Linha suavizada" + }, + "point": { + "points": "Pontos", + "show-points": "Exibir pontos", + "point-label": "Rótulo do ponto", + "point-label-hint": "Exibe rótulo com valor sobre o ponto da série.", + "point-label-background": "Plano de fundo do rótulo do ponto", + "point-shape": "Forma do ponto", + "point-size": "Tamanho do ponto" + } + } + }, + "wind-speed-direction": { + "layout": "Layout", + "layout-default": "Padrão", + "layout-advanced": "Avançado", + "layout-simplified": "Simplificado", + "values": "Valores", + "wind-direction": "Direção do vento", + "center-value": "Valor central", + "icon": "Ícone", + "arrow": "Seta", + "ticks": "Marcações", + "labels-type": "Tipo de rótulos", + "directional-names": "Nomes direcionais", + "degrees": "Graus", + "major-ticks": "Marcações principais", + "minor-ticks": "Marcações secundárias", + "wind-speed-direction-card-style": "Estilo do cartão de velocidade e direção do vento", + "ticks-color": "Cor das marcações", + "ticks-labels-type": "Tipo de rótulos das marcações", + "arrow-color": "Cor da seta" + }, + "value-source": { + "value-source": "Fonte do valor", + "predefined-value": "Constante", + "entity-attribute": "Atributo da entidade", + "value": "Valor", + "value-required": "O valor é obrigatório.", + "key-required": "A chave é obrigatória.", + "entity-key-required": "A chave da entidade é obrigatória.", + "source-entity-alias": "Alias da entidade de origem", + "source-entity-attribute": "Atributo da entidade de origem", + "type-constant": "Constante", + "type-latest-key": "Chave", + "type-entity": "Entidade" + }, + "rpc-state": { + "initial-state": "Estado inicial", + "initial-state-hint": "Ação para obter o estado inicial (Ligado/Desligado) do componente.", + "disabled-state": "Estado desabilitado", + "disabled-state-hint": "Configura a condição sob a qual o componente é desabilitado.", + "turn-on": "Ligar 'On'", + "turn-on-hint": "Ação acionada quando o controle deslizante é alternado para 'On'", + "turn-off": "Desligar 'Off'", + "turn-off-hint": "Ação acionada quando o controle deslizante é alternado para 'Off'", + "on": "On", + "off": "Off", + "disabled": "Desabilitado" + }, + "value-action": { + "do-nothing": "Não fazer nada", + "execute-rpc": "Executar RPC", + "get-attribute": "Obter atributo", + "set-attribute": "Definir atributo", + "get-time-series": "Obter série temporal", + "get-alarm-status": "Obter status do alarme", + "get-dashboard-state": "Obter id do estado do Dashboard", + "get-dashboard-state-object": "Obter objeto de estado do Dashboard", + "add-time-series": "Adicionar série temporal", + "execute-rpc-text": "Executar método RPC '{{methodName}}'", + "get-time-series-text": "Usar série temporal '{{key}}'", + "get-attribute-text": "Usar atributo '{{key}}'", + "get-alarm-status-text": "Usar status do alarme", + "get-dashboard-state-text": "Usar estado do Dashboard", + "get-dashboard-state-object-text": "Usar objeto de estado do Dashboard", + "when-dashboard-state-is-text": "Quando o id do estado do Dashboard for '{{state}}'", + "when-dashboard-state-function-is-text": "Quando f(id do estado do Dashboard) for '{{state}}'", + "when-dashboard-state-object-function-is-text": "Quando f(objeto de estado do Dashboard) for '{{state}}'", + "set-attribute-to-value-text": "Definir atributo '{{key}}' como: {{value}}", + "add-time-series-value-text": "Adicionar valor da série temporal '{{key}}': {{value}}", + "set-attribute-text": "Definir atributo '{{key}}'", + "add-time-series-text": "Adicionar série temporal '{{key}}'", + "action": "Ação", + "value": "Valor", + "init-value-hint": "Valor que será definido até que o dispositivo envie dados.", + "method": "Método", + "method-name-required": "O nome do método é obrigatório.", + "request-timeout-ms": "Tempo Limite da requisição RPC (ms)", + "request-timeout-required": "O tempo limite da requisição é obrigatório.", + "min-request-timeout-error": "O valor do tempo limite da requisição deve ser maior ou igual a 5000 ms (5 segundos).", + "request-persistent": "Requisição RPC persistente", + "persistent-polling-interval": "Intervalo de polling persistente (ms)", + "persistent-polling-interval-hint": "Intervalo de polling (ms) para obter a resposta do comando RPC persistente", + "persistent-polling-interval-required": "O intervalo de polling persistente é obrigatório.", + "min-persistent-polling-interval-error": "O valor do intervalo de polling persistente deve ser maior ou igual a 1000 ms (1 segundo).", + "attribute-scope": "Escopo do atributo", + "attribute-key": "Chave do atributo", + "attribute-key-required": "A chave do atributo é obrigatória.", + "time-series-key": "Chave da série temporal", + "time-series-key-required": "A chave da série temporal é obrigatória.", + "action-result-converter": "Conversor de resultado de ação", + "converter-none": "Nenhum", + "converter-function": "Função", + "converter-constant": "Constante", + "converter-value": "Valor", + "parse-value-function": "Função de análise de valor", + "state-when-result-is": "'{{state}}' quando o resultado for", + "parameters": "Parâmetros", + "convert-value-function": "Função de conversão de valor", + "error": { + "target-entity-is-not-set": "A entidade de destino não está definida!", + "failed-to-perform-action": "Falha ao executar a ação {{ actionLabel }}.", + "invalid-attribute-scope": "O escopo de atributo {{scope}} não é suportado pela entidade {{entityType}}." + } + }, + "widget-font": { + "font-settings": "Configurações de fonte", + "font-family": "Família da fonte", + "size": "Tamanho", + "relative-font-size": "Tamanho de fonte relativo (porcentagem)", + "font-style": "Estilo", + "font-style-normal": "Normal", + "font-style-italic": "Itálico", + "font-style-oblique": "Oblíquo", + "font-weight": "Peso", + "font-weight-normal": "Normal", + "font-weight-bold": "Negrito", + "font-weight-bolder": "Mais negrito", + "font-weight-lighter": "Mais leve", + "color": "Cor", + "shadow-color": "Cor da sombra", + "preview": "Visualização", + "line-height": "Altura da linha", + "auto": "Automático" + }, + "home": { + "no-data-available": "Nenhum dado disponível" + }, + "system-info": { + "cpu": "CPU", + "ram": "RAM", + "disk": "Disco", + "cpu-warning-text": "Uso elevado de CPU. Para evitar falha no sistema, otimize o desempenho do sistema.", + "cpu-critical-text": "Uso de CPU criticamente alto. Para evitar falha no sistema, otimize o desempenho do sistema.", + "ram-warning-text": "Reserva de RAM baixa. Para evitar falha no sistema, otimize o desempenho do sistema ou aumente o tamanho da RAM.", + "ram-critical-text": "Reserva de RAM criticamente baixa. Para evitar falha no sistema, otimize o desempenho do sistema ou aumente o tamanho da RAM.", + "disk-warning-text": "Pouco espaço em disco. Para evitar perda de dados, libere ou expanda o espaço em disco.", + "disk-critical-text": "Espaço em disco criticamente baixo. Para evitar perda de dados, libere ou expanda o espaço em disco." + }, + "cluster-info": { + "service-id": "Id do serviço", + "service-type": "Tipo de serviço", + "no-data": "Sem dados" + }, + "transport-messages": { + "title": "Mensagens de transporte", + "info": "Todas as mensagens recebidas dos dispositivos" + }, + "activity": { + "title": "Atividade" + }, + "documentation": { + "title": "Documentação", + "add-link": "Adicionar link", + "add-link-title": "Adicionar link de documentação", + "name": "Nome", + "name-required": "O nome é obrigatório.", + "link": "Link", + "link-required": "O link é obrigatório.", + "columns": "Colunas" + }, + "quick-links": { + "title": "Links rápidos", + "add-link": "Adicionar link", + "add-link-title": "Adicionar link rápido", + "quick-link": "Link rápido", + "quick-link-required": "O link rápido é obrigatório.", + "no-links-matching": "Nenhum link correspondente a '{{name}}' foi encontrado.", + "columns": "Colunas" + }, + "recent-dashboards": { + "title": "Dashboards", + "last": "Últimos visualizados", + "starred": "Marcados com estrela", + "name": "Nome", + "last-viewed": "Último visualizado", + "no-last-viewed-dashboards": "Nenhum Dashboard visualizado recentemente" + }, + "configured-features": { + "title": "Recursos configurados", + "info": "Status dos recursos que requerem configuração", + "email-feature": "Email", + "sms-feature": "SMS", + "slack-feature": "Slack", + "oauth2-feature": "OAuth 2", + "2fa-feature": "2FA", + "feature-configured": "Recurso está configurado.\nClique para configurar", + "feature-not-configured": "Recurso não está configurado.\nClique para configurar" + }, + "version-info": { + "title": "Versão", + "contact-us": "Fale conosco", + "current-version": "Versão atual", + "current": "Atual", + "available-version": "Versão disponível", + "available": "Disponível", + "upgrade": "Atualizar", + "version-is-up-to-date": "Versão está atualizada" + }, + "usage-info": { + "title": "Uso", + "entities": "Entidades", + "api-calls": "Chamadas de API" + }, + "functions": { + "title": "Funções", + "pe-feature-tooltip": "Disponível apenas no ThingsBoard\nProfessional Edition", + "switch-to-pe": "Migrar para PE", + "alarms": "Alarmes", + "dashboards": "Dashboards", + "entities-and-relations": "Entidades & Relações", + "profiles": "Perfis", + "advanced-features": "Recursos avançados", + "notification-center": "Central de notificações", + "api-usage": "Uso de API", + "customers": "Clientes", + "customers-hierarchy": "Hierarquia de clientes", + "roles-and-permissions": "Funções & Permissões", + "groups": "Grupos", + "integrations": "Integrações", + "solution-templates": "Modelos de solução", + "scheduler": "Agendador", + "white-labeling": "Personalização de marca" + }, + "devices": { + "view-docs": "Ver documentação", + "inactive": "Inativo", + "active": "Ativo", + "total": "Total" + }, + "alarms": { + "critical": "Crítico", + "assigned-to-me": "Atribuído a mim", + "total": "Total" + }, + "getting-started": { + "get-started": "Começar", + "finish": "Concluir", + "done-welcome-title": "Bem-vindo a bordo", + "done-welcome-text": "Você se saiu muito bem!", + "sys-admin": { + "step1": { + "title": "Criar Tenant e Administrador do Tenant", + "content": "

Um tenant é um indivíduo ou organização que possui ou produz dispositivos e ativos. O tenant pode ter múltiplos usuários administradores de tenant, clientes, dispositivos e ativos.

O Administrador do Tenant pode criar e gerenciar dispositivos, ativos, clientes e dashboards dentro da conta do tenant.

Siga a documentação sobre como fazer isso:

", + "how-to-create-tenant": "Como criar Tenant e Administrador do Tenant" + }, + "step2": { + "title": "Configurar recurso: Servidor de email", + "content": "

A configuração do servidor de email é essencial para ativação de usuários, recuperação de senha e entrega de notificações de alarme.

Siga a documentação sobre como fazer isso:

", + "how-to-configure-mail-server": "Como configurar o servidor de email" + }, + "step3": { + "title": "Configurar recurso: Provedor de SMS", + "content": "

Configure provedores de SMS para notificar os clientes sobre alarmes via SMS.

Siga a documentação sobre como fazer isso:

", + "how-to-configure-sms-provider": "Como configurar o provedor de SMS" + }, + "step4": { + "title": "Configurar recurso: Personalização de marca", + "content": "

Personalize facilmente o logotipo e o esquema de cores da sua empresa ou produto sem programação e sem reiniciar o serviço.

Siga a documentação sobre como fazer isso:

" + }, + "step5": { + "title": "Configurar recurso: 2FA", + "content": "

Melhore a segurança das contas da plataforma com autenticação de dois fatores.

Siga a documentação sobre como fazer isso:

" + }, + "step6": { + "title": "Configurar recurso: OAuth 2", + "content": "

Simplifique o login para usuários de tenant e clientes com a funcionalidade de Single Sign-On via OAuth 2.0.

Siga a documentação sobre como fazer isso:

" + } + }, + "tenant-admin": { + "step1": { + "title": "Criar dispositivo", + "content": "

Vamos provisionar seu primeiro dispositivo na plataforma via UI. Siga a documentação sobre como fazer isso:

", + "how-to-create-device": "Como criar Dispositivo" + }, + "step2": { + "title": "Conectar dispositivo", + "content-before": "

Para conectar o dispositivo, é necessário obter as credenciais do dispositivo. Recomendamos usar as credenciais padrão geradas automaticamente, que é o token de acesso para este guia.

Use comandos simples para publicar dados via HTTP. Não se esqueça de substituir $ACCESS_TOKEN pelo token de acesso do seu dispositivo:

", + "ubuntu": { + "install-curl": "Instalar cURL para Ubuntu:" + }, + "macos": { + "install-curl": "Instalar cURL para MacOS:" + }, + "windows": { + "install-curl": "A partir do Windows 10 b17063, o cURL está disponível por padrão." + }, + "replace-access-token": "Substitua $ACCESS_TOKEN pelo token do seu dispositivo:", + "content-after": "

Você também pode usar outros protocolos como MQTT, CoAP, etc.

Siga a documentação sobre como fazer isso:

", + "how-to-connect-device": "Como conectar Dispositivo" + }, + "step3": { + "title": "Criar dashboard", + "content": "

Crie um dashboard para visualizar dados de entidades como ativos, dispositivos, etc.

Siga a documentação sobre como fazer isso:

", + "how-to-create-dashboard": "Como criar Dashboard" + }, + "step4": { + "title": "Configurar regras de alarme", + "alarm-rules": "Regras de alarme", + "content": "

Vamos disparar um alarme quando a temperatura atingir 25°C. Siga a documentação sobre como fazer isso:

", + "how-to-configure-alarm-rules": "Como configurar Regras de alarme" + }, + "step5": { + "title": "Criar alarme", + "content-before": "

Para acionar o alarme, envie um novo valor de telemetria de 26°C ou superior.

", + "replace-access-token": "Substitua $ACCESS_TOKEN pelo token do seu dispositivo:", + "content-after": "

Siga a documentação sobre como fazer isso:

", + "how-to-create-alarm": "Como criar Alarme" + }, + "step6": { + "title": "Criar cliente e compartilhar dashboard", + "content": "

Ao criar dashboards para usuários finais, um usuário cliente pode ver apenas seus próprios dispositivos, e os dados de outro cliente serão ocultados.

Siga a documentação sobre como fazer isso:

" + } + } } }, "icon": { "icon": "Ícone", + "icons": "Ícones", "select-icon": "Selecionar ícone", - "material-icons": "Ícones de materiais", - "show-all": "Mostrar todos os ícones" + "material-icons": "Material icons", + "show-all": "Mostrar todos os ícones", + "search-icon": "Pesquisar ícone", + "no-icons-found": "Nenhum ícone encontrado para '{{iconSearch}}'" + }, + "phone-input": { + "phone-input-label": "Número de telefone", + "phone-input-required": "O número de telefone é obrigatório", + "phone-input-validation": "O número de telefone é inválido ou não é possível", + "phone-input-pattern": "Número de telefone inválido. Deve estar no formato E.164, ex. {{phoneNumber}}", + "phone-input-hint": "Número de telefone no formato E.164, ex. {{phoneNumber}}" }, "custom": { "widget-action": { - "action-cell-button": "Botão da célula de ação", - "row-click": "Clicar em linha", - "polygon-click": "Clique no polígono", - "marker-click": "Clique no marcador", - "tooltip-tag-action": "Ação do rótulo de dica de ferramenta", - "node-selected": "Selecionado no nó", - "element-click": "Clique em elemento de HTML", - "pie-slice-click": "Clique na fatia", - "row-double-click": "Dois clique na fila" + "action-cell-button": "Botão de ação da célula", + "row-click": "Ao clicar na linha", + "cell-click": "Ao clicar na célula", + "polygon-click": "Ao clicar no polígono", + "marker-click": "Ao clicar no marcador", + "circle-click": "Ao clicar no círculo", + "tooltip-tag-action": "Ação da tag de tooltip", + "node-selected": "Ao selecionar o nó", + "element-click": "Ao clicar no elemento HTML", + "pie-slice-click": "Ao clicar na fatia", + "row-double-click": "Ao clicar duas vezes na linha", + "cell-double-click": "Ao clicar duas vezes na célula", + "card-click": "Ao clicar no card", + "click": "Ao clicar" } }, + "paginator": { + "items-per-page": "Itens por página:", + "first-page-label": "Primeira página", + "last-page-label": "Última página", + "next-page-label": "Próxima página", + "previous-page-label": "Página anterior", + "items-per-page-separator": "de" + }, "language": { "language": "Idioma" } -} +} \ No newline at end of file diff --git a/ui-ngx/src/assets/locale/locale.constant-tr_TR.json b/ui-ngx/src/assets/locale/locale.constant-tr_TR.json index 74bd56e2f5..66bc099e84 100644 --- a/ui-ngx/src/assets/locale/locale.constant-tr_TR.json +++ b/ui-ngx/src/assets/locale/locale.constant-tr_TR.json @@ -545,13 +545,7 @@ "slack-settings": "Slack ayarları", "mobile-settings": "Mobil ayarlar", "firebase-service-account-file": "Firebase servis hesabı kimlik bilgileri JSON dosyası", - "select-firebase-service-account-file": "Firebase servis hesabı kimlik bilgileri dosyanızı sürükleyip bırakın veya ", - "trendz": "Trendz", - "trendz-settings": "Trendz ayarları", - "trendz-url": "Trendz URL'si", - "trendz-url-required": "Trendz URL'si gereklidir", - "trendz-api-key": "Trendz API anahtarı", - "trendz-enable": "Trendz'i etkinleştir" + "select-firebase-service-account-file": "Firebase servis hesabı kimlik bilgileri dosyanızı sürükleyip bırakın veya " }, "alarm": { "alarm": "Alarm", @@ -794,7 +788,7 @@ "no-assets-matching": "'{{entity}}' ile eşleşen varlık bulunamadı.", "asset-required": "Varlık gereklidir", "name-starts-with": "Varlık adı ifadesi", - "help-text": "İhtiyaca göre '%' kullanın: '%varlık_adı_içerir%', '%varlık_adı_biter', 'varlık_adı_başlar'.", + "help-text": "'%' işaretini ihtiyaca göre kullanın: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Varlıklarda ara", "import": "Varlıkları içe aktar", "asset-file": "Varlık dosyası", @@ -898,9 +892,9 @@ "processing-timeouts": "${entityName} İşleme Zaman Aşımları", "rule-chain": "Kural Zinciri", "rule-engine": "Kural Motoru", - "rule-engine-daily-activity": "Kural Motoru günlük etkinliği", "rule-engine-executions": "Kural Motoru çalıştırmaları", "rule-engine-hourly-activity": "Kural Motoru saatlik etkinliği", + "rule-engine-daily-activity": "Kural Motoru günlük etkinliği", "rule-engine-monthly-activity": "Kural Motoru aylık etkinliği", "rule-engine-statistics": "Kural Motoru İstatistikleri", "rule-node": "Kural Düğümü", @@ -917,11 +911,9 @@ "transport": "İletim", "transport-daily-activity": "İletim günlük etkinliği", "transport-data-points": "İletim veri noktaları", - "transport-hourly-activity": "İletim saatlik etkinliği", - "transport-messages": "İletim mesajları", - "transport-monthly-activity": "İletim aylık etkinliği", "view-details": "Detayları görüntüle", - "view-statistics": "İstatistikleri görüntüle" + "view-statistics": "İstatistikleri görüntüle", + "transport-messages": "Taşıma mesajları" }, "api-limit": { "cassandra-write-queries-core": "Rest API Cassandra yazma sorguları", @@ -1020,7 +1012,7 @@ "selected-fields": "{ count, plural, =1 {1 hesaplanmış alan} other {# hesaplanmış alan} } seçildi", "type": { "simple": "Basit", - "script": "Komut dosyası" + "script": "Betik" }, "arguments": "Argümanlar", "decimals-by-default": "Varsayılan ondalık", @@ -1038,7 +1030,6 @@ "argument-customer": "Müşteri", "argument-tenant": "Geçerli kiracı", "argument-type": "Argüman türü", - "see-debug-events": "Hata ayıklama olaylarını görüntüle", "attribute": "Öznitelik", "copy-argument-name": "Argüman adını kopyala", "timeseries-key": "Zaman serisi anahtarı", @@ -1071,22 +1062,22 @@ "test-with-this-message": "Bu mesaj ile test et", "use-latest-timestamp": "En son zaman damgasını kullan", "hint": { - "arguments-simple-with-rolling": "Basit türde hesaplanmış alan zaman serisi kaydırma tipi anahtar içermemelidir.", - "arguments-empty": "Argümanlar boş olmamalıdır.", + "arguments-simple-with-rolling": "Basit türdeki hesaplanmış alan, zaman serisi yuvarlama türüyle anahtarlar içermemelidir.", + "arguments-empty": "En az bir bağımsız değişken belirtilmelidir.", "expression-required": "İfade gereklidir.", - "expression-invalid": "İfade geçersiz", - "expression-max-length": "İfade uzunluğu 255 karakterden az olmalıdır.", - "argument-name-required": "Argüman adı gereklidir.", - "argument-name-pattern": "Argüman adı geçersiz.", - "argument-name-duplicate": "Bu adda bir argüman zaten mevcut.", - "argument-name-max-length": "Argüman adı 256 karakterden kısa olmalıdır.", - "argument-name-forbidden": "Bu argüman adı rezerve edilmiştir ve kullanılamaz.", - "argument-type-required": "Argüman türü gereklidir.", - "max-args": "Maksimum argüman sayısına ulaşıldı.", - "decimals-range": "Varsayılan ondalık sayısı 0 ile 15 arasında olmalıdır.", - "expression": "Varsayılan ifade, sıcaklığı Fahrenheit'tan Celsius'a dönüştürmeyi gösterir.", - "arguments-entity-not-found": "Argüman hedef varlığı bulunamadı.", - "use-latest-timestamp": "Etkinleştirilirse, hesaplanan değer sunucu zamanı yerine argümanlardan gelen telemetri için en son zaman damgası ile kaydedilir." + "expression-invalid": "İfade geçersiz.", + "expression-max-length": "İfade uzunluğu 255 karakterden kısa olmalıdır.", + "argument-name-required": "Bağımsız değişken adı gereklidir.", + "argument-name-pattern": "Bağımsız değişken adı geçersiz.", + "argument-name-duplicate": "Bu isimde bir bağımsız değişken zaten mevcut.", + "argument-name-max-length": "Bağımsız değişken adı 256 karakterden kısa olmalıdır.", + "argument-name-forbidden": "Bağımsız değişken adı rezerve edilmiştir ve kullanılamaz.", + "argument-type-required": "Bağımsız değişken türü gereklidir.", + "max-args": "Maksimum bağımsız değişken sayısına ulaşıldı.", + "decimals-range": "Ondalıklar varsayılan olarak 0 ile 15 arasında bir sayı olmalıdır.", + "expression": "Varsayılan ifade, bir sıcaklık değerini Fahrenheit'ten Celsius'a nasıl dönüştüreceğini gösterir.", + "arguments-entity-not-found": "Bağımsız değişken hedef varlığı bulunamadı.", + "use-latest-timestamp": "Etkinleştirilirse, hesaplanan değer, bağımsız değişkenlerin telemetrisindeki en son zaman damgası kullanılarak saklanacaktır, sunucu zamanı yerine." } }, "ai-models": { @@ -1111,15 +1102,17 @@ "mistral-ai": "Mistral AI", "anthropic": "Anthropic", "amazon-bedrock": "Amazon Bedrock", - "github-models": "GitHub Modelleri" + "github-models": "GitHub Modelleri", + "ollama": "Ollama" }, - "name-required": "Ad gerekli.", + "name-required": "Ad zorunludur.", "name-max-length": "Ad en fazla 255 karakter olmalıdır.", "provider": "Sağlayıcı", "api-key": "API anahtarı", - "api-key-required": "API anahtarı gerekli.", + "api-key-required": "API anahtarı zorunludur.", + "api-key-open-ai-required": "Resmî OpenAI API'si kullanılırken API anahtarı zorunludur.", "project-id": "Proje Kimliği", - "project-id-required": "Proje kimliği gerekli.", + "project-id-required": "Proje Kimliği zorunludur", "location": "Konum", "location-required": "Konum gerekli.", "service-account-key-file": "Hizmet hesabı anahtar dosyası", @@ -1154,17 +1147,34 @@ "frequency-penalty": "Frekans cezası", "frequency-penalty-hint": "Bir belirtecin metinde geçme sıklığına göre olasılığına ceza uygular.", "max-output-tokens": "Maksimum çıktı belirteçleri", - "max-output-tokens-min": "0'dan büyük olmalıdır.", "max-output-tokens-hint": "Modelin tek bir yanıtta üretebileceği maksimum belirteç sayısını ayarlar.", + "context-length": "Bağlam uzunluğu", + "context-length-hint": "Token cinsinden bağlam penceresinin boyutunu tanımlar. Bu değer, hem kullanıcının girdisini hem de üretilen yanıtı içeren model için toplam bellek sınırını belirler.", "endpoint": "Uç nokta", "endpoint-required": "Uç nokta gereklidir.", + "baseurl": "Base URL", + "baseurl-required": "Base URL zorunludur.", "service-version": "Servis versiyonu", "check-connectivity": "Bağlantıyı kontrol et", "check-connectivity-success": "Test isteği başarılı oldu", "check-connectivity-failed": "Test isteği başarısız oldu", "no-model-matching": "'{{entity}}' ile eşleşen model bulunamadı.", "model-required": "Model gereklidir.", - "no-model-text": "Model bulunamadı." + "no-model-text": "Model bulunamadı.", + "authentication": "Kimlik doğrulama", + "authentication-basic-hint": "Standart HTTP Basic kimlik doğrulamasını kullanır. Kullanıcı adı ve parola birleştirilir, Base64 ile kodlanır ve Ollama sunucusuna yapılan her istekte \"Authorization\" başlığında gönderilir.", + "authentication-token-hint": "Bearer token kimlik doğrulamasını kullanır. Sağlanan token, Ollama sunucusuna yapılan her istekte doğrudan \"Authorization\" başlığında gönderilecektir.", + "authentication-type": { + "none": "Yok", + "basic": "Basic", + "token": "Token" + }, + "username": "Kullanıcı adı", + "username-required": "Kullanıcı adı zorunludur.", + "password": "Parola", + "password-required": "Parola zorunludur.", + "token": "Token", + "token-required": "Token zorunludur." }, "confirm-on-exit": { "message": "Kaydedilmemiş değişiklikleriniz var. Bu sayfadan ayrılmak istediğinizden emin misiniz?", @@ -1174,6 +1184,7 @@ "contact": { "country": "Ülke", "country-required": "Ülke gereklidir.", + "country-object-required": "Lütfen listeden geçerli bir ülke seçin.", "city": "Şehir", "state": "Eyalet / İl", "postal-code": "Posta Kodu", @@ -1634,7 +1645,7 @@ "remove-alias": "Cihaz takma adını kaldır", "add-alias": "Cihaz takma adı ekle", "name-starts-with": "Cihaz adı ifadesi", - "help-text": "İhtiyaca göre '%' kullanın: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "'%' işaretini ihtiyaca göre kullanın: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Cihaz listesi", "use-device-name-filter": "Filtre kullan", "device-list-empty": "Hiçbir cihaz seçilmedi.", @@ -1761,7 +1772,6 @@ "unable-delete-device-alias-text": "'{{deviceAlias}}' cihaz takma adı aşağıdaki widget(lar) tarafından kullanıldığı için silinemiyor:
{{widgetsList}}", "is-gateway": "Ağ geçidi mi", "overwrite-activity-time": "Bağlı cihaz için etkinlik zamanını üzerine yaz", - "device-filter": "Cihaz filtresi", "device-filter-title": "Cihaz Filtresi", "filter-title": "Filtre", "device-state": "Cihaz durumu", @@ -2545,7 +2555,7 @@ "no-entities-text": "Varlık bulunamadı", "no-entity-types-matching": "'{{entityType}}' ile eşleşen varlık türü bulunamadı.", "name-starts-with": "İsim ifadesi", - "help-text": "İhtiyaca göre '%' kullanın: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'.", + "help-text": "'%' işaretini ihtiyaca göre kullanın: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Filtre kullan", "entity-list-empty": "Seçilen varlık yok.", "entity-type-list-required": "En az bir varlık türü seçilmelidir.", @@ -2737,7 +2747,7 @@ "remove-alias": "Varlık görünümü takma adını kaldır", "add-alias": "Varlık görünümü takma adı ekle", "name-starts-with": "Varlık Görünümü ad ifadesi", - "help-text": "İhtiyaca göre '%' kullanın: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "'%' işaretini ihtiyaca göre kullanın: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Varlık Görünümü listesi", "use-entity-view-name-filter": "Filtre kullan", "entity-view-list-empty": "Seçili varlık görünümü yok.", @@ -3779,7 +3789,6 @@ "password-link-sent-message": "Sıfırlama bağlantısı gönderildi", "email": "E-posta", "invalid-email-format": "Geçersiz e-posta formatı.", - "login-with": "{{name}} ile giriş yap", "or": "veya", "error": "Giriş hatası", "verify-your-identity": "Kimliğinizi doğrulayın", @@ -4478,15 +4487,21 @@ "jks": "JKS", "js-module": "JS modülü", "lwm2m-model": "LWM2M modeli", - "pkcs-12": "PKCS #12" + "pkcs-12": "PKCS #12", + "general": "Genel" }, "resource-sub-type": "Alt tür", "sub-type": { - "image": "resim", - "scada-symbol": "Scada sembolü", + "image": "Görsel", + "scada-symbol": "SCADA sembolü", "extension": "Uzantı", "module": "Modül" - } + }, + "resource-is-in-use": "Kaynak diğer varlıklar tarafından kullanılıyor", + "resources-are-in-use": "Kaynaklar diğer varlıklar tarafından kullanılıyor", + "resource-is-in-use-text": "Kaynak '{{title}}' aşağıdaki varlıklar tarafından kullanıldığı için silinmedi:", + "resources-are-in-use-text": "Tüm kaynaklar silinmedi çünkü bazıları diğer varlıklar tarafından kullanılıyor.
İlgili varlıkları, ilgili kaynak satırındaki Referanslar düğmesine tıklayarak görüntüleyebilirsiniz.
Bu kaynakları yine de silmek istiyorsanız, aşağıdaki tabloda onları seçin ve Seçilenleri Sil düğmesine tıklayın.", + "delete-resource-in-use-text": "Kaynağı yine de silmek istiyorsanız Yine de Sil düğmesine tıklayın." }, "javascript": { "add": "JavaScript kaynağı ekle", @@ -4931,26 +4946,26 @@ "request-method": "İstek yöntemi", "use-simple-client-http-factory": "Basit HTTP istemci fabrikasını kullan", "ignore-request-body": "İstek içeriği olmadan", - "parse-to-plain-text": "Düz metne dönüştür", - "parse-to-plain-text-hint": "Seçildiğinde, istek içeriği JSON dizisinden düz metne dönüştürülür, örn. msg = \"Hello,\\t\"world\"\" will be parsed to Hello, \"world\"", - "read-timeout": "Okuma zaman aşımı (milisaniye)", - "read-timeout-hint": "0 değeri, sınırsız zaman aşımı anlamına gelir", - "max-parallel-requests-count": "Maksimum paralel istek sayısı", - "max-parallel-requests-count-hint": "0 değeri, paralel işlemeye sınırsız izin verir", - "max-response-size": "Maksimum yanıt boyutu (KB)", - "max-response-size-hint": "HTTP mesajlarını çözümlerken/şifrelerken ayrılacak maksimum bellek miktarı (örneğin JSON veya XML yükleri için)", - "headers": "Başlıklar", - "headers-hint": "Başlık/değer alanlarında meta veriden değer almak için ${metadataKey}, mesaj içeriğinden değer almak için $[messageKey] kullanın", - "header": "Başlık", - "header-required": "Başlık gereklidir", + "parse-to-plain-text": "Düz metne ayrıştır", + "parse-to-plain-text-hint": "Seçilirse, istek gövdesindeki mesaj yükü JSON dizgesinden düz metne dönüştürülür; örn. msg = \"Hello,\\t\"world\"\" ifadesi Hello, \"world\" olarak ayrıştırılır", + "read-timeout": "Okuma zaman aşımı (ms cinsinden)", + "read-timeout-hint": "0 değeri sonsuz zaman aşımı anlamına gelir", + "max-parallel-requests-count": "Maksimum eşzamanlı istek sayısı", + "max-parallel-requests-count-hint": "0 değeri paralel işlemde herhangi bir sınır olmadığını belirtir", + "max-response-size": "Maksimum yanıt boyutu (KB cinsinden)", + "max-response-size-hint": "HTTP iletilerini (JSON veya XML yükleri gibi) kodlarken ya da kodunu çözerken veri arabelleğe alma için ayrılan maksimum bellek miktarı", + "headers": "Üstbilgiler", + "headers-hint": "Üstbilgi/değer alanlarında, meta veriden değer almak için ${metadataKey}, ileti gövdesinden değer almak için $[messageKey] kullanın", + "header": "Üstbilgi", + "header-required": "Üstbilgi zorunludur", "value": "Değer", - "value-required": "Değer gereklidir", + "value-required": "Değer zorunludur", "topic-pattern": "Konu deseni", "key-pattern": "Anahtar deseni", - "key-pattern-hint": "İsteğe bağlı. Geçerli bir bölüm numarası belirtilirse kayıt gönderilirken kullanılır. Belirtilmemişse anahtar kullanılır. Her ikisi de belirtilmemişse round-robin yöntemi kullanılır.", - "topic-pattern-required": "Konu deseni gereklidir", + "key-pattern-hint": "İsteğe bağlıdır. Geçerli bir bölüm (partition) numarası belirtilirse, kayıt gönderilirken bu değer kullanılır. Herhangi bir bölüm belirtilmezse, bunun yerine anahtar kullanılır. Her ikisi de belirtilmezse, bölümler döngüsel olarak (round-robin) atanır.", + "topic-pattern-required": "Konu deseni zorunludur", "topic": "Konu", - "topic-required": "Konu gereklidir", + "topic-required": "Konu zorunludur", "bootstrap-servers": "Başlangıç sunucuları", "bootstrap-servers-required": "Başlangıç sunucuları değeri gereklidir", "other-properties": "Diğer özellikler", @@ -5385,8 +5400,7 @@ }, "time-series": "Zaman serisi", "latest": "Son değerler", - "web-sockets": "WebSockets", - "calculated-fields": "Hesaplanmış alanlar" + "web-sockets": "WebSockets" }, "save-attribute": { "processing-settings": "İşleme ayarları", @@ -5432,32 +5446,33 @@ "ai": { "ai-model": "Yapay Zeka modeli", "model": "Model", - "ai-model-hint": "Bu kural düğümü tarafından gönderilen istekleri işlemek için önceden yapılandırılmış bir yapay zeka modeli seçin veya yeni bir tane yapılandırmak için \"Yeni oluştur\" seçeneğini kullanın.", + "ai-model-hint": "Bu kural düğümü tarafından gönderilen istekleri işlemek için önceden yapılandırılmış Yapay Zeka modelini seçin veya yeni bir tane yapılandırmak için \"Yeni oluştur\" seçeneğini kullanın.", "prompt-settings": "İstem ayarları", - "prompt-settings-hint": "İsteğe bağlı sistem istemi, yapay zekanın genel rolünü ve kısıtlamalarını belirlerken, kullanıcı istemi gerçekleştirilmesi gereken belirli görevi tanımlar. Her iki alan da şablonlaştırmayı destekler.", + "prompt-settings-hint": "İsteğe bağlı sistem istemi, YZ'nin genel rolünü ve kısıtlarını belirlerken, kullanıcı istemi gerçekleştirilecek belirli görevi tanımlar. Her iki alan da şablonlaştırmayı destekler.", "system-prompt": "Sistem istemi", - "system-prompt-max-length": "Sistem istemi en fazla 500000 karakter olmalıdır.", - "system-prompt-blank": "Sistem istemi boş olmamalıdır.", + "system-prompt-max-length": "Sistem istemi 500000 karakter veya daha az olmalıdır.", + "system-prompt-blank": "Sistem istemi boş bırakılmamalıdır.", "user-prompt": "Kullanıcı istemi", - "user-prompt-required": "Kullanıcı istemi gereklidir.", - "user-prompt-max-length": "Kullanıcı istemi en fazla 500000 karakter olmalıdır.", - "user-prompt-blank": "Kullanıcı istemi boş olmamalıdır.", - "response-format": "Yanıt formatı", + "user-prompt-required": "Kullanıcı istemi zorunludur.", + "user-prompt-max-length": "Kullanıcı istemi 500000 karakter veya daha az olmalıdır.", + "user-prompt-blank": "Kullanıcı istemi boş bırakılmamalıdır.", + "response-format": "Yanıt biçimi", "response-text": "Metin", "response-json": "JSON", "response-json-schema": "JSON Şeması", - "response-format-hint-TEXT": "Modelin geçerli bir JSON nesnesi olup olmayabileceği rastgele metin üretmesine olanak tanır. Çıktı geçerli bir JSON nesnesi değilse, otomatik olarak \"response\" anahtarı altında bir JSON nesnesine sarılır.", - "response-format-hint-JSON": "Modelin geçerli bir JSON yanıtı üretmesi gereklidir. Çıktı geçerli bir JSON nesnesi değilse, otomatik olarak \"response\" anahtarı altında bir JSON nesnesine sarılır.", - "response-format-hint-JSON_SCHEMA": "Modelin, sağlanan şemada tanımlanan belirli yapı ve veri türleriyle eşleşen bir JSON üretmesi gereklidir. Çıktı geçerli bir JSON nesnesi değilse, otomatik olarak \"response\" anahtarı altında bir JSON nesnesine sarılır.", - "response-json-schema-hint": "Geçerli herhangi bir JSON Şeması girilebilir, ancak bu kural düğümü yalnızca sınırlı bir alt kümesini destekler. Ayrıntılar için düğüm belgelerine bakın.", - "response-json-schema-required": "JSON Şeması gereklidir", + "response-format-hint-TEXT": "Modelin rastgele metin üretmesine izin verir; bu metin geçerli bir JSON nesnesi olabilir veya olmayabilir. Çıktı geçerli bir JSON nesnesi değilse, otomatik olarak \"response\" anahtarının altında bir JSON nesnesine sarılır.", + "response-format-hint-JSON": "Modelin geçerli bir JSON olan bir yanıt üretmesi gerekir. Çıktı geçerli bir JSON nesnesi değilse, otomatik olarak \"response\" anahtarının altında bir JSON nesnesine sarılır.", + "response-format-hint-JSON_SCHEMA": "Modelin, sağlanan şemada tanımlanan belirli yapı ve veri türleriyle eşleşen bir JSON üretmesi gerekir. Çıktı geçerli bir JSON nesnesi değilse, otomatik olarak \"response\" anahtarının altında bir JSON nesnesine sarılır.", + "response-json-schema-hint": "Her geçerli JSON Şeması girilebilir, ancak bu kural düğümü bunun özelliklerinin yalnızca sınırlı bir alt kümesini destekler. Ayrıntılar için düğüm belgelerine bakın.", + "response-json-schema-required": "JSON Şeması zorunludur", "advanced-settings": "Gelişmiş ayarlar", "timeout": "Zaman aşımı", - "timeout-hint": "Yapay zeka modelinden yanıt beklemek için maksimum süre. \nSüre aşılırsa istek sonlandırılır.", - "timeout-required": "Zaman aşımı gereklidir", + "timeout-hint": "İstek sonlandırılmadan önce YZ modelinden \nyanıt beklemek için azami süre.", + "timeout-required": "Zaman aşımı zorunludur", "timeout-validation": "1 saniye ile 10 dakika arasında olmalıdır.", - "force-acknowledgement": "Zorunlu onaylama", - "force-acknowledgement-hint": "Etkinleştirilirse, gelen mesaj anında onaylanır. Modelin yanıtı ayrı, yeni bir mesaj olarak kuyruğa alınır." + "force-acknowledgement": "Onayı zorla", + "force-acknowledgement-hint": "Etkinleştirilirse, gelen ileti hemen onaylanır. Modelin yanıtı daha sonra ayrı, yeni bir ileti olarak kuyruğa alınır.", + "ai-resources": "Yapay Zeka kaynakları" } }, "timezone": { @@ -5757,19 +5772,19 @@ "rule-engine-exceptions-ttl-days": "Kural Motoru istisnaları TTL süresi (gün)", "rule-engine-exceptions-ttl-days-required": "Kural Motoru istisnaları TTL süresi gereklidir", "rule-engine-exceptions-ttl-days-range": "Kural Motoru istisnaları TTL süresi negatif olamaz", - "max-rule-node-executions-per-message": "Mesaj başına Kural düğümü yürütme maksimum sayısı", - "max-rule-node-executions-per-message-required": "Mesaj başına Kural düğümü yürütme maksimum sayısı gereklidir.", - "max-rule-node-executions-per-message-range": "Mesaj başına Kural düğümü yürütme maksimum sayısı negatif olamaz", - "max-emails": "Gönderilen e-posta maksimum sayısı", - "max-emails-required": "Gönderilen e-posta maksimum sayısı gereklidir.", - "max-emails-range": "Gönderilen e-posta maksimum sayısı negatif olamaz", + "max-rule-node-executions-per-message": "Mesaj başına kural düğümü yürütme maksimum sayısı", + "max-rule-node-executions-per-message-required": "Mesaj başına kural düğümü yürütme maksimum sayısı zorunludur.", + "max-rule-node-executions-per-message-range": "Mesaj başına kural düğümü yürütme maksimum sayısı negatif olamaz", + "max-emails": "Gönderilen e-postaların maksimum sayısı", + "max-emails-required": "Gönderilen e-postaların maksimum sayısı zorunludur.", + "max-emails-range": "Gönderilen e-postaların maksimum sayısı negatif olamaz", "sms-enabled": "SMS etkin", - "max-sms": "Gönderilen SMS maksimum sayısı", - "max-sms-required": "Gönderilen SMS maksimum sayısı gereklidir.", - "max-sms-range": "Gönderilen SMS maksimum sayısı negatif olamaz", - "max-created-alarms": "Oluşturulan alarm maksimum sayısı", - "max-created-alarms-required": "Oluşturulan alarm maksimum sayısı gereklidir.", - "max-created-alarms-range": "Oluşturulan alarm maksimum sayısı negatif olamaz", + "max-sms": "Gönderilen SMS'lerin maksimum sayısı", + "max-sms-required": "Gönderilen SMS'lerin maksimum sayısı zorunludur.", + "max-sms-range": "Gönderilen SMS'lerin maksimum sayısı negatif olamaz", + "max-created-alarms": "Oluşturulan alarmların maksimum sayısı", + "max-created-alarms-required": "Oluşturulan alarmların maksimum sayısı zorunludur.", + "max-created-alarms-range": "Oluşturulan alarmların maksimum sayısı negatif olamaz", "no-queue": "Tanımlı Kuyruk yok", "add-queue": "Kuyruk Ekle", "queues-with-count": "Kuyruklar ({{count}})", @@ -5987,9 +6002,10 @@ "label": "Etiket", "value": "Değer", "date": "Tarih", - "show-date-time-interval": "Tarih ve saat aralığını göster", - "show-date-time-interval-hint": "Veri toplamaya göre tarih ve saat aralığını göster.", + "show-date-time-interval": "Tarih-saat aralığını göster", + "show-date-time-interval-hint": "Veri toplulaştırmasına göre tarih-saat aralığını göster.", "hide-zero-tooltip-values": "Sıfır değerleri gizle", + "show-stack-total": "Yığın modunda toplam değeri göster", "background-color": "Arka plan rengi", "background-blur": "Arka plan bulanıklığı" }, @@ -6631,7 +6647,7 @@ "export-relations": "İlişkileri dışa aktar", "export-attributes": "Öznitelikleri dışa aktar", "export-credentials": "Kimlik bilgilerini dışa aktar", - "export-calculated-fields": "Hesaplanmış alanları dışa aktar", + "export-calculated-fields": "Hesaplanmış alanları ve alarm kurallarını dışa aktar", "entity-versions": "Varlık sürümleri", "versions": "Sürümler", "created-time": "Oluşturulma zamanı", @@ -7447,7 +7463,7 @@ "chart-axis": { "scale": "Ölçek", "scale-min": "min", - "scale-max": "maks", + "scale-max": "max", "scale-auto": "Otomatik" }, "bar": { @@ -8482,10 +8498,10 @@ "finish-circle-hint": "Daire: çizimi tamamlamak için tıklayın" }, "select-entity": "Varlık seç", - "select-entity-hint": "İpucu: seçimden sonra haritaya tıklayarak konum belirleyin" + "select-entity-hint": "İpucu: Seçim yaptıktan sonra, konum belirlemek için haritaya tıklayın" }, "select-entity": "Varlık seç", - "select-entity-hint": "İpucu: seçimden sonra haritaya tıklayarak konum belirleyin", + "select-entity-hint": "İpucu: Seçim yaptıktan sonra, konum belirlemek için haritaya tıklayın", "tooltips": { "placeMarker": "'{{entityName}}' varlığını yerleştirmek için tıklayın", "firstVertex": "'{{entityName}}' için poligon: ilk noktayı yerleştirmek için tıklayın", @@ -9367,7 +9383,7 @@ }, "functions": { "title": "Fonksiyonlar", - "pe-feature-tooltip": "Yalnızca ThingsBoard\nProfesyonel Sürümde", + "pe-feature-tooltip": "Yalnızca ThingsBoard\nProfessional Edition", "switch-to-pe": "PE sürümüne geç", "alarms": "Alarmlar", "dashboards": "Panolar", @@ -9522,4 +9538,4 @@ "language": { "language": "Dil" } -} +} \ No newline at end of file diff --git a/ui-ngx/src/assets/locale/locale.constant-uk_UA.json b/ui-ngx/src/assets/locale/locale.constant-uk_UA.json index acb837a587..654f305ae0 100644 --- a/ui-ngx/src/assets/locale/locale.constant-uk_UA.json +++ b/ui-ngx/src/assets/locale/locale.constant-uk_UA.json @@ -1,2619 +1,9541 @@ { - "access": { - "unauthorized": "Неавторизований", - "unauthorized-access": "Неавторизований доступ", - "unauthorized-access-text": "Щоб отримати доступ до цього ресурсу, потрібно ввійти в систему!", - "access-forbidden": "Доступ заборонено", - "access-forbidden-text": "Недостатньо прав для доступу!
Спробуйте увійти як інший користувач, якщо ви все ще хочете отримати доступ до цього ресурсу.", - "refresh-token-expired": "Дані про сесію застарілі", - "refresh-token-failed": "Не вдається відновити сеанс", - "permission-denied": "У дозволі відмовлено", - "permission-denied-text": "Ви не маєте дозволу на виконання цієї операції!" - }, - "account": { - "account": "Обліковий запис", - "notification-settings": "Налаштування сповіщень" - }, - "action": { - "activate": "Активувати", - "suspend": "Призупинити", - "save": "Зберегти", - "saveAs": "Зберегти як", - "move": "Перемістити", - "cancel": "Скасувати", - "ok": "OK", - "delete": "Видалити", - "add": "Додати", - "yes": "Так", - "no": "Ні", - "update": "Оновити", - "remove": "Видалити", - "select": "Вибрати", - "search": "Пошук", - "clear-search": "Очистити пошук", - "assign": "Надати", - "unassign": "Позбавити", - "share": "Поділитися", - "make-private": "Зробити приватним", - "apply": "Застосувати", - "apply-changes": "Застосувати зміни", - "edit-mode": "Режим редагування", - "enter-edit-mode": "Ввійти в режим редагування", - "decline-changes": "Відхилити зміни", - "decline": "Відхилити", - "close": "Закрити", - "back": "Назад", - "run": "Запустити", - "sign-in": "Увійти!", - "edit": "Редагувати", - "view": "Переглянути", - "create": "Створити", - "drag": "Перетягнути", - "refresh": "Оновити", - "undo": "Скасувати", - "copy": "Скопіювати", - "paste": "Вставити", - "copy-reference": "Копіювати посилання", - "paste-reference": "Вставити посилання", - "import": "Імпортувати", - "export": "Експортувати", - "share-via": "Поділитися через {{provider}}", - "continue": "Продовжити", - "discard-changes": "Скасувати зміни", - "download": "Завантажити", - "next": "Наступний", - "next-with-label": "Наступний: {{label}}", - "read-more": "Прочитати більше", - "hide": "Приховати", - "done": "Завершено", - "print": "Друкувати", - "restore": "Відновити", - "confirm": "Підтвердити", - "more": "Більше", - "less": "Менше", + "access": { + "unauthorized": "Неавторизовано", + "unauthorized-access": "Неавторизований доступ", + "unauthorized-access-text": "Вам потрібно увійти, щоб отримати доступ до цього ресурсу!", + "access-forbidden": "Доступ заборонено", + "access-forbidden-text": "Ви не маєте прав доступу до цього розташування!
Спробуйте увійти під іншим користувачем, якщо Ви все ще бажаєте отримати доступ до цього розташування.", + "refresh-token-expired": "Термін дії сеансу минув", + "refresh-token-failed": "Не вдалося оновити сеанс", + "permission-denied": "Відмовлено в доступі", + "permission-denied-text": "Ви не маєте дозволу виконати цю операцію!" + }, + "account": { + "account": "Обліковий запис", + "notification-settings": "Налаштування сповіщень" + }, + "action": { + "activate": "Активувати", + "suspend": "Призупинити", + "save": "Зберегти", + "saveAs": "Зберегти як", + "move": "Перемістити", + "cancel": "Скасувати", + "ok": "OK", + "delete": "Видалити", + "add": "Додати", + "yes": "Так", + "no": "Ні", + "update": "Оновити", + "remove": "Видалити", + "search": "Пошук", + "clear-search": "Очистити пошук", + "assign": "Призначити", + "unassign": "Скасувати призначення", + "share": "Поділитися", + "make-private": "Зробити приватним", + "apply": "Застосувати", + "apply-changes": "Застосувати зміни", + "edit-mode": "Режим редагування", + "enter-edit-mode": "Увійти в режим редагування", + "decline-changes": "Відхилити зміни", + "decline": "Відхилити", + "close": "Закрити", + "back": "Назад", + "run": "Запустити", + "sign-in": "Увійти!", + "edit": "Редагувати", + "view": "Переглянути", + "create": "Створити", + "drag": "Перетягнути", + "refresh": "Оновити", + "undo": "Повернути", + "copy": "Копіювати", + "paste": "Вставити", + "copy-reference": "Копіювати посилання", + "paste-reference": "Вставити посилання", + "import": "Імпортувати", + "export": "Експортувати", + "share-via": "Поділитися через {{provider}}", + "select": "Вибрати", + "continue": "Продовжити", + "discard-changes": "Скасувати зміни", + "download": "Скачати", + "next": "Далі", + "next-with-label": "Далі: {{label}}", + "read-more": "Читати далі", + "hide": "Приховати", + "test": "Тестувати", + "done": "Готово", + "print": "Друкувати", + "restore": "Відновити", + "confirm": "Підтвердити", + "more": "Більше", + "less": "Менше", + "skip": "Пропустити", + "send": "Надіслати", + "reset": "Скинути", + "show-more": "Показати більше", + "dont-show-again": "Більше не показувати", + "see-documentation": "Переглянути документацію", + "clear": "Очистити", + "upload": "Завантажити", + "delete-anyway": "Видалити все одно", + "delete-selected": "Видалити вибране", + "set": "Встановити" + }, + "aggregation": { + "aggregation": "Агрегація", + "function": "Функція агрегації даних", + "limit": "Максимум значень", + "group-interval": "Інтервал групування", + "min": "Мін.", + "max": "Макс.", + "avg": "Середнє", + "sum": "Сума", + "count": "Кількість", + "none": "Немає" + }, + "admin": { + "settings": "Налаштування", + "general": "Загальні", + "general-settings": "Загальні налаштування", + "home-settings": "Налаштування домашньої сторінки", + "home": "Домашня сторінка", + "outgoing-mail": "Поштовий сервер", + "outgoing-mail-settings": "Налаштування сервера вихідної пошти", + "system-settings": "Налаштування системи", + "test-mail-sent": "Тестовий лист успішно надіслано!", + "base-url": "Базова URL-адреса", + "base-url-required": "Потрібна базова URL-адреса.", + "prohibit-different-url": "Заборонити використання імені хоста з заголовків запиту клієнта", + "prohibit-different-url-hint": "Цей параметр слід увімкнути для виробничих середовищ. Якщо вимкнено, це може спричинити проблеми безпеки", + "device-connectivity": { + "device-connectivity": "Підключення пристроїв", + "http-s": "HTTP(s)", + "mqtt-s": "MQTT(s)", + "coap-s": "COAP(s)", + "http": "HTTP", + "https": "HTTPs", + "mqtt": "MQTT", + "mqtts": "MQTTs", + "coap": "COAP", + "coaps": "COAPs", + "hint": "Якщо поля хоста або порту порожні, буде використано значення протоколу за замовчуванням.", + "host": "Хост", + "port": "Порт", + "port-pattern": "Порт має бути додатним цілим числом.", + "port-range": "Порт має бути в діапазоні від 1 до 65535." + }, + "mail-from": "Відправник листа", + "mail-from-required": "Потрібно вказати відправника листа.", + "smtp-protocol": "Протокол SMTP", + "smtp-host": "Хост SMTP", + "smtp-host-required": "Потрібно вказати хост SMTP.", + "smtp-port": "Порт SMTP", + "smtp-port-required": "Потрібно вказати порт SMTP.", + "smtp-port-invalid": "Схоже, це некоректний порт SMTP.", + "timeout-msec": "Тайм-аут (мс)", + "timeout-required": "Потрібно вказати тайм-аут.", + "timeout-invalid": "Схоже, це некоректний тайм-аут.", + "enable-tls": "Увімкнути TLS", + "tls-version": "Версія TLS", + "enable-proxy": "Увімкнути проксі", + "proxy-host": "Хост проксі", + "proxy-host-required": "Потрібно вказати хост проксі.", + "proxy-port": "Порт проксі", + "proxy-port-required": "Потрібно вказати порт проксі.", + "proxy-port-range": "Порт проксі має бути в діапазоні від 1 до 65535.", + "proxy-user": "Користувач проксі", + "proxy-password": "Пароль проксі", + "change-password": "Змінити пароль", + "send-test-mail": "Надіслати тестовий лист", + "sms-provider": "Постачальник SMS", + "sms-provider-settings": "Налаштування постачальника SMS", + "sms-provider-type": "Тип постачальника SMS", + "sms-provider-type-required": "Потрібно вказати тип постачальника SMS.", + "sms-provider-type-aws-sns": "Amazon SNS", + "sms-provider-type-twilio": "Twilio", + "sms-provider-type-smpp": "SMPP", + "aws-access-key-id": "AWS Access Key ID", + "aws-access-key-id-required": "Потрібно вказати AWS Access Key ID", + "aws-secret-access-key": "AWS Secret Access Key", + "aws-secret-access-key-required": "Потрібно вказати AWS Secret Access Key", + "aws-region": "Регіон AWS", + "aws-region-required": "Потрібно вказати регіон AWS", + "number-from": "Номер телефону відправника", + "number-from-required": "Потрібно вказати номер телефону відправника.", + "number-to": "Номер телефону отримувача", + "number-to-required": "Потрібно вказати номер телефону отримувача.", + "phone-number-hint": "Номер телефону у форматі E.164, напр. +19995550123", + "phone-number-hint-twilio": "Номер телефону у форматі E.164/SID номера телефону/SID сервісу повідомлень, напр. +19995550123/PNXXX/MGXXX", + "phone-number-pattern": "Некоректний номер телефону. Має бути у форматі E.164, напр. +19995550123.", + "phone-number-pattern-twilio": "Некоректний номер телефону. Має бути у форматі E.164/SID номера телефону/SID сервісу повідомлень, напр. +19995550123/PNXXX/MGXXX.", + "sms-message": "SMS-повідомлення", + "sms-message-required": "Потрібно вказати SMS-повідомлення.", + "sms-message-max-length": "SMS-повідомлення не може перевищувати 1600 символів", + "twilio-account-sid": "Twilio Account SID", + "twilio-account-sid-required": "Потрібно вказати Twilio Account SID", + "twilio-account-token": "Twilio Account Token", + "twilio-account-token-required": "Потрібно вказати Twilio Account Token", + "send-test-sms": "Надіслати тестове SMS", + "test-sms-sent": "Тестове SMS успішно надіслано!", + "security-settings": "Налаштування безпеки", + "password-policy": "Політика паролів", + "minimum-password-length": "Мінімальна довжина пароля", + "minimum-password-length-required": "Потрібно вказати мінімальну довжину пароля", + "minimum-password-length-range": "Мінімальна довжина пароля має бути в діапазоні від 6 до 50", + "maximum-password-length": "Максимальна довжина пароля", + "maximum-password-length-min": "Максимальна довжина пароля має бути щонайменше 6", + "maximum-password-length-less-min": "Максимальна довжина пароля має бути більшою за мінімальну довжину", + "minimum-uppercase-letters": "Мінімальна кількість великих літер", + "minimum-uppercase-letters-range": "Мінімальна кількість великих літер не може бути від'ємною", + "minimum-lowercase-letters": "Мінімальна кількість малих літер", + "minimum-lowercase-letters-range": "Мінімальна кількість малих літер не може бути від'ємною", + "minimum-digits": "Мінімальна кількість цифр", + "minimum-digits-range": "Мінімальна кількість цифр не може бути від'ємною", + "minimum-special-characters": "Мінімальна кількість спеціальних символів", + "minimum-special-characters-range": "Мінімальна кількість спеціальних символів не може бути від'ємною", + "password-expiration-period-days": "Період дії пароля у днях", + "password-expiration-period-days-range": "Період дії пароля у днях не може бути від'ємним", + "password-reuse-frequency-days": "Частота повторного використання пароля у днях", + "password-reuse-frequency-days-range": "Частота повторного використання пароля у днях не може бути від'ємною", + "allow-whitespace": "Дозволити пробіли", + "force-reset-password-if-no-valid": "Примусово скинути пароль, якщо він недійсний", + "force-reset-password-if-no-valid-hint": "Будь ласка, будьте обережні, увімкнувши цю функцію: вона вимагатиме від користувачів з недійсним паролем скинути пароль через email.", + "general-policy": "Загальна політика", + "max-failed-login-attempts": "Максимальна кількість невдалих спроб входу перед блокуванням облікового запису", + "minimum-max-failed-login-attempts-range": "Максимальна кількість невдалих спроб входу не може бути від'ємною", + "user-lockout-notification-email": "У разі блокування облікового запису користувача надсилати сповіщення на email", + "user-activation-token-ttl": "TTL посилання активації користувача у годинах", + "user-activation-token-ttl-range": "TTL посилання активації користувача має бути в діапазоні від 1 до 24 годин", + "password-reset-token-ttl": "TTL посилання скидання пароля у годинах", + "password-reset-token-ttl-range": "TTL посилання скидання пароля має бути в діапазоні від 1 до 24 годин", + "mobile-secret-key-length": "Довжина мобільного секретного ключа", + "mobile-secret-key-length-range": "Довжина мобільного секретного ключа має бути додатною", + "domain-name": "Доменне ім'я", + "domain-name-unique": "Доменне ім'я та протокол мають бути унікальними.", + "domain-name-max-length": "Доменне ім'я має бути меншим за 256", + "error-verification-url": "Доменне ім'я не повинно містити символи '/' і ':'. Приклад: thingsboard.io", + "connection-settings": "Налаштування з'єднання", + "oauth2": { + "access-token-uri": "URI токена доступу", + "access-token-uri-required": "Потрібно вказати URI токена доступу.", + "activate-user": "Активувати користувача", + "add-domain": "Додати домен", + "delete-domain": "Видалити домен", + "add-provider": "Додати постачальника", + "delete-provider": "Видалити постачальника", + "allow-user-creation": "Дозволити створення користувачів", + "always-fullscreen": "Завжди на весь екран", + "authorization-uri": "URI авторизації", + "authorization-uri-required": "Потрібно вказати URI авторизації.", + "add-client": "Додати клієнта OAuth 2.0", + "client-details": "Деталі клієнта OAuth 2.0", + "client": "Клієнт OAuth 2.0", + "clients": "Клієнти OAuth 2.0", + "no-oauth2-clients": "Клієнтів OAuth 2.0 не знайдено", + "search-oauth2-clients": "Пошук клієнтів OAuth 2.0", + "delete-client-title": "Ви впевнені, що хочете видалити клієнта OAuth 2.0 '{{clientName}}'?", + "delete-client-text": "Будьте обережні: після підтвердження клієнт і всі пов'язані дані буде неможливо відновити.", + "delete-mobile-app-title": "Ви впевнені, що хочете видалити мобільний застосунок '{{applicationName}}'?", + "delete-mobile-app-text": "Будьте обережні: після підтвердження мобільний застосунок і всі пов'язані дані буде неможливо відновити.", + "title": "Назва", + "client-title-required": "Потрібно вказати назву", + "client-title-max-length": "Назва має бути меншою за 100", + "advanced-settings": "Розширені налаштування", + "domain-details": "Деталі домену", + "no-domains": "Доменів не знайдено", + "search-domains": "Пошук доменів", + "mobile-app-details": "Деталі мобільного застосунку", + "add-mobile-app": "Додати мобільний застосунок", + "no-mobile-apps": "Мобільних застосунків не знайдено", + "search-mobile-apps": "Пошук мобільних застосунків", + "send-token": "Надіслати токен", + "create-new": "Створити новий", + "client-authentication-method": "Метод автентифікації клієнта", + "client-id": "Client ID", + "client-id-required": "Потрібно вказати Client ID.", + "client-id-max-length": "Client ID має бути меншим за 256", + "client-secret": "Client secret", + "client-secret-required": "Потрібно вказати Client secret.", + "client-secret-max-length": "Client secret має бути меншим за 2049", + "custom-setting": "Користувацькі налаштування", + "customer-name-pattern": "Шаблон імені клієнта", + "customer-name-pattern-max-length": "Шаблон імені клієнта має бути меншим за 256", + "default-dashboard-name": "Назва дашборду за замовчуванням", + "default-dashboard-name-max-length": "Назва дашборду за замовчуванням має бути меншою за 256", + "delete-domain-text": "Будьте обережні: після підтвердження домен і всі дані постачальника будуть недоступні.", + "delete-domain-title": "Ви впевнені, що хочете видалити домен '{{domainName}}'?", + "delete-registration-text": "Будьте обережні: після підтвердження дані постачальника будуть недоступні.", + "delete-registration-title": "Ви впевнені, що хочете видалити постачальника '{{name}}'?", + "email-attribute-key": "Ключ атрибуту Email", + "email-attribute-key-required": "Потрібно вказати ключ атрибуту Email.", + "email-attribute-key-max-length": "Ключ атрибуту Email має бути меншим за 32", + "first-name-attribute-key": "Ключ атрибуту імені", + "first-name-attribute-key-max-length": "Ключ атрибуту імені має бути меншим за 32", + "general": "Загальні", + "jwk-set-uri": "URI JSON Web Key", + "last-name-attribute-key": "Ключ атрибуту прізвища", + "last-name-attribute-key-max-length": "Ключ атрибуту прізвища має бути меншим за 32", + "login-button-icon": "Іконка кнопки входу", + "login-button-label": "Назва постачальника", + "login-button-label-placeholder": "Увійти через $(Provider label)", + "login-button-label-required": "Потрібно вказати маркування.", + "login-provider": "Постачальник входу", + "mapper": "Мапер", + "new-domain": "Новий домен", + "oauth2": "OAuth 2.0", + "password-max-length": "Пароль має бути меншим за 256", + "redirect-uri-template": "Шаблон Redirect URI", + "copy-redirect-uri": "Копіювати Redirect URI", + "registration-id": "Registration ID", + "registration-id-required": "Потрібно вказати Registration ID.", + "registration-id-unique": "Registration ID має бути унікальним у системі.", + "scope": "Scope", + "scope-required": "Потрібно вказати Scope.", + "tenant-name-pattern": "Шаблон імені тенанта", + "tenant-name-pattern-required": "Потрібно вказати шаблон імені тенанта.", + "tenant-name-pattern-max-length": "Шаблон імені тенанта має бути меншим за 256", + "tenant-name-strategy": "Стратегія імені тенанта", + "type": "Тип мапера", + "uri-pattern-error": "Некоректний формат URI.", + "url": "URL", + "url-pattern": "Некоректний формат URL.", + "url-required": "Потрібно вказати URL.", + "url-max-length": "URL має бути меншим за 256", + "user-info-uri": "URI інформації про користувача", + "user-info-uri-required": "Потрібно вказати URI інформації про користувача.", + "username-max-length": "Ім'я користувача має бути меншим за 256", + "user-name-attribute-name": "Ключ атрибуту імені користувача", + "user-name-attribute-name-required": "Потрібно вказати ключ атрибуту імені користувача", + "protocol": "Протокол", + "domain-schema-http": "HTTP", + "domain-schema-https": "HTTPS", + "domain-schema-mixed": "HTTP+HTTPS", + "enable": "Увімкнути налаштування OAuth 2.0", + "disable": "Вимкнути налаштування OAuth 2.0", + "edge": "Поширювати на Edge", + "edge-enable": "Увімкнути поширення на Edge", + "edge-disable": "Вимкнути поширення на Edge", + "domains": "Домени", + "mobile-apps": "Мобільні застосунки", + "mobile-package": "Пакет застосунку", + "mobile-package-placeholder": "Напр.: my.example.app", + "mobile-package-hint": "Для Android: Ваш унікальний Application ID. Для iOS: ідентифікатор пакета продукту.", + "mobile-package-unique": "Пакет застосунку має бути унікальним.", + "mobile-package-required": "Потрібно вказати пакет застосунку.", + "mobile-package-max-length": "Пакет застосунку має бути меншим за 256", + "mobile-package-spaces": "Пакет застосунку не повинен містити пробілів", + "mobile-app-secret": "Application secret", + "mobile-app-secret-hint": "Рядок у кодуванні Base64, що представляє щонайменше 512 біт даних.", + "mobile-app-secret-required": "Потрібно вказати Application secret.", + "mobile-app-secret-min-length": "Application secret має містити щонайменше 512 біт даних.", + "mobile-app-secret-base64": "Application secret має бути у форматі base64.", + "invalid-mobile-app-secret": "Application secret має містити лише буквено-цифрові символи та мати довжину від 16 до 2048 символів.", + "copy-mobile-app-secret": "Копіювати Application secret", + "delete-mobile-app": "Видалити інформацію про застосунок", + "providers": "Постачальники", + "platform-web": "Web", + "platform-android": "Android", + "platform-ios": "iOS", + "all-platforms": "Усі платформи", + "smtp-provider": "Постачальник SMTP", + "allowed-platforms": "Дозволені платформи", + "authentication": "Автентифікація", + "basic": "Базові", + "provider": "Постачальник", + "redirect-url": "Redirect URI", + "domain-name": "Доменне ім'я", + "domain-name-required": "Потрібно вказати доменне ім'я", + "redirect-url-template": "Redirect URI template", + "microsoft-tenant-id": "Directory (tenant) Id", + "microsoft-tenant-id-required": "Потрібно вказати Directory (tenant) Id", + "token-uri": "Token URI", + "token-uri-required": "Потрібно вказати Token URI", + "redirect-uri": "Redirect URI", + "google-provider": "Google", + "microsoft-provider": "Office 365", + "sendgrid-provider": "Sendgrid", + "custom-provider": "Користувацький", + "generate-access-token": "Згенерувати токен доступу", + "update-access-token": "Оновити токен доступу", + "access-token-status": "Статус токена доступу:", + "token-status-generated": "згенеровано", + "token-status-not-generated": "не згенеровано" + }, + "smpp-provider": { + "smpp-version": "Версія SMPP", + "smpp-host": "Хост SMPP", + "smpp-host-required": "Потрібно вказати хост SMPP", + "smpp-port": "Порт SMPP", + "smpp-port-required": "Потрібно вказати порт SMPP", + "system-id": "System ID", + "system-id-required": "Потрібно вказати System ID", + "password": "Пароль", + "password-required": "Потрібно вказати пароль", + "type-settings": "Налаштування типу", + "source-settings": "Налаштування відправника", + "destination-settings": "Налаштування отримувача", + "additional-settings": "Додаткові налаштування", + "system-type": "Тип системи", + "bind-type": "Тип bind", + "service-type": "Тип сервісу", + "source-address": "Адреса відправника", + "source-ton": "TON відправника", + "source-npi": "NPI відправника", + "destination-ton": "TON отримувача (Тип номера)", + "destination-npi": "NPI отримувача (Ідентифікація плану нумерації)", + "address-range": "Діапазон адрес", + "coding-scheme": "Схема кодування", + "bind-type-tx": "Передавач", + "bind-type-rx": "Приймач", + "bind-type-trx": "Трансивер", + "ton-unknown": "Невідомо", + "ton-international": "Міжнародний", + "ton-national": "Національний", + "ton-network-specific": "Специфічний для мережі", + "ton-subscriber-number": "Абонентський номер", + "ton-alphanumeric": "Буквено-цифровий", + "ton-abbreviated": "Скорочений", + "npi-unknown": "0 - Невідомо", + "npi-isdn": "1 - ISDN/телефонний план нумерації (E163/E164)", + "npi-data-numbering-plan": "3 - План нумерації даних (X.121)", + "npi-telex-numbering-plan": "4 - План нумерації телекса (F.69)", + "npi-land-mobile": "6 - Наземний мобільний зв'язок (E.212)", + "npi-national-numbering-plan": "8 - Національний план нумерації", + "npi-private-numbering-plan": "9 - Приватний план нумерації", + "npi-ermes-numbering-plan": "10 - План нумерації ERMES (ETSI DE/PS 3 01-3)", + "npi-internet": "13 - Інтернет (IP)", + "npi-wap-client-id": "18 - WAP Client Id (буде визначено WAP Forum)", + "scheme-smsc": "0 - Стандартний алфавіт SMSC (ASCII для короткого й довгого коду та GSM для безкоштовних номерів)", + "scheme-ia5": "1 - IA5 (ASCII для короткого й довгого коду, Latin 9 для безкоштовних номерів (ISO-8859-9))", + "scheme-octet-unspecified-2": "2 - Невизначений октет (8-bit binary)", + "scheme-latin-1": "3 - Latin 1 (ISO-8859-1)", + "scheme-octet-unspecified-4": "4 - Невизначений октет (8-bit binary)", + "scheme-jis": "5 - JIS (X 0208-1990)", + "scheme-cyrillic": "6 - Кирилиця (ISO-8859-5)", + "scheme-latin-hebrew": "7 - Латиниця/іврит (ISO-8859-8)", + "scheme-ucs-utf": "8 - UCS2/UTF-16 (ISO/IEC-10646)", + "scheme-pictogram-encoding": "9 - Кодування піктограм", + "scheme-music-codes": "10 - Музичні коди (ISO-2022-JP)", + "scheme-extended-kanji-jis": "13 - Розширений Kanji JIS (X 0212-1990)", + "scheme-korean-graphic-character-set": "14 - Корейський графічний набір символів (KS C 5601/KS X 1001)" + }, + "queue-select-name": "Вибрати назву черги", + "queue-name": "Назва", + "queue-name-required": "Потрібно вказати назву черги!", + "queues": "Черги", + "queue-partitions": "Розділи", + "queue-submit-strategy": "Стратегія надсилання", + "queue-processing-strategy": "Стратегія обробки", + "queue-configuration": "Конфігурація черги", + "repository-settings": "Налаштування репозиторію", + "repository": "Репозиторій", + "repository-url": "URL репозиторію", + "repository-url-required": "Потрібно вказати URL репозиторію.", + "default-branch": "Назва гілки за замовчуванням", + "repository-read-only": "Лише для читання", + "show-merge-commits": "Показувати merge-коміти", + "authentication-settings": "Налаштування автентифікації", + "auth-method": "Метод автентифікації", + "auth-method-username-password": "Пароль / токен доступу", + "auth-method-username-password-hint": "Користувачі GitHub мають використовувати токени з правами запису до репозиторію.", + "auth-method-private-key": "Приватний ключ", + "password-access-token": "Пароль / токен доступу", + "change-password-access-token": "Змінити пароль / токен доступу", + "private-key": "Приватний ключ", + "drop-private-key-file-or": "Перетягніть і відпустіть файл приватного ключа або", + "passphrase": "Парольна фраза", + "enter-passphrase": "Ввести парольну фразу", + "change-passphrase": "Змінити парольну фразу", + "check-access": "Перевірити доступ", + "check-repository-access-success": "Доступ до репозиторію успішно перевірено!", + "delete-repository-settings-title": "Ви впевнені, що хочете видалити налаштування репозиторію?", + "delete-repository-settings-text": "Будьте обережні: після підтвердження налаштування репозиторію буде видалено, а функція контролю версій стане недоступною.", + "auto-commit-settings": "Налаштування авто-коміту", + "auto-commit": "Авто-коміт", + "auto-commit-entities": "Сутності для авто-коміту", + "no-auto-commit-entities-prompt": "Для авто-коміту не налаштовано жодної сутності", + "delete-auto-commit-settings-title": "Ви впевнені, що хочете видалити налаштування авто-коміту?", + "delete-auto-commit-settings-text": "Будьте обережні: після підтвердження налаштування авто-коміту буде видалено, а авто-коміт буде вимкнено для всіх сутностей.", + "mobile-app": { + "mobile-app": "Мобільний застосунок", + "mobile-app-qr-code-widget-settings": "Налаштування віджета QR-коду мобільного застосунку", + "applications": "Застосунки", + "default": "За замовчуванням", + "custom": "Користувацький", + "android": "Android", + "ios": "iOS", + "appearance": "Вигляд", + "appearance-on-home-page": "Відображення на домашній сторінці", + "enabled": "Увімкнено", + "disabled": "Вимкнено", + "badges": "Значки", + "label": "Маркування", + "label-required": "Потрібно вказати маркування", + "label-max-length": "Маркування має бути не довшим за 50 символів", + "right": "Праворуч", + "left": "Ліворуч", + "set": "Встановити", + "preview": "Попередній перегляд", + "connect-mobile-app": "Підключити мобільний застосунок", + "use-system-settings": "Використовувати системні налаштування" + }, + "2fa": { + "2fa": "Двофакторна автентифікація", + "available-providers": "Доступні постачальники", + "issuer-name": "Назва емітента", + "issuer-name-required": "Потрібно вказати назву емітента.", + "max-verification-failures-before-user-lockout": "Максимальна кількість невдалих перевірок перед блокуванням користувача", + "max-verification-failures-before-user-lockout-pattern": "Максимальна кількість невдалих перевірок має бути додатним цілим числом.", + "number-of-checking-attempts": "Кількість спроб перевірки", + "number-of-checking-attempts-pattern": "Кількість спроб перевірки має бути додатним цілим числом.", + "number-of-checking-attempts-required": "Потрібно вказати кількість спроб перевірки.", + "number-of-codes": "Кількість кодів", + "number-of-codes-pattern": "Кількість кодів має бути додатним цілим числом.", + "number-of-codes-required": "Потрібно вказати кількість кодів.", + "provider": "Постачальник", + "retry-verification-code-period": "Період повторної спроби коду підтвердження", + "retry-verification-code-period-pattern": "Мінімальний період — 5 с", + "retry-verification-code-period-required": "Потрібно вказати період повторної спроби коду підтвердження.", + "total-allowed-time-for-verification": "Загальний дозволений час для підтвердження", + "total-allowed-time-for-verification-pattern": "Мінімальний загальний дозволений час — 60 с", + "total-allowed-time-for-verification-required": "Потрібно вказати загальний дозволений час.", + "use-system-two-factor-auth-settings": "Використовувати системні налаштування двофакторної автентифікації", + "verification-code-check-rate-limit": "Ліміт частоти перевірок коду підтвердження", + "verification-code-lifetime": "Термін дії коду підтвердження", + "verification-code-lifetime-pattern": "Термін дії коду підтвердження має бути додатним цілим числом.", + "verification-code-lifetime-required": "Потрібно вказати термін дії коду підтвердження.", + "verification-message-template": "Шаблон повідомлення підтвердження", + "verification-limitations": "Обмеження підтвердження", + "verification-message-template-pattern": "Повідомлення підтвердження має містити шаблон: ${code}", + "verification-message-template-required": "Потрібно вказати шаблон повідомлення підтвердження.", + "within-time": "Протягом часу", + "within-time-pattern": "Час має бути додатним цілим числом.", + "within-time-required": "Потрібно вказати час." + }, + "jwt": { + "security-settings": "Налаштування безпеки JWT", + "issuer-name": "Назва емітента", + "issuer-name-required": "Потрібно вказати назву емітента.", + "signings-key": "Ключ підпису", + "signings-key-hint": "Рядок у кодуванні Base64, що представляє щонайменше 512 біт даних.", + "signings-key-required": "Потрібно вказати ключ підпису.", + "signings-key-min-length": "Ключ підпису має містити щонайменше 512 біт даних.", + "signings-key-base64": "Ключ підпису має бути у форматі base64.", + "expiration-time": "Час закінчення дії токена (с)", + "expiration-time-required": "Потрібно вказати час закінчення дії токена.", + "expiration-time-max": "Максимально дозволений час — 2147483647 секунд (68 років).", + "expiration-time-min": "Мінімальний час — 60 секунд (1 хвилина).", + "refresh-expiration-time": "Час закінчення дії refresh токена (с)", + "refresh-expiration-time-required": "Потрібно вказати час закінчення дії refresh токена.", + "refresh-expiration-time-max": "Максимально дозволений час — 2147483647 секунд (68 років).", + "refresh-expiration-time-min": "Мінімальний час — 900 секунд (15 хвилин).", + "refresh-expiration-time-less-token": "Час дії refresh токена має бути більшим за час дії токена.", + "generate-key": "Згенерувати ключ", + "info-header": "Усім користувачам потрібно буде увійти знову", + "info-message": "Зміна ключа підпису JWT призведе до недійсності всіх виданих токенів. Усім користувачам потрібно буде увійти знову. Це також вплине на скрипти, які використовують Rest API/Websockets." + }, + "resources": "Ресурси", + "notifications": "Сповіщення", + "notifications-settings": "Налаштування сповіщень", + "slack-api-token": "Slack API токен", + "slack": "Slack", + "slack-settings": "Налаштування Slack", + "mobile-settings": "Налаштування мобільного застосунку", + "firebase-service-account-file": "JSON-файл облікових даних сервісного облікового запису Firebase", + "select-firebase-service-account-file": "Перетягніть і відпустіть файл облікових даних сервісного облікового запису Firebase або " + }, + "alarm": { + "alarm": "Тривога", + "alarms": "Тривоги", + "all-alarms": "Усі тривоги", + "select-alarm": "Вибрати тривогу", + "no-alarms-matching": "Не знайдено тривог, що відповідають '{{entity}}'.", + "alarm-required": "Потрібно вказати тривогу", + "alarm-filter": "Фільтр тривог", + "filter": "Фільтр", + "alarm-status": "Статус тривоги", + "alarm-status-list": "Список статусів тривог", + "any-status": "Будь-який статус", + "search-status": { + "ANY": "Будь-який", + "ACTIVE": "Активна", + "CLEARED": "Очищена", + "ACK": "Підтверджена", + "UNACK": "Непідтверджена" + }, + "display-status": { + "ACTIVE_UNACK": "Активна непідтверджена", + "ACTIVE_ACK": "Активна підтверджена", + "CLEARED_UNACK": "Очищена непідтверджена", + "CLEARED_ACK": "Очищена підтверджена" + }, + "no-alarms-prompt": "Тривог не знайдено", + "created-time": "Час створення", + "type": "Тип", + "severity": "Серйозність", + "originator": "Ініціатор", + "originator-type": "Тип ініціатора", + "details": "Деталі", + "originator-label": "Маркування ініціатора", + "assign": "Призначити", + "assignments": "Призначення", + "assignee": "Призначений", + "assignee-id": "ID призначеного", + "assignee-first-name": "Ім'я призначеного", + "assignee-last-name": "Прізвище призначеного", + "assignee-email": "Email призначеного", + "unassigned": "Не призначено", + "user-deleted": "Користувача видалено", + "assignee-not-set": "Усі", + "status": "Статус", + "alarm-details": "Деталі тривоги", + "start-time": "Час початку", + "assign-time": "Час призначення", + "end-time": "Час завершення", + "ack-time": "Час підтвердження", + "clear-time": "Час очищення", + "duration": "Тривалість", + "alarm-severity": "Серйозність тривоги", + "alarm-severity-list": "Список рівнів серйозності тривоги", + "any-severity": "Будь-яка серйозність", + "severity-critical": "Критична", + "severity-major": "Висока", + "severity-minor": "Низька", + "severity-warning": "Попередження", + "severity-indeterminate": "Невизначена", + "acknowledge": "Підтвердити", + "clear": "Очистити", + "delete": "Видалити", + "search": "Пошук тривог", + "selected-alarms": "Вибрано { count, plural, =1 {1 тривогу} other {# тривог} }", + "no-data": "Немає даних для відображення", + "polling-interval": "Інтервал опитування тривог (с)", + "polling-interval-required": "Потрібно вказати інтервал опитування тривог.", + "min-polling-interval-message": "Дозволено інтервал опитування щонайменше 1 с.", + "aknowledge-alarms-title": "Підтвердити { count, plural, =1 {1 тривогу} other {# тривог} }", + "aknowledge-alarms-text": "Ви впевнені, що хочете підтвердити { count, plural, =1 {1 тривогу} other {# тривог} }?", + "aknowledge-alarm-title": "Підтвердити тривогу", + "aknowledge-alarm-text": "Ви впевнені, що хочете підтвердити тривогу?", + "selected-alarms-are-acknowledged": "Вибрані тривоги вже підтверджено", + "clear-alarms-title": "Очистити { count, plural, =1 {1 тривогу} other {# тривог} }", + "clear-alarms-text": "Ви впевнені, що хочете очистити { count, plural, =1 {1 тривогу} other {# тривог} }?", + "clear-alarm-title": "Очистити тривогу", + "clear-alarm-text": "Ви впевнені, що хочете очистити тривогу?", + "delete-alarms-title": "Видалити { count, plural, =1 {1 тривогу} other {# тривог} }", + "delete-alarms-text": "Ви впевнені, що хочете видалити { count, plural, =1 {1 тривогу} other {# тривог} }?", + "selected-alarms-are-cleared": "Вибрані тривоги вже очищено", + "alarm-status-filter": "Фільтр статусу тривоги", + "alarm-filter-title": "Фільтр тривог", + "assigned": "Призначено", + "filter-title": "Фільтр", + "max-count-load": "Максимальна кількість тривог для завантаження (0 — без обмежень)", + "max-count-load-required": "Потрібно вказати максимальну кількість тривог для завантаження.", + "max-count-load-error-min": "Мінімальне значення — 0.", + "fetch-size": "Розмір вибірки", + "fetch-size-required": "Потрібно вказати розмір вибірки.", + "fetch-size-error-min": "Мінімальне значення — 10.", + "alarm-types": "Типи тривог", + "alarm-type-list": "Список типів тривог", + "any-type": "Будь-який тип", + "assigned-to-current-user": "Призначено поточному користувачу", + "assigned-to-me": "Призначено мені", + "search-propagated-alarms": "Пошук поширених тривог", + "comments": "Коментарі тривоги", + "show-more": "Показати більше", + "additional-info": "Додаткова інформація", + "alarm-type": "Тип тривоги", + "enter-alarm-type": "Ввести тип тривоги", + "no-alarm-types-matching": "Не знайдено типів тривог, що відповідають '{{entitySubtype}}'.", + "alarm-type-list-empty": "Типи тривог не вибрано." + }, + "alarm-activity": { + "add": "Додати коментар...", + "alarm-comment": "Коментар тривоги", + "comments": "Коментарі", + "delete-alarm-comment": "Ви хочете видалити цей коментар?", + "refresh": "Оновити", + "oldest-first": "Спочатку старіші", + "newest-first": "Спочатку новіші", + "activity": "Активність", + "export": "Експортувати в CSV", + "author": "Автор", + "created-date": "Дата створення", + "edited-date": "Дата редагування", + "text": "Текст", + "system": "Система" + }, + "alias": { + "add": "Додати псевдонім", + "edit": "Редагувати псевдонім", + "name": "Назва псевдоніма", + "name-required": "Потрібно вказати назву псевдоніма", + "duplicate-alias": "Псевдонім з такою самою назвою вже існує.", + "filter-type-single-entity": "Одна сутність", + "filter-type-entity-list": "Список сутностей", + "filter-type-entity-name": "Назва сутності", + "filter-type-entity-type": "Тип сутності", + "filter-type-state-entity": "Сутність зі стану дашборду", + "filter-type-state-entity-description": "Сутність, взята з параметрів стану дашборду", + "filter-type-asset-type": "Тип активу", + "filter-type-asset-type-description": "Активи типу '{{assetTypes}}'", + "filter-type-asset-type-and-name-description": "Активи типу '{{assetTypes}}' та з назвою, що починається з '{{prefix}}'", + "filter-type-device-type": "Тип пристрою", + "filter-type-device-type-description": "Пристрої типу '{{deviceTypes}}'", + "filter-type-device-type-and-name-description": "Пристрої типу '{{deviceTypes}}' та з назвою, що починається з '{{prefix}}'", + "filter-type-entity-view-type": "Тип фрагмента сутності", + "filter-type-entity-view-type-description": "Фрагменти сутностей типу '{{entityViewTypes}}'", + "filter-type-entity-view-type-and-name-description": "Фрагменти сутностей типу '{{entityViewTypes}}' та з назвою, що починається з '{{prefix}}'", + "filter-type-edge-type": "Тип Edge", + "filter-type-edge-type-description": "Edges типу '{{edgeTypes}}'", + "filter-type-edge-type-and-name-description": "Edges типу '{{edgeTypes}}' та з назвою, що починається з '{{prefix}}'", + "filter-type-relations-query": "Запит зв'язків", + "filter-type-relations-query-description": "{{entities}}, що мають зв'язок {{relationType}} {{direction}} {{rootEntity}}", + "filter-type-edge-search-query": "Запит пошуку Edge", + "filter-type-edge-search-query-description": "Edges з типами {{edgeTypes}}, що мають зв'язок {{relationType}} {{direction}} {{rootEntity}}", + "filter-type-asset-search-query": "Запит пошуку активів", + "filter-type-asset-search-query-description": "Активи з типами {{assetTypes}}, що мають зв'язок {{relationType}} {{direction}} {{rootEntity}}", + "filter-type-device-search-query": "Запит пошуку пристроїв", + "filter-type-device-search-query-description": "Пристрої з типами {{deviceTypes}}, що мають зв'язок {{relationType}} {{direction}} {{rootEntity}}", + "filter-type-entity-view-search-query": "Запит пошуку фрагментів сутностей", + "filter-type-entity-view-search-query-description": "Фрагмент сутностей з типами {{entityViewTypes}}, що мають зв'язок {{relationType}} {{direction}} {{rootEntity}}", + "filter-type-apiUsageState": "Стан використання API", + "entity-filter": "Фільтр сутностей", + "resolve-multiple": "Визначати як кілька сутностей", + "resolve-multiple-hint": "Увімкніть, щоб відображати дані з усіх відфільтрованих сутностей одночасно. \nЯкщо вимкнено, віджет показує дані лише для вибраної сутності.", + "filter-type": "Тип фільтра", + "filter-type-required": "Потрібно вказати тип фільтра.", + "entity-filter-no-entity-matched": "Не знайдено сутностей, що відповідають указаному фільтру.", + "no-entity-filter-specified": "Фільтр сутностей не задано", + "root-state-entity": "Використовувати сутність стану дашборду як кореневу", + "last-level-relation": "Отримувати лише зв'язок останнього рівня", + "root-entity": "Коренева сутність", + "state-entity-parameter-name": "Назва параметра стану сутності", + "default-state-entity": "Сутність стану за замовчуванням", + "default-entity-parameter-name": "За замовчуванням", + "query-options": "Параметри запиту", + "max-relation-level": "Максимальний рівень зв'язків", + "unlimited-level": "Без обмежень", + "state-entity": "Сутність стану дашборду", + "all-entities": "Усі сутності", + "any-relation": "будь-який" + }, + "asset": { + "asset": "Актив", + "assets": "Активи", + "management": "Керування активами", + "view-assets": "Переглянути активи", + "add": "Додати актив", + "asset-type-max-length": "Тип активу має бути меншим за 256", + "assign-to-customer": "Призначити клієнту", + "assign-asset-to-customer": "Призначити актив(и) клієнту", + "assign-asset-to-customer-text": "Будь ласка, виберіть активи, які потрібно призначити клієнту", + "no-assets-text": "Активів не знайдено", + "assign-to-customer-text": "Будь ласка, виберіть клієнта, якому потрібно призначити актив(и)", + "public": "Публічний", + "assignedToCustomer": "Призначено клієнту", + "make-public": "Зробити актив публічним", + "make-private": "Зробити актив приватним", + "unassign-from-customer": "Скасувати призначення клієнту", + "delete": "Видалити актив", + "asset-public": "Актив є публічним", + "asset-type": "Тип активу", + "asset-type-required": "Потрібно вказати тип активу.", + "select-asset-type": "Вибрати тип активу", + "enter-asset-type": "Ввести профіль активу", + "any-asset": "Будь-який актив", + "no-asset-types-matching": "Не знайдено типів активів, що відповідають '{{entitySubtype}}'.", + "asset-type-list-empty": "Типи активів не вибрано.", + "asset-types": "Типи активів", + "name": "Назва", + "name-required": "Потрібно вказати назву.", + "name-max-length": "Назва має бути меншою за 256", + "label-max-length": "Маркування має бути меншим за 256", + "description": "Опис", + "type": "Тип", + "type-required": "Потрібно вказати тип.", + "details": "Деталі", + "events": "Події", + "add-asset-text": "Додати новий актив", + "asset-details": "Деталі активу", + "assign-assets": "Призначити активи", + "assign-assets-text": "Призначити { count, plural, =1 {1 актив} other {# активів} } клієнту", + "assign-asset-to-edge-title": "Призначити актив(и) для Edge", + "assign-asset-to-edge-text": "Будь ласка, виберіть активи, які потрібно призначити для edge", + "delete-assets": "Видалити активи", + "unassign-assets": "Скасувати призначення активів", + "unassign-assets-action-title": "Скасувати призначення { count, plural, =1 {1 активу} other {# активів} } клієнту", + "assign-new-asset": "Призначити новий актив", + "delete-asset-title": "Ви впевнені, що хочете видалити актив '{{assetName}}'?", + "delete-asset-text": "Будьте обережні: після підтвердження актив і всі пов'язані дані буде неможливо відновити.", + "delete-assets-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 актив} other {# активів} }?", + "delete-assets-action-title": "Видалити { count, plural, =1 {1 актив} other {# активів} }", + "delete-assets-text": "Будьте обережні: після підтвердження всі вибрані активи буде видалено, а всі пов'язані дані буде неможливо відновити.", + "make-public-asset-title": "Ви впевнені, що хочете зробити актив '{{assetName}}' публічним?", + "make-public-asset-text": "Після підтвердження актив і всі його дані стануть публічними та доступними іншим.", + "make-private-asset-title": "Ви впевнені, що хочете зробити актив '{{assetName}}' приватним?", + "make-private-asset-text": "Після підтвердження актив і всі його дані стануть приватними та не будуть доступні іншим.", + "unassign-asset-title": "Ви впевнені, що хочете скасувати призначення активу '{{assetName}}'?", + "unassign-asset-text": "Після підтвердження призначення активу буде скасовано, і він не буде доступний клієнту.", + "unassign-asset": "Скасувати призначення активу", + "unassign-assets-title": "Ви впевнені, що хочете скасувати призначення { count, plural, =1 {1 активу} other {# активів} }?", + "unassign-assets-text": "Після підтвердження призначення всіх вибраних активів буде скасовано, і вони не будуть доступні клієнту.", + "copyId": "Копіювати Id активу", + "idCopiedMessage": "Id активу скопійовано в буфер обміну", + "select-asset": "Вибрати актив", + "no-assets-matching": "Не знайдено активів, що відповідають '{{entity}}'.", + "asset-required": "Потрібно вказати актив.", + "name-starts-with": "Вираз назви активу", + "help-text": "Використовуйте '%' за потребою: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", + "search": "Пошук активів", + "import": "Імпортувати активи", + "asset-file": "Файл активів", + "label": "Маркування", + "assign-asset-to-edge": "Призначити актив(и) для Edge", + "unassign-asset-from-edge": "Скасувати призначення активу", + "unassign-asset-from-edge-title": "Ви впевнені, що хочете скасувати призначення активу '{{assetName}}'?", + "unassign-asset-from-edge-text": "Після підтвердження призначення активу буде скасовано, і він не буде доступний для edge.", + "unassign-assets-from-edge-title": "Ви впевнені, що хочете скасувати призначення { count, plural, =1 {1 активу} other {# активів} }?", + "unassign-assets-from-edge-text": "Після підтвердження призначення всіх вибраних активів буде скасовано, і вони не будуть доступні для edge.", + "selected-assets": "Вибрано { count, plural, =1 {1 актив} other {# активів} }" + }, + "attribute": { + "attributes": "Атрибути", + "latest-telemetry": "Остання телеметрія", + "no-latest-telemetry": "Останньої телеметрії немає", + "attributes-scope": "Область атрибутів сутності", + "scope-telemetry": "Телеметрія", + "scope-latest-telemetry": "Остання телеметрія", + "scope-client": "Клієнтські атрибути", + "scope-server": "Серверні атрибути", + "scope-shared": "Спільні атрибути", + "scope-client-short": "Клієнт", + "scope-server-short": "Сервер", + "scope-shared-short": "Спільні", + "scope-latest-short": "Остання", + "scope-any": "Будь-яка", + "add": "Додати атрибут", + "key": "Ключ", + "key-max-length": "Ключ має бути меншим за 256", + "last-update-time": "Час останнього оновлення", + "key-required": "Потрібно вказати ключ атрибуту.", + "value": "Значення", + "value-required": "Потрібно вказати значення атрибуту.", + "telemetry-key-required": "Потрібно вказати ключ телеметрії", + "telemetry-value-required": "Потрібно вказати значення телеметрії", + "delete-attributes-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 атрибут} other {# атрибутів} }?", + "delete-attributes-text": "Будьте обережні: після підтвердження всі вибрані атрибути буде видалено.", + "delete-attributes": "Видалити атрибути", + "enter-attribute-value": "Ввести значення атрибуту", + "show-on-widget": "Показувати на віджеті", + "widget-mode": "Режим віджета", + "next-widget": "Наступний віджет", + "prev-widget": "Попередній віджет", + "add-to-dashboard": "Додати до дашборду", + "add-widget-to-dashboard": "Додати віджет до дашборду", + "selected-attributes": "Вибрано { count, plural, =1 {1 атрибут} other {# атрибутів} }", + "selected-telemetry": "Вибрано { count, plural, =1 {1 одиницю телеметрії} other {# юнітів телеметрії} }", + "no-attributes-text": "Атрибутів не знайдено", + "no-telemetry-text": "Телеметрії не знайдено", + "copy-key": "Копіювати ключ", + "add-telemetry": "Додати телеметрію", + "copy-value": "Копіювати значення", + "delete-timeseries": { + "start-time": "Час початку", + "ends-on": "Завершується", + "strategy": "Стратегія", + "delete-strategy": "Стратегія видалення", + "all-data": "Видалити всі дані", + "all-data-except-latest-value": "Видалити всі дані, крім останнього значення", + "latest-value": "Видалити останнє значення", + "all-data-for-time-period": "Видалити всі дані за період часу", + "rewrite-latest-value": "Перезаписати останнє значення" + } + }, + "api-usage": { + "api-features": "Можливості API", + "api-usage": "Використання API", + "alarm": "Тривога", + "alarms-created": "Створені тривоги", + "queue-stats": "Статистика черги", + "processing-failures-and-timeouts": "Збої обробки та тайм-аути", + "exceptions": "Винятки", + "alarms-created-daily-activity": "Щоденна активність створення тривог", + "alarms-created-hourly-activity": "Погодинна активність створення тривог", + "alarms-created-monthly-activity": "Щомісячна активність створення тривог", + "data-points": "Точки даних", + "data-points-storage-days": "Дні зберігання точок даних", + "device-api": "API пристроїв", + "email": "Email", + "email-messages": "Повідомлення Email", + "email-messages-daily-activity": "Щоденна активність повідомлень Email", + "email-messages-monthly-activity": "Щомісячна активність повідомлень Email", + "executions": "Виконання", + "scripts": "Скрипти", + "scripts-hourly-activity": "Погодинна активність скриптів", + "scripts-daily-activity": "Щоденна активність скриптів", + "scripts-monthly-activity": "Щомісячна активність скриптів", + "javascript": "JavaScript", + "javascript-executions": "Виконання JavaScript", + "tbel": "TBEL", + "tbel-executions": "Виконання TBEL", + "latest-error": "Остання помилка", + "messages": "Повідомлення", + "notifications": "Сповіщення", + "notifications-email-sms": "Сповіщення (Email/SMS)", + "notifications-hourly-activity": "Погодинна активність сповіщень", + "permanent-failures": "${entityName} Перманентні збої", + "permanent-timeouts": "${entityName} Перманентні тайм-аути", + "processing-failures": "${entityName} Збої обробки", + "processing-timeouts": "${entityName} Тайм-аути обробки", + "rule-chain": "Ланцюг правил", + "rule-engine": "Механізм правил", + "rule-engine-executions": "Виконання механізму правил", + "rule-engine-hourly-activity": "Погодинна активність механізму правил", + "rule-engine-daily-activity": "Щоденна активність механізму правил", + "rule-engine-monthly-activity": "Щомісячна активність механізму правил", + "rule-engine-statistics": "Статистика механізму правил", + "rule-node": "Вузол правила", + "sms": "SMS", + "sms-messages": "SMS-повідомлення", + "sms-messages-daily-activity": "Щоденна активність SMS-повідомлень", + "sms-messages-monthly-activity": "Щомісячна активність SMS-повідомлень", + "successful": "${entityName} Успішно", + "telemetry": "Телеметрія", + "telemetry-persistence": "Збереження телеметрії", + "telemetry-persistence-daily-activity": "Щоденна активність збереження телеметрії", + "telemetry-persistence-hourly-activity": "Погодинна активність збереження телеметрії", + "telemetry-persistence-monthly-activity": "Щомісячна активність збереження телеметрії", + "transport": "Транспорт", + "transport-daily-activity": "Щоденна активність транспорту", + "transport-data-points": "Транспортні точки даних", + "view-details": "Переглянути деталі", + "view-statistics": "Переглянути статистику", + "transport-messages": "Транспортні повідомлення" + }, + "api-limit": { + "cassandra-write-queries-core": "Запити запису Cassandra для Rest API", + "cassandra-read-queries-core": "Запити читання Cassandra телеметрії для Rest API та WS", + "cassandra-write-queries-rule-engine": "Запити запису Cassandra телеметрії механізму правил", + "cassandra-read-queries-rule-engine": "Запити читання Cassandra телеметрії механізму правил", + "cassandra-write-queries-monolith": "Запити запису Cassandra телеметрії Monolith", + "cassandra-read-queries-monolith": "Запити читання Cassandra телеметрії Monolith", + "entity-version-creation": "Створення версії сутності", + "entity-version-load": "Завантаження версії сутності", + "notification-requests": "Запити сповіщень", + "notification-requests-per-rule": "Запити сповіщень на правило", + "rest-api-requests": "Запити REST API", + "rest-api-requests-per-customer": "Запити REST API на клієнта", + "transport-messages": "Транспортні повідомлення", + "transport-messages-per-device": "Транспортні повідомлення на пристрій", + "transport-messages-per-gateway": "Транспортні повідомлення на gateway", + "transport-messages-per-gateway-device": "Транспортні повідомлення на gateway пристрій", + "ws-updates-per-session": "Оновлення WS на сеанс", + "edge-events": "Події Edge", + "edge-events-per-edge": "Події Edge на Edge", + "edge-uplink-messages": "Повідомлення uplink Edge", + "edge-uplink-messages-per-edge": "Повідомлення uplink Edge на Edge" + }, + "audit-log": { + "audit": "Аудит", + "audit-logs": "Журнали аудиту", + "timestamp": "Мітка часу", + "entity-type": "Тип сутності", + "entity-name": "Назва сутності", + "user": "Користувач", + "type": "Тип", + "status": "Статус", + "details": "Деталі", + "type-added": "Додано", + "type-deleted": "Видалено", + "type-updated": "Оновлено", + "type-attributes-updated": "Атрибути оновлено", + "type-attributes-deleted": "Атрибути видалено", + "type-rpc-call": "Виклик RPC", + "type-credentials-updated": "Облікові дані оновлено", + "type-assigned-to-customer": "Призначено клієнту", + "type-unassigned-from-customer": "Скасовано призначення клієнту", + "type-assigned-to-edge": "Призначено для Edge", + "type-unassigned-from-edge": "Скасовано призначення для Edge", + "type-activated": "Активовано", + "type-suspended": "Призупинено", + "type-credentials-read": "Облікові дані прочитано", + "type-attributes-read": "Атрибути прочитано", + "type-relation-add-or-update": "Зв'язок оновлено", + "type-relation-delete": "Зв'язок видалено", + "type-relations-delete": "Усі зв'язки видалено", + "type-alarm-ack": "Тривогу підтверджено", + "type-alarm-clear": "Тривогу очищено", + "type-alarm-delete": "Тривогу видалено", + "type-alarm-assign": "Тривогу призначено", + "type-alarm-unassign": "Призначення тривоги скасовано", + "type-added-comment": "Коментар додано", + "type-updated-comment": "Коментар оновлено", + "type-deleted-comment": "Коментар видалено", + "type-login": "Вхід", + "type-logout": "Вихід", + "type-lockout": "Блокування", + "status-success": "Успішно", + "status-failure": "Неуспішно", + "audit-log-details": "Деталі журналу аудиту", + "no-audit-logs-prompt": "Записів не знайдено", + "action-data": "Дані дії", + "failure-details": "Деталі помилки", + "search": "Пошук журналів аудиту", + "clear-search": "Очистити пошук", + "type-assigned-from-tenant": "Призначено від тенанта", + "type-assigned-to-tenant": "Призначено тенанту", + "type-provision-success": "Пристрій підготовлено", + "type-provision-failure": "Не вдалося підготувати пристрій", + "type-timeseries-updated": "Телеметрію оновлено", + "type-timeseries-deleted": "Телеметрію видалено", + "type-sms-sent": "SMS надіслано" + }, + "debug-settings": { + "label": "Конфігурація налагодження", + "on-failure": "Лише збої (24/7)", + "all-messages": "Усі повідомлення ({{time}})", + "failures": "Збої", + "entity": "сутність", + "hint": { + "main-limited": "Буде записано не більше ніж {{msg}} налагоджувальних повідомлень {{entity}} за {{time}}.", + "on-failure": "Записувати лише повідомлення про помилки.", + "all-messages": "Записувати всі налагоджувальні повідомлення." + } + }, + "calculated-fields": { + "expression": "Вираз", + "no-found": "Розрахункових полів не знайдено", + "list": "{ count, plural, =1 {Одне розрахункове поле} other {Список із # розрахункових полів} }", + "selected-fields": "Вибрано { count, plural, =1 {1 розрахункове поле} other {# розрахункових полів} }", + "type": { + "simple": "Просте", + "script": "Скрипт" + }, + "arguments": "Аргументи", + "decimals-by-default": "Десяткові знаки за замовчуванням", + "debugging": "Налагодження розрахункових полів", + "argument-name": "Назва аргументу", + "datasource": "Джерело даних", + "add-argument": "Додати аргумент", + "test-script-function": "Тестувати функцію скрипту", + "no-arguments": "Потрібен щонайменше один аргумент.", + "argument-settings": "Налаштування аргументу", + "argument-current": "Поточна сутність", + "argument-current-tenant": "Поточний тенант", + "argument-device": "Пристрій", + "argument-asset": "Актив", + "argument-customer": "Клієнт", + "argument-tenant": "Поточний тенант", + "argument-type": "Тип аргументу", + "attribute": "Атрибут", + "copy-argument-name": "Копіювати назву аргументу", + "timeseries-key": "Ключ часового ряду", + "device-name": "Назва пристрою", + "latest-telemetry": "Остання телеметрія", + "rolling": "Ковзне вікно часового ряду", + "attribute-scope": "Область атрибуту", + "server-attributes": "Серверні атрибути", + "client-attributes": "Клієнтські атрибути", + "shared-attributes": "Спільні атрибути", + "attribute-key": "Ключ атрибуту", + "default-value": "Значення за замовчуванням", + "limit": "Максимум значень", + "time-window": "Часове вікно", + "customer-name": "Назва клієнта", + "asset-name": "Назва активу", + "timeseries": "Часовий ряд", + "output": "Вихідні дані", + "create": "Створити нове розрахункове поле", + "file": "Файл розрахункового поля", + "invalid-file-error": "Некоректний формат файлу. Будь ласка, переконайтеся, що файл є валідним JSON-файлом.", + "import": "Імпортувати розрахункове поле", + "export": "Експортувати розрахункове поле", + "export-failed-error": "Не вдалося експортувати розрахункове поле: {{error}}", + "output-type": "Тип вихідних даних", + "delete-title": "Ви впевнені, що хочете видалити розрахункове поле '{{title}}'?", + "delete-text": "Будьте обережні: після підтвердження розрахункове поле та всі пов'язані дані буде неможливо відновити.", + "delete-multiple-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 розрахункове поле} other {# розрахункових полів} }?", + "delete-multiple-text": "Будьте обережні: після підтвердження всі вибрані розрахункові поля буде видалено, а всі пов'язані дані буде неможливо відновити.", + "test-with-this-message": "Тестувати з цим повідомленням", + "use-latest-timestamp": "Використовувати останню мітку часу", + "hint": { + "arguments-simple-with-rolling": "Розрахункове поле типу 'Просте' не повинно містити ключів типу 'Ковзне вікно часового ряду'.", + "arguments-empty": "Потрібно вказати щонайменше один аргумент.", + "expression-required": "Потрібно вказати вираз.", + "expression-invalid": "Некоректний вираз", + "expression-max-length": "Довжина виразу має бути меншою за 255 символів.", + "argument-name-required": "Потрібно вказати назву аргументу.", + "argument-name-pattern": "Некоректна назва аргументу.", + "argument-name-duplicate": "Аргумент з такою назвою вже існує.", + "argument-name-max-length": "Назва аргументу має бути меншою за 256 символів.", + "argument-name-forbidden": "Назва аргументу зарезервована і не може використовуватися.", + "argument-type-required": "Потрібно вказати тип аргументу.", + "max-args": "Досягнуто максимальної кількості аргументів.", + "decimals-range": "Десяткові знаки за замовчуванням мають бути числом від 0 до 15.", + "expression": "Вираз за замовчуванням демонструє, як перетворити температуру з Фаренгейта на Цельсій.", + "arguments-entity-not-found": "Цільову сутність аргументу не знайдено.", + "use-latest-timestamp": "Якщо увімкнено, розраховане значення буде збережено з використанням найновішої мітки часу з телеметрії аргументів замість часу сервера." + } + }, + "ai-models": { + "ai-models": "AI-моделі", + "ai-model": "AI-модель", + "model": "Модель", + "name": "Назва", + "ai-provider": "AI-провайдер", + "no-found": "AI-моделей не знайдено", + "list": "{ count, plural, =1 {Одна модель} other {Список із # моделей} }", + "selected-fields": "{ count, plural, =1 {Вибрано 1 модель} other {Вибрано #} }", + "add": "Додати модель", + "delete-model-title": "Ви впевнені, що хочете видалити модель '{{modelName}}'?", + "delete-model-text": "Будьте обережні: після підтвердження модель і всі пов'язані дані буде неможливо відновити.", + "delete-models-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 модель} other {# моделей} }?", + "delete-models-text": "Будьте обережні: після підтвердження всі вибрані моделі буде видалено, а всі пов'язані дані буде неможливо відновити.", + "ai-providers": { + "openai": "OpenAI", + "azure-openai": "Azure OpenAI", + "google-ai-gemini": "Google AI Gemini", + "google-vertex-ai-gemini": "Google Vertex AI Gemini", + "mistral-ai": "Mistral AI", + "anthropic": "Anthropic", + "amazon-bedrock": "Amazon Bedrock", + "github-models": "GitHub Models", + "ollama": "Ollama" + }, + "name-required": "Потрібно вказати назву.", + "name-max-length": "Назва має містити не більше ніж 255 символів.", + "provider": "Провайдер", + "api-key": "API-ключ", + "api-key-required": "Потрібно вказати API-ключ.", + "api-key-open-ai-required": "Потрібно вказати API-ключ під час використання офіційного OpenAI API.", + "project-id": "ID проєкту", + "project-id-required": "Потрібно вказати ID проєкту", + "location": "Розташування", + "location-required": "Потрібно вказати розташування.", + "service-account-key-file": "Файл ключа службового облікового запису", + "service-account-key-file-required": "Потрібно вказати файл ключа службового облікового запису.", + "no-file": "Файл не вибрано.", + "drop-file": "Перетягніть файл або натисніть, щоб вибрати файл для завантаження.", + "personal-access-token": "Персональний токен доступу", + "personal-access-token-required": "Потрібно вказати персональний токен доступу.", + "configuration": "Конфігурація", + "model-id": "Model ID", + "model-id-required": "Потрібно вказати Model ID.", + "deployment-name": "Назва розгортання", + "deployment-name-required": "Потрібно вказати назву розгортання", + "set": "Встановити", + "region": "Регіон", + "region-required": "Потрібно вказати регіон.", + "access-key-id": "Access key ID", + "access-key-id-required": "Потрібно вказати Access key ID.", + "secret-access-key": "Секретний ключ доступу", + "secret-access-key-required": "Потрібно вказати секретний ключ доступу.", + "temperature": "Температура", + "temperature-hint": "Налаштовує рівень випадковості у вихідних даних моделі. Вищі значення збільшують випадковість, нижчі — зменшують її.", + "temperature-min": "Має бути 0 або більше.", + "top-p": "Top P", + "top-p-hint": "Створює пул найбільш імовірних токенів, з яких модель обирає. Вищі значення створюють більший і різноманітніший пул, нижчі — менший.", + "top-p-min-max": "Має бути більше ніж 0 і не більше ніж 1.", + "top-k": "Top K", + "top-k-hint": "Обмежує вибір моделі фіксованим набором \"K\" найімовірніших токенів.", + "top-k-min": "Має бути 0 або більше.", + "presence-penalty": "Штраф присутності", + "presence-penalty-hint": "Застосовує фіксований штраф до ймовірності токена, якщо він уже з'являвся в тексті.", + "frequency-penalty": "Штраф частоти", + "frequency-penalty-hint": "Застосовує штраф до ймовірності токена, що збільшується залежно від його частоти в тексті.", + "max-output-tokens": "Максимальна кількість вихідних токенів", + "max-output-tokens-hint": "Встановлює максимальну кількість токенів, які \nмодель може згенерувати в одній відповіді.", + "context-length": "Довжина контексту", + "context-length-hint": "Визначає розмір вікна контексту в токенах. Це значення задає загальне обмеження пам'яті моделі, включно з введенням користувача та згенерованою відповіддю.", + "endpoint": "Endpoint", + "endpoint-required": "Endpoint is required.", + "baseurl": "Base URL", + "baseurl-required": "Base URL є обов'язковим.", + "service-version": "Версія сервісу", + "check-connectivity": "Перевірити підключення", + "check-connectivity-success": "Тестовий запит виконано успішно", + "check-connectivity-failed": "Тестовий запит не виконано", + "no-model-matching": "Не знайдено моделей, що відповідають '{{entity}}'.", + "model-required": "Потрібно вказати модель.", + "no-model-text": "Моделей не знайдено.", + "authentication": "Автентифікація", + "authentication-basic-hint": "Використовує стандартну HTTP Basic автентифікацію. Ім'я користувача та пароль буде об'єднано, закодовано Base64 і надіслано в заголовку \"Authorization\" з кожним запитом до сервера Ollama.", + "authentication-token-hint": "Використовує автентифікацію Bearer токеном. Наданий токен буде надіслано безпосередньо в заголовку \"Authorization\" з кожним запитом до сервера Ollama.", + "authentication-type": { + "none": "Немає", + "basic": "Basic", + "token": "Токен" + }, + "username": "Ім'я користувача", + "username-required": "Потрібно вказати ім'я користувача.", + "password": "Пароль", + "password-required": "Потрібно вказати пароль.", + "token": "Токен", + "token-required": "Потрібно вказати токен." + }, + "confirm-on-exit": { + "message": "У Вас є незбережені зміни. Ви впевнені, що хочете покинути цю сторінку?", + "html-message": "У Вас є незбережені зміни.
Ви впевнені, що хочете покинути цю сторінку?", + "title": "Незбережені зміни" + }, + "contact": { + "country": "Країна", + "country-required": "Потрібно вказати країну.", + "country-object-required": "Будь ласка, виберіть дійсну країну зі списку.", + "city": "Місто", + "state": "Штат / Провінція", + "postal-code": "Zip / Поштовий індекс", + "postal-code-invalid": "Некоректний формат Zip / Поштового індексу.", + "address": "Адреса", + "address2": "Адреса 2", + "phone": "Телефон", + "email": "Email", + "no-address": "Адресу не вказано", + "no-country-found": "Країни не знайдено.", + "no-country-matching": "Не знайдено країну, що відповідає '{{country}}'.", + "state-max-length": "Довжина штату має бути меншою за 256", + "phone-max-length": "Номер телефону має бути меншим за 256", + "city-max-length": "Вказане місто має бути меншим за 256" + }, + "common": { + "name": "Назва", + "type": "Тип", + "general": "Загальні", + "username": "Ім'я користувача", + "password": "Пароль", + "data": "Дані", + "timestamp": "Мітка часу", + "enter-username": "Ввести ім'я користувача", + "enter-password": "Ввести пароль", + "enter-search": "Ввести пошук", + "created-time": "Час створення", + "disabled": "Вимкнено", + "loading": "Завантаження...", + "proceed": "Продовжити", + "open-details-page": "Відкрити сторінку деталей", + "not-found": "Не знайдено", + "value": "Значення", + "documentation": "Документація", + "time-left": "Залишилося {{time}}", + "output": "Вихідні дані", + "suffix": { + "s": "с", + "ms": "мс" + }, + "hint": { + "name-required": "Потрібно вказати назву.", + "name-pattern": "Некоректна назва.", + "name-max-length": "Назва має бути меншою за 256 символів.", + "title-required": "Потрібно вказати заголовок.", + "title-pattern": "Некоректний заголовок.", + "title-max-length": "Заголовок має бути меншим за 256 символів.", + "key-required": "Потрібно вказати ключ.", + "key-pattern": "Некоректний ключ.", + "key-max-length": "Ключ має бути меншим за 256 символів." + }, + "required-fields": "Відсутні обов'язкові поля" + }, + "content-type": { + "json": "Json", + "text": "Текст", + "binary": "Бінарний (Base64)" + }, + "color": { + "color": "Колір" + }, + "customer": { + "customer": "Клієнт", + "customers": "Клієнти", + "management": "Керування клієнтами", + "dashboard": "Дашборд клієнта", + "dashboards": "Дашборди клієнта", + "devices": "Пристрої клієнта", + "entity-views": "Фрагмент сутностей клієнта", + "assets": "Активи клієнта", + "public-dashboards": "Публічні Дашборди", + "public-devices": "Публічні Пристрої", + "public-assets": "Публічні Активи", + "public-entity-views": "Публічні фрагменти сутностей", + "add": "Додати клієнта", + "delete": "Видалити клієнта", + "manage-customer-users": "Керувати користувачами клієнта", + "manage-customer-devices": "Керувати пристроями клієнта", + "manage-customer-dashboards": "Керувати дашбордами клієнта", + "manage-public-devices": "Керувати публічними пристроями", + "manage-public-dashboards": "Керувати публічними дашбордами", + "manage-customer-assets": "Керувати активами клієнта", + "manage-customer-edges": "Керувати edge клієнта", + "manage-public-assets": "Керувати публічними активами", + "add-customer-text": "Додати нового клієнта", + "no-customers-text": "Клієнтів не знайдено", + "customer-details": "Деталі клієнта", + "delete-customer-title": "Ви впевнені, що хочете видалити клієнта '{{customerTitle}}'?", + "delete-customer-text": "Будьте обережні, після підтвердження клієнт і всі пов'язані дані будуть неможливі для відновлення.", + "delete-customers-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 клієнта} other {# клієнтів} }?", + "delete-customers-action-title": "Видалити { count, plural, =1 {1 клієнта} other {# клієнтів} }", + "delete-customers-text": "Будьте обережні, після підтвердження всі вибрані клієнти будуть видалені, і всі пов'язані дані будуть неможливі для відновлення.", + "manage-users": "Керувати користувачами", + "manage-assets": "Керувати активами", + "manage-devices": "Керувати пристроями", + "manage-dashboards": "Керувати дашбордами", + "title": "Назва", + "title-required": "Назва є обов'язковою.", + "title-max-length": "Назва має бути коротшою за 256 символів", + "description": "Опис", + "details": "Деталі", + "events": "Події", + "copyId": "Копіювати Id клієнта", + "idCopiedMessage": "Id клієнта скопійовано в буфер обміну", + "select-customer": "Вибрати клієнта", + "no-customers-matching": "Клієнтів, що відповідають '{{entity}}', не знайдено.", + "customer-required": "Клієнт є обов'язковим.", + "select-default-customer": "Вибрати стандартного клієнта", + "default-customer": "Стандартний клієнт", + "default-customer-required": "Стандартний клієнт є обов'язковим для налагодження дашбордів на рівні тенанта", + "search": "Шукати клієнтів", + "selected-customers": "{ count, plural, =1 {1 клієнт} other {# клієнтів} } вибрано", + "edges": "Екземпляри edge клієнта", + "manage-edges": "Керувати екземплярами edge" + }, + "css-size": { + "size-value-required": "Значення розміру є обов'язковим", + "invalid-size-value": "Невірне значення розміру" + }, + "date": { + "last-update-n-ago": "Останнє оновлення N тому", + "last-update-n-ago-text": "Останнє оновлення {{ agoText }}", + "custom-date": "Користувацька дата", + "format": "Формат", + "preview": "Попередній перегляд", + "auto": "Авто", + "time-granularity-formats": "Формати гранулярності часу", + "unit-year": "Роки", + "unit-month": "Місяці", + "unit-day": "Дні", + "unit-hour": "Години", + "unit-minute": "Хвилини", + "unit-second": "Секунди", + "unit-millisecond": "Мілісекунди" + }, + "datetime": { + "date-from": "Дата з", + "time-from": "Час з", + "date-to": "Дата до", + "time-to": "Час до", + "from": "З", + "to": "До" + }, + "dashboard": { + "dashboard": "Дашборд", + "dashboards": "Дашборди", + "management": "Керування дашбордами", + "view-dashboards": "Перегляд дашбордів", + "add": "Додати дашборд", + "assign-dashboard-to-customer": "Призначити дашборд(и) клієнту", + "assign-dashboard-to-customer-text": "Будь ласка, виберіть дашборди для призначення клієнту", + "assign-to-customer-text": "Будь ласка, виберіть клієнта для призначення дашборду(ів)", + "assign-to-customer": "Призначити клієнту", + "unassign-from-customer": "Зняти призначення з клієнта", + "make-public": "Зробити дашборд публічним", + "make-private": "Зробити дашборд приватним", + "manage-assigned-customers": "Керувати призначеними клієнтами", + "assigned-customers": "Призначені клієнти", + "assign-to-customers": "Призначити дашборд(и) клієнтам", + "assign-to-customers-text": "Будь ласка, виберіть клієнтів для призначення дашборду(ів)", + "unassign-from-customers": "Зняти призначення дашборду(ів) з клієнтів", + "unassign-from-customers-text": "Будь ласка, виберіть клієнтів, щоб зняти призначення з дашборду(ів)", + "no-dashboards-text": "Дашбордів не знайдено", + "no-widgets": "Віджети не налаштовані", + "add-widget": "Додати новий віджет", + "add-widget-button-text": "Додати віджет", + "title": "Назва", + "image": "Зображення дашборду", + "mobile-app-settings": "Налаштування мобільного додатку", + "mobile-order": "Порядок дашбордів у мобільному додатку", + "mobile-hide": "Сховати дашборд у мобільному додатку", + "update-image": "Оновити зображення дашборду", + "take-screenshot": "Зробити скріншот", + "select-widget-title": "Вибрати віджет", + "select-widget-value": "{{title}}: вибрати віджет", + "select-widget-subtitle": "Список доступних типів віджетів", + "delete": "Видалити дашборд", + "title-required": "Назва є обов'язковою", + "title-max-length": "Назва має бути коротшою за 256 символів", + "description": "Опис", + "details": "Деталі", + "dashboard-details": "Деталі дашборду", + "add-dashboard-text": "Додати новий дашборд", + "assign-dashboards": "Призначити дашборди", + "assign-new-dashboard": "Призначити новий дашборд", + "assign-dashboards-text": "Призначити { count, plural, =1 {1 дашборд} other {# дашбордів} } клієнтам", + "unassign-dashboards-action-text": "Зняти призначення { count, plural, =1 {1 дашборд} other {# дашбордів} } з клієнтів", + "delete-dashboards": "Видалити дашборди", + "unassign-dashboards": "Зняти призначення з дашбордів", + "unassign-dashboards-action-title": "Ви впевнені, що хочете зняти призначення { count, plural, =1 {1 дашборд} other {# дашбордів} } з клієнта?", + "delete-dashboard-title": "Ви впевнені, що хочете видалити дашборд '{{dashboardTitle}}'?", + "delete-dashboard-text": "Будьте обережні, після підтвердження дашборд і всі пов'язані дані будуть неможливі для відновлення.", + "delete-dashboards-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 дашборд} other {# дашбордів} }?", + "delete-dashboards-action-title": "Видалити { count, plural, =1 {1 дашборд} other {# дашбордів} }", + "delete-dashboards-text": "Будьте обережні, після підтвердження всі вибрані дашборди будуть видалені, і всі пов'язані дані будуть неможливі для відновлення.", + "unassign-dashboard-title": "Ви впевнені, що хочете зняти призначення дашборду '{{dashboardTitle}}'?", + "unassign-dashboard-text": "Після підтвердження дашборд буде знятий з призначення і більше не буде доступний клієнту.", + "unassign-dashboard": "Зняти призначення з дашборду", + "unassign-dashboards-title": "Ви впевнені, що хочете зняти призначення { count, plural, =1 {1 дашборд} other {# дашбордів} }?", + "unassign-dashboards-text": "Після підтвердження всі вибрані дашборди будуть зняті з призначення і більше не будуть доступні клієнту.", + "public-dashboard-title": "Дашборд тепер публічний", + "public-dashboard-text": "Ваш дашборд {{dashboardTitle}} тепер публічний і доступний за наступним публічним посиланням:", + "public-dashboard-notice": "Примітка: Не забувайте зробити пов'язані пристрої публічними, щоб отримати доступ до їхніх даних.", + "make-private-dashboard-title": "Ви впевнені, що хочете зробити дашборд '{{dashboardTitle}}' приватним?", + "make-private-dashboard-text": "Після підтвердження дашборд стане приватним і більше не буде доступний іншим.", + "make-private-dashboard": "Зробити дашборд приватним", + "socialshare-text": "'{{dashboardTitle}}' за підтримки ThingsBoard", + "socialshare-title": "'{{dashboardTitle}}' за підтримки ThingsBoard", + "select-dashboard": "Вибрати дашборд", + "no-dashboards-matching": "Дашбордів, що відповідають '{{entity}}', не знайдено.", + "dashboard-required": "Дашборд є обов'язковим.", + "select-existing": "Вибрати існуючий дашборд", + "create-new": "Створити новий дашборд", + "new-dashboard-title": "Назва нового дашборду", + "open-dashboard": "Відкрити дашборд", + "set-background": "Встановити фон", + "background-color": "Колір фону", + "background-image": "Зображення фону", + "background-size-mode": "Режим розміру фону", + "no-image": "Зображення не вибрано", + "empty-image": "Без зображення", + "drop-image": "Перетягніть зображення або натисніть, щоб вибрати файл для завантаження.", + "maximum-upload-file-size": "Максимальний розмір файлу для завантаження: {{ size }}", + "cannot-upload-file": "Не вдалося завантажити файл", + "settings": "Налаштування", + "move-all-widgets": "Перемістити всі віджети", + "move-by": "Перемістити на", + "cols": "стовпці", + "rows": "рядки", + "layout": "Макет", + "layout-type-default": "За замовчуванням", + "layout-type-scada": "SCADA", + "layout-type-divider": "Роздільник", + "layout-settings-type": "Налаштування макету: {{ type }} точка розбиття", + "columns-count": "Кількість стовпців", + "columns-count-required": "Кількість стовпців є обов'язковою.", + "min-columns-count-message": "Допускається лише мінімальна кількість стовпців — 10.", + "max-columns-count-message": "Допускається лише максимальна кількість стовпців — 1000.", + "min-layout-width": "Мінімальна ширина макету", + "columns-suffix": "стовпці", + "widgets-margins": "Межі між віджетами", + "margin-required": "Значення межі є обов'язковим.", + "min-margin-message": "Допускається лише мінімальна межа — 0.", + "max-margin-message": "Допускається лише максимальна межа — 50.", + "horizontal-margin": "Горизонтальна межа", + "horizontal-margin-required": "Значення горизонтальної межі є обов'язковим.", + "min-horizontal-margin-message": "Допускається лише мінімальна горизонтальна межа — 0.", + "max-horizontal-margin-message": "Допускається лише максимальна горизонтальна межа — 50.", + "vertical-margin": "Вертикальна межа", + "vertical-margin-required": "Значення вертикальної межі є обов'язковим.", + "min-vertical-margin-message": "Допускається лише мінімальна вертикальна межа — 0.", + "max-vertical-margin-message": "Допускається лише максимальна вертикальна межа — 50.", + "apply-outer-margin": "Застосувати межу до бокових частин макету", + "autofill-height": "Автоматично заповнювати висоту макету", + "mobile-layout": "Налаштування макету для мобільних пристроїв", + "mobile-row-height": "Висота ряду для мобільного макету", + "mobile-row-height-required": "Значення висоти ряду для мобільного макету є обов'язковим.", + "min-mobile-row-height-message": "Допускається лише 5 пікселів як мінімальне значення висоти ряду для мобільного макету.", + "max-mobile-row-height-message": "Допускається лише 200 пікселів як максимальне значення висоти ряду для мобільного макету.", + "row-height": "Висота ряду", + "row-height-required": "Значення висоти ряду є обов'язковим.", + "min-row-height-message": "Допускається лише 5 пікселів як мінімальне значення висоти ряду.", + "max-row-height-message": "Допускається лише 200 пікселів як максимальне значення висоти ряду.", + "display-first-in-mobile-view": "Відображати першим у мобільному перегляді", + "title-settings": "Налаштування заголовка", + "display-title": "Відображати заголовок дашборду", + "title-color": "Колір заголовка", + "toolbar-settings": "Налаштування панелі інструментів", + "hide-toolbar": "Приховати панель інструментів", + "toolbar-always-open": "Тримати панель інструментів відкритою", + "display-dashboards-selection": "Відображати вибір дашбордів", + "display-entities-selection": "Відображати вибір сутностей", + "display-filters": "Відображати фільтри", + "display-dashboard-timewindow": "Відображати вікно часу для дашборду", + "display-dashboard-export": "Відображати експорт дашборду", + "display-update-dashboard-image": "Відображати оновлене зображення дашборду", + "dashboard-logo-settings": "Налаштування логотипу дашборду", + "display-dashboard-logo": "Відображати логотип в режимі повного екрану дашборду", + "dashboard-logo-image": "Зображення логотипу дашборду", + "advanced-settings": "Розширені налаштування", + "dashboard-css": "CSS дашборду", + "import": "Імпортувати дашборд", + "export": "Експортувати дашборд", + "export-failed-error": "Не вдалося експортувати дашборд: {{error}}", + "export-prompt": "Вбудувати зображення дашборду та ресурси", + "create-new-dashboard": "Створити новий дашборд", + "dashboard-file": "Файл дашборду", + "invalid-dashboard-file-error": "Не вдалося імпортувати дашборд: Невірна структура даних дашборду.", + "dashboard-import-missing-aliases-title": "Налаштуйте псевдоніми, що використовуються в імпортованому дашборді", + "create-new-widget": "Створити новий віджет", + "import-widget": "Імпортувати віджет", + "widget-file": "Файл віджету", + "invalid-widget-file-error": "Не вдалося імпортувати віджет: Невірна структура даних віджету.", + "widget-import-missing-aliases-title": "Налаштуйте псевдоніми, що використовуються в імпортованому віджеті", + "open-toolbar": "Відкрити панель інструментів дашборду", + "close-toolbar": "Закрити панель інструментів", + "configuration-error": "Помилка конфігурації", + "alias-resolution-error-title": "Помилка конфігурації псевдонімів дашборду", + "invalid-aliases-config": "Не вдалося знайти пристрої, що відповідають деяким з фільтрів псевдонімів.
Будь ласка, зв'яжіться з вашим адміністратором для вирішення цієї проблеми.", + "select-devices": "Вибрати пристрої", + "assignedToCustomer": "Призначено клієнту", + "assignedToCustomers": "Призначено клієнтам", + "public": "Публічний", + "copyId": "Копіювати id дашборду", + "idCopiedMessage": "Id дашборду скопійовано в буфер обміну", + "public-link": "Публічне посилання", + "copy-public-link": "Копіювати публічне посилання", + "public-link-copied-message": "Публічне посилання дашборду скопійовано в буфер обміну", + "manage-states": "Керувати станами дашборду", + "states": "Стан дашборду", + "states-short": "Стан", + "search-states": "Шукати стани дашборду", + "selected-states": "{ count, plural, =1 {1 стан дашборду} other {# станів дашборду} } вибрано", + "edit-state": "Редагувати стан дашборду", + "delete-state": "Видалити стан дашборду", + "add-state": "Додати стан дашборду", + "no-states-text": "Станів не знайдено", + "state": "Стан дашборду", + "state-name": "Назва", + "state-name-required": "Назва стану дашборду є обов'язковою.", + "state-id": "Id стану", + "state-id-required": "Id стану дашборду є обов'язковим.", + "state-id-exists": "Стан дашборду з таким id вже існує.", + "is-root-state": "Кореневий стан", + "delete-state-title": "Видалити стан дашборду", + "delete-state-text": "Ви впевнені, що хочете видалити стан дашборду з назвою '{{stateName}}'?", + "show-details": "Показати деталі", + "hide-details": "Сховати деталі", + "select-state": "Вибрати цільовий стан", + "state-controller": "Контролер стану", + "state-controller-default": "статичний (застарілий)", + "search": "Шукати дашборди", + "selected-dashboards": "{ count, plural, =1 {1 дашборд} other {# дашбордів} } вибрано", + "home-dashboard": "Домашній дашборд", + "home-dashboard-hide-toolbar": "Сховати панель інструментів домашнього дашборду", + "unassign-dashboard-from-edge-text": "Після підтвердження дашборд буде знятий з призначення і не буде доступний через edge.", + "unassign-dashboards-from-edge-title": "Ви впевнені, що хочете зняти призначення { count, plural, =1 {1 дашборду} other {# дашбордів} }?", + "unassign-dashboards-from-edge-text": "Після підтвердження всі вибрані дашборди будуть зняті з призначення і не будуть доступні через edge.", + "assign-dashboard-to-edge": "Призначити дашборд(и) до Edge", + "assign-dashboard-to-edge-text": "Будь ласка, виберіть дашборди для призначення до edge", + "non-existent-dashboard-state-error": "Стан дашборду з id \"{{ stateId }}\" не знайдено", + "edit-mode": "Режим редагування", + "duplicate-state-action": "Дублювати стан", + "breakpoint-value": "Точка розбиття ({{ value }})", + "breakpoints-id": { + "default": "За замовчуванням", + "xs": "Мобільний (xs)", + "sm": "Планшет (sm)", + "md": "Ноутбук (md)", + "lg": "Десктоп (lg)", + "xl": "Десктоп (xl)" + }, + "view-format-type-grid": "Сітка", + "view-format-type-list": "Список", + "view-format": "Формат перегляду" + }, + "datakey": { + "settings": "Налаштування", + "general": "Загальні", + "advanced": "Розширені", + "key": "Ключ", + "keys": "Ключі", + "label": "Маркування", + "color": "Колір", + "units": "Спеціальний символ для відображення поруч зі значенням", + "decimals": "Кількість знаків після коми", + "data-generation-func": "Функція генерації даних", + "use-data-post-processing-func": "Використовувати функцію післяобробки даних", + "configuration": "Конфігурація ключа даних", + "timeseries": "Часові ряди", + "attributes": "Атрибути", + "entity-field": "Поле сутності", + "alarm": "Поля тривог", + "timeseries-required": "Часові ряди сутності є обов'язковими.", + "timeseries-or-attributes-required": "Часові ряди/атрибути сутності є обов'язковими.", + "alarm-fields-timeseries-or-attributes-required": "Поля тривог або часові ряди/атрибути сутності є обов'язковими.", + "maximum-timeseries-or-attributes": "Максимум { count, plural, =1 {1 часовий ряд/атрибут дозволено.} other {# часових рядів/атрибутів дозволено} }", + "alarm-fields-required": "Поля тривог є обов'язковими.", + "function-types": "Типи функцій", + "function-type": "Тип функції", + "function-types-required": "Типи функцій є обов'язковими.", + "data-keys": "Ключі даних", + "data-key": "Ключ даних", + "data-keys-required": "Ключі даних є обов'язковими.", + "data-key-required": "Ключ даних є обов'язковим.", + "alarm-keys": "Ключі даних тривог", + "alarm-key": "Ключ даних тривоги", + "alarm-key-functions": "Функції ключів тривог", + "alarm-key-function": "Функція ключа тривоги", + "latest-keys": "Останні ключі даних", + "latest-key": "Останній ключ даних", + "latest-key-functions": "Функції останнього ключа", + "latest-key-function": "Функція останнього ключа", + "timeseries-keys": "Ключі даних часових рядів", + "timeseries-key": "Ключ даних часового ряду", + "timeseries-key-functions": "Функції ключів даних часового ряду", + "timeseries-key-function": "Функція ключа даних часового ряду", + "maximum-function-types": "Максимум { count, plural, =1 {1 тип функції дозволено.} other {# типів функцій дозволено} }", + "time-description": "часова позначка поточного значення;", + "value-description": "поточне значення;", + "prev-value-description": "результат попереднього виклику функції;", + "time-prev-description": "часова позначка попереднього значення;", + "prev-orig-value-description": "оригінальне попереднє значення;", + "aggregation": "Агрегація", + "aggregation-type-hint-common": "Для підвищення продуктивності обчислення агрегованих значень доступні лише для фіксованих часових інтервалів, таких як \"поточний день\", \"поточний місяць\" тощо, і недоступні для інтервалів ковзаючого вікна, таких як 'останні 30 хвилин' або 'останні 24 години'.", + "aggregation-type-none-hint": "Взяти останнє значення.", + "aggregation-type-min-hint": "Знайти мінімальне значення серед точок даних у вибраному часовому інтервалі.", + "aggregation-type-max-hint": "Знайти максимальне значення серед точок даних у вибраному часовому інтервалі.", + "aggregation-type-avg-hint": "Обчислити середнє значення серед точок даних у вибраному часовому інтервалі.", + "aggregation-type-sum-hint": "Підсумувати всі значення точок даних у вибраному часовому інтервалі.", + "aggregation-type-count-hint": "Загальна кількість точок даних у вибраному часовому інтервалі.", + "delta-calculation": "Обчислення дельти", + "enable-delta-calculation": "Увімкнути обчислення дельти", + "enable-delta-calculation-hint": "Коли увімкнено, значення ключа даних обчислюється на основі агрегованих значень для вибраного часового інтервалу і вказаного періоду порівняння. Для підвищення продуктивності обчислення дельти доступне тільки для історичних часових інтервалів і не для значень у реальному часі. Наприклад, можна обчислити дельту між споживанням енергії за вчорашній день і споживанням енергії за позавчорашній день.", + "delta-calculation-result": "Результат обчислення дельти", + "delta-calculation-result-previous-value": "Попереднє значення", + "delta-calculation-result-delta-absolute": "Дельта (абсолютна)", + "delta-calculation-result-delta-percent": "Дельта (у відсотках)", + "source": "Джерело", + "latest": "Останнє", + "latest-value": "Останнє значення", + "delta": "дельта", + "percent": "відсоток", + "absolute": "абсолютне" + }, + "datasource": { + "type": "Тип джерела даних", + "name": "Назва", + "label": "Маркування", + "add-datasource-prompt": "Будь ласка, додайте джерело даних" + }, + "details": { + "details": "Деталі", + "edit-mode": "Режим редагування", + "edit-json": "Редагувати JSON", + "toggle-edit-mode": "Перемикати режим редагування" + }, + "device": { + "device": "Пристрій", + "device-required": "Пристрій є обов'язковим.", + "devices": "Пристрої", + "management": "Керування пристроями", + "view-devices": "Перегляд пристроїв", + "device-alias": "Псевдонім пристрою", + "device-type-max-length": "Тип пристрою має бути коротшим за 256 символів", + "aliases": "Псевдоніми пристроїв", + "no-alias-matching": "'{{alias}}' не знайдено.", + "no-aliases-found": "Псевдонімів не знайдено.", + "no-key-matching": "'{{key}}' не знайдено.", + "no-keys-found": "Ключів не знайдено.", + "create-new-alias": "Створити новий!", + "create-new-key": "Створити новий!", + "duplicate-alias-error": "Знайдено дубльований псевдонім '{{alias}}'.
Псевдоніми пристроїв повинні бути унікальними в межах дашборду.", + "configure-alias": "Налаштувати псевдонім '{{alias}}'", + "no-devices-matching": "Пристроїв, що відповідають '{{entity}}', не знайдено.", + "alias": "Псевдонім", + "alias-required": "Псевдонім пристрою є обов'язковим.", + "remove-alias": "Видалити псевдонім пристрою", + "add-alias": "Додати псевдонім пристрою", + "name-starts-with": "Вираз імені пристрою", + "help-text": "Використовуйте '%' за потребою: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", + "device-list": "Список пристроїв", + "use-device-name-filter": "Використовувати фільтр", + "device-list-empty": "Не вибрано жодного пристрою.", + "device-name-filter-required": "Фільтр за назвою пристрою є обов'язковим.", + "device-name-filter-no-device-matched": "Пристроїв, що починаються з '{{device}}', не знайдено.", + "add": "Додати пристрій", + "assign-to-customer": "Призначити клієнту", + "assign-device-to-customer": "Призначити пристрій(і) клієнту", + "assign-device-to-customer-text": "Будь ласка, виберіть пристрої для призначення клієнту", + "make-public": "Зробити пристрій публічним", + "make-private": "Зробити пристрій приватним", + "no-devices-text": "Пристроїв не знайдено", + "assign-to-customer-text": "Будь ласка, виберіть клієнта для призначення пристрою(ів)", + "device-details": "Деталі пристрою", + "add-device-text": "Додати новий пристрій", + "credentials": "Облікові дані", + "manage-credentials": "Керувати обліковими даними", + "delete": "Видалити пристрій", + "assign-devices": "Призначити пристрої", + "assign-devices-text": "Призначити { count, plural, =1 {1 пристрій} other {# пристроїв} } клієнту", + "delete-devices": "Видалити пристрої", + "unassign-from-customer": "Зняти призначення з клієнта", + "unassign-devices": "Зняти призначення з пристроїв", + "unassign-devices-action-title": "Ви впевнені, що хочете зняти призначення { count, plural, =1 {1 пристрій} other {# пристроїв} } з клієнта?", + "unassign-device-from-edge-title": "Ви впевнені, що хочете зняти призначення пристрою '{{deviceName}}'?", + "unassign-device-from-edge-text": "Після підтвердження пристрій буде знятий з призначення і не буде доступний через edge.", + "unassign-devices-from-edge": "Зняти призначення пристроїв з edge", + "assign-new-device": "Призначити новий пристрій", + "make-public-device-title": "Ви впевнені, що хочете зробити пристрій '{{deviceName}}' публічним?", + "make-public-device-text": "Після підтвердження пристрій і всі його дані стануть публічними і доступними для інших.", + "make-private-device-title": "Ви впевнені, що хочете зробити пристрій '{{deviceName}}' приватним?", + "make-private-device-text": "Після підтвердження пристрій і всі його дані стануть приватними і не будуть доступні для інших.", + "view-credentials": "Переглянути облікові дані", + "delete-device-title": "Ви впевнені, що хочете видалити пристрій '{{deviceName}}'?", + "delete-device-text": "Будьте обережні, після підтвердження пристрій і всі пов'язані дані будуть неможливі для відновлення.", + "delete-devices-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 пристрій} other {# пристроїв} }?", + "delete-devices-action-title": "Видалити { count, plural, =1 {1 пристрій} other {# пристроїв} }", + "delete-devices-text": "Будьте обережні, після підтвердження всі вибрані пристрої будуть видалені, і всі пов'язані дані будуть неможливі для відновлення.", + "unassign-device-title": "Ви впевнені, що хочете зняти призначення пристрою '{{deviceName}}'?", + "unassign-device-text": "Після підтвердження пристрій буде знятий з призначення і не буде доступний клієнту.", + "unassign-device": "Зняти призначення з пристрою", + "unassign-devices-title": "Ви впевнені, що хочете зняти призначення { count, plural, =1 {1 пристрій} other {# пристроїв} }?", + "unassign-devices-text": "Після підтвердження всі вибрані пристрої будуть зняті з призначення і не будуть доступні клієнту.", + "device-credentials": "Облікові дані пристрою", + "loading-device-credentials": "Завантаження облікових даних пристрою...", + "credentials-type": "Тип облікових даних", + "access-token": "Токен доступу", + "access-token-required": "Токен доступу є обов'язковим.", + "access-token-invalid": "Довжина токена доступу повинна бути від 1 до 32 символів.", + "certificate-pem-format": "Сертифікат у форматі PEM", + "certificate-pem-format-required": "Сертифікат є обов'язковим.", + "copy-access-token": "Копіювати токен доступу", + "copy-certificate": "Копіювати сертифікат", + "copy-client-id": "Копіювати ID клієнта", + "copy-user-name": "Копіювати ім'я користувача", + "copy-password": "Копіювати пароль", + "generate-client-id": "Згенерувати ID клієнта", + "generate-user-name": "Згенерувати ім'я користувача", + "generate-password": "Згенерувати пароль", + "generate-access-token": "Згенерувати токен доступу", + "lwm2m-security-config": { + "identity": "Ідентифікатор клієнта", + "identity-required": "Ідентифікатор клієнта є обов'язковим.", + "identity-tooltip": "Ідентифікатор PSK є довільним ідентифікатором PSK до 128 байтів, як описано в стандарті [RFC7925].\nІдентифікатор PSK ПОВИНЕН бути спочатку перетворений у рядок символів і потім закодований в октети з використанням UTF-8.", + "client-key": "Ключ клієнта", + "client-key-required": "Ключ клієнта є обов'язковим.", + "client-key-tooltip-prk": "Публічний ключ або id RPK має бути у стандарті [RFC7250] і закодований у формат Base64!", + "client-key-tooltip-psk": "Ключ PSK має бути у стандарті [RFC4279] і форматі HexDec: 32, 64, 128 символів!", + "endpoint": "Endpoint назва клієнта", + "endpoint-required": "Endpoint назва клієнта є обов'язковою.", + "client-public-key": "Публічний ключ клієнта", + "client-public-key-hint": "Якщо публічний ключ клієнта порожній, буде використано довірений сертифікат", + "client-public-key-tooltip": "Публічний ключ X509 має бути у DER-кодованому форматі X509v3 і підтримувати виключно алгоритм EC, а потім закодований у форматі Base64!", + "mode": "Режим налаштувань безпеки", + "client-tab": "Конфігурація безпеки клієнта", + "client-certificate": "Сертифікат клієнта", + "bootstrap-tab": "Bootstrap клієнт", + "bootstrap-server": "Bootstrap сервер", + "lwm2m-server": "LwM2M сервер", + "client-publicKey-or-id": "Публічний ключ клієнта або ID", + "client-publicKey-or-id-required": "Публічний ключ клієнта або ID є обов'язковим.", + "client-publicKey-or-id-tooltip-psk": "Ідентифікатор PSK є довільним ідентифікатором PSK до 128 байтів, як описано в стандарті [RFC7925].\nІдентифікатор PSK ПОВИНЕН бути спочатку перетворений у рядок символів і потім закодований в октети з використанням UTF-8.", + "client-publicKey-or-id-tooltip-rpk": "Публічний ключ або ID RPK має бути у стандарті [RFC7250] і закодований у формат Base64!", + "client-publicKey-or-id-tooltip-x509": "Публічний ключ X509 має бути у DER-кодованому форматі X509v3 і підтримувати виключно алгоритм EC, а потім закодований у форматі Base64", + "client-secret-key": "Секретний ключ клієнта", + "client-secret-key-required": "Секретний ключ клієнта є обов'язковим.", + "client-secret-key-tooltip-psk": "Ключ PSK має бути у стандарті [RFC4279] і форматі HexDec: 32, 64, 128 символів!", + "client-secret-key-tooltip-prk": "Секретний ключ RPK має бути у форматі PKCS_8 (DER-кодування, стандарт [RFC5958]) і потім закодований у форматі Base64!", + "client-secret-key-tooltip-x509": "Секретний ключ X509 має бути у форматі PKCS_8 (DER-кодування, стандарт [RFC5958]) і потім закодований у форматі Base64!" + }, + "client-id": "ID клієнта", + "client-id-pattern": "Містить недійсний символ.", + "user-name": "Ім'я користувача", + "user-name-required": "Ім'я користувача є обов'язковим.", + "client-id-or-user-name-necessary": "ID клієнта та/або ім'я користувача є необхідними", + "password": "Пароль", + "secret": "Секрет", + "secret-required": "Секрет є обов'язковим.", + "device-type": "Профіль пристрою", + "device-type-required": "Тип пристрою є обов'язковим.", + "select-device-type": "Вибрати тип пристрою", + "enter-device-type": "Ввести профіль пристрою", + "any-device": "Будь-який пристрій", + "no-device-types-matching": "Не знайдено профілів пристроїв, що відповідають '{{entitySubtype}}'.", + "device-type-list-empty": "Не вибрано профілі пристроїв!", + "device-profile-type-list-empty": "Потрібно вибрати хоча б один профіль пристрою.", + "device-types": "Типи пристроїв", + "name": "Назва", + "name-required": "Назва є обов'язковою.", + "name-max-length": "Назва має бути коротшою за 256 символів", + "label-max-length": "Маркування має бути коротшою за 256 символів", + "description": "Опис", + "label": "Маркування", + "events": "Події", + "details": "Деталі", + "copyId": "Копіювати ID пристрою", + "copyAccessToken": "Копіювати токен доступу", + "copy-mqtt-authentication": "Копіювати MQTT облікові дані", + "idCopiedMessage": "ID пристрою скопійовано в буфер обміну", + "accessTokenCopiedMessage": "Токен доступу пристрою скопійовано в буфер обміну", + "mqtt-authentication-copied-message": "MQTT автентифікація пристрою скопійована в буфер обміну", + "assignedToCustomer": "Призначено клієнту", + "unable-delete-device-alias-title": "Не вдалося видалити псевдонім пристрою", + "unable-delete-device-alias-text": "Псевдонім пристрою '{{deviceAlias}}' не можна видалити, оскільки він використовується наступними віджетами:
{{widgetsList}}", + "is-gateway": "Це gateway", + "overwrite-activity-time": "Перезаписати час активності для підключеного пристрою", + "device-filter-title": "Фільтр пристроїв", + "filter-title": "Фільтр", + "device-state": "Стан пристрою", + "state": "Стан", + "any": "Будь-який", + "active": "Активний", + "inactive": "Неактивний", + "public": "Публічний", + "device-public": "Пристрій публічний", + "select-device": "Вибрати пристрій", + "import": "Імпортувати пристрій", + "device-file": "Файл пристрою", + "search": "Шукати пристрої", + "selected-devices": "{ count, plural, =1 {1 пристрій} other {# пристроїв} } вибрано", + "device-configuration": "Конфігурація пристрою", + "transport-configuration": "Конфігурація транспорту", + "wizard": { + "device-details": "Деталі пристрою" + }, + "unassign-devices-from-edge-title": "Ви впевнені, що хочете зняти призначення { count, plural, =1 {1 пристрій} other {# пристроїв} }?", + "unassign-devices-from-edge-text": "Після підтвердження всі вибрані пристрої будуть зняті з призначення і не будуть доступні через edge.", + "time": "Час", + "connectivity": { + "check-connectivity": "Перевірити підключення", + "device-created-check-connectivity": "Пристрій створено. Давайте перевіримо підключення!", + "loading-check-connectivity-command": "Завантаження команд перевірки підключення...", + "use-following-instructions": "Використовуйте наступні інструкції для надсилання телеметрії від імені пристрою за допомогою оболонки", + "execute-following-command": "Виконайте наступну команду", + "install-curl-windows": "Починаючи з Windows 10 b17063, cURL доступний за замовчуванням", + "install-curl-macos": "Починаючи з Mac OS X 10.2 6C115 (Jaguar), cURL доступний за замовчуванням", + "install-mqtt-windows": "Використовуйте інструкції для завантаження, встановлення, налаштування та запуску mosquitto_pub", + "install-coap-client": "Використовуйте інструкції для завантаження, встановлення, налаштування та запуску coap-client", + "install-necessary-client-tools": "Встановіть необхідні інструменти клієнта", + "mqtts-x509-command": "Використовуйте наступну документацію для підключення пристрою через MQTT з авторизацією X509", + "coaps-x509-command": "Використовуйте наступну документацію для підключення пристрою через CoAP через DTLS з авторизацією X509", + "snmp-command": "Використовуйте наступну документацію для підключення пристрою через SNMP.", + "sparkplug-command": "Використовуйте наступну документацію для підключення пристрою через MQTT Sparkplug.", + "lwm2m-command": "Використовуйте наступну документацію для підключення пристрою через LWM2M." + } + }, + "dynamic-form": { + "property": { + "properties": "Властивості", + "property": "Властивість", + "id": "ID", + "name": "Назва", + "type": "Тип", + "type-text": "Текст", + "type-password": "Пароль", + "type-textarea": "Текстове поле", + "type-number": "Число", + "type-switch": "Перемикач", + "type-select": "Вибір", + "type-radios": "Радіокнопки", + "type-datetime": "Дата/Час", + "type-image": "Зображення", + "type-javascript": "JavaScript", + "type-json": "JSON", + "type-html": "HTML", + "type-css": "CSS", + "type-markdown": "Markdown", + "type-color": "Колір", + "type-color-settings": "Налаштування кольору", + "type-font": "Шрифт", + "type-units": "Одиниці вимірювання", + "type-icon": "Іконка", + "type-fieldset": "Поле групи", + "type-array": "Масив", + "type-html-section": "HTML секція", + "group-title": "Заголовок групи", + "no-properties": "Не налаштовано властивостей", + "add-property": "Додати властивість", + "property-settings": "Налаштування властивості", + "remove-property": "Видалити властивість", + "default-value": "За замовчуванням", + "value-required": "Значення є обов'язковим", + "number-settings": "Налаштування числа", + "min": "Мінімум", + "max": "Максимум", + "step": "Крок", + "selected-options-limit": "Обмеження вибраних опцій", + "advanced-ui-settings": "Розширені налаштування UI", + "disable-on-property": "Вимкнути за властивістю", + "disable-on-property-none": "Ні (поле завжди доступне)", + "display-condition-function": "Функція умови відображення", + "sub-label": "Підмаркування", + "vertical-divider-after": "Вертикальний роздільник після", + "input-field-suffix": "Суфікс поля введення", + "property-row-classes": "Класи рядка властивості", + "property-field-classes": "Класи поля властивості", + "not-unique-property-ids-error": "ID властивостей повинні бути унікальними!", + "enable-multiple-select": "Увімкнути множинний вибір", + "allow-empty-select-option": "Дозволити порожню опцію", + "select-options": "Вибір опцій", + "not-unique-select-option-value-error": "Значення опцій вибору повинні бути унікальними!", + "value": "Значення", + "label": "Маркування", + "add-option": "Додати опцію", + "no-options": "Не налаштовано опцій", + "remove-option": "Видалити опцію", + "textarea-rows": "Ряди текстової області", + "help-id": "ID допомоги", + "buttons-direction": "Напрямок кнопок", + "direction-row": "Рядок", + "direction-column": "Стовпчик", + "radio-button-options": "Опції радіокнопок", + "datetime-type": "Тип поля Дата/Час", + "datetime-type-date": "Дата", + "datetime-type-time": "Час", + "datetime-type-datetime": "Дата/Час", + "enable-clear-button": "Увімкнути кнопку очищення", + "html-section-settings": "Налаштування HTML секції", + "html-section-classes": "Класи HTML секції", + "html-section-content": "Вміст HTML секції", + "array-item": "Елемент масиву", + "item-type": "Тип елемента", + "item-name": "Назва елемента", + "no-items": "Немає елементів", + "support-unit-conversion": "Підтримка перетворення одиниць" + }, + "clear-form": "Очистити форму", + "clear-form-prompt": "Ви впевнені, що хочете видалити всі властивості форми?", + "import-form": "Імпортувати форму з JSON", + "export-form": "Експортувати форму в JSON", + "json-file": "Файл JSON", + "json-content": "Вміст JSON", + "invalid-form-json-file-error": "Не вдалося імпортувати форму з JSON: Невірна структура даних JSON форми." + }, + "asset-profile": { + "asset-profile": "Профіль активу", + "asset-profiles": "Профілі активів", + "all-asset-profiles": "Усі", + "add": "Додати профіль активу", + "edit": "Редагувати профіль активу", + "asset-profile-details": "Деталі профілю активу", + "no-asset-profiles-text": "Профілі активів не знайдені", + "search": "Шукати профілі активів", + "selected-asset-profiles": "{ count, plural, =1 {1 профіль активу} other {# профілів активів} } вибрано", + "no-asset-profiles-matching": "Не знайдено профіля активу, що відповідає '{{entity}}'.", + "asset-profile-required": "Профіль активу є обов'язковим", + "idCopiedMessage": "ID профілю активу скопійовано в буфер обміну", + "set-default": "Зробити профіль активу за замовчуванням", + "delete": "Видалити профіль активу", + "copyId": "Копіювати ID профілю активу", + "name-max-length": "Назва має бути коротшою за 256 символів", + "new-device-profile-name": "Назва профілю активу", + "new-device-profile-name-required": "Назва профілю активу є обов'язковою.", + "name": "Назва", + "name-required": "Назва є обов'язковою.", + "image": "Зображення профілю активу", + "description": "Опис", + "default": "За замовчуванням", + "default-rule-chain": "Ланцюг правил за замовчуванням", + "default-edge-rule-chain": "Ланцюг правил edge за замовчуванням", + "default-edge-rule-chain-hint": "Використовується на edge як ланцюг правил для обробки вхідних даних для активів цього профілю активу", + "mobile-dashboard": "Мобільний дашборд", + "mobile-dashboard-hint": "Використовується мобільним додатком як дашборд деталей активу", + "select-queue-hint": "Виберіть зі спадного списку.", + "delete-asset-profile-title": "Ви впевнені, що хочете видалити профіль активу '{{assetProfileName}}'?", + "delete-asset-profile-text": "Будьте обережні, після підтвердження профіль активу і всі пов'язані дані будуть неможливі для відновлення.", + "delete-asset-profiles-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 профіль активу} other {# профілів активів} }?", + "delete-asset-profiles-text": "Будьте обережні, після підтвердження всі вибрані профілі активів будуть видалені, і всі пов'язані дані будуть неможливі для відновлення.", + "set-default-asset-profile-title": "Ви впевнені, що хочете зробити профіль активу '{{assetProfileName}}' профілем за замовчуванням?", + "set-default-asset-profile-text": "Після підтвердження профіль активу буде позначено як профіль за замовчуванням і буде використовуватися для нових активів, для яких не вказано профіль.", + "no-asset-profiles-found": "Профілі активів не знайдено.", + "create-new-asset-profile": "Створити новий!", + "create-asset-profile": "Створити новий профіль активу", + "import": "Імпортувати профіль активу", + "export": "Експортувати профіль активу", + "export-failed-error": "Не вдалося експортувати профіль активу: {{error}}", + "asset-profile-file": "Файл профілю активу", + "invalid-asset-profile-file-error": "Не вдалося імпортувати профіль активу: Невірна структура даних профілю активу." + }, + "device-profile": { + "device-profile": "Профіль пристрою", + "device-profiles": "Профілі пристроїв", + "all-device-profiles": "Усі", + "add": "Додати профіль пристрою", + "edit": "Редагувати профіль пристрою", + "device-profile-details": "Деталі профілю пристрою", + "no-device-profiles-text": "Профілі пристроїв не знайдені", + "search": "Шукати профілі пристроїв", + "selected-device-profiles": "{ count, plural, =1 {1 профіль пристрою} other {# профілів пристроїв} } вибрано", + "no-device-profiles-matching": "Не знайдено профілю пристрою, що відповідає '{{entity}}'.", + "device-profile-required": "Профіль пристрою є обов'язковим", + "idCopiedMessage": "ID профілю пристрою скопійовано в буфер обміну", + "set-default": "Зробити профіль пристрою за замовчуванням", + "delete": "Видалити профіль пристрою", + "copyId": "Копіювати ID профілю пристрою", + "name-max-length": "Назва має бути коротшою за 256 символів", + "name": "Назва", + "name-required": "Назва є обов'язковою.", + "type": "Тип профілю", + "type-required": "Тип профілю є обов'язковим.", + "type-default": "За замовчуванням", + "image": "Зображення профілю пристрою", + "transport-type": "Тип транспорту", + "transport-type-required": "Тип транспорту є обов'язковим.", + "transport-type-default": "За замовчуванням", + "transport-type-default-hint": "Підтримує базовий MQTT, HTTP та CoAP транспорт", + "transport-type-mqtt": "MQTT", + "transport-type-mqtt-hint": "Увімкнення розширених налаштувань транспорту MQTT", + "transport-type-coap": "CoAP", + "transport-type-coap-hint": "Увімкнення розширених налаштувань транспорту CoAP", + "transport-type-lwm2m": "LWM2M", + "transport-type-lwm2m-hint": "Тип транспорту LWM2M", + "transport-type-snmp": "SNMP", + "transport-type-snmp-hint": "Вказати конфігурацію транспорту SNMP", + "transport-type-http": "HTTP", + "description": "Опис", + "default": "За замовчуванням", + "profile-configuration": "Конфігурація профілю", + "transport-configuration": "Конфігурація транспорту", + "default-rule-chain": "Ланцюг правил за замовчуванням", + "default-edge-rule-chain": "Ланцюг правил edge за замовчуванням", + "default-edge-rule-chain-hint": "Використовується на edge як ланцюг правил для обробки вхідних даних для пристроїв цього профілю пристрою", + "mobile-dashboard": "Мобільний дашборд", + "mobile-dashboard-hint": "Використовується мобільним додатком як дашборд деталей пристрою", + "select-queue-hint": "Виберіть зі спадного списку.", + "delete-device-profile-title": "Ви впевнені, що хочете видалити профіль пристрою '{{deviceProfileName}}'?", + "delete-device-profile-text": "Будьте обережні, після підтвердження профіль пристрою та всі пов'язані дані, включаючи пов'язані OTA оновлення, будуть неможливі для відновлення.", + "delete-device-profiles-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 профіль пристрою} other {# профілів пристроїв} }?", + "delete-device-profiles-text": "Будьте обережні, після підтвердження всі вибрані профілі пристроїв будуть видалені, і всі пов'язані дані, включаючи пов'язані OTA оновлення, будуть неможливі для відновлення.", + "set-default-device-profile-title": "Ви впевнені, що хочете зробити профіль пристрою '{{deviceProfileName}}' профілем за замовчуванням?", + "set-default-device-profile-text": "Після підтвердження профіль пристрою буде позначено як профіль за замовчуванням і буде використовуватися для нових пристроїв, для яких не вказано профіль.", + "no-device-profiles-found": "Профілі пристроїв не знайдено.", + "create-new-device-profile": "Створити новий!", + "mqtt-device-topic-filters": "MQTT фільтри тем пристроїв", + "mqtt-device-topic-filters-unique": "MQTT фільтри тем пристроїв повинні бути унікальними.", + "mqtt-device-topic-filters-spark-plug": "MQTT Sparkplug B Edge of Network (EoN) вузол.", + "mqtt-device-topic-filters-spark-plug-hint": "Дозволяє підключення від вузлів EoN з payload та форматом тем Sparkplug B.", + "mqtt-device-topic-filters-spark-plug-attribute-metric-names": "Метрики SparkPlug для збереження як атрибути.", + "mqtt-device-topic-filters-spark-plug-attribute-metric-names-hint": "Назви метрик SparkPlug, які будуть збережені як атрибути пристрою. Інші метрики будуть збережені як телеметрія пристрою.", + "mqtt-device-payload-type": "MQTT payload пристрою", + "mqtt-device-payload-type-json": "JSON", + "mqtt-device-payload-type-proto": "Protobuf", + "mqtt-enable-compatibility-with-json-payload-format": "Увімкнути сумісність з іншими форматами payload.", + "mqtt-enable-compatibility-with-json-payload-format-hint": "Коли увімкнено, платформа використовуватиме формат payload Protobuf за замовчуванням. Якщо парсинг не вдасться, платформа спробує використовувати формат JSON. Це корисно для зворотної сумісності під час оновлень прошивки. Наприклад, перше випуск прошивки використовує JSON, а нове — Protobuf. Під час процесу оновлення прошивки для флоту пристроїв потрібно підтримувати одночасно обидва формати. Режим сумісності може знижувати продуктивність, тому рекомендується вимкнути цей режим після оновлення всіх пристроїв.", + "mqtt-use-json-format-for-default-downlink-topics": "Використовувати формат JSON для тем для передачі вниз за замовчуванням", + "mqtt-use-json-format-for-default-downlink-topics-hint": "Коли увімкнено, платформа використовуватиме формат JSON для передачі атрибутів і RPC через наступні теми: v1/devices/me/attributes/response/$request_id, v1/devices/me/attributes, v1/devices/me/rpc/request/$request_id, v1/devices/me/rpc/response/$request_id. Це налаштування не впливає на підписки атрибутів і rpc, що відправляються за новими (v2) темами: v2/a/res/$request_id, v2/a, v2/r/req/$request_id, v2/r/res/$request_id. Де $request_id є цілим числом ідентифікатора запиту.", + "mqtt-send-ack-on-validation-exception": "Надіслати PUBACK при помилці перевірки повідомлення", + "mqtt-send-ack-on-validation-exception-hint": "За замовчуванням платформа закриває MQTT сесію при помилці перевірки повідомлення. Коли увімкнено, платформа надішле підтвердження публікації замість закриття сесії.", + "mqtt-protocol-version": "Версія протоколу", + "snmp-add-mapping": "Додати SNMP відображення", + "snmp-mapping-not-configured": "Не налаштовано відображення OID до часового ряду/телеметрії", + "snmp-timseries-or-attribute-name": "Часовий ряд/атрибут для відображення", + "snmp-timseries-or-attribute-type": "Тип часового ряду/атрибута для відображення", + "snmp-method-pdu-type-get-request": "GetRequest", + "snmp-method-pdu-type-get-next-request": "GetNextRequest", + "snmp-oid": "OID", + "transport-device-payload-type-json": "JSON", + "transport-device-payload-type-proto": "Protobuf", + "mqtt-payload-type-required": "Тип payload є обов'язковим.", + "coap-device-type": "Тип пристрою CoAP", + "coap-device-payload-type": "Payload пристрою CoAP", + "coap-device-type-required": "Тип пристрою CoAP є обов'язковим.", + "coap-device-type-default": "За замовчуванням", + "coap-device-type-efento": "Efento NB-IoT", + "support-level-wildcards": "Підтримуються одиночні [+] та багаторівневі [#] підстановочні знаки.", + "telemetry-topic-filter": "Фільтр теми телеметрії", + "telemetry-topic-filter-required": "Фільтр теми телеметрії є обов'язковим.", + "attributes-topic-filter": "Фільтр теми публікації атрибутів", + "attributes-subscribe-topic-filter": "Фільтр теми підписки на атрибути", + "attributes-topic-filter-required": "Фільтр теми публікації атрибутів є обов'язковим.", + "attributes-subscribe-topic-filter-required": "Фільтр теми підписки на атрибути є обов'язковим.", + "telemetry-proto-schema": "Схема proto телеметрії", + "telemetry-proto-schema-required": "Схема proto телеметрії є обов'язковою.", + "attributes-proto-schema": "Схема proto атрибутів", + "attributes-proto-schema-required": "Схема proto атрибутів є обов'язковою.", + "rpc-response-proto-schema": "Схема proto відповіді RPC", + "rpc-response-proto-schema-required": "Схема proto відповіді RPC є обов'язковою.", + "rpc-response-topic-filter": "Фільтр теми відповіді RPC", + "rpc-response-topic-filter-required": "Фільтр теми відповіді RPC є обов'язковим.", + "rpc-request-proto-schema": "Схема proto запиту RPC", + "rpc-request-proto-schema-required": "Схема proto запиту RPC є обов'язковою.", + "rpc-request-proto-schema-hint": "Повідомлення запиту RPC повинно завжди містити поля: string method = 1; int32 requestId = 2; та params = 3 будь-якого типу даних.", + "not-valid-pattern-topic-filter": "Невірний шаблон фільтра теми", + "not-valid-single-character": "Невірне використання символу одиночного рівня підстановки", + "not-valid-multi-character": "Невірне використання багаторівневого символу підстановки", + "single-level-wildcards-hint": "[+] підходить для будь-якого рівня фільтра теми. Наприклад: v1/devices/+/telemetry або +/devices/+/attributes.", + "multi-level-wildcards-hint": "[#] може замінити сам фільтр теми і має бути останнім символом теми. Наприклад: # або v1/devices/me/#.", + "alarm-rules": "Правила тривог", + "alarm-rules-with-count": "Правила тривог ({{count}})", + "no-alarm-rules": "Правила тривог не налаштовані", + "add-alarm-rule": "Додати правило тривоги", + "edit-alarm-rule": "Редагувати правило тривоги", + "alarm-type": "Тип тривоги", + "alarm-type-required": "Тип тривоги є обов'язковим.", + "alarm-type-unique": "Тип тривоги має бути унікальним у межах правил тривог для цього профілю пристрою.", + "alarm-type-max-length": "Тип тривоги має бути коротшим за 256 символів", + "create-alarm-pattern": "Створити тривогу {{alarmType}}", + "create-alarm-rules": "Створити правила тривог", + "no-create-alarm-rules": "Не налаштовано умов створення", + "add-create-alarm-rule-prompt": "Будь ласка, додайте правило створення тривоги", + "clear-alarm-rule": "Очистити правило тривоги", + "no-clear-alarm-rule": "Не налаштовано умов очищення", + "add-create-alarm-rule": "Додати умову створення", + "add-clear-alarm-rule": "Додати умову очищення", + "select-alarm-severity": "Вибрати серйозність тривоги", + "alarm-severity-required": "Серйозність тривоги є обов'язковою.", + "condition-duration": "Тривалість умови", + "condition-duration-value": "Значення тривалості", + "condition-duration-time-unit": "Одиниця часу", + "condition-duration-value-range": "Значення тривалості повинно бути в діапазоні від 1 до 2147483647.", + "condition-duration-value-pattern": "Значення тривалості повинно бути цілими числами.", + "condition-duration-value-required": "Значення тривалості є обов'язковим.", + "condition-duration-time-unit-required": "Одиниця часу є обов'язковою.", + "advanced-settings": "Розширені налаштування", + "alarm-rule-additional-info": "Додаткова інформація", + "edit-alarm-rule-additional-info": "Редагувати додаткову інформацію", + "alarm-rule-additional-info-placeholder": "Будь ласка, надайте ваші коментарі та коригування, щоб відобразити їх у деталях тривоги в розділі Додаткової інформації", + "alarm-rule-additional-info-hint": "Підказка: використовуйте ${keyName} для заміни значень атрибутів або ключів телеметрії, що використовуються в умові правила тривоги.", + "alarm-rule-mobile-dashboard": "Мобільний дашборд", + "alarm-rule-mobile-dashboard-hint": "Використовується мобільним додатком як дашборд деталей тривоги", + "alarm-rule-no-mobile-dashboard": "Дашборд не вибрано", + "propagate-alarm": "Пропагувати тривогу до пов'язаних сутностей", + "alarm-rule-relation-types-list": "Типи зв'язків", + "alarm-rule-relation-types-list-hint": "Визначає типи зв'язків для фільтрації пов'язаних сутностей. Якщо не задано, тривога буде пропагуватися до всіх пов'язаних сутностей.", + "propagate-alarm-to-owner": "Пропагувати тривогу до власника сутності (Клієнт або Тенант)", + "propagate-alarm-to-tenant": "Пропагувати тривогу до Тенанта", + "alarm-rule-condition": "Умова правила тривоги", + "enter-alarm-rule-condition-prompt": "Будь ласка, додайте умову правила тривоги", + "edit-alarm-rule-condition": "Редагувати умову правила тривоги", + "device-provisioning": "Постачання пристрою", + "provision-strategy": "Стратегія постачання", + "provision-strategy-required": "Стратегія постачання є обов'язковою.", + "provision-strategy-disabled": "Вимкнено", + "provision-strategy-created-new": "Дозволити створювати нові пристрої", + "provision-strategy-check-pre-provisioned": "Перевіряти на попередньо постачені пристрої", + "provision-device-key": "Ключ пристрою для постачання", + "provision-device-key-required": "Ключ пристрою для постачання є обов'язковим.", + "copy-provision-key": "Копіювати ключ постачання", + "provision-key-copied-message": "Ключ постачання скопійовано в буфер обміну", + "provision-device-secret": "Секрет пристрою для постачання", + "provision-device-secret-required": "Секрет пристрою для постачання є обов'язковим.", + "copy-provision-secret": "Копіювати секрет постачання", + "provision-secret-copied-message": "Секрет постачання скопійовано в буфер обміну", + "provision-strategy-x509": { + "certificate-chain": "Ланцюг сертифікатів X509", + "certificate-chain-hint": "Стратегія сертифікатів X.509 використовується для постачання пристроїв за допомогою клієнтських сертифікатів у двосторонньому TLS-з'єднанні.", + "allow-create-new-devices": "Створити нові пристрої", + "allow-create-new-devices-hint": "Якщо вибрано, нові пристрої будуть створюватися, а клієнтський сертифікат буде використовуватися як облікові дані пристрою.", + "certificate-value": "Сертифікат у форматі PEM", + "certificate-value-required": "Сертифікат у форматі PEM є обов'язковим", + "cn-regex-variable": "Змінна регулярного виразу CN", + "cn-regex-variable-required": "Змінна регулярного виразу CN є обов'язковою", + "cn-regex-variable-hint": "Необхідно для отримання імені пристрою з загального імені X509 сертифікату пристрою." + }, + "condition": "Умова", + "condition-type": "Тип умови", + "condition-type-simple": "Проста", + "condition-type-duration": "Тривалість", + "condition-during": "Протягом {{during}}", + "condition-during-dynamic": "Протягом \"{{ attribute }}\" ({{during}})", + "condition-type-repeating": "Повторювана", + "condition-type-required": "Тип умови є обов'язковим.", + "condition-repeating-value": "Кількість подій", + "condition-repeating-value-range": "Кількість подій повинна бути в діапазоні від 1 до 2147483647.", + "condition-repeating-value-pattern": "Кількість подій повинна бути цілими числами.", + "condition-repeating-value-required": "Кількість подій є обов'язковою.", + "condition-repeat-times": "Повторюється { count, plural, =1 {1 раз} other {# разів} }", + "condition-repeat-times-dynamic": "Повторюється \"{ attribute }\" ({ count, plural, =1 {1 раз} other {# разів} })", + "schedule-type": "Тип планувальника", + "schedule-type-required": "Тип планувальника є обов'язковим.", + "schedule": "Розклад", + "edit-schedule": "Редагувати розклад тривоги", + "schedule-any-time": "Активний завжди", + "schedule-specific-time": "Активний у конкретний час", + "schedule-custom": "Користувацький", + "schedule-day": { + "monday": "Понеділок", + "tuesday": "Вівторок", + "wednesday": "Середа", + "thursday": "Четвер", + "friday": "П’ятниця", + "saturday": "Субота", + "sunday": "Неділя" + }, + "schedule-days": "Дні", + "schedule-time": "Час", + "schedule-time-from": "З", + "schedule-time-to": "До", + "schedule-days-of-week-required": "Потрібно вибрати хоча б один день тижня.", + "create-device-profile": "Створити новий профіль пристрою", + "import": "Імпортувати профіль пристрою", + "export": "Експортувати профіль пристрою", + "export-failed-error": "Не вдалося експортувати профіль пристрою: {{error}}", + "device-profile-file": "Файл профілю пристрою", + "invalid-device-profile-file-error": "Не вдалося імпортувати профіль пристрою: Невірна структура даних профілю пристрою.", + "power-saving-mode": "Режим енергозбереження", + "power-saving-mode-type": { + "default": "Використовувати режим енергозбереження профілю пристрою", + "psm": "Режим енергозбереження (PSM)", + "drx": "Переривчастий прийом (DRX)", + "edrx": "Розширений переривчастий прийом (eDRX)" + }, + "edrx-cycle": "Цикл eDRX", + "edrx-cycle-required": "Цикл eDRX є обов'язковим.", + "edrx-cycle-pattern": "Цикл eDRX повинен бути додатним цілим числом.", + "edrx-cycle-min": "Мінімальна кількість циклів eDRX — {{ min }} секунд.", + "paging-transmission-window": "Вікно передачі пагінгу", + "paging-transmission-window-required": "Вікно передачі пагінгу є обов'язковим.", + "paging-transmission-window-pattern": "Вікно передачі пагінгу повинно бути додатним цілим числом.", + "paging-transmission-window-min": "Мінімальна кількість вікон передачі пагінгу — {{ min }} секунд.", + "psm-activity-timer": "Таймер активності PSM", + "psm-activity-timer-required": "Таймер активності PSM є обов'язковим.", + "psm-activity-timer-pattern": "Таймер активності PSM повинен бути додатним цілим числом.", + "psm-activity-timer-min": "Мінімальна кількість таймерів активності PSM — {{ min }} секунд.", + "lwm2m": { + "object-list": "Список об'єктів", + "object-list-empty": "Не вибрано жодних об'єктів.", + "no-objects-found": "Об'єкти не знайдено.", + "no-objects-matching": "Не знайдено об'єктів, що відповідають '{{object}}'.", + "model-tab": "Модель LWM2M", + "add-new-instances": "Додати нові екземпляри", + "instances-list": "Список екземплярів", + "instances-list-required": "Список екземплярів є обов'язковим.", + "instance-id-pattern": "ID екземпляра повинен бути додатним цілим числом.", + "instance-id-max": "Максимальне значення ID екземпляра {{max}}.", + "instance": "Екземпляр", + "resource-label": "#ID Назва ресурсу", + "observe-label": "Спостереження", + "attribute-label": "Атрибут", + "telemetry-label": "Телеметрія", + "edit-observe-select": "Для редагування спостереження виберіть телеметрію або атрибут", + "edit-attributes-select": "Для редагування атрибутів виберіть телеметрію або атрибут", + "no-attributes-set": "Атрибути не налаштовані", + "key-name": "Назва ключа", + "key-name-required": "Назва ключа є обов'язковою", + "attribute-name": "Назва атрибута", + "attribute-name-required": "Назва атрибута є обов'язковою.", + "attribute-value": "Значення атрибута", + "attribute-value-required": "Значення атрибута є обов'язковим.", + "attribute-value-pattern": "Значення атрибута повинно бути додатним цілим числом.", + "edit-attributes": "Редагувати атрибути: {{ name }}", + "view-attributes": "Переглянути атрибути: {{ name }}", + "add-attribute": "Додати атрибут", + "edit-attribute": "Редагувати атрибут", + "view-attribute": "Переглянути атрибут", + "remove-attribute": "Видалити атрибут", + "delete-server-text": "Будьте обережні, після підтвердження конфігурація сервера стане неможливою для відновлення.", + "delete-server-title": "Ви впевнені, що хочете видалити сервер?", + "mode": "Режим налаштування безпеки", + "bootstrap-tab": "Bootstrap", + "bootstrap-server-legend": "Bootstrap Server (ShortId...)", + "lwm2m-server-legend": "LwM2M Server (ShortId...)", + "server": "Сервер", + "short-id": "Короткий ID сервера", + "short-id-tooltip": "Короткий ID сервера. Використовується як посилання для асоціації інстанції об'єкта сервера.\nЦей ідентифікатор унікально ідентифікує кожен LwM2M Server, налаштований для LwM2M Client.\nРесурс ПОВИНЕН бути встановлений, коли ресурс Bootstrap-Server має значення 'false'.\nЗначення ID:0 і ID:65535 не повинні використовуватися для ідентифікації LwM2M Server.", + "short-id-tooltip-bootstrap": "Короткий ID сервера. Використовується як посилання для асоціації інстанції об'єкта сервера.\nЦей ідентифікатор унікально ідентифікує кожен LwM2M Server, налаштований для LwM2M Client.\nРесурс ПОВИНЕН бути встановлений, коли ресурс Bootstrap-Server має значення 'false'.", + "short-id-required": "Короткий ID сервера є обов'язковим.", + "short-id-range": "Короткий ID сервера повинен бути в діапазоні від {{ min }} до {{ max }}.", + "short-id-pattern": "Короткий ID сервера повинен бути додатним цілим числом.", + "lifetime": "Тривалість реєстрації клієнта", + "lifetime-required": "Тривалість реєстрації клієнта є обов'язковою.", + "lifetime-pattern": "Тривалість реєстрації клієнта повинна бути додатним цілим числом.", + "default-min-period": "Мінімальний період між двома повідомленнями (с)", + "default-min-period-tooltip": "Значення за замовчуванням, яке LwM2M Client повинен використовувати для мінімального періоду спостереження за відсутності цього параметра в спостереженні.", + "default-min-period-required": "Мінімальний період є обов'язковим.", + "default-min-period-pattern": "Мінімальний період повинен бути додатним цілим числом.", + "notification-storing": "Зберігання повідомлень, коли вимкнено або офлайн", + "binding": "Зв'язування", + "binding-type": { + "u": "U: Клієнт доступний через UDP-зв'язок у будь-який час.", + "m": "M: Клієнт доступний через MQTT-зв'язок у будь-який час.", + "h": "H: Клієнт доступний через HTTP-зв'язок у будь-який час.", + "t": "T: Клієнт доступний через TCP-зв'язок у будь-який час.", + "s": "S: Клієнт доступний через SMS-зв'язок у будь-який час.", + "n": "N: Клієнт ПОВИНЕН відправляти відповідь на такий запит через Non-IP зв'язок (підтримується з LWM2M 1.1).", + "uq": "UQ: UDP-з'єднання в черговому режимі (не підтримується з LWM2M 1.1)", + "uqs": "UQS: активні з'єднання UDP та SMS; UDP в черговому режимі, SMS в стандартному режимі (не підтримується з LWM2M 1.1)", + "tq": "TQ: TCP-з'єднання в черговому режимі (не підтримується з LWM2M 1.1)", + "tqs": "TQS: активні з'єднання TCP та SMS; TCP в черговому режимі, SMS в стандартному режимі (не підтримується з LWM2M 1.1)", + "sq": "SQ: SMS-з'єднання в черговому режимі (не підтримується з LWM2M 1.1)" + }, + "binding-tooltip": "Це список у ресурсі \"binding\" об'єкта LwM2M сервера - /1/x/7.\nВказує підтримувані режими зв'язку в LwM2M Client.\nЦе значення повинно бути таким самим, як значення в ресурсі «Підтримувані зв'язки та режими» в об'єкті пристрою (/3/0/16).\nХоча підтримуються кілька транспортів, лише один транспорт можна використовувати під час усієї транспортної сесії.\nНаприклад, коли UDP та SMS підтримуються одночасно, LwM2M Client і LwM2M Server можуть вибрати зв'язок через UDP або SMS під час усієї транспортної сесії.", + "bootstrap-server": "Bootstrap сервер", + "lwm2m-server": "LwM2M сервер", + "include-bootstrap-server": "Включити оновлення Bootstrap сервера", + "bootstrap-update-title": "Ви вже налаштували Bootstrap сервер. Ви впевнені, що хочете виключити оновлення?", + "bootstrap-update-text": "Будьте обережні, після підтвердження конфігурація Bootstrap сервера стане неможливою для відновлення.", + "server-host": "Хост", + "server-host-required": "Хост є обов'язковим.", + "server-port": "Порт", + "server-port-required": "Порт є обов'язковим.", + "server-port-pattern": "Порт повинен бути додатним цілим числом.", + "server-port-range": "Порт повинен бути в діапазоні від 1 до 65535.", + "server-public-key": "Публічний ключ сервера", + "server-public-key-required": "Публічний ключ сервера є обов'язковим.", + "client-hold-off-time": "Час затримки клієнта", + "client-hold-off-time-required": "Час затримки клієнта є обов'язковим.", + "client-hold-off-time-pattern": "Час затримки клієнта повинен бути додатним цілим числом.", + "client-hold-off-time-tooltip": "Час затримки клієнта для використання тільки з Bootstrap-Server", + "account-after-timeout": "Обліковий запис після тайм-ауту", + "account-after-timeout-required": "Обліковий запис після тайм-ауту є обов'язковим.", + "account-after-timeout-pattern": "Обліковий запис після тайм-ауту повинен бути додатним цілим числом.", + "account-after-timeout-tooltip": "Обліковий запис після тайм-ауту, вказаний цим ресурсом на Bootstrap-Server.", + "server-type": "Тип сервера", + "add-new-server-title": "Додати нову конфігурацію сервера", + "add-server-config": "Додати конфігурацію сервера", + "add-lwm2m-server-config": "Додати LwM2M сервер", + "no-config-servers": "Не налаштовано серверів", + "others-tab": "Інші налаштування", + "ota-update": "Оновлення OTA", + "use-object-19-for-ota-update": "Використовувати Об'єкт 19 для метаданих OTA файлу (контрольна сума, розмір, версія, ім'я)", + "use-object-19-for-ota-update-hint": "Використовувати ресурс ObjectId = 19 для оновлень OTA: FirmWare → InstanceId = 65534, SoftWare → InstanceId = 65535. Формат даних — JSON, закодований в Base64. Цей JSON містить метадані OTA файлу (інформація про файл): \"Контрольна сума\" (SHA256). Додаткові поля: \"Назва\" (ім'я OTA), \"Версія\" (версія OTA), \"Ім'я файлу\" (ім'я файлу для зберігання OTA на клієнті), \"Розмір файлу\" (розмір OTA в байтах).", + "client-strategy": "Стратегія клієнта при підключенні", + "client-strategy-label": "Стратегія", + "client-strategy-only-observe": "Тільки спостереження за запитом до клієнта після початкового підключення", + "client-strategy-read-all": "Читати всі ресурси та спостереження за запитом до клієнта після реєстрації", + "fw-update": "Оновлення прошивки", + "fw-update-strategy": "Стратегія оновлення прошивки", + "fw-update-strategy-data": "Підштовхнути оновлення прошивки як бінарний файл за допомогою Об'єкта 19 і Ресурсу 0 (Дані)", + "fw-update-strategy-package": "Підштовхнути оновлення прошивки як бінарний файл за допомогою Об'єкта 5 і Ресурсу 0 (Пакет)", + "fw-update-strategy-package-uri": "Автоматично генерувати унікальне CoAP посилання для завантаження пакету та підштовхнути оновлення прошивки як Об'єкт 5 і Ресурс 1 (URI пакету)", + "sw-update": "Оновлення програмного забезпечення", + "sw-update-strategy": "Стратегія оновлення програмного забезпечення", + "sw-update-strategy-package": "Підштовхнути бінарний файл за допомогою Об'єкта 9 і Ресурсу 2 (Пакет)", + "sw-update-strategy-package-uri": "Автоматично генерувати унікальне CoAP посилання для завантаження пакету та підштовхнути оновлення програмного забезпечення за допомогою Об'єкта 9 і Ресурсу 3 (URI пакету)", + "fw-update-resource": "CoAP ресурс для оновлення прошивки", + "fw-update-resource-required": "CoAP ресурс для оновлення прошивки є обов'язковим.", + "sw-update-resource": "CoAP ресурс для оновлення програмного забезпечення", + "sw-update-resource-required": "CoAP ресурс для оновлення програмного забезпечення є обов'язковим.", + "config-json-tab": "Конфігурація JSON профілю пристрою", + "attributes-name": { + "min-period": "Мінімальний період", + "max-period": "Максимальний період", + "greater-than": "Більше ніж", + "less-than": "Менше ніж", + "step": "Крок", + "min-evaluation-period": "Мінімальний період оцінки", + "max-evaluation-period": "Максимальний період оцінки" + }, + "default-object-id": "Версія за замовчуванням об'єкта (Атрибут)", + "default-object-id-ver": { + "v1-0": "1.0", + "v1-1": "1.1", + "v1-2": "1.2" + }, + "observe-strategy": { + "observe-strategy": "Стратегія спостереження", + "single": "Один", + "single-description": "Один запит спостереження для кожного ресурсу (вища точність, більше трафіку в мережі)", + "composite-all": "Комбіноване все", + "composite-all-description": "Усі ресурси спостерігаються за допомогою одного комбінованого запиту спостереження (більш ефективно, менше гнучкості)", + "composite-by-object": "Комбіноване за об'єктами", + "composite-by-object-description": "Ресурси групуються за типом об'єкта і спостерігаються за допомогою окремих комбінованих запитів спостереження (збалансований підхід)" + } + }, + "snmp": { + "add-communication-config": "Додати конфігурацію зв'язку", + "add-mapping": "Додати відображення", + "authentication-passphrase": "Пароль автентифікації", + "authentication-passphrase-required": "Пароль автентифікації є обов'язковим.", + "authentication-protocol": "Протокол автентифікації", + "authentication-protocol-required": "Протокол автентифікації є обов'язковим.", + "communication-configs": "Конфігурації зв'язку", + "community": "Рядок спільноти", + "community-required": "Рядок спільноти є обов'язковим.", + "context-name": "Назва контексту", + "data-key": "Ключ даних", + "data-key-required": "Ключ даних є обов'язковим.", + "data-type": "Тип даних", + "data-type-required": "Тип даних є обов'язковим.", + "engine-id": "ID двигуна", + "host": "Хост", + "host-required": "Хост є обов'язковим.", + "oid": "OID", + "oid-pattern": "Невірний формат OID.", + "oid-required": "OID є обов'язковим.", + "please-add-communication-config": "Будь ласка, додайте конфігурацію зв'язку", + "please-add-mapping-config": "Будь ласка, додайте конфігурацію відображення", + "port": "Порт", + "port-format": "Невірний формат порту.", + "port-required": "Порт є обов'язковим.", + "privacy-passphrase": "Пароль конфіденційності", + "privacy-passphrase-required": "Пароль конфіденційності є обов'язковим.", + "privacy-protocol": "Протокол конфіденційності", + "privacy-protocol-required": "Протокол конфіденційності є обов'язковим.", + "protocol-version": "Версія протоколу", + "protocol-version-required": "Версія протоколу є обов'язковою.", + "querying-frequency": "Частота запитів, мс", + "querying-frequency-invalid-format": "Частота запитів повинна бути додатним цілим числом.", + "querying-frequency-required": "Частота запитів є обов'язковою.", + "retries": "Повторні спроби", + "retries-invalid-format": "Повторні спроби повинні бути додатним цілим числом.", + "retries-required": "Повторні спроби є обов'язковими.", + "scope": "Область", + "scope-required": "Область є обов'язковою.", + "security-name": "Назва безпеки", + "security-name-required": "Назва безпеки є обов'язковою.", + "timeout-ms": "Тайм-аут, мс", + "timeout-ms-invalid-format": "Тайм-аут повинен бути додатним цілим числом.", + "timeout-ms-required": "Тайм-аут є обов'язковим.", + "user-name": "Ім'я користувача", + "user-name-required": "Ім'я користувача є обов'язковим." + } + }, + "dialog": { + "close": "Закрити діалог", + "error-message-title": "Повідомлення про помилку:", + "error-details-title": "Деталі помилки" + }, + "direction": { + "column": "Стовпчик", + "row": "Рядок" + }, + "edge": { + "edge": "Edge", + "edge-instances": "Екземпляри Edge", + "instances": "Екземпляри", + "edge-file": "Файл Edge", + "name-max-length": "Назва має бути коротшою за 256 символів", + "label-max-length": "Маркування має бути коротшою за 256 символів", + "type-max-length": "Тип має бути коротшим за 256 символів", + "management": "Управління Edge", + "no-edges-matching": "Не знайдено edge, що відповідає '{{entity}}'.", + "add": "Додати Edge", + "no-edges-text": "Edge не знайдено", + "edge-details": "Деталі Edge", + "add-edge-text": "Додати новий Edge", + "delete": "Видалити Edge", + "delete-edge-title": "Ви впевнені, що хочете видалити Edge '{{edgeName}}'?", + "delete-edge-text": "Будьте обережні, після підтвердження Edge і всі пов'язані дані будуть неможливі для відновлення.", + "delete-edges-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 Edge} other {# Edge} }?", + "delete-edges-text": "Будьте обережні, після підтвердження всі вибрані Edge будуть видалені, і всі пов'язані дані будуть неможливі для відновлення.", + "name": "Назва", + "name-starts-with": "Назва Edge починається з", + "name-required": "Назва є обов'язковою.", + "description": "Опис", + "details": "Деталі", + "events": "Події", + "copy-id": "Копіювати ID Edge", + "id-copied-message": "ID Edge скопійовано в буфер обміну", + "sync": "Синхронізувати Edge", + "edge-required": "Edge є обов'язковим", + "edge-type": "Тип Edge", + "edge-type-required": "Тип Edge є обов'язковим.", + "event-action": "Дія події", + "entity-id": "ID сутності", + "select-edge-type": "Вибрати тип Edge", + "assign-to-customer": "Призначити клієнту", + "assign-to-customer-text": "Будь ласка, виберіть клієнта для призначення Edge", + "assign-edge-to-customer": "Призначити Edge клієнту", + "assign-edge-to-customer-text": "Будь ласка, виберіть Edge для призначення клієнту", + "assignedToCustomer": "Призначено клієнту", + "edge-public": "Edge публічний", + "assigned-to-customer": "Призначено: {{customerTitle}}", + "unassign-from-customer": "Зняти призначення від клієнта", + "unassign-edge-title": "Ви впевнені, що хочете зняти призначення Edge '{{edgeName}}'?", + "unassign-edge-text": "Після підтвердження Edge буде знято з призначення і він не буде доступний клієнту.", + "unassign-edges-title": "Ви впевнені, що хочете зняти призначення { count, plural, =1 {1 Edge} other {# Edge} }?", + "unassign-edges-text": "Після підтвердження всі вибрані Edge будуть зняті з призначення і не будуть доступні клієнту.", + "make-public": "Зробити Edge публічним", + "make-public-edge-title": "Ви впевнені, що хочете зробити Edge '{{edgeName}}' публічним?", + "make-public-edge-text": "Після підтвердження Edge і всі його дані стануть публічними і будуть доступні для інших.", + "make-private": "Зробити Edge приватним", + "public": "Публічний", + "make-private-edge-title": "Ви впевнені, що хочете зробити Edge '{{edgeName}}' приватним?", + "make-private-edge-text": "Після підтвердження Edge і всі його дані стануть приватними і не будуть доступні для інших.", + "import": "Імпортувати Edge", + "install-connect-instructions": "Інструкції з встановлення та підключення", + "install-connect-instructions-edge-created": "Edge створено! Перевірте інструкції з встановлення та підключення", + "loading-edge-instructions": "Завантаження інструкцій для Edge...", + "label": "Маркування", + "load-entity-error": "Не вдалося завантажити дані. Сутність була видалена.", + "assign-new-edge": "Призначити новий Edge", + "unassign-from-edge": "Зняти призначення з Edge", + "edge-key": "Ключ Edge", + "copy-edge-key": "Копіювати ключ Edge", + "edge-key-copied-message": "Ключ Edge скопійовано в буфер обміну", + "edge-secret": "Секрет Edge", + "copy-edge-secret": "Копіювати секрет Edge", + "edge-secret-copied-message": "Секрет Edge скопійовано в буфер обміну", + "manage-assets": "Управління активами", + "manage-devices": "Управління пристроями", + "manage-entity-views": "Управління поданнями сутностей", + "manage-dashboards": "Управління дашбордами", + "manage-rulechains": "Управління ланцюгами правил", + "assets": "Активи Edge", + "devices": "Пристрої Edge", + "entity-views": "Подання сутностей Edge", + "dashboard": "Дашборд Edge", + "dashboards": "Дашборди Edge", + "rulechain-templates": "Шаблони ланцюгів правил", + "edge-rulechain-templates": "Шаблони ланцюгів правил Edge", + "rulechains": "Ланцюги правил Edge", + "search": "Шукати edge", + "selected-edges": "{ count, plural, =1 {1 edge} other {# edge} } вибрано", + "any-edge": "Будь-який edge", + "no-edge-types-matching": "Не знайдено типів edge, що відповідають '{{entitySubtype}}'.", + "edge-type-list-empty": "Не вибрано типів edge.", + "edge-types": "Типи edge", + "enter-edge-type": "Введіть тип edge", + "deployed": "Розгорнуто", + "pending": "Очікує", + "downlinks": "Низхідні з'єднання", + "no-downlinks-prompt": "Низхідні з'єднання не знайдено", + "sync-process-started-successfully": "Процес синхронізації розпочато успішно!", + "missing-related-rule-chains-title": "Edge має відсутні пов'язані ланцюги правил", + "missing-related-rule-chains-text": "Призначені для edge ланцюги правил використовують вузли правил, які пересилають повідомлення до ланцюгів правил, що не призначені цьому edge.

Список відсутніх ланцюгів правил:
{{missingRuleChains}}", + "widget-datasource-error": "Цей віджет підтримує тільки джерело даних EDGE сутності", + "upgrade-instructions": "Інструкції з оновлення", + "connected": "Підключено", + "disconnected": "Відключено" + }, + "edge-event": { + "type-dashboard": "Дашборд", + "type-asset": "Актив", + "type-device": "Пристрій", + "type-device-profile": "Профіль пристрою", + "type-asset-profile": "Профіль активу", + "type-entity-view": "Подання сутності", + "type-alarm": "Тривога", + "type-rule-chain": "Ланцюг правил", + "type-rule-chain-metadata": "Метадані ланцюга правил", + "type-edge": "Edge", + "type-user": "Користувач", + "type-tenant": "Тенант", + "type-tenant-profile": "Профіль тенанта", + "type-customer": "Клієнт", + "type-relation": "Зв'язок", + "type-widgets-bundle": "Набір віджетів", + "type-widgets-type": "Тип віджетів", + "type-admin-settings": "Налаштування адміністратора", + "type-ota-package": "Пакет OTA", + "type-queue": "Черга", + "action-type-added": "Додано", + "action-type-deleted": "Видалено", + "action-type-updated": "Оновлено", + "action-type-post-attributes": "Пост атрибути", + "action-type-attributes-updated": "Атрибути оновлені", + "action-type-attributes-deleted": "Атрибути видалені", + "action-type-timeseries-updated": "Часові ряди оновлені", + "action-type-credentials-updated": "Облікові дані оновлені", + "action-type-assigned-to-customer": "Призначено клієнту", + "action-type-unassigned-from-customer": "Знято з призначення клієнту", + "action-type-relation-add-or-update": "Додати або оновити зв'язок", + "action-type-relation-deleted": "Зв'язок видалено", + "action-type-rpc-call": "Виклик RPC", + "action-type-alarm-ack": "Підтвердження тривоги", + "action-type-alarm-clear": "Очищення тривоги", + "action-type-alarm-assigned": "Призначено тривогу", + "action-type-alarm-unassigned": "Знято призначення тривоги", + "action-type-assigned-to-edge": "Призначено Edge", + "action-type-unassigned-from-edge": "Знято з призначення Edge", + "action-type-credentials-request": "Запит облікових даних", + "action-type-entity-merge-request": "Запит на об'єднання сутностей" + }, + "error": { + "unable-to-connect": "Не вдалося підключитися до сервера! Будь ласка, перевірте ваше підключення до Інтернету.", + "unhandled-error-code": "Невідома помилка коду: {{errorCode}}", + "unknown-error": "Невідома помилка" + }, + "entity": { + "entity": "Сутність", + "entities": "Сутності", + "entities-count": "Кількість сутностей", + "alarms-count": "Кількість тривог", + "aliases": "Псевдоніми сутностей", + "aliases-short": "Псевдоніми", + "entity-alias": "Псевдонім сутності", + "unable-delete-entity-alias-title": "Не вдалося видалити псевдонім сутності", + "unable-delete-entity-alias-text": "Псевдонім сутності '{{entityAlias}}' не можна видалити, оскільки він використовується наступними віджетами:
{{widgetsList}}", + "duplicate-alias-error": "Знайдено дубльований псевдонім '{{alias}}'.
Псевдоніми сутностей повинні бути унікальними в межах дашборду.", + "missing-entity-filter-error": "Відсутній фільтр для псевдоніма '{{alias}}'.", + "configure-alias": "Налаштувати псевдонім '{{alias}}'", + "alias": "Псевдонім", + "alias-required": "Псевдонім сутності є обов'язковим.", + "remove-alias": "Видалити псевдонім сутності", + "add-alias": "Додати псевдонім сутності", + "edit-alias": "Редагувати псевдонім сутності", + "entity-list": "Список сутностей", + "entity-type": "Тип сутності", + "entity-types": "Типи сутностей", + "entity-type-list": "Список типів сутностей", + "any-entity": "Будь-яка сутність", + "add-entity-type": "Додати тип сутності", + "enter-entity-type": "Введіть тип сутності", + "no-entities-matching": "Не знайдено сутностей, що відповідають '{{entity}}'.", + "no-entities-text": "Сутностей не знайдено", + "no-entity-types-matching": "Не знайдено типів сутностей, що відповідають '{{entityType}}'.", + "name-starts-with": "Вираз для назви", + "help-text": "Використовуйте '%' за потребою: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", + "use-entity-name-filter": "Використовувати фільтр", + "entity-list-empty": "Не вибрано сутностей.", + "entity-type-list-required": "Потрібно вибрати хоча б один тип сутності.", + "entity-name-filter-required": "Фільтр за назвою сутності є обов'язковим.", + "entity-name-filter-no-entity-matched": "Не знайдено сутностей, що починаються з '{{entity}}'.", + "all-subtypes": "Усі", + "select-entities": "Вибрати сутності", + "no-aliases-found": "Псевдоніми не знайдені.", + "no-alias-matching": "'{{alias}}' не знайдено.", + "create-new-alias": "Створити новий!", + "create-new": "Створити новий", + "key": "Ключ", + "key-name": "Назва ключа", + "no-keys-found": "Ключі не знайдені.", + "no-key-matching": "'{{key}}' не знайдено.", + "create-new-key": "Створити новий!", + "type": "Тип", + "type-required": "Тип сутності є обов'язковим.", + "type-device": "Пристрій", + "type-devices": "Пристрої", + "list-of-devices": "{ count, plural, =1 {Один пристрій} other {Список # пристроїв} }", + "device-name-starts-with": "Пристрої, назви яких починаються з '{{prefix}}'", + "type-device-profile": "Профіль пристрою", + "type-device-profiles": "Профілі пристроїв", + "clear-selected-profiles": "Очистити вибрані профілі", + "list-of-device-profiles": "{ count, plural, =1 {Один профіль пристрою} other {Список # профілів пристроїв} }", + "device-profile-name-starts-with": "Профілі пристроїв, назви яких починаються з '{{prefix}}'", + "type-asset-profile": "Профіль активу", + "type-asset-profiles": "Профілі активів", + "list-of-asset-profiles": "{ count, plural, =1 {Один профіль активу} other {Список # профілів активів} }", + "asset-profile-name-starts-with": "Профілі активів, назви яких починаються з '{{prefix}}'", + "type-asset": "Актив", + "type-assets": "Активи", + "list-of-assets": "{ count, plural, =1 {Один актив} other {Список # активів} }", + "asset-name-starts-with": "Активи, назви яких починаються з '{{prefix}}'", + "type-entity-view": "Подання сутності", + "type-entity-views": "Подання сутностей", + "list-of-entity-views": "{ count, plural, =1 {Одне подання сутності} other {Список # подань сутностей} }", + "entity-view-name-starts-with": "Подання сутностей, назви яких починаються з '{{prefix}}'", + "type-rule": "Правило", + "type-rules": "Правила", + "list-of-rules": "{ count, plural, =1 {Одне правило} other {Список # правил} }", + "rule-name-starts-with": "Правила, назви яких починаються з '{{prefix}}'", + "type-plugin": "Плагін", + "type-plugins": "Плагіни", + "list-of-plugins": "{ count, plural, =1 {Один плагін} other {Список # плагінів} }", + "plugin-name-starts-with": "Плагіни, назви яких починаються з '{{prefix}}'", + "type-tenant": "Тенант", + "type-tenants": "Тенанти", + "list-of-tenants": "{ count, plural, =1 {Один тенант} other {Список # тенантів} }", + "tenant-name-starts-with": "Тенанти, назви яких починаються з '{{prefix}}'", + "type-tenant-profile": "Профіль тенанта", + "type-tenant-profiles": "Профілі тенантів", + "list-of-tenant-profiles": "{ count, plural, =1 {Один профіль тенанта} other {Список # профілів тенантів} }", + "tenant-profile-name-starts-with": "Профілі тенантів, назви яких починаються з '{{prefix}}'", + "type-customer": "Клієнт", + "type-customers": "Клієнти", + "list-of-customers": "{ count, plural, =1 {Один клієнт} other {Список # клієнтів} }", + "customer-name-starts-with": "Клієнти, назви яких починаються з '{{prefix}}'", + "type-user": "Користувач", + "type-users": "Користувачі", + "list-of-users": "{ count, plural, =1 {Один користувач} other {Список # користувачів} }", + "user-name-starts-with": "Користувачі, назви яких починаються з '{{prefix}}'", + "type-dashboard": "Дашборд", + "type-dashboards": "Дашборди", + "list-of-dashboards": "{ count, plural, =1 {Один дашборд} other {Список # дашбордів} }", + "dashboard-name-starts-with": "Дашборди, назви яких починаються з '{{prefix}}'", + "type-alarm": "Тривога", + "type-alarms": "Тривоги", + "list-of-alarms": "{ count, plural, =1 {Одна тривога} other {Список # тривог} }", + "alarm-name-starts-with": "Тривоги, назви яких починаються з '{{prefix}}'", + "type-rulechain": "Ланцюг правил", + "type-rulechains": "Ланцюги правил", + "list-of-rulechains": "{ count, plural, =1 {Один ланцюг правил} other {Список # ланцюгів правил} }", + "rulechain-name-starts-with": "Ланцюги правил, назви яких починаються з '{{prefix}}'", + "type-rulenode": "Вузол правила", + "type-rulenodes": "Вузли правил", + "list-of-rulenodes": "{ count, plural, =1 {Один вузол правила} other {Список # вузлів правил} }", + "rulenode-name-starts-with": "Вузли правил, назви яких починаються з '{{prefix}}'", + "type-current-customer": "Поточний клієнт", + "type-current-tenant": "Поточний тенант", + "type-current-user": "Поточний користувач", + "type-current-user-owner": "Поточний власник користувача", + "type-calculated-field": "Розрахункове поле", + "type-calculated-fields": "Розрахункові поля", + "type-ai-model": "Модель AI", + "type-ai-models": "Моделі AI", + "type-widgets-bundle": "Набір віджетів", + "type-widgets-bundles": "Набори віджетів", + "list-of-widgets-bundles": "{ count, plural, =1 {Один набір віджетів} other {Список # наборів віджетів} }", + "type-widget": "Віджет", + "type-widgets": "Віджети", + "list-of-widgets": "{ count, plural, =1 {Один віджет} other {Список # віджетів} }", + "search": "Шукати сутності", + "selected-entities": "{ count, plural, =1 {1 сутність} other {# сутностей} } вибрано", + "entity-name": "Назва сутності", + "entity-label": "Маркування сутності", + "details": "Деталі сутності", + "no-entities-prompt": "Сутності не знайдено", + "no-data": "Немає даних для відображення", + "columns-to-display": "Стовпчики для відображення", + "type-api-usage-state": "Стан використання API", + "type-edge": "Edge", + "type-edges": "Edges", + "list-of-edges": "{ count, plural, =1 {One edge} other {List of # edges} }", + "edge-name-starts-with": "Edges whose names start with '{{prefix}}'", + "version-conflict": { + "message": "Ви хочете перезаписати наявну версію чи відхилити зміни та завантажити останню версію?", + "link": "Ви можете завантажити вашу версію {{entityType}} за допомогою цього", + "overwrite": "Перезаписати версію", + "discard": "Відхилити зміни" + }, + "type-tb-resource": "Ресурс", + "type-tb-resources": "Ресурси", + "list-of-tb-resources": "{ count, plural, =1 {Один ресурс} other {Список # ресурсів} }", + "type-ota-package": "Пакет OTA", + "type-ota-packages": "Пакети OTA", + "list-of-ota-packages": "{ count, plural, =1 {Один пакет OTA} other {Список # пакетів OTA} }", + "type-rpc": "RPC", + "type-queue": "Черга", + "type-queue-stats": "Статистика черги", + "type-queues-stats": "Статистика черг", + "type-notification": "Сповіщення", + "type-notification-rule": "Правило сповіщення", + "type-notification-rules": "Правила сповіщень", + "list-of-notification-rules": "{ count, plural, =1 {Одне правило сповіщення} other {Список # правил сповіщень} }", + "type-notification-target": "Одержувач сповіщення", + "type-notification-targets": "Одержувачі сповіщень", + "list-of-notification-targets": "{ count, plural, =1 {Один одержувач сповіщення} other {Список # одержувачів сповіщень} }", + "type-notification-request": "Запит сповіщення", + "type-notification-template": "Шаблон сповіщення", + "type-notification-templates": "Шаблони сповіщень", + "list-of-notification-templates": "{ count, plural, =1 {Один шаблон сповіщення} other {Список # шаблонів сповіщень} }", + "link": "посилання", + "type-oauth2-client": "Клієнт OAuth 2.0", + "type-oauth2-clients": "Клієнти OAuth 2.0", + "list-of-oauth2-clients": "{ count, plural, =1 {Один клієнт OAuth 2.0} other {Список # клієнтів OAuth 2.0} }", + "type-domain": "Домен", + "type-domains": "Домени", + "list-of-domains": "{ count, plural, =1 {Один домен} other {Список # доменів} }", + "type-mobile-app": "Мобільний застосунок", + "type-mobile-apps": "Мобільні застосунки", + "list-of-mobile-apps": "{ count, plural, =1 {Один мобільний застосунок} other {Список # мобільних застосунків} }", + "type-mobile-app-bundle": "Мобільний набір", + "type-mobile-app-bundles": "Мобільні набори", + "list-of-mobile-app-bundles": "{ count, plural, =1 {Один мобільний набір} other {Список # мобільних наборів} }" + }, + "entity-field": { + "created-time": "Час створення", + "name": "Назва", + "type": "Тип", + "first-name": "Ім'я", + "last-name": "Прізвище", + "email": "Email", + "title": "Заголовок", + "country": "Країна", + "state": "Штат", + "city": "Місто", + "address": "Адреса", + "address2": "Адреса 2", + "zip": "Поштовий індекс", + "phone": "Телефон", + "label": "Маркування", + "queue-name": "Назва черги", + "service-id": "Id сервісу", + "owner-name": "Назва власника", + "owner-type": "Тип власника" + }, + "entity-view": { + "entity-view": "Фрагмент сутності", + "entity-view-required": "Фрагмент сутності є обов'язковим.", + "entity-views": "Фрагменти сутностей", + "management": "Управління фрагментами сутностей", + "view-entity-views": "Переглянути фрагменти сутностей", + "entity-view-alias": "Псевдонім фрагмента сутності", + "aliases": "Псевдоніми фрагментів сутностей", + "no-alias-matching": "'{{alias}}' не знайдено.", + "no-aliases-found": "Псевдоніми не знайдені.", + "no-key-matching": "'{{key}}' не знайдено.", + "no-keys-found": "Ключі не знайдені.", + "create-new-alias": "Створити новий!", + "create-new-key": "Створити новий!", + "duplicate-alias-error": "Знайдено дубльований псевдонім '{{alias}}'.
Псевдоніми фрагментів сутностей повинні бути унікальними в межах дашборду.", + "configure-alias": "Налаштувати псевдонім '{{alias}}'", + "no-entity-views-matching": "Не знайдено фрагментів сутностей, що відповідають '{{entity}}'.", + "public": "Публічний", + "alias": "Псевдонім", + "alias-required": "Псевдонім фрагмента сутності є обов'язковим.", + "remove-alias": "Видалити псевдонім фрагмента сутності", + "add-alias": "Додати псевдонім для фрагмента сутності", + "name-starts-with": "Вираз для назви фрагмента сутності", + "help-text": "Використовуйте '%' за потребою: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", + "entity-view-list": "Список фрагментів сутностей", + "use-entity-view-name-filter": "Використовувати фільтр", + "entity-view-list-empty": "Фрагменти сутностей не вибрано.", + "entity-view-name-filter-required": "Фільтр назви фрагмента сутності є обов'язковим.", + "entity-view-name-filter-no-entity-view-matched": "Не знайдено фрагментів сутностей, що починаються з '{{entityView}}'.", + "add": "Додати фрагмент сутності", + "entity-view-public": "Фрагмент сутності є публічним", + "assign-to-customer": "Призначити клієнту", + "assign-entity-view-to-customer": "Призначити фрагмент сутності клієнту", + "assign-entity-view-to-customer-text": "Будь ласка, виберіть фрагменти сутностей для призначення клієнту", + "no-entity-views-text": "Фрагменти сутностей не знайдено", + "assign-to-customer-text": "Будь ласка, виберіть клієнта для призначення фрагмента сутності", + "entity-view-details": "Деталі фрагмента сутності", + "add-entity-view-text": "Додати новий фрагмент сутності", + "delete": "Видалити фрагмент сутності", + "assign-entity-views": "Призначити фрагменти сутностей", + "assign-entity-views-text": "Призначити { count, plural, =1 {1 фрагмент сутності} other {# фрагменти сутностей} } клієнту", + "delete-entity-views": "Видалити фрагменти сутностей", + "make-public": "Зробити фрагмент сутності публічним", + "make-private": "Зробити фрагмент сутності приватним", + "unassign-from-customer": "Зняти призначення від клієнта", + "unassign-entity-views": "Зняти призначення фрагментів сутностей", + "unassign-entity-views-action-title": "Зняти призначення { count, plural, =1 {1 фрагмент сутності} other {# фрагментів сутностей} } від клієнта", + "assign-new-entity-view": "Призначити новий фрагмент сутності", + "delete-entity-view-title": "Ви впевнені, що хочете видалити фрагмент сутності '{{entityViewName}}'?", + "delete-entity-view-text": "Будьте обережні, після підтвердження фрагмент сутності і всі пов'язані дані будуть неможливі для відновлення.", + "delete-entity-views-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 фрагмент сутності} other {# фрагментів сутностей} }?", + "delete-entity-views-action-title": "Видалити { count, plural, =1 {1 фрагмент сутності} other {# фрагментів сутностей} }", + "delete-entity-views-text": "Будьте обережні, після підтвердження всі вибрані фрагменти сутностей будуть видалені і всі пов'язані дані будуть неможливі для відновлення.", + "make-public-entity-view-title": "Ви впевнені, що хочете зробити фрагмент сутності '{{entityViewName}}' публічним?", + "make-public-entity-view-text": "Після підтвердження фрагмент сутності і всі його дані стануть публічними та доступними для інших.", + "make-private-entity-view-title": "Ви впевнені, що хочете зробити фрагмент сутності '{{entityViewName}}' приватним?", + "make-private-entity-view-text": "Після підтвердження фрагмент сутності і всі його дані стануть приватними та не будуть доступними для інших.", + "unassign-entity-view-title": "Ви впевнені, що хочете зняти призначення фрагмента сутності '{{entityViewName}}'?", + "unassign-entity-view-text": "Після підтвердження призначення фрагмента сутності буде знято і воно не буде доступне для клієнта.", + "unassign-entity-view": "Зняти призначення фрагмента сутності", + "unassign-entity-views-title": "Ви впевнені, що хочете зняти призначення { count, plural, =1 {1 фрагмента сутності} other {# фрагменти сутностей} }?", + "unassign-entity-views-text": "Після підтвердження призначення всіх вибраних фрагментів сутностей буде знято і вони не будуть доступні для клієнта.", + "entity-view-type": "Тип фрагмента сутності", + "entity-view-type-required": "Тип фрагмента сутності є обов'язковим.", + "select-entity-view-type": "Вибрати тип фрагмента сутності", + "enter-entity-view-type": "Ввести тип фрагмента сутності", + "any-entity-view": "Будь-який фрагмент сутності", + "no-entity-view-types-matching": "Не знайдено типів фрагментів сутностей, що відповідають '{{entitySubtype}}'.", + "entity-view-type-list-empty": "Типи фрагментів сутностей не вибрано.", + "entity-view-types": "Типи фрагментів сутностей", + "created-time": "Час створення", + "name": "Назва", + "name-required": "Назва є обов'язковою.", + "name-max-length": "Назва має бути коротшою за 256 символів", + "type-max-length": "Тип фрагмента сутності має бути коротшим за 256 символів", + "description": "Опис", + "events": "Події", + "details": "Деталі", + "copyId": "Копіювати Id фрагмента сутності", + "idCopiedMessage": "Id фрагмента сутності скопійовано в буфер обміну", + "assignedToCustomer": "Призначено клієнту", + "unable-entity-view-device-alias-title": "Не вдалося видалити псевдонім фрагмента сутності", + "unable-entity-view-device-alias-text": "Псевдонім пристрою '{{entityViewAlias}}' не можна видалити, оскільки він використовується наступними віджетами:
{{widgetsList}}", + "select-entity-view": "Вибрати фрагмент сутності", + "start-ts": "Час початку", + "end-ts": "Час завершення", + "date-limits": "Обмеження дат", + "client-attributes": "Клієнтські атрибути", + "shared-attributes": "Спільні атрибути", + "server-attributes": "Серверні атрибути", + "timeseries": "Часові ряди", + "client-attributes-placeholder": "Клієнтські атрибути", + "shared-attributes-placeholder": "Спільні атрибути", + "server-attributes-placeholder": "Серверні атрибути", + "timeseries-placeholder": "Часові ряди", + "target-entity": "Цільова сутність", + "attributes-propagation": "Поширення атрибутів", + "attributes-propagation-hint": "Фрагмент сутності автоматично копіюватиме вказані атрибути з цільової сутності щоразу, коли Ви зберігаєте або оновлюєте цей фрагмент сутності. З міркувань продуктивності атрибути цільової сутності не поширюються до фрагмента сутності при кожній зміні атрибутів. Ви можете увімкнути автоматичне поширення, налаштувавши вузол правила \"copy to view\" у Вашому ланцюгу правил і зв'язавши повідомлення \"Post attributes\" та \"Attributes Updated\" з новим вузлом правила.", + "timeseries-data": "Дані часових рядів", + "timeseries-data-hint": "Налаштуйте ключі даних часових рядів цільової сутності, які будуть доступні для фрагмента сутності. Ці дані часових рядів доступні лише для читання.", + "search": "Шукати фрагменти сутностей", + "selected-entity-views": "{ count, plural, =1 {1 фрагмент сутності} other {# фрагментів сутностей} } вибрано", + "assign-entity-view-to-edge": "Призначити Фрагмент сутності(ей) до Edge", + "assign-entity-view-to-edge-text": "Будь ласка, виберіть фрагменти сутностей для призначення до edge", + "unassign-entity-view-from-edge-title": "Ви впевнені, що хочете зняти призначення фрагмента сутності '{{entityViewName}}'?", + "unassign-entity-view-from-edge-text": "Після підтвердження призначення фрагмента сутності буде знято і воно не буде доступне для edge.", + "unassign-entity-views-from-edge-action-title": "Зняти призначення { count, plural, =1 {1 фрагмент сутності} other {# фрагментів сутностей} } від edge", + "unassign-entity-view-from-edge": "Зняти призначення фрагмента сутності", + "unassign-entity-views-from-edge-title": "Ви впевнені, що хочете зняти призначення { count, plural, =1 {1 фрагмент сутності} other {# фрагментів сутностей} }?", + "unassign-entity-views-from-edge-text": "Після підтвердження призначення всіх вибраних фрагментів сутностей буде знято і вони не будуть доступні для edge." + }, + "event": { + "event-type": "Тип події", + "events-filter": "Фільтр подій", + "clean-events": "Очистити події", + "type-error": "Помилка", + "type-lc-event": "Подія життєвого циклу", + "type-stats": "Статистика", + "type-debug-rule-node": "Налагодження", + "type-debug-rule-chain": "Налагодження", + "type-debug-calculated-field": "Налагодження", + "arguments": "Аргументи", + "result": "Результат", + "no-events-prompt": "Події не знайдено", + "error": "Помилка", + "alarm": "Тривога", + "event-time": "Час події", + "server": "Сервер", + "body": "Тіло", + "method": "Метод", + "type": "Тип", + "metadata": "Метадані", + "message": "Повідомлення", + "message-id": "Id повідомлення", + "copy-message-id": "Копіювати Id повідомлення", + "message-type": "Тип повідомлення", + "data-type": "Тип даних", + "relation-type": "Тип зв'язку", + "data": "Дані", + "event": "Подія", + "status": "Статус", + "success": "Успішно", + "failed": "Не вдалося", + "messages-processed": "Оброблено повідомлень", + "max-messages-processed": "Максимум оброблених повідомлень", + "min-messages-processed": "Мінімум оброблених повідомлень", + "errors-occurred": "Сталося помилок", + "max-errors-occurred": "Максимум помилок", + "min-errors-occurred": "Мінімум помилок", + "min-value": "Мінімальне значення — 0.", + "all-events": "Усі", + "has-error": "Є помилка", + "entity-id": "Id сутності", + "copy-entity-id": "Копіювати Id сутності", + "entity-type": "Тип сутності", + "clear-filter": "Очистити фільтр", + "clear-request-title": "Очистити всі події", + "clear-request-text": "Ви впевнені, що хочете очистити всі події?", + "started": "Запущено", + "updated": "Оновлено", + "stopped": "Зупинено" + }, + "extension": { + "extensions": "Розширення", + "selected-extensions": "{ count, plural, =1 {1 розширення} other {# розширень} } вибрано", + "type": "Тип", + "key": "Ключ", + "value": "Значення", + "id": "Id", + "extension-id": "Id розширення", + "extension-type": "Тип розширення", + "transformer-json": "JSON *", + "unique-id-required": "Поточний Id розширення вже існує.", + "delete": "Видалити розширення", + "add": "Додати розширення", + "edit": "Редагувати розширення", + "delete-extension-title": "Ви впевнені, що хочете видалити розширення '{{extensionId}}'?", + "delete-extension-text": "Будьте обережні, після підтвердження розширення і всі пов'язані дані будуть неможливі для відновлення.", + "delete-extensions-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 розширення} other {# розширень} }?", + "delete-extensions-text": "Будьте обережні, після підтвердження всі вибрані розширення буде видалено.", + "converters": "Конвертери даних", + "converter-id": "Id конвертера даних", + "configuration": "Конфігурація", + "converter-configurations": "Конфігурації конвертера даних", + "token": "Токен безпеки", + "add-converter": "Додати конвертер даних", + "add-config": "Додати конфігурацію конвертера даних", + "device-name-expression": "Вираз назви пристрою", + "device-type-expression": "Вираз типу пристрою", + "custom": "Користувацький", + "to-double": "До Double", + "transformer": "Трансформер", + "json-required": "JSON трансформера є обов'язковим.", + "json-parse": "Не вдалося розібрати JSON трансформера.", + "attributes": "Атрибути", + "add-attribute": "Додати атрибут", + "add-map": "Додати елемент зіставлення", + "timeseries": "Часовий ряд", + "add-timeseries": "Додати часовий ряд", + "field-required": "Поле є обов'язковим", + "brokers": "Брокери", + "add-broker": "Додати брокера", + "host": "Хост", + "port": "Порт", + "port-range": "Порт має бути в діапазоні від 1 до 65535.", + "ssl": "Ssl", + "credentials": "Облікові дані", + "username": "Ім'я користувача", + "password": "Пароль", + "retry-interval": "Інтервал повторної спроби в мілісекундах", + "anonymous": "Анонімний", + "basic": "Basic", + "pem": "PEM", + "ca-cert": "Файл сертифіката CA *", + "private-key": "Файл приватного ключа *", + "cert": "Файл сертифіката *", + "no-file": "Файл не вибрано.", + "drop-file": "Перетягніть файл або натисніть, щоб вибрати файл для завантаження.", + "mapping": "Зіставлення", + "topic-filter": "Фільтр топіків", + "converter-type": "Тип конвертера", + "converter-json": "JSON", + "json-name-expression": "Вираз назви пристрою в JSON", + "topic-name-expression": "Вираз назви пристрою в топіку", + "json-type-expression": "Вираз типу пристрою в JSON", + "topic-type-expression": "Вираз типу пристрою в топіку", + "attribute-key-expression": "Вираз ключа атрибуту", + "attr-json-key-expression": "Вираз ключа атрибуту в JSON", + "attr-topic-key-expression": "Вираз ключа атрибуту в топіку", + "request-id-expression": "Вираз ID запиту", + "request-id-json-expression": "Вираз ID запиту в JSON", + "request-id-topic-expression": "Вираз ID запиту в топіку", + "response-topic-expression": "Вираз топіка відповіді", + "value-expression": "Вираз значення", + "topic": "Топік", + "timeout": "Тайм-аут у мілісекундах", + "converter-json-required": "Json конвертера є обов'язковим.", + "converter-json-parse": "Не вдалося розібрати json конвертера.", + "filter-expression": "Вираз фільтра", + "connect-requests": "Запити підключення", + "add-connect-request": "Додати запит підключення", + "disconnect-requests": "Запити відключення", + "add-disconnect-request": "Додати запит відключення", + "attribute-requests": "Запити атрибутів", + "add-attribute-request": "Додати запит атрибута", + "attribute-updates": "Оновлення атрибутів", + "add-attribute-update": "Додати оновлення атрибута", + "server-side-rpc": "RPC на стороні сервера", + "add-server-side-rpc-request": "Додати RPC-запит на стороні сервера", + "device-name-filter": "Фільтр назви пристрою", + "attribute-filter": "Фільтр атрибутів", + "method-filter": "Фільтр методу", + "request-topic-expression": "Вираз топіка запиту", + "response-timeout": "Тайм-аут відповіді в мілісекундах", + "topic-expression": "Вираз топіка", + "client-scope": "Область клієнта", + "add-device": "Додати пристрій", + "opc-server": "Сервери", + "opc-add-server": "Додати сервер", + "opc-add-server-prompt": "Будь ласка, додайте сервер", + "opc-application-name": "Назва застосунку", + "opc-application-uri": "URI застосунку", + "opc-scan-period-in-seconds": "Період сканування в секундах", + "opc-security": "Безпека", + "opc-identity": "Ідентифікація", + "opc-keystore": "Сховище ключів", + "opc-type": "Тип", + "opc-keystore-type": "Тип", + "opc-keystore-location": "Розташування *", + "opc-keystore-password": "Пароль", + "opc-keystore-alias": "Псевдонім", + "opc-keystore-key-password": "Пароль ключа", + "opc-device-node-pattern": "Шаблон вузла пристрою", + "opc-device-name-pattern": "Шаблон назви пристрою", + "modbus-server": "Сервери/підлеглі", + "modbus-add-server": "Додати сервер/підлеглий", + "modbus-add-server-prompt": "Будь ласка, додайте сервер/підлеглий", + "modbus-transport": "Транспорт", + "modbus-tcp-reconnect": "Автоматично перепідключатися", + "modbus-rtu-over-tcp": "RTU через TCP", + "modbus-port-name": "Назва послідовного порту", + "modbus-encoding": "Кодування", + "modbus-parity": "Парність", + "modbus-baudrate": "Швидкість передавання", + "modbus-databits": "Біти даних", + "modbus-stopbits": "Стоп-біти", + "modbus-databits-range": "Біти даних мають бути в діапазоні від 7 до 8.", + "modbus-stopbits-range": "Стоп-біти мають бути в діапазоні від 1 до 2.", + "modbus-unit-id": "Unit ID", + "modbus-unit-id-range": "Unit ID має бути в діапазоні від 1 до 247.", + "modbus-device-name": "Назва пристрою", + "modbus-poll-period": "Період опитування (мс)", + "modbus-attributes-poll-period": "Період опитування атрибутів (мс)", + "modbus-timeseries-poll-period": "Період опитування часових рядів (мс)", + "modbus-poll-period-range": "Період опитування має бути додатним значенням.", + "modbus-tag": "Тег", + "modbus-function": "Функція", + "modbus-register-address": "Адреса регістра", + "modbus-register-address-range": "Адреса регістра має бути в діапазоні від 0 до 65535.", + "modbus-register-bit-index": "Індекс біта", + "modbus-register-bit-index-range": "Індекс біта має бути в діапазоні від 0 до 15.", + "modbus-register-count": "Кількість регістрів", + "modbus-register-count-range": "Кількість регістрів має бути додатним значенням.", + "modbus-byte-order": "Порядок байтів", + "sync": { + "status": "Статус", + "sync": "Синхронізовано", + "not-sync": "Не синхронізовано", + "last-sync-time": "Час останньої синхронізації", + "not-available": "Недоступно" + }, + "export-extensions-configuration": "Експортувати конфігурацію розширень", + "import-extensions-configuration": "Імпортувати конфігурацію розширень", + "import-extensions": "Імпортувати розширення", + "import-extension": "Імпортувати розширення", + "export-extension": "Експортувати розширення", + "file": "Файл розширень", + "invalid-file-error": "Неприпустимий файл розширення" + }, + "feature": { + "advanced-features": "Розширені можливості" + }, + "filter": { + "add": "Додати фільтр", + "edit": "Редагувати фільтр", + "name": "Назва фільтра", + "name-required": "Назва фільтра є обов'язковою.", + "duplicate-filter": "Фільтр з такою назвою вже існує.", + "filters": "Фільтри", + "unable-delete-filter-title": "Не вдалося видалити фільтр", + "unable-delete-filter-text": "Фільтр '{{filter}}' не можна видалити, оскільки він використовується наступними віджетами:
{{widgetsList}}", + "duplicate-filter-error": "Знайдено дубльований фільтр '{{filter}}'.
Фільтри повинні бути унікальними в межах дашборду.", + "missing-key-filters-error": "Відсутні фільтри ключів для фільтра '{{filter}}'.", + "filter": "Фільтр", + "editable": "Доступний для редагування", + "editable-hint": "Дозволити користувачу змінювати значення фільтра в дашбордах.", + "no-filters-found": "Фільтри не знайдено.", + "no-filter-text": "Фільтр не вказано", + "add-filter-prompt": "Будь ласка, додайте фільтр", + "no-filter-matching": "'{{filter}}' не знайдено.", + "create-new-filter": "Створити новий!", + "create-new": "Створити новий", + "filter-required": "Фільтр є обов'язковим.", + "operation": { + "operation": "Операція", + "equal": "дорівнює", + "not-equal": "не дорівнює", + "starts-with": "починається з", + "ends-with": "закінчується на", + "contains": "містить", + "not-contains": "не містить", + "greater": "більше ніж", + "less": "менше ніж", + "greater-or-equal": "більше або дорівнює", + "less-or-equal": "менше або дорівнює", + "and": "і", + "or": "або", + "in": "в", + "not-in": "не в" + }, + "ignore-case": "ігнорувати регістр", + "value": "Значення", + "remove-filter": "Видалити фільтр", + "duplicate-filter-action": "Дублювати фільтр", + "preview": "Попередній перегляд фільтра", + "no-filters": "Фільтри не налаштовано", + "add-filter": "Додати фільтр", + "add-complex-filter": "Додати складний фільтр", + "add-complex": "Додати складний", + "complex-filter": "Складний фільтр", + "edit-complex-filter": "Редагувати складний фільтр", + "edit-filter-user-params": "Редагувати параметри користувача предиката фільтра", + "filter-user-params": "Параметри користувача предиката фільтра", + "user-parameters": "Параметри користувача", + "display-label": "Маркування для відображення", + "custom-label": "Користувацьке маркування", + "custom-label-hint": "Увімкніть, щоб задати власне маркування для фільтра. Якщо вимкнено, маркування буде згенеровано автоматично.", + "order-priority": "Порядок відображення", + "key-filter": "Фільтр ключа", + "key-filters": "Фільтри ключів", + "key-name": "Назва ключа", + "key-name-required": "Назва ключа є обов'язковою.", + "key-type": { + "key-type": "Тип ключа", + "attribute": "Атрибут", + "timeseries": "Часовий ряд", + "entity-field": "Поле сутності", + "constant": "Константа", + "client-attribute": "Клієнтський атрибут", + "server-attribute": "Серверний атрибут", + "shared-attribute": "Спільний атрибут" + }, + "value-type": { + "value-type": "Тип значення", + "string": "Рядок", + "numeric": "Числовий", + "boolean": "Логічний", + "date-time": "Дата й час" + }, + "value-type-required": "Тип значення ключа є обов'язковим.", + "key-value-type-change-title": "Ви впевнені, що хочете змінити тип значення ключа?", + "key-value-type-change-message": "Якщо ви підтвердите новий тип значення, всі введені фільтри ключів будуть видалені.", + "no-key-filters": "Фільтри ключів не налаштовано", + "add-key-filter": "Додати фільтр ключа", + "remove-key-filter": "Видалити фільтр ключа", + "edit-key-filter": "Редагувати фільтр ключа", + "date": "Дата", + "time": "Час", + "current-tenant": "Поточний орендар", + "current-customer": "Поточний клієнт", + "current-user": "Поточний користувач", + "current-device": "Поточний пристрій", + "default-value": "Типове значення", + "default-comma-separated-values": "Типові значення через кому", + "dynamic-source-type": "Тип динамічного джерела", + "dynamic-value": "Динамічне значення", + "no-dynamic-value": "Немає динамічного значення", + "source-attribute": "Атрибут джерела", + "switch-to-dynamic-value": "Перейти до динамічного значення", + "switch-to-default-value": "Перейти до типового значення", + "inherit-owner": "Спадкувати від власника", + "source-attribute-not-set": "Якщо атрибут джерела не налаштовано", + "unit": "Одиниця" + }, + "fullscreen": { + "expand": "Розгорнути на весь екран", + "exit": "Вийти з повноекранного режиму", + "toggle": "Переключити повноекранний режим", + "fullscreen": "Повноекранний режим" + }, + "function": { + "function": "Функція" + }, + "gateway": { + "gateway-name": "Назва Gateway", + "gateway-name-required": "Потрібно вказати назву Gateway.", + "gateways": "Gateways", + "create-new-gateway": "Створити новий Gateway", + "create-new-gateway-text": "Ви впевнені, що хочете створити новий Gateway з назвою: '{{gatewayName}}'?", + "launch-command": "Команда запуску", + "no-gateway-found": "Gateway не знайдено.", + "no-gateway-matching": " '{{item}}' не знайдено." + }, + "grid": { + "delete-item-title": "Ви впевнені, що хочете видалити цей елемент?", + "delete-item-text": "Будьте обережні, після підтвердження цей елемент і всі пов'язані дані стануть відновленими.", + "delete-items-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 елемент} other {# елементів} }?", + "delete-items-action-title": "Видалити { count, plural, =1 {1 елемент} other {# елементів} }", + "delete-items-text": "Будьте обережні, після підтвердження всі вибрані елементи будуть видалені, і всі пов'язані дані стануть відновленими.", + "add-item-text": "Додати новий елемент", + "no-items-text": "Елементи не знайдено", + "item-details": "Деталі елемента", + "delete-item": "Видалити елемент", + "delete-items": "Видалити елементи", + "scroll-to-top": "Прокрутити до верху" + }, + "help": { + "goto-help-page": "Перейти на сторінку допомоги", + "show-help": "Показати допомогу" + }, + "home": { + "home": "Головна", + "profile": "Профіль", + "logout": "Вийти", + "menu": "Меню", + "avatar": "Аватар", + "open-user-menu": "Відкрити меню користувача" + }, + "file-input": { + "browse-file": "Переглянути файл", + "browse-files": "Переглянути файли" + }, + "image": { + "gallery": "Галерея зображень", + "search": "Шукати зображення", + "selected-images": "{ count, plural, =1 {1 зображення} other {# зображень} } вибрано", + "created-time": "Час створення", + "name": "Назва", + "name-required": "Потрібно вказати назву.", + "resolution": "Роздільна здатність", + "size": "Розмір", + "system": "Система", + "download-image": "Завантажити зображення", + "export-image": "Експортувати зображення в JSON", + "import-image": "Імпортувати зображення з JSON", + "upload-image": "Вивантажити зображення", + "edit-image": "Редагувати зображення", + "image-details": "Деталі зображення", + "no-images": "Зображень не знайдено", + "delete-image": "Видалити зображення", + "delete-image-title": "Ви впевнені, що хочете видалити зображення '{{imageTitle}}'?", + "delete-image-text": "Будьте обережні, після підтвердження зображення буде неможливо відновити.", + "delete-images-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 зображення} other {# зображень} }?", + "delete-images-text": "Будьте обережні, після підтвердження всі вибрані зображення буде видалено, і всі пов'язані дані буде неможливо відновити.", + "list-mode": "Перегляд списком", + "grid-mode": "Перегляд сіткою", + "image-preview": "Попередній перегляд зображення", + "update-image": "Оновити зображення", + "export-failed-error": "Не вдалося експортувати зображення: {{error}}", + "image-json-file": "JSON-файл зображення", + "invalid-image-json-file-error": "Не вдалося імпортувати зображення з JSON: Некоректна структура даних JSON зображення.", + "image-is-in-use": "Зображення використовується іншими сутностями", + "images-are-in-use": "Зображення використовуються іншими сутностями", + "image-is-in-use-text": "Зображення '{{title}}' не було видалено, оскільки воно використовується такими сутностями:", + "images-are-in-use-text": "Не всі зображення було видалено, оскільки вони використовуються іншими сутностями.
Ви можете переглянути пов'язані сутності, натиснувши кнопку Посилання у відповідному рядку зображення.
Якщо Ви все ще хочете видалити ці зображення, виберіть їх у таблиці нижче та натисніть кнопку Видалити вибране.", + "delete-image-in-use-text": "Якщо Ви все ще хочете видалити зображення, натисніть кнопку Видалити все одно.", + "system-entities": "Системні сутності:", + "entities": "сутності:", + "references": "Посилання", + "include-system-images": "Включити системні зображення", + "clear-image": "Очистити зображення", + "no-image": "Немає зображення", + "no-image-selected": "Зображення не вибрано", + "browse-from-gallery": "Вибрати з галереї", + "set-link": "Встановити посилання", + "image-link": "Посилання на зображення", + "link": "Посилання", + "copy-image-link": "Копіювати посилання на зображення", + "embed-image": "Вбудувати зображення", + "embed-to-html": "Вбудувати в HTML", + "embed-to-html-hint": "Ця функція зробить посилання доступним будь-якому неавторизованому користувачу.", + "embed-to-html-text": "Використовуючи наведений нижче фрагмент коду, Ви можете вбудувати зображення у компоненти на основі звичайного HTML.
До таких компонентів належать віджети HTML-картки, функції вмісту комірки тощо.", + "embed-to-angular-template": "Вбудувати в шаблон Angular HTML", + "embed-to-angular-template-text": "Використовуючи наведений нижче фрагмент коду, Ви можете вбудувати зображення в шаблон Angular HTML, який використовуватиметься для компонентів.
До таких компонентів належать віджет Markdown, розділ HTML у редакторі віджетів, користувацькі дії тощо." + }, + "image-input": { + "drop-images-or": "Перетягніть зображення або", + "drag-and-drop": "Перетягнути та відпустити", + "or": "або", + "browse": "Переглянути", + "no-images": "Зображення не вибрано", + "images": "зображення" + }, + "import": { + "no-file": "Файл не вибрано", + "drop-file": "Перетягніть JSON файл або натисніть для вибору файлу для завантаження.", + "drop-json-file-or": "Перетягніть JSON файл або", + "drop-file-csv": "Перетягніть CSV файл або натисніть для вибору файлу для завантаження.", + "drop-file-csv-or": "Перетягніть CSV файл або", + "column-value": "Значення", + "column-title": "Назва", + "column-example": "Приклад значення даних", + "column-key": "Ключ атрибуту/телеметрії", + "credentials": "Облікові дані", + "csv-delimiter": "Роздільник CSV", + "csv-first-line-header": "Перша лінія містить назви стовпців", + "csv-update-data": "Оновити атрибути/телеметрію", + "details": "Деталі", + "import-csv-number-columns-error": "Файл має містити хоча б два стовпці", + "import-csv-invalid-format-error": "Невірний формат файлу. Лінія: '{{line}}'", + "column-type": { + "name": "Назва", + "type": "Тип", + "label": "Маркування", + "column-type": "Тип стовпця", + "client-attribute": "Атрибут клієнта", + "shared-attribute": "Спільний атрибут", + "server-attribute": "Атрибут сервера", + "timeseries": "Часовий ряд", + "entity-field": "Поле сутності", + "access-token": "Токен доступу", + "x509": "X.509", + "mqtt": { + "client-id": "MQTT Client ID", + "user-name": "MQTT ім'я користувача", + "password": "MQTT пароль" + }, + "lwm2m": { + "client-endpoint": "LwM2M endpoint ім'я клієнта", + "security-config-mode": "Режим конфігурації безпеки LwM2M", + "client-identity": "Ідентичність клієнта LwM2M", + "client-key": "Ключ клієнта LwM2M", + "client-cert": "Публічний ключ клієнта LwM2M", + "bootstrap-server-security-mode": "Режим безпеки bootstrap сервера LwM2M", + "bootstrap-server-secret-key": "Секретний ключ bootstrap сервера LwM2M", + "bootstrap-server-public-key-id": "Публічний ключ або ID bootstrap сервера LwM2M", + "lwm2m-server-security-mode": "Режим безпеки сервера LwM2M", + "lwm2m-server-secret-key": "Секретний ключ сервера LwM2M", + "lwm2m-server-public-key-id": "Публічний ключ або ID сервера LwM2M" + }, + "snmp": { + "host": "SNMP хост", + "port": "SNMP порт", + "version": "Версія SNMP (v1, v2c або v3)", + "community-string": "Строка спільноти SNMP" + }, + "isgateway": "Є Gateway", + "activity-time-from-gateway-device": "Час активності з gateway пристрою", + "description": "Опис", + "routing-key": "Ключ Edge", + "secret": "Секрет Edge" + }, + "stepper-text": { + "select-file": "Виберіть файл", + "configuration": "Імпорт конфігурації", + "column-type": "Виберіть типи стовпців", + "creat-entities": "Створення нових сутностей" + }, + "message": { + "create-entities": "{{count}} нових сутностей успішно створено.", + "update-entities": "{{count}} сутностей успішно оновлено.", + "error-entities": "Сталася помилка при створенні {{count}} сутностей." + } + }, + "scada": { + "symbols": "SCADA символи", + "search": "Шукати символ", + "selected-symbols": "{ count, plural, =1 {Вибрано 1 символ} other {Вибрано #} }", + "download-symbol": "Завантажити символ SCADA", + "export-symbol": "Експортувати символ SCADA в JSON", + "import-symbol": "Імпортувати символ SCADA з JSON", + "upload-symbol": "Вивантажити символ SCADA", + "update-symbol": "Оновити символ SCADA", + "edit-symbol": "Редагувати символ SCADA", + "symbol-details": "Деталі символу SCADA", + "mode-svg": "SVG", + "mode-xml": "XML", + "no-symbols": "Символів не знайдено", + "show-hidden-elements": "Показати приховані елементи", + "hide-hidden-elements": "Приховати приховані елементи", + "delete-symbol": "Видалити символ SCADA", + "delete-symbol-title": "Ви впевнені, що хочете видалити символ SCADA '{{imageTitle}}'?", + "delete-symbol-text": "Будьте обережні, після підтвердження символ SCADA стане невідновлюваним.", + "delete-symbols-title": "{ count, plural, =1 {Ви впевнені, що хочете видалити 1 символ SCADA?} other {Ви впевнені, що хочете видалити вибране (#)?} }", + "delete-symbols-text": "Будьте обережні, після підтвердження всі вибрані символи SCADA будуть видалені, а всі пов'язані дані стануть невідновлюваними.", + "include-system-symbols": "Включити системні символи", + "symbol-preview": "Попередній перегляд символу", + "general": "Загальні", + "tags": "Теги", + "properties": "Властивості", + "title": "Назва", + "description": "Опис", + "search-tags": "Шукати теги", + "widget-size": "Розмір віджета", + "cols": "стовпці", + "rows": "рядки", + "state-render-function": "Функція рендерингу стану", + "preview": "Попередній перегляд", + "preview-widget-action-text": "Дію віджета '{{type}}' успішно виконано!", + "no-symbol": "Немає символу SCADA", + "no-symbol-selected": "Символ SCADA не вибрано", + "clear-symbol": "Очистити символ SCADA", + "browse-symbol-from-gallery": "Переглянути символ SCADA в галереї", + "zoom-in": "Збільшити", + "zoom-out": "Зменшити", + "create-widget": "Створити віджет", + "create-widget-from-symbol": "Створити віджет із символу SCADA", + "hidden": "приховано", + "tag": { + "tag": "Тег", + "on-click-action": "Дія при натисканні", + "no-tags": "Теги не налаштовано", + "delete-tag-text": "Ви впевнені, що хочете видалити тег
{{tag}} з елемента {{elementType}}?", + "update-tag": "Оновити тег", + "enter-tag": "Введіть тег", + "tag-settings": "Налаштування тегів", + "remove-tag": "Видалити тег", + "add-tag": "Додати тег" + }, + "behavior": { + "behavior": "Поведінка", + "id": "Id", + "name": "Назва", + "type": "Тип", + "no-behaviors": "Поведінку не налаштовано", + "add-behavior": "Додати поведінку", + "type-action": "Дія", + "type-value": "Значення", + "type-widget-action": "Дія віджета", + "behavior-settings": "Налаштування поведінки", + "remove-behavior": "Видалити поведінку", + "hint": "Підказка", + "group-title": "Назва групи", + "value-type": "Тип значення", + "default-value": "Значення за замовчуванням", + "true-label": "Маркування для True", + "false-label": "Маркування для False", + "state-label": "Маркування стану", + "default-payload": "Payload за замовчуванням", + "not-unique-behavior-ids-error": "Ids поведінки мають бути унікальними!", + "default-settings": "Налаштування за замовчуванням" + }, + "symbol": { + "symbol": "Символ SCADA", + "fluid-presence": "Наявність рідини", + "fluid-presence-hint": "Вказує, чи присутня рідина в трубі.", + "fluid-present": "Рідина присутня", + "present": "Присутня", + "absent": "Відсутня", + "flow-presence": "Наявність потоку", + "flow-presence-hint": "Вказує, чи тече рідина в трубі.", + "flow-present": "Потік присутній", + "flow-direction": "Напрямок потоку", + "flow-direction-hint": "Вказує напрямок потоку рідини.", + "forward": "Прямий", + "reverse": "Зворотний", + "flow-animation-speed": "Швидкість анімації потоку", + "flow-animation-speed-hint": "Значення типу double, що вказує швидкість анімації потоку. 1 - нормальна швидкість, 0 - без анімації, < 1 - повільніша анімація, > 1 - швидша анімація.", + "leak": "Витік", + "leak-hint": "Вказує, чи присутній витік у трубі.", + "leak-present": "Витік присутній", + "fluid-color": "Колір рідини", + "pipe-color": "Колір труби", + "horizontal-pipe": "Горизонтальна труба", + "vertical-pipe": "Вертикальна труба", + "horizontal-fluid-color": "Колір рідини для горизонтальної", + "vertical-fluid-color": "Колір рідини для вертикальної", + "left-pipe": "Ліва труба", + "right-pipe": "Права труба", + "top-pipe": "Верхня труба", + "bottom-pipe": "Нижня труба", + "left-fluid-color": "Колір рідини для лівої", + "right-fluid-color": "Колір рідини для правої", + "top-fluid-color": "Колір рідини для верхньої", + "bottom-fluid-color": "Колір рідини для нижньої", + "display": "Відображення", + "display-format": "Формат відображення", + "value": "Значення", + "decimals": "Десяткові знаки", + "units": "Одиниці", + "flow-meter-value-hint": "Значення типу double, що відображається на дисплеї витратоміра", + "value-hint": "Значення типу double, що вказує поточне значення", + "running": "Працює", + "running-hint": "Вказує, чи компонент перебуває у робочому стані.", + "warning-state": "Стан попередження", + "warning": "Попередження", + "warning-click": "Клік у стані попередження", + "warning-state-hint": "Вказує, чи компонент перебуває у стані попередження.", + "critical-state": "Критичний стан", + "critical": "Критичний", + "critical-click": "Клік у критичному стані", + "critical-state-hint": "Вказує, чи компонент перебуває у критичному стані.", + "critical-state-animation": "Анімація критичного стану", + "critical-state-animation-hint": "Чи потрібно увімкнути анімацію миготіння, коли компонент перебуває у критичному стані.", + "warning-critical-state-animation": "Анімація стану попередження/критичного", + "warning-critical-state-animation-hint": "Чи потрібно увімкнути анімацію миготіння, коли компонент перебуває у стані попередження або критичному стані.", + "animation": "Анімація", + "broken": "Несправний", + "broken-hint": "Вказує, чи компонент є несправним.", + "on-display-click": "При натисканні на дисплей", + "on-display-click-hint": "Дія, що виконується, коли користувач натискає на дисплей.", + "pipe": "Труба", + "default-border-color": "Колір межі за замовчуванням", + "active-border-color": "Колір активної межі", + "warning-border-color": "Колір межі попередження", + "critical-border-color": "Колір критичної межі", + "background-color": "Колір фону", + "rotation-animation-speed": "Швидкість анімації обертання", + "rotation-animation-speed-hint": "Значення типу double, що вказує швидкість анімації обертання. 1 - нормальна швидкість, 0 - без анімації, < 1 - повільніша анімація, > 1 - швидша анімація.", + "on-click": "При натисканні", + "on-click-hint": "Дія, що виконується, коли користувач натискає на компонент.", + "connectors-positions": "Позиції конекторів", + "right-connector": "Правий конектор", + "right-top-connector": "Правий верхній конектор", + "right-bottom-connector": "Правий нижній конектор", + "left-connector": "Лівий конектор", + "left-top-connector": "Лівий верхній конектор", + "left-bottom-connector": "Лівий нижній конектор", + "top-left-connector": "Верхній лівий конектор", + "top-right-connector": "Верхній правий конектор", + "top-connector": "Верхній конектор", + "bottom-connector": "Нижній конектор", + "running-color": "Колір у робочому стані", + "stopped-color": "Колір у зупиненому стані", + "stopped": "Зупинено", + "warning-color": "Колір попередження", + "critical-color": "Колір критичного стану", + "opened": "Відкрито", + "opened-hint": "Вказує, чи компонент перебуває у відкритому стані.", + "open": "Відкрити", + "open-hint": "Дія, що виконується, коли користувач натискає, щоб відкрити компонент.", + "close": "Закрити", + "close-hint": "Дія, що виконується, коли користувач натискає, щоб закрити компонент.", + "close-state-animation": "Анімація закритого стану", + "close-state-animation-hint": "Чи потрібно увімкнути анімацію миготіння, коли компонент перебуває у закритому стані.", + "opened-color": "Колір у відкритому стані", + "closed-color": "Колір у закритому стані", + "opened-rotation-angle": "Кут обертання у відкритому стані", + "closed-rotation-angle": "Кут обертання у закритому стані", + "tank-capacity": "Місткість резервуара", + "tank-capacity-hint": "Значення типу double, що вказує загальну місткість резервуара.", + "current-volume": "Поточний об'єм", + "current-volume-hint": "Значення типу double, що вказує поточний зайнятий об'єм.", + "tank-color": "Колір резервуара", + "value-box": "Поле значення", + "value-text": "Текст значення", + "scale": "Шкала", + "transparent-mode": "Прозорий режим", + "major-ticks": "Основні поділки", + "intervals": "Інтервали", + "major-ticks-color": "Колір основних поділок", + "normal": "Нормальний", + "minor-ticks": "Додаткові поділки", + "minor-ticks-color": "Колір додаткових поділок", + "temperature": "Температура", + "temperature-hint": "Значення типу double, що вказує поточну температуру.", + "update-temperature": "Оновити температуру", + "update-temperature-hint": "Дія, що виконується, коли користувач натискає, щоб змінити поточну температуру.", + "run": "Запустити", + "run-hint": "Дія, що виконується, коли користувач натискає, щоб запустити компонент.", + "stop": "Зупинити", + "stop-hint": "Дія, що виконується, коли користувач натискає, щоб зупинити компонент.", + "temperature-step": "Крок зміни температури", + "heat-pump-color": "Колір теплового насоса", + "power-button-background": "Фон кнопки живлення", + "value-box-background": "Фон поля значення", + "value-units": "Одиниці значення", + "enable-units-scale": "Увімкнути одиниці на шкалі", + "filtration-mode": "Режим фільтрації", + "filtration-mode-hint": "Ціле значення, що вказує поточний режим фільтрації.", + "filtration-mode-update": "Оновити стан режиму фільтрації", + "filtration-mode-update-hint": "Дія, що виконується, коли користувач натискає, щоб змінити поточний режим фільтрації.", + "filter-mode": "Фільтрація", + "waste-mode": "Злив", + "backwash-mode": "Зворотне промивання", + "recirculate-mode": "Рециркуляція", + "rinse-mode": "Ополіскування", + "closed-mode": "Закрито", + "sand-filter-color": "Колір піщаного фільтра", + "mode-box-background": "Фон поля режиму", + "border-color": "Колір межі", + "label-color": "Колір мітки", + "water-leak-hint": "Вказує, чи є витік.", + "default-color": "Колір за замовчуванням", + "leak-color": "Колір витоку", + "full-value": "Повне значення", + "full-value-hint": "Значення типу double, що вказує повне значення.", + "label": "Маркування", + "icon": "Іконка", + "button-color": "Колір кнопки", + "on-label": "'On' текст маркування", + "off-label": "'Off' текст маркування", + "arrow-presence": "Наявність стрілки", + "arrow-presence-hint": "Вказує, чи присутня стрілка в конекторі.", + "arrow-present": "Стрілка присутня", + "arrow-direction": "Напрямок потоку", + "arrow-direction-hint": "Вказує напрямок потоку.", + "flow-animation": "Наявність потоку", + "flow-animation-hint": "Вказує, чи тече рідина в конекторі.", + "flow": "Потік", + "flow-line": "Лінія", + "flow-line-style": "Стиль лінії", + "flow-style-hint": "Встановіть значення Dash і Gap так, щоб їхня сума ділилася на 100 без остачі для ідеальної синхронізації анімації.", + "flow-dash-cap": "Кінцівка штриха", + "dash-cap-butt": "Пласка", + "dash-cap-round": "Округла", + "dash-cap-square": "Квадратна", + "dash": "Штрих", + "gap": "Проміжок", + "main-line": "Основна лінія", + "line": "Лінія", + "line-color": "Колір лінії", + "arrow-color": "Колір стрілки", + "target-value": "Цільове значення", + "target-value-hint": "Вказує цільову точку на шкалі.", + "min-max-value": "Мінімальне та максимальне значення", + "min-value": "Мін", + "max-value": "Макс", + "progress-bar": "Смуга прогресу", + "progress-arrow": "Стрілка прогресу", + "warning-scale-color": "Колір шкали попередження", + "critical-scale-color": "Колір шкали критичного стану", + "scale-color": "Колір шкали", + "target": "Ціль", + "high-warning-state": "Високий стан попередження", + "show-high-warning-scale": "Показати шкалу високого попередження", + "high-warning-scale": "Шкала високого попередження", + "high-warning-state-hint": "Значення типу double вказує діапазон високого попередження до високого критичного або максимального значення.", + "low-warning-state": "Низький стан попередження", + "show-low-warning-scale": "Показати шкалу низького попередження", + "low-warning-scale": "Шкала низького попередження", + "low-warning-state-hint": "Значення типу double вказує діапазон низького попередження до низького критичного або мінімального значення.", + "high-critical-state": "Високий критичний стан", + "show-high-critical-scale": "Показати шкалу високого критичного стану", + "high-critical-scale": "Шкала високого критичного стану", + "high-critical-state-hint": "Значення типу double вказує діапазон високого критичного стану до максимального значення шкали.", + "low-critical-state": "Низький критичний стан", + "show-low-critical-scale": "Показати низький критичний стан", + "low-critical-scale": "Низький критичний стан", + "low-critical-state-hint": "Значення типу double вказує діапазон низького критичного стану до мінімального значення шкали.", + "filter-color": "Колір фільтра", + "colors": "Кольори", + "indicator-colors": "Кольори індикаторів", + "enabled": "Увімкнено", + "disabled": "Вимкнено", + "on": "УВІМК", + "off": "ВИМК", + "on-off-state": "Стан увімкнено/вимкнено", + "on-off-state-hint": "Вказує, чи компонент перебуває у стані увімкнено або вимкнено.", + "on-update-state": "Оновити стан на увімкнено", + "on-update-state-hint": "Дія, що виконується, коли користувач натискає, щоб оновити стан на увімкнено.", + "off-update-state": "Оновити стан на вимкнено", + "off-update-state-hint": "Дія, що виконується, коли користувач натискає, щоб оновити стан на вимкнено.", + "voltage": "Напруга", + "input-voltage": "Вхідна напруга", + "input-voltage-hint": "Значення типу double вказує значення вхідної напруги.", + "output-voltage": "Вихідна напруга", + "output-voltage-hint": "Значення типу double вказує значення вихідної напруги.", + "first-phase-voltage": "Напруга першої фази", + "second-phase-voltage": "Напруга другої фази", + "third-phase-voltage": "Напруга третьої фази", + "phase-voltage-hint": "Значення типу double вказує значення напруги для поточної фази", + "voltage-hint": "Значення типу double вказує поточну напругу", + "current-voltage-color": "Колір поточної напруги", + "phase-indicator-color": "Колір індикатора фази", + "measured": "Виміряно", + "measured-hint": "Значення типу double вказує споживання енергії в кіловат-годинах", + "day-rate": "Денний тариф", + "night-rate": "Нічний тариф", + "off-peak-rate": "Непіковий тариф", + "peak-rate": "Піковий тариф", + "export-rate": "Експортний тариф", + "operating-mode": "Режим роботи", + "bypass-mode": "Обхід", + "operating-mode-hint": "Ціле значення, що вказує поточний режим operating mode (0 - OFF, 1 - ON, 2 - BYPASS)", + "connected": "Підключено", + "connected-hint": "Вказує, чи компонент перебуває у підключеному стані.", + "disconnected": "Відключено", + "indicator": "Індикатор", + "operation-mode": "Режим роботи", + "operation-mode-hint": "Вказує, чи інвертор перебуває в режимі мережі або інвертора.", + "operation-mode-indicators-color": "Колір індикаторів режиму роботи", + "mains-on-mode": "Мережа увімкнена", + "inverter-on-mode": "Інвертор увімкнений", + "charging-mode": "Режим заряджання", + "charging-mode-hint": "Ціле значення, що вказує поточний режим заряджання (1 - Bulk, 2 - Absorption, 3 - Float)", + "charging-mode-indicators-color": "Колір індикаторів режиму заряджання", + "inverter-faults": "Несправності", + "inverter-fault-indicators-color": "Колір індикаторів несправностей", + "overload-fault": "Перевантаження", + "overload-fault-hint": "Вказує, чи інвертор перебуває в стані перевантаження.", + "low-battery-fault": "Низький заряд батареї", + "low-battery-fault-hint": "Вказує, чи батарея надмірно розряджена.", + "temperature-fault": "Температура", + "temperature-fault-hint": "Вказує, чи є висока температура в інверторі.", + "triangle": "Трикутник", + "socket": "Розетка", + "left-button": "Ліва кнопка", + "right-button": "Права кнопка", + "alarm-colors": "Кольори тривоги", + "hook-color": "Колір крюка" + } + }, + "item": { + "selected": "Вибрано" + }, + "js-func": { + "no-return-error": "Функція має повертати значення!", + "return-type-mismatch": "Функція має повертати значення типу '{{type}}'!", + "tidy": "Упорядкувати", + "mini": "Міні", + "modules": "Модулі", + "remove-module": "Видалити модуль", + "no-modules": "Модулі не налаштовано", + "add-module": "Додати модуль", + "module-alias": "Аліас", + "invalid-module-alias-name": "Некоректна назва аліаса", + "module-resource": "Ресурс JS модуля", + "not-unique-module-aliases-error": "Аліаси модулів мають бути унікальними!", + "show-module-info": "Показати інформацію про модуль", + "show-module-source-code": "Показати вихідний код модуля", + "module-members": "Експортовані елементи модуля", + "module-no-members": "Модуль не має експортованих елементів", + "module-load-error": "Помилка завантаження модуля", + "source-code": "Вихідний код", + "source-code-load-error": "Помилка завантаження вихідного коду", + "no-js-module-text": "JS модулі не знайдено", + "no-js-module-matching": "Не знайдено JS модулів, що відповідають '{{module}}'." + }, + "key-val": { + "key": "Ключ", + "value": "Значення", + "remove-entry": "Видалити запис", + "add-entry": "Додати запис", + "no-data": "Немає записів" + }, + "layout": { + "layout": "Макет", + "layouts": "Макети", + "manage": "Керувати макетами", + "settings": "Налаштування макета", + "color": "Колір", + "main": "Основний", + "right": "Правий", + "left": "Лівий", + "select": "Виберіть цільовий макет", + "percentage-width": "Ширина у відсотках (%)", + "fixed-width": "Фіксована ширина (px)", + "left-width": "Ліва колонка (%)", + "right-width": "Права колонка (%)", + "pick-fixed-side": "Фіксована сторона: ", + "layout-fixed-width": "Фіксована ширина (px)", + "value-min-error": "Значення має бути більше ніж {{min}}{{unit}}", + "value-max-error": "Значення має бути менше ніж {{max}}{{unit}}", + "layout-fixed-width-required": "Фіксована ширина є обов'язковою", + "right-width-percentage-required": "Права ширина у відсотках є обов'язковою", + "left-width-percentage-required": "Ліва ширина у відсотках є обов'язковою", + "divider": "Роздільник", + "right-side": "Макет правої сторони", + "left-side": "Макет лівої сторони", + "add-new-breakpoint": "Додати новий breakpoint", + "breakpoint": "Breakpoint", + "breakpoints": "Breakpoints", + "copy-from": "Копіювати з", + "size": "Розмір", + "delete-breakpoint-title": "Ви впевнені, що хочете видалити breakpoint '{{name}}'?", + "delete-breakpoint-text": "Зверніть увагу: після підтвердження breakpoint стане невідновлюваним, а налаштування буде повернуто до breakpoint за замовчуванням." + }, + "legend": { + "direction": "Напрямок", + "position": "Позиція", + "show-values": "Показувати значення", + "min-option": "Мін", + "max-option": "Макс", + "average-option": "Середнє", + "total-option": "Загалом", + "latest-option": "Останнє", + "sort-legend": "Сортувати ключі даних у легенді", + "show-max": "Показувати максимальне значення", + "show-min": "Показувати мінімальне значення", + "show-avg": "Показувати середнє значення", + "show-total": "Показувати загальне значення", + "show-latest": "Показувати останнє значення", + "settings": "Налаштування легенди", + "min": "мін", + "max": "макс", + "avg": "сер", + "total": "заг", + "latest": "ост", + "Min": "Мін", + "Max": "Макс", + "Avg": "Сер", + "Total": "Заг", + "Latest": "Ост", + "comparison-time-ago": { + "previousInterval": "(попередній інтервал)", + "customInterval": "(власний інтервал)", + "days": "(день тому)", + "weeks": "(тиждень тому)", + "months": "(місяць тому)", + "years": "(рік тому)" + }, + "column-title": "Назва колонки", + "label": "Маркування", + "value": "Значення" + }, + "login": { + "login": "Вхід", + "request-password-reset": "Запросити скидання пароля", + "reset-password": "Скинути пароль", + "create-password": "Створити пароль", + "two-factor-authentication": "Двофакторна автентифікація", + "passwords-mismatch-error": "Введені паролі мають збігатися!", + "password-again": "Пароль ще раз", + "sign-in": "Увійти", + "username": "Ім'я користувача (email)", + "remember-me": "Запам'ятати мене", + "forgot-password": "Забули пароль?", + "password-reset": "Скидання пароля", + "expired-password-reset-message": "Ваш пароль вичерпав термін дії! \nБудь ласка, введіть новий пароль.", + "new-password": "Новий пароль", + "new-password-again": "Підтвердити новий пароль", + "password-link-sent-message": "Посилання для скидання надіслано", + "email": "Email", + "invalid-email-format": "Некоректний формат email.", + "or": "або", + "error": "Помилка входу", + "verify-your-identity": "Підтвердити Вашу особу", + "select-way-to-verify": "Виберіть спосіб підтвердження", + "resend-code": "Повторно надіслати код", + "resend-code-wait": "Повторно надіслати код через { time, plural, =1 {1 с} other {# с} }", + "try-another-way": "Спробувати інший спосіб", + "totp-auth-description": "Будь ласка, введіть код безпеки з Вашого застосунку автентифікації.", + "totp-auth-placeholder": "Код", + "sms-auth-description": "Код безпеки було надіслано на Ваш телефон: {{contact}}.", + "sms-auth-placeholder": "SMS код", + "email-auth-description": "Код безпеки було надіслано на Вашу адресу email: {{contact}}.", + "email-auth-placeholder": "Email код", + "backup-code-auth-description": "Будь ласка, введіть один із Ваших резервних кодів.", + "backup-code-auth-placeholder": "Резервний код", + "activation-link-expired": "Посилання активації втратило чинність", + "activation-link-expired-message": "Посилання для активації Вашого профілю втратило чинність. Ви можете повернутися на сторінку входу, щоб отримати новий email.", + "reset-password-link-expired": "Посилання для скидання пароля втратило чинність", + "reset-password-link-expired-message": "Посилання для скидання Вашого пароля втратило чинність. Ви можете повернутися на сторінку входу, щоб отримати новий email." + }, + "mobile": { + "add-application": "Додати застосунок", + "app-id": "App Site Association ID", + "app-id-required": "App Site Association ID є обов'язковим", + "app-id-pattern": "Некоректний формат App Site Association ID", + "app-store-link": "Посилання App Store", + "app-store-link-required": "Посилання App Store є обов'язковим", + "application-details": "Деталі застосунку", + "application-package": "Пакет застосунку", + "application-secret": "Application secret", + "application-secret-required": "Application secret є обов'язковим", + "application": "Застосунок", + "applications": "Застосунки", + "copy-app-id": "Копіювати App ID", + "copy-app-store-link": "Копіювати посилання App Store", + "copy-application-package": "Копіювати пакет застосунку", + "copy-application-secret": "Копіювати Application secret", + "copy-google-play-link": "Копіювати посилання Google Play", + "copy-sha256-certificate-fingerprints": "Копіювати відбитки сертифіката SHA256", + "delete-application": "Видалити застосунок", + "delete-application-button-text": "Я розумію наслідки, видалити застосунок", + "delete-application-text": "Цю дію неможливо скасувати. Це назавжди видалить Ваш застосунок.
Якщо Ви не хочете видаляти його назавжди, Ви можете призупинити застосунок тимчасово.
Щоб видалити застосунок у будь-якому разі, введіть \"{{phrase}}\" для підтвердження.", + "delete-application-title-short": "Ви впевнені, що хочете видалити застосунок '{{name}}'?", + "delete-application-text-short": "Будьте обережні, після підтвердження застосунки та всі пов'язані дані стануть невідновлюваними.", + "delete-application-phrase": "видалити застосунок", + "delete-applications-bundle-text": "Будьте обережні, після підтвердження мобільний набір і всі пов'язані дані стануть невідновлюваними.", + "delete-applications-bundle-title": "Ви впевнені, що хочете видалити мобільний набір '{{bundleName}}'?", + "generate-application-secret": "Згенерувати Application secret", + "google-play-link": "Посилання Google Play", + "google-play-link-required": "Посилання Google Play є обов'язковим", + "latest-version": "Остання версія", + "min-version": "Мінімальна версія", + "invalid-version-pattern": "Некоректний формат версії. Використовуйте формат: major.minor.patch (наприклад, 1.0.0).", + "mobile-center": "Мобільний центр", + "mobile-package": "Пакет застосунку", + "mobile-package-max-length": "Пакет застосунку має бути меншим за 256", + "mobile-package-required": "Пакет застосунку є обов'язковим.", + "mobile-package-pattern": "Некоректний формат пакета застосунку", + "mobile-package-title": "Назва застосунку", + "mobile-package-title-max-length": "Назва застосунку має бути меншою за 256", + "no-application": "Застосунків не знайдено", + "no-bundles": "Наборів не знайдено", + "platform-type": "Тип платформи", + "search-application": "Шукати застосунки", + "search-bundles": "Шукати набори", + "set": "Встановити", + "sha256-certificate-fingerprints": "Відбитки сертифіката SHA256", + "sha256-certificate-fingerprints-required": "Відбитки сертифіката SHA256 є обов'язковими", + "sha256-certificate-fingerprints-pattern": "Некоректний формат відбитка сертифіката SHA256", + "show-hidden-pages": "Показувати приховані сторінки", + "status": "Статус", + "status-type": { + "deprecated": "Застарілий", + "draft": "Чернетка", + "published": "Опубліковано", + "suspended": "Призупинено" + }, + "store-information": "Інформація магазину", + "version-information": "Інформація про версію", + "min-version-release-notes": "Нотатки до випуску мінімальної версії", + "latest-version-release-notes": "Нотатки до випуску останньої версії", + "bundle": "Набір", + "bundles": "Набори", + "add-bundle": "Додати набір", + "title": "Назва", + "title-required": "Назва є обов'язковою", + "title-cannot-contain-only-spaces": "Назва не може містити лише пробіли", + "title-max-length": "Назва має бути меншою за 256", + "oauth-clients": "Клієнти OAuth 2.0", + "android-app": "Застосунок Android", + "android-application": "Застосунок Android", + "ios-app": "Застосунок iOS", + "ios-application": "Застосунок iOS", + "invalid-store-link": "Некоректне посилання магазину", + "enable-oauth": "Увімкнути OAuth 2.0", + "enable-self-registration": "Увімкнути самореєстрацію", + "edit-bundle": "Редагувати набір", + "description": "Опис", + "basic-settings": "Базові налаштування", + "no-application-matching": "Не знайдено застосунків, що відповідають '{{entity}}'.", + "no-bundle-matching": "Не знайдено наборів, що відповідають '{{entity}}'.", + "application-required": "Застосунок є обов'язковим.", + "bundle-required": "Набір є обов'язковим.", + "no-application-text": "Застосунків не знайдено", + "no-bundle-text": "Набір не знайдено", + "layout": "Макет", + "pages": "Сторінки", + "hide-all-pages": "Приховати всі сторінки", + "reset-to-default-pages": "Скинути до сторінок за замовчуванням", + "add-specific-page": "Додати конкретну сторінку", + "visible": "Видимо", + "hidden": "Приховано", + "reset-to-page-default": "Скинути сторінку до значень за замовчуванням", + "mobile-599": "Mobile (max 599px)", + "tablet-959": "Tablet (max 959px)", + "max-element-number": "Максимальна кількість елементів", + "page-name": "Назва сторінки", + "page-name-required": "Назва сторінки є обов'язковою.", + "page-name-cannot-contain-only-spaces": "Назва сторінки не може містити лише пробіли.", + "page-name-max-length": "Назва сторінки має бути меншою за 256", + "page-type": "Тип сторінки", + "pages-types": { + "dashboard": "Дашборд", + "web-view": "Web view", + "custom": "Користувацька" + }, + "url": "URL", + "invalid-url-format": "Некоректний формат URL", + "path": "Шлях", + "invalid-path-format": "Некоректний формат шляху", + "custom-page": "Користувацька сторінка", + "edit-page": "Редагувати сторінку", + "edit-custom-page": "Редагувати користувацьку сторінку", + "delete-page": "Видалити сторінку", + "qr-code-widget": "Віджет QR коду", + "type-here": "Type hero", + "configuration-dialog": "Діалог конфігурації", + "configuration-app": "Застосунок конфігурації", + "configuration-step": { + "prepare-environment-title": "Підготуйте середовище розробки", + "prepare-environment-text": "Flutter ThingsBoard Mobile Application потребує Flutter SDK. Дотримуйтеся інструкцій, щоб налаштувати Flutter SDK.", + "get-source-code-title": "Отримайте вихідний код застосунку", + "get-source-code-text": "Ви можете отримати вихідний код Flutter ThingsBoard Mobile Application, клонуючи його з репозиторію GitHub:", + "configure-app-settings-title": "Налаштуйте параметри застосунку", + "configure-app-settings-text": "Завантажте файл конфігурації та розмістіть його в кореневому каталозі проєкту, який Ви клонували на попередньому кроці.", + "download-file": "Завантажити файл", + "run-app-title": "Запустіть застосунок", + "run-app-text": "Запустіть застосунок, як описано у Вашому IDE.\nЯкщо використовуєте термінал, запустіть застосунок за допомогою такої команди:", + "more-information": "Детальнішу інформацію можна знайти в нашій документації Getting Started.", + "getting-started": "Getting Started" + } + }, + "notification": { + "action-button": "Кнопка дії", + "action-type": "Тип дії", + "active": "Активний", + "add-notification-recipients-group": "Додати групу отримувачів сповіщень", + "add-notification-template": "Додати шаблон сповіщення", + "add-recipient": "Додати отримувача", + "add-recipients": "Додати отримувачів", + "add-rule": "Додати правило", + "add-stage": "Додати етап", + "add-template": "Додати шаблон", + "after": "Після", + "alarm-assignment-trigger-settings": "Налаштування тригера призначення тривоги", + "alarm-comment-trigger-settings": "Налаштування тригера коментаря до тривоги", + "alarm-trigger-settings": "Налаштування тригера тривоги", + "all": "Усі", + "api-feature-hint": "Якщо поле порожнє, тригер буде застосовано до всіх можливостей API", + "api-usage-trigger-settings": "Налаштування тригера використання API", + "new-platform-version-trigger-settings": "Налаштування тригера нової версії платформи", + "rate-limits-trigger-settings": "Налаштування тригера перевищення лімітів швидкості", + "task-processing-failure-trigger-settings": "Налаштування тригера збою обробки завдань", + "resources-shortage-trigger-settings": "Налаштування тригера нестачі ресурсів", + "at-least-one-should-be-selected": "Потрібно вибрати принаймні один", + "basic-settings": "Базові налаштування", + "button-text": "Текст кнопки", + "button-text-required": "Текст кнопки є обов'язковим", + "button-text-max-length": "Текст кнопки має містити не більше ніж {{ length }} символів", + "compose": "Скласти", + "conversation": "Розмова", + "conversation-required": "Розмова є обов'язковою", + "copy-notification-template": "Клонувати шаблон сповіщення", + "copy-rule": "Клонувати правило", + "copy-template": "Клонувати шаблон", + "create-new": "Створити новий", + "created": "Створено", + "customize-messages": "Налаштувати повідомлення", + "cpu-threshold": "Поріг CPU", + "delete-notification-text": "Будьте обережні, після підтвердження сповіщення стане невідновлюваним.", + "delete-notification-title": "Ви впевнені, що хочете видалити сповіщення?", + "delete-notifications-text": "Будьте обережні, після підтвердження сповіщення стануть невідновлюваними.", + "delete-notifications-title": "Ви впевнені, що хочете видалити вибране: { count, plural, =1 {1 сповіщення} other {# сповіщень} }?", + "delete-recipient-text": "Будьте обережні, після підтвердження отримувач стане невідновлюваним.", + "delete-recipient-title": "Ви впевнені, що хочете видалити отримувача '{{recipientName}}'?", + "delete-recipients-text": "Будьте обережні, після підтвердження отримувачі стануть невідновлюваними.", + "delete-recipients-title": "Ви впевнені, що хочете видалити вибране: { count, plural, =1 {1 отримувача} other {# отримувачів} }?", + "delete-request-text": "Будьте обережні, після підтвердження запит стане невідновлюваним.", + "delete-request-title": "Ви впевнені, що хочете видалити запит?", + "delete-requests-text": "Будьте обережні, після підтвердження запити стануть невідновлюваними.", + "delete-requests-title": "Ви впевнені, що хочете видалити вибране: { count, plural, =1 {1 запит} other {# запитів} }?", + "delete-rule-text": "Будьте обережні, після підтвердження правило стане невідновлюваним.", + "delete-rule-title": "Ви впевнені, що хочете видалити правило '{{ruleName}}'?", + "delete-rules-text": "Будьте обережні, після підтвердження правила стануть невідновлюваними.", + "delete-rules-title": "Ви впевнені, що хочете видалити вибране: { count, plural, =1 {1 правило} other {# правил} }?", + "delete-template-text": "Будьте обережні, після підтвердження шаблон стане невідновлюваним.", + "delete-template-title": "Ви впевнені, що хочете видалити шаблон '{{templateName}}'?", + "delete-templates-text": "Будьте обережні, після підтвердження шаблони стануть невідновлюваними.", + "delete-templates-title": "Ви впевнені, що хочете видалити вибране: { count, plural, =1 {1 шаблон} other {# шаблонів} }?", + "deleted": "Видалено", + "delivery-method": { + "delivery-method": "Спосіб доставлення", + "email": "Email", + "email-preview": "Попередній перегляд Email сповіщення", + "slack": "Slack", + "slack-preview": "Попередній перегляд сповіщення Slack", + "microsoft-teams": "Microsoft Teams", + "microsoft-teams-preview": "Попередній перегляд сповіщення Microsoft Teams", + "sms": "SMS", + "sms-preview": "Попередній перегляд SMS сповіщення", + "web": "Веб", + "web-preview": "Попередній перегляд веб сповіщення", + "mobile-app": "Мобільний застосунок", + "mobile-app-preview": "Попередній перегляд сповіщення мобільного застосунку" + }, + "delivery-method-not-configure-click": "Спосіб доставлення не налаштовано. Натисніть, щоб налаштувати.", + "delivery-method-not-configure-contact": "Спосіб доставлення не налаштовано. Зверніться до Вашого системного адміністратора.", + "delivery-methods": "Способи доставлення", + "description": "Опис", + "device-activity-trigger-settings": "Налаштування тригера активності пристрою", + "device-list-rule-hint": "Якщо поле порожнє, тригер буде застосовано до всіх пристроїв", + "device-profiles-list-rule-hint": "Якщо поле порожнє, тригер буде застосовано до всіх профілів пристроїв", + "disabled": "Вимкнено", + "edge-trigger-settings": "Налаштування тригера Edge", + "edge-list-rule-hint": "Якщо поле порожнє, тригер буде застосовано до всіх екземплярів Edge", + "edit-notification-recipients-group": "Редагувати групу отримувачів сповіщень", + "edit-notification-template": "Редагувати шаблон сповіщення", + "edit-rule": "Редагувати правило", + "edit-template": "Редагувати шаблон", + "enabled": "Увімкнено", + "entities-limit-trigger-settings": "Налаштування тригера ліміту сутностей", + "entity-action-trigger-settings": "Налаштування тригера дій сутності", + "entity-type": "Тип сутності", + "escalation-chain": "Ланцюг ескалації", + "failed-send": "Збої надсилання", + "fails": "{ count, plural, =1 {1 збій} other {# збоїв} }", + "filter": "Фільтр", + "first-recipient": "Перший отримувач", + "inactive": "Неактивний", + "inbox": "Вхідні", + "notification-inbox": "Сповіщення / Вхідні", + "input-field-support-templatization": "Поле введення підтримує шаблонізацію.", + "input-fields-support-templatization": "Поля введення підтримують шаблонізацію.", + "link": "Посилання", + "link-required": "Посилання є обов'язковим", + "link-max-length": "Посилання має містити не більше ніж {{ length }} символів", + "link-type": { + "dashboard": "Відкрити дашборд", + "link": "Відкрити посилання URL" + }, + "loading-notifications": "Завантаження сповіщень...", + "management": "Керування сповіщеннями", + "mark-all-as-read": "Позначити всі як прочитані", + "mark-as-read": "Позначити як прочитане", + "message": "Повідомлення", + "message-required": "Повідомлення є обов'язковим", + "message-max-length": "Повідомлення має містити не більше ніж {{ length }} символів", + "name": "Назва", + "name-required": "Назва є обов'язковою", + "new-notification": "Нове сповіщення", + "no-inbox-notification": "Сповіщень не знайдено", + "no-notification-request": "Немає запиту на сповіщення", + "no-notification-templates": "Шаблонів сповіщень не знайдено", + "no-notifications-yet": "Сповіщень ще немає", + "no-recipients-notification": "Немає отримувачів сповіщення", + "no-recipients-matching": "Не знайдено отримувачів, що відповідають '{{entity}}'.", + "no-recipients-text": "Отримувача не знайдено", + "no-rule": "Правила не налаштовано", + "no-rules-notification": "Немає правил сповіщення", + "no-severity-found": "Рівень важливості не знайдено", + "no-severity-matching": "'{{severity}}' не знайдено.", + "no-template-matching": "Не знайдено ресурсів, що відповідають '{{template}}'.", + "create-new-template": "Створити новий!", + "not-found-slack-recipient": "Отримувача Slack не знайдено", + "notification": "Сповіщення", + "notification-center": "Центр сповіщень", + "notification-tap-action": "Дія при натисканні на сповіщення", + "notification-tap-action-hint": "Якщо не увімкнено, буде використано дашборд тривог за замовчуванням", + "notify": "сповіщати", + "notify-again": "Сповістити знову", + "notify-alarm-action": { + "acknowledged": "Тривогу підтверджено", + "assigned": "Тривогу призначено", + "cleared": "Тривогу очищено", + "created": "Тривогу створено", + "severity-changed": "Рівень важливості тривоги змінено", + "unassigned": "Призначення тривоги скасовано" + }, + "notify-on": "Сповіщати про", + "notify-on-comment-update": "Сповіщати про оновлення коментаря", + "notify-on-required": "Поле \"Сповіщати про\" є обов'язковим", + "notify-on-unassign": "Сповіщати про скасування призначення", + "notify-only-user-comments": "Сповіщати лише про коментарі користувача", + "only-rule-chain-lifecycle-failures": "Лише збої життєвого циклу ланцюга правил", + "only-rule-node-lifecycle-failures": "Лише збої життєвого циклу вузла правила", + "platform-users": "Користувачі платформи", + "ram-threshold": "Поріг RAM", + "rate-limits": "Ліміти швидкості", + "rate-limits-hint": "Якщо поле порожнє, тригер буде застосовано до всіх лімітів швидкості", + "recipient": "Отримувач", + "recipient-group": "Група отримувачів", + "recipient-type": { + "affected-tenant-administrators": "Адміністратори ураженого тенанта", + "affected-user": "Зачеплений користувач", + "all-users": "Усі користувачі", + "customer-users": "Користувачі клієнта", + "system-administrators": "Системні адміністратори", + "tenant-administrators": "Адміністратори тенанта", + "user-filters": "Фільтр користувачів", + "user-list": "Список користувачів", + "users-entity-owner": "Користувачі власника сутності" + }, + "recipients": "Отримувачі", + "notification-recipient": "Отримувач сповіщення", + "notification-recipient-required": "Отримувач сповіщення є обов'язковим.", + "notification-recipients": "Сповіщення / Отримувачі", + "recipients-count": "{ count, plural, =1 {1 отримувач} other {# отримувачів} }", + "recipients-required": "Отримувачі є обов'язковими", + "refresh-allow-delivery-method": "Оновити дозволений спосіб доставлення", + "request-search": "Пошук запитів", + "request-status": { + "processing": "Обробляється", + "scheduled": "Заплановано", + "sent": "Надіслано" + }, + "review": "Перегляд", + "rule": "Правило", + "rule-chain-list-rule-hint": "Якщо поле порожнє, тригер буде застосовано до всіх ланцюгів правил", + "rule-engine-events-trigger-settings": "Налаштування тригера подій механізму правил", + "rule-engine-filter": "Фільтр механізму правил", + "rule-name": "Назва правила", + "rule-name-required": "Назва є обов'язковою", + "rule-disable": "Вимкнути правило сповіщень", + "rule-enable": "Увімкнути правило сповіщень", + "rule-node-filter": "Фільтр вузла правила", + "rules": "Правила", + "notification-rules": "Сповіщення / Правила", + "scheduler-later": "Запланувати на потім", + "search-notification": "Шукати сповіщення", + "search-recipients": "Шукати отримувачів", + "search-rules": "Шукати правила", + "search-templates": "Шукати шаблони", + "see-documentation": "Переглянути документацію", + "selected-notifications": "{ count, plural, =1 {Вибрано 1 сповіщення} other {Вибрано #} }", + "selected-recipients": "{ count, plural, =1 {Вибрано 1 отримувача} other {Вибрано #} }", + "selected-requests": "{ count, plural, =1 {Вибрано 1 запит} other {Вибрано #} }", + "selected-rules": "{ count, plural, =1 {Вибрано 1 правило} other {Вибрано #} }", + "selected-template": "{ count, plural, =1 {Вибрано 1 шаблон} other {Вибрано #} }", + "send-notification": "Надіслати сповіщення", + "sent": "Надіслано", + "setup": "Налаштувати", + "notification-sent": "Сповіщення / Надіслані", + "set-entity-from-notification": "Встановити сутність зі сповіщення в стан дашборда", + "slack-chanel-type": "Тип каналу Slack", + "slack-chanel-types": { + "direct": "Пряме повідомлення", + "private-channel": "Приватний канал", + "public-channel": "Публічний канал" + }, + "start-from-scratch": "Почати з нуля", + "status": "Статус", + "stop-escalation-alarm-status-become": "Зупинити ескалацію, коли статус тривоги стане:", + "storage-threshold": "Поріг сховища", + "subject": "Тема", + "subject-required": "Тема є обов'язковою", + "subject-max-length": "Тема має містити не більше ніж {{ length }} символів", + "template": "Шаблон", + "template-name": "Назва шаблону", + "template-required": "Шаблон є обов'язковим", + "template-type": { + "alarm": "Тривога", + "alarm-assignment": "Призначення тривоги", + "alarm-comment": "Коментар до тривоги", + "api-usage-limit": "Ліміт використання API", + "device-activity": "Активність пристрою", + "entities-limit": "Ліміт сутностей", + "entity-action": "Дія сутності", + "general": "Загальні", + "rule-engine-lifecycle-event": "Подія життєвого циклу механізму правил", + "rule-node": "Вузол правила", + "new-platform-version": "Нова версія платформи", + "rate-limits": "Перевищено ліміти швидкості", + "edge-communication-failure": "Збій зв'язку Edge", + "edge-connection": "Підключення Edge", + "task-processing-failure": "Збій обробки завдань", + "resources-shortage": "Нестача ресурсів" + }, + "templates": "Шаблони", + "notification-templates": "Сповіщення / Шаблони", + "tenant-profiles-list-rule-hint": "Якщо поле порожнє, тригер буде застосовано до всіх профілів тенантів", + "tenants-list-rule-hint": "Якщо поле порожнє, тригер буде застосовано до всіх тенантів", + "threshold": "Поріг", + "theme-color": "Колір теми", + "time": "Час", + "track-rule-node-events": "Відстежувати події вузла правила", + "trigger": { + "alarm": "Тривога", + "alarm-assignment": "Призначення тривоги", + "alarm-comment": "Коментар до тривоги", + "api-usage-limit": "Ліміт використання API", + "device-activity": "Активність пристрою", + "entities-limit": "Ліміт сутностей", + "entity-action": "Дія сутності", + "rule-engine-lifecycle-event": "Подія життєвого циклу механізму правил", + "new-platform-version": "Нова версія платформи", + "rate-limits": "Перевищено ліміти швидкості", + "edge-connection": "Підключення Edge", + "edge-communication-failure": "Збій зв'язку Edge", + "task-processing-failure": "Збій обробки завдань", + "resources-shortage": "Нестача ресурсів", + "trigger": "Тригер", + "trigger-required": "Тригер є обов'язковим" + }, + "type": "Тип", + "unread": "Непрочитано", + "updated": "Оновлено", + "use-deprecated-webhook-connectors": "Використовувати застарілі конектори Webhook", + "use-old-api": "Використовувати старий API", + "use-template": "Використовувати шаблон", + "view-all": "Переглянути все", + "warning": "Попередження", + "webhook-url": "Webhook URL", + "webhook-url-required": "Webhook URL є обов'язковим", + "workflow-url": "Workflow URL", + "workflow-url-required": "Workflow URL є обов'язковим", + "channel-name": "Назва каналу", + "channel-name-required": "Назва каналу є обов'язковою", + "settings": { + "notification-settings": "Налаштування сповіщень", + "reset-all": "Скинути всі налаштування", + "reset-all-title": "Ви впевнені, що хочете скинути форму?", + "reset-all-text": "Після підтвердження форма налаштувань буде скинута до значення за замовчуванням і збережена.", + "type": "Тип", + "enable-all": "Увімкнути все", + "disable-all": "Вимкнути все", + "delivery-not-configured": "Спосіб доставлення не налаштовано" + } + }, + "ota-update": { + "add": "Додати пакет", + "assign-firmware": "Призначена прошивка", + "assign-firmware-required": "Призначена прошивка є обов'язковою", + "assign-software": "Призначене програмне забезпечення", + "assign-software-required": "Призначене програмне забезпечення є обов'язковим", + "auto-generate-checksum": "Автоматично згенерувати контрольну суму", + "checksum": "Контрольна сума", + "checksum-hint": "Якщо контрольна сума порожня, її буде згенеровано автоматично", + "checksum-algorithm": "Алгоритм контрольної суми", + "checksum-copied-message": "Контрольну суму пакета було скопійовано в буфер обміну", + "change-firmware": "Зміна прошивки може спричинити оновлення { count, plural, =1 {1 пристрою} other {# пристроям} }.", + "change-software": "Зміна програмного забезпечення може спричинити оновлення { count, plural, =1 {1 пристрою} other {# пристроям} }.", + "change-ota-setting-title": "Ви впевнені, що хочете змінити налаштування OTA?", + "chose-compatible-device-profile": "Завантажений пакет буде доступний лише для пристроїв із вибраним профілем.", + "chose-firmware-distributed-device": "Виберіть прошивку, яка буде розповсюджуватися на пристрої", + "chose-software-distributed-device": "Виберіть програмне забезпечення, яке буде розповсюджуватися на пристрої", + "content-type": "Тип вмісту", + "copy-checksum": "Копіювати контрольну суму", + "copy-direct-url": "Копіювати прямий URL", + "copyId": "Копіювати Id пакета", + "copied": "Скопійовано!", + "delete": "Видалити пакет", + "delete-ota-update-text": "Будьте обережні, після підтвердження OTA оновлення стане невідновлюваним.", + "delete-ota-update-title": "Ви впевнені, що хочете видалити OTA оновлення '{{title}}'?", + "delete-ota-updates-text": "Будьте обережні, після підтвердження всі вибрані OTA оновлення буде видалено.", + "delete-ota-updates-title": "Ви впевнені, що хочете видалити вибране: { count, plural, =1 {1 OTA оновлення} other {# OTA оновлень} }?", + "description": "Опис", + "direct-url": "Прямий URL", + "direct-url-copied-message": "Прямий URL пакета було скопійовано в буфер обміну", + "direct-url-required": "Прямий URL є обов'язковим", + "download": "Завантажити пакет", + "drop-file": "Перетягніть файл пакета або натисніть, щоб вибрати файл для завантаження.", + "drop-package-file-or": "Перетягніть файл пакета або", + "file-name": "Назва файлу", + "file-size": "Розмір файлу", + "file-size-bytes": "Розмір файлу в байтах", + "idCopiedMessage": "Id пакета було скопійовано в буфер обміну", + "no-firmware-matching": "Не знайдено сумісних пакетів OTA оновлення Firmware, що відповідають '{{entity}}'.", + "no-firmware-text": "Сумісні пакети OTA оновлення Firmware не знайдено.", + "no-packages-text": "Пакетів не знайдено", + "no-software-matching": "Не знайдено сумісних пакетів OTA оновлення Software, що відповідають '{{entity}}'.", + "no-software-text": "Сумісні пакети OTA оновлення Software не знайдено.", + "ota-update": "OTA оновлення", + "ota-update-details": "Деталі OTA оновлення", + "ota-updates": "OTA оновлення", + "package-file": "Файл пакета", + "package-type": "Тип пакета", + "packages-repository": "Репозиторій пакетів", + "search": "Шукати пакети", + "selected-package": "{ count, plural, =1 {Вибрано 1 пакет} other {Вибрано #} }", + "title": "Назва", + "title-required": "Назва є обов'язковою.", + "title-max-length": "Назва має бути меншою за 256", + "types": { + "firmware": "Прошивка", + "software": "Програмне забезпечення" + }, + "upload-binary-file": "Вивантажити бінарний файл", + "use-external-url": "Використовувати зовнішній URL", + "version": "Версія", + "version-required": "Версія є обов'язковою.", + "version-tag": "Тег версії", + "version-tag-hint": "Користувацький тег має відповідати версії пакета, про яку повідомляє Ваш пристрій.", + "version-max-length": "Версія має бути меншою за 256", + "warning-after-save-no-edit": "Після вивантаження пакета Ви не зможете змінити назву, версію, профіль пристрою та тип пакета." + }, + "position": { + "top": "Верх", + "bottom": "Низ", + "left": "Ліворуч", + "right": "Праворуч" + }, + "profile": { + "profile": "Профіль", + "last-login-time": "Останній вхід", + "change-password": "Змінити пароль", + "current-password": "Поточний пароль", + "copy-jwt-token": "Копіювати JWT токен", + "jwt-token": "JWT токен", + "token-valid-till": "Токен дійсний до", + "tokenCopiedSuccessMessage": "JWT токен було скопійовано в буфер обміну", + "tokenCopiedWarnMessage": "JWT токен прострочено! Будь ласка, оновіть сторінку." + }, + "profiles": { + "profiles": "Профілі" + }, + "security": { + "security": "Безпека", + "general-settings": "Загальні налаштування безпеки", + "access-token": "Токен доступу", + "access-token-required": "Токен доступу є обов'язковим", + "clientId": "Client ID", + "clientId-required": "Client ID є обов'язковим", + "username": "Ім'я користувача", + "username-required": "Ім'я користувача є обов'язковим", + "ca-cert": "Сертифікат CA", + "2fa": { + "2fa": "Двофакторна автентифікація", + "2fa-description": "Двофакторна автентифікація захищає Ваш обліковий запис від несанкціонованого доступу. Все, що Вам потрібно зробити, — ввести код безпеки під час входу.", + "authenticate-with": "Ви можете автентифікуватися за допомогою:", + "disable-2fa-provider-text": "Вимкнення {{name}} зробить Ваш обліковий запис менш захищеним", + "disable-2fa-provider-title": "Ви впевнені, що хочете вимкнути {{name}}?", + "get-new-code": "Отримати новий код", + "main-2fa-method": "Використовувати як основний метод двофакторної автентифікації", + "dialog": { + "activation-step-description-email": "Наступного разу під час входу Вам буде запропоновано ввести код безпеки, який буде надіслано на Вашу email адресу.", + "activation-step-description-sms": "Наступного разу під час входу Вам буде запропоновано ввести код безпеки, який буде надіслано на номер телефону.", + "activation-step-description-totp": "Наступного разу під час входу Вам потрібно буде надати код двофакторної автентифікації.", + "activation-step-label": "Активація", + "backup-code-description": "Роздрукуйте коди, щоб вони були під рукою, коли Вам потрібно буде використати їх для входу у Ваш обліковий запис. Ви можете використати кожен резервний код один раз.", + "backup-code-warn": "Щойно Ви покинете цю сторінку, ці коди не можна буде показати знову. Зберігайте їх безпечно, використовуючи варіанти нижче.", + "download-txt": "Завантажити (txt)", + "email-step-description": "Введіть email, щоб використовувати його як Ваш автентифікатор.", + "email-step-label": "Email", + "enable-email-title": "Увімкнути email-автентифікатор", + "enable-sms-title": "Увімкнути SMS-автентифікатор", + "enable-totp-title": "Увімкнути застосунок автентифікації", + "enter-verification-code": "Введіть 6-цифровий код тут", + "get-backup-code-title": "Отримати резервний код", + "next": "Далі", + "scan-qr-code": "Скануйте цей QR код за допомогою Вашого застосунку підтвердження", + "send-code": "Надіслати код", + "sms-step-description": "Введіть номер телефону, щоб використовувати його як Ваш автентифікатор.", + "sms-step-label": "Номер телефону", + "success": "Успіх!", + "totp-step-description-install": "Ви можете встановити такі застосунки, як Google Authenticator, Authy або Duo.", + "totp-step-description-open": "Відкрийте застосунок автентифікації на Вашому мобільному телефоні.", + "totp-step-label": "Отримати застосунок", + "verification-code": "6-цифровий код", + "verification-code-invalid": "Некоректний формат коду підтвердження", + "verification-code-incorrect": "Код підтвердження неправильний", + "verification-code-many-request": "Занадто багато запитів на перевірку коду підтвердження", + "verification-step-description": "Введіть 6-цифровий код, який ми щойно надіслали на {{address}}", + "verification-step-label": "Підтвердження" + }, + "provider": { + "email": "Email", + "email-description": "Використовуйте код безпеки, надісланий на Вашу email адресу, для автентифікації.", + "email-hint": "Коди автентифікації надсилаються електронною поштою на {{ info }}", + "sms": "SMS", + "sms-description": "Використовуйте свій телефон для автентифікації. Ми надішлемо Вам код безпеки через SMS повідомлення під час входу.", + "sms-hint": "Коди автентифікації надсилаються текстовими повідомленнями на номер {{ info }}", + "totp": "Застосунок автентифікації", + "totp-description": "Використовуйте застосунки, такі як Google Authenticator, Authy або Duo на Вашому телефоні для автентифікації. Вони генерують код безпеки для входу.", + "totp-hint": "Застосунок автентифікації налаштовано для Вашого облікового запису", + "backup_code": "Резервний код", + "backup-code-description": "Ці одноразові коди дозволяють увійти в систему, коли Ви не маєте доступу до телефону, наприклад, під час подорожей.", + "backup-code-hint": "{{ info }} одноразових кодів активні на цей момент" + } + }, + "password-requirement": { + "at-least": "Щонайменше:", + "character": "{ count, plural, =1 {1 символ} other {# символи} }", + "digit": "{ count, plural, =1 {1 цифра} other {# цифр} }", + "incorrect-password-try-again": "Невірний пароль. Спробуйте ще раз", + "lowercase-letter": "{ count, plural, =1 {1 мала літера} other {# малих літер} }", + "new-passwords-not-match": "Новий пароль не співпадає", + "password-should-not-contain-spaces": "Ваш пароль не повинен містити пробіли", + "password-not-meet-requirements": "Пароль не відповідає вимогам", + "password-requirements": "Вимоги до паролю", + "password-should-difference": "Новий пароль має відрізнятися від поточного", + "special-character": "{ count, plural, =1 {1 спеціальний символ} other {# спеціальних символів} }", + "uppercase-letter": "{ count, plural, =1 {1 велика літера} other {# великих літер} }", + "at-most": "Не більше:" + } + }, + "relation": { + "relations": "Відносини", + "direction": "Напрямок", + "clear-relation-type": "Очистити тип відносин", + "search-direction": { + "FROM": "Від", + "TO": "До" + }, + "direction-type": { + "FROM": "від", + "TO": "до" + }, + "from-relations": "Вихідні відносини", + "to-relations": "Вхідні відносини", + "selected-relations": "{ count, plural, =1 {1 відношення} other {# відносин} } вибрано", + "type": "Тип", + "to-entity-type": "Тип сутності до", + "to-entity-name": "Назва сутності до", + "from-entity-type": "Тип сутності від", + "from-entity-name": "Назва сутності від", + "to-entity": "До сутності", + "from-entity": "Від сутності", + "delete": "Видалити відносини", + "relation-type": "Тип відносин", + "relation-type-required": "Тип відносин є обов'язковим.", + "relation-type-max-length": "Тип відносин має бути меншим за 256", + "any-relation-type": "Будь-який тип", + "add": "Додати відносини", + "edit": "Редагувати відносини", + "delete-to-relation-title": "Ви впевнені, що хочете видалити відносини до сутності '{{entityName}}'?", + "delete-to-relation-text": "Будьте обережні, після підтвердження сутність '{{entityName}}' буде розірвана від поточної сутності.", + "delete-to-relations-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 відношення} other {# відносин} }?", + "delete-to-relations-text": "Будьте обережні, після підтвердження всі вибрані відносини будуть видалені, і відповідні сутності будуть розірвані від поточної сутності.", + "delete-from-relation-title": "Ви впевнені, що хочете видалити відносини від сутності '{{entityName}}'?", + "delete-from-relation-text": "Будьте обережні, після підтвердження поточна сутність буде розірвана з сутністю '{{entityName}}'.", + "delete-from-relations-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 відношення} other {# відносин} }?", + "delete-from-relations-text": "Будьте обережні, після підтвердження всі вибрані відносини будуть видалені, і поточна сутність буде розірвана з відповідними сутностями.", + "remove-relation-filter": "Видалити фільтр відносин", + "remove-filter": "Видалити фільтр", + "add-relation-filter": "Додати фільтр відносин", + "any-relation": "Будь-яка відносина", + "relation-filters": "Фільтри відносин", + "relation-filter": "Фільтр відносин", + "additional-info": "Додаткова інформація (JSON)", + "invalid-additional-info": "Не вдалося розібрати додаткову інформацію JSON.", + "no-relations-text": "Відносин не знайдено", + "not": "Не" + }, + "resource": { + "add": "Додати ресурс", + "all-types": "Усі", + "copyId": "Копіювати Id ресурсу", + "delete": "Видалити ресурс", + "delete-resource-text": "Будьте обережні, після підтвердження ресурс стане невідновлюваним.", + "delete-resource-title": "Ви впевнені, що хочете видалити ресурс '{{resourceTitle}}'?", + "delete-resources-action-title": "Видалити { count, plural, =1 {1 ресурс} other {# ресурси} }", + "delete-resources-text": "Будь ласка, зверніть увагу, що вибрані ресурси, навіть якщо вони використовуються в профілях пристроїв, будуть видалені.", + "delete-resources-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 ресурс} other {# ресурси} }?", + "download": "Завантажити ресурс", + "drop-file": "Перетягніть файл ресурсу або натисніть, щоб вибрати файл для завантаження.", + "drop-resource-file-or": "Перетягніть файл ресурсу або", + "empty": "Ресурс порожній", + "file-name": "Назва файлу", + "idCopiedMessage": "Id ресурсу було скопійовано в буфер обміну", + "no-resource-matching": "Не знайдено ресурсу, що відповідає '{{widgetsBundle}}'.", + "no-resource-text": "Ресурсів не знайдено", + "open-widgets-bundle": "Відкрити набір віджетів", + "resource": "Ресурс", + "resource-file": "Файл ресурсу", + "resource-files": "Файли ресурсів", + "resource-library-details": "Деталі ресурсу", + "resource-type": "Тип ресурсу", + "resources-library": "Бібліотека ресурсів", + "search": "Шукати ресурси", + "selected-resources": "{ count, plural, =1 {1 ресурс} other {# ресурси} } вибрано", + "system": "Система", + "title": "Назва", + "title-required": "Назва є обов'язковою.", + "title-max-length": "Назва має бути меншою за 256", + "type": { + "jks": "JKS", + "js-module": "JS модуль", + "lwm2m-model": "Модель LWM2M", + "pkcs-12": "PKCS #12", + "general": "Загальний" + }, + "resource-sub-type": "Підтип", + "sub-type": { + "image": "Зображення", + "scada-symbol": "SCADA символ", + "extension": "Розширення", + "module": "Модуль" + }, + "resource-is-in-use": "Ресурс використовується іншими сутностями", + "resources-are-in-use": "Ресурси використовуються іншими сутностями", + "resource-is-in-use-text": "Ресурс '{{title}}' не було видалено, оскільки він використовується наступними сутностями:", + "resources-are-in-use-text": "Не всі ресурси були видалені, оскільки вони використовуються іншими сутностями.
Ви можете переглянути посилання на сутності, натиснувши кнопку Посилання в рядку відповідного ресурсу.
Якщо ви все ще хочете видалити ці ресурси, виберіть їх у таблиці нижче та натисніть кнопку Видалити вибране.", + "delete-resource-in-use-text": "Якщо ви все ще хочете видалити ресурс, натисніть кнопку Видалити все одно." + }, + "javascript": { + "add": "Додати JavaScript ресурс", + "delete": "Видалити JavaScript ресурс", + "delete-javascript-resource-text": "Будьте обережні, після підтвердження JavaScript ресурс стане невідновлюваним.", + "delete-javascript-resource-title": "Ви впевнені, що хочете видалити JavaScript ресурс '{{resourceTitle}}'?", + "delete-javascript-resources-action-title": "Видалити JavaScript { count, plural, =1 {1 ресурс} other {# ресурси} }", + "delete-javascript-resources-text": "Будь ласка, зверніть увагу, що вибрані JavaScript ресурси, навіть якщо вони використовуються в JavaScript функціях, будуть видалені.", + "delete-javascript-resources-title": "Ви впевнені, що хочете видалити JavaScript { count, plural, =1 {1 ресурс} other {# ресурси} }?", + "delete-javascript-resource-in-use-text": "Якщо ви все ще хочете видалити JavaScript ресурс, натисніть кнопку Видалити все одно.", + "download": "Завантажити JavaScript ресурс", + "upload-from-file": "Завантажити JavaScript з файлу", + "resource-file": "Файл JavaScript ресурсу", + "drop-file": "Перетягніть JavaScript файл або натисніть, щоб вибрати файл для завантаження.", + "drop-resource-file-or": "Перетягніть JavaScript файл або", + "javascript-library": "Бібліотека JavaScript", + "javascript-type": "Тип JavaScript", + "javascript-resource-details": "Деталі JavaScript ресурсу", + "javascript-resource-is-in-use": "JavaScript ресурс використовується іншими сутностями", + "javascript-resources-are-in-use": "JavaScript ресурси використовуються іншими сутностями", + "javascript-resource-is-in-use-text": "JavaScript ресурс '{{title}}' не було видалено, оскільки він використовується наступними сутностями:", + "javascript-resources-are-in-use-text": "Не всі JavaScript ресурси були видалені, оскільки вони використовуються іншими сутностями.
Ви можете переглянути посилання на сутності, натиснувши кнопку Посилання в рядку відповідного ресурсу.
Якщо ви все ще хочете видалити ці JavaScript ресурси, виберіть їх у таблиці нижче та натисніть кнопку Видалити вибрані.", + "search": "Шукати JavaScript ресурси", + "selected-javascript-resources": "{ count, plural, =1 {1 JavaScript ресурс} other {# JavaScript ресурси} } вибрано", + "no-javascript-resource-text": "JavaScript ресурси не знайдено", + "all-types": "Усі", + "module-script": "Модульний скрипт" + }, + "rpc": { + "error": { + "target-device-is-not-set": "Цільовий пристрій не встановлено!", + "invalid-target-entity": "RPC команди не підтримуються сутністю {{entityType}}.", + "failed-to-resolve-target-device": "Не вдалося визначити цільовий пристрій!", + "request-timeout": "Час очікування запиту", + "rpc-http-error": "Помилка: {{status}} - {{statusText}}" + } + }, + "rulechain": { + "rulechain": "Ланцюг правил", + "rulechain-events": "Події ланцюга правил", + "rulechains": "Ланцюги правил", + "root": "Корінь", + "delete": "Видалити ланцюг правил", + "name": "Назва", + "name-required": "Назва є обов'язковою.", + "name-max-length": "Назва має бути меншою за 256", + "description": "Опис", + "add": "Додати ланцюг правил", + "set-root": "Зробити ланцюг правил коренем", + "set-root-rulechain-title": "Ви впевнені, що хочете зробити ланцюг правил '{{ruleChainName}}' коренем?", + "set-root-rulechain-text": "Після підтвердження ланцюг правил стане коренем і буде обробляти всі вхідні транспортні повідомлення.", + "delete-rulechain-title": "Ви впевнені, що хочете видалити ланцюг правил '{{ruleChainName}}'?", + "delete-rulechain-text": "Будьте обережні, після підтвердження ланцюг правил та всі пов'язані дані стануть невідновлюваними.", + "delete-rulechains-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 ланцюг правил} other {# ланцюги правил} }?", + "delete-rulechains-action-title": "Видалити { count, plural, =1 {1 ланцюг правил} other {# ланцюги правил} }", + "delete-rulechains-text": "Будьте обережні, після підтвердження всі вибрані ланцюги правил будуть видалені, і всі пов'язані дані стануть невідновлюваними.", + "add-rulechain-text": "Додати новий ланцюг правил", + "no-rulechains-text": "Ланцюги правил не знайдено", + "rulechain-details": "Деталі ланцюга правил", + "details": "Деталі", + "events": "Події", + "system": "Система", + "import": "Імпортувати ланцюг правил", + "export": "Експортувати ланцюг правил", + "export-failed-error": "Не вдалося експортувати ланцюг правил: {{error}}", + "create-new-rulechain": "Створити новий ланцюг правил", + "rulechain-file": "Файл ланцюга правил", + "invalid-rulechain-file-error": "Не вдалося імпортувати ланцюг правил: Невірна структура даних ланцюга правил.", + "copyId": "Копіювати Id ланцюга правил", + "idCopiedMessage": "Id ланцюга правил було скопійовано в буфер обміну", + "select-rulechain": "Вибрати ланцюг правил", + "no-rulechains-matching": "Не знайдено ланцюгів правил, що відповідають '{{entity}}'.", + "rulechain-required": "Ланцюг правил є обов'язковим", + "management": "Управління правилами", + "debug-mode": "Режим налагодження", + "search": "Шукати ланцюги правил", + "selected-rulechains": "{ count, plural, =1 {1 ланцюг правил} other {# ланцюги правил} } вибрано", + "open-rulechain": "Відкрити ланцюг правил", + "edge-template-root": "Шаблон кореня", + "assign-to-edge": "Призначити на Edge", + "edge-rulechain": "Edge ланцюг правил", + "unassign-rulechain-from-edge-text": "Після підтвердження ланцюг правил буде розірвано, і він не буде доступний для Edge.", + "unassign-rulechains-from-edge-title": "Ви впевнені, що хочете розірвати призначення { count, plural, =1 {1 ланцюга правил} other {# ланцюгів правил} }?", + "unassign-rulechains-from-edge-text": "Після підтвердження всі вибрані ланцюги правил будуть розірвані і не будуть доступні для Edge.", + "assign-rulechain-to-edge-title": "Призначити ланцюг правил(а) на Edge", + "assign-rulechain-to-edge-text": "Будь ласка, виберіть ланцюги правил для призначення на Edge", + "set-edge-template-root-rulechain": "Зробити ланцюг правил коренем шаблону Edge", + "set-edge-template-root-rulechain-title": "Ви впевнені, що хочете зробити ланцюг правил '{{ruleChainName}}' коренем шаблону Edge?", + "set-edge-template-root-rulechain-text": "Після підтвердження ланцюг правил стане коренем шаблону Edge і буде основним ланцюгом правил для новостворених Edge.", + "invalid-rulechain-type-error": "Не вдалося імпортувати ланцюг правил: Невірний тип ланцюга правил. Очікуваний тип: {{expectedRuleChainType}}.", + "set-auto-assign-to-edge": "Призначити ланцюг правил на Edge під час створення", + "set-auto-assign-to-edge-title": "Ви впевнені, що хочете призначити ланцюг правил '{{ruleChainName}}' на Edge під час створення?", + "set-auto-assign-to-edge-text": "Після підтвердження ланцюг правил буде автоматично призначено на Edge під час створення.", + "unset-auto-assign-to-edge": "Не призначати ланцюг правил на Edge під час створення", + "unset-auto-assign-to-edge-title": "Ви впевнені, що не хочете призначати ланцюг правил '{{ruleChainName}}' на Edge під час створення?", + "unset-auto-assign-to-edge-text": "Після підтвердження ланцюг правил більше не буде автоматично призначено на Edge під час створення.", + "unassign-rulechain-title": "Ви впевнені, що хочете розірвати призначення ланцюга правил '{{ruleChainName}}'?", + "unassign-rulechains": "Розірвати призначення ланцюгів правил" + }, + "rulenode": { + "rule-node-events": "Події вузла правила", + "details": "Деталі", + "events": "Події", + "search": "Шукати вузли", + "open-node-library": "Відкрити бібліотеку вузлів", + "close-node-library": "Закрити бібліотеку вузлів", + "add": "Додати вузол правила", + "name": "Назва", + "name-required": "Назва є обов'язковою.", + "name-max-length": "Назва має бути меншою за 256", + "type": "Тип", + "rule-node-description": "Опис вузла правила", + "delete": "Видалити вузол правила", + "select-all-objects": "Вибрати всі вузли та з'єднання", + "deselect-all-objects": "Скасувати вибір усіх вузлів та з'єднань", + "delete-selected-objects": "Видалити вибрані вузли та з'єднання", + "delete-selected": "Видалити вибрані", + "create-nested-rulechain": "Створити вкладений ланцюг правил", + "select-all": "Вибрати все", + "copy-selected": "Копіювати вибрані", + "deselect-all": "Скасувати вибір усіх", + "rulenode-details": "Деталі вузла правила", + "debug-mode": "Режим налагодження", + "singleton": "Одиничний екземпляр", + "configuration": "Налаштування", + "link": "Посилання", + "link-details": "Деталі посилання вузла правила", + "add-link": "Додати посилання", + "link-label": "Маркування посилання", + "link-label-required": "Маркування посилання є обов'язковою.", + "custom-link-label": "Користувацька маркування посилання", + "custom-link-label-required": "Користувацька маркування посилання є обов'язковою.", + "link-labels": "Маркування посилань", + "link-labels-required": "Маркування посилань є обов'язковими.", + "no-link-labels-found": "Маркування посилань не знайдено", + "no-link-label-matching": "'{{label}}' не знайдено.", + "create-new-link-label": "Створити нову!", + "type-filter": "Фільтр", + "type-filter-details": "Фільтрує вхідні повідомлення за налаштованими умовами", + "type-enrichment": "Розширення", + "type-enrichment-details": "Додає додаткову інформацію в метадані повідомлення", + "type-transformation": "Трансформація", + "type-transformation-details": "Змінює вміст повідомлення та метадані", + "type-action": "Дія", + "type-action-details": "Виконує спеціальну дію", + "type-external": "Зовнішній", + "type-external-details": "Взаємодіє із зовнішньою системою", + "type-rule-chain": "Ланцюг правил", + "type-rule-chain-details": "Перенаправляє вхідні повідомлення до вказаного ланцюга правил", + "type-flow": "Потік", + "type-flow-details": "Організовує потік повідомлень", + "type-input": "Вхід", + "type-input-details": "Логічний вхід ланцюга правил, перенаправляє вхідні повідомлення до наступного пов'язаного вузла правила", + "type-unknown": "Невідомий", + "type-unknown-details": "Необроблений вузол правила", + "directive-is-not-loaded": "Визначена директива конфігурації '{{directiveName}}' недоступна.", + "ui-resources-load-error": "Не вдалося завантажити ресурси конфігурації інтерфейсу.", + "invalid-target-rulechain": "Не вдалося визначити цільовий ланцюг правил!", + "test-script-function": "Тестування функції скрипта", + "script-lang-java-script": "JavaScript", + "script-lang-tbel": "TBEL", + "message": "Повідомлення", + "message-type": "Тип повідомлення", + "select-message-type": "Вибрати тип повідомлення", + "message-type-required": "Тип повідомлення є обов'язковим", + "metadata": "Метадані", + "metadata-required": "Записи метаданих не можуть бути порожніми.", + "output": "Вихід", + "test": "Тест", + "help": "Допомога", + "reset-debug-settings": "Скинути налаштування налагодження у всіх вузлах", + "test-with-this-message": "{{test}} з цим повідомленням", + "queue-hint": "Виберіть чергу для пересилання повідомлень в іншу чергу. За замовчуванням використовується черга 'Main'.", + "queue-singleton-hint": "Виберіть чергу для пересилання повідомлень у багатокористувацьких середовищах. За замовчуванням використовується черга 'Main'." + }, + "rule-node-config": { + "id": "Id", + "additional-info": "Додаткова інформація", + "advanced-settings": "Розширені налаштування", + "create-entity-if-not-exists": "Створити нову сутність, якщо вона не існує", + "create-entity-if-not-exists-hint": "Якщо увімкнено, буде створено нову сутність із заданими параметрами, якщо вона ще не існує. Для зв'язку буде використано наявні сутності як є.", + "select-device-connectivity-event": "Вибрати подію підключення пристрою", + "entity-name-pattern": "Шаблон назви", + "device-name-pattern": "Назва пристрою", + "asset-name-pattern": "Назва активу", + "entity-view-name-pattern": "Назва представлення сутності", + "customer-title-pattern": "Назва клієнта", + "dashboard-name-pattern": "Назва дашборда", + "user-name-pattern": "Адреса email користувача", + "edge-name-pattern": "Назва Edge", + "entity-name-pattern-required": "Потрібен шаблон назви", + "entity-name-pattern-hint": "Поле шаблону назви підтримує шаблонізацію. Використовуйте $[messageKey], щоб витягнути значення з повідомлення, і ${metadataKey}, щоб витягнути значення з метаданих.", + "copy-message-type": "Копіювати тип повідомлення", + "entity-type-pattern": "Шаблон типу", + "entity-type-pattern-required": "Потрібен шаблон типу", + "message-type-value": "Значення типу повідомлення", + "message-type-value-required": "Потрібне значення типу повідомлення", + "message-type-value-max-length": "Значення типу повідомлення має бути менше ніж 256", + "output-message-type": "Вихідний тип повідомлення", + "entity-cache-expiration": "Час закінчення терміну дії кешу сутностей (с)", + "entity-cache-expiration-hint": "Визначає максимальний інтервал часу, протягом якого дозволено зберігати знайдені записи сутностей. Значення 0 означає, що записи ніколи не закінчуватимуться.", + "entity-cache-expiration-required": "Потрібен час закінчення терміну дії кешу сутностей.", + "entity-cache-expiration-range": "Час закінчення терміну дії кешу сутностей має бути більшим або дорівнювати 0.", + "customer-name-pattern": "Назва клієнта", + "customer-name-pattern-required": "Потрібна назва клієнта", + "customer-name-pattern-hint": "Використовуйте $[messageKey], щоб витягнути значення з повідомлення, і ${metadataKey}, щоб витягнути значення з метаданих.", + "create-customer-if-not-exists": "Створити нового клієнта, якщо він не існує", + "unassign-from-customer": "Скасувати призначення для конкретного клієнта, якщо ініціатор — дашборд", + "unassign-from-customer-tooltip": "Лише дашборди можуть бути призначені кільком клієнтам одночасно. \nЯкщо ініціатор повідомлення — дашборд, Вам потрібно явно вказати назву клієнта, для якого слід скасувати призначення.", + "customer-cache-expiration": "Час закінчення терміну дії кешу клієнтів (с)", + "customer-cache-expiration-hint": "Визначає максимальний інтервал часу, протягом якого дозволено зберігати знайдені записи клієнтів. Значення 0 означає, що записи ніколи не закінчуватимуться.", + "customer-cache-expiration-required": "Потрібен час закінчення терміну дії кешу клієнтів.", + "customer-cache-expiration-range": "Час закінчення терміну дії кешу клієнтів має бути більшим або дорівнювати 0.", + "interval-start": "Початок інтервалу", + "interval-end": "Кінець інтервалу", + "time-unit": "Одиниця часу", + "fetch-mode": "Режим вибірки", + "order-by-timestamp": "Сортувати за часовою міткою", + "limit": "Ліміт", + "limit-hint": "Мінімальне значення ліміту — 2, максимальне — 1000. Якщо ви хочете отримати один запис, виберіть режим вибірки 'Перше' або 'Останнє'.", + "limit-required": "Ліміт є обов'язковим.", + "limit-range": "Ліміт має бути в діапазоні від 2 до 1000.", + "time-unit-milliseconds": "Мілісекунди", + "time-unit-seconds": "Секунди", + "time-unit-minutes": "Хвилини", + "time-unit-hours": "Години", + "time-unit-days": "Дні", + "time-value-range": "Допускається діапазон від 1 до 2147483647.", + "start-interval-value-required": "Початок інтервалу є обов'язковим.", + "end-interval-value-required": "Кінець інтервалу є обов'язковим.", + "filter": "Фільтр", + "switch": "Перемикач", + "math-templatization-tooltip": "Це поле підтримує темплейтизацію. Використовуйте $[messageKey] для витягнення значення з повідомлення та ${metadataKey} для витягнення значення з метаданих.", + "add-message-type": "Додати тип повідомлення", + "select-message-types-required": "Необхідно вибрати хоча б один тип повідомлення.", + "select-message-types": "Вибрати типи повідомлень", + "no-message-types-found": "Типи повідомлень не знайдено", + "no-message-type-matching": "'{{messageType}}' не знайдено.", + "create-new-message-type": "Створити новий.", + "message-types-required": "Типи повідомлень є обов'язковими.", + "client-attributes": "Атрибути клієнта", + "shared-attributes": "Спільні атрибути", + "server-attributes": "Атрибути сервера", + "attributes-keys": "Ключі атрибутів", + "attributes-keys-required": "Ключі атрибутів є обов'язковими", + "attributes-scope": "Область атрибутів", + "attributes-scope-value": "Значення області атрибутів", + "attributes-scope-value-copy": "Копіювати значення області атрибутів", + "attributes-scope-hint": "Використовуйте ключ метаданих 'scope' для динамічного встановлення області атрибута для кожного повідомлення. Якщо вказано, це перекриває область, встановлену в конфігурації.", + "notify-device": "Примусово надіслати сповіщення на пристрій", + "send-attributes-updated-notification": "Надіслати сповіщення про оновлені атрибути", + "send-attributes-updated-notification-hint": "Надіслати сповіщення про оновлені атрибути як окреме повідомлення до черги механізму правил.", + "send-attributes-deleted-notification": "Надіслати сповіщення про видалені атрибути", + "send-attributes-deleted-notification-hint": "Надіслати сповіщення про видалені атрибути як окреме повідомлення до черги механізму правил.", + "update-attributes-only-on-value-change": "Зберігати атрибути лише якщо значення змінюється", + "update-attributes-only-on-value-change-hint": "Оновлює атрибути при кожному вхідному повідомленні, незалежно від того, чи змінилося їх значення. Це збільшує використання API та знижує продуктивність.", + "update-attributes-only-on-value-change-hint-enabled": "Оновлює атрибути лише якщо їх значення змінилося. Якщо значення не змінюється, не буде оновлено мітку часу атрибуту і не буде надіслано сповіщення про зміну атрибуту.", + "fetch-credentials-to-metadata": "Отримати облікові дані до метаданих", + "notify-device-on-update-hint": "Якщо увімкнено, примусово надіслати сповіщення на пристрій про оновлення спільних атрибутів. Якщо вимкнено, поведінка сповіщення контролюється параметром 'notifyDevice' з метаданих вхідного повідомлення. Щоб вимкнути сповіщення, метадані повідомлення повинні містити параметр 'notifyDevice' зі значенням 'false'. У будь-якому іншому випадку буде надіслано сповіщення на пристрій.", + "notify-device-on-delete-hint": "Якщо увімкнено, примусово надіслати сповіщення на пристрій про видалення спільних атрибутів. Якщо вимкнено, поведінка сповіщення контролюється параметром 'notifyDevice' з метаданих вхідного повідомлення. Щоб увімкнути сповіщення, метадані повідомлення повинні містити параметр 'notifyDevice' зі значенням 'true'. У будь-якому іншому випадку сповіщення не буде надіслано на пристрій.", + "latest-timeseries": "Ключі даних останніх часових рядів", + "timeseries-keys": "Ключі часових рядів", + "timeseries-keys-required": "Необхідно вибрати хоча б один ключ часових рядів.", + "add-timeseries-key": "Додати ключ часових рядів", + "add-message-field": "Додати поле повідомлення", + "relation-search-parameters": "Параметри пошуку відносин", + "relation-parameters": "Параметри відносин", + "add-metadata-field": "Додати поле метаданих", + "data-keys": "Назви полів повідомлення", + "copy-from": "Копіювати з", + "data-to-metadata": "Дані в метадані", + "metadata-to-data": "Метадані в дані", + "use-regular-expression-hint": "Використовуйте регулярний вираз, щоб копіювати ключі за шаблоном.\n\nПоради та підказки:\nНатисніть 'Enter', щоб завершити введення назви поля.\nНатисніть 'Backspace', щоб видалити назву поля. Підтримуються кілька назв полів.", + "interval": "Інтервал", + "interval-required": "Інтервал є обов'язковим", + "interval-hint": "Інтервал дедуплікації в секундах.", + "interval-min-error": "Мінімально допустиме значення — 1", + "max-pending-msgs": "Максимум очікуючих повідомлень", + "max-pending-msgs-hint": "Максимальна кількість повідомлень, що зберігаються в пам'яті для кожного унікального id дедуплікації.", + "max-pending-msgs-required": "Максимум очікуючих повідомлень є обов'язковим", + "max-pending-msgs-max-error": "Максимально допустиме значення — 1000", + "max-pending-msgs-min-error": "Мінімально допустиме значення — 1", + "max-retries": "Максимум повторних спроб", + "max-retries-required": "Максимум повторних спроб є обов'язковим", + "max-retries-hint": "Максимальна кількість повторних спроб, щоб додати дедупліковані повідомлення в чергу. Між повторними спробами використовується затримка 10 секунд", + "max-retries-max-error": "Максимально допустиме значення — 100", + "max-retries-min-error": "Мінімально допустиме значення — 0", + "strategy": "Стратегія", + "strategy-required": "Стратегія є обов'язковою", + "strategy-all-hint": "Повертає всі повідомлення, що надійшли протягом періоду дедуплікації, як одне повідомлення JSON-масиву. Де кожен елемент є об'єктом із внутрішніми властивостями msg і metadata.", + "strategy-first-hint": "Повертає перше повідомлення, що надійшло протягом періоду дедуплікації.", + "strategy-last-hint": "Повертає останнє повідомлення, що надійшло протягом періоду дедуплікації.", + "first": "Перше", + "last": "Останнє", + "all": "Усі", + "output-msg-type-hint": "Тип повідомлення для результату дедуплікації.", + "queue-name-hint": "Назва черги, куди буде опубліковано результат дедуплікації.", + "keys": "Ключі", + "keys-required": "Ключі є обов'язковими", + "rename-keys-in": "Перейменувати ключі в", + "data": "Дані", + "message": "Повідомлення", + "metadata": "Метадані", + "current-key-name": "Поточна назва ключа", + "key-name-required": "Назва ключа є обов'язковою", + "new-key-name": "Нова назва ключа", + "new-key-name-required": "Нова назва ключа є обов'язковою", + "metadata-keys": "Назви полів метаданих", + "json-path-expression": "Вираз JSONPath", + "json-path-expression-required": "Вираз JSONPath є обов'язковим", + "json-path-expression-hint": "JSONPath визначає шлях до елемента або набору елементів у структурі JSON. '$' позначає корінь об'єкта або масиву.", + "relations-query": "Запит на відносини", + "device-relations-query": "Запит на відносини пристрою", + "max-relation-level": "Максимальний рівень відносин", + "max-relation-level-error": "Значення має бути більше за 0 або не визначене.", + "max-relation-level-invalid": "Значення має бути цілим числом.", + "relation-type": "Тип відносин", + "relation-type-pattern": "Шаблон типу відносин", + "relation-type-pattern-required": "Шаблон типу відносин є обов'язковим", + "relation-types-list": "Типи відносин для поширення", + "relation-types-list-hint": "Якщо типи відносин для поширення не вибрані, тривоги будуть поширюватися без фільтрації за типом відносин.", + "unlimited-level": "Необмежений рівень", + "latest-telemetry": "Остання телеметрія", + "add-telemetry-key": "Додати ключ телеметрії", + "delete-from": "Видалити з", + "use-regular-expression-delete-hint": "Використовуйте регулярний вираз для видалення ключів за шаблоном.\n\nПоради та підказки:\nНатисніть 'Enter', щоб завершити введення назви поля.\nНатисніть 'Backspace', щоб видалити назву поля.\nПідтримуються кілька назв полів.", + "fetch-into": "Отримати в", + "attr-mapping": "Відображення атрибутів:", + "source-attribute": "Ключ атрибута джерела", + "source-attribute-required": "Ключ атрибута джерела є обов'язковим.", + "source-telemetry": "Ключ телеметрії джерела", + "source-telemetry-required": "Ключ телеметрії джерела є обов'язковим.", + "target-key": "Цільовий ключ", + "target-key-required": "Цільовий ключ є обов'язковим.", + "attr-mapping-required": "Необхідно вказати хоча б один запис відображення.", + "fields-mapping": "Відображення полів", + "fields-mapping-hint": "Якщо поле повідомлення встановлено на $entityId, id відправника повідомлення буде збережено в зазначеному стовпці таблиці.", + "relations-query-config-direction-suffix": "відправник", + "profile-name": "Назва профілю", + "fetch-circle-parameter-info-from-metadata-hint": "Поле метаданих '{{perimeterKeyName}}' повинно бути визначене у наступному форматі: {\"latitude\":48.196, \"longitude\":24.6532, \"radius\":100.0, \"radiusUnit\":\"METER\"}", + "fetch-poligon-parameter-info-from-metadata-hint": "Поле метаданих '{{perimeterKeyName}}' повинно бути визначене у наступному форматі: [[48.19736,24.65235],[48.19800,24.65060],...,[48.19849,24.65420]]", + "short-templatization-tooltip": "Використовуйте $[messageKey] для витягнення значення з повідомлення та ${metadataKey} для витягнення значення з метаданих.", + "fields-mapping-required": "Необхідно вказати хоча б одне відображення поля.", + "at-least-one-field-required": "Необхідно вказати хоча б одне вхідне поле.", + "originator-fields-sv-map-hint": "Поля цільового ключа підтримують темплейтизацію. Використовуйте $[messageKey] для витягнення значення з повідомлення та ${metadataKey} для витягнення значення з метаданих.", + "sv-map-hint": "Тільки поля цільового ключа підтримують темплейтизацію. Використовуйте $[messageKey] для витягнення значення з повідомлення та ${metadataKey} для витягнення значення з метаданих.", + "source-field": "Джерело поля", + "source-field-required": "Джерело поля є обов'язковим.", + "originator-source": "Джерело ініціатора", + "new-originator": "Новий ініціатор", + "originator-customer": "Клієнт", + "originator-tenant": "Тенант", + "originator-related": "Пов'язана сутність", + "originator-alarm-originator": "Ініціатор тривоги", + "originator-entity": "Сутність за шаблоном назви", + "clone-message": "Клонувати повідомлення", + "transform": "Трансформувати", + "default-ttl": "За замовчуванням TTL", + "default-ttl-required": "TTL за замовчуванням є обов'язковим.", + "default-ttl-hint": "Вузол правила отримуватиме значення Time-to-Live (TTL) з метаданих повідомлення. Якщо значення не задано, використовується значення TTL, зазначене в конфігурації. Якщо значення встановлено на 0, TTL з конфігурації профілю тенанта буде застосовано.", + "default-ttl-zero-hint": "TTL не буде застосовуватися, якщо його значення встановлено на 0.", + "min-default-ttl-message": "Допустиме мінімальне значення TTL — 0.", + "generation-parameters": "Параметри генерації", + "message-count": "Ліміт згенерованих повідомлень (0 - без обмежень)", + "message-count-required": "Ліміт згенерованих повідомлень є обов'язковим.", + "min-message-count-message": "Допустиме мінімальне значення ліміту повідомлень — 0.", + "period-seconds": "Період в секундах", + "period-seconds-required": "Період є обов'язковим.", + "generation-frequency-seconds": "Частота генерації в секундах", + "generation-frequency-required": "Частота генерації є обов'язковою.", + "min-generation-frequency-message": "Допустима мінімальна частота генерації — 60 секунд.", + "script-lang-tbel": "TBEL", + "script-lang-js": "JS", + "use-metadata-period-in-seconds-patterns": "Використовувати шаблон періоду в секундах", + "use-metadata-period-in-seconds-patterns-hint": "Якщо вибрано, вузол правила використовує шаблон інтервалу періоду в секундах з метаданих повідомлення або даних, припускаючи, що інтервали в секундах.", + "period-in-seconds-pattern": "Шаблон періоду в секундах", + "period-in-seconds-pattern-required": "Шаблон періоду в секундах є обов'язковим", + "min-period-seconds-message": "Допустимий мінімальний період — 60 секунд.", + "originator": "Ініціатор", + "message-body": "Тіло повідомлення", + "message-metadata": "Метадані повідомлення", + "generate": "Генерувати", + "current-rule-node": "Поточний вузол правила", + "current-tenant": "Поточний тенант", + "generator-function": "Функція генератора", + "test-generator-function": "Тестування функції генератора", + "generator": "Генератор", + "test-filter-function": "Тестування функції фільтра", + "test-switch-function": "Тестування функції перемикача", + "test-transformer-function": "Тестування функції трансформатора", + "transformer": "Трансформатор", + "alarm-create-condition": "Умова створення тривоги", + "test-condition-function": "Тестування функції умови", + "alarm-clear-condition": "Умова очищення тривоги", + "alarm-details-builder": "Конструктор деталей тривоги", + "test-details-function": "Тестування функції деталей", + "alarm-type": "Тип тривоги", + "select-entity-types": "Вибір типів сутностей", + "alarm-type-required": "Тип тривоги є обов'язковим.", + "alarm-severity": "Тяжкість тривоги", + "alarm-severity-required": "Тяжкість тривоги є обов'язковою", + "alarm-severity-pattern": "Шаблон тяжкості тривоги", + "alarm-status-filter": "Фільтр статусу тривоги", + "alarm-status-list-empty": "Список статусів тривог порожній", + "no-alarm-status-matching": "Не знайдено відповідних статусів тривог.", + "propagate": "Поширити тривогу на пов'язані сутності", + "propagate-to-owner": "Поширити тривогу на власника сутності (Клієнт або Тенант)", + "propagate-to-tenant": "Поширити тривогу на Тенанта", + "condition": "Умова", + "details": "Деталі", + "to-string": "До рядка", + "test-to-string-function": "Тестування функції до рядка", + "from-template": "З шаблону", + "from-template-required": "З шаблону є обов'язковим", + "message-to-metadata": "Повідомлення до метаданих", + "metadata-to-message": "Метадані до повідомлення", + "from-message": "З повідомлення", + "from-metadata": "З метаданих", + "to-template": "До", + "to-template-required": "Шаблон 'To' є обов'язковим", + "mail-address-list-template-hint": "Список адрес через кому, використовуйте ${metadataKey} для значення з метаданих, $[messageKey] для значення з тіла повідомлення", + "cc-template": "Cc", + "bcc-template": "Bcc", + "subject-template": "Тема", + "subject-template-required": "Шаблон теми є обов'язковим", + "body-template": "Тіло", + "body-template-required": "Шаблон тіла є обов'язковим", + "dynamic-mail-body-type": "Динамічний тип тіла пошти", + "mail-body-type": "Тип тіла пошти", + "body-type-template": "Шаблон типу тіла", + "reply-routing-configuration": "Конфігурація маршрутизації відповіді", + "rpc-reply-routing-configuration-hint": "Ці параметри конфігурації визначають імена ключів метаданих, що використовуються для ідентифікації сервісу, сесії та запиту для відправки відповіді назад.", + "reply-routing-configuration-hint": "Ці параметри конфігурації визначають імена ключів метаданих, що використовуються для ідентифікації сервісу та запиту для відправки відповіді назад.", + "request-id-metadata-attribute": "ID запиту", + "service-id-metadata-attribute": "ID сервісу", + "session-id-metadata-attribute": "ID сесії", + "timeout-sec": "Час очікування в секундах", + "timeout-required": "Час очікування є обов'язковим", + "min-timeout-message": "Допустиме мінімальне значення часу очікування — 0.", + "endpoint-url-pattern": "Шаблон URL кінцевої точки", + "endpoint-url-pattern-required": "Шаблон URL кінцевої точки є обов'язковим", + "request-method": "Метод запиту", + "use-simple-client-http-factory": "Використовувати просту HTTP фабрику клієнта", + "ignore-request-body": "Без тіла запиту", + "parse-to-plain-text": "Перетворити в простий текст", + "parse-to-plain-text-hint": "Якщо вибрано, повідомлення тіла запиту буде перетворено з рядка JSON на простий текст, наприклад, msg = \"Hello,\\t\"world\"\" буде перетворено в Hello, \"world\"", + "read-timeout": "Час очікування для читання в мілісекундах", + "read-timeout-hint": "Значення 0 означає нескінченний час очікування", + "max-parallel-requests-count": "Максимальна кількість паралельних запитів", + "max-parallel-requests-count-hint": "Значення 0 вказує на відсутність обмежень на паралельну обробку", + "max-response-size": "Максимальний розмір відповіді (в KB)", + "max-response-size-hint": "Максимальна кількість пам'яті, виділена для буферизації даних при декодуванні або кодуванні HTTP повідомлень, таких як JSON або XML корисні навантаження", + "headers": "Заголовки", + "headers-hint": "Використовуйте ${metadataKey} для значення з метаданих, $[messageKey] для значення з тіла повідомлення в полях заголовків/значень", + "header": "Заголовок", + "header-required": "Заголовок є обов'язковим", + "value": "Значення", + "value-required": "Значення є обов'язковим", + "topic-pattern": "Шаблон теми", + "key-pattern": "Шаблон ключа", + "key-pattern-hint": "Необов'язково. Якщо вказано дійсне значення номеру партиції, воно буде використано при відправці запису. Якщо партиція не вказана, буде використано ключ. Якщо жодне з цих значень не вказано, партиція буде призначена за принципом round-robin.", + "topic-pattern-required": "Шаблон теми є обов'язковим", + "topic": "Тема", + "topic-required": "Тема є обов'язковою", + "bootstrap-servers": "Bootstrap сервери", + "bootstrap-servers-required": "Значення bootstrap серверів є обов'язковим", + "other-properties": "Інші властивості", + "key": "Ключ", + "key-required": "Ключ є обов'язковим", + "retries": "Кількість автоматичних повторних спроб у разі невдачі", + "min-retries-message": "Допустиме мінімальне значення для повторних спроб — 0.", + "batch-size-bytes": "Розмір пакету в байтах", + "min-batch-size-bytes-message": "Допустиме мінімальне значення для розміру пакету — 0.", + "linger-ms": "Час для локального буферизації (мс)", + "min-linger-ms-message": "Допустиме мінімальне значення часу — 0 мс.", + "buffer-memory-bytes": "Максимальний розмір буфера клієнта в байтах", + "min-buffer-memory-message": "Допустиме мінімальне значення для розміру буфера — 0.", + "memory-buffer-size-range": "Розмір буфера пам'яті повинен бути між 0 і {{max}} КБ", + "acks": "Кількість підтверджень", + "topic-arn-pattern": "Шаблон ARN теми", + "topic-arn-pattern-required": "Шаблон ARN теми є обов'язковим", + "aws-access-key-id": "AWS Access Key ID", + "aws-access-key-id-required": "AWS Access Key ID є обов'язковим", + "aws-secret-access-key": "AWS Secret Access Key", + "aws-secret-access-key-required": "AWS Secret Access Key є обов'язковим", + "aws-region": "AWS Region", + "aws-region-required": "AWS Region є обов'язковим", + "exchange-name-pattern": "Шаблон імені обміну", + "routing-key-pattern": "Шаблон ключа маршрутизації", + "message-properties": "Властивості повідомлення", + "host": "Хост", + "host-required": "Хост є обов'язковим", + "port": "Порт", + "port-required": "Порт є обов'язковим", + "port-range": "Порт повинен бути в діапазоні від 1 до 65535.", + "virtual-host": "Віртуальний хост", + "username": "Ім'я користувача", + "password": "Пароль", + "automatic-recovery": "Автоматичне відновлення", + "connection-timeout-ms": "Час очікування підключення (мс)", + "min-connection-timeout-ms-message": "Допустиме мінімальне значення часу очікування — 0 мс.", + "handshake-timeout-ms": "Час очікування на з'єднання (мс)", + "min-handshake-timeout-ms-message": "Допустиме мінімальне значення часу очікування на з'єднання — 0 мс.", + "client-properties": "Властивості клієнта", + "queue-url-pattern": "Шаблон URL черги", + "queue-url-pattern-required": "Шаблон URL черги є обов'язковим", + "delay-seconds": "Затримка (секунди)", + "min-delay-seconds-message": "Допустиме мінімальне значення затримки — 0 секунд.", + "max-delay-seconds-message": "Допустиме максимальне значення затримки — 900 секунд.", + "name": "Назва", + "name-required": "Назва є обов'язковою", + "queue-type": "Тип черги", + "sqs-queue-standard": "Стандартна", + "sqs-queue-fifo": "FIFO", + "gcp-project-id": "ID проекту GCP", + "gcp-project-id-required": "ID проекту GCP є обов'язковим", + "gcp-service-account-key": "Файл ключа облікового запису сервісу GCP", + "gcp-service-account-key-required": "Файл ключа облікового запису сервісу GCP є обов'язковим", + "pubsub-topic-name": "Назва топіка", + "pubsub-topic-name-required": "Назва топіка є обов'язковою", + "message-attributes": "Атрибути повідомлення", + "message-attributes-hint": "Використовуйте ${metadataKey} для значення з метаданих, $[messageKey] для значення з тіла повідомлення в полях name/value", + "connect-timeout": "Час очікування підключення (сек)", + "connect-timeout-required": "Час очікування підключення є обов'язковим.", + "connect-timeout-range": "Час очікування підключення повинен бути в діапазоні від 1 до 200.", + "client-id": "Client ID", + "client-id-hint": "Необов'язково. Залиште порожнім для автоматично згенерованого Client ID. Будьте обережні при вказуванні Client ID. Більшість MQTT брокерів не дозволяють кілька з'єднань з однаковим Client ID. Для підключення до таких брокерів ваш MQTT Client ID повинен бути унікальним. Коли платформа працює в режимі мікросервісів, копія правила вузла запускається в кожному мікросервісі. Це автоматично призведе до множинних MQTT клієнтів з однаковим ID і може спричинити помилки правила вузла. Для уникнення таких помилок увімкніть опцію \"Додати ID сервісу як суфікс до Client ID\" нижче.", + "append-client-id-suffix": "Додати ID сервісу як суфікс до Client ID", + "client-id-suffix-hint": "Необов'язково. Застосовується, коли \"Client ID\" явно вказано. Якщо вибрано, то ID сервісу буде додано до Client ID як суфікс. Це допомагає уникнути помилок, коли платформа працює в режимі мікросервісів.", + "device-id": "ID пристрою", + "device-id-required": "ID пристрою є обов'язковим.", + "clean-session": "Чиста сесія", + "enable-ssl": "Увімкнути SSL", + "credentials": "Облікові дані", + "credentials-type": "Тип облікових даних", + "credentials-type-required": "Тип облікових даних є обов'язковим.", + "credentials-anonymous": "Анонімні", + "credentials-basic": "Базові", + "credentials-pem": "PEM", + "credentials-pem-hint": "Необхідно хоча б сертифікат CA сервера або пара сертифіката клієнта та приватного ключа клієнта", + "credentials-sas": "Shared Access Signature", + "sas-key": "SAS ключ", + "sas-key-required": "SAS ключ є обов'язковим.", + "hostname": "Хост", + "hostname-required": "Хост є обов'язковим.", + "azure-ca-cert": "Файл сертифіката CA", + "username-required": "Ім'я користувача є обов'язковим.", + "password-required": "Пароль є обов'язковим.", + "ca-cert": "Сертифікат CA сервера", + "private-key": "Файл приватного ключа клієнта", + "cert": "Файл сертифіката клієнта", + "no-file": "Файл не вибрано.", + "drop-file": "Перетягніть файл або натисніть, щоб вибрати файл для завантаження.", + "private-key-password": "Пароль приватного ключа", + "use-system-smtp-settings": "Використовувати системні налаштування SMTP", + "use-metadata-dynamic-interval": "Використовувати динамічний інтервал", + "metadata-dynamic-interval-hint": "Поля введення початку та кінця інтервалу підтримують темплейтизацію. Зверніть увагу, що підставлене значення шаблону має бути задане в мілісекундах. Використовуйте $[messageKey] для витягнення значення з повідомлення та ${metadataKey} для витягнення значення з метаданих.", + "use-metadata-interval-patterns-hint": "Якщо вибрано, вузол правила використовує шаблони інтервалів початку та кінця з метаданих повідомлення або даних, припускаючи, що інтервали в мілісекундах.", + "use-message-alarm-data": "Використовувати дані тривоги з повідомлення", + "overwrite-alarm-details": "Перезаписати деталі тривоги", + "use-alarm-severity-pattern": "Використовувати шаблон тяжкості тривоги", + "check-all-keys": "Перевірити, що всі зазначені поля наявні", + "check-all-keys-hint": "Якщо вибрано, перевіряє, що всі зазначені ключі наявні в даних повідомлення та метаданих.", + "check-relation-to-specific-entity": "Перевірити відношення до конкретної сутності", + "check-relation-to-specific-entity-tooltip": "Якщо увімкнено, перевіряє наявність відношення з конкретною сутністю; інакше перевіряє наявність відношення з будь-якою сутністю. В обох випадках пошук відношення базується на налаштованих напрямку та типу.", + "check-relation-hint": "Перевіряє наявність відношення до конкретної сутності або до будь-якої сутності на основі напрямку та типу відношення.", + "delete-relation-with-specific-entity": "Видалити відношення з конкретною сутністю", + "delete-relation-with-specific-entity-hint": "Якщо увімкнено, видалить відношення лише з однією конкретною сутністю. Інакше відношення буде видалено з усіма сутностями, що відповідають умовам.", + "delete-relation-hint": "Видаляє відношення від ініціатора вхідного повідомлення до зазначеної сутності або списку сутностей на основі напрямку та типу.", + "remove-current-relations": "Видалити поточні відношення", + "remove-current-relations-hint": "Видаляє поточні відношення від ініціатора вхідного повідомлення на основі напрямку та типу.", + "change-originator-to-related-entity": "Змінити ініціатора на пов'язану сутність", + "change-originator-to-related-entity-hint": "Використовується для обробки надісланого повідомлення як повідомлення від іншої сутності.", + "start-interval": "Початок інтервалу", + "end-interval": "Кінець інтервалу", + "start-interval-required": "Початок інтервалу є обов'язковим.", + "end-interval-required": "Кінець інтервалу є обов'язковим.", + "smtp-protocol": "Протокол", + "smtp-host": "Хост SMTP", + "smtp-host-required": "Хост SMTP є обов'язковим.", + "smtp-port": "Порт SMTP", + "smtp-port-required": "Необхідно вказати порт SMTP.", + "smtp-port-range": "Порт SMTP повинен бути в діапазоні від 1 до 65535.", + "timeout-msec": "Час очікування, мс", + "min-timeout-msec-message": "Допустиме мінімальне значення — 0 мс.", + "enter-username": "Ввести ім'я користувача", + "enter-password": "Ввести пароль", + "enable-tls": "Увімкнути TLS", + "tls-version": "Версія TLS", + "enable-proxy": "Увімкнути проксі", + "use-system-proxy-properties": "Використовувати системні властивості проксі", + "proxy-host": "Хост проксі", + "proxy-host-required": "Хост проксі є обов'язковим.", + "proxy-port": "Порт проксі", + "proxy-port-required": "Порт проксі є обов'язковим.", + "proxy-port-range": "Порт проксі повинен бути в діапазоні від 1 до 65535.", + "proxy-user": "Користувач проксі", + "proxy-password": "Пароль проксі", + "proxy-scheme": "Схема проксі", + "numbers-to-template": "Номери телефону для шаблону", + "numbers-to-template-required": "Номери телефону для шаблону є обов'язковими", + "numbers-to-template-hint": "Номери телефону через кому, використовуйте ${metadataKey} для значення з метаданих, $[messageKey] для значення з тіла повідомлення", + "sms-message-template": "Шаблон SMS повідомлення", + "sms-message-template-required": "Шаблон SMS повідомлення є обов'язковим", + "use-system-sms-settings": "Використовувати системні налаштування провайдера SMS", + "min-period-0-seconds-message": "Допустимий мінімальний період — 0 секунд.", + "max-pending-messages": "Максимальна кількість повідомлень в очікуванні", + "max-pending-messages-required": "Максимальна кількість повідомлень в очікуванні є обов'язковою.", + "max-pending-messages-range": "Максимальна кількість повідомлень в очікуванні повинна бути в діапазоні від 1 до 100000.", + "originator-types-filter": "Фільтр типів ініціатора", + "interval-seconds": "Інтервал у секундах", + "interval-seconds-required": "Інтервал є обов'язковим.", + "int-range": "Значення не повинно перевищувати максимальну межу цілого числа (2147483648)", + "min-interval-seconds-message": "Допустимий мінімальний інтервал — 1 секунда.", + "output-timeseries-key-prefix": "Префікс ключа ряду часу виходу", + "output-timeseries-key-prefix-required": "Префікс ключа ряду часу виходу є обов'язковим.", + "separator-hint": "Натисніть \"Enter\", щоб завершити введення поля.", + "select-details": "Вибрати деталі", + "entity-details-id": "Id", + "entity-details-title": "Назва", + "entity-details-country": "Країна", + "entity-details-state": "Область", + "entity-details-city": "Місто", + "entity-details-zip": "Індекс", + "entity-details-address": "Адреса", + "entity-details-address2": "Адреса2", + "entity-details-additional_info": "Додаткова інформація", + "entity-details-phone": "Телефон", + "entity-details-email": "Email", + "email-sender": "Відправник Email", + "fields-to-check": "Поля для перевірки", + "add-detail": "Додати деталь", + "check-all-keys-tooltip": "Якщо увімкнено, перевіряє наявність усіх полів зі списку в полях повідомлення та назвах полів метаданих у вхідному повідомленні та його метаданих.", + "fields-to-check-hint": "Натисніть \"Enter\", щоб завершити введення назви поля. Підтримуються кілька назв полів.", + "entity-details-list-empty": "Потрібно вибрати принаймні одну деталь.", + "alarm-status": "Статус тривоги", + "alarm-required": "Потрібно вибрати принаймні один статус тривоги.", + "no-entity-details-matching": "Відповідних деталей сутності не знайдено.", + "custom-table-name": "Власна назва таблиці", + "custom-table-name-required": "Назва таблиці є обов'язковою", + "custom-table-hint": "Таблиця має бути створена у Вашому кластері Cassandra, а її назва повинна починатися з префікса 'cs_tb_', щоб уникнути вставки даних у спільні таблиці TB. Введіть тут назву таблиці без префікса 'cs_tb_'.", + "message-field": "Поле повідомлення", + "message-field-required": "Поле повідомлення є обов'язковим.", + "table-col": "Стовпець таблиці", + "table-col-required": "Стовпець таблиці є обов'язковим.", + "latitude-field-name": "Назва поля широти", + "longitude-field-name": "Назва поля довготи", + "latitude-field-name-required": "Назва поля широти є обов'язковою.", + "longitude-field-name-required": "Назва поля довготи є обов'язковою.", + "fetch-perimeter-info-from-metadata": "Отримати інформацію про периметр з метаданих", + "fetch-perimeter-info-from-metadata-tooltip": "Якщо тип периметра встановлено як 'Polygon', значення поля метаданих '{{perimeterKeyName}}' буде задано як визначення периметра без додаткового парсингу значення. Інакше, якщо тип периметра встановлено як 'Circle', значення поля метаданих '{{perimeterKeyName}}' буде розібрано для витягнення полів 'latitude', 'longitude', 'radius', 'radiusUnit', які використовуються для визначення периметра кола.", + "perimeter-key-name": "Назва ключа периметра", + "perimeter-key-name-hint": "Назва поля метаданих, що містить інформацію про периметр.", + "perimeter-key-name-required": "Назва ключа периметра є обов'язковою.", + "perimeter-circle": "Коло", + "perimeter-polygon": "Полігон", + "perimeter-type": "Тип периметра", + "circle-center-latitude": "Широта центру", + "circle-center-latitude-required": "Широта центру є обов'язковою.", + "circle-center-longitude": "Довгота центру", + "circle-center-longitude-required": "Довгота центру є обов'язковою.", + "range-unit-meter": "Метр", + "range-unit-kilometer": "Кілометр", + "range-unit-foot": "Фут", + "range-unit-mile": "Миля", + "range-unit-nautical-mile": "Морська миля", + "range-units": "Одиниці діапазону", + "range-units-required": "Одиниці діапазону є обов'язковими.", + "range": "Діапазон", + "range-required": "Діапазон є обов'язковим.", + "polygon-definition": "Визначення полігону", + "polygon-definition-required": "Визначення полігону є обов'язковим.", + "polygon-definition-hint": "Використовуйте такий формат для ручного визначення полігону: [[lat1,lon1],[lat2,lon2], ... ,[latN,lonN]].", + "min-inside-duration": "Мінімальна тривалість перебування всередині", + "min-inside-duration-value-required": "Мінімальна тривалість перебування всередині є обов'язковою", + "min-inside-duration-time-unit": "Одиниця часу мінімальної тривалості перебування всередині", + "min-outside-duration": "Мінімальна тривалість перебування зовні", + "min-outside-duration-value-required": "Мінімальна тривалість перебування зовні є обов'язковою", + "min-outside-duration-time-unit": "Одиниця часу мінімальної тривалості перебування зовні", + "tell-failure-if-absent": "Повідомляти \"Failure\"", + "tell-failure-if-absent-hint": "Якщо принаймні один вибраний ключ не існує, вихідне повідомлення повідомить \"Failure\".", + "get-latest-value-with-ts": "Отримувати мітку часу для останніх значень телеметрії", + "get-latest-value-with-ts-hint": "Якщо вибрано, останні значення телеметрії також включатимуть мітку часу, напр.: \"temp\": \"{\"ts\":1574329385897, \"value\":42}\"", + "ignore-null-strings": "Ігнорувати порожні рядки", + "ignore-null-strings-hint": "Якщо вибрано, вузол правила ігноруватиме поля сутності з порожнім значенням.", + "add-metadata-key-values-as-kafka-headers": "Додати пари ключ-значення метаданих повідомлення до заголовків запису Kafka", + "add-metadata-key-values-as-kafka-headers-hint": "Якщо вибрано, пари ключ-значення з метаданих повідомлення буде додано до заголовків вихідних записів як масиви байтів із попередньо визначеним кодуванням набору символів.", + "charset-encoding": "Кодування набору символів", + "charset-encoding-required": "Кодування набору символів є обов'язковим.", + "charset-us-ascii": "US-ASCII", + "charset-iso-8859-1": "ISO-8859-1", + "charset-utf-8": "UTF-8", + "charset-utf-16be": "UTF-16BE", + "charset-utf-16le": "UTF-16LE", + "charset-utf-16": "UTF-16", + "select-queue-hint": "Назву черги можна вибрати зі спадного списку або додати власну назву.", + "device-profile-node-hint": "Корисно, якщо у Вас є умови тривалості або повторювані умови, щоб забезпечити безперервність оцінювання стану тривоги.", + "persist-alarm-rules": "Зберігати стан правил тривог", + "persist-alarm-rules-hint": "Якщо увімкнено, вузол правила зберігатиме стан обробки в базі даних.", + "fetch-alarm-rules": "Отримувати стан правил тривог", + "fetch-alarm-rules-hint": "Якщо увімкнено, вузол правила відновлюватиме стан обробки під час ініціалізації та гарантуватиме створення тривог навіть після перезапусків сервера. Інакше стан буде відновлено, коли надійде перше повідомлення від пристрою.", + "input-value-key": "Ключ вхідного значення", + "input-value-key-required": "Ключ вхідного значення є обов'язковим.", + "output-value-key": "Ключ вихідного значення", + "output-value-key-required": "Ключ вихідного значення є обов'язковим.", + "number-of-digits-after-floating-point": "Кількість цифр після десяткової крапки", + "number-of-digits-after-floating-point-range": "Кількість цифр після десяткової крапки повинна бути в діапазоні від 0 до 15.", + "failure-if-delta-negative": "Повідомляти \"Failure\", якщо дельта від'ємна", + "failure-if-delta-negative-tooltip": "Вузол правила примусово встановлює помилку обробки повідомлення, якщо значення дельти від'ємне.", + "use-caching": "Використовувати кешування", + "use-caching-tooltip": "Вузол правила кешуватиме значення \"{{inputValueKey}}\", що надходить із вхідного повідомлення, для підвищення продуктивності. Зверніть увагу, що кеш не буде оновлено, якщо Ви зміните значення \"{{inputValueKey}}\" в іншому місці.", + "add-time-difference-between-readings": "Додати різницю часу між вимірюваннями \"{{inputValueKey}}\"", + "add-time-difference-between-readings-tooltip": "Якщо увімкнено, вузол правила додасть \"{{periodValueKey}}\" до вихідного повідомлення.", + "period-value-key": "Ключ значення періоду", + "period-value-key-required": "Ключ значення періоду є обов'язковим.", + "general-pattern-hint": "Використовуйте ${metadataKey} для значення з метаданих, $[messageKey] для значення з тіла повідомлення.", + "alarm-severity-pattern-hint": "Використовуйте ${metadataKey} для значення з метаданих, $[messageKey] для значення з тіла повідомлення. Рівень тривоги має бути системним (CRITICAL, MAJOR тощо.)", + "output-node-name-hint": "Назва вузла правила відповідає типу зв'язку вихідного повідомлення та використовується для пересилання повідомлень до інших вузлів правил у ланцюгу правил виклику.", + "use-server-ts": "Використовувати мітку часу сервера", + "use-server-ts-hint": "Використовувати поточну мітку часу сервера для даних часових рядів, у яких немає явної мітки часу. Це допомагає зберігати коректний порядок під час обробки повідомлень із кількох джерел або коли повідомлення надходять не за порядком.", + "kv-map-pattern-hint": "Усі вхідні поля підтримують шаблонізацію. Використовуйте $[messageKey], щоб витягнути значення з повідомлення, і ${metadataKey}, щоб витягнути значення з метаданих.", + "kv-map-single-pattern-hint": "Вхідне поле підтримує шаблонізацію. Використовуйте $[messageKey], щоб витягнути значення з повідомлення, і ${metadataKey}, щоб витягнути значення з метаданих.", + "shared-scope": "Спільна область", + "server-scope": "Серверна область", + "client-scope": "Клієнтська область", + "attribute-type": "Атрибут", + "attribute-type-description": "Отримати значення атрибута з бази даних", + "attribute-type-result-description": "Зберегти результат як атрибут сутності в базі даних", + "constant-type": "Константа", + "constant-type-description": "Визначити константне значення", + "time-series-type": "Часовий ряд", + "time-series-type-description": "Отримати останнє значення часового ряду з бази даних", + "time-series-type-result-description": "Зберегти результат як часовий ряд сутності в базі даних", + "message-body-type": "Повідомлення", + "message-body-type-description": "Отримати значення аргументу з вхідного повідомлення", + "message-body-type-result-description": "Додати результат до вихідного повідомлення", + "message-metadata-type": "Метадані", + "message-metadata-type-description": "Отримати значення аргументу з метаданих вхідного повідомлення", + "message-metadata-result-description": "Додати результат до вихідних метаданих повідомлення", + "argument-tile": "Аргументи", + "no-arguments-prompt": "Аргументи не налаштовано", + "result-title": "Результат", + "functions-field-input": "Функції", + "no-option-found": "Параметр не знайдено", + "argument-source-field-input": "Джерело", + "argument-source-field-input-required": "Джерело аргументу є обов'язковим.", + "argument-key-field-input": "Ключ", + "argument-key-field-input-required": "Ключ аргументу є обов'язковим.", + "constant-value-field-input": "Константне значення", + "constant-value-field-input-required": "Константне значення є обов'язковим.", + "attribute-scope-field-input": "Область атрибутів", + "attribute-scope-field-input-required": "Область атрибутів є обов'язковою.", + "default-value-field-input": "Значення за замовчуванням", + "type-field-input": "Тип", + "type-field-input-required": "Тип є обов'язковим.", + "key-field-input": "Ключ", + "add-entity-type": "Додати тип сутності", + "add-device-profile": "Додати профіль пристрою", + "key-field-input-required": "Ключ є обов'язковим.", + "number-floating-point-field-input": "Кількість цифр після десяткової крапки", + "number-floating-point-field-input-hint": "Використовуйте 0, щоб перетворити результат на ціле число", + "add-to-message-field-input": "Додати до повідомлення", + "add-to-metadata-field-input": "Додати до метаданих", + "custom-expression-field-input": "Математичний вираз", + "custom-expression-field-input-required": "Математичний вираз є обов'язковим", + "custom-expression-field-input-hint": "Вкажіть математичний вираз для обчислення. Вираз за замовчуванням демонструє, як перетворити Фаренгейт у Цельсій", + "retained-message": "Збережене", + "attributes-mapping": "Зіставлення атрибутів", + "latest-telemetry-mapping": "Зіставлення останньої телеметрії", + "add-mapped-attribute-to": "Додати зіставлені атрибути до", + "add-mapped-latest-telemetry-to": "Додати зіставлені значення останньої телеметрії до", + "add-mapped-fields-to": "Додати зіставлені поля до", + "add-selected-details-to": "Додати вибрані деталі до", + "clear-selected-types": "Очистити вибрані типи", + "clear-selected-details": "Очистити вибрані деталі", + "clear-selected-fields": "Очистити вибрані поля", + "clear-selected-keys": "Очистити вибрані ключі", + "geofence-configuration": "Налаштування геозони", + "coordinate-field-names": "Назви полів координат", + "coordinate-field-hint": "Вузол правила намагається отримати вказані поля з повідомлення. Якщо їх немає, він шукатиме їх у метаданих.", + "presence-monitoring-strategy": "Стратегія моніторингу присутності", + "presence-monitoring-strategy-on-first-message": "За першим повідомленням", + "presence-monitoring-strategy-on-each-message": "За кожним повідомленням", + "presence-monitoring-strategy-on-first-message-hint": "Повідомляє статус присутності 'Всередині' або 'Зовні' у першому повідомленні після того, як мине налаштована мінімальна тривалість від попереднього оновлення статусу присутності 'Увійшов' або 'Вийшов'.", + "presence-monitoring-strategy-on-each-message-hint": "Повідомляє статус присутності 'Всередині' або 'Зовні' у кожному повідомленні після оновлення статусу присутності 'Увійшов' або 'Вийшов'.", + "fetch-credentials-to": "Отримати облікові дані до", + "add-originator-attributes-to": "Додати атрибути ініціатора до", + "originator-attributes": "Атрибути ініціатора", + "fetch-latest-telemetry-with-timestamp": "Отримати останні телеметричні дані з міткою часу", + "fetch-latest-telemetry-with-timestamp-tooltip": "Якщо вибрано, останні телеметричні значення будуть додані до вихідних метаданих з міткою часу, наприклад: \"{{latestTsKeyName}}\": \"{\"ts\":1574329385897, \"value\":42}\"", + "tell-failure": "Повідомити про помилку, якщо відсутні будь-які атрибути", + "tell-failure-tooltip": "Якщо хоча б один вибраний ключ не існує, вихідне повідомлення буде позначено як \"Failure\".", + "created-time": "Час створення", + "chip-help": "Натисніть 'Enter' для завершення введення {{inputName}}. \nНатисніть 'Backspace' для видалення {{inputName}}. \nПідтримуються кілька значень.", + "detail": "деталь", + "field-name": "ім'я поля", + "device-profile": "профіль пристрою", + "entity-type": "тип сутності", + "message-type": "тип повідомлення", + "timeseries-key": "ключ часових рядів", + "type": "Тип", + "first-name": "Ім'я", + "last-name": "Прізвище", + "label": "Маркування", + "originator-fields-mapping": "Зіставлення полів ініціатора", + "add-mapped-originator-fields-to": "Додати зіставлені поля ініціатора до", + "fields": "Поля", + "skip-empty-fields": "Пропустити порожні поля", + "skip-empty-fields-tooltip": "Поля з порожніми значеннями не будуть додані до вихідного повідомлення/метаданих.", + "fetch-interval": "Інтервал вибірки", + "fetch-strategy": "Стратегія вибірки", + "fetch-timeseries-from-to": "Отримати часові ряди з {{startInterval}} {{startIntervalTimeUnit}} тому до {{endInterval}} {{endIntervalTimeUnit}} тому.", + "fetch-timeseries-from-to-invalid": "Недійсна вибірка часових рядів (\"Інтервал початку\" повинен бути меншим за \"Інтервал завершення\").", + "use-metadata-dynamic-interval-tooltip": "Якщо вибрано, вузол правила використовуватиме динамічні інтервали початку та кінця на основі шаблонів повідомлення та метаданих.", + "all-mode-hint": "Якщо вибрано режим вибірки \"Усі\", вузол правила отримає телеметрію з вибраного інтервалу з налаштовуваними параметрами запиту.", + "first-mode-hint": "Якщо вибрано режим вибірки \"Перший\", вузол правила отримає найближчі телеметричні дані до початку вибраного інтервалу.", + "last-mode-hint": "Якщо вибрано режим вибірки \"Останній\", вузол правила отримає найближчі телеметричні дані до кінця вибраного інтервалу.", + "ascending": "За зростанням", + "descending": "За спаданням", + "min": "Мінімум", + "max": "Максимум", + "average": "Середнє", + "sum": "Сума", + "count": "Кількість", + "none": "Немає", + "last-level-relation-tooltip": "Якщо вибрано, вузол правила шукатиме пов'язані сутності тільки на рівні, визначеному в максимальному рівні зв'язку.", + "last-level-device-relation-tooltip": "Якщо вибрано, вузол правила шукатиме пов'язані пристрої тільки на рівні, визначеному в максимальному рівні зв'язку.", + "data-to-fetch": "Дані для вибірки", + "mapping-of-customers": "Зіставлення клієнтів", + "map-fields-required": "Усі поля зіставлення є обов'язковими.", + "attributes": "Атрибути", + "related-device-attributes": "Атрибути пов'язаних пристроїв", + "add-selected-attributes-to": "Додати вибрані атрибути до", + "device-profiles": "Профілі пристроїв", + "mapping-of-tenant": "Зіставлення орендатора", + "add-attribute-key": "Додати ключ атрибута", + "message-template": "Шаблон повідомлення", + "message-template-required": "Шаблон повідомлення є обов'язковим", + "use-system-slack-settings": "Використовувати системні налаштування Slack", + "slack-api-token": "Slack API токен", + "slack-api-token-required": "Slack API токен є обов'язковим", + "keys-mapping": "Зіставлення ключів", + "add-key": "Додати ключ", + "recipients": "Отримувачі", + "message-subject-and-content": "Тема і вміст повідомлення", + "template-rules-hint": "Обидва поля вводу підтримують шаблони. Використовуйте $[messageKey] для отримання значення з повідомлення і ${metadataKey} для отримання значення з метаданих повідомлення.", + "originator-customer-desc": "Використовувати клієнта ініціатора вхідного повідомлення як нового ініціатора.", + "originator-tenant-desc": "Використовувати поточного орендатора як нового ініціатора.", + "originator-related-entity-desc": "Використовувати пов'язану сутність як нового ініціатора. Пошук на основі налаштованого типу зв'язку та напрямку.", + "originator-alarm-originator-desc": "Використовувати ініціатора тривоги як нового ініціатора. Тільки якщо ініціатор вхідного повідомлення є сутністю тривоги.", + "originator-entity-by-name-pattern-desc": "Використовувати сутність, що отримана з БД, як нового ініціатора. Пошук на основі типу сутності та заданого шаблону імені.", + "email-from-template-hint": "Використовуйте $[messageKey] для отримання значення з повідомлення та ${metadataKey} для отримання значення з метаданих.", + "recipients-block-main-hint": "Список адрес, розділений комами. Всі поля вводу підтримують шаблони. Використовуйте $[messageKey] для отримання значення з повідомлення та ${metadataKey} для отримання значення з метаданих.", + "forward-msg-default-rule-chain": "Переслати повідомлення до стандартного ланцюга правил ініціатора", + "forward-msg-default-rule-chain-tooltip": "Якщо увімкнено, повідомлення буде переслано до стандартного ланцюга правил ініціатора або до ланцюга правил за замовчуванням, якщо ініціатор не має стандартного ланцюга правил у профілі сутності.", + "exclude-zero-deltas": "Виключити нульові зміни з вихідного повідомлення", + "exclude-zero-deltas-hint": "Якщо увімкнено, вихідний ключ \"{{outputValueKey}}\" буде доданий до вихідного повідомлення, якщо його значення не нульове.", + "exclude-zero-deltas-time-difference-hint": "Якщо увімкнено, вихідні ключі \"{{outputValueKey}}\" та \"{{periodValueKey}}\" будуть додані до вихідного повідомлення тільки якщо значення \"{{outputValueKey}}\" не нульове.", + "search-direction-from": "Від ініціатора до цільової сутності", + "search-direction-to": "Від цільової сутності до ініціатора", + "del-relation-direction-from": "Від ініціатора", + "del-relation-direction-to": "До ініціатора", + "target-entity": "Цільова сутність", + "function-configuration": "Налаштування функції", + "function-name": "Назва функції", + "function-name-required": "Назва функції є обов'язковою.", + "qualifier": "Кваліфікатор", + "qualifier-hint": "Якщо кваліфікатор не вказано, буде використано кваліфікатор за замовчуванням \"$LATEST\".", + "aws-credentials": "Облікові дані AWS", + "connection-timeout": "Тайм-аут підключення", + "connection-timeout-required": "Тайм-аут підключення є обов'язковим.", + "connection-timeout-min": "Мінімальний тайм-аут підключення — 0.", + "connection-timeout-hint": "Час очікування в секундах під час початкового встановлення з'єднання перед відмовою та завершенням за тайм-аутом. Значення 0 означає нескінченність і не рекомендується.", + "request-timeout": "Тайм-аут запиту", + "request-timeout-required": "Тайм-аут запиту є обов'язковим", + "request-timeout-min": "Мінімальний тайм-аут запиту — 0", + "request-timeout-hint": "Час очікування в секундах на завершення запиту перед відмовою та завершенням за тайм-аутом. Значення 0 означає нескінченність і не рекомендується.", + "units": "Одиниці", + "tell-failure-aws-lambda": "Повідомляти про збій, якщо виконання функції AWS Lambda викликає виняток", + "tell-failure-aws-lambda-hint": "Вузол правила примусово позначає обробку повідомлення як невдалу, якщо виконання функції AWS Lambda викликає виняток.", + "basic-mode": "Базовий", + "advanced-mode": "Розширений", + "save-time-series": { + "processing-settings": "Налаштування обробки", + "processing-settings-hint": "Визначте, як обробляються вхідні повідомлення. Базові налаштування обробки дозволяють вибрати попередньо налаштовані стратегії, тоді як розширені налаштування дозволяють вибрати окремі стратегії обробки для кожної дії.", + "advanced-settings-hint": "Будьте обережні під час налаштування стратегій обробки. Певні комбінації можуть призвести до неочікуваної поведінки.", + "strategy": "Стратегія", + "deduplication-interval": "Інтервал дедуплікації", + "deduplication-interval-required": "Інтервал дедуплікації є обов'язковим", + "deduplication-interval-min-max-range": "Інтервал дедуплікації має бути щонайменше 1 секунда і щонайбільше 1 день", + "strategy-type": { + "every-message": "На кожне повідомлення", "skip": "Пропустити", - "send": "Надіслати", - "reset": "Скидання", - "show-more": "Показати більше", - "dont-show-again": "Більше не показувати", - "see-documentation": "Див. документацію", - "clear": "Очистити", - "upload": "Надіслати", - "delete-anyway": "Все одно видалити", - "delete-selected": "Видалити вибране" - }, - "aggregation": { - "aggregation": "Агрегація", - "function": "Функція агрегації даних", - "limit": "Максимальні значення", - "group-interval": "Інтервал групування", - "min": "Мінімальний", - "max": "Максимальний", - "avg": "Середній", - "sum": "Сума", - "count": "Рахувати", - "none": "Відсутня" - }, - "admin": { - "settings": "Налаштування", - "general": "Загальне", - "general-settings": "Загальні налаштування", - "outgoing-mail": "Поштовий сервер", - "outgoing-mail-settings": "Налаштування сервера вихідної пошти", - "system-settings": "Налаштування системи", - "test-mail-sent": "Тестовий лист успішно відправлено!", - "base-url": "Базова URL-адреса", - "base-url-required": "Необхідно вказати базову URL-адресу.", - "mail-from": "Електронна адреса", - "mail-from-required": "Необхідно вказати електронну адресу.", - "smtp-protocol": "Протокол SMTP", - "smtp-host": "Хост SMTP", - "smtp-host-required": "Необхідно вказати хост SMTP.", - "smtp-port": "SMTP-порт", - "smtp-port-required": "Необхідно вказати SMTP-порт.", - "smtp-port-invalid": "Це не схоже на дійсний SMTP-порт.", - "timeout-msec": "Час очікування (msec)", - "timeout-required": "Необхідно вказати час очікування.", - "timeout-invalid": "Це не схоже на правильний час очікування.", - "enable-tls": "Увімкнути TLS", - "tls-version" : "Версія TLS", - "send-test-mail": "Надіслати тестове повідомлення", - "use-system-mail-settings": "Використовувати параметри системного поштового сервера", - "mail-templates": "Шаблони електронної пошти", - "mail-template-settings": "Налаштування шаблонів електронної пошти", - "use-system-mail-template-settings": "Використовувати шаблони системної електронної пошти", - "mail-template": { - "mail-template": "Шаблон електронної пошти", - "test": "Тестове повідомлення", - "activation": "Повідомлення про активацію рахунку", - "account-activated": "Обліковий запис активовано", - "reset-password": "Відновити повідомлення пароля", - "password-was-reset": "Пароль було надіслано повідомленням" - }, - "mail-subject": "Тема повідомлення", - "mail-body": "Вміст повідомлення", - "security-settings": "Налаштування безпеки", - "password-policy": "Політика щодо паролів", - "minimum-password-length": "Мінімальна довжина пароля", - "minimum-password-length-required": "Потрібна мінімальна довжина пароля", - "minimum-password-length-range": "Мінімальна довжина пароля повинна бути в межах від 5 до 50", - "minimum-uppercase-letters": "Мінімальна кількість великих літер", - "minimum-uppercase-letters-range": "Мінімальна кількість великих літер не може бути негативною", - "minimum-lowercase-letters": "Мінімальна кількість малих літер", - "minimum-lowercase-letters-range": "Мінімальна кількість малих літер не може бути негативною", - "minimum-digits": "Мінімальна кількість цифр", - "minimum-digits-range": "Мінімальна кількість цифр не може бути негативною", - "minimum-special-characters": "Мінімальна кількість спеціальних символів", - "minimum-special-characters-range": "Мінімальна кількість спеціальних символів не може бути негативною", - "password-expiration-period-days": "Термін дії пароля в днях", - "password-expiration-period-days-range": "Термін дії пароля в днях не може бути негативним", - "password-reuse-frequency-days": "Частота повторного використання пароля в днях", - "password-reuse-frequency-days-range": "Частота повторного використання пароля в днях не може бути негативною", - "general-policy": "Загальна політика", - "max-failed-login-attempts": "Максимальна кількість невдалих спроб входу, перш ніж обліковий запис заблоковано", - "minimum-max-failed-login-attempts-range": "Максимальна кількість невдалих спроб входу не може бути негативною", - "user-lockout-notification-email": "У разі блокування облікового запису користувача, надішліть сповіщення на електронну пошту", - "smpp-provider": { - "smpp-version": "SMPP версія", - "smpp-host": "SMPP хост", - "smpp-host-required": "Необхідно вказати хост SMPP.", - "smpp-port": "SMPP порт", - "smpp-port-required": "Необхідно вказати порт SMPP.", - "system-id": "Id системи", - "system-id-required": "Необхідно вказати ID системи.", - "password": "Пароль", - "password-required": "Необхідно вказати пароль.", - "type-settings": "Налаштування типів", - "source-settings": "Налаштування джерела", - "destination-settings": "Налаштування призначення", - "additional-settings": "Додаткові налаштування", - "system-type": "Тип системи", - "bind-type": "Тип зв'язування", - "service-type": "Тип обслуговування", - "source-address": "Адреса джерела", - "source-ton": "Тип номера джерела", - "source-npi": "Ідентифікація плану нумерації джерела", - "destination-ton": "Тип номера призначення", - "destination-npi": "Ідентифікація плану нумерації призначення", - "address-range": "Діапазон адрес", - "coding-scheme": "Схема кодування" - }, - "resources": "Ресурси" - }, - "alarm": { - "alarm": "Сигнал тривоги", - "alarms": "Сигнали тривоги", - "select-alarm": "Вибрати сигнал тривоги", - "no-alarms-matching": "Сигналів тривоги '{{entity}}' не знайдено.", - "alarm-required": "Необхідно вказати сигнал тривоги", - "alarm-status": "Статус сигналу тривоги", - "search-status": { - "ANY": "Будь які", - "ACTIVE": "Активні", - "CLEARED": "Неактивні", - "ACK": "Прийняті", - "UNACK": "Неприйняті" - }, - "display-status": { - "ACTIVE_UNACK": "Активні та неприйняті", - "ACTIVE_ACK": "Активні та прийняті", - "CLEARED_UNACK": "Неактивні та неприйняті", - "CLEARED_ACK": "Неактивні та прийняті" - }, - "no-alarms-prompt": "Сигналів тривоги не знайдено", - "created-time": "Час створення", - "type": "Тип", - "severity": "Серйозність", - "originator": "Ініціатор", - "originator-type": "Тип ініціатору", - "details": "Деталі", - "status": "Статус", - "alarm-details": "Деталі сигналу тривоги", - "start-time": "Початок", - "end-time": "Кінець", - "ack-time": "Час прийняття", - "clear-time": "Час деактивації", - "severity-critical": "Критичні", - "severity-major": "Важливі", - "severity-minor": "Неважливі", - "severity-warning": "Попередження", - "severity-indeterminate": "Невизначені", - "acknowledge": "Прийняти", - "clear": "Деактивувати", - "search": "Шукати сигнали тривоги", - "selected-alarms": "{ count, plural, =1 {1 сигнал тривоги} other {# сигнали тривоги} } вибрані", - "no-data": "Немає даних для відображення", - "polling-interval": "Інтервал опитування (сек)", - "polling-interval-required": "Необхідно вказати інтервал опитування.", - "min-polling-interval-message": "Дозволяється щонайменше 1 секунда інтервалу очікування.", - "aknowledge-alarms-title": "Підтвердити { count, plural, =1 {1 сигнал тривоги} other {# сигнали тривоги} }", - "aknowledge-alarms-text": "Ви впевнені, що хочете підтвердити { count, plural, =1 {1 сигнал тривоги} other {# сигнали тривоги} }?", - "aknowledge-alarm-title": "Підтвердити сигнал тривоги", - "aknowledge-alarm-text": "Ви впевнені, що хочете підтвердити сигнал тривоги?", - "clear-alarms-title": "Деактивувати { count, plural, =1 {1 сигнал тривоги} other {# сигнали тривоги} }", - "clear-alarms-text": "Ви впевнені, що хочете деактивувати { count, plural, =1 {1 сигнал тривоги} other {# сигнали тривоги} }?", - "clear-alarm-title": "Деактивувати сигнал тривоги", - "clear-alarm-text": "Ви впевнені, що хочете деактивувати сигнал тривоги?", - "alarm-status-filter": "Фільтр статусу сигналу тривоги", - "max-count-load": "Максимальна кількість сигналів тривоги для завантаження (0 - необмежено)", - "max-count-load-required": "Необхідно вказати максимальну кількість сигналів тривоги для завантаження.", - "max-count-load-error-min": "Мінімальне значення 0.", - "fetch-size": "Розмір пакету для завантаження", - "fetch-size-required": "Необхідно вказати розмір пакету для завантаження.", - "fetch-size-error-min": "Мінімальне значення 10." - }, - "alias": { - "add": "Додати псевдонім ", - "edit": "Редагувати псевдонім", - "name": "Назва", - "name-required": "Необхідно вказати псевдонім", - "duplicate-alias": "Псевдонім з такою назвою вже існує.", - "filter-type-single-entity": "Єдина сутність", - "filter-type-entity-group": "Група сутностей", - "filter-type-entity-list": "Список сутностей", - "filter-type-entity-name": "Назва сутності", - "filter-type-entity-group-list": "Список груп сутностей", - "filter-type-entity-group-name": "Назва групи сутностей", - "filter-type-state-entity": "Сутність з стану панелі пристроїв", - "filter-type-state-entity-description": "Сутність, взята з параметрів стану панелі пристроїв", - "filter-type-asset-type": "Тип активу", - "filter-type-asset-type-description": "Тип активів '{{assetTypes}}'", - "filter-type-asset-type-and-name-description": "Активи з типом '{{assetTypes}}' та назвою, що починається з '{{prefix}}'", - "filter-type-device-type": "Тип пристрою", - "filter-type-device-type-description": "Тип пристроїв '{{deviceTypes}}'", - "filter-type-device-type-and-name-description": "Пристрої з типом '{{deviceTypes}}' з назвою, що починається з '{{prefix}}'", - "filter-type-entity-view-type": "Тип перегляду сутності", - "filter-type-entity-view-type-description": "Перегляд сутності з типом '{{entityViewTypes}}'", - "filter-type-entity-view-type-and-name-description": "Перегляд сутності з типом '{{entityViewTypes}}' та назвою, що починається з '{{prefix}}'", - "filter-type-relations-query": "Запит відносин", - "filter-type-relations-query-description": "{{entities}}, які мають {{relationType}} відношення {{direction}} {{rootEntity}}", - "filter-type-asset-search-query": "Запит пошуку активу", - "filter-type-asset-search-query-description": "Активи з типами {{assetTypes}}, які мають {{relationType}} відношення {{direction}} {{rootEntity}}", - "filter-type-device-search-query": "Запит пошуку пристрою", - "filter-type-device-search-query-description": "Пристрої з типами {{deviceTypes}}, які мають {{relationType}} відношення {{direction}} {{rootEntity}}", - "filter-type-entity-view-search-query": "Запит пошуку переглядів сутностей", - "filter-type-entity-view-search-query-description": "Перегляд сутності з типами {{entityViewTypes}}, які мають {{relationType}} відношення {{direction}} {{rootEntity}}", - "entity-filter": "Фільтр сутності", - "resolve-multiple": "Як декілька сутностей", - "filter-type": "Тип фільтра", - "filter-type-required": "Необхідно вказати тип фільтра.", - "entity-filter-no-entity-matched": "Не знайдено жодних сутностей, які відповідають вказаному фільтру.", - "no-entity-filter-specified": "Фільтр сутностей не вказано", - "root-state-entity": "Використовувати сутність стану як кореневу", - "last-level-relation": "Використовувати лише відношення останнього рівня", - "group-state-entity": "Використовувати групу сутностей стану як кореневу", - "root-entity": "Коренева сутність", - "state-entity-parameter-name": "Параметр сутності стану", - "default-state-entity": "Сутність стану за замовчуванням", - "default-state-entity-group": "Група сутностей стану за замовчуванням", - "default-entity-parameter-name": "За замовчуванням", - "max-relation-level": "Максимальна глибина відносин", - "unlimited-level": "Необмежена глибина", - "state-entity": "Сутність стану панелі пристроїв", - "entities-of-group-state-entity": "Сутності із групи сутностей стану", - "all-entities": "Всі сутності", - "any-relation": "не вказано" - }, - "asset": { - "asset": "Актив", - "assets": "Активи", - "management": "Управління активами", - "view-assets": "Переглянути активи", - "add": "Додати активи", - "assign-to-customer": "Надати клієнту", - "assign-asset-to-customer": "Надати активи клієнту", - "assign-asset-to-customer-text": "Будь ласка, виберіть ресурси, призначені для клієнта", - "no-assets-text": "Не знайдено активів", - "assign-to-customer-text": "Будь ласка, виберіть клієнта, щоб надати активи", - "public": "Публічно", - "assignedToCustomer": "Наданий клієнту", - "make-public": "Зробити актив(-и) публічним(-и)", - "make-private": "Зробити актив(-и) приватним(-и)", - "unassign-from-customer": "Позбавити клієнта", - "delete": "Видалити актив", - "asset-public": "Актив є загальнодоступним", - "asset-type": "Тип активу", - "asset-type-required": "Необхідно вказати тип активу.", - "select-asset-type": "Виберіть тип активу", - "enter-asset-type": "Введіть тип активу", - "any-asset": "Будь-який актив", - "no-asset-types-matching": "Не знайдено жодних активів, що відповідають даному типу '{{entitySubtype}}'.", - "asset-type-list-empty": "Не вибрано жодного типу активів.", - "asset-types": "Типи активів", - "name": "Назва", - "name-required": "Необхідно вказати назву.", - "description": "Опис", - "type": "Тип", - "type-required": "Необхідно вказати тип.", - "details": "Подробиці", - "events": "Події", - "add-asset-text": "Додати новий актив", - "asset-details": "Інформація про актив", - "assign-assets": "Надати активи", - "assign-assets-text": "Надати { count, plural, =1 {1 актив} other {# активи} } клієнту", - "delete-assets": "Видалити активи", - "unassign-assets": "Позбавити активів", - "unassign-assets-action-title": "Позбавити { count, plural, =1 {1 актив} other {# активи} } клієнта", - "assign-new-asset": "Надати новий актив", - "delete-asset-title": "Ви впевнені, що хочете видалити актив '{{assetName}}'?", - "delete-asset-text": "Будьте обережні, після підтвердження, актив і всі пов'язані з ним дані буде втрачено", - "delete-assets-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 актив} other {# активи} }?", - "delete-assets-action-title": "Видалити{ count, plural, =1 {1 актив} other {# активи} }", - "delete-assets-text": "Будьте обережні, після підтвердження всі вибрані об'єкти буде видалено, і всі пов'язані з ними дані буде втрачено.", - "make-public-asset-title": "Ви дійсно хочете, щоб актив '{{assetName}}' був загальнодоступним?", - "make-public-asset-text": "Після підтвердження, актив і всі його дані будуть доступними для інших.", - "make-private-asset-title": "Ви впевнені, що хочете зробити актив {{assetName}} приватним?", - "make-private-asset-text": "Після підтвердження, актив та всі його дані будуть приватними та не будуть доступні іншим.", - "unassign-asset-title": "Ви впевнені, що хочете позбавити активу '{{assetName}}'?", - "unassign-asset-text": "Після підтвердження клієнт буде позбавлений активу. Дані активу не будуть доступні клієнту.", - "unassign-asset": "Позбавити активу", - "unassign-assets-title": "Ви впевнені, що хочете позбавити активів { count, plural, =1 {1 актив} other {# активи} }?", - "unassign-assets-text": "Після підтвердження, клієнт буде позбавлений усіх вибраних активів. Дані активів не будуть доступні клієнту.", - "copyId": "Копіювати Id активу", - "idCopiedMessage": "Id активу був скопійований у буфер обміну", - "select-asset": "Виберіть актив", - "no-assets-matching": "Не знайдено жодних активів, що відповідають '{{entity}}'.", - "asset-required": "Необхідно вказати актив", - "name-starts-with": "Назва активу починається з", - "selected-assets": "{ count, plural, =1 {1 актив} other {# активи} } selected", - "search": "Пошук активів", - "select-group-to-add": "Виберіть цільову групу, щоб додати вибрані активи", - "select-group-to-move": "Виберіть цільову групу для переміщення вибраних активів", - "remove-assets-from-group": "Ви впевнені, що хочете видалити { count, plural, =1 {1 актив} other {# актив} } з групи '{entityGroup}'?", - "group": "Група активів", - "list-of-groups": "{ count, plural, =1 {Одна група активів} other {Список # груп активів} }", - "group-name-starts-with": "Групи активів, назви яких починаються з '{{prefix}}'", - "import": "Імпортувати активи", - "asset-file": "Файл з активами", - "label": "Мітка" - }, - "attribute": { - "attributes": "Атрибути", - "latest-telemetry": "Остання телеметрія", - "attributes-scope": "Область видимості атрибутів", - "scope-telemetry": "Телеметрія", - "scope-latest-telemetry": "Остання телеметрія", - "scope-client": "Клієнтські атрибути", - "scope-server": "Серверні атрибути", - "scope-shared": "Спільні атрибути", - "add": "Додати атрибут", - "add-attribute-prompt": "Будь ласка, додайте атрибут", - "key": "Ключ", - "last-update-time": "Останнє оновлення", - "key-required": "Необхідно вказати ключ атрибута.", - "value": "Значення", - "value-required": "Необхідно вказати значення атрибута.", - "delete-attributes-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 attribute} other {# attributes} }?", - "delete-attributes-text": "Будьте обережні, після підтвердження, всі виділені атрибути будуть видалені.", - "delete-attributes": "Видалити атрибути", - "enter-attribute-value": "Введіть значення атрибута", - "show-on-widget": "Показати на віджеті", - "widget-mode": "Режим віджетів", - "next-widget": "Наступний віджет", - "prev-widget": "Попередній віджет", - "add-to-dashboard": "Додати до інформаційної панелі", - "add-widget-to-dashboard": "Додати віджет до інформаційної панелі", - "selected-attributes": "{ count, plural, =1 {1 attribute} other {# attributes} } selected ...вибрані вибрати", - "selected-telemetry": "{ count, plural, =1 {1 telemetry unit} other {# telemetry units} } selected" - }, - "api-usage": { - "api-usage": "Використання API" - }, - "audit-log": { - "audit": "Операція", - "audit-logs": "Журнал операцій", - "timestamp": "Тимчасова позначка", - "entity-type": "Тип одиниці", - "entity-name": "Назва організації", - "user": "Користувач", - "type": "Тип", - "status": "Статус", - "details": "Подробиці", - "type-added": "Додано", - "type-deleted": "Вилучено", - "type-updated": "Оновлено", - "type-attributes-updated": "Атрибути оновлені", - "type-attributes-deleted": "Атрибути видалені", - "type-rpc-call": "RPC дзвінок", - "type-credentials-updated": "Авторизаційні дані оновлено", - "type-assigned-to-customer": "Призначено клієнту", - "type-unassigned-from-customer": "Позбавлено від клієнта", - "type-activated": "Активовано", - "type-suspended": "Призупинено", - "type-credentials-read": "Авторизаційні дані прочитані", - "type-attributes-read": "Атрибути читаються", - "type-added-to-entity-group": "Додано до групи", - "type-removed-from-entity-group": "Вилучено з групи", - "type-relation-add-or-update": "Відношення оновлено", - "type-relation-delete": "Відношення видалено", - "type-relations-delete": "Всі відношення видалено", - "type-alarm-ack": "Визнано", - "type-alarm-clear": "Очищено", - "type-login": "Вхід", - "type-logout": "Вихід", - "type-lockout": "Заблокований", - "type-rest-api-rule-engine-call": "Rule engine REST API call", - "status-success": "Успішно", - "status-failure": "Невдало", - "audit-log-details": "Подробиці журналу операцій", - "no-audit-logs-prompt": "Жодних журналів операцій не знайдено", - "action-data": "Дані про дії", - "failure-details": "Невдалі подробиці", - "search": "Пошук журналів перевірки", - "clear-search": "Очистити пошук" - }, - "confirm-on-exit": { - "message": "У вас є незбережені зміни. Ви впевнені, що хочете залишити цю сторінку?", - "html-message": "У вас є незбережені зміни.
Ви впевнені, що хочете залишити цю сторінку?", - "title": "Незбережені зміни" - }, - "contact": { - "country": "Країна", - "city": "Місто", - "state": "Штат / Провінція", - "postal-code": "Поштовий індекс", - "postal-code-invalid": "Неправильний формат поштового індексу.", - "address": "Адреса", - "address2": "Адреса 2", - "phone": "Телефон", - "email": "Електронна пошта", - "no-address": "Немає адреси" - }, - "common": { - "username": "Ім'я користувача", - "password": "Пароль", - "enter-username": "Введіть ім'я користувача", - "enter-password": "Введіть пароль", - "enter-search": "Введіть пошук", - "created-time": "Час створення" - }, - "converter": { - "converter": "Перетворювач даних", - "converters": "Перетворювачі даних", - "select-converter": "Виберіть перетворювач даних", - "no-converters-matching": "Не має перетворювачів даних, які відповідають '{{entity}}'.", - "converter-required": "Необхідно вказати перетворювач даних", - "delete": "Видалити перетворювач даних", - "management": "Управління перетворювачами даних", - "add-converter-text": "Додати новий перетворювач даних", - "no-converters-text": "Перетворювачів даних не знайдено", - "selected-converters": "{ count, plural, =1 {1 перетворювач даних} other {# перетворювачі даних} } вибраний", - "delete-converter-title": "Ви впевнені, що хочете видалити перетворювач даних '{{converterName}}'?", - "delete-converter-text": "Будьте обережні, після підтвердження, перетворювач даних та всі пов'язані з ним дані,стануть недоступними).", - "delete-converters-title": "Ви впевнені, що хочете видалити{ count, plural, =1 {1 перетворювач даних} other {# перетворювачі даних} }?", - "delete-converters-action-title": "Видалити { count, plural, =1 {1 перетворювач даних} other {# перетворювачі даних} }", - "delete-converters-text": "Будьте обережні, після підтвердження всі вибрані перетворювачі даних буде видалено, і всі пов'язані з ними дані буде втрачено.", - "events": "Події", - "add": "Додати перетворювач даних", - "converter-details": "Подробиці про перетворювач даних", - "details": "Подробиці", - "copyId": "Копіювати Id перетворювача даних", - "idCopiedMessage": "Id перетворювача даних було скопійовано у буфер обміну", - "debug-mode": "Режим налагодження", - "name": "Ім'я", - "name-required": "Необхідно вказати назву.", - "description": "Опис", - "decoder": "Декодер", - "encoder": "Кодер", - "test-decoder-fuction": "Тестування функції декодера", - "test-encoder-fuction": "Тестування функції кодера", - "decoder-input-params": "Вхідні параметри декодера", - "encoder-input-params": "Вхідні параметри кодера", - "payload": "Вхідне повідомлення", - "payload-content-type": "Тип контенту вхідного повідомлення", - "payload-content": "Зміст вхідного повідомлення", - "message": "Повідомлення", - "message-type": "Тип повідомлення", - "message-type-required": "Необхідно вказати тип повідомлення", - "test": "Тест", - "metadata": "Метадані", - "metadata-required": "Записи метаданих не можуть бути порожніми.", - "integration-metadata": "Метадані інтеграції", - "integration-metadata-required": "Параметри метаданих інтеграції не можуть бути порожніми.", - "output": "Вихідні дані", - "import": "Імпорт перетворювача даних", - "export": "Експорт перетворювача даних", - "export-failed-error": "Неможливо експортувати перетворювач даних: {{помилка}}", - "create-new-converter": "Створити новий перетворювач даних", - "converter-file": "Файл перетворювача даних", - "invalid-converter-file-error": "Неможливо імпортувати перетворювач даних: недійсна структура даних перетворювача.", - "type": "Тип", - "type-required": "Необхідно вказати тип.", - "type-uplink": "Від пристрою", - "type-downlink": "До пристрою" - }, - "content-type": { - "json": "Json", - "text": "Текст", - "binary": "Бінарний (Base64)" - }, - "customer": { - "customer": "Клієнт", - "customers": "Клієнти", - "management": "Клієнтський менеджмент", - "dashboard": "Інформаційна панель клієнта", - "dashboards": "Інформаційні панелі клієнта", - "devices": "Пристрої клієнта", - "entity-views": "Представлення сутностей", - "assets": "Клієнтські активи", - "public-dashboards": "Публічні інформаційні панелі", - "public-devices": "Публічні пристрої", - "public-assets": "Публічні активи", - "public-entity-views": "Публічне представлення сутностей 440", - "add": "Додати клієнта", - "delete": "Видалити клієнта", - "manage-customer-users": "Керування користувачами клієнта", - "manage-customer-devices": "Керування пристроями клієнта", - "manage-customer-dashboards": "Керування інформаційними панелями клієнта", - "manage-public-devices": "Керувати загальнодоступними пристроями", - "manage-public-dashboards": "Керування загальнодоступними інформаційними панелями", - "manage-customer-assets": "Керування активами клієнта", - "manage-public-assets": "Керування загальнодоступними активами", - "add-customer-text": "Додати нового клієнта", - "no-customers-text": "Клієнтів не знайдено", - "customer-details": "Інформація про клієнта", - "delete-customer-title": "Ви впевнені, що хочете видалити клієнта '{{customerTitle}}'?", - "delete-customer-text": "Будьте обережні, після підтвердження, клієнт та всі пов'язані з ним дані, стануть недоступними.", - "delete-customers-title": "Ви впевнені, що хочете видалити {count, plural, =1 {1 клієнт} other {# клієнти} }?", - "delete-customers-action-title": "Видалити{ count, plural, =1 {1 клієнт} other {# клієнти} }", - "delete-customers-text": "Будьте обережні, після підтвердження, всі вибрані клієнти будуть видалені і всі пов'язані з ними дані, стануть недоступними.", - "manage-users": "Керування користувачами", - "manage-assets": "Керування активами", - "manage-devices": "Керування пристроями", - "manage-dashboards": "Керування інформаційними панелями", - "title": "Назва", - "title-required": "Необхідно вказати назву.", - "description": "Опис", - "details": "Подробиці", - "events": "Події", - "copyId": "Копіювати Id клієнта", - "idCopiedMessage": "Id клієнта було скопійовано в буфер обміну", - "select-customer": "Виберіть клієнта", - "no-customers-matching": "Клієнтів, які відповідають '{{entity}}' не знайдено.", - "customer-required": "Необхідно вказати клієнта", - "selected-customers": "{ count, plural, =1 {1 клієнт} other {# клієнти} } вибрано", - "search": "Пошук клієнтів", - "select-group-to-add": "Виберіть цільову групу, щоб додати вибраних клієнтів", - "select-group-to-move": "Виберіть цільову групу для переміщення вибраних клієнтів", - "remove-customers-from-group": "Ви впевнені, що хочете видалити{ count, plural, =1 {1 клієнт} other {# клієнти} } з групи'{entityGroup}'?", - "group": "Група клієнтів", - "list-of-groups": "{ count, plural, =1 {Одна група клієнтів} other {Список # груп клієнтів} }", - "group-name-starts-with": "Групи клієнтів, імена яких починаються з '{{prefix}}'", - "select-default-customer": "Вибрати клієнта за замовчуванням", - "default-customer": "Клієнт за замовчуванням", - "default-customer-required": "Необхідно вказати клієнта за замовчуванням для налагодження панелі візуалізації на рівні замовника", - "allow-white-labeling": "Дозволити брендування" - }, - "custom-translation": { - "custom-translation": "Переклад для користувача", - "translation-map": "Карта перекладу", - "key": "Ключ перекладу", - "import": "Імпорт перекладу", - "export": "Експорт перекладу", - "export-data": "Дані про експорт перекладу", - "import-data": "Дані про імпорт перекладу", - "translation-file": "Файл перекладу", - "invalid-translation-file-error": "Неможливо імпортувати файл перекладу: недійсна структура даних перекладу.", - "custom-translation-hint": "Визначте індивідуальний переклад в JSON нижче. Цей JSON перезапише переклад за замовчуванням. Натисніть 'Завантажити файл перекладу', щоб отримати існуючий переклад. Ви також можете скористатись завантаженим файлом як посиланням на наявні пари параметрів перекладу ключ-значення.", - "download-locale-file": "Завантажити файл перекладу" - }, - "datetime": { - "date-from": "Дата від", - "time-from": "Час від", - "date-to": "Дата до", - "time-to": "Час до" - }, - "dashboard": { - "dashboard": "Панель приладів", - "dashboards": "Панелі приладів", - "management": "Управління панеллю приладів", - "view-dashboards": "Переглянути панелі приладів", - "add": "Додати панель приладів", - "assign-dashboard-to-customer": "Призначити панель(і) приладів замовнику", - "assign-dashboard-to-customer-text": "Будь ласка, виберіть панелі пристроїв, щоб призначити їх клієнту", - "assign-to-customer-text": "Виберіть клієнта, щоб призначити панелі пристроїв", - "assign-to-customer": "Призначити клієнту", - "unassign-from-customer": "Позбавити клієнта", - "make-public": "Зробити панель приладів публічною", - "make-private": "Зробити панель приладів приватною", - "manage-assigned-customers": "Керування призначеними клієнтами", - "assigned-customers": "Призначені клієнтам", - "assign-to-customers": "Призначити панелі приладів клієнтам", - "assign-to-customers-text": "Виберіть клієнтів для призначення панелей приладів", - "unassign-from-customers": "Позбавити клієнтів призначених панелей приладів", - "unassign-from-customers-text": "Виберіть клієнтів для позбавлення їх призначених панелей приладів", - "no-dashboards-text": "Панелі приладів не знайдені", - "no-widgets": "Не налаштовано жодних віджетів", - "add-widget": "Додати новий віджет", - "title": "Назва", - "select-widget-title": "Вибрати віджет", - "copyId": "Копіювати ідентифікатор панелі приладів", - "idCopiedMessage": "Ідентифікатор панелі приладів скопійовано в буфер обміну", - "select-widget-subtitle": "Список доступних типів віджетів", - "delete": "Видалити панель приладів", - "title-required": "Необхідно вказати назву.", - "description": "Опис", - "details": "подробиці", - "dashboard-details": "Подробиці панелі приладів", - "add-dashboard-text": "Додати нову панель приладів", - "assign-dashboards": "Призначити панель приладів", - "assign-new-dashboard": "Призначити нову панель приладів", - "assign-dashboards-text": "Призначити { count, plural, =1 {1 панель приладів} other {# панелі приладів} } користувачам", - "unassign-dashboards-action-text": "Позбавити { count, plural, =1 {1 палелі приладів} other {# панелей приладів} } клієнтів", - "delete-dashboards": "Видалити панель приладів", - "unassign-dashboards": "Позбавити панелей приладів", - "unassign-dashboards-action-title": "Позбавити { count, plural, =1 {1 палелі приладів} other {# панелей приладів} } клієнтів", - "delete-dashboard-title": "Ви впевнені, що хочете видалити панель приладів '{{назва панелі приладів}}'?", - "delete-dashboard-text": "Будьте обережні, після підтвердження, панель приладів і всі пов'язані з нею дані стануть недоступними.", - "delete-dashboards-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 панель приладів} other {# панелі приладів} }?", - "delete-dashboards-action-title": "Видалити { count, plural, =1 {1 панель приладів} other {# панелі приладів} }", - "delete-dashboards-text": "Будьте обережні, після підтвердження, всі вибрані панелі приладів буде видалено, і всі пов'язані з ними дані стануть недоступними.", - "unassign-dashboard-title": "Ви впевнені, що хочете позбавити панелі приладів '{{назва інформаційної панелі}}'?", - "unassign-dashboard-text": "Після підтвердження, клієнт буде позбавлений панелі приладів. Панель приладів і пов'язані з нею дані будуть недоступні клієнтові.", - "unassign-dashboard": "Позбавити панелі приладів", - "unassign-dashboards-title": "Ви впевнені, що хочете позбавити { count, plural, =1 {1 панелі приладів} other {# панелей приладів} }?", - "unassign-dashboards-text": "Після підтвердження, клієнт буде позбавлений усіх вибраних панелей приладів і даних, які з ними пов'язані.", - "public-dashboard-title": "Панель приладів тепер публічна", - "public-dashboard-text": "Ваша панель приладів {{dashboardTitle}} тепер публічна і доступна іншим link:", - "public-dashboard-notice": "Note: Не забудьте зробити спільні пристрої загальнодоступними, щоб отримати доступ до їхніх даних.", - "make-private-dashboard-title": "Ви впевнені, що хочете зробити панель приладів '{{назва панелі приладів}}' приватною?", - "make-private-dashboard-text": "Після підтвердження панель приладів стане приватною і не буде доступною іншим.", - "make-private-dashboard": "Зробити панель приладів приватною", - "socialshare-text": "'{{dashboardTitle}}' powered by ThingsBoard", - "socialshare-title": "'{{dashboardTitle}}' powered by ThingsBoard", - "select-dashboard": "Вибрати панель приладів", - "no-dashboards-matching": "Не знайдено жодних панелей приладів '{{entity}}' які відповідають.", - "dashboard-required": "Необхідно вказати панель приладів.", - "select-existing": "Виберіть існуючу панель приладів", - "create-new": "Створити нову панель приладів", - "new-dashboard-title": "Нова назва панелі приладів", - "open-dashboard": "Відрити панель приладів", - "set-background": "Встановити фон", - "background-color": "Колір фону", - "background-image": "Фонове зображення", - "background-size-mode": "Режим фонового розміру", - "no-image": "Не вибрано жодного зображення", - "drop-image": "Перетягніть зображення або клацніть, щоб вибрати файл для завантаження.", - "settings": "Налаштування", - "columns-count": "Кількість стовпців", - "columns-count-required": "Необхідно вказати кількість стовпців.", - "min-columns-count-message": "Дозволений мінімум - 10 стовпців.", - "max-columns-count-message": "Дозволений максимум - 1000 стовпців.", - "widgets-margins": "Відступ між віджетами", - "horizontal-margin": "Горизонтальний відступ", - "horizontal-margin-required": "Необхідно вказати горизонтальний відступ.", - "min-horizontal-margin-message": "Допустиме мінімальне значення горизонтального відступу - 0.", - "max-horizontal-margin-message": "Допустиме максимальне значення горизонтального відступу - 50.", - "vertical-margin": "Вертикальний відступ", - "vertical-margin-required": "Необхідно вказати вертикальний відступ.", - "min-vertical-margin-message": "Допустиме мінімальне значення вертикального відступу - 0.", - "max-vertical-margin-message": "Допустиме максимальне значення вертикального відступу - 50.", - "autofill-height": "Висота автоматичного заповнення макета", - "mobile-layout": "Налаштування макета для мобільних пристроїв", - "mobile-row-height": "Висота рядка для мобільних пристроїв, px", - "mobile-row-height-required": "Потрібно вказати значення висоти рядка для мобільних пристроїв.", - "min-mobile-row-height-message": "Допустиме мінімальне значення висоти рядка для мобільних пристроїв - 5 пікселів.", - "max-mobile-row-height-message": "Допустиме максимальне значення висоти рядка для мобільних пристроїв - 200 пікселів.", - "display-title": "Відображати назву панелі візуалізації", - "toolbar-always-open": "Тримайте панель візуалізації відкритою", - "title-color": "Колір назви", - "display-dashboards-selection": "Відображення вибору панелей візуалізації", - "display-entities-selection": "Вибір відображення сутності", - "display-dashboard-timewindow": "Відобразити налаштування часового проміжку", - "display-dashboard-export": "Відображення експорту", - "import": "Імпортувати панель візуалізації", - "export": "Експортувати панель візуалізації", - "export-failed-error": "Неможливо експортувати панель візуалізації: {{error}}", - "export-pdf": "Експортувати як PDF", - "export-png": "Експортувати як PNG", - "export-jpg": "Експортувати як JPEG", - "export-json-config": "Експортувати конфігурацію JSON", - "download-dashboard-progress": "Генерування панелі візуалізації {{reportType}} ...", - "create-new-dashboard": "Створити нову панель візуалізації", - "dashboard-file": "Файл панелі візуалізації", - "invalid-dashboard-file-error": "Неможливо імпортувати панель візуалізації: неправильна структура даних панелі візуалізації.", - "dashboard-import-missing-aliases-title": "Configure aliases used by imported dashboard Налаштування псевдонімів, що використовуються імпортованою панеллю візуалізації", - "create-new-widget": "Створити новий віджет", - "import-widget": "Імпортувати віджет", - "widget-file": "Файл віджета", - "invalid-widget-file-error": "Неможливо імпортувати віджет: неправильна структура даних віджета.", - "widget-import-missing-aliases-title": "Налаштувати псевдоніми, що використовуються імпортованим віджетом", - "open-toolbar": "Відкрити панель інструментів", - "close-toolbar": "Закрити панель інструментів", - "configuration-error": "Помилка конфігурації", - "alias-resolution-error-title": "Помилка конфігурації псевдонімів панелі візуалізації", - "invalid-aliases-config": "Неможливо знайти пристрої, які відповідають певному фільтру псевдонімів.
Зверніться до свого адміністратора, щоб вирішити цю проблему.", - "select-devices": "Вибрати пристрої", - "assignedToCustomer": "Призначений клієнту", - "assignedToCustomers": "Призначений клієнтам", - "public": "Публічно", - "public-link": "Публічне посилання", - "copy-public-link": "Копіювати публічне посилання", - "public-link-copied-message": "Публічне посилання було скопійоване в буфер обміну панелі візуалізації", - "manage-states": "Керування станами панелі візуалізації", - "states": "Стани панелі візуалізації", - "search-states": "Пошук станів панелі візуалізації", - "selected-states": "{ count, plural, =1 {1 dashboard state} other {# dashboard states} } вибрано", - "edit-state": "Редагувати стан панелі візуалізації", - "delete-state": "Видалити стан панелі візуалізації ", - "add-state": "Додати стан панелі візуалізації", - "state": "Стан панелі візуалізації", - "state-name": "Ім'я", - "state-name-required": "Необхідно вказати назву стану панелі візуалізації.", - "state-id": "Стан Id", - "state-id-required": "Необхідно вказати id стану панелі візуалізації.", - "state-id-exists": "Стан інформаційної панелі з таким id вже існує.", - "is-root-state": "Основний стан", - "delete-state-title": "Видалити стан панелі візуалізації", - "delete-state-text": "Ви впевнені, що хочете видалити стан панелі візуалізації з іменем '{{stateName}}'?", - "show-details": "Показати деталі", - "hide-details": "Приховати деталі", - "select-state": "Виберіть цільовий стан", - "state-controller": "Контролер стану" - }, - "datakey": { - "settings": "Налаштування", - "advanced": "Додатково", - "label": "Мітка", - "color": "Колір", - "units": "Спеціальний символ, який показує наступне значення", - "decimals": "Кількість цифр після плаваючої точки", - "data-generation-func": "Функція генерації даних", - "use-data-post-processing-func": "Використовувати функцію пост-обробки даних", - "configuration": "Конфігурація ключа даних", - "timeseries": "Телеметрія", - "attributes": "Атрибути", - "entity-field": "Поле сутності", - "alarm": "Поля сигналу тривоги", - "timeseries-required": "Необхідно вказати Телеметрія.", - "timeseries-or-attributes-required": "Необхідно вказати телеметрію/атрибути.", - "maximum-timeseries-or-attributes": "Максимальні { count, plural, =1 {1 телеметрія/атрибут дозволені.} other {# телеметрія/атрибути дозволені} }", - "alarm-fields-required": "Необхідно вказати поля сигналу тривоги.", - "function-types": "Типи функцій", - "function-types-required": "Необхідно вказати типи функцій.", - "maximum-function-types": "Maximum { count, plural, =1 {1 function type is allowed.} other {# function types are allowed} }", - "time-description": "мітка часу поточного значення;", - "value-description": "поточне значення;", - "prev-value-description": "результат попереднього виклику функції;", - "time-prev-description": "мітка часу попереднього значення;", - "prev-orig-value-description": "оригінальне попереднє значення;" - }, - "datasource": { - "type": "Тип джерела даних", - "name": "Назва", - "add-datasource-prompt": "Додайте джерело даних" - }, - "details": { - "details": "Деталі", - "edit-mode": "Режим редагування", - "edit-json": "Редагувати JSON", - "toggle-edit-mode": "Перемкнути режим редагування" - }, - "device": { - "device": "Пристрій", - "device-required": "Необхідно вказати пристрій.", - "devices": "Пристрої", - "management": "Управління пристроєм", - "view-devices": "Перегляд пристроїв", - "device-alias": "Псевдонім пристрою", - "aliases": "Псевдонім пристроїв", - "no-alias-matching": "'{{alias}}' не знайдено.", - "no-aliases-found": "Псевдонімів не знайдено.", - "no-key-matching": "'{{key}}' не знайдено.", - "no-keys-found": "Ключі не знайдено.", - "create-new-alias": "Створити новий!", - "create-new-key": "Створити новий!", - "duplicate-alias-error": "Псевдонім '{{alias}}' вже існує.
Псевдоніми пристроїв повинні бути унікальними на панелі візуалізації.", - "configure-alias": "Налаштувати псевдонім '{{alias}}'", - "no-devices-matching": "Не знайдено жодних пристроїв, які відповідають '{{entity}}'.", - "alias": "Псевдонім", - "alias-required": "Необхідно вказати псевдонім пристрою.", - "remove-alias": "Видалити псевдонім пристрою", - "add-alias": "Додати псевдонім пристрою", - "name-starts-with": "Назва пристрою починається з", - "device-list": "Список пристроїв", - "use-device-name-filter": "Використати фільтр", - "device-list-empty": "Не вибрано жодного пристрою.", - "device-name-filter-required": "Необхідно вказати назву фільтра пристрою.", - "device-name-filter-no-device-matched": "Не знайдено жодних пристроїв, що починаються з '{{device}}'.", - "add": "Додати пристрій", - "assign-to-customer": "Призначити клієнту", - "assign-device-to-customer": "Призначити пристрій(-ої) клієнту", - "assign-device-to-customer-text": "Виберіть пристрої, які слід призначити клієнту", - "make-public": "Зробити пристрій публічним", - "make-private": "Зробити пристрій приватним", - "no-devices-text": "Не знайдено жодного пристрою", - "assign-to-customer-text": "Виберіть клієнта для призначення пристрою (їв)", - "device-details": "Деталі пристрою", - "add-device-text": "Додати новий пристрій", - "credentials": "Авторизаційні дані", - "manage-credentials": "Керування авторизаційними даними", - "delete": "Видалити пристрій", - "assign-devices": "Призначити пристрої", - "assign-devices-text": "Призначити { count, plural, =1 {1 пристрій} few {# пристрої} many {# пристроїв} other {# пристрій} } клієнту", - "delete-devices": "Видалити пристрої", - "unassign-from-customer": "Позбавити клієнта пристроїв", - "unassign-devices": "Позбавити пристроїв", - "unassign-devices-action-title": "Позбавити клієнта { count, plural, =1 {1 пристрою} other {# пристроїв} }", - "assign-new-device": "Призначити новий пристрій", - "make-public-device-title": "Ви впевнені, що хочете зробити пристрій '{{deviceName}}' публічним?", - "make-public-device-text": "Після підтвердження пристрій і всі його дані будуть публічними та доступними для інших.", - "make-private-device-title": "Ви впевнені, що хочете зробити пристрій '{{deviceName}}' приватним?", - "make-private-device-text": "Після підтвердження пристрій і всі його дані будуть приватними та недоступними для інших.", - "view-credentials": "Переглянути авторизаційні дані", - "delete-device-title": "Ви впевнені, що хочете видалити пристрій '{{deviceName}}'?", - "delete-device-text": "Будьте обережні, після підтвердження, пристрій і всі пов'язані з ним дані стануть недоступними.", - "delete-devices-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 пристрій} few {# пристрої} many {# пристроїв} other {# пристрій} }?", - "delete-devices-action-title": "Видалити { count, plural, =1 {1 пристрій} few {# пристрої} many {# пристроїв} other {# пристрій} }", - "delete-devices-text": "Будьте обережні, після підтвердження, всі вибрані пристрої будуть видалені, і всі пов'язані з ними дані стануть недоступними.", - "unassign-device-title": "Ви впевнені, що хочете позбавити пристрою '{{deviceName}}'?", - "unassign-device-text": "Після підтвердження, клієнт буде позбавлений пристрою.", - "unassign-device": "Позбавити пристою", - "unassign-devices-title": "Ви впевненені, що хочете позбавити { count, plural, =1 {1 пристрою} other {# пристроїв} }?", - "unassign-devices-text": "Після підтвердження, клієнт буде позбавлений пристрою і пристрій стане не доступним клієнту", - "device-credentials": "Авторизаційні дані прстрою", - "credentials-type": "Тип авторизаційних даних", - "access-token": "Маркер доступу", - "access-token-required": "Необхідно вказати маркер доступу.", - "access-token-invalid": "Маркер доступу має бути від 1 до 32 символів.", - "secret": "Секрет", - "secret-required": "Необхідно вказати секрет.", - "device-type": "Тип пристрою", - "device-type-required": "Необхідно вказати тип пристрою.", - "select-device-type": "Виберіть тип пристрою", - "enter-device-type": "Введіть тип пристрою", - "any-device": "Будь-який пристрій", - "no-device-types-matching": "Не знайдено типів пристроїв, які відповідають '{{entitySubtype}}'.", - "device-type-list-empty": "Не вибрано типів пристроїв.", - "device-types": "Типи пристрою", - "name": "Назва", - "name-required": "Необхідно вказати назву.", - "description": "Опис", - "events": "Події", - "details": "Деталі", - "copyId": "Копіювати Id пристрою", - "copyAccessToken": "Копіювати маркер доступу", - "idCopiedMessage": "Id пристрою скопійовано в буфер обміну", - "accessTokenCopiedMessage": "Маркер доступу до пристрою скопійовано в буфер обміну", - "assignedToCustomer": "Призначений клієнту", - "unable-delete-device-alias-title": "Неможливо видалити псевдонім пристрою", - "unable-delete-device-alias-text": "Псевдонім пристрою '{{deviceAlias}}' не може бути видалений, оскільки він використовується наступним(и) віджетом(ами):
{{widgetsList}}", - "is-gateway": "Шлюз", - "public": "Публічно", - "device-public": "Пристрій є публічним", - "select-device": "Виберіть пристрій", - "import": "Імпортувати пристрої", - "device-file": "Файл з пристроями", - "selected-devices": "{ count, plural, =1 {1 пристрій} few {# пристрої} many {# пристроїв} other {# пристрій} } вибрано", - "search": "Шукати пристрої", - "select-group-to-add": "Виберіть цільову групу, щоб додати вибраний пристрій", - "select-group-to-move": "Виберіть цільову групу для переміщення вибраних пристроїв", - "remove-devices-from-group": "Ви впевнені, що хочете видалити { count, plural, =1 {1 пристрій} few {# пристрої} many {# пристроїв} other {# пристрій} } з групи '{entityGroup}'?", - "group": "Група пристроїв", - "list-of-groups": "{ count, plural, =1 {Одна група пристроїв} other {Список # груп пристроїв} }", - "group-name-starts-with": "Групи пристроїв, назви яких починаються з '{{prefix}}'" - }, - "asset-profile": { - "asset-profile": "Профіль активу", - "asset-profiles": "Профілі активів" - }, - "device-profile": { - "device-profile": "Профіль пристрою", - "device-profiles": "Профілі пристроїв" - }, - "dialog": { - "close": "Закрити діалогове вікно" - }, - "direction": { - "column": "Колонка", - "row": "Рядок" + "deduplicate": "Дедуплікувати", + "web-sockets-only": "Лише WebSockets" + }, + "time-series": "Часові ряди", + "latest": "Останні значення", + "web-sockets": "WebSockets" + }, + "save-attribute": { + "processing-settings": "Налаштування обробки", + "processing-settings-hint": "Визначте, як обробляються вхідні повідомлення. Базові налаштування обробки дозволяють вибрати попередньо налаштовані стратегії, тоді як розширені налаштування дозволяють вибрати окремі стратегії обробки для кожної дії.", + "advanced-settings-hint": "Будьте обережні під час налаштування стратегій обробки. Певні комбінації можуть призвести до неочікуваної поведінки.", + "strategy": "Стратегія", + "deduplication-interval": "Інтервал дедуплікації", + "deduplication-interval-required": "Інтервал дедуплікації є обов'язковим", + "deduplication-interval-min-max-range": "Інтервал дедуплікації має бути щонайменше 1 секунда і щонайбільше 1 день", + "scope": "Область", + "strategy-type": { + "every-message": "На кожне повідомлення", + "skip": "Пропустити", + "deduplicate": "Дедуплікувати", + "web-sockets-only": "Лише WebSockets" + }, + "attributes": "Атрибути" + }, + "key-val": { + "key": "Ключ", + "value": "Значення", + "see-examples": "Переглянути приклади.", + "remove-entry": "Видалити запис", + "remove-mapping-entry": "Видалити елемент зіставлення", + "add-mapping-entry": "Додати зіставлення", + "add-entry": "Додати запис", + "copy-key-values-from": "Копіювати пари ключ-значення з", + "delete-key-values": "Видалити пари ключ-значення", + "delete-key-values-from": "Видалити пари ключ-значення з", + "at-least-one-key-error": "Має бути вибрано щонайменше один ключ.", + "unique-key-value-pair-error": "'{{keyText}}' має відрізнятися від '{{valText}}'!" + }, + "mail-body-types": { + "plain-text": "Звичайний текст", + "html": "HTML", + "dynamic": "Динамічний", + "use-body-type-template": "Використовувати шаблон типу тіла листа", + "plain-text-description": "Простий неформатований текст без спеціального стилю або форматування.", + "html-text-description": "Дозволяє використовувати HTML-теги для форматування, посилань і зображень у тілі листа.", + "dynamic-text-description": "Дозволяє динамічно використовувати звичайний текст або HTML на основі функції шаблонізації.", + "after-template-evaluation-hint": "Після обчислення шаблону значення має бути true для HTML і false для Plain text." + }, + "ai": { + "ai-model": "Модель ШІ", + "model": "Модель", + "ai-model-hint": "Виберіть попередньо налаштовану модель ШІ для обробки запитів, надісланих цим правилом, або використовуйте \"Створити нову\", щоб налаштувати нову.", + "prompt-settings": "Налаштування підказок", + "prompt-settings-hint": "Опційна система підказок визначає загальну роль і обмеження для ШІ, в той час як підказка користувача визначає конкретне завдання для виконання. Обидва поля також підтримують шаблонізацію.", + "system-prompt": "Система підказок", + "system-prompt-max-length": "Система підказок повинна містити не більше 500000 символів.", + "system-prompt-blank": "Система підказок не повинна бути порожньою.", + "user-prompt": "Підказка користувача", + "user-prompt-required": "Підказка користувача обов'язкова.", + "user-prompt-max-length": "Підказка користувача повинна містити не більше 500000 символів.", + "user-prompt-blank": "Підказка користувача не повинна бути порожньою.", + "response-format": "Формат відповіді", + "response-text": "Текст", + "response-json": "JSON", + "response-json-schema": "JSON Schema", + "response-format-hint-TEXT": "Дозволяє моделі генерувати довільний текст, який може або не може бути допустимим JSON-об'єктом. Якщо вихідні дані не є допустимим JSON-об'єктом, вони будуть автоматично обгорнуті в JSON-об'єкт під ключем \"response\".", + "response-format-hint-JSON": "Модель повинна згенерувати відповідь, яка є допустимим JSON. Якщо вихідні дані не є допустимим JSON-об'єктом, вони будуть автоматично обгорнуті в JSON-об'єкт під ключем \"response\".", + "response-format-hint-JSON_SCHEMA": "Модель повинна згенерувати JSON, що відповідає конкретній структурі та типам даних, визначеним у наданій схемі. Якщо вихідні дані не є допустимим JSON-об'єктом, вони будуть автоматично обгорнуті в JSON-об'єкт під ключем \"response\".", + "response-json-schema-hint": "Хоча можна ввести будь-яку допустиму JSON-схему, цей правило вузла підтримує лише обмежену підмножину її функцій. Деталі див. у документації до вузла.", + "response-json-schema-required": "JSON Schema обов'язкова", + "advanced-settings": "Розширені налаштування", + "timeout": "Тайм-аут", + "timeout-hint": "Максимальний час очікування відповіді \nвід моделі ШІ перед завершенням запиту.", + "timeout-required": "Тайм-аут обов'язковий", + "timeout-validation": "Повинен бути від 1 секунди до 10 хвилин.", + "force-acknowledgement": "Примусове підтвердження", + "force-acknowledgement-hint": "Якщо увімкнено, вхідне повідомлення негайно підтверджується. Відповідь моделі потім ставиться в чергу як окреме нове повідомлення.", + "ai-resources": "Ресурси ШІ" + } + }, + "timezone": { + "timezone": "Часовий пояс", + "select-timezone": "Вибрати часовий пояс", + "no-timezones-matching": "Не знайдено часових поясів, що відповідають '{{timezone}}'.", + "timezone-required": "Часовий пояс обов'язковий.", + "browser-time": "Час браузера" + }, + "queue": { + "queue-name": "Черга", + "no-queues-found": "Черги не знайдено.", + "no-queues-matching": "Не знайдено черг, що відповідають '{{queue}}'.", + "select-name": "Вибрати назву черги", + "name": "Назва", + "name-required": "Назва черги є обов'язкова!", + "name-unique": "Назва черги не унікальна!", + "name-pattern": "Назва черги містить символ, відмінний від ASCII літер і цифр, '.', '_' та '-'!", + "queue-required": "Черга є обов'язкова!", + "topic-required": "Топік черги є обов'язковий!", + "poll-interval-required": "Інтервал опитування є обов'язковий!", + "poll-interval-min-value": "Значення інтервалу опитування не може бути меншим за 1", + "partitions-required": "Розділи є обов'язкові!", + "partitions-min-value": "Значення розділів не може бути меншим за 1", + "pack-processing-timeout-required": "Тайм-аут обробки є обов'язковий", + "pack-processing-timeout-min-value": "Значення тайм-ауту обробки не може бути меншим за 1", + "batch-size-required": "Розмір пакета є обов'язковий!", + "batch-size-min-value": "Значення розміру пакета не може бути меншим за 1", + "retries-required": "Повторні спроби є обов'язкові!", + "retries-min-value": "Значення повторних спроб не може бути від'ємним", + "failure-percentage-required": "Відсоток збоїв є обов'язковий!", + "failure-percentage-min-value": "Значення відсотка збоїв не може бути меншим за 0", + "failure-percentage-max-value": "Значення відсотка збоїв не може бути більшим за 100", + "pause-between-retries-required": "Пауза між повторними спробами є обов'язкова!", + "pause-between-retries-min-value": "Значення паузи між повторними спробами не може бути меншим за 1", + "max-pause-between-retries-required": "Максимальна пауза між повторними спробами є обов'язкова!", + "max-pause-between-retries-min-value": "Значення максимальної паузи між повторними спробами не може бути меншим за 1", + "submit-strategy-type-required": "Тип стратегії відправлення є обов'язковий!", + "processing-strategy-type-required": "Тип стратегії обробки є обов'язковий!", + "queues": "Черги", + "selected-queues": "{ count, plural, =1 {1 черга} other {# черг} } вибрано", + "delete-queue-title": "Ви впевнені, що хочете видалити чергу '{{queueName}}'?", + "delete-queues-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 чергу} other {# черг} }?", + "delete-queue-text": "Будьте обережні, після підтвердження черга і всі пов'язані дані будуть безповоротно видалені.", + "delete-queues-text": "Після підтвердження всі вибрані черги буде видалено, і вони будуть недоступні.", + "search": "Пошук черги", + "add": "Додати чергу", + "details": "Деталі черги", + "topic": "Топік", + "submit-settings": "Налаштування відправлення", + "submit-strategy": "Тип стратегії *", + "grouping-parameter": "Параметр групування", + "processing-settings": "Налаштування обробки повторних спроб", + "processing-strategy": "Тип обробки *", + "retries-settings": "Налаштування повторних спроб", + "polling-settings": "Налаштування опитування", + "batch-processing": "Пакетна обробка", + "poll-interval": "Інтервал опитування", + "partitions": "Розділи", + "immediate-processing": "Негайна обробка", + "consumer-per-partition": "Надсилати повідомлення для кожного споживача", + "consumer-per-partition-hint": "Увімкнути окремих споживачів для кожного розділу", + "duplicate-msg-to-all-partitions": "Дублювати повідомлення для всіх розділів", + "processing-timeout": "Тайм-аут обробки, мс", + "batch-size": "Розмір пакета", + "retries": "Кількість повторних спроб (0 — необмежено)", + "failure-percentage": "Відсоток збоїв для пропуску повторних спроб, %", + "pause-between-retries": "Пауза між повторними спробами, сек", + "max-pause-between-retries": "Максимальна пауза між повторними спробами, сек", + "delete": "Видалити чергу", + "copyId": "Копіювати ID черги", + "idCopiedMessage": "ID черги скопійовано в буфер обміну", + "description": "Опис", + "description-hint": "Цей текст буде відображатися в описі черги замість вибраної стратегії", + "alt-description": "Стратегія відправлення: {{submitStrategy}}, Стратегія обробки: {{processingStrategy}}", + "custom-properties": "Користувацькі властивості", + "custom-properties-hint": "Властивості для створення користувацької черги (топіка), наприклад 'retention.ms:604800000;retention.bytes:1048576000'", + "strategies": { + "sequential-by-originator-label": "Послідовно за ініціатором", + "sequential-by-originator-hint": "Нове повідомлення для, наприклад, пристрою A не відправляється, поки попереднє повідомлення для пристрою A не буде підтверджене", + "sequential-by-tenant-label": "Послідовно за тенантом", + "sequential-by-tenant-hint": "Нове повідомлення для, наприклад, тенанта A не відправляється, поки попереднє повідомлення для тенанта A не буде підтверджене", + "sequential-label": "Послідовно", + "sequential-hint": "Нове повідомлення не відправляється, поки попереднє повідомлення не буде підтверджене", + "burst-label": "Сплеск", + "burst-hint": "Усі повідомлення відправляються в ланцюги правил у порядку їх надходження", + "batch-label": "Пакет", + "batch-hint": "Новий пакет не відправляється, поки попередній пакет не буде підтверджений", + "skip-all-failures-label": "Пропустити всі збої", + "skip-all-failures-hint": "Ігнорувати всі збої", + "skip-all-failures-and-timeouts-label": "Пропустити всі збої та тайм-аути", + "skip-all-failures-and-timeouts-hint": "Ігнорувати всі збої та тайм-аути", + "retry-all-label": "Повторити всі", + "retry-all-hint": "Повторити всі повідомлення з пакету обробки", + "retry-failed-label": "Повторити збої", + "retry-failed-hint": "Повторити всі неуспішні повідомлення з пакету обробки", + "retry-timeout-label": "Повторити тайм-аут", + "retry-timeout-hint": "Повторити всі повідомлення з тайм-аутом з пакету обробки", + "retry-failed-and-timeout-label": "Повторити збої та тайм-аути", + "retry-failed-and-timeout-hint": "Повторити всі неуспішні та ті, що мають тайм-аут, повідомлення з пакету обробки" + } + }, + "queue-statistics": { + "queue-statistics": "Статистика черги", + "no-queue-statistics-matching": "Не знайдено статистики черги, що відповідають '{{entity}}'.", + "queue-statistics-required": "Статистика черги обов'язкова.", + "list-of-queue-statistics": "{ count, plural, =1 {Одна статистика черги} other {Список з # статистик черги} }", + "selected-queue-statistics": "{ count, plural, =1 {1 статистика черги} other {# статистик черги} } вибрано", + "no-queue-statistics-text": "Статистика черги не знайдена", + "queue-statistics-starts-with": "Статистика черг, назви яких починаються з '{{prefix}}'" + }, + "server-error": { + "general": "Загальна помилка сервера", + "authentication": "Помилка аутентифікації", + "jwt-token-expired": "Термін дії JWT токена закінчився", + "tenant-trial-expired": "Термін пробного періоду тенанта закінчився", + "credentials-expired": "Термін дії облікових даних закінчився", + "permission-denied": "Доступ заборонено", + "invalid-arguments": "Невірні аргументи", + "bad-request-params": "Невірні параметри запиту", + "item-not-found": "Елемент не знайдений", + "too-many-requests": "Занадто багато запитів", + "too-many-updates": "Занадто багато оновлень" + }, + "tenant": { + "tenant": "Тенант", + "tenants": "Тенанти", + "management": "Управління тенантами", + "add": "Додати тенанта", + "admins": "Адміністратори", + "manage-tenant-admins": "Управління адміністраторами тенанта", + "delete": "Видалити тенанта", + "add-tenant-text": "Додати нового тенанта", + "no-tenants-text": "Тенанти не знайдені", + "tenant-details": "Деталі тенанта", + "title-max-length": "Назва повинна бути меншою за 256 символів", + "delete-tenant-title": "Ви впевнені, що хочете видалити тенанта '{{tenantTitle}}'?", + "delete-tenant-text": "Будьте обережні, після підтвердження тенант і всі пов'язані дані будуть безповоротно видалені.", + "delete-tenants-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 тенанта} other {# тенантів} }?", + "delete-tenants-action-title": "Видалити { count, plural, =1 {1 тенанта} other {# тенантів} }", + "delete-tenants-text": "Будьте обережні, після підтвердження всі вибрані тенанти будуть видалені, а всі пов'язані дані будуть безповоротно видалені.", + "title": "Назва", + "title-required": "Назва обов'язкова.", + "description": "Опис", + "details": "Деталі", + "events": "Події", + "copyId": "Копіювати ID тенанта", + "idCopiedMessage": "ID тенанта скопійовано в буфер обміну", + "select-tenant": "Вибрати тенанта", + "no-tenants-matching": "Не знайдено тенантів, що відповідають '{{entity}}'.", + "tenant-required": "Тенант обов'язковий", + "search": "Пошук тенантів", + "selected-tenants": "{ count, plural, =1 {1 тенант} other {# тенантів} } вибрано", + "isolated-tb-rule-engine": "Використовувати ізольовані черги Rule Engine ThingsBoard", + "isolated-tb-rule-engine-details": "Кожен тенант матиме окремі черги Rule Engine" + }, + "tenant-profile": { + "tenant-profile": "Профіль тенанта", + "tenant-profiles": "Профілі тенантів", + "add": "Додати профіль тенанта", + "add-profile": "Додати профіль", + "debug": "Налагодження", + "edit": "Редагувати профіль тенанта", + "tenant-profile-details": "Деталі профілю тенанта", + "no-tenant-profiles-text": "Профілі тенантів не знайдені", + "name-max-length": "Назва повинна бути меншою за 256 символів", + "search": "Пошук профілів тенантів", + "selected-tenant-profiles": "{ count, plural, =1 {1 профіль тенанта} other {# профілів тенантів} } вибрано", + "no-tenant-profiles-matching": "Не знайдено профілів тенантів, що відповідають '{{entity}}'.", + "tenant-profile-required": "Профіль тенанта обов'язковий", + "idCopiedMessage": "ID профілю тенанта скопійовано в буфер обміну", + "set-default": "Зробити профіль тенанта за замовчуванням", + "delete": "Видалити профіль тенанта", + "copyId": "Копіювати ID профілю тенанта", + "name": "Назва", + "name-required": "Назва обов'язкова.", + "data": "Дані профілю", + "profile-configuration": "Конфігурація профілю", + "description": "Опис", + "default": "За замовчуванням", + "delete-tenant-profile-title": "Ви впевнені, що хочете видалити профіль тенанта '{{tenantProfileName}}'?", + "delete-tenant-profile-text": "Будьте обережні, після підтвердження профіль тенанта і всі пов'язані дані будуть безповоротно видалені.", + "delete-tenant-profiles-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 профіль тенанта} other {# профілів тенантів} }?", + "delete-tenant-profiles-text": "Будьте обережні, після підтвердження всі вибрані профілі тенантів будуть видалені, а всі пов'язані дані будуть безповоротно видалені.", + "set-default-tenant-profile-title": "Ви впевнені, що хочете зробити профіль тенанта '{{tenantProfileName}}' профілем за замовчуванням?", + "set-default-tenant-profile-text": "Після підтвердження профіль тенанта буде позначений як профіль за замовчуванням і використовуватиметься для нових тенантів, для яких не вказаний профіль.", + "no-tenant-profiles-found": "Профілі тенантів не знайдені.", + "create-new-tenant-profile": "Створити новий!", + "create-tenant-profile": "Створити новий профіль тенанта", + "import": "Імпортувати профіль тенанта", + "export": "Експортувати профіль тенанта", + "export-failed-error": "Не вдалося експортувати профіль тенанта: {{error}}", + "tenant-profile-file": "Файл профілю тенанта", + "invalid-tenant-profile-file-error": "Не вдалося імпортувати профіль тенанта: Невірна структура даних профілю тенанта.", + "advanced-settings": "Розширені налаштування", + "entities": "Сутності", + "rule-engine": "Механізм правил", + "time-to-live": "Час життя", + "calculated-fields": "Розрахункові поля", + "alarms-and-notifications": "Тривоги та сповіщення", + "ota-files-in-bytes": "Файли", + "ws-title": "WS", + "unlimited": "(0 - необмежено)", + "maximum-devices": "Максимальна кількість пристроїв", + "maximum-devices-required": "Максимальна кількість пристроїв обов'язкова.", + "maximum-devices-range": "Максимальна кількість пристроїв не може бути від'ємною", + "maximum-assets": "Максимальна кількість активів", + "maximum-assets-required": "Максимальна кількість активів обов'язкова.", + "maximum-assets-range": "Максимальна кількість активів не може бути від'ємною", + "maximum-customers": "Максимальна кількість клієнтів", + "maximum-customers-required": "Максимальна кількість клієнтів обов'язкова.", + "maximum-customers-range": "Максимальна кількість клієнтів не може бути від'ємною", + "maximum-users": "Максимальна кількість користувачів", + "maximum-users-required": "Максимальна кількість користувачів обов'язкова.", + "maximum-users-range": "Максимальна кількість користувачів не може бути від'ємною", + "maximum-dashboards": "Максимальна кількість дашбордів", + "maximum-dashboards-required": "Максимальна кількість дашбордів обов'язкова.", + "maximum-dashboards-range": "Максимальна кількість дашбордів не може бути від'ємною", + "maximum-edges": "Максимальна кількість Edge", + "maximum-edges-required": "Максимальна кількість Edge обов'язкова.", + "maximum-edges-range": "Максимальна кількість Edge не може бути від'ємною", + "maximum-rule-chains": "Максимальна кількість ланцюгів правил", + "maximum-rule-chains-required": "Максимальна кількість ланцюгів правил обов'язкова.", + "maximum-rule-chains-range": "Максимальна кількість ланцюгів правил не може бути від'ємною", + "maximum-resources-sum-data-size": "Максимальний загальний розмір файлів ресурсів (байти)", + "maximum-resources-sum-data-size-required": "Максимальний загальний розмір файлів ресурсів обов'язковий.", + "maximum-resources-sum-data-size-range": "Максимальний загальний розмір файлів ресурсів не може бути від'ємним", + "maximum-resource-size": "Максимальний розмір файлу ресурсу (байти)", + "maximum-resource-size-required": "Максимальний розмір файлу ресурсу обов'язковий", + "maximum-resource-size-range": "Максимальний розмір файлу ресурсу не може бути від'ємним", + "maximum-ota-packages-sum-data-size": "Максимальний загальний розмір файлів OTA пакета (байти)", + "maximum-ota-package-sum-data-size-required": "Максимальний загальний розмір файлів OTA пакета обов'язковий.", + "maximum-ota-package-sum-data-size-range": "Максимальний загальний розмір файлів OTA пакета не може бути від'ємним", + "maximum-debug-duration-min": "Максимальна тривалість налагодження (хв)", + "maximum-debug-duration-min-range": "Максимальна тривалість налагодження не може бути від'ємною", + "rest-requests-for-tenant": "REST запити для тенанта", + "transport-tenant-telemetry-msg-rate-limit": "Обмеження на кількість повідомлень телеметрії тенанта", + "transport-tenant-telemetry-data-points-rate-limit": "Обмеження на кількість точок даних телеметрії тенанта", + "transport-device-msg-rate-limit": "Обмеження на кількість повідомлень пристрою", + "transport-device-telemetry-msg-rate-limit": "Обмеження на кількість повідомлень телеметрії пристрою", + "transport-device-telemetry-data-points-rate-limit": "Обмеження на кількість точок даних телеметрії пристрою", + "transport-gateway-msg-rate-limit": "Обмеження на кількість повідомлень шлюзу", + "transport-gateway-telemetry-msg-rate-limit": "Обмеження на кількість повідомлень телеметрії шлюзу", + "transport-gateway-telemetry-data-points-rate-limit": "Обмеження на кількість точок даних телеметрії шлюзу", + "transport-gateway-device-msg-rate-limit": "Обмеження на кількість повідомлень пристрою шлюзу", + "transport-gateway-device-telemetry-msg-rate-limit": "Обмеження на кількість повідомлень телеметрії пристрою шлюзу", + "transport-gateway-device-telemetry-data-points-rate-limit": "Обмеження на кількість точок даних телеметрії пристрою шлюзу", + "tenant-entity-export-rate-limit": "Обмеження на створення версії сутності", + "tenant-entity-import-rate-limit": "Обмеження на завантаження версії сутності", + "tenant-notification-request-rate-limit": "Обмеження на запити сповіщень", + "tenant-notification-requests-per-rule-rate-limit": "Обмеження на запити сповіщень на правило сповіщення", + "max-calculated-fields": "Максимальна кількість розрахункових полів на сутність", + "max-calculated-fields-range": "Максимальна кількість розрахункових полів на сутність не може бути від'ємною", + "max-calculated-fields-required": "Максимальна кількість розрахункових полів на сутність обов'язкова", + "max-data-points-per-rolling-arg": "Максимальна кількість точок даних у змінних аргументах", + "max-data-points-per-rolling-arg-range": "Максимальна кількість точок даних у змінних аргументах не може бути від'ємною", + "max-data-points-per-rolling-arg-required": "Максимальна кількість точок даних у змінних аргументах обов'язкова", + "max-arguments-per-cf": "Максимальна кількість аргументів для розрахункового поля", + "max-arguments-per-cf-range": "Максимальна кількість аргументів для розрахункового поля не може бути від'ємною", + "max-arguments-per-cf-required": "Максимальна кількість аргументів для розрахункового поля обов'язкова", + "max-state-size": "Максимальний розмір стану в КБ", + "max-state-size-range": "Максимальний розмір стану в КБ не може бути від'ємним", + "max-state-size-required": "Максимальний розмір стану в КБ обов'язковий", + "max-value-argument-size": "Максимальний розмір аргументу одиничного значення в КБ", + "max-value-argument-size-range": "Максимальний розмір аргументу одиничного значення в КБ не може бути від'ємним", + "max-value-argument-size-required": "Максимальний розмір аргументу одиничного значення в КБ обов'язковий", + "max-transport-messages": "Максимальна кількість транспортних повідомлень", + "max-transport-messages-required": "Максимальна кількість транспортних повідомлень обов'язкова.", + "max-transport-messages-range": "Максимальна кількість транспортних повідомлень не може бути від'ємною", + "max-transport-data-points": "Максимальна кількість точок даних транспорту", + "max-transport-data-points-required": "Максимальна кількість точок даних транспорту обов'язкова.", + "max-transport-data-points-range": "Максимальна кількість точок даних транспорту не може бути від'ємною", + "max-r-e-executions": "Максимальна кількість виконань Механізму правил", + "max-r-e-executions-required": "Максимальна кількість виконань Механізму правил обов'язкова.", + "max-r-e-executions-range": "Максимальна кількість виконань Механізму правил не може бути від'ємною", + "max-j-s-executions": "Максимальна кількість виконань JavaScript", + "max-j-s-executions-required": "Максимальна кількість виконань JavaScript обов'язкова.", + "max-j-s-executions-range": "Максимальна кількість виконань JavaScript не може бути від'ємною", + "max-tbel-executions": "Максимальна кількість виконань TBEL", + "max-tbel-executions-required": "Максимальна кількість виконань TBEL обов'язкова.", + "max-tbel-executions-range": "Максимальна кількість виконань TBEL не може бути від'ємною", + "max-d-p-storage-days": "Максимальна кількість днів зберігання точок даних", + "max-d-p-storage-days-required": "Максимальна кількість днів зберігання точок даних обов'язкова.", + "max-d-p-storage-days-range": "Максимальна кількість днів зберігання точок даних не може бути від'ємною", + "default-storage-ttl-days": "TTL дні зберігання за замовчуванням", + "default-storage-ttl-days-required": "TTL дні зберігання за замовчуванням обов'язкові.", + "default-storage-ttl-days-range": "TTL дні зберігання за замовчуванням не можуть бути від'ємними", + "alarms-ttl-days": "TTL дні тривог", + "alarms-ttl-days-required": "TTL дні тривог обов'язкові", + "alarms-ttl-days-days-range": "TTL дні тривог не можуть бути від'ємними", + "rpc-ttl-days": "TTL дні RPC", + "rpc-ttl-days-required": "TTL дні RPC обов'язкові", + "rpc-ttl-days-days-range": "TTL дні RPC не можуть бути від'ємними", + "queue-stats-ttl-days": "TTL дні статистики черги", + "queue-stats-ttl-days-required": "TTL дні статистики черги обов'язкові", + "queue-stats-ttl-days-range": "TTL дні статистики черги не можуть бути від'ємними", + "rule-engine-exceptions-ttl-days": "TTL дні виключень Rule Engine", + "rule-engine-exceptions-ttl-days-required": "TTL дні виключень Rule Engine обов'язкові", + "rule-engine-exceptions-ttl-days-range": "TTL дні виключень Rule Engine не можуть бути від'ємними", + "max-rule-node-executions-per-message": "Максимальна кількість виконань вузла правила на повідомлення", + "max-rule-node-executions-per-message-required": "Максимальна кількість виконань вузла правила на повідомлення обов'язкова.", + "max-rule-node-executions-per-message-range": "Максимальна кількість виконань вузла правила на повідомлення не може бути від'ємною", + "max-emails": "Максимальна кількість відправлених електронних листів", + "max-emails-required": "Максимальна кількість відправлених електронних листів обов'язкова.", + "max-emails-range": "Максимальна кількість відправлених електронних листів не може бути від'ємною", + "sms-enabled": "SMS увімкнено", + "max-sms": "Максимальна кількість відправлених SMS", + "max-sms-required": "Максимальна кількість відправлених SMS обов'язкова.", + "max-sms-range": "Максимальна кількість відправлених SMS не може бути від'ємною", + "max-created-alarms": "Максимальна кількість створених тривог", + "max-created-alarms-required": "Максимальна кількість створених тривог обов'язкова.", + "max-created-alarms-range": "Максимальна кількість створених тривог не може бути від'ємною", + "no-queue": "Черга не налаштована", + "add-queue": "Додати чергу", + "queues-with-count": "Черги ({{count}})", + "tenant-rest-limits": "REST запити для тенанта", + "customer-rest-limits": "REST запити для клієнта", + "incorrect-pattern-for-rate-limits": "Формат повинен бути у вигляді кома-розділених пар ємності та періоду (в секундах) з двокрапкою між ними, наприклад 100:1,2000:60", + "too-small-value-zero": "Значення повинно бути більшим за 0", + "too-small-value-one": "Значення повинно бути більшим за 1", + "queue-size-is-limited-by-system-configuration": "Розмір черги також обмежений конфігурацією системи.", + "cassandra-write-tenant-core-limits-configuration": "Запити на запис в Cassandra через Rest API для тенанта", + "cassandra-read-tenant-core-limits-configuration": "Запити на читання телеметрії в Cassandra через Rest API та WS для тенанта", + "cassandra-write-tenant-rule-engine-limits-configuration": "Запити на запис в Cassandra для телеметрії Rule Engine", + "cassandra-read-tenant-rule-engine-limits-configuration": "Запити на читання телеметрії в Cassandra для Rule Engine", + "ws-limit-max-sessions-per-tenant": "Максимальна кількість сесій на тенанта", + "ws-limit-max-sessions-per-customer": "Максимальна кількість сесій на клієнта", + "ws-limit-max-sessions-per-regular-user": "Максимальна кількість сесій на звичайного користувача", + "ws-limit-max-sessions-per-public-user": "Максимальна кількість сесій на публічного користувача", + "ws-limit-queue-per-session": "Максимальний розмір черги повідомлень на сесію", + "ws-limit-max-subscriptions-per-tenant": "Максимальна кількість підписок на тенанта", + "ws-limit-max-subscriptions-per-customer": "Максимальна кількість підписок на клієнта", + "ws-limit-max-subscriptions-per-regular-user": "Максимальна кількість підписок на звичайного користувача", + "ws-limit-max-subscriptions-per-public-user": "Максимальна кількість підписок на публічного користувача", + "ws-limit-updates-per-session": "Кількість оновлень WS на сесію", + "rate-limits": { + "add-limit": "Додати ліміт", + "and-also-less-than": "а також менше ніж", + "advanced-settings": "Розширені налаштування", + "edit-limit": "Редагувати ліміт", + "calculated-field-debug-event-rate-limit": "Події налагодження розрахункового поля", + "edit-calculated-field-debug-event-rate-limit": "Редагувати ліміти подій налагодження розрахункового поля", + "edit-transport-tenant-msg-title": "Редагувати ліміти транспортних повідомлень тенанта", + "edit-transport-tenant-telemetry-msg-title": "Редагувати ліміти транспортних повідомлень телеметрії тенанта", + "edit-transport-tenant-telemetry-data-points-title": "Редагувати ліміти транспортних точок даних телеметрії тенанта", + "edit-transport-device-msg-title": "Редагувати ліміти транспортних повідомлень пристрою", + "edit-transport-device-telemetry-msg-title": "Редагувати ліміти транспортних повідомлень телеметрії пристрою", + "edit-transport-device-telemetry-data-points-title": "Редагувати ліміти транспортних точок даних телеметрії пристрою", + "edit-transport-gateway-msg-title": "Редагувати ліміти транспортних повідомлень Gateway", + "edit-transport-gateway-telemetry-msg-title": "Редагувати ліміти транспортних повідомлень телеметрії Gateway", + "edit-transport-gateway-telemetry-data-points-title": "Редагувати ліміти транспортних точок даних телеметрії Gateway", + "edit-transport-gateway-device-msg-title": "Редагувати ліміти транспортних повідомлень пристрою Gateway", + "edit-transport-gateway-device-telemetry-msg-title": "Редагувати ліміти транспортних повідомлень телеметрії пристрою Gateway", + "edit-transport-gateway-device-telemetry-data-points-title": "Редагувати ліміти транспортних точок даних телеметрії пристрою Gateway", + "edit-tenant-rest-limits-title": "Редагувати ліміти запитів REST для тенанта", + "edit-customer-rest-limits-title": "Редагувати ліміти запитів REST для клієнта", + "edit-ws-limit-updates-per-session-title": "Редагувати ліміти оновлень WS на сеанс", + "edit-cassandra-write-tenant-core-limits-configuration": "Редагувати запити запису Cassandra для REST API", + "edit-cassandra-read-tenant-core-limits-configuration": "Редагувати запити читання Cassandra телеметрії для REST API та WS", + "edit-cassandra-write-tenant-rule-engine-limits-configuration": "Редагувати запити запису Cassandra телеметрії Механізму правил", + "edit-cassandra-read-tenant-rule-engine-limits-configuration": "Редагувати запити читання Cassandra телеметрії Механізму правил", + "edit-tenant-entity-export-rate-limit-title": "Редагувати ліміти створення версії сутності", + "edit-tenant-entity-import-rate-limit-title": "Редагувати ліміти завантаження версії сутності", + "edit-tenant-notification-request-rate-limit-title": "Редагувати ліміти запитів сповіщень", + "edit-tenant-notification-requests-per-rule-rate-limit-title": "Редагувати ліміти запитів сповіщень на правило сповіщення", + "edit-edge-events-rate-limit": "Редагувати ліміти швидкості подій Edge", + "edit-edge-events-per-edge-rate-limit": "Редагувати ліміти швидкості подій Edge для кожного Edge", + "edge-events-rate-limit": "Edge події", + "edge-events-per-edge-rate-limit": "Edge події для кожного Edge", + "edit-edge-uplink-messages-rate-limit": "Редагувати ліміти висхідних повідомлень Edge", + "edit-edge-uplink-messages-per-edge-rate-limit": "Редагувати ліміти висхідних повідомлень Edge для кожного Edge", + "edge-uplink-messages-rate-limit": "Висхідні повідомлення Edge", + "edge-uplink-messages-per-edge-rate-limit": "Висхідні повідомлення Edge для кожного Edge", + "messages-per": "повідомлення на", + "not-set": "Не задано", + "number-of-messages": "Кількість повідомлень", + "number-of-messages-required": "Кількість повідомлень обов'язкова.", + "number-of-messages-min": "Мінімальне значення — 1.", + "preview": "Попередній перегляд", + "per-seconds": "На секунди", + "per-seconds-required": "Часовий ліміт обов'язковий.", + "per-seconds-min": "Мінімальне значення — 1.", + "per-seconds-duplicate": "Дубльований інтервал часу. Кожен інтервал часу має бути унікальним.", + "rate-limits": "Ліміти швидкості", + "remove-limit": "Видалити ліміт", + "transport-tenant-msg": "Транспортні повідомлення тенанта", + "transport-tenant-telemetry-msg": "Транспортні повідомлення телеметрії тенанта", + "transport-tenant-telemetry-data-points": "Транспортні точки даних телеметрії тенанта", + "transport-device-msg": "Транспортні повідомлення пристрою", + "transport-device-telemetry-msg": "Транспортні повідомлення телеметрії пристрою", + "transport-device-telemetry-data-points": "Транспортні точки даних телеметрії пристрою", + "transport-gateway-msg": "Транспортні повідомлення Gateway", + "transport-gateway-telemetry-msg": "Транспортні повідомлення телеметрії Gateway", + "transport-gateway-telemetry-data-points": "Транспортні точки даних телеметрії Gateway", + "transport-gateway-device-msg": "Транспортні повідомлення пристрою Gateway", + "transport-gateway-device-telemetry-msg": "Транспортні повідомлення телеметрії пристрою Gateway", + "transport-gateway-device-telemetry-data-points": "Транспортні точки даних телеметрії пристрою Gateway", + "sec": "сек" + } + }, + "timeinterval": { + "seconds-interval": "{ seconds, plural, =1 {1 секунда} other {# секунд} }", + "minutes-interval": "{ minutes, plural, =1 {1 хвилина} other {# хвилин} }", + "hours-interval": "{ hours, plural, =1 {1 година} other {# годин} }", + "days-interval": "{ days, plural, =1 {1 день} other {# днів} }", + "days": "Дні", + "hours": "Години", + "minutes": "Хвилини", + "seconds": "Секунди", + "advanced": "Розширені", + "custom": "Користувацький", + "predefined": { + "yesterday": "Вчора", + "day-before-yesterday": "Позавчора", + "this-day-last-week": "Цей день минулого тижня", + "previous-week": "Попередній тиждень (Нд - Сб)", + "previous-week-iso": "Попередній тиждень (Пн - Нд)", + "previous-month": "Попередній місяць", + "previous-quarter": "Попередній квартал", + "previous-half-year": "Попереднє півріччя", + "previous-year": "Попередній рік", + "current-hour": "Поточна година", + "current-day": "Поточний день", + "current-day-so-far": "Поточний день (дотепер)", + "current-week": "Поточний тиждень (Нд - Сб)", + "current-week-iso": "Поточний тиждень (Пн - Нд)", + "current-week-so-far": "Поточний тиждень (дотепер) (Нд - Сб)", + "current-week-iso-so-far": "Поточний тиждень (дотепер) (Пн - Нд)", + "current-month": "Поточний місяць", + "current-month-so-far": "Поточний місяць (дотепер)", + "current-quarter": "Поточний квартал", + "current-quarter-so-far": "Поточний квартал (дотепер)", + "current-half-year": "Поточне півріччя", + "current-half-year-so-far": "Поточне півріччя (дотепер)", + "current-year": "Поточний рік", + "current-year-so-far": "Поточний рік (дотепер)" + }, + "type": { + "week": "Тиждень (Нд - Сб)", + "week-iso": "Тиждень (Пн - Нд)", + "month": "Місяць", + "quarter": "Квартал" + } + }, + "timeunit": { + "milliseconds": "Мілісекунди", + "seconds": "Секунди", + "minutes": "Хвилини", + "hours": "Години", + "days": "Дні" + }, + "timewindow": { + "timewindow": "Часовий інтервал", + "timewindow-settings": "Налаштування часового інтервалу", + "years": "{ years, plural, =1 {1 рік } other {# років } }", + "years-short": "{{ years }}р", + "months": "{ months, plural, =1 {1 місяць } other {# місяців } }", + "months-short": "{{ months }}м", + "weeks": "{ weeks, plural, =1 {1 тиждень } other {# тижнів } }", + "weeks-short": "{{ weeks }}т", + "days": "{ days, plural, =1 {1 день } other {# днів } }", + "days-short": "{{ days }}д", + "hours": "{ hours, plural, =0 { годин } =1 {1 година } other {# годин } }", + "hr": "{{ hr }} год", + "hr-short": "{{ hr }}г", + "minutes": "{ minutes, plural, =0 { хвилин } =1 {1 хвилина } other {# хвилин } }", + "min": "{{ min }} хв", + "min-short": "{{ min }}хв", + "seconds": "{ seconds, plural, =0 { секунд } =1 {1 секунда } other {# секунд } }", + "sec": "{{ sec }} сек", + "sec-short": "{{ sec }}с", + "short": { + "years": "{ years, plural, =1 {1 рік } other {# років } }", + "days": "{ days, plural, =1 {1 день } other {# днів } }", + "hours": "{ hours, plural, =1 {1 година } other {# годин } }", + "minutes": "{{minutes}} хв ", + "seconds": "{{seconds}} сек " + }, + "realtime": "В реальному часі", + "history": "Історія", + "last-prefix": "останні", + "period": "з {{ startTime }} по {{ endTime }}", + "edit": "Редагувати часовий інтервал", + "date-range": "Діапазон дат", + "for-all-time": "На весь час", + "last": "Останні", + "time-period": "Часовий період", + "hide": "Приховати", + "interval": "Інтервал", + "just-now": "Щойно", + "just-now-lower": "щойно", + "ago": "тому", + "style": "Стиль часового інтервалу", + "icon": "Іконка", + "icon-position": "Позиція іконки", + "icon-position-left": "Зліва", + "icon-position-right": "Справа", + "font": "Шрифт", + "color": "Колір", + "displayTypePrefix": "Відображати префікс для В реальному часі/Історія", + "preview": "Попередній перегляд", + "relative": "Відносний", + "range": "Діапазон", + "hide-timewindow-section": "Приховати секцію часового інтервалу для кінцевих користувачів", + "hide-last-interval": "Приховати останній інтервал для кінцевих користувачів", + "hide-relative-interval": "Приховати відносний інтервал для кінцевих користувачів", + "hide-fixed-interval": "Приховати фіксований інтервал для кінцевих користувачів", + "hide-aggregation": "Приховати агрегацію для кінцевих користувачів", + "hide-group-interval": "Приховати інтервал групування для кінцевих користувачів", + "hide-max-values": "Приховати максимальні значення для кінцевих користувачів", + "hide-timezone": "Приховати часовий пояс для кінцевих користувачів", + "disable-custom-interval": "Вимкнути вибір кастомного інтервалу", + "edit-aggregation-functions-list": "Редагувати список агрегаційних функцій", + "edit-aggregation-functions-list-hint": "Можна вказати список доступних опцій.", + "allowed-aggregation-functions": "Дозволені агрегаційні функції", + "edit-intervals-list": "Редагувати список інтервалів", + "allowed-agg-intervals": "Інтервали групування", + "default-agg-interval": "За замовчуванням інтервал групування", + "edit-intervals-list-hint": "Можна вказати список доступних опцій інтервалів.", + "edit-grouping-intervals-list-hint": "Можна налаштувати список інтервалів групування та інтервал групування за замовчуванням.", + "all": "Усі" + }, + "tooltip": { + "trigger": "Тригер", + "trigger-point": "Точка", + "trigger-axis": "Вісь", + "label": "Маркування", + "value": "Значення", + "date": "Дата", + "show-date-time-interval": "Показати інтервал дати та часу", + "show-date-time-interval-hint": "Показати інтервал дати та часу відповідно до агрегації даних.", + "hide-zero-tooltip-values": "Приховати значення нуля", + "show-stack-total": "Показати загальну суму в режимі стеку", + "background-color": "Колір фону", + "background-blur": "Розмиття фону" + }, + "unit": { + "set-unit-conversion": "Встановити перетворення одиниць", + "unit-settings": { + "unit-settings": "Налаштування одиниць", + "source-unit": "Одиниця вимірювання джерела", + "source-unit-hint": "Це одиниця збереженого значення. Одиниця, з якої ви конвертуєте. Введіть символ, який використовує ваші вхідні дані (наприклад, м, км, фут, дюйм).", + "target-metric-unit": "Цільова метрична одиниця", + "target-metric-unit-hint": "Виберіть, в яку метричну одиницю (SI) ви хочете перетворити ваше значення (наприклад, см, мм, км).", + "target-imperial-unit": "Цільова імперська одиниця", + "target-imperial-unit-hint": "Виберіть, в яку імперську одиницю ви хочете перетворити ваше значення (наприклад, дюйм, фут, ярд).", + "target-hybrid-unit": "Цільова гібридна одиниця", + "target-hybrid-unit-hint": "Виберіть, в яку гібридну одиницю ви хочете перетворити ваше значення (наприклад, см, дюйм, км). Гібридні одиниці поєднують метричні або імперські одиниці.", + "enable-unit-conversion": "Увімкнути перетворення одиниць", + "enable-unit-conversion-hint": "Увімкніть для активації перетворення. Коли вимкнено, ваше значення передається без змін. Вимкнено, якщо в групі вимірювання є тільки одна одиниця (наприклад, світловий потік, AQI)." + }, + "unit-system": "Система одиниць", + "unit-system-type": { + "AUTO": "Авто", + "METRIC": "Метрична", + "IMPERIAL": "Імперська", + "HYBRID": "Гібридна" + }, + "measures": { + "absorbed-dose-rate": "Швидкість поглиненої дози", + "acceleration": "Прискорення", + "acidity": "Кислотність", + "air-quality-index": "Індекс якості повітря", + "amount-of-substance": "Кількість речовини", + "angle": "Кут", + "angular-acceleration": "Кутове прискорення", + "area": "Площа", + "area-density": "Щільність площі", + "capacitance": "Ємність", + "catalytic-activity": "Каталітична активність", + "catalytic-concentration": "Каталітична концентрація", + "charge": "Заряд", + "current-density": "Щільність струму", + "data-transfer-rate": "Швидкість передачі даних", + "density": "Щільність", + "digital": "Цифровий", + "dimension-ratio": "Відношення розмірів", + "dynamic-viscosity": "Динамічна в'язкість", + "earthquake-magnitude": "Магнітуда землетрусу", + "electric-charge-density": "Щільність електричного заряду", + "electric-current": "Електричний струм", + "electric-dipole-moment": "Електричний дипольний момент", + "electric-field-strength": "Сила електричного поля", + "electric-flux": "Електричний потік", + "electric-permittivity": "Електрична проникність", + "electric-polarizability": "Електрична поляризованість", + "electrical-conductance": "Електрична провідність", + "electrical-conductivity": "Електрична провідність", + "energy": "Енергія", + "energy-density": "Щільність енергії", + "force": "Сила", + "frequency": "Частота", + "fuel-efficiency": "Ефективність пального", + "heat-capacity": "Теплова ємність", + "illuminance": "Освітленість", + "inductance": "Індуктивність", + "kinematic-viscosity": "Кінематична в'язкість", + "length": "Довжина", + "light-exposure": "Освітлення", + "linear-charge-density": "Лінійна щільність заряду", + "logarithmic-ratio": "Логарифмічне відношення", + "luminous-efficacy": "Світлова ефективність", + "luminous-flux": "Світловий потік", + "luminous-intensity": "Світлова інтенсивність", + "magnetic-field-gradient": "Градієнт магнітного поля", + "magnetic-flux": "Магнітний потік", + "magnetic-flux-density": "Щільність магнітного потоку", + "magnetic-moment": "Магнітний момент", + "magnetic-permeability": "Магнітна проникність", + "mass": "Маса", + "mass-fraction": "Масова частка", + "molar-concentration": "Молярна концентрація", + "molar-energy": "Молярна енергія", + "molar-heat-capacity": "Молярна теплова ємність", + "molar-mass": "Молярна маса", + "number-concentration": "Числова концентрація", + "parts-per-million": "Частки на мільйон", + "power": "Потужність", + "power-density": "Щільність потужності", + "pressure": "Тиск", + "radiance": "Радіація", + "radiant-intensity": "Світлова інтенсивність", + "radiation-dose": "Доза радіації", + "radioactive-decay": "Радіоактивний розпад", + "radioactivity": "Радіоактивність", + "radioactivity-concentration": "Концентрація радіоактивності", + "reciprocal-length": "Обернена довжина", + "resistance": "Опір", + "reynolds-number": "Число Рейнольдса", + "signal-level": "Рівень сигналу", + "solid-angle": "Твердий кут", + "specific-energy": "Специфічна енергія", + "specific-heat-capacity": "Специфічна теплова ємність", + "specific-humidity": "Специфічна вологість", + "specific-volume": "Специфічний об'єм", + "speed": "Швидкість", + "surface-charge-density": "Щільність поверхневого заряду", + "surface-tension": "Поверхневий натяг", + "temperature": "Температура", + "thermal-conductivity": "Теплопровідність", + "time": "Час", + "torque": "Момент сили", + "turbidity": "Помутніння", + "voltage": "Напруга", + "volume": "Об'єм", + "volume-flow": "Об'ємний потік" + }, + "millimeter": "Міліметр", + "centimeter": "Сантиметр", + "decimeter": "Дециметр", + "angstrom": "Анґстром", + "nanometer": "Нанометр", + "micrometer": "Мікрометр", + "meter": "Метр", + "kilometer": "Кілометр", + "inch": "Дюйм", + "foot": "Фут", + "foot-us": "Фут (американський)", + "yard": "Ярд", + "mile": "Миля", + "nautical-mile": "Морська миля", + "astronomical-unit": "Астрономічна одиниця", + "reciprocal-metre": "Обернений метр", + "meter-per-meter": "Метр на метр", + "steradian": "Стеріадіан", + "thou": "Тисяча частка дюйма", + "barleycorn": "Ячмінне зерно", + "hand": "Долоня", + "chain": "Ланка", + "furlong": "Ферлонг", + "league": "Ліга", + "fathom": "Фатом", + "cable": "Кабель", + "link": "Ланка", + "rod": "Сталевий стрижень", + "nanogram": "Нанограм", + "microgram": "Мікрограм", + "milligram": "Міліграм", + "gram": "Грам", + "kilogram": "Кілограм", + "tonne": "Тонна", + "ounce": "Унція", + "pound": "Фунт", + "stone": "Стоун", + "hundredweight-count": "Стоунове навантаження", + "short-tons": "Коротка тонна", + "dalton": "Дальтон", + "grain": "Зерно", + "drachm": "Драхма", + "quarter": "Четвертина", + "slug": "Слідження", + "carat": "Карат", + "cubic-millimeter": "Кубічний міліметр", + "cubic-centimeter": "Кубічний сантиметр", + "cubic-meter": "Кубічний метр", + "cubic-kilometer": "Кубічний кілометр", + "microliter": "Мікролітр", + "milliliter": "Мілілітр", + "liter": "Літр", + "hectoliter": "Гектолітр", + "cubic-inch": "Кубічний дюйм", + "cubic-foot": "Кубічний фут", + "cubic-yard": "Кубічний ярд", + "fluid-ounce": "Рідка унція", + "fluid-ounce-per-second": "Рідка унція на секунду", + "pint": "Пінта", + "quart": "Кварт", + "gallon": "Галон", + "oil-barrels": "Насосна бочка", + "cubic-meter-per-kilogram": "Кубічний метр на кілограм", + "gill": "Жил", + "hogshead": "Гоксхед", + "teaspoon": "Чайна ложка", + "tablespoon": "Столова ложка", + "cup": "Чашка", + "celsius": "Цельсій", + "kelvin": "Кельвін", + "rankine": "Ранкін", + "fahrenheit": "Фаренгейт", + "percent": "Відсоток", + "meter-per-second": "Метр на секунду", + "kilometer-per-hour": "Кілометр на годину", + "foot-per-second": "Фут на секунду", + "foot-per-minute": "Фут на хвилину", + "mile-per-hour": "Миля на годину", + "knot": "Вузол", + "inch-per-second": "Дюйм на секунду", + "inch-per-hour": "Дюйм на годину", + "millimeters-per-minute": "Міліметри на хвилину", + "meter-per-minute": "Метр на хвилину", + "kilometer-per-hour-squared": "Кілометр на годину в квадраті", + "foot-per-second-squared": "Фут на секунду в квадраті", + "pascal": "Паскаль", + "kilopascal": "Кілопаскаль", + "megapascal": "Мегапаскаль", + "gigapascal": "Гігапаскаль", + "millibar": "Міллібар", + "bar": "Бар", + "kilobar": "Кілобар", + "newton": "Ньютон", + "newton-meter": "Ньютон-метр", + "foot-pounds": "Фут-фунти", + "inch-pounds": "Дюйм-фунти", + "newton-per-meter": "Ньютон на метр", + "atmospheres": "Атмосфери", + "pounds-per-square-inch": "Фунти на квадратний дюйм", + "kilopound-per-square-inch": "Кілопаунд на квадратний дюйм", + "torr": "Торр", + "inches-of-mercury": "Дюйми ртуті", + "pascal-per-square-meter": "Паскаль на квадратний метр", + "pound-per-square-inch": "Фунт на квадратний дюйм", + "newton-per-square-meter": "Ньютон на квадратний метр", + "kilogram-force-per-square-meter": "Кілограм-сила на квадратний метр", + "pascal-per-square-centimeter": "Паскаль на квадратний сантиметр", + "ton-force-per-square-inch": "Тонна-сила на квадратний дюйм", + "kilonewton-per-square-meter": "КілоНьютон на квадратний метр", + "newton-per-square-millimeter": "Ньютон на квадратний міліметр", + "microjoule": "Мікроджоуль", + "millijoule": "Міліджоуль", + "joule": "Джоуль", + "kilojoule": "Кілоджоуль", + "megajoule": "Мегаджоуль", + "gigajoule": "Гігаджоуль", + "watt-hour": "Ват-година", + "watt-minute": "Ват-кілька хвилин", + "kilowatt-hour": "Кіловат-година", + "milliwatt-hour": "Міліват-година", + "megawatt-hour": "Мегават-година", + "gigawatt-hour": "ГігаВат-година", + "electron-volts": "Електронвольти", + "joules-per-coulomb": "Джоулі на кулон", + "british-thermal-unit": "Британська теплова одиниця", + "thousand-british-thermal-unit": "Тисяча британських теплових одиниць", + "million-british-thermal-unit": "Мільйон британських теплових одиниць", + "foot-pound": "Фут-фунт", + "calorie": "Калорія", + "small-calorie": "Мала калорія", + "kilocalorie": "Кілокалорія", + "joule-per-kelvin": "Джоуль на кельвін", + "joule-per-kilogram-kelvin": "Джоуль на кілограм-кельвін", + "joule-per-kilogram": "Джоуль на кілограм", + "watt-per-meter-kelvin": "Ват на метр-кельвін", + "joule-per-cubic-meter": "Джоуль на кубічний метр", + "therm": "Терм", + "electric-dipole-moment": "Електричний дипольний момент", + "magnetic-dipole-moment": "Магнітний дипольний момент", + "debye": "Дебай", + "coulomb-per-square-meter-per-volt": "Кулон на квадратний метр на вольт", + "milliwatt": "Міліват", + "microwatt": "Мікроват", + "watt": "Ват", + "kilowatt": "Кіловат", + "megawatt": "Мегават", + "gigawatt": "ГігаВат", + "metric-horsepower": "Метична кінська сила", + "milliwatt-per-square-centimeter": "Мілівати на квадратний сантиметр", + "watt-per-square-centimeter": "Вати на квадратний сантиметр", + "kilowatt-per-square-centimeter": "Кіловати на квадратний сантиметр", + "milliwatt-per-square-meter": "Мілівати на квадратний метр", + "watt-per-square-meter": "Вати на квадратний метр", + "kilowatt-per-square-meter": "Кіловати на квадратний метр", + "watt-per-square-inch": "Вати на квадратний дюйм", + "kilowatt-per-square-inch": "Кіловати на квадратний дюйм", + "horsepower": "Кінська сила", + "btu-per-hour": "Британські теплові одиниці на годину", + "btu-per-second": "Британські теплові одиниці на секунду", + "btu-per-day": "Британські теплові одиниці на день", + "mbtu-per-hour": "Тисяча британських теплових одиниць на годину", + "mbtu-per-second": "Тисяча британських теплових одиниць на секунду", + "mbtu-per-day": "Тисяча британських теплових одиниць на день", + "mmbtu-per-hour": "Мільйон британських теплових одиниць на годину", + "mmbtu-per-second": "Мільйон британських теплових одиниць на секунду", + "mmbtu-per-day": "Мільйон британських теплових одиниць на день", + "foot-pound-per-second": "Фут-фунт на секунду", + "coulomb": "Кулон", + "millicoulomb": "Мілікулон", + "microcoulomb": "Мікрокулон", + "nanocoulomb": "Нанокулон", + "picocoulomb": "Пікохулон", + "coulomb-per-meter": "Кулон на метр", + "coulomb-per-cubic-meter": "Кулон на кубічний метр", + "coulomb-per-square-meter": "Кулон на квадратний метр", + "square-millimeter": "Квадратний міліметр", + "square-centimeter": "Квадратний сантиметр", + "square-meter": "Квадратний метр", + "hectare": "Гектар", + "square-kilometer": "Квадратний кілометр", + "square-inch": "Квадратний дюйм", + "square-foot": "Квадратний фут", + "square-yard": "Квадратний ярд", + "acre": "Акр", + "square-mile": "Квадратна миля", + "are": "Ар", + "barn": "Барн", + "circular-inch": "Круглий дюйм", + "milliampere-hour": "Міліампер-година", + "ampere-hours": "Ампер-години", + "kiloampere-hours": "Кілоампер-години", + "nanoampere": "Наноампер", + "picoampere": "Пікоампер", + "microampere": "Мікроампер", + "milliampere": "Міліампер", + "ampere": "Ампер", + "kiloampere": "Кілоампер", + "megaampere": "Мегаампер", + "gigaampere": "Гігаампер", + "microampere-per-square-centimeter": "Мікроампер на квадратний сантиметр", + "ampere-per-square-meter": "Ампер на квадратний метр", + "ampere-per-meter": "Ампер на метр", + "oersted": "Ерстед", + "bohr-magneton": "Магнетон Бора", + "ampere-meter-squared": "Ампер-метр в квадраті", + "nanovolt": "Нановольт", + "picovolt": "Піковольт", + "millivolt": "Мілівольт", + "microvolt": "Мікровольт", + "volt": "Вольт", + "kilovolt": "Кіловольт", + "megavolt": "Мегавольт", + "dbmV": "Децибел вольт", + "dbm": "Децибел-міліват", + "volt-meter": "Вольт-метр", + "kilovolt-meter": "Кіловольт-метр", + "megavolt-meter": "Мегавольт-метр", + "microvolt-meter": "Мікровольт-метр", + "millivolt-meter": "Мілівольт-метр", + "nanovolt-meter": "Нановольт-метр", + "ohm": "Ом", + "microohm": "Мікроом", + "milliohm": "Міліом", + "kilohm": "Кілоом", + "megohm": "Мегаом", + "gigohm": "Гігаом", + "millihertz": "Мілігерц", + "hertz": "Герц", + "kilohertz": "Кілогерц", + "megahertz": "Мегагерц", + "gigahertz": "Гігагерц", + "terahertz": "Терагерц", + "rpm": "Обертів на хвилину", + "candela-per-square-meter": "Кандела на квадратний метр", + "candela": "Кандела", + "lumen": "Люмен", + "lux": "Люкси", + "foot-candle": "Фут-кандела", + "lumen-per-square-meter": "Люмен на квадратний метр", + "lux-second": "Люкс-секунда", + "lumen-second": "Люмен-секунда", + "lumens-per-watt": "Люмен на ват", + "mole": "Моль", + "nanomole": "Наномоль", + "micromole": "Мікромоль", + "millimole": "Мілімоль", + "kilomole": "Кіломоль", + "mole-per-cubic-meter": "Моль на кубічний метр", + "rssi": "Індикатор сили отриманого сигналу", + "ppm": "Частки на мільйон", + "ppb": "Частки на мільярд", + "micrograms-per-cubic-meter": "Мікрограми на кубічний метр", + "aqi": "Індекс якості повітря", + "gram-per-cubic-meter": "Грам на кубічний метр", + "gram-per-kilogram": "Грам на кілограм", + "millimeters-per-second": "Міліметри на секунду", + "neper": "Непер", + "bel": "Бел", + "decibel": "Децибел", + "meters-per-second-squared": "Метри на секунду в квадраті", + "becquerel": "Беккерель", + "curie": "Кюрі", + "gray": "Грей", + "sievert": "Зіверт", + "roentgen": "Рентген", + "cps": "Лічильник на секунду", + "rad": "Рад", + "rem": "Рем", + "dps": "Розпади на секунду", + "rutherford": "Резерфорд", + "coulombs-per-kilogram": "Кулони на кілограм", + "becquerels-per-cubic-meter": "Беккерелі на кубічний метр", + "curies-per-liter": "Кюрі на літр", + "becquerels-per-second": "Беккерелі на секунду", + "curies-per-second": "Кюрі на секунду", + "gy-per-second": "Грей на секунду", + "watt-per-steradian": "Ват на стерадіан", + "watt-per-square-metre-steradian": "Ват на квадратний метр-стерадіан", + "ph-level": "Рівень pH", + "turbidity": "Помутніння", + "mg-per-liter": "Міліграми на літр", + "microsiemens-per-centimeter": "Мікросіменс на сантиметр", + "millisiemens-per-meter": "Мілісіменс на метр", + "siemens-per-meter": "Сіменс на метр", + "kilogram-per-cubic-meter": "Кілограм на кубічний метр", + "gram-per-cubic-centimeter": "Грам на кубічний сантиметр", + "kilogram-per-square-meter": "Кілограм на квадратний метр", + "milligram-per-milliliter": "Міліграм на мілілітр", + "milligram-per-cubic-meter": "Міліграм на кубічний метр", + "pound-per-cubic-foot": "Фунт на кубічний фут", + "ounces-per-cubic-inch": "Унції на кубічний дюйм", + "tons-per-cubic-yard": "Тонни на кубічний ярд", + "particle-density": "Щільність частинок", + "kilometers-per-liter": "Кілометри на літр", + "miles-per-gallon": "Милі на галон", + "liters-per-100-km": "Літри на 100 км", + "gallons-per-mile": "Галони на милю", + "liters-per-hour": "Літри на годину", + "gallons-per-hour": "Галони на годину", + "beats-per-minute": "Удари на хвилину", + "millimeters-of-mercury": "Міліметри ртуті", + "milligrams-per-deciliter": "Міліграми на декалітр", + "g-force": "Сила тяжіння", + "kilonewton": "Кілоньютон", + "kilogram-force": "Кілограм-сила", + "pound-force": "Фунт-сила", + "kilopound-force": "Кілопаунд-сила", + "dyne": "Дина", + "poundal": "Паундал", + "kip": "Кіп", + "gal": "Гал", + "gravity": "Гравітація", + "hectopascal": "Гектопаскаль", + "atmosphere": "Атмосфера", + "millibars": "Мілібари", + "inch-of-mercury": "Один дюйм ртуті", + "richter-scale": "Шкала Ріхтера", + "nanosecond": "Наносекунда", + "microsecond": "Мікросекунда", + "millisecond": "Мілісекунда", + "second": "Секунда", + "minute": "Хвилина", + "hour": "Година", + "day": "День", + "week": "Тиждень", + "month": "Місяць", + "year": "Рік", + "cubic-foot-per-minute": "Кубічний фут на хвилину", + "cubic-meters-per-hour": "Кубічні метри на годину", + "cubic-meters-per-second": "Кубічні метри на секунду", + "liter-per-second": "Літр на секунду", + "liter-per-minute": "Літр на хвилину", + "gallons-per-minute": "Галони на хвилину", + "cubic-foot-per-second": "Кубічний фут на секунду", + "milliliters-per-minute": "Мілілітри на хвилину", + "cubic-decimeter-per-second": "Кубічний дециметр на секунду", + "bit": "Біт", + "byte": "Байт", + "kilobyte": "Кілобайт", + "megabyte": "Мегабайт", + "gigabyte": "Гігабайт", + "terabyte": "Терабайт", + "petabyte": "Петабайт", + "exabyte": "Екзабайт", + "zettabyte": "Зетабайт", + "yottabyte": "Йоттабайт", + "bit-per-second": "Біт на секунду", + "kilobit-per-second": "Кілобіт на секунду", + "megabit-per-second": "Мегабіт на секунду", + "gigabit-per-second": "Гігабіт на секунду", + "terabit-per-second": "Терабіт на секунду", + "byte-per-second": "Байт на секунду", + "kilobyte-per-second": "Кілобайт на секунду", + "megabyte-per-second": "Мегабайт на секунду", + "gigabyte-per-second": "Гігабайт на секунду", + "degree": "Градус", + "radian": "Радіан", + "gradian": "Градіан", + "arcminute": "Кутова хвилина", + "arcsecond": "Кутова секунда", + "milliradian": "Мілірадіан", + "revolution": "Оберт", + "siemens": "Сіменс", + "millisiemens": "Мілісіменс", + "microsiemens": "Мікросіменс", + "kilosiemens": "Кілосіменс", + "megasiemens": "Мегасіменс", + "gigasiemens": "Гігасіменс", + "farad": "Фарад", + "millifarad": "Міліфарад", + "microfarad": "Мікрофарад", + "nanofarad": "Нанофарад", + "picofarad": "Пікофарад", + "kilofarad": "Кілофарад", + "megafarad": "Мегафарад", + "gigafarad": "Гігафарад", + "terfarad": "Терафарад", + "farad-per-meter": "Фарад на метр", + "tesla": "Тесла", + "gauss": "Гаусс", + "kilogauss": "Кілогаусс", + "millitesla": "Мілітесла", + "microtesla": "Мікротесла", + "nanotesla": "Нанотесла", + "kilotesla": "Кілотесла", + "megatesla": "Мегатесла", + "millitesla-square-meters": "Мілітесла на квадратний метр", + "gamma": "Гамма", + "lambda": "Лямбда", + "square-meter-per-second": "Квадратний метр на секунду", + "square-centimeter-per-second": "Квадратний сантиметр на секунду", + "stoke": "Сток", + "centistokes": "Центісток", + "square-foot-per-second": "Квадратний фут на секунду", + "square-inch-per-second": "Квадратний дюйм на секунду", + "pascal-second": "Паскаль-секунда", + "centipoise": "Центіпуаз", + "poise": "Пуаз", + "reynolds": "Рейнольдс", + "pound-per-foot-hour": "Фунт на фут-годину", + "newton-second-per-square-meter": "Ньютон-секунда на квадратний метр", + "dyne-second-per-square-centimeter": "Дина-секунда на квадратний сантиметр", + "kilogram-per-meter-second": "Кілограм на метр-секунду", + "tesla-square-meters": "Тесла на квадратний метр", + "maxwell": "Максвелл", + "tesla-per-meter": "Тесла на метр", + "gauss-per-centimeter": "Гаусс на сантиметр", + "weber": "Вебер", + "microweber": "Мікровебер", + "milliweber": "Мілівебер", + "gauss-square-centimeter": "Гаусс на квадратний сантиметр", + "kilogauss-square-centimeter": "Кілогаусс на квадратний сантиметр", + "henry": "Генрі", + "millihenry": "Мілігенрі", + "microhenry": "Мікрогенрі", + "nanohenry": "Наногенрі", + "henry-per-meter": "Генрі на метр", + "tesla-meter-per-ampere": "Тесла на метр на ампер", + "gauss-per-oersted": "Гаусс на ерстед", + "kilogram-per-mole": "Кілограм на моль", + "gram-per-mole": "Грам на моль", + "milligram-per-mole": "Міліграм на моль", + "joule-per-mole": "Джоуль на моль", + "joule-per-mole-kelvin": "Джоуль на моль-кельвін", + "millivolts-per-meter": "Мілівольти на метр", + "volts-per-meter": "Вольти на метр", + "kilovolts-per-meter": "Кіловольти на метр", + "radian-per-second": "Радіан на секунду", + "radian-per-second-squared": "Радіан на секунду в квадраті", + "revolutions-per-minute-per-second": "Кутове прискорення", + "deg-per-second": "Градуси на секунду", + "rotation-per-minute": "Обертів на хвилину", + "degrees-brix": "Градуси Брикса", + "katal": "Катал", + "katal-per-cubic-metre": "Катал на кубічний метр", + "paris-inch": "Паризький дюйм" + }, + "user": { + "user": "Користувач", + "users": "Користувачі", + "customer-users": "Користувачі клієнтів", + "tenant-admins": "Адміни тенантів", + "sys-admin": "Системний адміністратор", + "tenant-admin": "Адміністратор тенанта", + "customer": "Клієнт", + "anonymous": "Анонім", + "add": "Додати користувача", + "delete": "Видалити користувача", + "add-user-text": "Додати нового користувача", + "no-users-text": "Користувачі не знайдені", + "user-details": "Деталі користувача", + "delete-user-title": "Ви впевнені, що хочете видалити користувача '{{userEmail}}'?", + "delete-user-text": "Будьте обережні, після підтвердження користувач і всі пов'язані з ним дані стануть невідновлювальними.", + "delete-users-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 користувача} other {# користувачів} }?", + "delete-users-action-title": "Видалити { count, plural, =1 {1 користувача} other {# користувачів} }", + "delete-users-text": "Будьте обережні, після підтвердження всі вибрані користувачі будуть видалені, і всі пов'язані з ними дані стануть невідновлювальними.", + "activation-email-sent-message": "Лист активації було успішно надіслано!", + "resend-activation": "Переслати активацію", + "email": "Електронна пошта", + "email-required": "Електронна пошта обов'язкова.", + "invalid-email-format": "Невірний формат електронної пошти.", + "first-name": "Ім'я", + "last-name": "Прізвище", + "description": "Опис", + "default-dashboard": "Дефолтний дашборд", + "always-fullscreen": "Завжди на повний екран", + "select-user": "Вибрати користувача", + "no-users-matching": "Користувачі, що відповідають '{{entity}}', не знайдені.", + "user-required": "Користувач обов'язковий", + "activation-method": "Метод активації", + "display-activation-link": "Показати посилання для активації", + "send-activation-mail": "Надіслати лист активації", + "activation-link": "Посилання для активації користувача", + "activation-link-text": "Для активації користувача використовуйте наступне посилання для активації (термін дії закінчується через {{activationLinkTtl}}) :", + "copy-activation-link": "Копіювати посилання для активації", + "activation-link-copied-message": "Посилання для активації користувача було скопійовано в буфер обміну", + "details": "Деталі", + "login-as-tenant-admin": "Увійти як адміністратор тенанта", + "login-as-customer-user": "Увійти як користувач клієнта", + "search": "Шукати користувачів", + "selected-users": "{ count, plural, =1 {1 користувач} other {# користувачів} } вибрано", + "disable-account": "Вимкнути обліковий запис користувача", + "enable-account": "Увімкнути обліковий запис користувача", + "enable-account-message": "Обліковий запис користувача було успішно увімкнено!", + "disable-account-message": "Обліковий запис користувача було успішно вимкнено!", + "copyId": "Копіювати Id користувача", + "idCopiedMessage": "Id користувача було скопійовано в буфер обміну", + "user-list": "Список користувачів", + "user-list-required": "Список користувачів обов'язковий" + }, + "value": { + "type": "Тип значення", + "string": "Рядок", + "string-value": "Значення рядка", + "string-value-required": "Значення рядка обов'язкове", + "integer": "Ціле число", + "integer-value": "Значення цілого числа", + "integer-value-required": "Значення цілого числа обов'язкове", + "invalid-integer-value": "Невірне значення цілого числа", + "double": "Число з плаваючою комою", + "double-value": "Значення числа з плаваючою комою", + "double-value-required": "Значення числа з плаваючою комою обов'язкове", + "boolean": "Булевий тип", + "boolean-value": "Значення булевого типу", + "false": "Хибне", + "true": "Істинне", + "long": "Довге ціле число", + "json": "JSON", + "json-value": "Значення JSON", + "json-value-invalid": "Невірний формат значення JSON", + "json-value-required": "Значення JSON обов'язкове." + }, + "version-control": { + "version-control": "Керування версіями", + "management": "Управління керуванням версіями", + "search": "Шукати версії", + "branch": "Гілка", + "default": "За замовчуванням", + "select-branch": "Вибрати гілку", + "branch-required": "Гілка обов'язкова", + "create-entity-version": "Створити версію сутності", + "version-name": "Назва версії", + "version-name-required": "Назва версії обов'язкова", + "author": "Автор", + "export-relations": "Експортувати зв'язки", + "export-attributes": "Експортувати атрибути", + "export-credentials": "Експортувати облікові дані", + "export-calculated-fields": "Експортувати розрахункові поля \nта правила тривог", + "entity-versions": "Версії сутностей", + "versions": "Версії", + "created-time": "Час створення", + "version-id": "ID версії", + "no-entity-versions-text": "Версії сутностей не знайдено", + "no-versions-text": "Версії не знайдено", + "copy-full-version-id": "Копіювати повний ID версії", + "create-version": "Створити версію", + "creating-version": "Створення версії... Будь ласка, зачекайте", + "nothing-to-commit": "Немає змін для коміту", + "restore-version": "Відновити версію", + "restore-entity-from-version": "Відновити сутність з версії '{{versionName}}'", + "restoring-entity-version": "Відновлення версії сутності... Будь ласка, зачекайте", + "load-relations": "Завантажити зв'язки", + "load-attributes": "Завантажити атрибути", + "load-credentials": "Завантажити облікові дані", + "load-calculated-fields": "Завантажити розрахункові поля та правила тривог", + "compare-with-current": "Порівняти з поточною", + "diff-entity-with-version": "Порівняти з версією сутності '{{versionName}}'", + "previous-difference": "Попередня різниця", + "next-difference": "Наступна різниця", + "current": "Поточний", + "differences": "{ count, plural, =1 {1 різниця} other {# різниць} }", + "create-entities-version": "Створити версію сутностей", + "default-sync-strategy": "Стратегії синхронізації за замовчуванням", + "sync-strategy-merge": "Злиття", + "sync-strategy-overwrite": "Перезаписати", + "entities-to-export": "Сутності для експорту", + "entities-to-restore": "Сутності для відновлення", + "sync-strategy": "Стратегія синхронізації", + "all-entities": "Усі сутності", + "no-entities-to-export-prompt": "Будь ласка, вкажіть сутності для експорту", + "no-entities-to-restore-prompt": "Будь ласка, вкажіть сутності для відновлення", + "add-entity-type": "Додати тип сутності", + "remove-all": "Видалити все", + "version-create-result": "{ added, plural, =0 {Сутності не додано} =1 {1 сутність} other {# сутностей} } додано.
{ modified, plural, =0 {Сутності не змінено} =1 {1 сутність} other {# сутностей} } змінено.
{ removed, plural, =0 {Сутності не видалено} =1 {1 сутність} other {# сутностей} } видалено.", + "remove-other-entities": "Видалити інші сутності", + "find-existing-entity-by-name": "Знайти існуючу сутність за назвою", + "restore-entities-from-version": "Відновити сутності з версії '{{versionName}}'", + "restoring-entities-from-version": "Відновлення сутностей... Будь ласка, зачекайте", + "no-entities-restored": "Сутності не відновлено", + "created": "{{created}} створено", + "updated": "{{updated}} оновлено", + "deleted": "{{deleted}} видалено", + "remove-other-entities-confirm-text": "Будьте обережні! Це постійно видалить всі поточні сутності,
яких немає у версії, яку ви хочете відновити.

Будь ласка, введіть \"remove other entities\" для підтвердження.", + "auto-commit-to-branch": "автоматичний коміт в гілку {{ branch }}", + "default-create-entity-version-name": "{{entityName}} оновлення", + "sync-strategy-merge-hint": "Створює або оновлює вибрані сутності в репозиторії. Інші сутності в репозиторії не змінюються.", + "sync-strategy-overwrite-hint": "Створює або оновлює вибрані сутності в репозиторії. Інші сутності в репозиторії видаляються.", + "device-credentials-conflict": "Не вдалося завантажити пристрій з зовнішнім ID {{entityId}}
через те, що такі ж облікові дані вже є в базі даних для іншого пристрою.
Будь ласка, розгляньте можливість вимкнення параметра завантажити облікові дані у формі відновлення.", + "missing-referenced-entity": "Не вдалося завантажити {{sourceEntityTypeName}} з зовнішнім ID {{sourceEntityId}}
тому що вона посилається на відсутню {{targetEntityTypeName}} з ID {{targetEntityId}}.", + "runtime-failed": "Не вдалося: {{message}}", + "auto-commit-settings-read-only-hint": "Функція автоматичного коміту не працює з увімкненою опцією лише для читання в налаштуваннях репозиторію.", + "rollback-on-error": "Откат при помилці", + "rollback-on-error-hint": "Якщо вам потрібно відновити велику кількість сутностей, рекомендується вимкнути цю опцію для підвищення продуктивності.\n Зверніть увагу, якщо виникне помилка під час завантаження версії, вже збережені сутності (з відносинами, атрибутами тощо) залишаться без змін." + }, + "widget": { + "widget-library": "Бібліотека віджетів", + "widget-bundle": "Набір віджетів", + "all-bundles": "Всі набори", + "select-widgets-bundle": "Вибрати набір віджетів", + "widgets": "Віджети", + "all-widgets": "Усі віджети", + "widget": "Віджет", + "select-widget": "Вибрати віджет", + "no-widgets-matching": "Віджети, що відповідають '{{entity}}', не знайдено.", + "no-widgets": "Віджетів поки що немає", + "no-widgets-text": "Віджетів не знайдено", + "management": "Управління віджетами", + "editor": "Редактор віджетів", + "confirm-to-exit-editor-html": "У вас є незбережені налаштування віджета.
Ви впевнені, що хочете залишити цю сторінку?", + "widget-type-not-found": "Проблема з завантаженням конфігурації віджета.
Ймовірно, асоційований\n тип віджета був видалений.", + "widget-type-load-error": "Віджет не було завантажено через наступні помилки:", + "remove": "Видалити віджет", + "delete": "Видалити віджет", + "edit": "Редагувати віджет", + "remove-widget-title": "Ви впевнені, що хочете видалити віджет '{{widgetTitle}}'?", + "remove-widget-text": "Після підтвердження віджет і всі пов'язані з ним дані стануть невідновлювальними.", + "replace-reference-with-widget-copy": "Замінити посилання на копію віджета", + "timeseries": "Часовий ряд", + "search-data": "Шукати дані", + "no-data-found": "Дані не знайдені", + "latest": "Останні значення", + "rpc": "Керувати віджетом", + "alarm": "Віджет тривоги", + "static": "Статичний віджет", + "timeseries-short": "ряд", + "latest-short": "останні", + "rpc-short": "керування", + "alarm-short": "тривога", + "static-short": "статичний", + "select-widget-type": "Вибрати тип віджета", + "missing-widget-title-error": "Назва віджета повинна бути вказана!", + "widget-saved": "Віджет збережено", + "unable-to-save-widget-error": "Не вдалося зберегти віджет! Віджет містить помилки!", + "save": "Зберегти віджет", + "saveAs": "Зберегти віджет як", + "move": "Перемістити віджет", + "save-widget-as": "Зберегти віджет як", + "save-widget-as-text": "Будь ласка, введіть нову назву віджета", + "toggle-fullscreen": "Перемкнути на повний екран", + "run": "Запустити віджет", + "widget-title": "Назва віджета", + "title": "Назва", + "title-required": "Назва віджета обов'язкова.", + "title-max-length": "Назва повинна бути менше 256 символів", + "system": "Система", + "type": "Тип віджета", + "resources": "Ресурси", + "resource-url": "URL JavaScript/CSS", + "resource-is-extension": "Є розширенням", + "remove-resource": "Видалити ресурс", + "add-resource": "Додати ресурс", + "html": "HTML", + "tidy": "Упорядкувати", + "css": "CSS", + "settings-form": "Форма налаштувань", + "data-key-settings-form": "Форма налаштувань ключа даних", + "latest-data-key-settings-form": "Форма налаштувань ключа останніх даних", + "widget-settings": "Налаштування віджета", + "description": "Опис", + "tags": "Теги", + "image-preview": "Попередній перегляд зображення", + "settings-form-selector": "Вибір форми налаштувань", + "data-key-settings-form-selector": "Вибір форми налаштувань ключа даних", + "latest-data-key-settings-form-selector": "Вибір форми налаштувань ключа останніх даних", + "all": "Усі", + "actual": "Актуальний", + "scada": "SCADA символ", + "deprecated": "Застарілий", + "has-basic-mode": "Має базовий режим", + "basic-mode-form-selector": "Вибір форми базового режиму", + "basic-mode": "Базовий", + "advanced-mode": "Розширений", + "javascript": "Javascript", + "js": "JS", + "delete-widget-title": "Ви впевнені, що хочете видалити віджет '{{widgetName}}'?", + "delete-widget-text": "Після підтвердження віджет і всі пов'язані з ним дані стануть невідновлювальними.", + "delete-widgets-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 віджет} other {# віджетів} }?", + "delete-widgets-text": "Будьте обережні, після підтвердження всі вибрані віджети будуть видалені, і всі пов'язані з ними дані стануть невідновлювальними.", + "delete-widget": "Видалити віджет", + "widget-template-load-failed-error": "Не вдалося завантажити шаблон віджета!", + "details": "Деталі", + "widget-details": "Деталі віджета", + "add": "Додати віджет", + "add-existing-widget": "Додати існуючий віджет", + "add-new-widget": "Додати новий віджет", + "search-widgets": "Шукати віджети", + "selected-widgets": "{ count, plural, =1 {1 віджет} other {# віджетів} } вибрано", + "undo": "Скасувати зміни віджета", + "export": "Експортувати віджет", + "export-prompt": "Вбудувати зображення віджета та ресурси", + "export-widgets": "Експортувати віджети", + "export-widgets-prompt": "Вбудувати зображення віджетів та ресурси", + "import": "Імпортувати віджет", + "no-data": "Немає даних для відображення на віджеті", + "data-overflow": "Віджет показує {{count}} з {{total}} сутностей", + "alarm-data-overflow": "Віджет показує тривоги для {{allowedEntities}} (максимум дозволених) сутностей з {{totalEntities}} сутностей", + "search": "Шукати віджет", + "filter": "Тип фільтра віджета", + "loading-widgets": "Завантаження віджетів...", + "widget-template-error": "Невірний HTML шаблон віджета.", + "reference": "Посилання" + }, + "widget-action": { + "header-button": "Кнопка заголовка віджета", + "do-nothing": "Не робити нічого", + "open-dashboard-state": "Перейти до нового стану дашборду", + "update-dashboard-state": "Оновити поточний стан дашборду", + "open-dashboard": "Перейти до іншого дашборду", + "custom": "Користувацька дія", + "custom-pretty": "Користувацька дія (з HTML шаблоном)", + "custom-pretty-error-title": "Помилка користувацького діалогу", + "custom-pretty-template-error": "Невірний шаблон користувацького діалогу.", + "custom-pretty-controller-error": "Сталася помилка при оцінці функції користувацького діалогу.", + "mobile-action": "Мобільна дія", + "target-dashboard-state": "Цільовий стан дашборду", + "target-dashboard-state-required": "Цільовий стан дашборду обов'язковий", + "set-entity-from-widget": "Встановити сутність з віджета", + "target-dashboard": "Цільовий дашборд", + "select-target-dashboard": "Вибрати цільовий дашборд", + "target-dashboard-required": "Цільовий дашборд обов'язковий.", + "open-right-layout": "Відкрити правий макет дашборду (мобільний перегляд)", + "state-display-type": "Опція відображення стану дашборду", + "open-normal": "Нормальний", + "open-in-separate-dialog": "Відкрити в окремому діалозі", + "open-in-popover": "Відкрити в поповер", + "dialog-title": "Заголовок діалогу", + "dialog-hide-dashboard-toolbar": "Сховати панель інструментів дашборду в діалозі", + "dialog-width": "Ширина діалогу у відсотках від ширини вікна перегляду", + "dialog-height": "Висота діалогу у відсотках від висоти вікна перегляду", + "dialog-size-range-error": "Відсоткове значення розміру діалогу повинно бути в діапазоні від 1 до 100.", + "popover-preferred-placement": "Бажане розташування поповера", + "popover-placement-top": "Зверху", + "popover-placement-topLeft": "Зверху ліворуч", + "popover-placement-topRight": "Зверху праворуч", + "popover-placement-right": "Праворуч", + "popover-placement-rightTop": "Праворуч зверху", + "popover-placement-rightBottom": "Праворуч знизу", + "popover-placement-bottom": "Знизу", + "popover-placement-bottomLeft": "Знизу ліворуч", + "popover-placement-bottomRight": "Знизу праворуч", + "popover-placement-left": "Ліворуч", + "popover-placement-leftTop": "Ліворуч зверху", + "popover-placement-leftBottom": "Ліворуч знизу", + "popover-hide-on-click-outside": "Сховати поповер при кліку поза ним", + "popover-hide-dashboard-toolbar": "Сховати панель інструментів дашборду в поповері", + "popover-width": "Ширина поповера", + "popover-height": "Висота поповера", + "popover-style": "Стиль поповера", + "open-new-browser-tab": "Відкрити в новій вкладці браузера", + "open-URL": "Відкрити URL", + "URL": "URL", + "url-required": "URL обов'язковий.", + "mobile": { + "device-provision": "Налаштування пристрою", + "action-type": "Тип мобільної дії", + "select-action-type": "Вибрати тип мобільної дії", + "action-type-required": "Тип мобільної дії обов'язковий", + "take-picture-from-gallery": "Зробити фото з галереї", + "take-photo": "Зробити фото", + "map-direction": "Відкрити напрямок на карті", + "map-location": "Відкрити місцезнаходження на карті", + "scan-qr-code": "Сканувати QR код", + "make-phone-call": "Зробити телефонний дзвінок", + "get-location": "Отримати місцезнаходження телефону", + "take-screenshot": "Зробити скріншот" + }, + "custom-action-function": "Функція користувацької дії", + "custom-pretty-function": "Користувацька дія (з HTML шаблоном) функція", + "map-item-type": "Тип елемента карти", + "map-item": { + "marker": "Маркер", + "polygon": "Полігон", + "rectangle": "Прямокутник", + "circle": "Коло" + }, + "place-map-item": "Розмістити елемент карти", + "map-item-tooltip": { + "customize-map-item-tooltips": "Налаштувати підказки для елементів карти", + "place-marker": "Розмістити маркер", + "start-draw-rectangle": "Почати малювати прямокутник", + "finish-draw-rectangle": "Завершити малювання прямокутника", + "start-draw-polygon": "Почати малювати полігон", + "continue-draw-polygon": "Продовжити малювати полігон", + "finish-draw-polygon": "Завершити малювання полігону", + "start-draw-circle": "Почати малювати коло", + "finish-draw-circle": "Завершити малювання кола" + } + }, + "widgets-bundle": { + "current": "Поточний набір", + "widgets-bundles": "Набори віджетів", + "widgets-bundle-widgets": "Віджети набору віджетів", + "add": "Додати набір віджетів", + "delete": "Видалити набір віджетів", + "title": "Назва", + "title-required": "Назва обов'язкова.", + "title-max-length": "Назва повинна бути меншою за 256 символів", + "description": "Опис", + "image-preview": "Попередній перегляд зображення", + "scada": "Набір віджетів SCADA", + "order": "Порядок", + "add-widgets-bundle-text": "Додати новий набір віджетів", + "no-widgets-bundles-text": "Набори віджетів не знайдені", + "empty": "Набір віджетів порожній", + "details": "Деталі", + "widgets-bundle-details": "Деталі набору віджетів", + "delete-widgets-bundle-title": "Ви впевнені, що хочете видалити набір віджетів '{{widgetsBundleTitle}}'?", + "delete-widgets-bundle-text": "Будьте обережні, після підтвердження набір віджетів і всі пов'язані з ним дані стануть невідновлювальними.", + "delete-widgets-bundles-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 набір віджетів} other {# набори віджетів} }?", + "delete-widgets-bundles-action-title": "Видалити { count, plural, =1 {1 набір віджетів} other {# набори віджетів} }", + "delete-widgets-bundles-text": "Будьте обережні, після підтвердження всі вибрані набори віджетів будуть видалені, і всі пов'язані з ними дані стануть невідновлювальними.", + "no-widgets-bundles-matching": "Набори віджетів, що відповідають '{{widgetsBundle}}', не знайдено.", + "widgets-bundle-required": "Набір віджетів обов'язковий.", + "system": "Система", + "import": "Імпортувати набір віджетів", + "export": "Експортувати набір віджетів", + "export-widgets-bundle-widgets-prompt": "Включити віджети набору в експортовані дані (в іншому випадку будуть експортовані тільки посилання на віджети FQN)", + "export-failed-error": "Не вдалося експортувати набір віджетів: {{error}}", + "create-new-widgets-bundle": "Створити новий набір віджетів", + "widgets-bundle-file": "Файл набору віджетів", + "invalid-widgets-bundle-file-error": "Не вдалося імпортувати набір віджетів: Невірна структура даних набору віджетів.", + "search": "Шукати набори віджетів", + "selected-widgets-bundles": "{ count, plural, =1 {1 набір віджетів} other {# набори віджетів} } вибрано", + "open-widgets-bundle": "Відкрити набір віджетів", + "loading-widgets-bundles": "Завантаження наборів віджетів...", + "create-new": "Створити новий набір віджетів" + }, + "widget-config": { + "data": "Дані", + "settings": "Налаштування", + "advanced": "Розширені", + "appearance": "Зовнішній вигляд", + "widget-card": "Картка віджета", + "mobile": "Мобільний", + "title": "Назва", + "title-tooltip": "Підказка для назви", + "general-settings": "Загальні налаштування", + "display-title": "Відображати назву віджета", + "card-title": "Назва картки", + "drop-shadow": "Тінь", + "enable-fullscreen": "Увімкнути повний екран", + "background-color": "Колір фону", + "text-color": "Колір тексту", + "border-radius": "Радіус обведення", + "padding": "Відступи", + "margin": "Поля", + "widget-style": "Стиль віджета", + "widget-css": "CSS віджета", + "title-style": "Стиль назви", + "mobile-mode-settings": "Налаштування мобільного режиму", + "order": "Порядок", + "height": "Висота", + "mobile-hide": "Сховати віджет у мобільному режимі", + "desktop-hide": "Сховати віджет на десктопі", + "units": "Спеціальний символ для відображення поруч з значенням", + "units-by-default": "Одиниці за замовчуванням", + "decimals": "Кількість знаків після коми", + "decimals-by-default": "Десяткові розряди за замовчуванням", + "default-data-key-parameter-hint": "Цей параметр застосовується до всіх значень віджета, якщо не буде переозначено налаштуванням ключа даних", + "units-short": "Одиниці", + "decimals-short": "Десяткові", + "decimals-suffix": "десяткових", + "digits-suffix": "цифр", + "timewindow": "Часовий інтервал", + "use-dashboard-timewindow": "Використовувати часовий інтервал дашборду", + "use-widget-timewindow": "Використовувати часовий інтервал віджета", + "display-timewindow": "Відображати часовий інтервал", + "legend": "Легенда", + "display-legend": "Відображати легенду", + "datasources": "Джерела даних", + "datasource": "Джерело даних", + "maximum-datasources": "Максимум { count, plural, =1 {дозволено 1 джерело даних.} other {дозволено # джерел даних} }", + "timeseries-key-error": "Повинно бути вказано хоча б одне джерело даних для часового ряду", + "datasource-type": "Тип", + "datasource-parameters": "Параметри", + "remove-datasource": "Видалити джерело даних", + "add-datasource": "Додати джерело даних", + "target-device": "Цільовий пристрій", + "alarm-source": "Джерело тривоги", + "actions": "Дії", + "action": "Дія", + "add-action": "Додати дію", + "search-actions": "Шукати дії", + "no-actions-text": "Дії не знайдені", + "action-source": "Джерело дії", + "select-action-source": "Вибрати джерело дії", + "action-source-required": "Джерело дії обов'язкове.", + "column-index": "Індекс стовпця", + "select-column-index": "Вибрати індекс стовпця", + "column-index-required": "Індекс стовпця обов'язковий.", + "not-set": "Не встановлено", + "action-name": "Назва дії", + "action-name-required": "Назва дії обов'язкова.", + "action-name-not-unique": "Інша дія з такою ж назвою вже існує.\nНазва дії повинна бути унікальною в межах одного джерела дії.", + "action-icon": "Іконка", + "header-button": { + "button-settings": "Налаштування кнопки", + "button-type": "Тип кнопки", + "button-type-basic": "Базова", + "button-type-raised": "Піднята", + "button-type-stroked": "Окреслена", + "button-type-flat": "Плоска", + "button-type-icon": "Іконка", + "button-type-mini-fab": "FAB", + "colors": "Кольори", + "color": "Колір", + "background": "Фон", + "border": "Окреслення", + "advanced-button-style": "Розширений стиль кнопки", + "button-style": "Стиль кнопки" + }, + "show-hide-action-using-function": "Показати/сховати дію за допомогою функції", + "show-action-function": "Функція показу дії", + "action-type": "Тип дії", + "action-type-required": "Тип дії обов'язковий.", + "edit-action": "Редагувати дію", + "delete-action": "Видалити дію", + "delete-action-title": "Видалити дію віджета", + "delete-action-text": "Ви впевнені, що хочете видалити дію віджета з назвою '{{actionName}}'?", + "title-icon": "Іконка заголовка", + "display-icon": "Відображати іконку заголовка", + "card-icon": "Іконка картки", + "icon": "Іконка", + "icon-color": "Колір іконки", + "icon-size": "Розмір іконки", + "advanced-settings": "Розширені налаштування", + "data-settings": "Налаштування даних", + "limits": "Обмеження", + "no-data-display-message": "Альтернативне повідомлення \"Немає даних для відображення\"", + "data-page-size": "Максимальна кількість сутностей на джерело даних", + "settings-component-not-found": "Компонент форми налаштувань не знайдено для селектора '{{selector}}'", + "preview": "Попередній перегляд", + "set": "Встановити", + "set-message": "Встановити повідомлення", + "advanced-title-style": "Розширений стиль заголовка", + "card-style": "Стиль картки", + "text": "Текст", + "background": "Фон", + "advanced-widget-style": "Розширений стиль віджета", + "card-buttons": "Кнопки картки", + "show-card-buttons": "Показати кнопки картки", + "card-border-radius": "Радіус обведення картки", + "card-padding": "Відступи картки", + "card-appearance": "Зовнішній вигляд картки", + "color": "Колір", + "tooltip": "Підказка", + "units-required": "Одиниці обов'язкові.", + "list-layout": "Список макетів", + "layout": "Макет", + "resize-options": "Опції зміни розміру", + "resizable": "Можна змінювати розмір", + "preserve-aspect-ratio": "Зберігати співвідношення сторін" + }, + "widget-type": { + "import": "Імпортувати тип віджета", + "export": "Експортувати тип віджета", + "export-failed-error": "Не вдалося експортувати віджет: {{error}}", + "widget-file": "Файл віджета", + "invalid-widget-file-error": "Не вдалося імпортувати віджет: Невірна структура даних віджета." + }, + "markdown": { + "edit": "Редагувати", + "preview": "Попередній перегляд", + "copy-code": "Натисніть для копіювання", + "copied": "Скопійовано!" + }, + "widgets": { + "mobile-app-qr-code": { + "configuration-hint": "Налаштування залежить від віджета QR-коду мобільного додатку в основних налаштуваннях платформи", + "get-it-on-google-play": "Отримати в Google Play", + "download-on-the-app-store": "Завантажити в App Store" + }, + "action-button": { + "behavior": "Поводження", + "on-click": "При натисканні", + "on-click-hint": "Дія, що виконується при натисканні на кнопку", + "first-button-click": "Натискання першої кнопки", + "first-button-click-hint": "Дія при натисканні на першу кнопку.", + "second-button-click": "Натискання другої кнопки", + "second-button-click-hint": "Дія при натисканні на другу кнопку.", + "button-click-hint": "Дія при натисканні на віджет." + }, + "command-button": { + "behavior": "Поводження", + "on-click": "При натисканні", + "on-click-hint": "Дія, що виконується при натисканні на кнопку." + }, + "power-button": { + "behavior": "Поводження", + "power-on": "Живлення 'Вкл.'", + "power-on-hint": "Дія, що виконується для ввімкнення компонента.", + "power-off": "Живлення 'Викл.'", + "power-off-hint": "Дія, що виконується для вимкнення компонента.", + "on-label": "Вкл.", + "off-label": "Викл.", + "layout": "Макет", + "layout-default": "За замовчуванням", + "layout-simplified": "Спрощений", + "layout-outlined": "Обведений", + "layout-default-volume": "За замовчуванням.Об'єм", + "layout-simplified-volume": "Спрощений.Об'єм", + "layout-outlined-volume": "Обведений.Об'єм", + "layout-default-icon": "За замовчуванням.Іконка", + "layout-simplified-icon": "Спрощений.Іконка", + "layout-outlined-icon": "Обведений.Іконка", + "main": "Основний", + "background": "Фон", + "button-icon-on": "Іконка кнопки 'Вкл.'", + "button-icon-off": "Іконка кнопки 'Викл.'", + "power-on-colors": "Кольори 'Вкл.'", + "power-off-colors": "Кольори 'Викл.'", + "disabled-colors": "Кольори для вимкнених станів", + "button": "Кнопка" + }, + "toggle-button": { + "behavior": "Поводження", + "checked": "Відмічено", + "unchecked": "Не відмічено", + "check": "Відмітити", + "check-hint": "Дія, що виконується для позначення компонента.", + "uncheck": "Зняти відмітку", + "uncheck-hint": "Дія, що виконується для зняття відмітки з компонента.", + "auto-scale": "Автоматичне масштабування", + "horizontal-fill": "Горизонтальне заповнення", + "vertical-fill": "Вертикальне заповнення", + "button-appearance": "Зовнішній вигляд кнопки" + }, + "segmented-button": { + "layout": "Макет", + "layout-squared": "Квадратний", + "layout-rounded": "Закруглений", + "card-border": "Кордон картки", + "button-appearance": "Зовнішній вигляд кнопки", + "first": "Перша", + "second": "Друга", + "color-styles": "Стилі кольорів", + "selected": "Вибрано", + "unselected": "Не вибрано" + }, + "button": { + "layout": "Макет", + "outlined": "Обведений", + "filled": "Заповнений", + "underlined": "Підкреслений", + "basic": "Базовий", + "auto-scale": "Автоматичне масштабування", + "label": "Маркування", + "icon": "Іконка", + "border-radius": "Радіус кордону", + "color-palette": "Палітра кольорів", + "main": "Основний", + "background": "Фон", + "border": "Кордон", + "custom-styles": "Користувацькі стилі", + "clear-style": "Очистити стиль", + "shadow": "Тінь", + "enabled": "Увімкнено", + "disabled": "Вимкнено", + "preview": "Попередній перегляд", + "copy-style-from": "Копіювати стиль з" + }, + "value-stepper": { + "behavior": "Поводження", + "simplified": "Спрощений", + "filled": "Заповнений", + "outlined": "Обведений", + "volume": "Об'єм", + "initial-state": "Початковий стан", + "initial-state-hint": "Дія для отримання початкового значення.", + "disabled-state": "Вимкнений стан", + "disabled-state-hint": "Налаштуйте умови, за яких компонент буде вимкнений.", + "right-button-click": "Натискання правої кнопки", + "right-button-click-hint": "Дія при натисканні правою кнопкою.", + "left-button-click": "Натискання лівої кнопки", + "left-button-click-hint": "Дія при натисканні лівою кнопкою.", + "auto-scale": "Автоматичне масштабування", + "value-range": "Діапазон значень", + "min-range": "Мінімум", + "max-range": "Максимум", + "value-increment-decrement-step": "Крок збільшення/зменшення значення", + "value": "Значення", + "value-box-background": "Фон поля значення", + "border": "Кордон", + "button-appearance": "Зовнішній вигляд кнопки", + "left": "Ліворуч", + "right": "Праворуч", + "left-button": "Ліва кнопка", + "right-button": "Права кнопка", + "icon": "Іконка", + "color-palette": "Палітра кольорів", + "main": "Основний", + "background": "Фон", + "button-icon-on": "Іконка кнопки 'Вкл.'", + "button-on-colors": "Кольори 'Вкл.'", + "disabled-colors": "Кольори для вимкнених станів" + }, + "button-state": { + "activated-state": "Активований стан", + "activated-state-hint": "Налаштуйте умови, за яких кнопка буде активною.", + "disabled-state": "Вимкнений стан", + "disabled-state-hint": "Налаштуйте умови, за яких кнопка буде вимкнена.", + "selected-state": "Вибрана кнопка", + "selected-state-hint": "Налаштуйте умови, за яких кнопка буде вибрана.", + "enabled": "Увімкнено", + "hovered": "Над панеллю", + "pressed": "Натиснута", + "activated": "Активована", + "disabled": "Вимкнено", + "initial": "Перша кнопка", + "first": "Перша", + "second": "Друга" + }, + "background": { + "background": "Фон", + "background-settings": "Налаштування фону", + "background-type-image": "Зображення", + "background-type-color": "Колір", + "image-url": "URL зображення", + "overlay": "Накладання", + "enable-overlay": "Увімкнути накладання", + "blur": "Розмиття", + "preview": "Попередній перегляд" + }, + "bar-chart": { + "bar-appearance": "Зовнішній вигляд стовпця", + "label-on-bar": "Маркування на стовпці", + "value-on-bar": "Значення на стовпці", + "bar-chart-style": "Стиль стовпцевої діаграми", + "bar-axis": "Ось стовпців" + }, + "polar-area-chart": { + "polar-axis": "Полярна вісь", + "start-angle": "Початковий кут", + "polar-area-chart-style": "Стиль діаграми полярної області" + }, + "battery-level": { + "layout": "Макет", + "layout-vertical-solid": "Вертикальний. Твердий", + "layout-horizontal-solid": "Горизонтальний. Твердий", + "layout-vertical-divided": "Вертикальний. Поділений", + "layout-horizontal-divided": "Горизонтальний. Поділений", + "icon": "Іконка", + "value": "Значення", + "auto-scale": "Автоматичне масштабування", + "battery-level-color": "Колір рівня заряду батареї", + "battery-shape-color": "Колір форми батареї", + "battery-level-card-style": "Стиль картки рівня заряду батареї", + "sections-count": "Кількість секцій" + }, + "signal-strength": { + "value": "Значення", + "last-update": "Останнє оновлення", + "no-signal": "Немає сигналу", + "layout": "Макет", + "layout-wifi": "Wi-Fi", + "layout-cellular-bar": "Стовпчик мобільного сигналу", + "icon": "Іконка", + "date": "Дата", + "active-bars-color": "Колір активних сигналів", + "inactive-bars-color": "Колір неактивних сигналів", + "signal-strength-card-style": "Стиль картки сили сигналу", + "no-signal-rssi-value": "\"Немає сигналу\" значення rssi" + }, + "status-widget": { + "behavior": "Поводження", + "layout": "Макет", + "layout-default": "За замовчуванням", + "layout-center": "Центр", + "layout-icon": "Іконка", + "on": "Увімкнено", + "off": "Вимкнено", + "label": "Маркування", + "status": "Статус", + "icon": "Іконка", + "color-palette": "Палітра кольорів", + "disabled-color-palette": "Палітра кольорів для вимкнених станів", + "primary": "Основний", + "primary-color-hint": "Колір іконки та маркування", + "secondary": "Додатковий", + "secondary-color-hint": "Колір статусу", + "background": "Фон" + }, + "chart": { + "common-settings": "Загальні налаштування", + "enable-stacking-mode": "Увімкнути режим стекування", + "selection": "Вибір діапазону часу", + "enable-selection-mode": "Увімкнути режим вибору", + "line-shadow-size": "Розмір тіні лінії", + "display-smooth-lines": "Відображати гладкі (криві) лінії", + "default-bar-width": "Стандартна ширина стовпця для неагрегованих даних (мілісекунди)", + "bar-alignment": "Вирівнювання стовпця", + "bar-alignment-left": "Зліва", + "bar-alignment-right": "Праворуч", + "bar-alignment-center": "По центру", + "default-font": "Стандартний шрифт", + "default-font-size": "Розмір стандартного шрифту", + "default-font-color": "Колір стандартного шрифту", + "thresholds-line-width": "Стандартна товщина лінії для всіх порогів", + "tooltip-settings": "Налаштування підказки", + "tooltip": "Підказка", + "show-tooltip": "Показати підказку", + "hover-individual-points": "Навести на окремі точки", + "show-cumulative-values": "Показати кумулятивні значення в режимі стекування", + "hide-zero-false-values": "Сховати нульові/хибні значення з підказки", + "tooltip-value-format-function": "Функція формату значення підказки", + "grid-settings": "Налаштування сітки", + "show-vertical-lines": "Показати вертикальні лінії", + "show-horizontal-lines": "Показати горизонтальні лінії", + "grid-outline-border-width": "Товщина лінії обведення/кордону сітки (px)", + "primary-color": "Основний колір", + "background-color": "Колір фону", + "ticks-color": "Колір поділок", + "xaxis-settings": "Налаштування осі X", + "axis-title": "Назва осі", + "xaxis-tick-labels-settings": "Налаштування маркування поділок осі X", + "show-tick-labels": "Показати маркування поділок осі", + "yaxis-settings": "Налаштування осі Y", + "min-scale-value": "Мінімальне значення на шкалі", + "max-scale-value": "Максимальне значення на шкалі", + "yaxis-tick-labels-settings": "Налаштування маркування поділок осі Y", + "tick-step-size": "Розмір кроку між поділками", + "number-of-decimals": "Кількість десяткових знаків для відображення", + "ticks-formatter-function": "Функція форматування поділок", + "comparison-settings": "Налаштування порівняння", + "enable-comparison": "Увімкнути порівняння", + "time-for-comparison": "Період порівняння", + "time-for-comparison-previous-interval": "Попередній інтервал (за замовчуванням)", + "time-for-comparison-days": "День тому", + "time-for-comparison-weeks": "Тиждень тому", + "time-for-comparison-months": "Місяць тому", + "time-for-comparison-years": "Рік тому", + "time-for-comparison-custom-interval": "Користувацький інтервал", + "custom-interval-value": "Значення користувацького інтервалу (мс)", + "comparison-x-axis-settings": "Налаштування осі X порівняння", + "axis-position": "Позиція осі", + "axis-position-top": "Верх (за замовчуванням)", + "axis-position-bottom": "Низ", + "custom-legend-settings": "Налаштування кастомної легенди", + "enable-custom-legend": "Увімкнути користувацьку легенду (це дозволить використовувати значення атрибутів/часових рядів в ключах маркування)", + "key-name": "Назва ключа", + "key-name-required": "Назва ключа обов'язкова", + "key-type": "Тип ключа", + "key-type-attribute": "Атрибут", + "key-type-timeseries": "Часовий ряд", + "label-keys-list": "Список ключів для використання в мітках", + "no-label-keys": "Ключі не налаштовані", + "add-label-key": "Додати новий ключ", + "line-width": "Товщина лінії", + "color": "Колір", + "data-is-hidden-by-default": "Дані приховані за замовчуванням", + "disable-data-hiding": "Вимкнути приховування даних", + "remove-from-legend": "Видалити datakey з легенди", + "exclude-from-stacking": "Виключити з режиму стекування (доступно в режимі \"Stacking\")", + "line-settings": "Налаштування лінії", + "show-line": "Показати лінію", + "fill-line": "Заповнити лінію", + "fill-line-opacity": "Непрозорість заповнення лінії", + "points-settings": "Налаштування точок", + "show-points": "Показати точки", + "points-line-width": "Товщина лінії точок", + "points-radius": "Радіус точок", + "point-shape": "Форма точки", + "point-shape-circle": "Коло", + "point-shape-cross": "Хрест", + "point-shape-diamond": "Діамант", + "point-shape-square": "Квадрат", + "point-shape-triangle": "Трикутник", + "point-shape-custom": "Користувацька функція", + "point-shape-draw-function": "Функція малювання форми точки", + "show-separate-axis": "Показати окрему вісь", + "axis-position-left": "Зліва", + "axis-position-right": "Праворуч", + "thresholds": "Пороги", + "no-thresholds": "Пороги не налаштовані", + "add-threshold": "Додати поріг", + "show-values-for-comparison": "Показати історичні значення для порівняння", + "comparison-values-label": "Маркування історичних значень", + "comparison-line-color": "Колір лінії порівняння", + "threshold-settings": "Налаштування порогів", + "use-as-threshold": "Використовувати значення ключа як поріг", + "threshold-line-width": "Товщина лінії порогу", + "threshold-color": "Колір порогу", + "common-pie-settings": "Загальні налаштування кругової діаграми", + "radius": "Радіус", + "inner-radius": "Внутрішній радіус", + "tilt": "Нахил", + "common-pie-settings-range-error": "Значення повинно бути в діапазоні від 0 до 1", + "stroke-settings": "Налаштування обводки", + "width-pixels": "Ширина (пікселі)", + "show-labels": "Показати маркування", + "animation-settings": "Налаштування анімації", + "animated-pie": "Увімкнути анімацію кругової діаграми (експериментальна)", + "border-settings": "Налаштування кордону", + "border-width": "Товщина кордону", + "border-color": "Колір кордону", + "legend-settings": "Налаштування легенди", + "display-legend": "Показати легенду", + "labels-font-color": "Колір шрифту міток", + "series": "Часовий ряд", + "add-series": "Додати часовий ряд", + "series-settings": "Налаштування часового ряду", + "remove-series": "Видалити часовий ряд", + "no-series": "Часові ряди не налаштовані", + "no-series-error": "Має бути вказано хоча б один часовий ряд", + "chart-appearance": "Зовнішній вигляд діаграми", + "vertical-grid-lines": "Вертикальні лінії сітки", + "horizontal-grid-lines": "Горизонтальні лінії сітки", + "chart-background": "Фон діаграми", + "grid-lines-color": "Колір ліній сітки", + "border": "Кордон", + "axis": "Ось", + "vertical-axis": "Вертикальна вісь", + "ticks": "Поділки", + "horizontal-axis": "Горизонтальна вісь", + "shape-empty-circle": "Порожнє коло", + "shape-circle": "Коло", + "shape-rect": "Прямокутник", + "shape-round-rect": "Закруглений прямокутник", + "shape-triangle": "Трикутник", + "shape-diamond": "Діамант", + "shape-pin": "Штифт", + "shape-arrow": "Стрілка", + "shape-none": "Без форми", + "line-type-solid": "Тверда лінія", + "line-type-dashed": "Пунктирна лінія", + "line-type-dotted": "Точкова лінія", + "label-position-top": "Верх", + "label-position-bottom": "Низ", + "label-position-outside": "Зовні", + "label-position-inside": "Всередині", + "fill": "Заповнення", + "fill-type-none": "Без заповнення", + "fill-type-solid": "Твердий колір", + "fill-type-opacity": "Непрозорість", + "fill-type-gradient": "Градієнт", + "background": "Фон", + "opacity": "Непрозорість", + "gradient-stops": "Точки градієнта", + "gradient-start": "початок", + "gradient-end": "кінець", + "animation": { + "animation": "Анімація", + "animation-threshold": "Поріг анімації", + "animation-duration": "Тривалість анімації", + "animation-easing": "Затримка анімації", + "animation-delay": "Затримка анімації", + "update-animation-duration": "Оновити тривалість анімації", + "update-animation-easing": "Оновити затримку анімації", + "update-animation-delay": "Оновити затримку анімації" + }, + "chart-axis": { + "scale": "Шкала", + "scale-min": "мін", + "scale-max": "макс", + "scale-auto": "Авто" + }, + "bar": { + "show-border": "Показати кордон", + "border-width": "Товщина кордону", + "border-radius": "Радіус кордону", + "bar-width": "Ширина стовпця", + "label": "Маркування", + "label-hint": "Відображати маркування над стовпцем.", + "series-label-hint": "Відображати маркування зі значенням над стовпцем.", + "label-background": "Фон маркування" + } + }, + "color": { + "color-settings": "Налаштування кольору", + "color-type-constant": "Постійний", + "color-type-gradient": "Градієнт", + "color-type-range": "Діапазон", + "color-type-function": "Функція", + "color": "Колір", + "value-range": "Діапазон значень", + "from": "Від", + "to": "До", + "color-function": "Функція кольору", + "copy-color-settings-from": "Копіювати налаштування кольору з", + "copy-from": "Копіювати з", + "settings-type": "Тип налаштувань", + "basic-mode": "Базовий", + "advanced-mode": "Розширений", + "entity-alias": "Псевдонім сутності", + "entity-attribute": "Атрибут сутності", + "gradient-color": "Колір градієнта", + "gradient-color-min": "Колір", + "gradient-start": "Колір початку градієнта", + "gradient-start-min": "Початок", + "gradient-end": "Колір кінця градієнта", + "gradient-end-min": "Кінець", + "start-value": "Початкове значення", + "end-value": "Кінцеве значення", + "gradient-type": "Тип градієнта" + }, + "dashboard-state": { + "dashboard-state-settings": "Налаштування стану дашборду", + "dashboard-state": "ID стану дашборду", + "autofill-state-layout": "Автозаповнення висоти макету стану за замовчуванням", + "default-margin": "Стандартний відступ віджетів", + "default-background-color": "Стандартний колір фону", + "sync-parent-state-params": "Синхронізувати параметри стану з батьківським дашбордом" + }, + "date-range-navigator": { + "date-range-picker-settings": "Налаштування вибору діапазону дат", + "hide-date-range-picker": "Приховати вибір діапазону дат", + "picker-one-panel": "Вибір діапазону дат в одному панелі", + "picker-auto-confirm": "Автоматичне підтвердження вибору діапазону дат", + "picker-show-template": "Показати шаблон вибору діапазону дат", + "first-day-of-week": "Перший день тижня", + "interval-settings": "Налаштування інтервалу", + "hide-interval": "Приховати інтервал", + "initial-interval": "Початковий інтервал", + "interval-hour": "Година", + "interval-day": "День", + "interval-week": "Тиждень", + "interval-two-weeks": "2 тижні", + "interval-month": "Місяць", + "interval-three-months": "3 місяці", + "interval-six-months": "6 місяців", + "step-settings": "Налаштування кроку", + "hide-step-size": "Приховати розмір кроку", + "initial-step-size": "Початковий розмір кроку", + "hide-labels": "Приховати маркування", + "use-session-storage": "Використовувати сесійне сховище", + "localizationMap": { + "Sun": "Нд", + "Mon": "Пн", + "Tue": "Вт", + "Wed": "Ср", + "Thu": "Чт", + "Fri": "Пт", + "Sat": "Сб", + "Jan": "Січ", + "Feb": "Лют", + "Mar": "Бер", + "Apr": "Кві", + "May": "Тра", + "Jun": "Чер", + "Jul": "Лип", + "Aug": "Сер", + "Sep": "Вер", + "Oct": "Жов", + "Nov": "Лис", + "Dec": "Гру", + "January": "Січень", + "February": "Лютий", + "March": "Березень", + "April": "Квітень", + "June": "Червень", + "July": "Липень", + "August": "Серпень", + "September": "Вересень", + "October": "Жовтень", + "November": "Листопад", + "December": "Грудень", + "Custom Date Range": "Користувацький діапазон дат", + "Date Range Template": "Шаблон діапазону дат", + "Today": "Сьогодні", + "Yesterday": "Вчора", + "This Week": "Цього тижня", + "Last Week": "Минулого тижня", + "This Month": "Цього місяця", + "Last Month": "Минулого місяця", + "Year": "Рік", + "This Year": "Цього року", + "Last Year": "Минулого року", + "Date picker": "Вибір дати", + "Hour": "Година", + "Day": "День", + "Week": "Тиждень", + "2 weeks": "2 тижні", + "Month": "Місяць", + "3 months": "3 місяці", + "6 months": "6 місяців", + "Custom interval": "Користувацький інтервал", + "Interval": "Інтервал", + "Step size": "Розмір кроку", + "Ok": "Ок" + } + }, + "doughnut": { + "doughnut-appearance": "Зовнішній вигляд пончикової діаграми", + "layout": "Макет", + "layout-default": "За замовчуванням", + "layout-with-total": "Із підсумком", + "central-total-value": "Центральне підсумкове значення", + "doughnut-card-style": "Стиль картки пончикової діаграми" + }, + "entities-hierarchy": { + "hierarchy-data-settings": "Налаштування даних ієрархії", + "relations-query-function": "Функція запиту зв'язків вузла", + "has-children-function": "Функція наявності дочірніх елементів у вузла", + "node-state-settings": "Налаштування стану вузла", + "node-opened-function": "Функція відкритого вузла за замовчуванням", + "node-disabled-function": "Функція вимкненого вузла", + "display-settings": "Налаштування відображення", + "node-icon-function": "Функція іконки вузла", + "node-text-function": "Функція тексту вузла", + "sort-settings": "Налаштування сортування", + "nodes-sort-function": "Функція сортування вузлів" }, "edge": { - "management": "Керування Edge", - "instances": "Інстанси", - "rulechain-templates": "Шаблони ланцюжків правил" + "display-default-title": "Відображати заголовок за замовчуванням" }, - "error": { - "unable-to-connect": "Неможливо підключитися до сервера! Перевірте підключення до Інтернету.", - "unhandled-error-code": "Неопрацьований помилковий код: {{errorCode}}", - "unknown-error": "Невідома помилка" - }, - "entity": { - "entity": "Сутність", - "entities": "Сутності", - "aliases": "Псевдоніми сутності", - "entity-alias": "Псевдонім сутності", - "unable-delete-entity-alias-title": "Неможливо видалити псевдонім сутності", - "unable-delete-entity-alias-text": "Псевдонім сутності '{{entityAlias}}' неможливо видалити, оскільки він використовується наступним віджетом(s):
{{widgetsList}}", - "duplicate-alias-error": "Знайдено повторюваний псевдонім '{{alias}}'.
Псевдоніми сутностей повинні бути унікальними на панелі візуалізації.", - "missing-entity-filter-error": "Відсутній фільтр для псевдоніма '{{alias}}'.", - "configure-alias": "Налаштувати '{{alias}}' псевдонім", - "alias": "Псевдонім", - "alias-required": "Необхідно вказати псевдонім сутності.", - "remove-alias": "Видалити псевдонім сутності", - "add-alias": "Додати псевдонім сутності", - "entity-list": "Список сутності", - "entity-type": "Тип сутності", - "entity-types": "Типи сутності", - "entity-type-list": "Список типу сутності", - "any-entity": "Будь-яка сутність", - "enter-entity-type": "Введіть тип сутності", - "no-entities-matching": "Не знайдено жожних сутностей, що відповідають '{{entity}}' що відповідають.", - "no-entity-types-matching": "Не знайдено жожних типів сутностей, що відповідають '{{entityType}}'.", - "name-starts-with": "Назва починається з", - "use-entity-name-filter": "Використовуйте фільтр", - "entity-list-empty": "Не вибрано жодних сутностей.", - "entity-type-list-required": "Потрібно вибрати принаймні один тип сутності.", - "entity-name-filter-required": "Необхідно задати фільтр за назвою.", - "entity-name-filter-no-entity-matched": "Не знайдено жодних сутностей, що починаються з '{{entity}}'.", - "all-subtypes": "Всі", - "select-entities": "Виберіть сутність", - "no-aliases-found": "Псевдонімів не знайдено.", - "no-alias-matching": "'{{alias}}' не знайдено.", - "create-new-alias": "Створити новий псевдонім!", - "key": "Ключ", - "key-name": "Назва ключа", - "no-keys-found": "Жодного ключа не знайдено.", - "no-key-matching": "'{{key}}' не знайдено.", - "create-new-key": "Створити новий ключ!", - "type": "Тип", - "type-required": "Необхідно задати тип сутності.", - "type-device": "Пристрій", - "type-devices": "Пристрої", - "list-of-devices": "{ count, plural, =1 {Один пристрій} other {Список # пристроїв} }", - "device-name-starts-with": "Пристрої, назви яких починаються з '{{prefix}}'", - "type-asset": "Актив", - "type-assets": "Активи", - "list-of-assets": "{ count, plural, =1 {Один актив} other {Список # активів} }", - "asset-name-starts-with": "Активи, назви яких починаються з '{{prefix}}'", - "type-entity-view": "Перегляд сутності", - "type-entity-views": "Перегляди сутності", - "list-of-entity-views": "{ count, plural, =1 {Один перегляд сутності} other {Список # переглядів сутності} }", - "entity-view-name-starts-with": "Перегляди сутностей, назви яких починаються з '{{prefix}}'", - "type-rule": "Правило", - "type-rules": "Правила", - "list-of-rules": "{ count, plural, =1 {Одне правило} other {Список # правил} }", - "rule-name-starts-with": "Правила, назви яких починаються з '{{prefix}}'", - "type-plugin": "Плагін", - "type-plugins": "Плагіни", - "list-of-plugins": "{ count, plural, =1 {Один плагін} other {Список # плагінів} }", - "plugin-name-starts-with": "Плагіни, назви яких починаються з '{{prefix}}'", - "type-tenant": "Власник", - "type-tenants": "Власники", - "list-of-tenants": "{ count, plural, =1 {Один власник} other {Список # власників} }", - "tenant-name-starts-with": "Власники, назви яких починаються з '{{prefix}}'", - "type-customer": "Клієнт", - "type-customers": "Клієнти", - "list-of-customers": "{ count, plural, =1 {Один клієнт} other {Список # клієнтів} }", - "customer-name-starts-with": "Клієнти, імена яких починаються з '{{prefix}}'", - "type-user": "Користувач", - "type-users": "Користувачі", - "list-of-users": "{ count, plural, =1 {Один користувач} other {Список # користувачів } }", - "user-name-starts-with": "Користувачі, імена яких починаються з '{{prefix}}'", - "type-dashboard": "Панель візуалізації", - "type-dashboards": "Панелі візуалізації", - "list-of-dashboards": "{ count, plural, =1 {Одна панель візуалізації} other {Список # панелей візуалізації} }", - "dashboard-name-starts-with": "Панелі візуалізації, назви яких починаються з '{{prefix}}'", - "type-alarm": "Сигнал тривоги", - "type-alarms": "Сигнали тривоги", - "list-of-alarms": "{ count, plural, =1 {Один сигнал тривоги} other {Список # сигналів тривоги} }", - "alarm-name-starts-with": "Сигнали тривоги, назви яких починаються '{{prefix}}'", - "type-rulechain": "Ланцюжок правил", - "type-rulechains": "Ланцюжки правил", - "list-of-rulechains": "{ count, plural, =1 {Один ланцюжок правил} other {Список # ланцюжків правил} }", - "rulechain-name-starts-with": "Правила ланцюжків, назви яких починаються '{{prefix}}'", - "type-scheduler-event": "Scheduler event", - "type-scheduler-events": "Scheduler events", - "list-of-scheduler-events": "{ count, plural, =1 {One scheduler event} other {List of # scheduler events} }", - "scheduler-event-name-starts-with": "Scheduler events whose names start with '{{prefix}}'", - "type-blob-entity": "Blob entity", - "type-blob-entities": "Blob entities", - "list-of-blob-entities": "{ count, plural, =1 {One blob entity} other {List of # blob entities} }", - "blob-entity-name-starts-with": "Blob entities whose names start with '{{prefix}}'", - "type-rulenode": "Правило", - "type-rulenodes": "Правила", - "list-of-rulenodes": "{ count, plural, =1 {Одне правило} other {Список # правил} }", - "rulenode-name-starts-with": "Список правил, назви яких починаються з '{{prefix}}'", - "type-current-customer": "Поточний клієнт", - "type-current-tenant": "Поточний власник", - "search": "Пошук сутностей", - "selected-entities": "{ count, plural, =1 {1 сутність} other {# сутності} } вибрано", - "entity-name": "Назва сутності", - "entity-label": "Мітка сутності", - "details": "Подробиці сутності", - "no-entities-prompt": "Сутності не знайдено", - "no-data": "Немає даних для відображення", - "columns-to-display": "Стовпці для відображення", - "type-entity-group": "Група сутностей", - "type-converter": "Перетворювач даних", - "type-converters": "Перетворювачі даних", - "list-of-converters": "{ count, plural, =1 {Однин перетворювач даних} other {Список # перетворювачів даних} }", - "converter-name-starts-with": "Перетворювачі даних, назви яких починаються з '{{prefix}}'", - "type-integration": "Інтеграція", - "type-integrations": "Інтеграції", - "list-of-integrations": "{ count, plural, =1 {Одна інтеграція} other {Список # інтеграцій} }", - "integration-name-starts-with": "Інтеграції, назви яких починаються з '{{prefix}}'" - }, - "entity-field": { - "created-time": "Час створення", - "name": "Назва", - "type": "Тип", - "first-name": "Ім'я", - "last-name": "Прізвище", - "email": "Електронна пошта", - "title": "Назва", - "country": "Країна", - "state": "Штат", - "city": "Місто", - "address": "Адреса", - "address2": "Адреса 2", - "zip": "Zip", - "phone": "Телефон", - "label": "Мітка" - }, - "entity-group": { - "entity-group": "Група сутності", - "details": "Деталі", - "columns": "Стовпці", - "add-column": "Додати стовпець", - "column-value": "Значення", - "column-value-required": "Необхідно вказати значення.", - "column-title": "Назва", - "default-sort-order": "Основний порядок сортування", - "default-sort-order-required": "Необхідно вказати основний порядок сортування.", - "hide-in-mobile-view": "Мобільний приховано", - "use-cell-style-function": "Використовувати функцію стилю комірки", - "use-cell-content-function": "Use cell content function", - "edit-column": "Редагувати стовпець", - "column-details": "Деталі стовпця", - "actions": "Дії", - "settings": "Налаштування", - "delete": "Видалити групу сутностей", - "name": "Назва", - "name-required": "Необхідно вказати назву.", - "description": "Опис", - "add": "Додати групу сутностей", - "add-entity-group-text": "Додати нову групу сутностей", - "no-entity-groups-text": "Не знайдено жодних груп сутності", - "entity-group-details": "Деталі групи сутності", - "delete-entity-groups": "Видалити групи сутностей", - "delete-entity-group-title": "Ви впевнені, що хочете видалити групу сутності '{{entityGroupName}}'?", - "delete-entity-group-text": "Будьте обережні, після підтвердження, група сутностей і всі пов'язані з нею дані стануть недоступними.", - "delete-entity-groups-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 групу сутності} other {# групи сутностей} }?", - "delete-entity-groups-action-title": "Видалити { count, plural, =1 {1 групу сутності} other {# групи сутностей} }", - "delete-entity-groups-text": "Будьте обережні, після підтвердження, всі виділені групи сутностей і пов'язані з ними дані, стануть недоступними.", - "device-groups": "Групи пристроїв", - "asset-groups": "Групи активів", - "customer-groups": "Групи клієнтів", - "device-group": "Група пристроїв", - "asset-group": "Група активів", - "customer-group": "Група клієнтів", - "fetch-more": "Отримати більше", - "column-type": { - "column-type": "Тип стовпця", - "client-attribute": "Атрибут клієнта", - "shared-attribute": "Спільний атрибут", - "server-attribute": "Атрибут сервера", - "timeseries": "Телеметрія", - "entity-field": "Поле сутності" + "gateway": { + "general-settings": "Загальні налаштування", + "widget-title": "Заголовок віджета", + "default-archive-file-name": "Назва файлу архіву за замовчуванням", + "device-type-for-new-gateway": "Тип пристрою для нового Gateway", + "messages-settings": "Налаштування повідомлень", + "save-config-success-message": "Текстове повідомлення про успішне збереження конфігурації Gateway", + "device-name-exists-message": "Текстове повідомлення, коли пристрій із введеною назвою вже існує", + "gateway-title": "Форма Gateway", + "read-only": "Лише читання", + "events-title": "Заголовок форми подій Gateway", + "events-filter": "Фільтр подій", + "event-key-contains": "Ключ події містить...", + "show-connector": "Показувати для конектора", + "connector-state-param-key": "Ключ параметра стану конектора", + "message": "Повідомлення", + "level": "Рівень", + "created-time": "Час створення" + }, + "gauge": { + "default-color": "Колір по замовчуванням", + "radial-gauge-settings": "Налаштування радіального індикатора", + "ticks-settings": "Налаштування поділок", + "min-value": "Мінімальне значення", + "max-value": "Максимальне значення", + "min-value-short": "мін", + "max-value-short": "макс", + "start-ticks-angle": "Початковий кут поділок", + "ticks-angle": "Кут поділок", + "major-ticks": "Основні поділки", + "major-ticks-count": "Кількість основних поділок", + "major-ticks-color": "Колір основних поділок", + "minor-ticks": "Додаткові поділки", + "minor-ticks-count": "Кількість додаткових поділок", + "minor-ticks-color": "Колір додаткових поділок", + "tick-numbers-font": "Шрифт чисел поділок", + "unit-title-settings": "Налаштування заголовка одиниць", + "show-unit-title": "Заголовок одиниць", + "unit-title": "Заголовок одиниць", + "title-font": "Шрифт тексту заголовка", + "units-settings": "Налаштування одиниць", + "units-font": "Шрифт тексту одиниць", + "value-box-settings": "Налаштування поля значення", + "show-value-box": "Показувати поле значення", + "value-box": "Поле значення", + "value-int": "Кількість цифр цілої частини значення", + "value-text": "Текст значення", + "value-text-shadow": "Тінь тексту значення", + "value-font": "Шрифт тексту значення", + "rect-stroke-color-start": "Колір обведення прямокутника — початок градієнта", + "rect-stroke-color-end": "Колір обведення прямокутника — кінець градієнта", + "background-color": "Колір фону", + "shadow-color": "Колір тіні", + "value-box-rect-stroke-color": "Колір обведення прямокутника поля значення", + "value-box-rect-stroke-color-end": "Колір обведення прямокутника поля значення — кінець градієнта", + "value-box-background-color": "Колір фону поля значення", + "value-box-shadow-color": "Колір тіні поля значення", + "plate-settings": "Налаштування панелі", + "show-plate-border": "Рамка панелі", + "plate-color": "Колір панелі", + "needle-settings": "Налаштування стрілки", + "needle-circle-size": "Розмір кола стрілки", + "needle-color": "Колір стрілки", + "needle-color-start": "Колір стрілки — початок градієнта", + "needle-color-end": "Колір стрілки — кінець градієнта", + "needle-color-shadow-up": "Колір тіні верхньої половини стрілки", + "needle-color-shadow-down": "Тінь", + "highlights-settings": "Налаштування виділень", + "highlights-width": "Ширина виділень", + "highlights": "Виділення", + "highlight-from": "Від", + "highlight-to": "До", + "highlight-color": "Колір", + "no-highlights": "Виділення не налаштовані", + "add-highlight": "Додати виділення", + "animation-settings": "Налаштування анімації", + "enable-animation": "Анімація", + "animation-duration-rule": "Тривалість анімації та правило", + "animation-duration": "Тривалість анімації", + "animation-rule": "Правило анімації", + "animation-linear": "Лінійна", + "animation-quad": "Квадратична", + "animation-quint": "Квінтова", + "animation-cycle": "Цикл", + "animation-bounce": "Пружинна", + "animation-elastic": "Еластична", + "animation-dequad": "Зворотна квадратична", + "animation-dequint": "Зворотна квінтова", + "animation-decycle": "Зворотний цикл", + "animation-debounce": "Зворотна пружинна", + "animation-delastic": "Зворотна еластична", + "linear-gauge-settings": "Налаштування лінійного індикатора", + "bar-stroke": "Обведення смуги", + "bar-stroke-width": "Товщина обведення смуги", + "bar-stroke-color": "Колір обведення смуги", + "bar-background-color": "Колір фону смуги — початок градієнта", + "bar-background-color-end": "Колір фону смуги — кінець градієнта", + "progress-bar-color": "Колір смуги прогресу", + "progress-bar": "Смуга прогресу", + "progress-bar-color-start": "Колір смуги прогресу — початок градієнта", + "progress-bar-color-end": "Колір смуги прогресу — кінець градієнта", + "major-ticks-names": "Назви основних поділок", + "show-stroke-ticks": "Показувати обведення поділок", + "major-ticks-font": "Шрифт основних поділок", + "border-color": "Колір кордону", + "border-width": "Товщина кордону", + "needle-circle": "Коло стрілки", + "needle-circle-color": "Колір кола стрілки", + "animation-target": "Ціль анімації", + "animation-target-needle": "Стрілка", + "animation-target-plate": "Панель", + "common-settings": "Загальні налаштування індикатора", + "gauge-type": "Тип індикатора", + "gauge-type-arc": "Дуга", + "gauge-type-donut": "Пончиковий індикатор", + "gauge-type-horizontal-bar": "Горизонтальна смуга", + "gauge-type-vertical-bar": "Вертикальна смуга", + "donut-start-angle": "Кут початку (градуси)", + "bar-settings": "Налаштування смуги індикатора", + "relative-bar-width": "Відносна ширина смуги", + "neon-glow-brightness": "Яскравість неонового ефекту (0-100)", + "neon-glow-brightness-hint": "0 - вимкнути ефект", + "stripes-thickness": "Товщина смуг", + "stripes-thickness-hint": "0 - без смуг", + "rounded-line-cap": "Округлий кінець лінії", + "bar-color-settings": "Налаштування кольору смуги", + "use-precise-level-color-values": "Використовувати точні значення кольору рівнів", + "bar-colors": "Кольори смуги, від нижчого до вищого", + "color": "Колір", + "no-bar-colors": "Кольори смуги не налаштовані", + "add-bar-color": "Додати колір смуги", + "from": "Від", + "to": "До", + "fixed-level-colors": "Кольори смуги з використанням граничних значень", + "gauge-title-settings": "Налаштування заголовка індикатора", + "show-gauge-title": "Показати заголовок індикатора", + "gauge-title": "Заголовок індикатора", + "gauge-title-font": "Шрифт заголовка індикатора", + "unit-title-and-timestamp-settings": "Налаштування заголовка одиниць та мітки часу", + "show-timestamp": "Мітка часу", + "timestamp-format": "Формат мітки часу", + "label-font": "Шрифт маркування, що показується під значенням", + "value-settings": "Налаштування значення", + "show-value": "Показати текст значення", + "min-max-settings": "Налаштування міток мінімуму/максимуму", + "show-min-max": "Показати мінімальні та максимальні значення", + "min-max-font": "Шрифт міток мінімуму та максимуму", + "show-ticks": "Показати поділки", + "tick-width": "Ширина поділок", + "tick-color": "Колір поділок", + "tick-values": "Значення поділок", + "no-tick-values": "Значення поділок не налаштовані", + "add-tick-value": "Додати значення поділки", + "gauge-appearance": "Зовнішній вигляд індикатора", + "units-title": "Заголовок одиниць", + "value": "Значення", + "ticks": "Поділки", + "arrow-and-scale-color": "Колір стрілки та шкали за замовчуванням", + "scale-settings": "Налаштування шкали", + "scale": "Шкала", + "scale-color": "Кольори шкали", + "compass-appearance": "Зовнішній вигляд компаса", + "label": "Маркування", + "labels": "Маркування", + "label-style": "Стиль маркування", + "simple-gauge-type": "Тип", + "gauge-bar-background": "Фон смуги індикатора", + "bar-color": "Колір смуги", + "min-and-max-value": "Мінімальне та максимальне значення", + "min-and-max-label": "Маркування мінімуму та максимуму", + "font": "Шрифт", + "tick-width-and-color": "Ширина та колір поділок", + "min-max-validation-text": "Максимальне значення повинно бути більше мінімального" + }, + "gpio": { + "pin": "Пін", + "label": "Маркування", + "row": "Рядок", + "column": "Стовпець", + "color": "Колір", + "panel-settings": "Налаштування панелі", + "background-color": "Колір фону", + "gpio-switches": "GPIO перемикачі", + "no-gpio-switches": "GPIO перемикачі не налаштовані", + "add-gpio-switch": "Додати GPIO перемикач", + "gpio-status-request": "Запит статусу GPIO", + "method-name": "Назва методу", + "method-body": "Тіло методу", + "gpio-status-change-request": "Запит зміни статусу GPIO", + "parse-gpio-status-function": "Функція парсингу статусу GPIO", + "gpio-leds": "GPIO світлодіоди", + "no-gpio-leds": "GPIO світлодіоди не налаштовані", + "add-gpio-led": "Додати GPIO світлодіод" + }, + "html-card": { + "html": "HTML", + "css": "CSS" + }, + "input-widgets": { + "attribute-not-allowed": "Параметр атрибута не може бути використаний у цьому віджеті", + "blocked-location": "Геолокація заблокована у вашому браузері", + "claim-device": "Претендувати на пристрій", + "claim-failed": "Не вдалося претендувати на пристрій!", + "claim-not-found": "Пристрій не знайдено!", + "claim-successful": "Пристрій успішно отримано!", + "date": "Дата", + "device-name": "Назва пристрою", + "device-name-required": "Назва пристрою обов'язкова", + "discard-changes": "Відкинути зміни", + "entity-attribute-required": "Атрибут сутності обов'язковий", + "entity-coordinate-required": "Обидва поля, широта та довгота, обов'язкові", + "entity-timeseries-required": "Часовий ряд сутності обов'язковий", + "get-location": "Отримати поточне місцезнаходження", + "invalid-date": "Невірна дата", + "latitude": "Широта", + "longitude": "Довгота", + "min-value-error": "Мінімальне значення {{value}}", + "max-value-error": "Максимальне значення {{value}}", + "not-allowed-entity": "Вибрана сутність не може мати спільні атрибути", + "no-attribute-selected": "Не вибрано атрибут", + "no-datakey-selected": "Не вибрано datakey", + "no-coordinate-specified": "Datakey для широти/довготи не вказано", + "no-entity-selected": "Не вибрано сутність", + "no-image": "Немає зображення", + "no-support-geolocation": "Ваш браузер не підтримує геолокацію", + "no-support-web-camera": "Ваш браузер не підтримує камери", + "enable-https-use-widget": "Будь ласка, увімкніть HTTPS для використання цього віджету", + "no-found-your-camera": "Не вдалося знайти вашу камеру", + "no-permission-camera": "Дозвіл було відмовлено користувачем / цей сайт не має дозволу на використання камери", + "no-timeseries-selected": "Не вибрано часовий ряд", + "secret-key": "Секретний ключ", + "secret-key-required": "Секретний ключ обов'язковий", + "switch-attribute-value": "Перемикання значення атрибута сутності", + "switch-camera": "Перемикання камери", + "switch-timeseries-value": "Перемикання значення часового ряду сутності", + "take-photo": "Зробити фото", + "time": "Час", + "timeseries-not-allowed": "Параметр часового ряду не може бути використаний у цьому віджеті", + "update-failed": "Оновлення не вдалося", + "update-successful": "Оновлення успішне", + "update-attribute": "Оновити атрибут", + "update-timeseries": "Оновити часовий ряд", + "value": "Значення", + "general-settings": "Загальні налаштування", + "widget-title": "Заголовок віджету", + "claim-button-label": "Маркування кнопки претендування", + "show-secret-key-field": "Показати поле вводу 'Секретний ключ'", + "labels-settings": "Налаштування міток", + "show-labels": "Показати маркування", + "device-name-label": "Маркування для поля вводу назви пристрою", + "secret-key-label": "Маркування для поля вводу секретного ключа", + "messages-settings": "Налаштування повідомлень", + "claim-device-success-message": "Текстове повідомлення про успішне претендування на пристрій", + "claim-device-not-found-message": "Текстове повідомлення, коли пристрій не знайдено", + "claim-device-failed-message": "Текстове повідомлення про неуспішне претендування на пристрій", + "claim-device-name-required-message": "Повідомлення про помилку 'Назва пристрою обов'язкова'", + "claim-device-secret-key-required-message": "Повідомлення про помилку 'Секретний ключ обов'язковий'", + "show-label": "Показати маркування", + "label": "Маркування", + "required": "Обов'язково", + "required-error-message": "Повідомлення про помилку 'Обов'язково'", + "show-result-message": "Показати повідомлення результату", + "integer-field-settings": "Налаштування поля для цілих чисел", + "min-value": "Мінімальне значення", + "max-value": "Максимальне значення", + "double-field-settings": "Налаштування поля для чисел з плаваючою комою", + "text-field-settings": "Налаштування текстового поля", + "min-length": "Мінімальна довжина", + "max-length": "Максимальна довжина", + "checkbox-settings": "Налаштування чекбоксу", + "true-label": "Маркування для вибраного", + "false-label": "Маркування для не вибраного", + "image-input-settings": "Налаштування вводу зображення", + "display-preview": "Показати прев'ю", + "display-clear-button": "Показати кнопку очищення", + "display-apply-button": "Показати кнопку застосування", + "display-discard-button": "Показати кнопку скасування", + "datetime-field-settings": "Налаштування поля дати/часу", + "display-time-input": "Показати ввід часу", + "latitude-key-name": "Назва ключа широти", + "longitude-key-name": "Назва ключа довготи", + "show-get-location-button": "Показати кнопку 'Отримати поточне місцезнаходження'", + "use-high-accuracy": "Використовувати високу точність", + "location-fields-settings": "Налаштування полів місцезнаходження", + "latitude-label": "Маркування для широти", + "longitude-label": "Маркування для довготи", + "input-fields-alignment": "Вирівнювання полів вводу", + "input-fields-alignment-column": "Стовпець (за замовчуванням)", + "input-fields-alignment-row": "Рядок", + "layout": "Макет", + "row-gap": "Проміжок між рядками в пікселях", + "column-gap": "Проміжок між стовпцями в пікселях", + "latitude-field-required": "Поле широти обов'язкове", + "longitude-field-required": "Поле довготи обов'язкове", + "attribute-settings": "Налаштування атрибута", + "widget-mode": "Режим віджету", + "widget-mode-update-attribute": "Оновити атрибут", + "widget-mode-update-timeseries": "Оновити часовий ряд", + "attribute-scope": "Обсяг атрибута", + "attribute-scope-server": "Атрибут сервера", + "attribute-scope-shared": "Спільний атрибут", + "value-required": "Значення обов'язкове", + "image-settings": "Налаштування зображення", + "image-format": "Формат зображення", + "image-format-jpeg": "JPEG", + "image-format-png": "PNG", + "image-format-webp": "WEBP", + "image-quality": "Якість зображення", + "max-image-width": "Максимальна ширина", + "max-image-height": "Максимальна висота", + "action-buttons": "Кнопки дій", + "show-action-buttons": "Показати кнопки дій", + "update-all-values": "Оновити всі значення, не тільки змінені", + "save-button-label": "Маркування кнопки 'ЗБЕРЕГТИ'", + "reset-button-label": "Маркування кнопки 'Скасувати'", + "group-settings": "Налаштування групи", + "show-group-title": "Показати заголовок для групи полів, пов'язаних з різними сутностями", + "group-title": "Заголовок групи", + "fields-alignment": "Вирівнювання полів", + "fields-alignment-row": "Рядок (за замовчуванням)", + "fields-alignment-column": "Стовпець", + "fields-in-row": "Кількість полів у рядку", + "option-value": "Значення (напишіть 'null' для створення порожньої опції)", + "option-label": "Маркування", + "hide-input-field": "Сховати поле вводу", + "datakey-type": "Тип datakey", + "datakey-type-server": "Атрибут сервера (за замовчуванням)", + "datakey-type-shared": "Спільний атрибут", + "datakey-type-timeseries": "Часовий ряд", + "datakey-value-type": "Тип значення datakey", + "datakey-value-type-string": "Рядок", + "datakey-value-type-double": "Число з плаваючою комою", + "datakey-value-type-integer": "Ціле число", + "datakey-value-type-json": "JSON", + "datakey-value-type-boolean-checkbox": "Булевий (чекбокс)", + "datakey-value-type-boolean-switch": "Булевий (перемикач)", + "datakey-value-type-date-time": "Дата та час", + "datakey-value-type-date": "Дата", + "datakey-value-type-time": "Час", + "datakey-value-type-select": "Вибір", + "datakey-value-type-radio": "Радіо", + "datakey-value-type-color": "Колір", + "value-is-required": "Значення обов'язкове", + "ability-to-edit-attribute": "Можливість редагувати атрибут", + "ability-to-edit-attribute-editable": "Редагований (за замовчуванням)", + "ability-to-edit-attribute-disabled": "Вимкнено", + "ability-to-edit-attribute-readonly": "Тільки для читання", + "disable-on-datakey-name": "Вимкнути при неправильному значенні іншого datakey (вкажіть назву datakey)", + "field-appearance": "Зовнішній вигляд поля", + "appearance-fill": "Заповнення", + "appearance-outline": "Контур", + "subscript-sizing": "Розмір підрядка", + "subscript-sizing-fixed": "Фіксований", + "subscript-sizing-dynamic": "Динамічний", + "slide-toggle-settings": "Налаштування слайд-перемикача", + "slide-toggle-label-position": "Позиція мітки слайд-перемикача", + "slide-toggle-label-position-after": "Після", + "slide-toggle-label-position-before": "До", + "select-options": "Опції вибору", + "no-select-options": "Опції вибору не налаштовані", + "add-select-option": "Додати опцію вибору", + "numeric-field-settings": "Налаштування числового поля", + "step-interval": "Інтервал кроку між значеннями", + "error-messages": "Повідомлення про помилки", + "min-value-error-message": "Повідомлення про помилку 'Мінімальне значення'", + "max-value-error-message": "Повідомлення про помилку 'Максимальне значення'", + "invalid-date-error-message": "Повідомлення про помилку 'Невірна дата'", + "invalid-JSON-error-message": "Повідомлення про помилку 'Невірний JSON'", + "icon-settings": "Налаштування іконки", + "dialog-editor-settings": "Налаштування редактора діалогу", + "use-custom-icon": "Використовувати кастомну іконку", + "input-cell-icon": "Іконка для відображення перед клітинкою вводу", + "value-conversion-settings": "Налаштування перетворення значень", + "get-value-settings": "Налаштування отримання значення", + "use-get-value-function": "Використовувати функцію getValue", + "get-value-function": "Функція getValue", + "set-value-settings": "Налаштування встановлення значення", + "use-set-value-function": "Використовувати функцію setValue", + "set-value-function": "Функція setValue", + "json-invalid": "Формат значення JSON неправильний", + "title": "Заголовок", + "cancel-button-label": "Мітка кнопки 'Скасувати'", + "radio-button-settings": "Налаштування радіокнопки", + "color": "Колір", + "columns": "Стовпці", + "radio-options": "Опції радіокнопок", + "no-radio-options": "Опції радіокнопок не налаштовані", + "add-radio-option": "Додати опцію радіокнопки", + "radio-label-position": "Позиція мітки", + "radio-label-position-before": "До", + "radio-label-position-after": "Після" + }, + "invalid-qr-code-text": "Невірний текст для QR-коду. Вхідні дані повинні мати тип рядка", + "qr-code": { + "use-qr-code-text-function": "Використовувати функцію тексту QR-коду", + "qr-code-text-pattern": "Шаблон тексту для QR-коду (наприклад, '${entityName} | ${keyName} - деякий текст.')", + "qr-code-text-pattern-hint": "Шаблон тексту QR-коду використовує значення першого знайденого ключа в сутностях за псевдонімом сутності.", + "qr-code-text-pattern-required": "Шаблон тексту QR-коду обов'язковий.", + "qr-code-text-function": "Функція тексту QR-коду" + }, + "label-widget": { + "label-pattern": "Шаблон", + "label-pattern-hint": "Підказка: наприклад, 'Текст ${keyName} одиниць.' або ${#<key index>} одиниць'", + "label-pattern-required": "Шаблон обов'язковий", + "label-position": "Позиція (відсоток відносно фону)", + "x-pos": "X", + "y-pos": "Y", + "background-color": "Колір фону", + "font-settings": "Налаштування шрифта", + "background-image": "Фонове зображення", + "labels": "Маркування", + "no-labels": "Маркування не налаштовані", + "add-label": "Додати маркування" + }, + "navigation": { + "title": "Заголовок", + "navigation-path": "Шлях навігації", + "filter-type": "Тип фільтра", + "filter-type-all": "Усі елементи", + "filter-type-include": "Включити елементи", + "filter-type-exclude": "Виключити елементи", + "items": "Елементи", + "enter-urls-to-filter": "Введіть URL-адреси для фільтрації..." + }, + "persistent-table": { + "rpc-id": "RPC ID", + "message-type": "Тип повідомлення", + "method": "Метод", + "params": "Параметри", + "created-time": "Час створення", + "expiration-time": "Час закінчення", + "retries": "Повторні спроби", + "status": "Статус", + "filter": "Фільтр", + "refresh": "Оновити", + "add": "Додати RPC запит", + "details": "Деталі", + "delete": "Видалити", + "delete-request-title": "Видалити постійний RPC запит", + "delete-request-text": "Ви впевнені, що хочете видалити запит?", + "details-title": "Деталі RPC ID: ", + "additional-info": "Додаткова інформація", + "response": "Відповідь", + "any-status": "Будь-який статус", + "rpc-status-list": "Список статусів RPC", + "no-request-prompt": "Немає запитів для відображення", + "send-request": "Відправити запит", + "add-title": "Створити постійний RPC запит", + "method-error": "Метод обов'язковий.", + "timeout-error": "Мінімальне значення часу очікування — 5000 (5 секунд).", + "white-space-error": "Пробіли не дозволяються.", + "rpc-status": { + "QUEUED": "В ЧЕРЗІ", + "SENT": "ВІДПРАВЛЕНО", + "DELIVERED": "ДОСТАВЛЕНО", + "SUCCESSFUL": "УСПІШНО", + "TIMEOUT": "ТАЙМАУТ", + "EXPIRED": "ПРОСТРОЧЕНИЙ", + "FAILED": "НЕВДАЧА" + }, + "rpc-search-status-all": "ВСІ", + "message-types": { + "false": "Двосторонній", + "true": "Односторонній" + }, + "general-settings": "Загальні налаштування", + "enable-filter": "Увімкнути фільтр", + "enable-sticky-header": "Показувати заголовок під час прокручування", + "enable-sticky-action": "Показувати стовпець дій під час прокручування", + "display-request-details": "Показати деталі запиту", + "allow-send-request": "Дозволити відправку RPC запиту", + "allow-delete-request": "Дозволити видалення запиту", + "columns-settings": "Налаштування стовпців", + "display-columns": "Стовпці для відображення", + "column": "Стовпець", + "no-columns-found": "Стовпці не знайдені", + "no-columns-matching": "'{{column}}' не знайдений." + }, + "range-chart": { + "chart": "Графік", + "data-zoom": "Масштабування даних", + "range-chart-appearance": "Зовнішній вигляд графіка діапазону", + "range-colors": "Кольори діапазону", + "out-of-range-color": "Колір поза діапазоном", + "show-range-thresholds": "Показати пороги діапазону", + "range-thresholds-settings": "Налаштування порогів діапазону", + "fill-area": "Заповнення області", + "fill-area-opacity": "Непрозорість заповненої області", + "range-chart-style": "Стиль графіка діапазону" + }, + "knob": { + "behavior": "Поводження", + "initial-value": "Початкове значення", + "initial-value-hint": "Дія для отримання початкового значення ручки.", + "on-value-change": "При зміні значення", + "on-value-change-hint": "Дія, що виконується при зміні значення ручки.", + "range": "Діапазон", + "min": "мін", + "max": "макс", + "value": "Значення", + "fallback-initial-value": "Резервне початкове значення" + }, + "rpc": { + "value-settings": "Налаштування значення", + "initial-value": "Початкове значення", + "retrieve-value-settings": "Налаштування отримання значення вкл/викл", + "retrieve-value-method": "Метод отримання значення", + "retrieve-value-method-none": "Не отримувати", + "retrieve-value-method-rpc": "Викликати RPC метод отримання значення", + "retrieve-value-method-attribute": "Підписатися на атрибут", + "retrieve-value-method-timeseries": "Підписатися на часовогу ряду", + "attribute-value-key": "Ключ атрибута", + "timeseries-value-key": "Ключ часового ряду", + "get-value-method": "Метод RPC для отримання значення", + "parse-value-function": "Функція розбору значення", + "update-value-settings": "Оновлення налаштувань значення", + "set-value-method": "Метод RPC для встановлення значення", + "convert-value-function": "Функція перетворення значення", + "rpc-settings": "Налаштування RPC", + "request-timeout": "Таймаут запиту RPC (мс)", + "persistent-rpc-settings": "Постійні налаштування RPC", + "request-persistent": "Постійний запит RPC", + "persistent-polling-interval": "Інтервал опитування (мс) для отримання відповіді на постійний RPC запит", + "common-settings": "Загальні налаштування", + "switch-title": "Назва перемикача", + "show-on-off-labels": "Показувати маркування вкл/викл", + "slide-toggle-label": "Маркування перемикача", + "label-position": "Позиція маркування", + "label-position-before": "Перед", + "label-position-after": "Після", + "slider-color": "Колір слайдера", + "slider-color-primary": "Основний", + "slider-color-accent": "Акцентний", + "slider-color-warn": "Попередження", + "button-style": "Стиль кнопки", + "button-raised": "Піднята кнопка", + "button-primary": "Основний колір", + "button-background-color": "Колір фону кнопки", + "button-text-color": "Колір тексту кнопки", + "widget-title": "Заголовок віджета", + "button-label": "Маркування кнопки", + "device-attribute-scope": "Область атрибутів пристрою", + "server-attribute": "Атрибут сервера", + "shared-attribute": "Спільний атрибут", + "device-attribute-parameters": "Параметри атрибутів пристрою", + "is-one-way-command": "Є односторонньою командою", + "rpc-method": "RPC метод", + "rpc-method-params": "Параметри RPC методу", + "show-rpc-error": "Показати помилку виконання RPC команди", + "led-title": "Заголовок LED", + "led-color": "Колір LED", + "check-status-settings": "Налаштування перевірки статусу", + "perform-rpc-status-check": "Виконати перевірку статусу пристрою через RPC", + "retrieve-led-status-value-method": "Метод отримання значення статусу LED", + "led-status-value-attribute": "Атрибут пристрою, що містить значення статусу LED", + "led-status-value-timeseries": "Часовий ряд пристрою, що містить значення статусу LED", + "check-status-method": "RPC метод перевірки статусу пристрою", + "parse-led-status-value-function": "Функція розбору значення статусу LED", + "knob-title": "Заголовок кнопки" + }, + "maps": { + "map-type": { + "type": "Тип карти", + "map": "Карта", + "image": "Зображення" + }, + "image": { + "image-source": "Джерело зображення", + "image-source-image": "Зображення", + "image-source-entity-key": "Ключ сутності", + "source-entity-alias": "Псевдонім джерела сутності", + "image-url-key": "Ключ URL зображення", + "image-url-key-required": "Ключ URL зображення є обов'язковим" + }, + "control": { + "map-controls": "Управління картою", + "position": "Позиція", + "position-topleft": "Верхній лівий кут", + "position-topright": "Верхній правий кут", + "position-bottomleft": "Нижній лівий кут", + "position-bottomright": "Нижній правий кут", + "zoom-actions": "Дії масштабування", + "zoom-scroll": "Прокрутка", + "zoom-double-click": "Подвійне натискання", + "zoom-control-buttons": "Кнопки управління масштабом", + "scale": "Масштаб", + "scale-metric": "Метрика", + "scale-imperial": "Імперіал", + "switch-to-drag-mode-using-button": "Перемкнути в режим перетягування за допомогою кнопки" + }, + "timeline": { + "control-panel": "Панель управління часовою шкалою", + "time-step": "Крок часу", + "speed-options": "Опції швидкості", + "timestamp": "Мітка часу", + "snap-to-real-location": "Прив'язати до реального місця", + "location-snap-filter-function": "Функція фільтрації прив'язки до місця", + "no-trips-data-available": "Дані по поїздках не доступні" + }, + "map-action": { + "map-action-buttons": "Кнопки дій карти", + "label": "Маркування", + "icon": "Іконка", + "color": "Колір", + "action": "Дія", + "add-button": "Додати кнопку", + "no-action-buttons-configured": "Кнопки дій не налаштовані", + "remove-action-button": "Видалити кнопку дії", + "map-action-button": "Кнопка дії карти", + "button-requires": "Кнопка потребує маркування або іконки" + }, + "common": { + "common-map-settings": "Загальні налаштування карти", + "fit-map-bounds": "Пристосувати межі карти, щоб покрити всі маркери", + "default-map-center-position": "Позиція центру карти за замовчуванням", + "default-map-zoom-level": "Рівень масштабування карти за замовчуванням", + "entities-limit": "Обмеження на кількість сутностей для завантаження" + }, + "layer": { + "label": "Маркування", + "layer": "Шар", + "layers": "Шари", + "map-layers": "Шари карти", + "add-layer": "Додати шар", + "layer-settings": "Налаштування шару", + "remove-layer": "Видалити шар", + "no-layers": "Шарів не налаштовано", + "roadmap": "Дорожня карта", + "satellite": "Супутник", + "hybrid": "Гібридний", + "reference": { + "reference-layer": "Референсний шар", + "no-layer": "Без шару", + "openstreetmap-hybrid": "OpenStreetMap Гібрид", + "world-edition-hybrid": "Гібрид світової редакції", + "enhanced-contrast-hybrid": "Гібрид з підвищеним контрастом" }, - "column-type-required": "Необхідно вказати тип стовпця.", - "entity-field": { - "created-time": "Час створення", - "name": "Назва", - "type": "Тип", - "assigned_customer": "Призначений клієнт", - "authority": "Авторитет", - "first_name": "Ім'я", - "last_name": "Прізвище", - "email": "Електронна пошта", - "title": "Назва", - "country": "Країна", - "state": "Штат", - "city": "Місто", - "address": "Адреса", - "address2": "Адреса 2", - "zip": "Zip", - "phone": "Телефон" + "provider": { + "provider": "Постачальник", + "openstreet": { + "title": "OpenStreet", + "mapnik": "Mapnik", + "hot": "HOT", + "esri-street": "WorldStreetMap", + "esri-topo": "WorldTopoMap", + "esri-imagery": "WorldImagery", + "cartodb-positron": "Positron", + "cartodb-dark-matter": "DarkMatter" + }, + "google": { + "title": "Google", + "roadmap": "Дорожня карта", + "satellite": "Супутникова карта", + "hybrid": "Гібридна", + "terrain": "Рельєф" + }, + "here": { + "title": "HERE", + "normal-day": "Звичайний день", + "normal-night": "Звичайна ніч", + "hybrid-day": "Гібридний день", + "terrain-day": "Рельєфний день" + }, + "tencent": { + "title": "Tencent", + "normal": "Звичайний", + "satellite": "Супутниковий", + "terrain": "Рельєф" + }, + "custom": { + "title": "Користувацький", + "tile-url": "URL плитки" + } }, - "sort-order": { - "asc": "У порядку зростання", - "desc": "У порядку спадання", - "none": "Немає" + "credentials": { + "credentials": "Облікові дані", + "api-key": "API ключ" + } + }, + "overlays": { + "overlays": "Накладки", + "overlays-hint": "Налаштуйте джерела даних, зовнішній вигляд, поведінку, параметри редагування та групування для сутностей карти", + "trips": "Поїздки", + "markers": "Маркери", + "polygons": "Многоугольники", + "circles": "Коло" + }, + "data-layer": { + "source": "Джерело", + "filter": "Фільтр", + "additional-data-keys": "Додаткові ключі даних", + "additional-datasources": "Додаткові джерела даних", + "additional-datasources-hint": "Джерело даних для доступу до атрибутів або телеметрії з сутностей, які не відображаються на карті, використовується в функціях накладок карти.", + "more-datasources": "Більше джерел даних", + "data-keys": "Ключі даних", + "add-datasource": "Додати джерело даних", + "no-datasources": "Джерела даних не налаштовані", + "remove-datasource": "Видалити джерело даних", + "behavior": "Поведінка", + "on-click": "По кліку", + "on-click-hint": "Дія, що виконується при кліку користувача на елемент карти.", + "groups": "Групи", + "groups-hint": "Список імен груп, призначених для накладки, використовуваний для перемикання її видимості на карті.", + "color": "Колір", + "color-settings": "Налаштування кольору", + "color-type-constant": "Постійний", + "color-type-range": "Діапазон", + "color-type-function": "Функція", + "color-range-source-key": "Ключ джерела діапазону кольорів", + "color-range-source-key-required": "Ключ джерела діапазону кольорів обов'язковий", + "color-range": "Діапазон кольорів", + "color-function": "Функція кольору", + "label": "Маркування", + "tooltip": "Підказка", + "pattern-type-pattern": "Шаблон", + "pattern-type-function": "Функція", + "label-pattern": "Маркування (приклади шаблонів: '${entityName}', '${entityName}: (Текст ${keyName} одиниці.)' )", + "label-function": "Функція маркування", + "tooltip-pattern": "Підказка (наприклад, 'Текст ${keyName} одиниці.' або Текст посилання)", + "tooltip-function": "Функція підказки", + "tooltip-trigger": "Тригер підказки", + "tooltip-trigger-click": "Показати підказку при кліку", + "tooltip-trigger-hover": "Показати підказку при наведенні", + "auto-close-tooltips": "Автоматичне закриття підказок", + "tooltip-offset": "Зміщення підказки", + "tooltip-offset-horizontal": "Горизонтальне", + "tooltip-offset-vertical": "Вертикальне", + "tooltip-tag-actions": "Дії з тегами", + "add-tooltip-tag-action": "Додати дію тегу", + "edit-tooltip-tag-action": "Редагувати дію тегу", + "remove-tooltip-tag-action": "Видалити дію тегу", + "action-add": "Додати", + "action-edit": "Редагувати", + "action-move": "Перемістити", + "action-remove": "Видалити", + "edit-instruments": "Інструменти", + "persist-location-attribute-scope": "Область атрибуту для збереження місця", + "enable-snapping": "Увімкнути прив'язку до інших вершин для точного малювання", + "enable-snapping-hint": "Автоматично вирівнює нові точки з існуючими формами, щоб полегшити і зробити малювання точнішим.", + "drag-drop-mode": "Режим перетягування", + "trip": { + "no-trips": "Поїздки не налаштовані", + "add-trip": "Додати поїздку", + "trip-configuration": "Налаштування поїздки", + "remove-trip": "Видалити поїздку" }, - "details-mode": { - "on-row-click": "Клацніть на рядок", - "on-action-button-click": "Клацніть на кнопку детелі", - "disabled": "Вимкнено" + "marker": { + "marker": "Маркер", + "latitude-key": "Ключ широти", + "longitude-key": "Ключ довготи", + "x-pos-key": "Ключ X позиції", + "y-pos-key": "Ключ Y позиції", + "latitude-key-required": "Ключ широти обов'язковий", + "longitude-key-required": "Ключ довготи обов'язковий", + "x-pos-key-required": "Ключ X позиції обов'язковий", + "y-pos-key-required": "Ключ Y позиції обов'язковий", + "no-markers": "Маркерів не налаштовано", + "add-marker": "Додати маркер", + "marker-configuration": "Налаштування маркера", + "remove-marker": "Видалити маркер", + "marker-type": "Тип маркера", + "marker-type-shape": "Форма", + "marker-type-icon": "Іконка", + "marker-type-image": "Зображення", + "shape": "Форма", + "icon": "Іконка", + "image": "Зображення", + "marker-shapes": "Форми маркерів", + "marker-icon": "Іконка маркера", + "marker-appearance": "Зовнішній вигляд маркера", + "marker-image": "Зображення маркера", + "marker-image-type-image": "Зображення", + "marker-image-type-function": "Функція", + "custom-marker-image-size": "Користувацький розмір зображення маркера", + "marker-image-function": "Функція зображення маркера", + "marker-images": "Зображення маркерів", + "marker-offset": "Зміщення маркера", + "offset-horizontal": "Горизонтальне", + "offset-vertical": "Вертикальне", + "rotate-marker": "Обертати маркер", + "offset-angle": "Кут зміщення", + "position-conversion": "Конверсія позиції", + "position-conversion-function": "Функція конверсії позиції, повинна повертати координати x, y як числа з плаваючою точкою від 0 до 1", + "clustering": { + "use-map-markers-clustering": "Використовувати кластеризацію маркерів на карті", + "zoom-on-cluster-click": "Масштабування при натисканні на кластер", + "max-zoom": "Максимальний рівень масштабування, коли маркер може бути частиною кластера (0 - 18)", + "max-radius": "Максимальний радіус, який покриває кластер", + "zoom-animation": "Анімація маркерів при масштабуванні", + "bounds-on-cluster-mouse-over": "Межі маркерів при наведенні миші на кластер", + "spiderfy-max-zoom-level": "Spiderfy на максимальному рівні масштабування (щоб побачити всі маркери кластера)", + "load-optimization": "Оптимізація завантаження", + "chunked-load": "Використовувати чанки для додавання маркерів, щоб сторінка не зависала", + "lazy-load": "Використовувати відкладене завантаження для додавання маркерів", + "use-cluster-marker-color-function": "Використовувати функцію кольору для маркерів кластера", + "marker-color-function": "Функція кольору маркера" + }, + "edit": "Редагувати маркер", + "remove-marker-for": "Видалити маркер для '{{entityName}}'", + "place-marker": "Розмістити маркер", + "place-marker-hint": "Натисніть, щоб розмістити маркер", + "place-marker-hint-with-entity": "Натисніть, щоб розмістити сутність '{{entityName}}'" }, - "add-to-group": "Додати до групи", - "move-to-group": "Перемістити до групи", - "select-entity-group": "Виберіть групу сутностей", - "no-entity-groups-matching": "Не знайдено жодних груп сутностей, що відповідають '{{entityGroup}}'.", - "target-entity-group-required": "Необхідно вказати цільову групу сутності.", - "remove-from-group": "Видалити з групи", - "group-table-title": "Group table title", - "enable-search": "Увімкнути пошук сутностей", - "enable-add": "Увімкнути додавання сутностей", - "enable-delete": "Увімкнути видалення сутностей", - "enable-selection": "Увімкнути вибір сутностей", - "enable-group-transfer": "Увімкнути дії групового перенесення", - "display-pagination": "Відображення сторінок", - "default-page-size": "Розмір сторінки за замовчуванням", - "enable-assignment-actions": "Увімкнути дії призначення", - "enable-credentials-management": "Увімкнути керування авторизаційними даними", - "enable-users-management": "Увімкнути керування користувачами", - "enable-assets-management": "Увімкнути керування активами", - "enable-devices-management": "Увімкнути керування пристроями", - "enable-dashboards-management": "Увімкнути керування панелями візуалізації", - "open-details-on": "Відкрити деталі сутності по", - "select-existing": "Виберіть існуючу групу сутностей", - "create-new": "Створити нову групу сутностей", - "new-entity-group-name": "Нова назва групи сутностей", - "entity-group-list": "Список групи сутностей", - "entity-group-list-empty": "Не вибрано жодної групи сутностей.", - "name-starts-with": "Назва групи сутностей починається з", - "entity-group-name-filter-required": "Необхідно задати назву групи сутностей." - }, - "entity-view": { - "entity-view": "Представлення сутності", - "entity-view-required": "Необхідно вказати представлення сутності.", - "entity-views": "Представлення сутностей", - "management": "Керування представленням сутностей", - "view-entity-views": "Переглянути представлення сутностей", - "entity-view-alias": "Псевдонім представлення сутності", - "aliases": "Псевдоніми представлення сутності", - "no-alias-matching": "Псевдонім '{{alias}}' не знайдено.", - "no-aliases-found": "Псевдоніми не знайдено.", - "no-key-matching": "Ключ '{{key}}' не знайдено.", - "no-keys-found": "Ключі не знайдено.", - "create-new-alias": "Створити новий!", - "create-new-key": "Створити новий!", - "duplicate-alias-error": "Псевдонім з такою назвою вже існує '{{alias}}'.
Псевдоніми представлення повинні бути унікальними на панелі візуалізації.", - "configure-alias": "Налаштувати псевдонім '{{alias}}'", - "no-entity-views-matching": "Сутності, які відповідають '{{entity}}' не знайдені.", - "alias": "Псевдонім", - "alias-required": "Необхідно вказати псевдонім представлення сутності.", - "remove-alias": "Видалити псевдонім представлення сутності", - "add-alias": "Додати псевдонім представлення сутності", - "name-starts-with": "Ім'я представлення сутності починається з", - "entity-view-list": "Список представлень сутностей", - "use-entity-view-name-filter": "Використати фільтр", - "entity-view-list-empty": "Не вибрано жодного представлення сутності.", - "entity-view-name-filter-required": "Необхідно вказати фільтр назв представлення сутності.", - "entity-view-name-filter-no-entity-view-matched": "Представлення сутностей, назви яких починаються з '{{entityView}}' не знайдено.", - "add": "Додати представлення сутності", - "assign-to-customer": "Призначити клієнту", - "assign-entity-view-to-customer": "Призначити представлення сутності(-ей) клієнту", - "assign-entity-view-to-customer-text": "Будь ласка, виберіть представлення сутності для призначення клієнту", - "no-entity-views-text": "Представлення сутності не знайдено", - "assign-to-customer-text": "Будь ласка, виберіть клієнта, для призначення представлення(-ь) сутності(-ей)", - "entity-view-details": "Деталі представлення сутності", - "add-entity-view-text": "Додати нове представлення сутності", - "delete": "Видалити представлення сутності", - "assign-entity-views": "Призначити представлення сутності", - "assign-entity-views-text": "Призначити { count, plural, =1 {1 представлення сутності} other {# представлення сутностей } } клієнту", - "delete-entity-views": "Видалити представлення сутностей", - "unassign-from-customer": "Відкликати у клієнта", - "unassign-entity-views": "Відкликати представлення сутностей", - "unassign-entity-views-action-title": "Відкликати { count, plural, =1 {1 представлення сутності} other {# представлень сутностей} } у клієнта", - "assign-new-entity-view": "Призначити нове представлення сутності", - "delete-entity-view-title": "Ви впевнені, що хочете видалити представлення сутності '{{entityViewName}}'?", - "delete-entity-view-text": "Будьте обережні, після підтвердження, представлення сутності та всі пов'язані з ним дані стануть недоступними.", - "delete-entity-views-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 представлення сутності } other {# представлення сутностей } }?", - "delete-entity-views-action-title": "Видалити { count, plural, =1 {1 представлення сутності } other {# представлення сутностей } }", - "delete-entity-views-text": "Будьте обережні, після підтвердження, всі виділені представлення сутностей та дні, пов'язані з ними стануть недоступними.", - "unassign-entity-view-title": "Ви впевнені, що хочете відкликати представлення сутності '{{entityViewName}}'?", - "unassign-entity-view-text": "Після підтвердження представлення сутності буде відкликане у клієнта. Дані представлення сутності не будуть доступні клієнту.", - "unassign-entity-view": "Відкликати представлення сутності", - "unassign-entity-views-title": "Ви впевнені, що хочете відкликати { count, plural, =1 {1 представлення сутності} other {# представлень сутностей} }?", - "unassign-entity-views-text": "Після підтвердження, клієнта буде позбавлено всіх виділених представлень сутностей. Дані представлень сутностей не будуть доступні клієнту.", - "entity-view-type": "Тип представлення сутності", - "entity-view-type-required": "Необхідно вказати тип представлення сутності.", - "select-entity-view-type": "Виберіть тип представлення сутності", - "enter-entity-view-type": "Введіть тип представлення сутності", - "any-entity-view": "Будь-яке представлення сутності", - "no-entity-view-types-matching": "Не знайдено жодних типів представлення сутності, що відповідають '{{entitySubtype}}'.", - "entity-view-type-list-empty": "Не вибрано тип представлення сутності.", - "entity-view-types": "Типи представлення сутності", - "name": "Назва", - "name-required": "Необхідно вказати назву.", - "description": "Опис", - "events": "Події", - "details": "Деталі", - "copyId": "Скопіювати Id представлення сутності", - "assignedToCustomer": "Призначений клієнту", - "unable-entity-view-device-alias-title": "Неможливо видалити псевдонім представлення сутності", - "unable-entity-view-device-alias-text": "Не вдалося видалити псевдонім пристрою '{{entityViewAlias}}', так як він використовується наступним(-и) віджетом(-ами):
{{widgetsList}}", - "select-entity-view": "Вибрати представлення сутності", - "make-public": "Зробити представлення сутності публічним", - "make-private": "Зробити представлення сутності приватним", - "start-date": "Дата початку", - "start-ts": "Час початку", - "end-date": "Дата закінчення", - "end-ts": "Час завершення", - "date-limits": "Обмеження дати", - "client-attributes": "Атрибути клієнта", - "shared-attributes": "Спільні атрибути", - "server-attributes": "Атрибути сервера", - "timeseries": "Телеметрія", - "client-attributes-placeholder": "Атрибути клієнта", - "shared-attributes-placeholder": "Спільні атрибути", - "server-attributes-placeholder": "Атрибути сервера", - "timeseries-placeholder": "Телеметрія", - "target-entity": "Цільова сутність", - "attributes-propagation": "Поширення атрибутів", - "attributes-propagation-hint": "Представлення сутності автоматично копіюватиме вказані атрибути з цільової сутності кожного разу, коли ви зберігаєте або оновлюєте його. В цілях продуктивності, атрибути цільової сутності не поширюються на представлення сутності при кожній зміні її атрибутів. Можна ввімкнути автоматичне поширення, налаштувавши правило \"copy to view\" у вашому ланцюжку правил і пов'язуючи його з повідомленнями типу \"Post attributes\" і \"Attributes Updated\"..", - "timeseries-data": "Дані телеметрії", - "timeseries-data-hint": "Налаштуйте ключі даних телеметрії цільової сутності, які будуть доступні представленню сутності. Ці дані доступні лише для читання.", - "make-public-entity-view-title": "Ви впевнені, що бажаєте зробити представлення сутності '{{entityViewName}}' публічним?", - "make-public-entity-view-text": "Після підтвердження представлення сутності і всі пов'язані з ним дані стануть публічними і будуть доступні для інших користувачів.", - "make-private-entity-view-title": "Ви впевнені, що бажаєте зробити представлення сутності '{{entityViewName}}' приватним?", - "make-private-entity-view-text": "Після підтвердження представлення сутності і всі пов'язані з ним дані стануть приватними і не будуть доступні для інших користувачів." - }, - "event": { - "events": "Події", - "event-type": "Тип події", - "type-error": "Помилка", - "type-lc-event": "Подія життєвого циклу", - "type-stats": "Статистика", - "type-debug-converter": "Налагоджувати", - "type-debug-integration": "Налагоджувати", - "type-debug-rule-node": "Налагоджувати", - "type-debug-rule-chain": "Налагоджувати", - "no-events-prompt": "Не знайдено жодних подій", - "error": "Помилка", - "alarm": "Сигнал тривоги", - "event-time": "Час події", - "server": "Сервер", - "body": "Тіло", - "method": "Метод", - "type": "Тип", - "in": "In", - "out": "Out", - "metadata": "Метадані", - "message": "Повідомлення", - "message-id": "Id повідомлення", - "message-type": "Тип повідомлення", - "data-type": "Тип даних", - "relation-type": "Тип зв'язку", - "data": "Дані", - "event": "Подія", - "status": "Статус", - "success": "Успіх", - "failed": "Невдача", - "messages-processed": "Повідомлення опрацьовані", - "errors-occurred": "Виникли помилки", - "all-events": "Всі", - "entity-type": "Тип сутності", - "clear-request-title": "Видалити всі події", - "clear-request-text": "Ви впевнені, що хочете видалити всі події?" - }, - "extension": { - "extensions": "Розширення", - "selected-extensions": " вибрано { count, plural, =1 {1 розширення} other {# розширення} }", - "type": "Тип", - "key": "Ключ", - "value": "Значення", - "id": "Id", - "extension-id": "Id розширення", - "extension-type": "Тип розширення", - "transformer-json": "JSON *", - "unique-id-required": "Таке Id розширення вже існує.", - "delete": "Видалити розширення", - "add": "Додати розширення", - "edit": "Редагувати розширення", - "delete-extension-title": "Ви дійсно бажаєте видалити розширення '{{extensionId}}'?", - "delete-extension-text": "Будьте обережні, після підтвердження, розширення та всі пов'язані з ним дані стануть недоступними.", - "delete-extensions-title": "Ви дійсно бажаєте видалити { count, plural, =1 {1 розширення} other {# розширення} }?", - "delete-extensions-text": "Будьте обережні, після підтвердження, всі вибрані розширення будуть видалені.", - "converters": "Перетворювачі", - "converter-id": "Id перетворювача", - "configuration": "Конфігурація", - "converter-configurations": "Конфігурації перетворювача", - "token": "Маркер безпеки", - "add-converter": "Додати конвертер", - "add-config": "Додати конфігурацію конвертера", - "device-name-expression": "Маска назви пристрою", - "device-type-expression": "Маска типу пристрою", - "custom": "Користувач", - "to-double": "Подвоїти", - "transformer": "Трансформатор", - "json-required": "Необхідно вказати json трансформатора.", - "json-parse": "Неможливо проаналізувати json трансформатора.", - "attributes": "Атрибути", - "add-attribute": "Додати атрибут", - "add-map": "Додати елемент відображення", - "timeseries": "Телеметрія", - "add-timeseries": "Додати параметри телеметрії", - "field-required": "Поле обовʼязкове для заповнення", - "brokers": "Брокери", - "add-broker": "Додати брокера", - "host": "Хост", - "port": "Порт", - "port-range": "Значення порту має бути в діапазоні від 1 до 65535.", - "ssl": "Ssl", - "credentials": "Авторизаційні дані", - "username": "Ім'я користувача", - "password": "Пароль", - "retry-interval": "Інтервал повтору в мілісекундах", - "anonymous": "Анонімний", - "basic": "Основний", - "pem": "PEM", - "ca-cert": "Файл CA сертифіката *", - "private-key": "Файл приватного ключа *", - "cert": "Файл сертифіката *", - "no-file": "Не вибрано жодного файлу.", - "drop-file": "Перетягніть файл, або клацніть, щоб вибрати файл для завантаження.", - "mapping": "Зіставлення", - "topic-filter": "Фільтр тем", - "converter-type": "Тип конвертера", - "converter-json": "Json", - "json-name-expression": " Json вираз для назви пристрою", - "topic-name-expression": "Вираз для назви пристрою в назві теми", - "json-type-expression": "Json вираз для типу пристрою", - "topic-type-expression": "Вираз для типу пристрою в назві теми", - "attribute-key-expression": "Вираз для ключа атрибута", - "attr-json-key-expression": " Json вираз для ключа атрибута", - "attr-topic-key-expression": "Вираз для ключа атрибута в назві теми", - "request-id-expression": "Вираз для id запиту", - "request-id-json-expression": "Json вираз для id запиту", - "request-id-topic-expression": "Вираз для id запиту в назві теми", - "response-topic-expression": "Вираз для теми відповідей", - "value-expression": "Вираз для значення", - "topic": "Тема", - "timeout": "Час очікування в мілісекундах", - "converter-json-required": "Необхідно вказати json конвертер.", - "converter-json-parse": "Неможливо проаналізувати json конвертера.", - "filter-expression": "Вираз для фільтра", - "connect-requests": "Запити на підключення", - "add-connect-request": "Додати запит на підключення", - "disconnect-requests": "Відключення запитів", - "add-disconnect-request": "Додати запит на відключення", - "attribute-requests": "Запити атрибутів", - "add-attribute-request": "Додати запит атрибута", - "attribute-updates": "Оновлення атрибутів", - "add-attribute-update": "Додати оновлення атрибутів", - "server-side-rpc": "Серверна сторона RPC", - "add-server-side-rpc-request": "Додати RPC-запит на стороні сервера", - "device-name-filter": "Фільтр назви пристрою", - "attribute-filter": "Фільтр атрибутів", - "method-filter": "Фільтр методів", - "request-topic-expression": "Вираз для теми запитів", - "response-timeout": "Час очікування відповіді в мілісекундах", - "topic-expression": "Вираз для назви теми", - "client-scope": "Обсяг клієнта", - "add-device": "Додати пристрій", - "opc-server": "Сервери", - "opc-add-server": "Додати сервер", - "opc-add-server-prompt": "Будь ласка, додайте сервер", - "opc-application-name": "Назва програми", - "opc-application-uri": "URI програми", - "opc-scan-period-in-seconds": "Період сканування в секундах", - "opc-security": "Безпека", - "opc-identity": "Ідентифікація", - "opc-keystore": "Сховище ключів", - "opc-type": "Тип", - "opc-keystore-type": "Тип", - "opc-keystore-location": "Розташування *", - "opc-keystore-password": "Пароль", - "opc-keystore-alias": "Псевдонім", - "opc-keystore-key-password": "Пароль для ключа", - "opc-device-node-pattern": "Патерн OPC вузла пристрою", - "opc-device-name-pattern": "Патерн назви пристрою", - "modbus-server": "Сервери/ведені пристрої", - "modbus-add-server": "Додати сервер/ведений пристрій", - "modbus-add-server-prompt": "Будь ласка, додайте сервер/ведений пристрій", - "modbus-transport": "Транспорт", - "modbus-tcp-reconnect": "Перепідключатися автоматично", - "modbus-port-name": "Ім'я послідовного порту", - "modbus-encoding": "Кодування", - "modbus-parity": "Паритет", - "modbus-baudrate": "Швидкість передачі даних", - "modbus-databits": "Біти даних", - "modbus-stopbits": "Стоп-біти", - "modbus-databits-range": "Біти даних повинні знаходитися в діапазоні від 7 до 8.", - "modbus-stopbits-range": "Стоп-біти повинні знаходитися в діапазоні від 1 до 2.", - "modbus-unit-id": "Unit ID", - "modbus-unit-id-range": "Unit ID should be in a range from 1 to 247.", - "modbus-device-name": "Назва пристрою", - "modbus-poll-period": "Період опитування (мс)", - "modbus-attributes-poll-period": "Період опитування атрибутів (мс)", - "modbus-timeseries-poll-period": "Період опитування телеметрії (мс)", - "modbus-poll-period-range": "Період опитування повинен бути більше 0.", - "modbus-tag": "Тег", - "modbus-function": "Modbus функція", - "modbus-register-address": "Адреса регістру ", - "modbus-register-address-range": "Адреса регістру повинна бути в діапазоні від 0 до 65535.", - "modbus-register-bit-index": "Номер бітів", - "modbus-register-bit-index-range": "Номер бітів повинен знаходитися в діапазоні від 0 до 15.", - "modbus-register-count": "Рахунок регістру", - "modbus-register-count-range": "Рахунок регістру повинен бути більше 0.", - "modbus-byte-order": "Порядок байтів", - "sync": { - "status": "Статус", - "sync": "Синхронізований", - "not-sync": "Не синхронізований", - "last-sync-time": "Час останньої синхронізації", - "not-available": "Недоступний" + "path": { + "path": "Шлях", + "path-decorator": "Декоратор шляху", + "decorator-symbol": "Символ декоратора", + "decorator-symbol-arrow-head": "Стрілка", + "decorator-symbol-dash": "Риска", + "decorator-arrangement": "Розташування декоратора", + "decorator-offset": "Початок", + "decorator-end-offset": "Кінець", + "decorator-repeat": "Повторювати" }, - "export-extensions-configuration": "Експортувати конфігурацію розширень", - "import-extensions-configuration": "Імпортувати конфігурацію розширень", - "import-extensions": "Імпортувати розширення", - "import-extension": "Імпортувати розширення", - "export-extension": "Експортувати розширення", - "file": "Файл розширень", - "invalid-file-error": "Неправильний формат файлу" - }, - "feature": { - "advanced-features": "Додаткові можливості" - }, - "fullscreen": { - "expand": "Відкрити у повноекранному режимі", - "exit": "Вийти з повноекранного режиму", - "toggle": "Перемкнути повноекранний режим", - "fullscreen": "Повноекранний режим" - }, - "function": { - "function": "Функція" - }, - "grid": { - "delete-item-title": "Ви впевнені, що хочете видалити цей елемент?", - "delete-item-text": "Будьте обережні, після підтвердження, цей елемент і всі пов'язані з ним дані, стануть недоступними.", - "delete-items-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 елемент} other {# елементи} }?", - "delete-items-action-title": "Видалити{ count, plural, =1 {1 елемент} other {# елементи} }", - "delete-items-text": "Будьте обережні, після підтвердження, всі виділені елементи і пов'язані з ними дані, стануть недоступними.", - "add-item-text": "Додати новий елемент", - "no-items-text": "Не знайдено жодного елемента", - "item-details": "Деталі елемента", - "delete-item": "Видалити елемент", - "delete-items": "Видалити елементи", - "scroll-to-top": "Перейти угору" - }, - "help": { - "goto-help-page": "Перейти на сторінку довідки" - }, - "home": { - "home": "Домашня сторінка", - "profile": "Профіль", - "logout": "Вийти", - "menu": "Меню", - "avatar": "Аватар", - "open-user-menu": "Відкрити меню користувача" - }, - "file-input": { - "browse-file": "Виберіть файл", - "browse-files": "Виберіть файли" - }, - "image": { - "gallery": "Галерея зображень", - "search": "Пошук зображень", - "selected-images": "{ count, plural, =1 {1 зображення} many {# зображень} other {# зображення} } вибрано", - "created-time": "Час створення", - "name": "Назва", - "name-required": "Необхідно вказати назву.", - "resolution": "Розд. здатність", - "size": "Розмір", - "system": "Системне", - "download-image": "Завантажити зображення", - "export-image": "Експортувати зображення до JSON", - "import-image": "Імпортувати зображення з JSON", - "upload-image": "Надіслати зображення", - "edit-image": "Редагувати зображення", - "image-details": "Деталі зображення", - "no-images": "Не знайдено жодного зображення", - "delete-image": "Видалити зображення", - "delete-images-text": "Будьте обережні, після підтвердження, всі вибрані зображення будуть видалені, а всі пов'язані з ним дані стануть недоступними для відновлення.", - "delete-image-title": "Ви впевнені, що хочете видалити зображення '{{imageTitle}}'?", - "list-mode": "Перегляд списком", - "grid-mode": "Перегляд ґраткою", - "image-preview": "Попередній перегляд зображення", - "update-image": "Оновити зображення", - "export-failed-error": "Не вдалося експортувати зображення: {{error}}", - "image-json-file": "Файл JSON із зображення", - "invalid-image-json-file-error": "Не вдалося імпортувати з JSON: Неправильна структура даних зображення в JSON.", - "image-is-in-use": "Зображення вже використовується в інших сутностях", - "images-are-in-use": "Зображення вже використовуються в інших сутностях", - "image-is-in-use-text": "Зображення '{{title}}' не було видалено, тому що воно вже використовується в таких сутностях:", - "images-are-in-use-text": "Не всі зображення були видалені, оскільки вони використовуються в інших сутностях.
Ви можете переглянути вищезгадані сутності, натиснувши на кнопку Посилання у відповідному рядку зображення.
Якщо ви все ж бажаєте видалити ці зображення, виберіть їх у таблиці нижче та натисніть кнопку Видалити вибране.", - "delete-image-in-use-text": "Якщо ви все ж бажаєте видалити ці зображення, натисніть кнопку Все одно видалити.", - "system-entities": "Системні сутності:", - "entities": "сутності:", - "references": "Посилання", - "include-system-images": "Включаючи системні зображення", - "clear-image": "Прибрати зображення", - "no-image": "Відсутні зображення", - "no-image-selected": "Не вибрано жодного зображення", - "browse-from-gallery": "Переглянути в галереї", - "set-link": "Створити посилання", - "image-link": "Посилання на зображення", - "link": "Посилання", - "copy-image-link": "Скопіювати посилання на зображення", - "embed-image": "Вбудувати зображення", - "embed-to-html": "Вбудувати в HTML", - "embed-to-html-hint": "Ця функція зробить посилання доступним для будь-якого неавторизованого користувача.", - "embed-to-html-text": "Використовуючи цей фрагмент коду, ви можете вбудовувати зображення в компоненти на базі звичайного HTML.
До таких компонентів належать: HTML картки віджетів, функції вмісту комірок, тощо.", - "embed-to-angular-template": "Вбудувати в HTML-шаблон Angular", - "embed-to-angular-template-text": "Використовуючи цей фрагмент коду, ви можете вбудувати зображення в HTML-шаблон Angular для використання в компонентах.
До таких компонентів належать: віджет Markdown, HTML-секція в редакторі віджетів, користувацькі дії тощо." - }, - "image-input": { - "drop-images-or": "Перетягування зображень чи", - "drag-and-drop": "Перетягування", - "or": "чи", - "browse": "Огляд", - "no-images": "Не вибрано жодного зображення", - "images": "зображення" - }, - "import": { - "no-file": "Не вибрано жодного файлу", - "drop-file": "Перетягніть JSON файл, або клацніть, щоб вибрати файл для завантаження.", - "drop-csv-file": "Перетягніть CSV файл, або клацніть, щоб вибрати файл для завантаження.", - "column-value": "Значення", - "column-title": "Назва", - "column-example": "Приклад значень даних", - "column-key": "Ключ атрибута/телеметрії", - "csv-delimiter": "Розділювач в CSV файлі", - "csv-first-line-header": "Перший рядок містить назви колонок", - "csv-update-data": "Оновити атрибути/телеметрію", - "import-csv-number-columns-error": "Файл має містити як мінімум дві колонки", - "import-csv-invalid-format-error": "Невірний формат даних. Рядок: '{{line}}'", - "column-type": { - "name": "Назва", - "type": "Тип", - "label": "Мітка", - "column-type": "Тип колонки", - "client-attribute": "Атрибут клієнта", - "shared-attribute": "Спільний атрибут", - "server-attribute": "Атрибут сервера", - "timeseries": "Телеметрія", - "entity-field": "Entity field", - "access-token": "Токен" + "points": { + "points": "Точки", + "point-tooltip": "Підказка для точки" }, - "stepper-text": { - "select-file": "Виберіть файл", - "configuration": "Конфігурація імпорту", - "column-type": "Виберіть тип колонок", - "creat-entities": "Створення нових сутностей" + "shape": { + "fill": "Заповнення", + "fill-type-color": "Колір", + "fill-type-stripe": "Смуга", + "fill-type-image": "Зображення", + "color": "Колір", + "stripe": "Смуга", + "image": "Зображення", + "stroke": "Контур", + "fill-image": "Заповнення зображенням", + "fill-image-type-image": "Зображення", + "fill-image-type-function": "Функція", + "preserve-aspect-ratio": "Зберігати співвідношення сторін", + "opacity": "Прозорість", + "angle": "Кут обертання", + "scale": "Масштаб", + "fill-image-function": "Функція заповнення зображенням для форми", + "fill-images": "Зображення для заповнення форми", + "stripe-pattern": "Візерунок смуги", + "first-stripe": "Перша смуга", + "second-stripe": "Друга смуга" }, - "message": { - "create-entities": "{{count}} нову(-их) сутність(-ей) успішно створено.", - "update-entities": "{{count}} сутність(-ей) успішно оновлено.", - "error-entities": "Виникла помилка при створенні {{count}} сутності(-ей)." - } + "polygon": { + "polygon-key": "Ключ полігону", + "polygon-key-required": "Ключ полігону необхідний", + "no-polygons": "Полігони не налаштовані", + "add-polygon": "Додати полігон", + "polygon-configuration": "Налаштування полігону", + "remove-polygon": "Видалити полігон", + "edit": "Редагувати полігон", + "remove-polygon-for": "Видалити полігон для '{{entityName}}'", + "cut": "Обрізати область полігону", + "rotate": "Поворот полігону", + "draw-rectangle": "Малювати прямокутник", + "draw-polygon": "Малювати полігон", + "polygon-place-first-point-cut-hint": "Натисніть, щоб розмістити першу точку", + "continue-polygon-cut-hint": "Натисніть, щоб продовжити малювати", + "finish-polygon-cut-hint": "Натисніть на перший маркер, щоб завершити та зберегти", + "polygon-place-first-point-hint": "Полігон: натисніть, щоб розмістити першу точку", + "polygon-place-first-point-hint-with-entity": "Полігон для '{{entityName}}': натисніть, щоб розмістити першу точку", + "continue-polygon-hint": "Полігон: натисніть, щоб продовжити малювати", + "continue-polygon-hint-with-entity": "Полігон для '{{entityName}}': натисніть, щоб продовжити малювати", + "finish-polygon-hint": "Полігон: натисніть на перший маркер, щоб завершити малювання", + "finish-polygon-hint-with-entity": "Полігон для '{{entityName}}': натисніть на перший маркер, щоб завершити та зберегти", + "rectangle-place-first-point-hint": "Прямокутник: натисніть, щоб розмістити першу точку", + "rectangle-place-first-point-hint-with-entity": "Прямокутник для '{{entityName}}': натисніть, щоб розмістити першу точку", + "finish-rectangle-hint": "Прямокутник: натисніть, щоб завершити малювання", + "finish-rectangle-hint-with-entity": "Прямокутник для '{{entityName}}': натисніть, щоб завершити та зберегти" + }, + "circle": { + "circle-key": "Ключ кола", + "circle-key-required": "Ключ кола необхідний", + "no-circles": "Кола не налаштовані", + "add-circle": "Додати коло", + "circle-configuration": "Налаштування кола", + "remove-circle": "Видалити коло", + "edit": "Редагувати коло", + "remove-circle-for": "Видалити коло для '{{entityName}}'", + "draw-circle": "Намалювати коло", + "place-circle-center-hint-with-entity": "Коло для '{{entityName}}': натисніть, щоб розмістити центр кола", + "place-circle-center-hint": "Коло: натисніть, щоб розмістити центр кола", + "finish-circle-hint-with-entity": "Коло для '{{entityName}}': натисніть, щоб завершити та зберегти коло", + "finish-circle-hint": "Коло: натисніть, щоб завершити малювання" + }, + "select-entity": "Вибрати сутність", + "select-entity-hint": "Підказка: після вибору натисніть на карті, щоб встановити позицію" + }, + "select-entity": "Вибрати сутність", + "select-entity-hint": "Підказка: після вибору натисніть на карті, щоб встановити позицію", + "tooltips": { + "placeMarker": "Натисніть, щоб розмістити сутність '{{entityName}}'", + "firstVertex": "Полілінія для '{{entityName}}': натисніть, щоб розмістити першу точку", + "firstVertex-cut": "Натисніть, щоб розмістити першу точку", + "continueLine": "Полілінія для '{{entityName}}': натисніть, щоб продовжити малювання", + "continueLine-cut": "Натисніть, щоб продовжити малювання", + "finishLine": "Натисніть на будь-який існуючий маркер, щоб завершити", + "finishPoly": "Полілінія для '{{entityName}}': натисніть на перший маркер, щоб завершити і зберегти", + "finishPoly-cut": "Натисніть на перший маркер, щоб завершити і зберегти", + "finishRect": "Полілінія для '{{entityName}}': натисніть, щоб завершити і зберегти", + "startCircle": "Коло для '{{entityName}}': натисніть, щоб розмістити центр кола", + "finishCircle": "Коло для '{{entityName}}': натисніть, щоб завершити коло", + "placeCircleMarker": "Натисніть, щоб розмістити маркер кола" + }, + "actions": { + "finish": "Завершити", + "cancel": "Скасувати", + "removeLastVertex": "Видалити останню точку" + }, + "buttonTitles": { + "drawMarkerButton": "Розмістити сутність", + "drawPolyButton": "Створити полілінію", + "drawLineButton": "Створити полілінію", + "drawCircleButton": "Створити коло", + "drawRectButton": "Створити прямокутник", + "editButton": "Режим редагування", + "dragButton": "Режим перетягування", + "cutButton": "Обрізати площу полілінії", + "deleteButton": "Видалити", + "drawCircleMarkerButton": "Створити маркер кола", + "rotateButton": "Поворот полілінії" + }, + "map-provider-settings": "Налаштування постачальника карт", + "map-provider": "Постачальник карт", + "map-provider-google": "Google Maps", + "map-provider-openstreet": "OpenStreet Maps", + "map-provider-here": "HERE Maps", + "map-provider-image": "Зображення карти", + "map-provider-tencent": "Tencent Maps", + "openstreet-provider": "Постачальник карт OpenStreet", + "openstreet-provider-mapnik": "OpenStreetMap.Mapnik (За замовчуванням)", + "openstreet-provider-hot": "OpenStreetMap.HOT", + "openstreet-provider-esri-street": "Esri.WorldStreetMap", + "openstreet-provider-esri-topo": "Esri.WorldTopoMap", + "openstreet-provider-esri-imagery": "Esri.WorldImagery", + "openstreet-provider-cartodb-positron": "CartoDB.Positron", + "openstreet-provider-cartodb-dark-matter": "CartoDB.DarkMatter", + "use-custom-provider": "Використовувати власного постачальника", + "custom-provider-tile-url": "URL плитки власного постачальника", + "google-maps-api-key": "Google Maps API ключ", + "default-map-type": "Тип карти за замовчуванням", + "google-map-type-roadmap": "Дорожня карта", + "google-map-type-satelite": "Супутникова карта", + "google-map-type-hybrid": "Гібридна карта", + "google-map-type-terrain": "Рельєфна карта", + "map-layer": "Шар карти", + "here-map-normal-day": "HERE.normalDay (За замовчуванням)", + "here-map-normal-night": "HERE.normalNight", + "here-map-hybrid-day": "HERE.hybridDay", + "here-map-terrain-day": "HERE.terrainDay", + "credentials": "Облікові дані", + "here-app-id": "ID програми HERE", + "here-app-code": "Код програми HERE", + "here-api-key": "API ключ HERE", + "here-use-new-version-api-3": "Використовувати версію API 3", + "tencent-maps-api-key": "API ключ Tencent Maps", + "tencent-map-type-roadmap": "Дорожня карта", + "tencent-map-type-satelite": "Супутникова карта", + "tencent-map-type-hybrid": "Гібридна карта", + "image-map-background": "Фон карти з зображенням", + "image-map-background-from-entity-attribute": "Взяти фон карти з атрибута сутності", + "image-url-source-entity-alias": "Аліас сутності джерела URL зображення", + "image-url-source-entity-attribute": "Атрибут сутності джерела URL зображення", + "common-map-settings": "Загальні налаштування карти", + "x-pos-key-name": "Назва ключа X позиції", + "y-pos-key-name": "Назва ключа Y позиції", + "latitude-key-name": "Назва ключа широти", + "longitude-key-name": "Назва ключа довготи", + "default-map-zoom-level": "Рівень масштабування карти за замовчуванням (0 - 20)", + "default-map-center-position": "Позиція центру карти за замовчуванням (0,0)", + "disable-scroll-zooming": "Вимкнути масштабування за допомогою прокручування", + "disable-double-click-zooming": "Вимкнути масштабування подвійним клацанням", + "disable-zoom-control-buttons": "Вимкнути кнопки управління масштабуванням", + "fit-map-bounds": "Підлаштувати межі карти, щоб покрити всі маркери", + "use-default-map-center-position": "Використовувати позицію центру карти за замовчуванням", + "entities-limit": "Обмеження кількості сутностей для завантаження", + "markers-settings": "Налаштування маркерів", + "marker-offset-x": "Зсув маркера по осі X відносно позиції, помножений на ширину маркера", + "marker-offset-y": "Зсув маркера по осі Y відносно позиції, помножений на висоту маркера", + "position-function": "Функція перетворення позиції, повинна повертати координати x, y як числа з плаваючою комою від 0 до 1", + "draggable-marker": "Перетасовуваний маркер", + "label": "Маркування", + "show-label": "Показати маркування", + "use-label-function": "Використовувати функцію маркування", + "label-pattern": "Маркування (приклади шаблонів: '${entityName}', '${entityName}: (Текст ${keyName} одиниць.)')", + "label-function": "Функція маркування", + "tooltip": "Підказка", + "show-tooltip": "Показати підказку", + "show-tooltip-action": "Дія для відображення підказки", + "show-tooltip-action-click": "Показати підказку при кліку (за замовчуванням)", + "show-tooltip-action-hover": "Показати підказку при наведенні", + "auto-close-tooltips": "Автоматично закривати підказки", + "use-tooltip-function": "Використовувати функцію підказки", + "tooltip-pattern": "Підказка (наприклад, 'Текст ${keyName} одиниць.' або Текст посилання)", + "tooltip-function": "Функція підказки", + "tooltip-offset-x": "Зсув підказки по осі X відносно якоря маркера, помножений на ширину маркера", + "tooltip-offset-y": "Зсув підказки по осі Y відносно якоря маркера, помножений на висоту маркера", + "color": "Колір", + "use-color-function": "Використовувати функцію кольору", + "color-function": "Функція кольору", + "marker-image": "Зображення маркера", + "use-marker-image-function": "Використовувати функцію зображення маркера", + "custom-marker-image": "Користувацьке зображення маркера", + "custom-marker-image-size": "Розмір користувацького зображення маркера (px)", + "marker-image-function": "Функція зображення маркера", + "marker-images": "Зображення маркерів", + "polygon-settings": "Налаштування полігону", + "show-polygon": "Показати полігон", + "polygon-key-name": "Назва ключа полігону", + "enable-polygon-edit": "Дозволити редагування полігону", + "polygon-label": "Маркування полігону", + "show-polygon-label": "Показати маркування полігону", + "use-polygon-label-function": "Використовувати функцію маркування полігону", + "polygon-label-pattern": "Маркування полігону (приклади шаблонів: '${entityName}', '${entityName}: (Текст ${keyName} одиниць.)')", + "polygon-label-function": "Функція маркування полігону", + "polygon-tooltip": "Підказка для полігону", + "show-polygon-tooltip": "Показати підказку для полігону", + "auto-close-polygon-tooltips": "Автоматично закривати підказки для полігону", + "use-polygon-tooltip-function": "Використовувати функцію підказки для полігону", + "polygon-tooltip-pattern": "Підказка для полігону (наприклад, 'Текст ${keyName} одиниць.' або Текст посилання)", + "polygon-tooltip-function": "Функція підказки для полігону", + "polygon-color": "Колір полігону", + "polygon-opacity": "Прозорість полігону", + "use-polygon-color-function": "Використовувати функцію кольору полігону", + "polygon-color-function": "Функція кольору полігону", + "polygon-stroke": "Контур полігону", + "stroke-color": "Колір обводки", + "stroke-opacity": "Прозорість обводки", + "stroke-weight": "Товщина обводки", + "use-polygon-stroke-color-function": "Використовувати функцію кольору обводки полігону", + "polygon-stroke-color-function": "Функція кольору обводки полігону", + "circle-settings": "Налаштування кола", + "show-circle": "Показати коло", + "circle-key-name": "Назва ключа кола", + "enable-circle-edit": "Дозволити редагування кола", + "circle-label": "Маркування кола", + "show-circle-label": "Показати маркування кола", + "use-circle-label-function": "Використовувати функцію маркування кола", + "circle-label-pattern": "Маркування кола (приклади шаблонів: '${entityName}', '${entityName}: (Текст ${keyName} одиниць.)')", + "circle-label-function": "Функція маркування кола", + "circle-tooltip": "Підказка для кола", + "show-circle-tooltip": "Показати підказку для кола", + "auto-close-circle-tooltips": "Автоматично закривати підказки для кола", + "use-circle-tooltip-function": "Використовувати функцію підказки для кола", + "circle-tooltip-pattern": "Підказка для кола (наприклад, 'Текст ${keyName} одиниць.' або Текст посилання)", + "circle-tooltip-function": "Функція підказки для кола", + "circle-fill-color": "Колір заливки кола", + "circle-fill-color-opacity": "Прозорість кольору заливки кола", + "use-circle-fill-color-function": "Використовувати функцію кольору заливки кола", + "circle-fill-color-function": "Функція кольору заливки кола", + "circle-stroke": "Обводка кола", + "use-circle-stroke-color-function": "Використовувати функцію кольору обводки кола", + "circle-stroke-color-function": "Функція кольору обводки кола", + "markers-clustering-settings": "Налаштування кластеризації маркерів", + "use-map-markers-clustering": "Використовувати кластеризацію маркерів на карті", + "zoom-on-cluster-click": "Масштабувати при кліку на кластер", + "max-cluster-zoom": "Максимальний рівень масштабування для маркерів, що можуть бути частиною кластера (0 - 18)", + "max-cluster-radius-pixels": "Максимальний радіус, який може покривати кластер в пікселях", + "cluster-zoom-animation": "Показати анімацію на маркерах при масштабуванні", + "show-markers-bounds-on-cluster-mouse-over": "Показати межі маркерів при наведенні на кластер", + "spiderfy-max-zoom-level": "Spiderfy на максимальному рівні масштабування (щоб побачити всі маркери кластера)", + "load-optimization": "Оптимізація завантаження", + "cluster-chunked-loading": "Використовувати чанки для додавання маркерів, щоб не заморожувати сторінку", + "cluster-markers-lazy-load": "Використовувати лінійне завантаження для додавання маркерів", + "editor-settings": "Налаштування редактора", + "enable-snapping": "Включити прив'язку до інших вершин для точного малювання", + "init-draggable-mode": "Ініціалізувати карту в режимі перетягування", + "hide-all-edit-buttons": "Приховати всі кнопки керування редагуванням", + "hide-draw-buttons": "Приховати кнопки малювання", + "hide-edit-buttons": "Приховати кнопки редагування", + "hide-remove-button": "Приховати кнопку видалення", + "route-map-settings": "Налаштування карти маршруту", + "trip-animation-settings": "Налаштування анімації поїздки", + "normalization-step": "Крок нормалізації даних (мс)", + "tooltip-background-color": "Колір фону підказки", + "tooltip-font-color": "Колір шрифта підказки", + "tooltip-opacity": "Прозорість підказки (0-1)", + "auto-close-tooltip": "Автоматично закривати підказку", + "rotation-angle": "Встановити додатковий кут повороту для маркера (градуси)", + "path-settings": "Налаштування шляху", + "path-color": "Колір шляху", + "use-path-color-function": "Використовувати функцію кольору шляху", + "path-color-function": "Функція кольору шляху", + "path-decorator": "Декоратор шляху", + "use-path-decorator": "Використовувати декоратор шляху", + "decorator-symbol": "Символ декоратора", + "decorator-symbol-arrow-head": "Стрілка", + "decorator-symbol-dash": "Рамка", + "decorator-symbol-size": "Розмір символу декоратора (пікселі)", + "use-path-decorator-custom-color": "Використовувати власний колір декоратора шляху", + "decorator-custom-color": "Власний колір декоратора", + "decorator-offset": "Зсув декоратора", + "end-decorator-offset": "Зсув кінцевого декоратора", + "decorator-repeat": "Повтор декоратора", + "points-settings": "Налаштування точок", + "show-points": "Показати точки", + "point-color": "Колір точки", + "point-size": "Розмір точки (пікселі)", + "use-point-color-function": "Використовувати функцію кольору точки", + "point-color-function": "Функція кольору точки", + "use-point-as-anchor": "Використовувати точку як якір", + "point-as-anchor-function": "Функція точки як якоря", + "independent-point-tooltip": "Незалежна підказка для точки", + "clustering-markers": "Кластеризація маркерів", + "use-icon-create-function": "Використовувати функцію кольору маркерів", + "marker-color-function": "Функція кольору маркерів" }, - "integration": { - "integration": "Інтеграція", - "integrations": "Інтеграції", - "select-integration": "Виберіть інтеграцію", - "no-integrations-matching": "Не знайдено жодних інтеграцій, які відповідають '{{entity}}'.", - "integration-required": "Необхідно вказати інтеграцію", - "delete": "Видалити інтеграцію", - "management": "Управління інтеграціями", - "add-integration-text": "Додати нову інтеграцію", - "no-integrations-text": "Не знайдено жодної інтеграції", - "selected-integrations": "{ count, plural, =1 {1 інтеграція} other {# інтеграції} } вибрано", - "delete-integration-title": "Ви впевнені, що хочете видалити інтеграцію '{{integrationName}}'?", - "delete-integration-text": "Будьте обережні, після підтвердження інтеграція та всі пов'язані з нею дані стануть недоступними.", - "delete-integrations-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 інтеграцію} other {# інтеграції} }?", - "delete-integrations-action-title": "Видалити { count, plural, =1 {1 інтеграцію} other {# інтеграції} }", - "delete-integrations-text": "Будьте обережні, після підтвердження всі вибрані інтеграції будуть видалені, і всі пов'язані з ними дані стануть недоступними.", - "events": "Події", - "add": "Додати інтеграцію", - "integration-details": "Деталі інтеграції", - "details": "Деталі", - "copyId": "Копіювати Id інтеграції", - "idCopiedMessage": "Id інтеграції скопійовано в буфер обміну", - "debug-mode": "Режим налагодження", - "enable-security": "Увімкнути безпеку", - "headers-filter": "Заголовки фільтра", - "header": "Заголовок", - "no-headers-filter": "Немає фільтрів заголовків", - "downlink-url": "Downlink URL", - "application-uri": "URI програми", - "as-id": "AS ID", - "as-id-required": "Необхідно вказати AS ID.", - "as-key": "AS ключ", - "as-key-required": "Необхідно вказати AS ключ.", - "max-time-diff-in-seconds": "Максимальна різниця в часі (секунди)", - "max-time-diff-in-seconds-required": "Необхідно вказати максимальну різницю в часі.", - "name": "Назва", - "name-required": "Необхідно вказати назву.", - "description": "Опис", - "base-url": "Базова URL-адреса", - "base-url-required": "Необхідно вказати базову URL-адресу", - "security-key": "Ключ захисту", - "http-endpoint": "URL кінцевої точки HTTP", - "copy-http-endpoint-url": "Скопіювати URL-адресу кінцевої точки HTTP", - "http-endpoint-url-copied-message": "URL кінцевої точки HTTP скопійовано в буфер обміну", - "host": "Хост", - "host-required": "Необхідно вказати хост.", - "host-type": "Тип хоста", - "host-type-required": "Необхідно вказати тип хоста.", - "custom-host": "Хост користувача", - "custom-host-required": "Необхідний спеціальний хост.", - "port": "Порт", - "port-required": "Необхідно вказати порт.", - "port-range": "Порт має бути в діапазоні від 1 до 65535.", - "connect-timeout": "Час очікування з'єднання (сек)", - "connect-timeout-required": " Необхідно вказати час з'єднання підключення.", - "connect-timeout-range": "Час очікування з'єднання має бути в діапазоні від 1 до 200.", - "client-id": "ID клієнта", - "clean-session": "Очистити сеанс", - "enable-ssl": "Увімкнути SSL", - "credentials": "Авторизаційні дані", - "credentials-type": "Тип авторизаційних даних", - "credentials-type-required": "Необхідно вказати тип авторизаційних даних.", - "username": "Ім'я користувача", - "username-required": "Необхідно вказати ім'я користувача.", - "password": "Пароль", - "password-required": "Необхідно вказати пароль.", - "ca-cert": "Файл сертифіката CA *", - "private-key": "Файл приватного ключа *", - "private-key-password": "Пароль приватного ключа", - "cert": "Файл сертифіката*", - "no-file": "Не вибрано жодного файлу.", - "drop-file": "Перетягніть файл, або клацніть, щоб вибрати файл для завантаження.", - "topic-filters": "Тематичні фільтри", - "remove-topic-filter": "Видалити фільтр тем", - "add-topic-filter": "Додати фільтр тем", - "add-topic-filter-prompt": "Будь ласка, додайте фільтр тем", - "topic": "Тема", - "mqtt-qos": "QoS", - "mqtt-qos-at-most-once": "Не більше одного разу", - "mqtt-qos-at-least-once": "Принаймні, один раз", - "mqtt-qos-exactly-once": "Точно один раз", - "downlink-topic-pattern": "Downlink topic pattern", - "downlink-topic-pattern-required": "Downlink topic pattern is required.", - "aws-iot-endpoint": "AWS IoT Endpoint", - "aws-iot-endpoint-required": "AWS IoT Endpoint is required.", - "aws-iot-credentials": "Авторизаційні дані AWS IoT", - "application-credentials": "Авторизаційні дані додатків", - "api-key": "API ключ", - "api-key-required": "Необхідно вказати API ключ.", - "auth-token": "Маркер аутентифікації", - "auth-token-required": "Необхідно вказати маркер аутентифікації.", - "region": "Регіон", - "region-required": "Необхідно вказати регіон.", - "application-id": "ID програми", - "application-id-required": "Необхідно вказати ID програми.", - "access-key": "Ключ доступу", - "access-key-required": "Необхідно вказати ключ доступу.", - "connection-parameters": "Параметри підключення", - "service-bus-namespace-name": "Service Bus Namespace Name", - "service-bus-namespace-name-required": "Необхідно вказати Service Bus Namespace Name is required.", - "event-hub-name": "Event Hub Name", - "event-hub-name-required": "Необхідно вказати назву Event Hub.", - "sas-key-name": "Назва ключа SAS", - "sas-key-name-required": "Необхідно вказати назву ключа SAS.", - "sas-key": "Ключ SAS", - "sas-key-required": "Потрібен ключ SAS.", - "iot-hub-name": "Назва IoT Hub (необхідна для downlink)", - "metadata": "Метадані", - "type": "Тип", - "type-required": "Необхідно вказати тип.", - "uplink-converter": "Конвертер передачі даних", - "uplink-converter-required": "Необхідно вказати конвертер передачі даних.", - "downlink-converter": "Downlink data converter", - "type-http": "HTTP", - "type-ocean-connect": "OceanConnect", - "type-sigfox": "SigFox", - "type-thingpark": "ThingPark", - "type-tmobile-iot-cdp": "T-Mobile – IoT CDP", - "type-mqtt": "MQTT", - "type-aws-iot": "AWS IoT", - "type-ibm-watson-iot": "IBM Watson IoT", - "type-ttn": "TheThingsNetwork", - "type-azure-event-hub": "Azure Event Hub", - "type-opc-ua": "OPC-UA", - "type-ffb": "FFB", - "opc-ua-application-name": "Назва програми", - "opc-ua-application-uri": "Application uri", - "opc-ua-scan-period-in-seconds": "Період сканування в секундах", - "opc-ua-scan-period-in-seconds-required": "Необхідно вказати період сканування в секундах", - "opc-ua-timeout": "Час очікування в мілісекундах", - "opc-ua-timeout-required": "Необхідно вказати час очікування в мілісекундах", - "opc-ua-security": "Безпека", - "opc-ua-security-required": "Необхідно задати безпеку", - "opc-ua-identity": "Ідентифікація", - "opc-ua-identity-required": "Необхідно вказати ідентифікацію", - "opc-ua-keystore": "Сховище ключів", - "add-opc-ua-keystore-prompt": "Будь ласка, додайте файл сховища ключів", - "opc-ua-keystore-required": "Необхідно вказати сховище ключів", - "opc-ua-type": "Тип", - "opc-ua-keystore-type": "Тип сховища ключів", - "opc-ua-keystore-type-required": "Необхідно вказати тип", - "opc-ua-keystore-location": "Розташування *", - "opc-ua-keystore-password": "Пароль", - "opc-ua-keystore-password-required": "Необхідно вказати пароль", - "opc-ua-keystore-alias": "Псевдонім", - "opc-ua-keystore-alias-required": "Необхідно вказати псевдонім", - "opc-ua-keystore-key-password": "Пароль ключа", - "opc-ua-keystore-key-password-required": "Необхідно вказати пароль ключа", - "opc-ua-mapping": "Зіставлення", - "add-opc-ua-mapping-prompt": "Будь ласка, додайте зіставлення", - "opc-ua-mapping-type": "Тип зіставлення", - "opc-ua-mapping-type-required": "Необхідно вказати тип зіставлення", - "opc-ua-device-node-pattern": "Шаблон вузла пристрою", - "opc-ua-device-node-pattern-required": "Необхідно вказати шаблон вузла пристрою", - "opc-ua-add-map": "Додати елемент зіставлення", - "subscription-tags": "Теги передплати Теги підписки", - "remove-subscription-tag": "Видалити тег підписки", - "add-subscription-tag": "Додати тег підписки", - "add-subscription-tag-prompt": "Будь ласка, додайте тег підписки", - "key": "Ключ", - "path": "Шлях", - "required": "Необхідно" - }, - "item": { - "selected": "Вибрані" - }, - "js-func": { - "no-return-error": "Функція повинна повертати значення!", - "return-type-mismatch": "Функція повинна повернути значення типу '{{type}}'!" + "markdown": { + "use-markdown-text-function": "Використовувати функцію значення markdown/HTML", + "markdown-text-function": "Функція значення markdown/HTML", + "markdown-text-pattern": "Шаблон markdown/HTML (markdown або HTML з змінними, наприклад, '${entityName} або ${keyName} - деякий текст.')", + "apply-default-markdown-style": "Застосувати стандартний стиль markdown", + "markdown-css": "CSS для markdown/HTML" }, - "key-val": { - "key": "Ключ", - "value": "Значення", - "remove-entry": "Видалити елемент", - "add-entry": "Додати елемент", - "no-data": "Елементи відсутні" - }, - "layout": { - "layout": "Макет", - "manage": "Керування макетами", - "settings": "Налаштування макета", - "color": "Колір", - "main": "Основний", - "right": "Правий", - "select": "Вибрати макет" - }, - "legend": { - "direction": "Розташування елементів легенди", - "position": "Розташування легенди", - "show-max": "Показати максимальне значення", - "show-min": "Показати мінімальне значення ", - "show-avg": "Показати середнє значення", - "show-total": "Показати суму", - "settings": "Налаштування легенди", - "min": "мін", - "max": "макс", - "avg": "середнє", - "total": "Сума", - "comparison-time-ago": { - "days": "(день тому)", - "weeks": "(тиждень тому)", - "months": "(місяць тому)", - "years": "(рік тому)" - } + "simple-card": { + "label": "Маркування", + "label-position": "Позиція маркування", + "label-position-left": "Зліва", + "label-position-top": "Зверху" + }, + "single-switch": { + "behavior": "Поведінка", + "layout": "Розташування", + "layout-right": "Праворуч", + "layout-left": "Ліворуч", + "layout-centered": "По центру", + "auto-scale": "Автомасштабування", + "label": "Маркування", + "icon": "Піктограма", + "switch-color": "Колір перемикача", + "on": "Увімкнено", + "off": "Вимкнено", + "disabled": "Вимкнено", + "tumbler-color": "Колір тумблера", + "on-label": "Маркування для увімкненого стану", + "off-label": "Маркування для вимкненого стану", + "switch": "Перемикач" + }, + "slider": { + "behavior": "Поведінка", + "initial-value": "Початкове значення", + "initial-value-hint": "Дія для отримання початкового значення повзунка.", + "on-value-change": "При зміні значення", + "on-value-change-hint": "Дія, що запускається, коли змінюється значення повзунка.", + "layout": "Розташування", + "layout-default": "За замовчуванням", + "layout-extended": "Розширений", + "layout-simplified": "Спрощений", + "auto-scale": "Автомасштабування", + "icon": "Піктограма", + "value": "Значення", + "range": "Діапазон", + "min": "мін", + "max": "макс", + "range-ticks": "Поділки діапазону", + "tick-marks": "Позначки поділок", + "colors": "Кольори", + "main": "Основний", + "background": "Фон", + "left-icon": "Ліва піктограма", + "right-icon": "Права піктограма", + "slider": "Повзунок" }, - "login": { - "login": "Увійти", - "request-password-reset": "Запит скидання пароля", - "reset-password": "Скинути пароль", - "create-password": "Створити пароль", - "passwords-mismatch-error": "Введені паролі повинні бути однаковими!", - "password-again": "Введіть пароль ще раз", - "sign-in": "Будь ласка, увійдіть в систему", - "username": "Ім'я користувача (ел. пошта)", - "remember-me": "Запам'ятати мене", - "forgot-password": "Забули пароль?", - "password-reset": "Скидання пароля", - "expired-password-reset-message": "Термін дії Вашого паролю закінчився! Будь ласка, створіть новий пароль.", - "new-password": "Новий пароль", - "new-password-again": "Повторіть новий пароль", - "password-link-sent-message": "Посилання для скидання пароля було успішно надіслано!", - "email": "Електронна пошта", - "login-with": "Увійти через {{name}}", - "or": "або" + "value-card": { + "layout": "Розташування", + "layout-square": "Квадратне", + "layout-vertical": "Вертикальне", + "layout-centered": "По центру", + "layout-simplified": "Спрощене", + "layout-horizontal": "Горизонтальне", + "layout-horizontal-reversed": "Горизонтальне у зворотному порядку", + "label": "Маркування", + "icon": "Піктограма", + "value": "Значення", + "date": "Дата", + "value-card-style": "Стиль картки значення", + "auto-scale": "Автомасштабування" + }, + "label-card": { + "auto-scale": "Автомасштабування", + "label": "Маркування", + "icon": "Піктограма", + "label-card-style": "Стиль картки маркування" + }, + "label-value-card": { + "value": "Значення", + "label-value-card-style": "Стиль картки маркування й значення" + }, + "liquid-level-card": { + "layout-simple": "Простий", + "layout-percentage": "Відсотки", + "layout-absolute": "Абсолютний", + "layout": "Розташування", + "background-overlay": "Накладка фону значення", + "total-volume": "Загальний об'єм", + "total-volume-units": "Одиниці загального об'єму", + "tank": "Резервуар", + "shape": "Форма", + "datasource-units": "Одиниці джерела", + "widget-units": "Одиниці віджета", + "decimals": "Десяткові знаки", + "liquid": "Рідина", + "liquid-color": "Колір рідини", + "value": "Значення", + "value-font": "Шрифт значення", + "level": "Рівень", + "last-update": "Останнє оновлення", + "shape-by-attribute": "Задати форму резервуара за назвою атрибута", + "tooltip-background": "Колір фону", + "background-blur": "Розмиття фону", + "tank-color": "Колір резервуара", + "static": "Статичний", + "see-examples": "Переглянути приклади", + "attribute": "Атрибут", + "shape-type": "Тип", + "v-oval": "Вертикальний овал", + "v-cylinder": "Вертикальний циліндр", + "v-capsule": "Вертикальна капсула", + "rectangle": "Прямокутник", + "h-oval": "Горизонтальний овал", + "h-ellipse": "Горизонтальний еліпс", + "h-dish-ends": "Горизонтальні торці-тарілки", + "h-cylinder": "Горизонтальний циліндр", + "h-capsule": "Горизонтальна капсула", + "h-elliptical_2_1": "Горизонтальний еліптичний 2:1", + "icon": "Піктограма картки", + "title": "Заголовок картки", + "units": "Одиниці", + "color-and-font": "Колір і шрифт", + "shape-attribute-name": "Назва атрибута", + "total-volume-required": "Загальний об'єм обов'язковий.", + "attribute-name-required": "Назва атрибута обов'язкова.", + "attribute-key-not-set": "Ключ атрибута '{{attributeName}}' не задано", + "attribute-key-invalid": "Ключ атрибута '{{attributeName}}' недійсний" + }, + "aggregated-value-card": { + "subtitle": "Підзаголовок", + "chart": "Графік", + "values": "Значення", + "value-appearance": "Вигляд значення", + "position": "Розташування", + "position-center": "По центру", + "position-right-top": "Праворуч зверху", + "position-right-bottom": "Праворуч знизу", + "position-left-top": "Ліворуч зверху", + "position-left-bottom": "Ліворуч знизу", + "font": "Шрифт", + "color": "Колір", + "arrow": "Стрілка", + "display-up-down-arrow": "Показувати стрілку вгору/вниз", + "add-value": "Додати значення", + "remove-value": "Видалити значення", + "no-values": "Немає налаштованих значень", + "aggregation": "Агрегація", + "aggregated-value-card-style": "Стиль картки агрегованого значення", + "auto-scale": "Автомасштабування" + }, + "value-chart-card": { + "layout": "Розташування", + "layout-left": "Ліворуч", + "layout-right": "Праворуч", + "auto-scale": "Автомасштабування", + "icon": "Іконка", + "value": "Значення", + "chart": "Графік", + "value-chart-card-style": "Стиль картки значення з графіком" + }, + "progress-bar": { + "layout": "Розташування", + "layout-default": "За замовчуванням", + "layout-simplified": "Спрощений", + "auto-scale": "Автомасштабування", + "icon": "Іконка", + "value": "Значення", + "range": "Діапазон", + "min": "мін", + "max": "макс", + "range-ticks": "Поділки діапазону", + "bar": "Смуга", + "bar-color": "Колір смуги", + "bar-background": "Фон смуги", + "progress-bar-card-style": "Стиль картки індикатора прогресу" }, "notification": { - "notification-center": "Центр сповіщень" - }, - "ota-update": { - "ota-updates": "Оновлення OTA" - }, - "position": { - "top": "Угорі", - "bottom": "Знизу", - "left": "Ліворуч", - "right": "Праворуч" - }, - "profile": { - "profile": "Профіль", - "last-login-time": "Час останнього входу", - "change-password": "Змінити пароль", - "current-password": "Поточний пароль", - "copy-jwt-token": "Копіювати JWT токен", - "tokenCopiedMessage": "JWT токен скопійовано в буфер обміну", - "tokenCopiedWarnMessage": "JWT токен не є дійсним! Перезавантажте сторінку." - }, - "profiles": { - "profiles": "Профілі" - }, - "security": { - "security": "Безпека" - }, - "relation": { - "relations": "Відношення", - "direction": "Напрямок", - "search-direction": { - "FROM": "З", - "TO": "До" - }, - "direction-type": { - "FROM": "з", - "TO": "до" - }, - "from-relations": "Вихідні відношення", - "to-relations": "Вхідні відношення", - "selected-relations": "Вибрано { count, plural, =1 {1 відношення} other {# відношення} }", - "type": "Тип", - "to-entity-type": "До типу сутності", - "to-entity-name": "До назви сутності", - "from-entity-type": "Від типу сутності", - "from-entity-name": "Від назви сутності", - "to-entity": "До сутності", - "from-entity": "Від сутності", - "delete": "Видалити відношення", - "relation-type": "Тип відношення", - "relation-type-required": "Необхідно вказати тип відношення.", - "any-relation-type": "Будь-який тип", - "add": "Додати відношення", - "edit": "Редагувати відношення", - "delete-to-relation-title": "Ви впевнені, що хочете видалити відношення до сутності '{{entityName}}'?", - "delete-to-relation-text": "Будьте обережні, після підтвердження, сутність '{{entityName}}' не буде пов'язана з поточним об'єктом.", - "delete-to-relations-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 відношення} other {# відношення} }?", - "delete-to-relations-text": "Будьте обережні, після підтвердження, всі вибрані відношення стануть не пов'язані з поточною сутністю.", - "delete-from-relation-title": "Ви впевнені, що хочете видалити зв'язок, який йде від сутності '{{entityName}}'?", - "delete-from-relation-text": "Будьте обережні, після підтвердження поточна сутність буде відв'язана від сутності '{{entityName}}'.", - "delete-from-relations-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 відношення} other {# відношення} }?", - "delete-from-relations-text": "Будьте обережні, після підтвердження, всі вибрані відношення будуть видалені, а поточна сутність стане не зв'язаною з відповідними сутностями.", - "remove-relation-filter": "Видалити фільтр відношення", - "add-relation-filter": "Додати фільтр відношення", - "any-relation": "Будь-яке відношення", - "relation-filters": "Фільтри відношення", - "additional-info": "Додаткова інформація (JSON)", - "invalid-additional-info": "Не вдалося розібрати JSON з додатковою інформацією ." - }, - "resource": { - "resources-library": "Бібліотека ресурсів" - }, - "rulechain": { - "rulechain": "Ланцюжок правил", - "rulechains": "Ланцюжки правил", - "root": "Основний", - "delete": "Видалити ланцюжок правил", - "name": "Назва", - "name-required": "Необхідно вказати назву.", - "description": "Опис", - "add": "Додати ланцюжок правил", - "set-root": "Зробити ланцюжок правил основним", - "set-root-rulechain-title": "Ви впевнені, що хочете зробити ланцюжок правил '{{ruleChainName}}' основним?", - "set-root-rulechain-text": "Після підтвердження ланцюжок правил стане основним і буде обробляти всі вхідні транспортні повідомлення.", - "delete-rulechain-title": "Ви впевнені, що хочете видалити ланцюжок правил '{{ruleChainName}}'?", - "delete-rulechain-text": "Будьте обережні, після підтвердження ланцюжок правил і всі пов'язані з ним дані стануть недоступними.", - "delete-rulechains-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 ланцюг правил} other {# ланцюги правил} }?", - "delete-rulechains-action-title": "Видалити{ count, plural, =1 {1 ланцюг правил} other {# ланцюги правил} }", - "delete-rulechains-text": "Будьте обережні, після підтвердження, вибрані ланцюжки правил і всі пов'язані з ними дані стануть недоступними.", - "add-rulechain-text": "Додати новий ланцюжок правил", - "no-rulechains-text": "Ланцюжок правил не знайдено", - "rulechain-details": "Деталі ланцюжка правил", - "details": "Деталі", - "events": "Події", - "system": "Система", - "import": "Імпортувати ланцюжок правил", - "export": "Експортувати ланцюжок правил", - "export-failed-error": "Не вдалося експортувати ланцюжок правил: {{error}}", - "create-new-rulechain": "Створити новий ланцюжок правил", - "rulechain-file": "Файл ланцюжка правил", - "invalid-rulechain-file-error": "Неможливо імпортувати ланцюжок правил: недійсна структуру даних ланцюжка правил.", - "copyId": "Копіювати Id ланцюжка правил", - "idCopiedMessage": "Id ланцюжка правил скопійовано в буфер обміну", - "select-rulechain": "Вибрати ланцюжок правил", - "no-rulechains-matching": "Не знайдено жодних ланцюжків правил, які відповідають '{{entity}}'.", - "rulechain-required": "Необхідно вказати ланцюжок правил", - "management": "Управління ланцюжками правил", - "debug-mode": "Режим налагодження" - }, - "rulenode": { - "details": "Деталі", - "events": "Події", - "search": "Пошук вузлів", - "open-node-library": "Відкрити бібліотеку вузлів", - "add": "Додати вузол правил", - "name": "Назва", - "name-required": "Необхідно вказати назву.", - "type": "Тип", - "rule-node-description": "Опис вузла правил", - "delete": "Видалити вузол правил", - "select-all-objects": "Вибрати усі вузли та з'єднання", - "deselect-all-objects": "Зняти виділення з усіх вузлів і з'єднань", - "delete-selected-objects": "Видалити вибрані вузли та з'єднання", - "delete-selected": "Видалити вибране", - "select-all": "Вибрати все", - "copy-selected": "Копіювати вибране", - "deselect-all": "Відмінити вибране", - "rulenode-details": "Деталі вузла правил", - "debug-mode": "Режим налагодження", - "configuration": "Конфігурація", - "link": "Посилання", - "link-details": "Деталі посилання про вузол правил", - "add-link": "Додати посилання", - "link-label": "Мітка посилання", - "link-label-required": "Необхідно вказати мітку посилання.", - "custom-link-label": "Мітка посилання користувача", - "custom-link-label-required": "Необхідно вказати мітку посилання користувача.", - "link-labels": "Мітки посилання", - "link-labels-required": "Необхідно вказати мітки посилання.", - "no-link-labels-found": "Не знайдено жодних міток посилання", - "no-link-label-matching": "Мітку '{{label}}' не знайдено.", - "create-new-link-label": "Створити нову!", - "type-filter": "Фільтр", - "type-filter-details": "Фільтрувати вхідні повідомлення з заданими умовами", - "type-enrichment": "Насичення", - "type-enrichment-details": "Додати додаткову інформацію до метаданих повідомлень", - "type-transformation": "Трансформація", - "type-transformation-details": "Змінити склад повідомлення та його метадані", - "type-action": "Дія", - "type-action-details": "Виконати задану дію", - "type-analytics": "Аналітика", - "type-analytics-details": "Виконує аналіз потокових або збережених даних", - "type-external": "Зовнішній", - "type-external-details": "Взаємодіє з зовнішньою системою", - "type-rule-chain": "Ланцюжок правил", - "type-rule-chain-details": "Перенаправити вхідне повідомлення на вказаний ланцюжок правил", - "type-input": "Вхід", - "type-input-details": "Логічний вхід ланцюжка правил, перенаправляє вхідні повідомлення на наступний пов'язаний вузол правил", - "type-unknown": "Невідомий", - "type-unknown-details": "Невизначений вузол правил", - "directive-is-not-loaded": "Вказана директива конфігурації '{{directiveName}}' недоступна.", - "ui-resources-load-error": "Не вдалося завантажити UI ресурси.", - "invalid-target-rulechain": "Не вдається визначити цільовий ланцюжок правил!", - "test-script-function": "Протестувати скрипт", - "message": "Повідомлення", - "message-type": "Тип повідомлення", - "select-message-type": "Вибрати тип повідомлення", - "message-type-required": "Необхідно вказати тип повідомлення", - "metadata": "Метадані", - "metadata-required": "Записи метаданих не можуть бути порожніми.", - "output": "Вихід", - "test": "Тест", - "help": "Допомога", - "reset-debug-settings": "Вимкнути налаштування налагодження у всіх правилах" - }, - "scheduler": { - "scheduler": "Планувальник", - "scheduler-event": "Подія планувальника", - "select-scheduler-event": "Вибрати подію", - "no-scheduler-events-matching": "Не знайдено жодних подій, які відповідають '{{entity}}'.", - "scheduler-event-required": "Необхідно вказати заплановану подію", - "management": "Управління планувальником", - "scheduler-events": "Планування подій", - "add-scheduler-event": "Додати подію", - "search-scheduler-events": "Пошук події", - "created-time": "Час створення", - "name": "Назва", - "type": "Тип", - "created_customer": "Створено клієнтом", - "edit-scheduler-event": "Редагувати подію", - "delete-scheduler-event": "Видалити подію", - "no-scheduler-events": "Не знайдено жодних запланованих подій", - "selected-scheduler-events": "{ count, plural, =1 {1 запланована подія} other {# заплановані події} } вибрано", - "delete-scheduler-event-title": "Ви впевнені, що хочете видалити подію '{{schedulerEventName}}'?", - "delete-scheduler-event-text": "Будьте обережні, після підтвердження подія і всі пов'язані з нею дані стануть недоступними.", - "delete-scheduler-events-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 запланована подія} other {# заплановані події} }?", - "delete-scheduler-events-text": "Будьте обережні, після підтвердження всі вибрані події будуть видалені, і всі пов'язані з ними дані стануть недоступними.", - "create": "Створити подію планувальника", - "edit": "Змінити подію планувальника", - "name-required": "Необхідно вказати назву", - "configuration": "Конфігурація", - "schedule": "Розклад", - "start-time": "Початок", - "repeat": "Повтор", - "repeats": "Повтори", - "daily": "Щодня", - "weekly": "Щотижня", - "repeats-required": "Необхідно вказати повторення.", - "repeat-on": "Повторювати по", - "repeat-every": "Повторювати кожний(у)", - "ends-on": "Завершення", - "sunday-label": "Нд", - "monday-label": "Пн", - "tuesday-label": "Вт", - "wednesday-label": "Ср", - "thursday-label": "Чт", - "friday-label": "Пт", - "saturday-label": "Сб", - "repeat-on-sunday": "Повторити у неділю", - "repeat-on-monday": "Повторити в понеділок", - "repeat-on-tuesday": "Повторити у вівторок", - "repeat-on-wednesday": "Повторити в середу", - "repeat-on-thursday": "Повторити в четвер", - "repeat-on-friday": "Повторити в п'ятницю", - "repeat-on-saturday": "Повторити в суботу", - "event-type": "Тип події", - "select-event-type": "Вибрати тип події", - "event-type-required": "Необхідно вказати типи події.", - "list-mode": "Перегляд списку", - "calendar-mode": "Перегляд календаря", - "calendar-view-type": "Тип перегляду календаря", - "month": "Місяць", - "week": "Тиждень", - "day": "День", - "agenda-week": "Порядок тижня", - "agenda-day": "Порядок дня", - "list-year": "Список року", - "list-month": "Список місяця", - "list-week": "Список тижня", - "list-day": "Список дня", - "today": "Сьогодні", - "navigate-before": "Перейти до", - "navigate-next": "Перейти далі", - "starting-from": "Починаючи з", - "until": "до", - "on": "в", - "sunday": "Неділя", - "monday": "Понеділок", - "tuesday": "Вівторок", - "wednesday": "Середа", - "thursday": "Четвер", - "friday": "П'ятниця", - "saturday": "Субота", - "originator": "Ініціатор", - "single-entity": "Єдина сутність", - "group-of-entities": "Група сутностей", - "single-device": "Один пристрій", - "group-of-devices": "Група пристроїв", - "message-body": "Текст повідомлення", - "target": "Ціль", - "rpc-method": "Метод", - "rpc-method-required": "Необхідно вказати метод", - "rpc-params": "Параметри", - "select-dashboard-state": "Виберіть стан панелі візуалізації", - "hours": "Години", - "minutes": "Хвилини", - "seconds": "Секунди", - "time-interval-required": "Необхідно вказати часовий інтервал", - "time-unit-required": "Необхідно вказати одиниці часу" - }, - "report": { - "report-config": "Конфігурація звіту", - "email-config": "Конфігурація електронної пошти", - "dashboard-state-param": "Значення параметра стану панелі візуалізації", - "base-url": "Базова URL-адреса", - "base-url-required": "Необхідно вказати базову URL-адресу.", - "use-dashboard-timewindow": "Використовуйте вікно часу на панелі інструментів", - "timewindow": "Вікно часу", - "name-pattern": "Шаблон назви звіту", - "name-pattern-required": "Необхідно задати шаблон назви звіту", - "type": "Report type", - "use-current-user-credentials": "Використовувати поточні авторизаційні дані користувача", - "customer-user-credentials": "Авторизаційні дані користувачів", - "customer-user-credentials-required": "Необхідно задати авторизаційні дані користувачів", - "generate-test-report": "Створити звіт про перевірку", - "send-email": "Відправити лист", + "max-notification-display": "Максимальна кількість сповіщень для відображення", + "counter": "Лічильник", + "counter-hint": "Лічильник буде відображатися, якщо ввімкнено «Назва віджета»", + "icon": "Іконка", + "counter-value": "Значення", + "counter-color": "Колір", + "notification-button": "Кнопки сповіщень", + "button-view-all": "Переглянути всі", + "button-filter": "Фільтр", + "type-filter": "Фільтр типу", + "button-mark-read": "Позначити все як прочитане", + "notification-types": "Типи сповіщень", + "notification-type": "Тип сповіщення", + "search-type": "Пошук за типом", + "any-type": "Будь-який тип" + }, + "alarm-count": { + "alarm-count-card-style": "Стиль картки кількості тривог" + }, + "entity-count": { + "entity-count-card-style": "Стиль картки кількості сутностей" + }, + "count": { + "layout": "Розташування", + "layout-column": "Стовпцем", + "layout-row": "Рядком", + "label": "Маркування", + "icon": "Іконка", + "icon-background": "Фон іконки", + "value": "Значення", + "chevron": "Шеврон", + "auto-scale": "Автомасштабування" + }, + "table": { + "common-table-settings": "Загальні налаштування таблиці", + "enable-search": "Увімкнути пошук", + "enable-sticky-header": "Завжди показувати заголовок", + "enable-sticky-action": "Завжди показувати стовпець дій", + "hidden-cell-button-display-mode": "Режим відображення дій кнопок у прихованій комірці", + "show-empty-space-hidden-action": "Показувати порожнє місце замість прихованої дії кнопки комірки", + "dont-reserve-space-hidden-action": "Не резервувати місце для прихованих кнопок дій", + "display-timestamp": "Мітка часу", + "display-pagination": "Показувати пагінацію", + "default-page-size": "Розмір сторінки за замовчуванням", + "page-step-settings": "Налаштування кроку пагінації", + "page-step-count": "Кількість кроків", + "page-step-increment": "Приріст кроку", + "page-step-count-format-message": "Має бути цілим числом у діапазоні від 1 до 100.", + "page-step-increment-format-message": "Має бути цілим числом, більшим або рівним 1.", + "use-entity-label-tab-name": "Використовувати маркування сутності в назві вкладки", + "hide-empty-lines": "Приховувати порожні рядки", + "row-style": "Стиль рядка", + "use-row-style-function": "Використовувати функцію стилю рядка", + "row-style-function": "Функція стилю рядка", + "cell-style": "Стиль комірки", + "use-cell-style-function": "Використовувати функцію стилю комірки", + "cell-style-function": "Функція стилю комірки", + "cell-content": "Вміст комірки", + "use-cell-content-function": "Використовувати функцію вмісту комірки", + "cell-content-function": "Функція вмісту комірки", + "show-latest-data-column": "Показувати стовпець останніх даних", + "latest-data-column-order": "Порядок стовпця останніх даних", + "entities-table-title": "Заголовок таблиці сутностей", + "enable-select-column-display": "Дозволити вибір стовпців для відображення", + "display-entity-name": "Показувати стовпець назви сутності", + "entity-name-column-title": "Назва стовпця назви сутності", + "display-entity-label": "Показувати стовпець маркування сутності", + "entity-label-column-title": "Назва стовпця маркування сутності", + "display-entity-type": "Показувати стовпець типу сутності", + "default-sort-order": "Порядок сортування за замовчуванням", + "custom-title": "Власний заголовок шапки", + "column-width": "Ширина стовпця (px або %)", + "default-column-visibility": "Видимість стовпців за замовчуванням", + "column-visibility-visible": "Видимо", + "column-visibility-hidden": "Приховано", + "column-visibility-hidden-mobile": "Приховано в мобільному режимі", + "column-selection-to-display": "Вибір стовпців у 'Стовпці для відображення'", + "column-selection-to-display-enabled": "Увімкнено", + "column-selection-to-display-disabled": "Вимкнено", + "alarms-table-title": "Заголовок таблиці тривог", + "enable-alarms-selection": "Увімкнути вибір тривог", + "enable-alarms-search": "Увімкнути пошук тривог", + "enable-alarm-filter": "Увімкнути фільтр тривог", + "display-alarm-details": "Показувати деталі тривоги", + "allow-alarms-ack": "Дозволити підтвердження тривог", + "allow-alarms-clear": "Дозволити очищення тривог", + "display-alarm-activity": "Показувати активність тривоги", + "allow-alarms-assign": "Дозволити призначення тривог", + "columns": "Стовпці", + "column-settings": "Налаштування стовпців", + "remove-column": "Видалити стовпець", + "add-column": "Додати стовпець", + "no-columns": "Стовпці не налаштовані", + "columns-to-display": "Стовпці для відображення", + "table-header": "Шапка таблиці", + "header-buttons": "Кнопки шапки", + "table-buttons": "Кнопки таблиці", + "pagination": "Пагінація", + "rows": "Рядки", + "timeseries-column-error": "Потрібно вказати хоча б один стовпець часового ряду", + "alarm-column-error": "Потрібно вказати хоча б один стовпець тривоги", + "table-tabs": "Вкладки таблиці", + "show-cell-actions-menu-mobile": "Показувати випадаюче меню дій комірки в мобільному режимі", + "disable-sorting": "Вимкнути сортування" + }, + "latest-chart": { + "total": "Загалом", + "auto-scale": "Автомасштаб", + "clockwise-layout": "Розташування за годинниковою стрілкою", + "sort-series": "Сортувати ряди за маркуванням", + "tooltip-value-type-absolute": "Абсолютне значення", + "tooltip-value-type-percentage": "Відсоток" + }, + "pie-chart": { + "pie-chart-appearance": "Зовнішній вигляд кругової діаграми", + "label": "Маркування", + "border": "Межа", + "radius": "Радіус", + "pie-chart-card-style": "Стиль картки кругової діаграми" + }, + "radar-chart": { + "radar-appearance": "Зовнішній вигляд радарної діаграми", + "shape": "Форма", + "shape-polygon": "Багатокутник", + "shape-circle": "Коло", + "color": "Колір", + "line": "Лінія", + "points": "Точки", + "points-label": "Маркування точок", + "radar-axis": "Вісь радарної діаграми", + "axis-label": "Маркування осі", + "ticks-label": "Маркування поділок", + "radar-chart-style": "Стиль радарної діаграми", + "max-axes-scaling": "Максимальне масштабування осей", + "max-axes-scaling-hint": "Виберіть, чи матиме кожна вісь радарної діаграми власне максимальне значення (Окремо), чи всі осі використовуватимуть найбільше значення серед усіх осей на основі набору даних віджета (Спільне).", + "separate": "Окремо", + "common": "Спільне" + }, + "time-series-chart": { + "chart": "Діаграма", + "chart-style": "Стиль діаграми", + "data-zoom": "Масштабування даних", + "stack-mode": "Режим накладання", + "stack-mode-hint": "Накладає ряди на діаграмі. Ряди з однаковою одиницею вимірювання розміщуються один над одним.", + "axes": "Осі", + "y-axes": "Осі Y", + "line-type": "Тип лінії", + "line-width": "Товщина лінії", + "type-line": "Лінія", + "type-bar": "Стовпчик", + "type-point": "Точка", + "no-aggregation-bar-width-strategy": "Стратегія ширини стовпчиків для неагрегованих даних", + "no-aggregation-bar-width-strategy-group": "Групувати", + "no-aggregation-bar-width-strategy-separate": "Окремо", + "bar-group-width": "Ширина групи стовпчиків", + "bar-width": "Ширина стовпчика", + "bar-width-relative": "Відсоток часового вікна", + "bar-width-absolute": "Абсолютна (мс)", + "comparison": { + "comparison": "Порівняння", + "comparison-hint": "Порівняння працює лише з історичними даними!", + "show": "Показати", + "settings": "Налаштування порівняння", + "show-values-for-comparison": "Показувати історичні дані для порівняння", + "comparison-values-label": "Маркування ключа порівняння", + "comparison-values-label-auto": "Авто", + "comparison-data-color": "Колір даних порівняння" + }, + "threshold": { + "thresholds": "Пороги", + "source": "Джерело", + "key-value": "Ключ / Значення", + "no-thresholds": "Пороги не налаштовані", + "add-threshold": "Додати поріг", + "type-constant": "Константа", + "type-latest-key": "Ключ", + "type-entity": "Сутність", + "threshold-settings": "Налаштування порогу", + "remove-threshold": "Видалити поріг", + "threshold-value-required": "Потрібне значення порогу.", + "key-required": "Потрібен ключ.", + "entity-key-required": "Потрібен ключ сутності.", + "line-appearance": "Зовнішній вигляд лінії", + "line-color": "Колір лінії", + "start-symbol": "Початковий символ", + "end-symbol": "Кінцевий символ", + "symbol-size": "розмір", + "label": "Маркування", + "label-position-start": "Початок", + "label-position-middle": "Середина", + "label-position-end": "Кінець", + "label-position-inside-start": "Всередині на початку", + "label-position-inside-start-top": "Всередині на початку зверху", + "label-position-inside-start-bottom": "Всередині на початку знизу", + "label-position-inside-middle": "Всередині посередині", + "label-position-inside-middle-top": "Всередині посередині зверху", + "label-position-inside-middle-bottom": "Всередині посередині знизу", + "label-position-inside-end": "Всередині в кінці", + "label-position-inside-end-top": "Всередині в кінці зверху", + "label-position-inside-end-bottom": "Всередині в кінці знизу", + "label-background": "Фон маркування" + }, + "state": { + "states": "Стани", + "label": "Маркування", + "ticks-value": "Значення поділок", + "source": "Джерело", + "value-range": "Значення / Діапазон", + "no-states": "Стани не налаштовані", + "add-state": "Додати стан", + "type-constant": "Константа", + "type-range": "Діапазон", "from": "Від", - "from-required": "Необхідно вказати від кого.", "to": "До", - "to-required": "Необхідно вказати до кого.", - "cc": "Cc", - "bcc": "Bcc", - "subject": "Тема", - "subject-required": "Необхідно вказати тему.", - "body": "Текст", - "body-required": "Лист не може бути пустим." - }, - "blob-entity": { - "blob-entity": "Blob сутності", - "select-blob-entity": "Вибрати blob сутності", - "no-blob-entities-matching": "Не знайдено жодних сутностей blob, які відповідають '{{entity}}'.", - "blob-entity-required": "Необхідно вказати blob сутності", - "files": "Файли", - "search": "Пошук файлів", - "clear-search": "Очистити пошук", - "no-blob-entities-prompt": "Файлів не знайдено", - "report": "Звіт", - "created-time": "Час створення", - "name": "Назва", - "type": "Тип", - "created_customer": "Створено клієнтом", - "download-blob-entity": "Завантажити файл", - "delete-blob-entity": "Видалити файл", - "delete-blob-entity-title": "Ви впевнені, що хочете видалити файл '{{blobEntityName}}'?", - "delete-blob-entity-text": "Будьте обережні, після підтвердження, дані з файлу стануть недоступними для відновлення." - }, - "timezone": { - "timezone": "Часовий пояс", - "select-timezone": "Вибрати часовий пояс ", - "no-timezones-matching": "Не знайдено жодних часових поясів, які відповідають '{{timezone}}'.", - "timezone-required": "Необхідно вказати часовий пояс." - }, - "queue": { - "select_name": "Виберіть назву для Queue", - "name": "Назва для Queue", - "name_required": "Поле 'Назва для Queue' необхідно заповнити!" - }, - "tenant": { - "tenant": "Власник", - "tenants": "Власники", - "management": "Управління власниками", - "add": "Додати власника", - "admins": "Адміністратори", - "manage-tenant-admins": "Керування адміністраторами власника", - "delete": "Видалити власника", - "add-tenant-text": "Додати нового власника", - "no-tenants-text": "Не знайдено жодного власника", - "tenant-details": "Подробиці про власника", - "delete-tenant-title": "Ви впевнені, що хочете видалити власника '{{tenantTitle}}'?", - "delete-tenant-text": "Будьте обережні, після підтвердження власник і всі пов'язані з ним дані стануть недоступними.", - "delete-tenants-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 власник} other {# власники} }?", - "delete-tenants-action-title": "Видалити { count, plural, =1 {1 власник} other {# власники} }", - "delete-tenants-text": "Будьте обережні, після підтвердження, усі вибрані власники будуть видалені, і всі пов'язані з ними дані стануть недоступними.", - "title": "Назва", - "title-required": "Необхідно вказати назву.", - "description": "Опис", - "details": "Деталі", - "events": "Події", - "copyId": "Копіювати Id власника", - "idCopiedMessage": "Id власника скопійовано в буфер обміну", - "select-tenant": "Вибрати власника", - "no-tenants-matching": "Не знайдено жодних власників, які відповідають '{{entity}}'.", - "tenant-required": "Необхідно вказати власника", - "selected-tenants": "{ count, plural, =1 {1 власник} other {# власники} } вибрано", - "search": "Пошук власників" - }, - "timeinterval": { - "seconds-interval": "{ seconds, plural, =1 {1 секунда} other {# секунди} }", - "minutes-interval": "{ minutes, plural, =1 {1 хвилина} other {# хвилини} }", - "hours-interval": "{ hours, plural, =1 {1 година} other {# години} }", - "days-interval": "{ days, plural, =1 {1 день} other {# дні} }", - "days": "Дні", - "hours": "Години", - "minutes": "Хвилини", - "seconds": "Секунди", - "advanced": "Додатково" - }, - "timewindow": { - "days": "{ days, plural, =1 { день } other {# дні } }", - "hours": "{ hours, plural, =0 { годин } =1 {1 година } other {# години } }", - "minutes": "{ minutes, plural, =0 { хвилин } =1 {1 хвилина } other {# хвилини } }", - "seconds": "{ seconds, plural, =0 { секунд } =1 {1 секунда } other {# секунди } }", - "realtime": "Реальний час", - "history": "Історія", - "last-prefix": "Останнє", - "period": "з {{ startTime }} до {{ endTime }}", - "edit": "Редагувати вікно часу", - "date-range": "Проміжок часу", - "last": "Останнє", - "time-period": "Період часу", - "hide": "Приховати" - }, - "user": { - "user": "Користувач", - "users": "Користувачі", - "customer-users": "Користувачі клієнта", - "tenant-admins": "Адміністратори власників", - "sys-admin": "Системний адміністратор", - "tenant-admin": "Адміністратор власника", - "customer": "Клієнт", - "anonymous": "Анонім", - "add": "Додати користувача", - "delete": "Видалити користувача", - "add-user-text": "Додати нового користувача", - "no-users-text": "Не знайдено жодного користувача", - "user-details": "Подробиці про користувача", - "delete-user-title": "Ви впевнені, що хочете видалити користувача '{{userEmail}}'?", - "delete-user-text": "Будьте обережні, після підтвердження, користувач і всі пов'язані з ним дані стануть недоступними.", - "delete-users-title": "Ви впевнені, що хочете видалити { count, plural, =1 {1 користувача} other {# користувачів} }?", - "delete-users-action-title": "Видалити { count, plural, =1 {1 користувача} other {# користувачів} }", - "delete-users-text": "Будьте обережні, після підтвердження, усіх виділених користувачів буде видалено, і всі пов'язані з ними дані стануть недоступними.", - "activation-email-sent-message": "Активаційний лист успішно надіслано!", - "resend-activation": "Повторно надіслати активаційного листа", - "email": "Електронна пошта", - "email-required": "Необхідно вказати електронну пошту.", - "invalid-email-format": "Недійсний формат електронної пошти.", - "first-name": "Ім'я", - "last-name": "Прізвище", - "description": "Опис", - "default-dashboard": "Панель візуалізації за замовчуванням", - "always-fullscreen": "Завжди в повноекранному режимі", - "select-user": "Вибрати користувача", - "no-users-matching": "Не знайдено жодного користувача, що відповідає '{{entity}}'.", - "user-required": "Необхідно вказати користувача", - "activation-method": "Спосіб активації", - "display-activation-link": "Показати посилання для активації", - "send-activation-mail": "Надіслати активаційного листа", - "activation-link": "Активаційне посилання для користувача", - "activation-link-text": "Для активації користувача, скористайтеся наступним посиланням :", - "copy-activation-link": "Скопіювати активаційне посилання ", - "activation-link-copied-message": "Посилання на активацію користувача було скопійовано в буфер обміну", - "selected-users": "{ count, plural, =1 {1 користувач} other {# користувачі} } вибрано", - "search": "Пошук користувачів", - "details": "Подробиці", - "login-as-tenant-admin": "Увійти як адміністратор власника", - "login-as-customer-user": "Увійти як користувач клієнта", - "disable-account": "Вимкнути обліковий запис користувача", - "enable-account": "Увімкнути обліковий запис користувача", - "enable-account-message": "Обліковий запис користувача успішно увімкнено!", - "disabled-account-message": "Обліковий запис користувача успішно вимкнено!", - "copyId": "Копіювати Id користувача", - "idCopiedMessage": "Id користувача було скопійовано в буфер обміну" - }, - "value": { - "type": "Тип значення", - "string": "Рядок", - "string-value": "Значення рядка", - "integer": "Ціле", - "integer-value": "Ціле значення", - "invalid-integer-value": "Недійсне ціле значення", - "double": "Подвійне", - "double-value": "Подвійне значення", - "boolean": "Логічне", - "boolean-value": "Логічне значення", - "false": "Помилкове", - "true": "Правдиве", - "long": "Довге" - }, - "version-control": { - "version-control": "Керування версіями" - }, - "widget": { - "widget-library": "Бібліотека віджетів", - "widget-bundle": "Пакет віджетів", - "select-widgets-bundle": "Виберіть пакет віджетів", - "management": "Керування віджетами", - "editor": "Редактор віджетів", - "widget-type-not-found": "Помилка завантаження конфігурації віджетів.
Можливо, пов'язаний з нею\n тип віджета було видалено.", - "widget-type-load-error": "Віджет не вдалося завантажити з наступних причин:", - "remove": "Видалити віджет", - "edit": "Відредагувати віджет", - "remove-widget-title": "Ви впевнені, що хочете видалити віджет '{{widgetTitle}}'?", - "remove-widget-text": "Після підтвердження віджет і всі пов'язані з ним дані стануть недоступними.", - "timeseries": "Телеметрія", - "search-data": "Пошук даних", - "no-data-found": "Даних не знайдено", - "latest": "Останні значення", - "rpc": "Керуючий віджет", - "alarm": "Віджет сигналу тривоги", - "static": "Статичний віджет", - "select-widget-type": "Вибрати тип віджета", - "missing-widget-title-error": "Необхідно вказати назву віджета!", - "widget-saved": "Віджет збережено", - "unable-to-save-widget-error": "Неможливо зберегти віджет! Віджет має помилки!", - "save": "Зберегти віджет", - "saveAs": "Зберегти віджет як", - "save-widget-type-as": "Зберегти тип віджета як", - "save-widget-type-as-text": "Введіть новий заголовок віджета та / або виберіть цільові віджети", - "toggle-fullscreen": "Перейти в повноекранний режим", - "run": "Запустити віджет", - "title": "Назва віджета", - "title-required": "Необхідно вказати назву віджета.", - "type": "Тип віджета", - "resources": "Ресурси", - "resource-url": "JavaScript/CSS URL", - "remove-resource": "Видалити ресурс", - "add-resource": "Додати ресурс", - "html": "HTML", - "tidy": "Форматувати", - "css": "CSS", - "settings-schema": "Схема налаштувань", - "datakey-settings-schema": "Схема налаштувань ключів даних", - "javascript": "Javascript", - "add-widget-type": "Додати новий тип віджета", - "widget-template-load-failed-error": "Не вдалося завантажити шаблон віджета!", - "add": "Додати віджет", - "undo": "Скасувати зміни віджета", - "export": "Експортувати віджет", - "export-data": "Експортувати дані віджетів", - "export-to-csv": "Експортувати дані в CSV...", - "export-to-excel": "Експортувати дані в XLS..." - }, - "widget-action": { - "header-button": "Кнопка заголовка віджета", - "open-dashboard-state": "Перейти до нового стану панелі візуалізації", - "update-dashboard-state": "Оновити поточний стан панелі візуалізації", - "open-dashboard": "Перейти до іншої панелі візуалізації", - "custom": "Дії користувачів", - "custom-pretty": "Дії користувачів (з HTML шаблоном)", - "target-dashboard-state": "Цільовий стан панелі візуалізації", - "target-dashboard-state-required": "Необхідно вказати цільовий стан панелі візуалізації", - "set-entity-from-widget": "Встановити сутність із віджета", - "target-dashboard": "Цільова панель візуалізації", - "open-right-layout": "Відкрити мобільний режим панелі візуалізації" - }, - "widgets-bundle": { - "current": "Поточний зв'язок", - "widgets-bundles": "Пакети віджетів", - "add": "Додати пакет віджетів", - "delete": "Видалити пакет віджетів", - "title": "Назва", - "title-required": "Необхідно вказати назву віджета.", - "add-widgets-bundle-text": "Додати новий пакет віджетів", - "no-widgets-bundles-text": "Не знайдено жодних пакетів віджетів", - "empty": "Пакет віджетів порожній", - "details": "Подробиці", - "widgets-bundle-details": "Деталі пакетів віджетів", - "delete-widgets-bundle-title": "Ви впевнені, що хочете видалити пакет віджетів '{{widgetsBundleTitle}}'?", - "delete-widgets-bundle-text": "Будьте обережні, після підтвердження, пакети віджетів і всі пов'язані з ними дані стануть недоступними.", - "delete-widgets-bundles-title": "Ви впевнені, що хочете видалити { count, plural, =1 {пакет віджетів} other {# пакети віджетів} }?", - "delete-widgets-bundles-action-title": "Видалити { count, plural, =1 {1 пакет віджетів} other {# пакет віджетів} }", - "delete-widgets-bundles-text": "Будьте обережні, після підтвердження, всі виділені пакети віджетів і всі пов'язані з ними дані стануть недоступними.", - "no-widgets-bundles-matching": "Не знайдено жодних пакетів віджетів, які відповідають '{{widgetsBundle}}'.", - "widgets-bundle-required": "Необхідно вказати пакет віджетів.", - "system": "Системний", - "import": "Імпортувати пакет віджетів", - "export": "Експортувати пакет віджетів", - "export-failed-error": "Неможливо експортувати пакет віджетів: {{error}}", - "create-new-widgets-bundle": "Створити новий пакет віджетів", - "widgets-bundle-file": "Файл набору віджетів", - "invalid-widgets-bundle-file-error": "Неможливо імпортувати пакет віджетів: недійсна структура даних пакету віджетів." - }, - "widget-config": { - "data": "Дані", - "settings": "Налаштування", - "advanced": "Додатково", - "title": "Назва", - "general-settings": "Загальні налаштування", - "display-title": "Відобразити назву у віджеті", - "drop-shadow": "Тінь", - "enable-fullscreen": "Увімкнути повноекранний режим", - "enable-data-export": "Увімкнути експорт даних", + "remove-state": "Видалити стан" + }, + "grid": { + "grid": "Сітка", "background-color": "Колір фону", - "text-color": "Колір тексту", - "padding": "Відступ", - "margin": "Границі", - "widget-style": "Стиль віджетів", - "title-style": "Стиль заголовка", - "mobile-mode-settings": "мобільний режим", - "order": "Порядок", - "height": "Висота", - "units": "Спеціальний символ після значення", - "decimals": "Кількість цифр після коми", - "timewindow": "Вікно часу", - "use-dashboard-timewindow": "Використати вікно часу на панелі візуалізації", - "display-timewindow": "Показувати вікно часу", - "legend": "Легенда", - "display-legend": "Показати легенду", - "datasources": "Джерела даних", - "maximum-datasources": "Максимально { count, plural, =1 {1 дозволене джерело даних.} other {# дозволені джерела даних } }", - "datasource-type": "Тип", - "datasource-parameters": "Параметри", - "remove-datasource": "Видалити джерело даних", - "add-datasource": "Додати джерело даних", - "target-device": "Цільовий пристрій", - "alarm-source": "Джерело сигналу тривоги", - "actions": "Дії", - "action": "Дія", - "add-action": "Додати дію", - "search-actions": "Пошук дії", - "action-source": "Джерело дії", - "action-source-required": "Необхідно вказати джерело дії.", - "action-name": "Назва дії", - "action-name-required": "Необхідно вказати назву дії.", - "action-name-not-unique": "Дія з такою назвою вже існує.\nНазва дії має бути унікальною в межах одного джерела дії.", - "action-icon": "Іконка", - "action-type": "Тип", - "action-type-required": "Необхідно вказати тип дії.", - "edit-action": "Редагувати дію", - "delete-action": "Видалити дію", - "delete-action-title": "Видалити дію віджета", - "delete-action-text": "Ви впевнені, що хочете видалити дію віджета '{{actionName}}'?", - "title-icon": "Іконка у назві віджету", - "display-icon": "Показувати іконку у назві віджету", - "icon-color": "Колір іконки", - "icon-size": "Розмір іконки", - "advanced-settings": "Розширені налаштування", - "data-settings": "Налаштування даних", - "no-data-display-message": "\"Немає данних для відображення\" альтернативний текст" - }, - "widget-type": { - "import": "Імпортувати тип віджета", - "export": "Експортувати тип віджета", - "export-failed-error": "Неможливо експортувати тип віджета: {{error}}", - "create-new-widget-type": "Створити новий тип віджета", - "widget-type-file": "Файл типу віджета", - "invalid-widget-type-file-error": "Неможливо імпортувати тип віджету: неправильна структура даних типу віджета." - }, - "widgets": { - "date-range-navigator": { - "localizationMap": { - "Sun": "Нд", - "Mon": "Пн", - "Tue": "Вт", - "Wed": "Ср", - "Thu": "Чт", - "Fri": "Пт", - "Sat": "Сб", - "Jan": "Січ.", - "Feb": "Лют.", - "Mar": "Берез.", - "Apr": "Квіт.", - "May": "Трав.", - "Jun": "Черв.", - "Jul": "Лип.", - "Aug": "Серп.", - "Sep": "Верес.", - "Oct": "Жовт.", - "Nov": "Листоп.", - "Dec": "Груд.", - "January": "Січень", - "February": "Лютий", - "March": "Березень", - "April": "Квітень", - "June": "Червень", - "July": "Липень", - "August": "Серпень", - "September": "Вересень", - "October": "Жовтень", - "November": "Листопад", - "December": "Грудень", - "Custom Date Range": "Користувацький діапазон дат", - "Date Range Template": "Шаблон діапазону дат", - "Today": "Сьогодні", - "Yesterday": "Вчора", - "This Week": "Цього тижня", - "Last Week": "Минулий тиждень", - "This Month": "Цей місяць", - "Last Month": "Минулий місяць", - "Year": "Рік", - "This Year": "Цього року", - "Last Year": "Минулий рік", - "Date picker": "Вибір дати", - "Hour": "Година", - "Day": "День", - "Week": "Тиждень", - "2 weeks": "2 Тижні", - "Month": "Місяць", - "3 months": "3 Місяці", - "6 months": "6 Місяців", - "Custom interval": "Користувацький інтервал", - "Interval": "Інтервал", - "Step size": "Розмір кроку", - "Ok": "Ok" - } - }, - "input-widgets": { - "attribute-not-allowed": "Атрибут не може бути вибраний в цьому віджеті", - "date": "Дата", - "blocked-location": "Геолокація заблокована у вашому браузері", - "claim-device": "Підтвердити пристрій", - "claim-failed": "Не вдалося підтвердити пристрій!", - "claim-not-found": "Пристрій не знайдено!", - "claim-successful": "Пристрій успішно підтверджено!", - "discard-changes": "Скасувати зміни", - "device-name": "Назва пристрою", - "device-name-required": "Необхідно вказати назву пристрою", - "entity-attribute-required": "Необхідно вказати значення атрибута", - "entity-coordinate-required": "Необхідно вказати широту та довготу", - "entity-timeseries-required": "Необхідно вказати значення телеметрії", - "get-location": "Отримати поточне місцезнаходження", - "latitude": "Широта", - "longitude": "Довгота", - "not-allowed-entity": "Обрана сутність не має спільних атрибутів", - "no-attribute-selected": "Атрибут не вибрано", - "no-datakey-selected": "Ні один datakey не обраний", - "no-entity-selected": "Сутність не вибрано", - "no-coordinate-specified": "Ключ для широти/довготи не вказаний", - "no-support-geolocation": "Ваш браузер не підтримує геолокацію", - "no-image": "Немає зображення", - "no-support-web-camera": "Немає підтримуваної веб-камери", - "no-timeseries-selected": "Параметр телеметрії не вибрано", - "secret-key": "Секретний ключ", - "secret-key-required": "Необхідно вказати секретний ключ", - "switch-attribute-value": "Змінити значення атрибута", - "switch-camera": "Змінити камеру", - "switch-timeseries-value": "Змінити значення телеметрії", - "take-photo": "Зробити фото", - "time": "Час", - "timeseries-not-allowed": "Телеметрія не може бути вибрана в цьому віджеті", - "update-failed": "Не вдалося оновити", - "update-successful": "Успішно оновлено", - "update-attribute": "Оновити атрибут", - "update-timeseries": "Оновити телеметрію", - "value": "Значення" + "border": "Межа" + }, + "axis": { + "axes": "Осі", + "x-axis": "Вісь X", + "y-axis": "Вісь Y", + "y-axis-settings": "Налаштування осі Y", + "comparison-x-axis-settings": "Налаштування осі X для порівняння", + "remove-y-axis": "Видалити вісь Y", + "id": "Id", + "label": "Маркування", + "position": "Позиція", + "position-left": "Ліворуч", + "position-right": "Праворуч", + "position-top": "Вгорі", + "position-bottom": "Внизу", + "tick-labels": "Маркування поділок", + "ticks-formatter-function": "Функція форматування поділок", + "ticks-generator-function": "Функція генерації поділок", + "show-ticks": "Показувати поділки", + "show-line": "Показувати лінію", + "show-split-lines": "Показувати лінії поділу", + "show-split-lines-x-axis-hint": "Якщо увімкнено, на діаграмі будуть показані вертикальні лінії.", + "show-split-lines-y-axis-hint": "Якщо увімкнено, на діаграмі будуть показані горизонтальні лінії.", + "ticks-interval": "Інтервал поділок", + "ticks-interval-hint": "Примусово встановити інтервал сегментації для осі.", + "split-number": "Кількість сегментів", + "split-number-hint": "Кількість сегментів, на які поділена вісь.", + "min": "Мін", + "max": "Макс", + "show": "Показати", + "add-y-axis": "Додати вісь Y" + }, + "series": { + "legend-settings": "Налаштування легенди", + "show-in-legend": "Показувати в легенді", + "show-in-legend-hint": "Показувати назву ряду та дані в легенді.", + "hidden-by-default": "Приховано за замовчуванням", + "hidden-by-default-hint": "Зробити ряд прихованим у легенді за замовчуванням.", + "series-type": "Тип ряду", + "type": "Тип", + "type-line": "Лінія", + "type-bar": "Стовпчик", + "line": { + "line": "Лінія", + "show-line": "Показувати лінію", + "step-line": "Східчаста лінія", + "step-type-start": "Початок", + "step-type-middle": "Середина", + "step-type-end": "Кінець", + "smooth-line": "Згладжена лінія" }, - "persistent-table": { - "rpc-id": "RPC ID", - "message-type": "Тип повідомлення", - "method": "Метод", - "params": "Параметри", - "created-time": "Час створення", - "expiration-time": "Час життя", - "retries": "Повторні спроби", - "status": "Статус", - "filter": "Фільтр", - "refresh": "Оновити", - "add": "Додати RPC запит", - "details": "Деталі", - "delete": "Видалити", - "delete-request-title": "Видалити RPC запит", - "delete-request-text": "Ви впевнені, що хочете видалити RPC запит?", - "details-title": "Деталі RPC ID: ", - "additional-info": "Додаткова інформація", - "response": "Відповідь", - "any-status": "Будь-який статус", - "rpc-status-list": "Список RPC статусів", - "no-request-prompt": "Запитів не знайдено", - "send-request": "Відправити запит", - "add-title": "Додати новий RPC запит", - "method-error": "Необхідно вказати метод.", - "white-space-error": "Пробіли не допускаються.", - "rpc-status": { - "QUEUED": "В ЧЕРЗІ", - "SENT": "ВІДПРАВЛЕНО", - "DELIVERED": "ДОСТАВЛЕНО", - "SUCCESSFUL": "УСПІШНО", - "TIMEOUT": "ЧАС МИНУВ", - "EXPIRED": "ПРОТЕРМІНОВАНО", - "FAILED": "НЕ ВДАЛО" - }, - "rpc-search-status-all": "ВСІ", - "message-types": { - "false": "Двосторонній", - "true": "Односторонній" - } + "point": { + "points": "Точки", + "show-points": "Показувати точки", + "point-label": "Маркування точки", + "point-label-hint": "Показувати маркування зі значенням над точкою ряду.", + "point-label-background": "Фон маркування точки", + "point-shape": "Форма точки", + "point-size": "Розмір точки" } + } }, - "white-labeling": { - "white-labeling": "Брендування", - "login-white-labeling": "Login White Labeling", - "preview": "Попередній перегляд", - "app-title": "Назва програми", - "favicon": "Іконка веб-сайту", - "favicon-description": "*.ico, *.gif or *.png image with maximum size {{kbSize}} KBytes.", - "favicon-size-error": "Зображення веб-сайту завелике. Максимально дозволений розмір зображення веб-сайту {{kbSize}} KBytes.", - "favicon-type-error": "Недійсний формат файлу зображення веб-сайту. Приймаються лише зображення ICO, GIF або PNG.", - "drop-favicon-image": "Зніміть зображення піктограми веб-сайту або клацніть, щоб вибрати файл для завантаження.", - "no-favicon-image": "Не вибрано жодної іконки", - "logo": "Логотип", - "logo-description": "Будь-яке зображення з максимальним розміром {{kbSize}} KBytes.", - "logo-size-error": "Зображення логотипу занадто велике. Максимально дозволений розмір зображення логотипу{{kbSize}} KBytes.", - "logo-type-error": "Недійсний формат файлу логотипу. Приймаються тільки зображення.", - "drop-logo-image": "Зніміть зображення логотипу або клацніть, щоб вибрати файл для завантаження.", - "no-logo-image": "Не вибрано жодного логотипу", - "logo-height": "Висота логотипу, px", - "primary-palette": "Основна палітра", - "accent-palette": "Палітра акцент", - "customize-palette": "Налаштування", - "edit-palette": "Редагувати палітру", - "save-palette": "Зберегти палітру", - "primary-background": "Первинний фон", - "secondary-background": "Вторинний фон", - "hue1": "HUE 1", - "hue2": "HUE 2", - "hue3": "HUE 3", - "page-background-color": "Колір фону сторінки", - "dark-foreground": "Темний передній план", - "domain-name": "Доменне ім'я" - }, - "icon": { - "icon": "Іконка", - "select-icon": "Виберіть Іконку", - "material-icons": "Іконки в стилі Material", - "show-all": "Показати всі іконки" - }, - "custom": { - "widget-action": { - "action-cell-button": "Кнопка дії в комірці таблиці", - "row-click": "Клацніть на рядок", - "marker-click": "Клацніть на маркер", - "polygon-click": "Дія при натисканні на полігон", - "tooltip-tag-action": "Дія при натисканні на посилання в підказці", - "node-selected": "Дії при виборі ноди", - "element-click": "Дії при натисканні на HTML елементі", - "pie-slice-click": "Дії при натисканні на секції кругової діаграми", - "row-double-click": "Дії при подвійному натисканні на рядок" - } + "wind-speed-direction": { + "layout": "Макет", + "layout-default": "За замовчуванням", + "layout-advanced": "Розширений", + "layout-simplified": "Спрощений", + "values": "Значення", + "wind-direction": "Напрямок вітру", + "center-value": "Центральне значення", + "icon": "Піктограма", + "arrow": "Стрілка", + "ticks": "Поділки", + "labels-type": "Тип маркування", + "directional-names": "Назви напрямків", + "degrees": "Градуси", + "major-ticks": "Основні поділки", + "minor-ticks": "Проміжні поділки", + "wind-speed-direction-card-style": "Стиль картки швидкості та напрямку вітру", + "ticks-color": "Колір поділок", + "ticks-labels-type": "Тип маркування поділок", + "arrow-color": "Колір стрілки" + }, + "value-source": { + "value-source": "Джерело значення", + "predefined-value": "Константа", + "entity-attribute": "Атрибут сутності", + "value": "Значення", + "value-required": "Потрібне значення.", + "key-required": "Потрібен ключ.", + "entity-key-required": "Потрібен ключ сутності.", + "source-entity-alias": "Псевдонім вихідної сутності", + "source-entity-attribute": "Атрибут вихідної сутності", + "type-constant": "Константа", + "type-latest-key": "Ключ", + "type-entity": "Сутність" + }, + "rpc-state": { + "initial-state": "Початковий стан", + "initial-state-hint": "Дія для отримання початкового стану (Увімкнено/Вимкнено) компонента.", + "disabled-state": "Вимкнений стан", + "disabled-state-hint": "Налаштуйте умову, за якої компонент вимкнено.", + "turn-on": "Увімкнути 'On'", + "turn-on-hint": "Дія, що запускається, коли повзунок перемикається на 'On'", + "turn-off": "Вимкнути 'Off'", + "turn-off-hint": "Дія, що запускається, коли повзунок перемикається на 'Off'", + "on": "On", + "off": "Off", + "disabled": "Вимкнено" + }, + "value-action": { + "do-nothing": "Нічого не робити", + "execute-rpc": "Виконати RPC", + "get-attribute": "Отримати атрибут", + "set-attribute": "Встановити атрибут", + "get-time-series": "Отримати часовий ряд", + "get-alarm-status": "Отримати стан тривоги", + "get-dashboard-state": "Отримати id стану дашборда", + "get-dashboard-state-object": "Отримати об'єкт стану дашборда", + "add-time-series": "Додати часовий ряд", + "execute-rpc-text": "Виконати RPC-метод '{{methodName}}'", + "get-time-series-text": "Використовувати часовий ряд '{{key}}'", + "get-attribute-text": "Використовувати атрибут '{{key}}'", + "get-alarm-status-text": "Використовувати стан тривоги", + "get-dashboard-state-text": "Використовувати стан дашборда", + "get-dashboard-state-object-text": "Використовувати об'єкт стану дашборда", + "when-dashboard-state-is-text": "Коли id стану дашборда дорівнює '{{state}}'", + "when-dashboard-state-function-is-text": "Коли f(id стану дашборда) дорівнює '{{state}}'", + "when-dashboard-state-object-function-is-text": "Коли f(об'єкта стану дашборда) дорівнює '{{state}}'", + "set-attribute-to-value-text": "Встановити атрибут '{{key}}' у: {{value}}", + "add-time-series-value-text": "Додати значення часового ряду '{{key}}': {{value}}", + "set-attribute-text": "Встановити атрибут '{{key}}'", + "add-time-series-text": "Додати часовий ряд '{{key}}'", + "action": "Дія", + "value": "Значення", + "init-value-hint": "Значення, яке буде встановлено, доки пристрій не надішле дані.", + "method": "Метод", + "method-name-required": "Потрібна назва методу.", + "request-timeout-ms": "Тайм-аут запиту RPC (мс)", + "request-timeout-required": "Потрібен тайм-аут запиту.", + "min-request-timeout-error": "Значення тайм-ауту запиту має бути не менше 5000 мс (5 секунд).", + "request-persistent": "Постійний запит RPC", + "persistent-polling-interval": "Інтервал опитування постійного запиту (мс)", + "persistent-polling-interval-hint": "Інтервал опитування (мс) для отримання відповіді на команду постійного RPC", + "persistent-polling-interval-required": "Потрібен інтервал опитування постійного запиту.", + "min-persistent-polling-interval-error": "Значення інтервалу опитування постійного запиту має бути не менше 1000 мс (1 секунда).", + "attribute-scope": "Область атрибутів", + "attribute-key": "Ключ атрибута", + "attribute-key-required": "Потрібен ключ атрибута.", + "time-series-key": "Ключ часового ряду", + "time-series-key-required": "Потрібен ключ часового ряду.", + "action-result-converter": "Конвертер результату дії", + "converter-none": "Немає", + "converter-function": "Функція", + "converter-constant": "Константа", + "converter-value": "Значення", + "parse-value-function": "Функція розбору значення", + "state-when-result-is": "'{{state}}' коли результат", + "parameters": "Параметри", + "convert-value-function": "Функція перетворення значення", + "error": { + "target-entity-is-not-set": "Цільову сутність не задано!", + "failed-to-perform-action": "Не вдалося виконати дію {{ actionLabel }}.", + "invalid-attribute-scope": "Область атрибутів {{scope}} не підтримується сутністю {{entityType}}." + } + }, + "widget-font": { + "font-settings": "Налаштування шрифту", + "font-family": "Сімейство шрифтів", + "size": "Розмір", + "relative-font-size": "Відносний розмір шрифту (відсотки)", + "font-style": "Стиль", + "font-style-normal": "Звичайний", + "font-style-italic": "Курсив", + "font-style-oblique": "Похилий", + "font-weight": "Насиченість", + "font-weight-normal": "Звичайна", + "font-weight-bold": "Жирна", + "font-weight-bolder": "Жирніша", + "font-weight-lighter": "Тонша", + "color": "Колір", + "shadow-color": "Колір тіні", + "preview": "Попередній перегляд", + "line-height": "Висота рядка", + "auto": "Авто" + }, + "home": { + "no-data-available": "Дані недоступні" + }, + "system-info": { + "cpu": "CPU", + "ram": "RAM", + "disk": "Диск", + "cpu-warning-text": "Високе навантаження на CPU. Щоб уникнути збою системи, оптимізуйте продуктивність системи.", + "cpu-critical-text": "Критично високе навантаження на CPU. Щоб уникнути збою системи, оптимізуйте продуктивність системи.", + "ram-warning-text": "Низький запас RAM. Щоб уникнути збою системи, оптимізуйте продуктивність системи або збільште обсяг RAM.", + "ram-critical-text": "Критично низький запас RAM. Щоб уникнути збою системи, оптимізуйте продуктивність системи або збільште обсяг RAM.", + "disk-warning-text": "Мало місця на диску. Щоб уникнути втрати даних, звільніть або розширте дисковий простір.", + "disk-critical-text": "Критично мало місця на диску. Щоб уникнути втрати даних, звільніть або розширте дисковий простір." + }, + "cluster-info": { + "service-id": "Id сервісу", + "service-type": "Тип сервісу", + "no-data": "Немає даних" + }, + "transport-messages": { + "title": "Транспортні повідомлення", + "info": "Усі повідомлення, що надійшли від пристроїв" + }, + "activity": { + "title": "Активність" + }, + "documentation": { + "title": "Документація", + "add-link": "Додати посилання", + "add-link-title": "Додати посилання на документацію", + "name": "Назва", + "name-required": "Потрібна назва.", + "link": "Посилання", + "link-required": "Потрібне посилання.", + "columns": "Стовпці" + }, + "quick-links": { + "title": "Швидкі посилання", + "add-link": "Додати посилання", + "add-link-title": "Додати швидке посилання", + "quick-link": "Швидке посилання", + "quick-link-required": "Потрібне швидке посилання.", + "no-links-matching": "Не знайдено посилань, що відповідають '{{name}}'.", + "columns": "Стовпці" + }, + "recent-dashboards": { + "title": "Дашборди", + "last": "Нещодавні", + "starred": "Обрані", + "name": "Назва", + "last-viewed": "Проглянуто", + "no-last-viewed-dashboards": "Поки немає нещодавно переглянутих дашбордів" + }, + "configured-features": { + "title": "Налаштовані можливості", + "info": "Статус можливостей, що потребують налаштування", + "email-feature": "Email", + "sms-feature": "SMS", + "slack-feature": "Slack", + "oauth2-feature": "OAuth 2", + "2fa-feature": "2FA", + "feature-configured": "Функцію налаштовано.\nНатисніть, щоб налаштувати", + "feature-not-configured": "Функцію не налаштовано.\nНатисніть, щоб налаштувати" + }, + "version-info": { + "title": "Версія", + "contact-us": "Зв'язатися з нами", + "current-version": "Поточна версія", + "current": "Поточна", + "available-version": "Доступна версія", + "available": "Доступна", + "upgrade": "Оновити", + "version-is-up-to-date": "Версія актуальна" + }, + "usage-info": { + "title": "Ліміти", + "entities": "Сутності", + "api-calls": "Виклики API" + }, + "functions": { + "title": "Функції", + "pe-feature-tooltip": "Лише у ThingsBoard\nProfessional Edition", + "switch-to-pe": "Перемкнутися на PE", + "alarms": "Тривоги", + "dashboards": "Дашборди", + "entities-and-relations": "Сутності та зв'язки", + "profiles": "Профілі", + "advanced-features": "Розширені можливості", + "notification-center": "Центр сповіщень", + "api-usage": "Використання API", + "customers": "Клієнти", + "customers-hierarchy": "Ієрархія клієнтів", + "roles-and-permissions": "Ролі та дозволи", + "groups": "Групи", + "integrations": "Інтеграції", + "solution-templates": "Шаблони рішень", + "scheduler": "Планувальник", + "white-labeling": "Брендування" + }, + "devices": { + "view-docs": "Переглянути документацію", + "inactive": "Неактивні", + "active": "Активні", + "total": "Усі" }, - "paginator" : { - "items-per-page": "Елементів на сторінці:", - "first-page-label": "Перша сторінка", - "last-page-label": "Остання сторінка", - "next-page-label": "Наступна сторінка", - "previous-page-label": "Попередня сторінка", - "items-per-page-separator": "з" + "alarms": { + "critical": "Критичні", + "assigned-to-me": "Призначені мені", + "total": "Усі" }, - "language": { - "language": "Мова" + "getting-started": { + "get-started": "Розпочати", + "finish": "Завершити", + "done-welcome-title": "Ласкаво просимо", + "done-welcome-text": "Ви чудово впоралися!", + "sys-admin": { + "step1": { + "title": "Створити тенанта та адміністратора тенанта", + "content": "

Тенант — це окрема особа або організація, що володіє або виробляє пристрої та активи. Тенант може мати кількох користувачів-адміністраторів тенанта, клієнтів, пристрої та активи.

Адміністратор тенанта може створювати та керувати пристроями, активами, клієнтами та дашбордами в обліковому записі тенанта.

Перегляньте документацію, як це зробити:

", + "how-to-create-tenant": "Як створити тенанта та адміністратора тенанта" + }, + "step2": { + "title": "Налаштувати функцію: Поштовий сервер", + "content": "

Налаштування поштового сервера необхідне для активації користувачів, відновлення пароля та доставки сповіщень про тривоги.

Перегляньте документацію, як це зробити:

", + "how-to-configure-mail-server": "Як налаштувати поштовий сервер" + }, + "step3": { + "title": "Налаштувати функцію: SMS-провайдер", + "content": "

Налаштуйте SMS-провайдерів, щоб сповіщати клієнтів про тривоги через SMS.

Перегляньте документацію, як це зробити:

", + "how-to-configure-sms-provider": "Як налаштувати SMS-провайдера" + }, + "step4": { + "title": "Налаштувати функцію: Брендування", + "content": "

Легко налаштуйте логотип і колірну схему Вашої компанії або продукту без кодування та без перезапуску сервісу.

Перегляньте документацію, як це зробити:

" + }, + "step5": { + "title": "Налаштувати функцію: 2FA", + "content": "

Підвищте безпеку облікових записів платформи за допомогою двофакторної автентифікації.

Перегляньте документацію, як це зробити:

" + }, + "step6": { + "title": "Налаштувати функцію: OAuth 2", + "content": "

Спростіть вхід для користувачів тенанта та клієнтів за допомогою функції єдиного входу (SSO) через OAuth 2.0.

Перегляньте документацію, як це зробити:

" + } + }, + "tenant-admin": { + "step1": { + "title": "Створити пристрій", + "content": "

Давайте підключимо Ваш перший пристрій до платформи через UI. Перегляньте документацію, як це зробити:

", + "how-to-create-device": "Як створити пристрій" + }, + "step2": { + "title": "Підключити пристрій", + "content-before": "

Щоб підключити пристрій, Вам потрібно отримати облікові дані пристрою. Для цього посібника ми рекомендуємо використовувати типові автоматично згенеровані облікові дані — токен доступу.

Використайте прості команди, щоб опублікувати дані через HTTP. Не забудьте замінити $ACCESS_TOKEN на токен доступу Вашого пристрою:

", + "ubuntu": { + "install-curl": "Встановіть cURL для Ubuntu:" + }, + "macos": { + "install-curl": "Встановіть cURL для MacOS:" + }, + "windows": { + "install-curl": "Починаючи з Windows 10 b17063, cURL доступний за замовчуванням." + }, + "replace-access-token": "Замініть $ACCESS_TOKEN на токен Вашого пристрою:", + "content-after": "

Ви також можете використовувати інші протоколи, такі як MQTT, CoAP тощо.

Перегляньте документацію, як це зробити:

", + "how-to-connect-device": "Як підключити пристрій" + }, + "step3": { + "title": "Створити дашборд", + "content": "

Створіть дашборд, щоб візуалізувати дані із сутностей, таких як активи, пристрої тощо.

Перегляньте документацію, як це зробити:

", + "how-to-create-dashboard": "Як створити дашборд" + }, + "step4": { + "title": "Налаштувати правила тривог", + "alarm-rules": "Правила тривог", + "content": "

Давайте створимо тривогу, коли температура досягне 25°C. Перегляньте документацію, як це зробити:

", + "how-to-configure-alarm-rules": "Як налаштувати правила тривог" + }, + "step5": { + "title": "Створити тривогу", + "content-before": "

Щоб спрацювала тривога, надішліть нове значення телеметрії 26°C або вище.

", + "replace-access-token": "Замініть $ACCESS_TOKEN на токен Вашого пристрою:", + "content-after": "

Перегляньте документацію, як це зробити:

", + "how-to-create-alarm": "Як створити тривогу" + }, + "step6": { + "title": "Створити клієнта та надати спільний доступ до дашборда", + "content": "

Після створення дашбордів для кінцевих користувачів користувач клієнта може бачити лише власні пристрої, а дані іншого клієнта буде приховано.

Перегляньте документацію, як це зробити:

" + } + } } -} + }, + "icon": { + "icon": "Піктограма", + "icons": "Піктограми", + "select-icon": "Вибрати піктограму", + "material-icons": "Material icons", + "show-all": "Показати всі піктограми", + "search-icon": "Шукати піктограму", + "no-icons-found": "Не знайдено піктограм для '{{iconSearch}}'" + }, + "phone-input": { + "phone-input-label": "Номер телефону", + "phone-input-required": "Потрібен номер телефону", + "phone-input-validation": "Номер телефону недійсний або неможливий", + "phone-input-pattern": "Недійсний номер телефону. Має бути у форматі E.164, напр. {{phoneNumber}}", + "phone-input-hint": "Номер телефону у форматі E.164, напр. {{phoneNumber}}" + }, + "custom": { + "widget-action": { + "action-cell-button": "Кнопка дії в комірці", + "row-click": "При натисканні на рядок", + "cell-click": "При натисканні на комірку", + "polygon-click": "При натисканні на полігон", + "marker-click": "При натисканні на маркер", + "circle-click": "При натисканні на коло", + "tooltip-tag-action": "Дія тега підказки", + "node-selected": "При виборі вузла", + "element-click": "При натисканні на HTML-елемент", + "pie-slice-click": "При натисканні на сектор", + "row-double-click": "При подвійному натисканні на рядок", + "cell-double-click": "При подвійному натисканні на комірку", + "card-click": "При натисканні на картку", + "click": "При натисканні" + } + }, + "paginator": { + "items-per-page": "Елементів на сторінці:", + "first-page-label": "Перша сторінка", + "last-page-label": "Остання сторінка", + "next-page-label": "Наступна сторінка", + "previous-page-label": "Попередня сторінка", + "items-per-page-separator": "з" + }, + "language": { + "language": "Мова" + } +} \ No newline at end of file diff --git a/ui-ngx/src/assets/locale/locale.constant-zh_CN.json b/ui-ngx/src/assets/locale/locale.constant-zh_CN.json index 024a836551..fb1c849057 100644 --- a/ui-ngx/src/assets/locale/locale.constant-zh_CN.json +++ b/ui-ngx/src/assets/locale/locale.constant-zh_CN.json @@ -1,7835 +1,9541 @@ { - "access": { - "unauthorized": "未授权", - "unauthorized-access": "未授权访问", - "unauthorized-access-text": "您需要登陆才能访问这个资源!", - "access-forbidden": "禁止访问", - "access-forbidden-text": "您没有访问此位置的权限
如果您仍希望访问此位置,请尝试使用其他用户登录。", - "refresh-token-expired": "会话已过期", - "refresh-token-failed": "无法刷新会话", - "permission-denied": "权限被拒绝", - "permission-denied-text": "您没有执行此操作的权限!" - }, - "account": { - "account": "账号", - "notification-settings": "通知设置" - }, - "action": { - "activate": "激活", - "suspend": "暂停", - "save": "保存", - "saveAs": "另存为", - "move": "移动", - "cancel": "取消", - "ok": "确定", - "delete": "删除", - "add": "添加", - "yes": "是", - "no": "否", - "update": "更新", - "remove": "移除", - "select": "选择", - "search": "查询", - "clear-search": "清除查询", - "assign": "分配", - "unassign": "取消分配", - "share": "分享", - "make-private": "私有", - "apply": "应用", - "apply-changes": "应用更改", - "edit-mode": "编辑模式", - "enter-edit-mode": "进入编辑模式", - "decline-changes": "撤销更改", - "decline": "撤销", - "close": "关闭", - "back": "后退", - "run": "运行", - "sign-in": "登录!", - "edit": "编辑", - "view": "查看", - "create": "创建", - "drag": "拖拽", - "refresh": "刷新", - "undo": "撤销", - "copy": "复制", - "paste": "粘贴", - "copy-reference": "复制引用", - "paste-reference": "粘贴引用", - "import": "导入", - "export": "导出", - "share-via": "通过{{provider}}分享", - "continue": "继续", - "discard-changes": "放弃更改", - "download": "下载", - "next": "下一个", - "next-with-label": "下一个:{{label}}", - "read-more": "阅读更多", - "hide": "隐藏", - "done": "完成", - "print": "打印", - "restore": "恢复", - "confirm": "确定", - "more": "更多", - "less": "更少", - "skip": "跳过", - "send": "发送", - "reset": "重置", - "show-more": "显示更多", - "dont-show-again": "不再显示", - "see-documentation": "查看文档", - "clear": "清除", - "upload": "上传", - "delete-anyway": "仍要删除", - "delete-selected": "删除所选", - "set": "设置" - }, - "aggregation": { - "aggregation": "聚合", - "function": "聚合功能", - "limit": "限制数", - "group-interval": "间隔", - "min": "最小值", - "max": "最大值", - "avg": "平均值", - "sum": "求和", - "count": "计数", - "none": "无" - }, - "admin": { - "settings": "设置", - "general": "基本设置", - "general-settings": "基本设置", - "home-settings": "首页设置", - "home": "首页", - "outgoing-mail": "发送邮件", - "outgoing-mail-settings": "发送邮件设置", - "system-settings": "系统设置", - "test-mail-sent": "测试邮件发送成功!", - "base-url": "基本URL", - "base-url-required": "基本URL必填。", - "prohibit-different-url": "禁止从客户端请求头中使用主机名", - "prohibit-different-url-hint": "应为生产环境启用此设置。禁用时可能会导致安全问题", - "device-connectivity": { - "device-connectivity": "设备连接", - "http-s": "HTTP(s)", - "mqtt-s": "MQTT(s)", - "coap-s": "COAP(s)", - "http": "HTTP", - "https": "HTTPs", - "mqtt": "MQTT", - "mqtts": "MQTTs", - "coap": "COAP", - "coaps": "COAPs", - "hint": "如果主机或端口字段为空,将使用默认的协议值。", - "host": "主机", - "port": "端口", - "port-pattern": "端口必须是正整数。", - "port-range": "端口应在1到65535的范围内。" - }, - "mail-from": "邮件来自", - "mail-from-required": "邮件发件人必填。", - "smtp-protocol": "SMTP协议", - "smtp-host": "SMTP主机", - "smtp-host-required": "SMTP主机必填。", - "smtp-port": "SMTP端口", - "smtp-port-required": "您必须提供一个smtp端口。", - "smtp-port-invalid": "这看起来不是有效的smtp端口。", - "timeout-msec": "超时时间(毫秒)", - "timeout-required": "超时必填。", - "timeout-invalid": "这看起来不像有效的超时值。", - "enable-tls": "启用TLS", - "tls-version": "TLS版本", - "enable-proxy": "启用代理", - "proxy-host": "代理主机", - "proxy-host-required": "代理主机必填。", - "proxy-port": "代理端口", - "proxy-port-required": "代理端口必填。", - "proxy-port-range": "代理端口应在1到65535之间。", - "proxy-user": "代理用户", - "proxy-password": "代理密码", - "change-password": "修改密码", - "send-test-mail": "发送测试邮件", - "sms-provider": "SMS 服务商", - "sms-provider-settings": "SMS 服务商设置", - "sms-provider-type": "SMS 服务商类型", - "sms-provider-type-required": "SMS 服务商类型必填。", - "sms-provider-type-aws-sns": "亚马逊社交网站", - "sms-provider-type-twilio": "Twilio", - "sms-provider-type-smpp": "SMPP", - "aws-access-key-id": "AWS访问密钥ID", - "aws-access-key-id-required": "需要访问AWS密钥ID", - "aws-secret-access-key": "AWS秘密访问密钥", - "aws-secret-access-key-required": "AWS 访问密钥必填", - "aws-region": "AWS地区", - "aws-region-required": "AWS 区域必填", - "number-from": "发送方电话号码", - "number-from-required": "发送方电话号码必填。", - "number-to": "电话号码至", - "number-to-required": "电话号码必填。", - "phone-number-hint": "E.164格式的手机号码,例如 +19995550123", - "phone-number-hint-twilio": "E.164格式电话号码/电话号码的SID/消息服务的SID,例如 +19995550123/PNXXX/MGXXX", - "phone-number-pattern": "手机号码无效。应为E.164格式,例如 +19995550123。", - "phone-number-pattern-twilio": "无效的电话号码,应该使用E.164格式电话号码/电话号码的SID/消息服务的SID,例如+19995550123/PNXXX/MGXXX。", - "sms-message": "短信", - "sms-message-required": "短消息内容必填。", - "sms-message-max-length": "短信长度不能超过1600个字符", - "twilio-account-sid": "Twilio帐户SID", - "twilio-account-sid-required": "Twilio 帐户的 SID 必填", - "twilio-account-token": "Twilio帐户令牌", - "twilio-account-token-required": "Twilio 帐户令牌必填", - "send-test-sms": "发送测试短信", - "test-sms-sent": "测试短信发送成功!", - "security-settings": "安全设置", - "password-policy": "密码策略", - "minimum-password-length": "最小密码长度", - "minimum-password-length-required": "最小密码长度必填", - "minimum-password-length-range": "最小密码长度应在5到50之间", - "maximum-password-length": "密码最大长度", - "maximum-password-length-min": "密码最大长度应至少为6个字符", - "maximum-password-length-less-min": "密码最大长度应大于最小长度", - "minimum-uppercase-letters": "最少大写字母位数", - "minimum-uppercase-letters-range": "最少大写字母位数不能为负数", - "minimum-lowercase-letters": "最少小写字母位数", - "minimum-lowercase-letters-range": "最少小写字母位数不能为负数", - "minimum-digits": "最少数字位数", - "minimum-digits-range": "最少数字位数不能为负数", - "minimum-special-characters": "最少特殊字符位数", - "minimum-special-characters-range": "最少特殊字符位数不能为负数", - "password-expiration-period-days": "密码有效期(天)", - "password-expiration-period-days-range": "密码过期期限(天)不能为负", - "password-reuse-frequency-days": "密码重用频率(天)", - "password-reuse-frequency-days-range": "天内密码重用频率不能为负", - "allow-whitespace": "允许空格", - "force-reset-password-if-no-valid": "如果密码不可用则强制重置密码", - "force-reset-password-if-no-valid-hint": "启用此功能时请小心:它会要求使用不可用密码的用户通过电子邮件重置其密码。", - "general-policy": "基本策略", - "max-failed-login-attempts": "登录失败之前的最大登录尝试次数", - "minimum-max-failed-login-attempts-range": "登录失败次数不能为负数", - "user-lockout-notification-email": "如果用户帐户锁定,请发送通知到电子邮件", - "user-activation-token-ttl": "用户激活链接在1小时内", - "user-activation-token-ttl-range": "用户激活链接必须在1到24小时范围内", - "password-reset-token-ttl": "密码重置链接1小时内", - "password-reset-token-ttl-range": "密码重置链接必须在1到24小时内", - "mobile-secret-key-length": "移动端密钥长度", - "mobile-secret-key-length-range": "移动端密钥长度范围", - "domain-name": "域名", - "domain-name-unique": "域名和协议必须是唯一的。", - "domain-name-max-length": "域名应该小于256个字符。", - "error-verification-url": "域名不应包含符号 “/” 和 “:”。例:thingsboard.io", - "connection-settings": "连接设置", - "oauth2": { - "access-token-uri": "访问令牌URI", - "access-token-uri-required": "访问令牌URI必填。", - "activate-user": "激活用户", - "add-domain": "添加域", - "delete-domain": "删除域", - "add-provider": "添加Provider", - "delete-provider": "删除Provider", - "allow-user-creation": "允许用户创建", - "always-fullscreen": "始终全屏", - "authorization-uri": "授权URI", - "authorization-uri-required": "授权URI必填。", - "add-client": "添加OAuth2.0客户端", - "client-details": "OAuth2.0客户端详情", - "client": "OAuth2.0客户端", - "clients": "OAuth2.0客户端", - "no-oauth2-clients": "未找到OAuth2.0客户端", - "search-oauth2-clients": "搜索OAuth2.0客户端", - "delete-client-title": "您确定要删除OAuth2.0客户端'{{clientName}}'?", - "delete-client-text": "请注意,确认后客户端和所有相关数据将无法恢复。", - "delete-mobile-app-title": "您确定要删除移动应用程序'{{applicationName}}'?", - "delete-mobile-app-text": "请小心,确认后移动应用程序和所有相关数据将变得无法恢复。", - "title": "标题", - "client-title-required": "标题是必填项。", - "client-title-max-length": "标题长度应该小于100个字符。", - "advanced-settings": "高级设置", - "domain-details": "域名详情", - "no-domains": "未找到域名", - "search-domains": "搜索域名", - "mobile-app-details": "移动端详细信息", - "add-mobile-app": "添加应用程序", - "no-mobile-apps": "未配置应用程序", - "search-mobile-apps": "搜索移动端", - "send-token": "发送令牌", - "create-new": "创建", - "client-authentication-method": "客户端身份验证方法", - "client-id": "客户端ID", - "client-id-required": "客户端 ID 必填。", - "client-id-max-length": "客户端ID应该小于256个字符。", - "client-secret": "客户机密", - "client-secret-required": "需要客户端密码。", - "client-secret-max-length": "客户端密钥应该小于2049个字符。", - "custom-setting": "自定义设置", - "customer-name-pattern": "客户名称模式", - "customer-name-pattern-max-length": "客户名称模式应该小于256个字符。", - "default-dashboard-name": "默认仪表板名称", - "default-dashboard-name-max-length": "默认仪表板名称应该小于256个字符。", - "delete-domain-text": "请注意:确认后域名和所有提供商数据将不可恢复。", - "delete-domain-title": "确定要删除域'{{domainName}}'的设置吗?", - "delete-registration-text": "请注意:确认后提供商数据将不可恢复。", - "delete-registration-title": "确定要删除'{{name}}'提供商吗?", - "email-attribute-key": "电子邮件属性键", - "email-attribute-key-required": "电子邮件属性键必填。", - "email-attribute-key-max-length": "电子邮件属性键应该小于32个字符。", - "first-name-attribute-key": "First属性名称", - "first-name-attribute-key-max-length": "First属性名称应该小于32个字符。", - "general": "基本设置", - "jwk-set-uri": "JSON Web地址", - "last-name-attribute-key": "Last属性名称", - "last-name-attribute-key-max-length": "Last属性名称应该小于32个字符。", - "login-button-icon": "登录按钮图标", - "login-button-label": "标签", - "login-button-label-placeholder": "使用$(Provider label)登录", - "login-button-label-required": "标签必填。", - "login-provider": "登录提供商", - "mapper": "映射", - "new-domain": "新建", - "oauth2": "OAuth2.0", - "password-max-length": "密码应该小于256个字符。", - "redirect-uri-template": "重定向URI模板", - "copy-redirect-uri": "复制重定向URI", - "registration-id": "注册ID", - "registration-id-required": "注册ID必填。", - "registration-id-unique": "系统的注册ID必须是唯一的。", - "scope": "范围", - "scope-required": "范围必填。", - "tenant-name-pattern": "租户名称模式", - "tenant-name-pattern-required": "租户名称模式必填。", - "tenant-name-pattern-max-length": "租户名称模式应该小于256个字符。", - "tenant-name-strategy": "租户名称策略", - "type": "映射器类型", - "uri-pattern-error": "无效的URI格式。", - "url": "统一资源定位地址", - "url-pattern": "无效的URL格式。", - "url-required": "URL必填。", - "url-max-length": "URL应该小于256个字符。", - "user-info-uri": "用户信息URI", - "user-info-uri-required": "用户信息URI必填。", - "username-max-length": "用户名应该小于256个字符。", - "user-name-attribute-name": "用户名属性键", - "user-name-attribute-name-required": "用户名属性密钥必填", - "protocol": "协议", - "domain-schema-http": "HTTP", - "domain-schema-https": "HTTPS", - "domain-schema-mixed": "HTTP+HTTPS", - "enable": "启用OAuth2.0设置", - "disable": "禁用OAuth2.0设置", - "edge": "传播到Edge", - "edge-enable": "启用Edge", - "edge-disable": "禁用Edge", - "domains": "域名", - "mobile-apps": "移动端应用", - "mobile-package": "应用程序包", - "mobile-package-placeholder": "例如: my.example.app", - "mobile-package-hint": "Android:应用程序ID或iOS:产品标识符", - "mobile-package-unique": "应用程序包必须是唯一的。", - "mobile-package-required": "应用程序包必填。", - "mobile-package-max-length": "应用程序包应小于256。", - "mobile-package-spaces": "应用程序包不应包含空间。", - "mobile-app-secret": "应用程序密钥", - "mobile-app-secret-hint": "BASE64编码字符串不少于512位数据。", - "mobile-app-secret-required": "应用程序密钥必填。", - "mobile-app-secret-min-length": "应用程序密钥不少于512位数据。", - "mobile-app-secret-base64": "应用程序密钥必须为base64格式。", - "invalid-mobile-app-secret": "应用程序密钥必须只包含字母和数字字符,并且长度必须介于16到2048个字符之间。", - "copy-mobile-app-secret": "复制应用程序密钥", - "delete-mobile-app": "删除应用程序信息", - "providers": "供应商", - "platform-web": "Web", - "platform-android": "Android", - "platform-ios": "iOS", - "all-platforms": "所有平台", - "smtp-provider": "SMTP提供商", - "allowed-platforms": "允许的平台", - "authentication": "身份验证", - "basic": "基本", - "provider": "提供商", - "redirect-url": "重定向URL", - "domain-name": "域名", - "domain-name-required": "域名必填", - "redirect-url-template": "重定向URL模板", - "microsoft-tenant-id": "目录(租户)ID", - "microsoft-tenant-id-required": "需要目录(租户)ID", - "token-uri": "令牌URI", - "token-uri-required": "需要令牌URI", - "redirect-uri": "重定向URI", - "google-provider": "谷歌", - "microsoft-provider": "Office 365", - "sendgrid-provider": "Sendgrid", - "custom-provider": "自定义", - "generate-access-token": "生成访问令牌", - "update-access-token": "更新访问令牌", - "access-token-status": "访问令牌状态:", - "token-status-generated": "已生成", - "token-status-not-generated": "未生成" - }, - "smpp-provider": { - "smpp-version": "SMPP版本", - "smpp-host": "SMPP主机", - "smpp-host-required": "SMPP主机必填。", - "smpp-port": "SMPP端口", - "smpp-port-required": "SMPP端口必填。", - "system-id": "系统ID", - "system-id-required": "系统ID必填。", - "password": "密码", - "password-required": "密码必填。", - "type-settings": "类型设置", - "source-settings": "源设置", - "destination-settings": "目标设置", - "additional-settings": "其他设置", - "system-type": "系统类型", - "bind-type": "绑定类型", - "service-type": "服务类型", - "source-address": "源地址", - "source-ton": "源 TON (号码类型)", - "source-npi": "源 NPI (编号方案标识)", - "destination-ton": "目标 TON (号码类型)", - "destination-npi": "目标 NPI (编号方案标识)", - "address-range": "地址范围", - "coding-scheme": "编码方案", - "bind-type-tx": "发送端", - "bind-type-rx": "接收端", - "bind-type-trx": "发送/接收", - "ton-unknown": "未知", - "ton-international": "国际", - "ton-national": "国内", - "ton-network-specific": "网络特定", - "ton-subscriber-number": "用户号码", - "ton-alphanumeric": "字母数字", - "ton-abbreviated": "简写", - "npi-unknown": "0 - 未知", - "npi-isdn": "1 - ISDN/电话编号方案 (E163/E164)", - "npi-data-numbering-plan": "3 - 数据编号方案 (X.121)", - "npi-telex-numbering-plan": "4 - 电报编号方案 (F.69)", - "npi-land-mobile": "6 - 移动设备编号方案 (E.212)", - "npi-national-numbering-plan": "8 - 国家编号方案", - "npi-private-numbering-plan": "9 - 私有编号方案", - "npi-ermes-numbering-plan": "10 - ERMES 编号方案 (ETSI DE/PS 3 01-3)", - "npi-internet": "13 - 互联网 (IP)", - "npi-wap-client-id": "18 - WAP 客户端标识 (由 WAP 论坛定义)", - "scheme-smsc": "0 - SMSC 默认字母表 (ASCII 码用于短码和长码,GSM 编码用于免费电话)", - "scheme-ia5": "1 - IA5 码 (ASCII 码用于短码和长码,Latin 9 用于免费电话 (ISO-8859-9))", - "scheme-octet-unspecified-2": "2 - 八进制未指定 (8 位二进制)", - "scheme-latin-1": "3 - Latin 1 (ISO-8859-1)", - "scheme-octet-unspecified-4": "4 - 八进制未指定 (8 位二进制)", - "scheme-jis": "5 - JIS (X 0208-1990)", - "scheme-cyrillic": "6 - Cyrillic (ISO-8859-5)", - "scheme-latin-hebrew": "7 - Latin/Hebrew (ISO-8859-8)", - "scheme-ucs-utf": "8 - UCS2/UTF-16 (ISO/IEC-10646)", - "scheme-pictogram-encoding": "9 - 图标编码", - "scheme-music-codes": "10 - 音乐编码 (ISO-2022-JP)", - "scheme-extended-kanji-jis": "13 - 扩展汉字 JIS (X 0212-1990)", - "scheme-korean-graphic-character-set": "14 - 韩文图形字符集 (KS C 5601/KS X 1001)" - }, - "queue-select-name": "选择队列名称", - "queue-name": "名称", - "queue-name-required": "队列名称必填。", - "queues": "队列", - "queue-partitions": "分区", - "queue-submit-strategy": "提交策略", - "queue-processing-strategy": "处理策略", - "queue-configuration": "队列配置", - "repository-settings": "仓库设置", - "repository": "仓库", - "repository-url": "仓库 URL", - "repository-url-required": "仓库 URL 必填。", - "default-branch": "默认分支名称", - "repository-read-only": "只读", - "show-merge-commits": "显示合并提交", - "authentication-settings": "身份验证设置", - "auth-method": "身份验证方法", - "auth-method-username-password": "密码/访问令牌", - "auth-method-username-password-hint": "GitHub用户必须使用能够对仓库进行写入权限的访问令牌。", - "auth-method-private-key": "私钥", - "password-access-token": "密码/访问令牌", - "change-password-access-token": "更改密码/访问令牌", - "private-key": "私钥", - "drop-private-key-file-or": "拖放私钥文件或", - "passphrase": "口令", - "enter-passphrase": "输入口令", - "change-passphrase": "更改口令", - "check-access": "检查访问权限", - "check-repository-access-success": "已成功验证仓库访问!", - "delete-repository-settings-title": "确定要删除仓库设置吗?", - "delete-repository-settings-text": "请注意:确认后,仓库设置将被删除,版本控制功能将不可用。", - "auto-commit-settings": "自动提交设置", - "auto-commit": "自动提交", - "auto-commit-entities": "自动提交实体", - "no-auto-commit-entities-prompt": "没有设置自动提交的实体", - "delete-auto-commit-settings-title": "确定要删除自动提交设置吗?", - "delete-auto-commit-settings-text": "请注意:确认后,自动提交设置将被删除,所有实体的自动提交将被禁用。", - "mobile-app": { - "mobile-app": "移动应用", - "mobile-app-qr-code-widget-settings": "移动应用二维码部件设置", - "applications": "应用程序", - "default": "默认", - "custom": "自定义", - "android": "Android", - "ios": "iOS", - "appearance": "外观", - "appearance-on-home-page": "外观显示在首页", - "enabled": "启用", - "disabled": "禁用", - "badges": "徽章", - "label": "标签", - "label-required": "标签必填。", - "label-max-length": "标签应小于或等于50个字符", - "right": "右侧", - "left": "左侧", - "set": "设置", - "preview": "预览", - "connect-mobile-app": "连接移动端", - "use-system-settings": "使用系统设置" - }, - "2fa": { - "2fa": "双因素认证", - "available-providers": "可用选项", - "issuer-name": "发行者名称", - "issuer-name-required": "发行者名称必填。", - "max-verification-failures-before-user-lockout": "用户锁定前最大验证失败次数", - "max-verification-failures-before-user-lockout-pattern": "最大验证失败次数必须为正整数。", - "number-of-checking-attempts": "检查尝试次数", - "number-of-checking-attempts-pattern": "检查尝试次数必须为正整数。", - "number-of-checking-attempts-required": "检查尝试次数必填。", - "number-of-codes": "验证码数量", - "number-of-codes-pattern": "验证码数量必须为正整数。", - "number-of-codes-required": "验证码数量必填。", - "provider": "Provider", - "retry-verification-code-period": "重试验证码周期(秒)", - "retry-verification-code-period-pattern": "最短时间为5秒", - "retry-verification-code-period-required": "重试验证代码周期必填。", - "total-allowed-time-for-verification": "总允许验证时间(秒)", - "total-allowed-time-for-verification-pattern": "总允许验证最小时间为60秒", - "total-allowed-time-for-verification-required": "总允许验证时间必填。", - "use-system-two-factor-auth-settings": "使用系统双因素认证设置", - "verification-code-check-rate-limit": "验证码检查速率限制", - "verification-code-lifetime": "验证码生存期(秒)", - "verification-code-lifetime-pattern": "验证码生存期必须为正整数。", - "verification-code-lifetime-required": "验证码生存期必填。", - "verification-message-template": "验证消息模板", - "verification-limitations": "验证限制", - "verification-message-template-pattern": "验证消息需要包含模板:${code}", - "verification-message-template-required": "验证消息模板必填。", - "within-time": "在时间内 (秒)", - "within-time-pattern": "时间必须是正整数。", - "within-time-required": "时间必填。" - }, - "jwt": { - "security-settings": "JWT 安全设置", - "issuer-name": "发行者名称", - "issuer-name-required": "发行者名称必填。", - "signings-key": "签名密钥", - "signings-key-hint": "Base64编码的字符串至少512位数据。", - "signings-key-required": "签名密钥必填。", - "signings-key-min-length": "签名密钥必须至少为512位的数据。", - "signings-key-base64": "签名密钥必须是Base64格式。", - "expiration-time": "令牌过期时间(秒)", - "expiration-time-required": "令牌过期时间是必填。", - "expiration-time-max": "最大允许时间为2147483647秒(68年)。", - "expiration-time-min": "最小时间为60秒(1分钟)。", - "refresh-expiration-time": "刷新令牌过期时间(秒)", - "refresh-expiration-time-required": "刷新令牌过期时间必填。", - "refresh-expiration-time-max": "最大允许时间为2147483647秒(68年)。", - "refresh-expiration-time-min": "最小时间为900秒(15分钟)。", - "refresh-expiration-time-less-token": "刷新令牌时间必须大于令牌过期时间。", - "generate-key": "生成密钥", - "info-header": "所有用户将需要重新登录。", - "info-message": "更改JWT签名密钥将导致所有已发行的令牌无效,所有用户将需要重新登录,这也会影响使用Rest API/Websockets的脚本。" - }, - "resources": "资源", - "notifications": "通知", - "notifications-settings": "通知设置", - "slack-api-token": "Slack API令牌", - "slack": "Slack", - "slack-settings": "Slack设置", - "mobile-settings": "移动设置", - "firebase-service-account-file": "Firebase服务帐户JSON凭据文件", - "select-firebase-service-account-file": "拖放Firebase服务帐户凭据文件" - }, - "alarm": { - "alarm": "告警", - "alarms": "告警", - "all-alarms": "所有告警", - "select-alarm": "选择告警", - "no-alarms-matching": "未找到匹配'{{entity}}'的告警", - "alarm-required": "告警必填", - "alarm-filter": "告警筛选器", - "filter": "筛选器", - "alarm-status": "告警状态", - "alarm-status-list": "告警状态列表", - "any-status": "任何状态", - "search-status": { - "ANY": "所有", - "ACTIVE": "激活", - "CLEARED": "已清除", - "ACK": "已确认", - "UNACK": "未确认" - }, - "display-status": { - "ACTIVE_UNACK": "激活未确认", - "ACTIVE_ACK": "激活已确认", - "CLEARED_UNACK": "清除未确认", - "CLEARED_ACK": "清除已确认" - }, - "no-alarms-prompt": "未发现告警", - "created-time": "创建时间", - "type": "类型", - "severity": "严重程度", - "originator": "发起者", - "originator-type": "发起者类型", - "details": "详情", - "originator-label": "发起者标签", - "assign": "分配", - "assignments": "任务分配", - "assignee": "受托人", - "assignee-id": "受托人ID", - "assignee-first-name": "受托人姓氏", - "assignee-last-name": "受托人名字", - "assignee-email": "受托人邮箱", - "unassigned": "未分配", - "user-deleted": "用户已删除", - "assignee-not-set": "所有", - "status": "状态", - "alarm-details": "告警详细信息", - "start-time": "开始时间", - "assign-time": "分配时间", - "end-time": "结束时间", - "ack-time": "确认时间", - "clear-time": "清除时间", - "duration": "持续时间", - "alarm-severity": "警报严重程度", - "alarm-severity-list": "警报严重程度列表", - "any-severity": "任何严重程度", - "severity-critical": "危险", - "severity-major": "重要", - "severity-minor": "次要", - "severity-warning": "警告", - "severity-indeterminate": "不确定", - "acknowledge": "应答", - "clear": "清除", - "delete": "删除", - "search": "查找告警", - "selected-alarms": "已选择 { count, plural, =1 {1 个告警} other {# 个告警} }", - "no-data": "无数据显示", - "polling-interval": "告警轮询间隔(秒)", - "polling-interval-required": "告警轮询间隔必填。", - "min-polling-interval-message": "轮询间隔至少是1秒。", - "aknowledge-alarms-title": "确认 { count, plural, =1 {1 个告警} other {# 个告警} }", - "aknowledge-alarms-text": "确定要确认 { count, plural, =1 {1 个告警} other {# 个告警} }吗?", - "aknowledge-alarm-title": "确认告警", - "aknowledge-alarm-text": "确定要确认告警吗?", - "selected-alarms-are-acknowledged": "所选的告警已经被确认", - "clear-alarms-title": "清除 { count, plural, =1 {1 个告警} other {# 个告警} }", - "clear-alarms-text": "确定要清除 { count, plural, =1 {1 个告警} other {# 个告警} }?", - "clear-alarm-title": "清除告警", - "clear-alarm-text": "确定要清除告警吗?", - "delete-alarms-title": "删除 { count, plural, =1 {1 个告警} other {# 个告警} }", - "delete-alarms-text": "您确定要删除 { count, plural, =1 {1 个告警} other {# 个告警} } 吗?", - "selected-alarms-are-cleared": "所选的告警已清除", - "alarm-status-filter": "告警状态筛选器", - "alarm-filter-title": "告警筛选器", - "assigned": "已分配", - "filter-title": "筛选器", - "max-count-load": "要加载的最大告警数(0-无限制)", - "max-count-load-required": "加载的最大告警数必填。", - "max-count-load-error-min": "最小值为0。", - "fetch-size": "获取大小", - "fetch-size-required": "获取大小必填。", - "fetch-size-error-min": "最小值为10。", - "alarm-types": "告警类型", - "alarm-type-list": "告警类型列表", - "any-type": "任何类型", - "assigned-to-current-user": "分配给当前用户", - "assigned-to-me": "分配给我", - "search-propagated-alarms": "检索已传递的警报", - "comments": "告警评论", - "show-more": "显示更多", - "additional-info": "附加信息", - "alarm-type": "告警类型", - "enter-alarm-type": "输入告警类型", - "no-alarm-types-matching": "找不到与 '{{entitySubtype}}' 相匹配的告警类型。", - "alarm-type-list-empty": "未选择告警类型。" - }, - "alarm-activity": { - "add": "添加评论", - "alarm-comment": "告警评论", - "comments": "评论", - "delete-alarm-comment": "你想删除这条评论吗?", - "refresh": "刷新", - "oldest-first": "最早优先", - "newest-first": "最新优先", - "activity": "活动", - "export": "导出 CSV", - "author": "作者", - "created-date": "创建时间", - "edited-date": "编辑时间", - "text": "文本", - "system": "系统" - }, - "alias": { - "add": "添加别名", - "edit": "编辑别名", - "name": "别名", - "name-required": "别名必填", - "duplicate-alias": "别名已经存在。", - "filter-type-single-entity": "单个实体", - "filter-type-entity-list": "实体列表", - "filter-type-entity-name": "实体名称", - "filter-type-entity-type": "实体类型", - "filter-type-state-entity": "仪表板状态实体", - "filter-type-state-entity-description": "仪表板实体令牌状态参数", - "filter-type-asset-type": "资产类型", - "filter-type-asset-type-description": "类型为 '{{assetTypes}}' 的资产", - "filter-type-asset-type-and-name-description": "类型为 '{{assetTypes}}' 且以 '{{prefix}}' 开头的资产", - "filter-type-device-type": "设备类型", - "filter-type-device-type-description": "类型为 '{{deviceTypes}}' 的设备", - "filter-type-device-type-and-name-description": "类型为 '{{deviceTypes}}' 且以 '{{prefix}}' 开头的设备", - "filter-type-entity-view-type": "实体视图类型", - "filter-type-entity-view-type-description": "类型为 '{{entityViews}}' 的实体视图", - "filter-type-entity-view-type-and-name-description": "类型为 {{entityViews}}' 且以 '{{prefix}}' 开头的实体视图", - "filter-type-edge-type": "边缘类型", - "filter-type-edge-type-description": "类型为 '{{edgeTypes}}' 的边缘", - "filter-type-edge-type-and-name-description": "类型为 '{{edgeTypes}}' 且以 '{{prefix}}' 开头的边缘", - "filter-type-relations-query": "关联查询", - "filter-type-relations-query-description": "具有 {{relationType}} 关联 {{direction}} {{rootEntity}} 的 {{entities}} ", - "filter-type-asset-search-query": "资产搜索查询", - "filter-type-asset-search-query-description": "类型为 {{assetTypes}} 且具有 {{relationType}} 关联 {{direction}} {{rootEntity}} 的资产", - "filter-type-device-search-query": "设备搜索查询", - "filter-type-device-search-query-description": "类型为 {{deviceTypes}} 且具有 {{relationType}} 关联 {{direction}} {{rootEntity}} 的设备", - "filter-type-entity-view-search-query": "实体视图搜索查询", - "filter-type-entity-view-search-query-description": "类型为 {{entityViewTypes}} 且具有 {{relationType}} 关联 {{direction}} {{rootEntity}} 的实体视图", - "filter-type-apiUsageState": "Api使用状态", - "filter-type-edge-search-query": "边缘搜索查询", - "filter-type-edge-search-query-description": "类型为 {{edgeTypes}} 且具有 {{relationType}} 关联 {{direction}} {{rootEntity}} 的边缘", - "entity-filter": "实体筛选器", - "resolve-multiple": "解析为多实体", - "resolve-multiple-hint": "启用所有过滤实体的数据同时渲染,\n如果禁用部件仅显示来自选定实体的数据。", - "filter-type": "筛选器类型", - "filter-type-required": "筛选器类型必填。", - "entity-filter-no-entity-matched": "未找到匹配指定筛选条件的实体。", - "no-entity-filter-specified": "没有指定实体筛选器", - "root-state-entity": "使用仪表板状态实体作为根实体", - "last-level-relation": "仅获取最后一级关联", - "root-entity": "根实体", - "state-entity-parameter-name": "状态实体参数名称", - "default-state-entity": "默认状态实体", - "default-entity-parameter-name": "默认", - "max-relation-level": "最大关联层级", - "unlimited-level": "不限层级", - "state-entity": "仪表板状态实体", - "all-entities": "所有实体", - "any-relation": "不限" - }, - "asset": { - "asset": "资产", - "assets": "资产", - "management": "资产管理", - "view-assets": "查看资产", - "add": "添加资产", - "asset-type-max-length": "资产类型应该小于256个字符", - "assign-to-customer": "分配给客户", - "assign-asset-to-customer": "将资产分配给客户", - "assign-asset-to-customer-text": "请选择要分配给客户的资产", - "no-assets-text": "未找到资产", - "assign-to-customer-text": "请选择客户以分配资产", - "public": "公开", - "assignedToCustomer": "分配客户", - "make-public": "资产设为公开", - "make-private": "资产设为私有", - "unassign-from-customer": "取消分配客户", - "delete": "删除资产", - "asset-public": "资产公开", - "asset-type": "资产类型", - "asset-type-required": "资产类型必填。", - "select-asset-type": "选择资产类型", - "enter-asset-type": "输入资产类型", - "any-asset": "任何资产", - "no-asset-types-matching": "未找到匹配'{{entitySubtype}}'的资产类型。", - "asset-type-list-empty": "资产类型未选择。", - "asset-types": "资产类型", - "name": "名称", - "name-required": "名称必填。", - "name-max-length": "名称应该小于256个字符。", - "label-max-length": "标签应该小于256个字符。", - "description": "说明", - "type": "类型", - "type-required": "类型必填。", - "details": "详情", - "events": "事件", - "add-asset-text": "添加资产", - "asset-details": "资产详情", - "assign-assets": "分配资产", - "assign-assets-text": "分配 { count, plural, =1 {1 个资产} other {# 个资产} } 给客户", - "assign-asset-to-edge-title": "将资产分配给边缘", - "assign-asset-to-edge-text": "请选择要分配给边缘的资产", - "delete-assets": "删除资产", - "unassign-assets": "取消分配资产", - "unassign-assets-action-title": "从客户处取消分配 { count, plural, =1 {1 个资产} other {# 个资产} }", - "assign-new-asset": "分配新资产", - "delete-asset-title": "确定要删除资产 '{{assetName}}'吗?", - "delete-asset-text": "请注意:确认后,资产及其所有相关数据将不可恢复。", - "delete-assets-title": "确定要删除 { count, plural, =1 {1 个资产} other {# 个资产} }吗?", - "delete-assets-action-title": "删除 { count, plural, =1 {1 个资产} other {# 个资产} }", - "delete-assets-text": "请注意:确认后,所有选定的资产将被删除,所有相关的数据将不可恢复。", - "make-public-asset-title": "确定要将资产 '{{assetName}}' 设为公开吗?", - "make-public-asset-text": "确认后,资产及其所有数据将被公开并被他人访问。", - "make-private-asset-title": "确定要将资产 '{{assetName}}' 设为私有吗?", - "make-private-asset-text": "确认后,资产及其所有数据将被私有化,无法被他人访问。", - "unassign-asset-title": "确定要取消对'{{assetName}}'资产的分配吗?", - "unassign-asset-text": "确认后,资产将未分配,客户无法访问。", - "unassign-asset": "未分配资产", - "unassign-assets-title": "确定要取消分配 { count, plural, =1 {1 个资产} other {# 个资产} }吗?", - "unassign-assets-text": "确认后,所有选定的资产将被分配,客户无法访问。", - "unassign-assets-from-edge": "取消分配边缘", - "copyId": "复制资产ID", - "idCopiedMessage": "资产ID已经复制到粘贴板", - "select-asset": "选择资产", - "no-assets-matching": "未找到匹配 '{{entity}}' 的资产。", - "asset-required": "资产必填", - "name-starts-with": "资产名称以此开头", - "help-text": "根据需要可以使用'%'进行匹配,例如:'%asset_name_contains%', '%asset_name_ends', 'asset_starts_with'。", - "import": "导入资产", - "asset-file": "资产档案", - "label": "标签", - "search": "查找资产", - "assign-asset-to-edge": "将资产分配给边缘", - "unassign-asset-from-edge": "取消分配边缘", - "unassign-asset-from-edge-title": "确定要取消对'{{assetName}}'资产的分配吗?", - "unassign-asset-from-edge-text": "确认后,所有选定的资产将被分配,边缘无法访问。", - "unassign-assets-from-edge-title": "确定要取消分配 { count, plural, =1 {1 资产} other {# 个资产} }吗?", - "unassign-assets-from-edge-text": "确认后,所有选定的资产将被分配,边缘无法访问。", - "selected-assets": "已选择 { count, plural, =1 {1 个资产} other {# 个资产} }" - }, - "attribute": { - "attributes": "属性", - "latest-telemetry": "最新遥测数据", - "no-latest-telemetry": "没有最新的遥测数据", - "attributes-scope": "设备属性范围", - "scope-telemetry": "遥测", - "scope-latest-telemetry": "最新遥测数据", - "scope-client": "客户端属性", - "scope-server": "服务端属性", - "scope-shared": "共享属性", - "scope-client-short": "客户端", - "scope-server-short": "服务端", - "scope-shared-short": "共享", - "scope-latest-short": "最新", - "scope-any": "任意", - "add": "添加属性", - "key": "键名", - "key-max-length": "键应该小于256个字符。", - "last-update-time": "最后更新时间", - "key-required": "属性键必填。", - "value": "数值", - "value-required": "属性值必填。", - "telemetry-key-required": "需要遥测键", - "telemetry-value-required": "需要遥测数值", - "delete-attributes-title": "确定要删除 { count, plural, =1 {1 个属性} other {# 个属性} }吗?", - "delete-attributes-text": "注意,确认后所有选中的属性都会被删除。", - "delete-attributes": "删除属性", - "enter-attribute-value": "输入属性值", - "show-on-widget": "在部件上显示", - "widget-mode": "部件模式", - "next-widget": "下一个部件", - "prev-widget": "上一个部件", - "add-to-dashboard": "添加到仪表板", - "add-widget-to-dashboard": "将部件添加到仪表板", - "selected-attributes": "已选择 { count, plural, =1 {1 个属性} other {# 个属性} }", - "selected-telemetry": "已选择 { count, plural, =1 {1 遥测装置} other {# 遥测装置} }", - "no-attributes-text": "未找到属性", - "no-telemetry-text": "未找到遥测数据", - "copy-key": "复制键", - "add-telemetry": "添加遥测数据", - "copy-value": "复制数值", - "delete-timeseries": { - "start-time": "开始时间", - "ends-on": "结束时间", - "strategy": "策略", - "delete-strategy": "删除策略", - "all-data": "删除所有数据", - "all-data-except-latest-value": "删除除最新值外的所有数据", - "latest-value": "删除最新值", - "all-data-for-time-period": "删除指定时间段的所有数据", - "rewrite-latest-value": "重写最新值" - } + "access": { + "unauthorized": "未授权", + "unauthorized-access": "未授权访问", + "unauthorized-access-text": "您需要登录才能访问此资源!", + "access-forbidden": "禁止访问", + "access-forbidden-text": "您没有权限访问此位置!
如果您仍希望访问此位置,请尝试使用其他用户登录。", + "refresh-token-expired": "会话已过期", + "refresh-token-failed": "无法刷新会话", + "permission-denied": "权限被拒绝", + "permission-denied-text": "您没有权限执行此操作!" + }, + "account": { + "account": "账户", + "notification-settings": "通知设置" + }, + "action": { + "activate": "激活", + "suspend": "停用", + "save": "保存", + "saveAs": "另存为", + "move": "移动", + "cancel": "取消", + "ok": "确定", + "delete": "删除", + "add": "添加", + "yes": "是", + "no": "否", + "update": "更新", + "remove": "移除", + "search": "搜索", + "clear-search": "清除搜索", + "assign": "分配", + "unassign": "取消分配", + "share": "共享", + "make-private": "设为私有", + "apply": "应用", + "apply-changes": "应用更改", + "edit-mode": "编辑模式", + "enter-edit-mode": "进入编辑模式", + "decline-changes": "放弃更改", + "decline": "拒绝", + "close": "关闭", + "back": "返回", + "run": "运行", + "sign-in": "登录!", + "edit": "编辑", + "view": "查看", + "create": "创建", + "drag": "拖拽", + "refresh": "刷新", + "undo": "撤销", + "copy": "复制", + "paste": "粘贴", + "copy-reference": "复制引用", + "paste-reference": "粘贴引用", + "import": "导入", + "export": "导出", + "share-via": "通过 {{provider}} 共享", + "select": "选择", + "continue": "继续", + "discard-changes": "放弃更改", + "download": "下载", + "next": "下一步", + "next-with-label": "下一步:{{label}}", + "read-more": "阅读更多", + "hide": "隐藏", + "test": "测试", + "done": "完成", + "print": "打印", + "restore": "恢复", + "confirm": "确认", + "more": "更多", + "less": "收起", + "skip": "跳过", + "send": "发送", + "reset": "重置", + "show-more": "显示更多", + "dont-show-again": "不再显示", + "see-documentation": "查看文档", + "clear": "清除", + "upload": "上传", + "delete-anyway": "仍然删除", + "delete-selected": "删除所选", + "set": "设置" + }, + "aggregation": { + "aggregation": "聚合", + "function": "数据聚合函数", + "limit": "最大值数量", + "group-interval": "分组间隔", + "min": "最小值", + "max": "最大值", + "avg": "平均值", + "sum": "总和", + "count": "计数", + "none": "无" + }, + "admin": { + "settings": "设置", + "general": "常规", + "general-settings": "常规设置", + "home-settings": "首页设置", + "home": "首页", + "outgoing-mail": "邮件服务器", + "outgoing-mail-settings": "发件邮件服务器设置", + "system-settings": "系统设置", + "test-mail-sent": "测试邮件发送成功!", + "base-url": "基础 URL", + "base-url-required": "基础 URL 为必填项。", + "prohibit-different-url": "禁止使用来自客户端请求头的主机名", + "prohibit-different-url-hint": "此设置应在生产环境中启用。禁用时可能导致安全问题", + "device-connectivity": { + "device-connectivity": "设备连接", + "http-s": "HTTP(s)", + "mqtt-s": "MQTT(s)", + "coap-s": "COAP(s)", + "http": "HTTP", + "https": "HTTPs", + "mqtt": "MQTT", + "mqtts": "MQTTs", + "coap": "COAP", + "coaps": "COAPs", + "hint": "如果主机或端口字段为空,将使用默认协议值。", + "host": "主机", + "port": "端口", + "port-pattern": "端口必须为正整数。", + "port-range": "端口应在 1 到 65535 的范围内。" }, - "api-usage": { - "api-features": "Api统计", - "api-usage": "Api 使用统计", - "alarm": "告警", - "alarms-created": "创建告警数", - "queue-stats": "队列统计信息", - "processing-failures-and-timeouts": "处理失败和超时", - "exceptions": "异常", - "alarms-created-daily-activity": "每天产生的告警", - "alarms-created-hourly-activity": "每小时产生的告警", - "alarms-created-monthly-activity": "每月产生的告警", - "data-points": "数据点", - "data-points-storage-days": "存储点天", - "device-api": "设备 API", - "email": "邮件", - "email-messages": "邮件消息", - "email-messages-daily-activity": "每天产生的邮件消息", - "email-messages-monthly-activity": "每月产生的邮件消息", - "executions": "执行数", - "scripts": "脚本", - "scripts-hourly-activity": "脚本每小时活动", - "scripts-daily-activity": "脚本每日活动", - "scripts-monthly-activity": "脚本每月活动", - "javascript": "JavaScript", - "javascript-executions": "JavaScript执行数", - "tbel": "TBEL", - "tbel-executions": "TBEL执行数", - "latest-error": "最新错误", - "messages": "消息", - "notifications": "通知", - "notifications-email-sms": "通知(Email/SMS)", - "notifications-hourly-activity": "每小时的通知", - "permanent-failures": "${entityName}永久性故障", - "permanent-timeouts": "${entityName}永久超时", - "processing-failures": "${entityName}处理失败", - "processing-timeouts": "${entityName}处理超时", - "rule-chain": "规则链", - "rule-engine": "规则引擎", - "rule-engine-daily-activity": "每天的规则引擎活动", - "rule-engine-executions": "规则引擎执行", - "rule-engine-hourly-activity": "每小时的规则引擎活动", - "rule-engine-monthly-activity": "每月的规则引擎活动", - "rule-engine-statistics": "规则引擎统计信息", - "rule-node": "规则节点", - "sms": "短信", - "sms-messages": "短信消息", - "sms-messages-daily-activity": "每天的短信息", - "sms-messages-monthly-activity": "每小时的短信息", - "successful": "${entityName} 成功", - "telemetry": "遥测数据", - "telemetry-persistence": "遥测持久化", - "telemetry-persistence-daily-activity": "每天的遥测持久化", - "telemetry-persistence-hourly-activity": "每小时的遥测持久化", - "telemetry-persistence-monthly-activity": "每月的遥测持久化", - "transport": "传输", - "transport-daily-activity": "每天传输数据量", - "transport-data-points": "传输数据点", - "transport-hourly-activity": "每小时传输数据量", - "transport-messages": "传输消息", - "transport-monthly-activity": "每月传输数据量", - "view-details": "查看详细信息", - "view-statistics": "查看统计信息" - }, - "api-limit": { - "cassandra-queries": "Cassandra查询", - "entity-version-creation": "实体版本创建", - "entity-version-load": "实体版本加载", - "notification-requests": "通知请求", - "notification-requests-per-rule": "每个规则的通知请求", - "rest-api-requests": "REST API请求次数", - "rest-api-requests-per-customer": "每个客户的REST API请求", - "transport-messages": "传输消息次数", - "transport-messages-per-device": "每个设备的传输消息", - "transport-messages-per-gateway": "每个网关的传输消息", - "transport-messages-per-gateway-device": "每个网关设备传输消息", - "ws-updates-per-session": "每个会话的WS更新", - "edge-events": "Edge事件", - "edge-events-per-edge": "Edge事件", - "edge-uplink-messages": "Edge上行", - "edge-uplink-messages-per-edge": "Edge下行" - }, - "audit-log": { - "audit": "审计", - "audit-logs": "审计日志", - "timestamp": "时间戳", - "entity-type": "实体类型", - "entity-name": "实体名称", - "user": "用户", - "type": "类型", - "status": "状态", - "details": "详情", - "type-added": "添加", - "type-deleted": "删除", - "type-updated": "更新", - "type-attributes-updated": "更新属性", - "type-attributes-deleted": "删除属性", - "type-rpc-call": "RPC调用", - "type-credentials-updated": "更新凭据", - "type-assigned-to-customer": "分配给客户", - "type-unassigned-from-customer": "未分配给客户", - "type-assigned-to-edge": "分配给边缘", - "type-unassigned-from-edge": "未分配给边缘", - "type-activated": "激活", - "type-suspended": "暂停", - "type-credentials-read": "读取凭据", - "type-attributes-read": "读取属性", - "type-relation-add-or-update": "关联已更新", - "type-relation-delete": "关联已删除", - "type-relations-delete": "删除所有关联", - "type-alarm-ack": "已确认", - "type-alarm-clear": "已清除", - "type-alarm-delete": "Alarm deleted", - "type-alarm-assign": "已分配", - "type-alarm-unassign": "未分配", - "type-added-comment": "添加评论", - "type-updated-comment": "更新评论", - "type-deleted-comment": "删除评论", - "type-login": "登录", - "type-logout": "注销", - "type-lockout": "锁定", - "status-success": "成功", - "status-failure": "失败", - "audit-log-details": "审计日志详情", - "no-audit-logs-prompt": "未找到日志", - "action-data": "活动数据", - "failure-details": "失败详情", - "search": "查找审计日志", - "clear-search": "清空查找", - "type-assigned-from-tenant": "从租户分配", - "type-assigned-to-tenant": "分配给租户", - "type-provision-success": "设备已预配置", - "type-provision-failure": "设备预配置失败", - "type-timeseries-updated": "遥测数据已更新", - "type-timeseries-deleted": "遥测数据已删除", - "type-sms-sent": "短信发送" - }, - "debug-settings": { - "label": "调试配置", - "on-failure": "仅失败(24/7)", - "all-messages": "所有消息({{time}})", - "failures": "失败", - "entity": "实体", - "rule-node": "规则节点", - "hint": { - "main": "所有节点调试消息将被限速,限制为:", - "main-limited": "所有{{entity}}的调试消息将受到速率限制,每{{time}}允许最多{{msg}}条消息。", - "on-failure": "保存所有失败调试事件,无时间限制。", - "all-messages": "在时间限制内保存所有调试事件。" - } + "mail-from": "发件人", + "mail-from-required": "发件人为必填项。", + "smtp-protocol": "SMTP 协议", + "smtp-host": "SMTP 主机", + "smtp-host-required": "SMTP 主机为必填项。", + "smtp-port": "SMTP 端口", + "smtp-port-required": "SMTP 端口为必填项。", + "smtp-port-invalid": "SMTP 端口格式无效。", + "timeout-msec": "超时(毫秒)", + "timeout-required": "超时为必填项。", + "timeout-invalid": "超时格式无效。", + "enable-tls": "启用 TLS", + "tls-version": "TLS 版本", + "enable-proxy": "启用代理", + "proxy-host": "代理主机", + "proxy-host-required": "代理主机为必填项。", + "proxy-port": "代理端口", + "proxy-port-required": "代理端口为必填项。", + "proxy-port-range": "代理端口应在 1 到 65535 的范围内。", + "proxy-user": "代理用户", + "proxy-password": "代理密码", + "change-password": "修改密码", + "send-test-mail": "发送测试邮件", + "sms-provider": "短信提供商", + "sms-provider-settings": "短信提供商设置", + "sms-provider-type": "短信提供商类型", + "sms-provider-type-required": "短信提供商类型为必填项。", + "sms-provider-type-aws-sns": "Amazon SNS", + "sms-provider-type-twilio": "Twilio", + "sms-provider-type-smpp": "SMPP", + "aws-access-key-id": "AWS Access Key ID", + "aws-access-key-id-required": "AWS Access Key ID 为必填项", + "aws-secret-access-key": "AWS Secret Access Key", + "aws-secret-access-key-required": "AWS Secret Access Key 为必填项", + "aws-region": "AWS Region", + "aws-region-required": "AWS Region 为必填项", + "number-from": "发送方电话号码", + "number-from-required": "发送方电话号码为必填项。", + "number-to": "接收方电话号码", + "number-to-required": "接收方电话号码为必填项。", + "phone-number-hint": "电话号码需使用 E.164 格式,例如 +19995550123", + "phone-number-hint-twilio": "电话号码需使用 E.164 格式/Phone Number's SID/Messaging Service SID,例如 +19995550123/PNXXX/MGXXX", + "phone-number-pattern": "电话号码无效。应使用 E.164 格式,例如 +19995550123。", + "phone-number-pattern-twilio": "电话号码无效。应使用 E.164 格式/Phone Number's SID/Messaging Service SID,例如 +19995550123/PNXXX/MGXXX。", + "sms-message": "短信消息", + "sms-message-required": "短信消息为必填项。", + "sms-message-max-length": "短信消息不能超过 1600 个字符", + "twilio-account-sid": "Twilio Account SID", + "twilio-account-sid-required": "Twilio Account SID 为必填项", + "twilio-account-token": "Twilio Account Token", + "twilio-account-token-required": "Twilio Account Token 为必填项", + "send-test-sms": "发送测试短信", + "test-sms-sent": "测试短信发送成功!", + "security-settings": "安全设置", + "password-policy": "密码策略", + "minimum-password-length": "最小密码长度", + "minimum-password-length-required": "最小密码长度为必填项", + "minimum-password-length-range": "最小密码长度应在 6 到 50 的范围内", + "maximum-password-length": "最大密码长度", + "maximum-password-length-min": "最大密码长度至少为 6", + "maximum-password-length-less-min": "最大密码长度应大于最小长度", + "minimum-uppercase-letters": "最少大写字母数量", + "minimum-uppercase-letters-range": "最少大写字母数量不能为负数", + "minimum-lowercase-letters": "最少小写字母数量", + "minimum-lowercase-letters-range": "最少小写字母数量不能为负数", + "minimum-digits": "最少数字数量", + "minimum-digits-range": "最少数字数量不能为负数", + "minimum-special-characters": "最少特殊字符数量", + "minimum-special-characters-range": "最少特殊字符数量不能为负数", + "password-expiration-period-days": "密码过期周期(天)", + "password-expiration-period-days-range": "密码过期周期(天)不能为负数", + "password-reuse-frequency-days": "密码重用频率(天)", + "password-reuse-frequency-days-range": "密码重用频率(天)不能为负数", + "allow-whitespace": "允许空格", + "force-reset-password-if-no-valid": "密码无效时强制重置", + "force-reset-password-if-no-valid-hint": "启用此功能时请谨慎:这将要求密码无效的用户通过 email 重置密码。", + "general-policy": "通用策略", + "max-failed-login-attempts": "账户锁定前允许的最大登录失败次数", + "minimum-max-failed-login-attempts-range": "最大登录失败次数不能为负数", + "user-lockout-notification-email": "用户账户锁定时,发送通知到 email", + "user-activation-token-ttl": "用户激活链接 TTL(小时)", + "user-activation-token-ttl-range": "用户激活链接 TTL 必须在 1 到 24 小时范围内", + "password-reset-token-ttl": "密码重置链接 TTL(小时)", + "password-reset-token-ttl-range": "密码重置链接 TTL 必须在 1 到 24 小时范围内", + "mobile-secret-key-length": "移动端密钥长度", + "mobile-secret-key-length-range": "移动端密钥长度必须为正数", + "domain-name": "域名", + "domain-name-unique": "域名和协议需要唯一。", + "domain-name-max-length": "域名应少于 256 个字符", + "error-verification-url": "域名不应包含符号“/”和“:”。例如:thingsboard.io", + "connection-settings": "连接设置", + "oauth2": { + "access-token-uri": "Access token URI", + "access-token-uri-required": "Access token URI 为必填项。", + "activate-user": "激活用户", + "add-domain": "添加域名", + "delete-domain": "删除域名", + "add-provider": "添加提供商", + "delete-provider": "删除提供商", + "allow-user-creation": "允许创建用户", + "always-fullscreen": "始终全屏", + "authorization-uri": "Authorization URI", + "authorization-uri-required": "Authorization URI 为必填项。", + "add-client": "添加 OAuth 2.0 客户端", + "client-details": "OAuth 2.0 客户端详情", + "client": "OAuth 2.0 客户端", + "clients": "OAuth 2.0 客户端", + "no-oauth2-clients": "未找到 OAuth 2.0 客户端", + "search-oauth2-clients": "搜索 OAuth 2.0 客户端", + "delete-client-title": "确定要删除 OAuth 2.0 客户端“{{clientName}}”吗?", + "delete-client-text": "请注意,确认后该客户端及所有相关数据将无法恢复。", + "delete-mobile-app-title": "确定要删除移动应用“{{applicationName}}”吗?", + "delete-mobile-app-text": "请注意,确认后该移动应用及所有相关数据将无法恢复。", + "title": "标题", + "client-title-required": "标题为必填项", + "client-title-max-length": "标题应少于 100 个字符", + "advanced-settings": "高级设置", + "domain-details": "域名详情", + "no-domains": "未找到域名", + "search-domains": "搜索域名", + "mobile-app-details": "移动应用详情", + "add-mobile-app": "添加移动应用", + "no-mobile-apps": "未找到移动应用", + "search-mobile-apps": "搜索移动应用", + "send-token": "发送 Token", + "create-new": "新建", + "client-authentication-method": "客户端认证方法", + "client-id": "Client ID", + "client-id-required": "Client ID 为必填项。", + "client-id-max-length": "Client ID 应少于 256 个字符", + "client-secret": "Client secret", + "client-secret-required": "Client secret 为必填项。", + "client-secret-max-length": "Client secret 应少于 2049 个字符", + "custom-setting": "自定义设置", + "customer-name-pattern": "客户名称模式", + "customer-name-pattern-max-length": "客户名称模式应少于 256 个字符", + "default-dashboard-name": "默认仪表板名称", + "default-dashboard-name-max-length": "默认仪表板名称应少于 256 个字符", + "delete-domain-text": "请注意,确认后该域名及所有提供商数据将不可用。", + "delete-domain-title": "确定要删除域名“{{domainName}}”吗?", + "delete-registration-text": "请注意,确认后提供商数据将不可用。", + "delete-registration-title": "确定要删除提供商“{{name}}”吗?", + "email-attribute-key": "Email 属性键", + "email-attribute-key-required": "Email 属性键为必填项。", + "email-attribute-key-max-length": "Email 属性键应少于 32 个字符", + "first-name-attribute-key": "名字属性键", + "first-name-attribute-key-max-length": "名字属性键应少于 32 个字符", + "general": "常规", + "jwk-set-uri": "JSON Web Key URI", + "last-name-attribute-key": "姓氏属性键", + "last-name-attribute-key-max-length": "姓氏属性键应少于 32 个字符", + "login-button-icon": "登录按钮图标", + "login-button-label": "提供商标签", + "login-button-label-placeholder": "Login with $(Provider label)", + "login-button-label-required": "标签为必填项。", + "login-provider": "登录提供商", + "mapper": "映射器", + "new-domain": "新域名", + "oauth2": "OAuth 2.0", + "password-max-length": "密码应少于 256 个字符", + "redirect-uri-template": "Redirect URI 模板", + "copy-redirect-uri": "复制 Redirect URI", + "registration-id": "注册 ID", + "registration-id-required": "注册 ID 为必填项。", + "registration-id-unique": "注册 ID 在系统中必须唯一。", + "scope": "Scope", + "scope-required": "Scope 为必填项。", + "tenant-name-pattern": "租户名称模式", + "tenant-name-pattern-required": "租户名称模式为必填项。", + "tenant-name-pattern-max-length": "租户名称模式应少于 256 个字符", + "tenant-name-strategy": "租户名称策略", + "type": "映射器类型", + "uri-pattern-error": "URI 格式无效。", + "url": "URL", + "url-pattern": "URL 格式无效。", + "url-required": "URL 为必填项。", + "url-max-length": "URL 应少于 256 个字符", + "user-info-uri": "User info URI", + "user-info-uri-required": "User info URI 为必填项。", + "username-max-length": "用户名应少于 256 个字符", + "user-name-attribute-name": "用户名属性键", + "user-name-attribute-name-required": "用户名属性键为必填项", + "protocol": "协议", + "domain-schema-http": "HTTP", + "domain-schema-https": "HTTPS", + "domain-schema-mixed": "HTTP+HTTPS", + "enable": "启用 OAuth 2.0 设置", + "disable": "禁用 OAuth 2.0 设置", + "edge": "传播到 Edge", + "edge-enable": "启用传播到 Edge", + "edge-disable": "禁用传播到 Edge", + "domains": "域名", + "mobile-apps": "移动应用", + "mobile-package": "应用包", + "mobile-package-placeholder": "例如:my.example.app", + "mobile-package-hint": "Android:您自己的唯一 Application ID。iOS:Product bundle identifier。", + "mobile-package-unique": "应用包必须唯一。", + "mobile-package-required": "应用包为必填项。", + "mobile-package-max-length": "应用包应少于 256 个字符", + "mobile-package-spaces": "应用包不应包含空格", + "mobile-app-secret": "Application secret", + "mobile-app-secret-hint": "Base64 编码的字符串,至少表示 512 位数据。", + "mobile-app-secret-required": "Application secret 为必填项。", + "mobile-app-secret-min-length": "Application secret 必须至少为 512 位数据。", + "mobile-app-secret-base64": "Application secret 必须为 base64 格式。", + "invalid-mobile-app-secret": "Application secret 只能包含字母和数字字符,长度必须在 16 到 2048 个字符之间。", + "copy-mobile-app-secret": "复制 Application secret", + "delete-mobile-app": "删除应用信息", + "providers": "提供商", + "platform-web": "Web", + "platform-android": "Android", + "platform-ios": "iOS", + "all-platforms": "所有平台", + "smtp-provider": "SMTP 提供商", + "allowed-platforms": "允许的平台", + "authentication": "认证", + "basic": "基本", + "provider": "提供商", + "redirect-url": "Redirect URI", + "domain-name": "域名", + "domain-name-required": "域名为必填项", + "redirect-url-template": "Redirect URI 模板", + "microsoft-tenant-id": "Directory (tenant) Id", + "microsoft-tenant-id-required": "Directory (tenant) Id 为必填项", + "token-uri": "Token URI", + "token-uri-required": "Token URI 为必填项", + "redirect-uri": "Redirect URI", + "google-provider": "Google", + "microsoft-provider": "Office 365", + "sendgrid-provider": "Sendgrid", + "custom-provider": "自定义", + "generate-access-token": "生成访问 Token", + "update-access-token": "更新访问 Token", + "access-token-status": "访问 Token 状态:", + "token-status-generated": "已生成", + "token-status-not-generated": "未生成" }, - "confirm-on-exit": { - "message": "有未保存的更改,确定要离开此页吗?", - "html-message": "有未保存的更改。
确定要离开此页面吗?", - "title": "未保存的更改" - }, - "contact": { - "country": "国家", - "country-required": "国家必填。", - "city": "城市", - "state": "省份", - "postal-code": "邮政编码", - "postal-code-invalid": "只允许数字。", - "address": "地址", - "address2": "地址二", - "phone": "手机号码", - "email": "电子邮件", - "no-address": "无地址", - "no-country-found": "未找不到国家。", - "no-country-matching": "未匹配到'{{country}}'。", - "state-max-length": "省份长度应该小于256个字符", - "phone-max-length": "手机号码长度应该小于256个字符", - "city-max-length": "城市应该小于256个字符" - }, - "common": { - "username": "用户名", - "password": "密码", - "enter-username": "输入用户名", - "enter-password": "输入密码", - "enter-search": "输入检索条件", - "created-time": "创建时间", - "disabled": "已禁用", - "loading": "正在加载中...", - "proceed": "继续", - "open-details-page": "打开详情页", - "not-found": "未找到", - "documentation": "文档", - "time-left": "剩余{{time}}" - }, - "content-type": { - "json": "Json", - "text": "文本", - "binary": "二进制(Base64)" - }, - "customer": { - "customer": "客户", - "customers": "客户", - "management": "客户管理", - "dashboard": "客户仪表板", - "dashboards": "客户仪表板", - "devices": "客户设备", - "entity-views": "客户实体视图", - "assets": "客户资产", - "public-dashboards": "公共仪表板", - "public-devices": "公共设备", - "public-assets": "公共资产", - "public-edges": "公共边缘", - "public-entity-views": "公共实体视图", - "add": "添加客户", - "delete": "删除此客户", - "manage-customer-users": "管理客户用户", - "manage-customer-devices": "管理客户设备", - "manage-customer-dashboards": "管理客户仪表板", - "manage-public-devices": "管理公共设备", - "manage-public-dashboards": "管理公共仪表板", - "manage-customer-assets": "管理客户资产", - "manage-public-assets": "管理公共资产", - "manage-customer-edges": "管理客户边缘", - "manage-public-edges": "管理公共边缘", - "add-customer-text": "添加客户", - "no-customers-text": "未找到客户", - "customer-details": "客户详情", - "delete-customer-title": "确定要删除客户'{{customerTitle}}'吗?", - "delete-customer-text": "请注意:确认后,客户及其所有相关数据将不可恢复。", - "delete-customers-title": "确定要删除 { count, plural, =1 {1 个客户} other {# 个客户} }吗?", - "delete-customers-action-title": "删除 { count, plural, =1 {1 个客户} other {# 个客户} }", - "delete-customers-text": "请注意:确认后,所有选定的客户将被删除,所有相关数据将不可恢复。", - "manage-users": "管理用户", - "manage-assets": "管理资产", - "manage-devices": "管理设备", - "manage-dashboards": "管理仪表板", - "title": "标题", - "title-required": "标题必填。", - "title-max-length": "标题应该小于256个字符", - "description": "说明", - "details": "详情", - "events": "事件", - "copyId": "复制客户ID", - "idCopiedMessage": "客户ID已复制到粘贴板", - "select-customer": "选择客户", - "no-customers-matching": "未找到匹配'{{entity}}'的客户。", - "customer-required": "客户必填", - "select-default-customer": "选择默认的客户", - "default-customer": "默认客户", - "default-customer-required": "为了调试租户级别上的仪表板,需要默认客户。", - "search": "查找客户", - "selected-customers": "已选择 { count, plural, =1 {1 个客户} other {# 个客户} }", - "edges": "客户边缘实例", - "manage-edges": "管理边缘" - }, - "css-size": { - "size-value-required": "尺寸值必填。", - "invalid-size-value": "尺寸值无效" - }, - "date": { - "last-update-n-ago": "N分钟前的最后更新", - "last-update-n-ago-text": "最后更新{{ agoText }}", - "custom-date": "自定义日期", - "format": "格式", - "preview": "预览", - "auto": "自动", - "time-granularity-formats": "时间格式", - "unit-year": "年", - "unit-month": "月", - "unit-day": "日", - "unit-hour": "时", - "unit-minute": "分", - "unit-second": "秒", - "unit-millisecond": "毫秒" - }, - "datetime": { - "date-from": "开始日期", - "time-from": "开始时间", - "date-to": "结束日期", - "time-to": "结束时间", - "from": "从", - "to": "到" - }, - "dashboard": { - "dashboard": "仪表板", - "dashboards": "仪表板", - "management": "仪表板管理", - "view-dashboards": "查看仪表板", - "add": "添加仪表板", - "assign-dashboard-to-customer": "将仪表板分配给客户", - "assign-dashboard-to-customer-text": "请选择要分配给客户的仪表板", - "assign-dashboard-to-edge-title": "将仪表板分配给边缘", - "assign-to-customer-text": "请选择客户分配仪表板", - "assign-to-customer": "分配给客户", - "unassign-from-customer": "取消分配客户", - "make-public": "仪表板设为公开", - "make-private": "仪表板设为私有", - "manage-assigned-customers": "管理已分配的客户", - "assigned-customers": "已分配的客户", - "assign-to-customers": "将仪表板分配给客户", - "assign-to-customers-text": "请选择客户指定仪表板", - "unassign-from-customers": "客户未分配仪表板", - "unassign-from-customers-text": "请选择从仪表板中取消分配的客户", - "no-dashboards-text": "未找到仪表板", - "no-widgets": "没有配置部件", - "add-widget": "添加部件", - "add-widget-button-text": "添加部件", - "title": "标题", - "image": "仪表板图片", - "mobile-app-settings": "移动端应用设置", - "mobile-order": "移动端应用中的仪表板排序", - "mobile-hide": "在移动端应用中隐藏仪表板", - "update-image": "更新仪表板图片", - "take-screenshot": "截图", - "select-widget-title": "选择部件", - "select-widget-value": "{{title}}: 选择部件", - "select-widget-subtitle": "可用的部件类型列表", - "delete": "删除仪表板", - "title-required": "标题必填。", - "title-max-length": "标题应该小于256个字符。", - "description": "说明", - "details": "详情", - "dashboard-details": "仪表板详情", - "add-dashboard-text": "添加仪表板", - "assign-dashboards": "分配仪表板", - "assign-new-dashboard": "分配新的仪表板", - "assign-dashboards-text": "分配 { count, plural, =1 {1 个仪表板} other {# 个仪表板} } 给客户", - "unassign-dashboards-action-text": "取消分配 { count, plural, =1 {1 个仪表板} other {# 个仪表板} } 给客户", - "delete-dashboards": "删除仪表板", - "unassign-dashboards": "取消分配仪表板", - "unassign-dashboards-action-title": "取消分配此客户 { count, plural, =1 {1 个仪表板} other {# 个仪表板} }", - "delete-dashboard-title": "确定要删除仪表板 '{{dashboardTitle}}'吗?", - "delete-dashboard-text": "请注意:确认后,仪表板及其所有相关数据将不可恢复。", - "delete-dashboards-title": "确定要删除 { count, plural, =1 {1 个仪表板} other {# 个仪表板} }吗?", - "delete-dashboards-action-title": "删除 { count, plural, =1 {1 个仪表板} other {# 个仪表板} }", - "delete-dashboards-text": "请注意:确认后,所有选定的仪表板将被删除,所有相关数据将不可恢复。", - "unassign-dashboard-title": "确定要取消分配仪表板 '{{dashboardTitle}}'吗?", - "unassign-dashboard-text": "确认后,面板将被取消分配,客户将无法访问。", - "unassign-dashboard": "取消分配仪表板", - "unassign-dashboards-title": "确定要取消分配仪表板 { count, plural, =1 {1 个仪表板} other {# 个仪表板} } 吗?", - "unassign-dashboards-text": "确认后,所有选定的仪表板将被取消分配,客户将无法访问。", - "public-dashboard-title": "仪表板现已公开", - "public-dashboard-text": "仪表板 {{dashboardTitle}} 已被公开,可通过如下 链接访问:", - "public-dashboard-notice": "提示: 不要忘记将相关设备公开以访问其数据。", - "make-private-dashboard-title": "确定要将仪表板 '{{dashboardTitle}}' 设为私有吗?", - "make-private-dashboard-text": "确认后,仪表板将被设为私有,不能被其他人访问。", - "make-private-dashboard": "仪表板设为私有", - "socialshare-text": "'{{dashboardTitle}}' 由Thingsboard提供支持", - "socialshare-title": "'{{dashboardTitle}}' 由Thingsboard提供支持", - "select-dashboard": "选择仪表板", - "no-dashboards-matching": "未找到匹配 '{{entity}}' 的仪表板。", - "dashboard-required": "仪表板必填。", - "select-existing": "选择现有仪表板", - "create-new": "创建仪表板", - "new-dashboard-title": "新仪表板标题", - "open-dashboard": "打开仪表板", - "set-background": "设置背景", - "background-color": "背景颜色", - "background-image": "背景图片", - "background-size-mode": "背景大小模式", - "no-image": "无图像选择", - "empty-image": "No image", - "drop-image": "拖拽图像或单击以选择要上传的文件。", - "maximum-upload-file-size": "最大上传文件大小: {{ size }}", - "cannot-upload-file": "无法上传文件", - "settings": "设置", - "move-all-widgets": "移动所有部件", - "move-by": "移动", - "cols": "列", - "rows": "行", - "layout": "布局", - "layout-type-default": "默认", - "layout-type-scada": "SCADA", - "layout-type-divider": "分隔线", - "layout-settings-type": "布局设置:{{ type }}", - "columns-count": "列数", - "columns-count-required": "需要列数。", - "min-columns-count-message": "只允许最少10列", - "max-columns-count-message": "只允许最多1000列", - "min-layout-width": "最小布局宽度", - "columns-suffix": "列", - "widgets-margins": "部件间边距", - "margin-required": "边距值必填。", - "min-margin-message": "最小边距值只允许为0。", - "max-margin-message": "仅允许50作为最大边距值。", - "horizontal-margin": "水平边距", - "horizontal-margin-required": "需要水平边距值。", - "min-horizontal-margin-message": "只允许0作为最小水平边距值。", - "max-horizontal-margin-message": "只允许50作为最大水平边距值。", - "vertical-margin": "垂直边距", - "vertical-margin-required": "需要垂直边距值。", - "min-vertical-margin-message": "只允许0作为最小垂直边距值。", - "max-vertical-margin-message": "只允许50作为最大垂直边距值。", - "apply-outer-margin": "为布局的两侧设置边距", - "autofill-height": "自动填充布局高度", - "mobile-layout": "移动端布局设置", - "mobile-row-height": "移动端行高距(px)", - "mobile-row-height-required": "移动端行高距必填。", - "min-mobile-row-height-message": "移动端行高距至少5px。", - "max-mobile-row-height-message": "移动端行高距最多200px。", - "row-height": "行高", - "row-height-required": "行高必填。", - "min-row-height-message": "仅允许5个像素作为最小行高值。", - "max-row-height-message": "仅允许200个像素作为最大行高值。", - "display-first-in-mobile-view": "优先在移动视图中显示", - "title-settings": "标题设置", - "display-title": "显示仪表板标题", - "title-color": "标题颜色", - "toolbar-settings": "工具栏设置", - "hide-toolbar": "隐藏工具栏", - "toolbar-always-open": "工具栏常驻", - "display-dashboards-selection": "显示仪表板选项", - "display-entities-selection": "显示实体选项", - "display-filters": "显示筛选器", - "display-dashboard-timewindow": "显示时间窗口", - "display-dashboard-export": "显示导出", - "display-update-dashboard-image": "显示更新仪表板图像", - "dashboard-logo-settings": "Logo设置", - "display-dashboard-logo": "在仪表板全屏模式下显示 Logo", - "dashboard-logo-image": "仪表板 Logo 图片", - "advanced-settings": "高级设置", - "dashboard-css": "仪表板样式", - "import": "导入仪表板", - "export": "导出仪表板", - "export-failed-error": "无法导出仪表板: {{error}}", - "export-prompt": "嵌入仪表板图像和资源", - "create-new-dashboard": "创建仪表板", - "dashboard-file": "仪表板文件", - "invalid-dashboard-file-error": "无法导入仪表板: 仪表板数据结构无效。", - "dashboard-import-missing-aliases-title": "配置导入仪表板使用的别名", - "create-new-widget": "创建部件", - "import-widget": "导入部件", - "widget-file": "部件文件", - "invalid-widget-file-error": "无法导入窗口部件: 窗口部件数据结构无效。", - "widget-import-missing-aliases-title": "配置导入的窗口部件使用的别名", - "open-toolbar": "显示工具栏", - "close-toolbar": "收起工具栏", - "configuration-error": "配置错误", - "alias-resolution-error-title": "仪表板别名配置错误", - "invalid-aliases-config": "无法找到与某些别名筛选器匹配的任何设备。
请联系您的管理员以解决此问题。", - "select-devices": "选择设备", - "assignedToCustomer": "分配给客户", - "assignedToCustomers": "分配给客户", - "public": "公开", - "copyId": "复制仪表板ID", - "idCopiedMessage": "仪表板ID已复制到剪贴板", - "public-link": "公共链接", - "copy-public-link": "复制公共链接", - "public-link-copied-message": "仪表板的公共链接已被复制到剪贴板", - "manage-states": "仪表板状态管理", - "states": "仪表板状态", - "states-short": "状态", - "search-states": "仪表板状态检索", - "selected-states": "已选择 { count, plural, =1 {1 个仪表板状态} other {# 个仪表板状态} }", - "edit-state": "仪表板状态编辑", - "delete-state": "删除仪表板状态", - "add-state": "添加仪表板状态", - "no-states-text": "未找到状态", - "state": "仪表板状态", - "state-name": "名称", - "state-name-required": "仪表板状态名必填。", - "state-id": "状态ID", - "state-id-required": "仪表板状态ID必填。", - "state-id-exists": "仪表板状态ID已经存在。", - "is-root-state": "根状态", - "delete-state-title": "删除仪表板状态", - "delete-state-text": "确定要删除仪表板状态 '{{stateName}}' 吗?", - "show-details": "显示详情", - "hide-details": "隐藏详情", - "select-state": "选择目标状态", - "state-controller": "状态控制", - "state-controller-default": "静态(已弃用)", - "search": "查找仪表板", - "selected-dashboards": "已选择 { count, plural, =1 {1 个仪表盘} other {# 个仪表盘} }", - "home-dashboard": "首页仪表板", - "home-dashboard-hide-toolbar": "隐藏首页仪表板工具栏", - "unassign-dashboard-from-edge-text": "确认后,所有选定的仪表板将被取消分配,边缘将无法访问。", - "unassign-dashboards-from-edge-title": "确定要取消分配仪表板 { count, plural, =1 {1 个仪表板} other {# 个仪表板} } 吗?", - "unassign-dashboards-from-edge-text": "确认后,所有选定的仪表板将被取消分配,边缘将无法访问。", - "assign-dashboard-to-edge": "将仪表板分配给边缘", - "assign-dashboard-to-edge-text": "请选择要分配给边缘的仪表板", - "non-existent-dashboard-state-error": "找不到ID为 '{{ stateId }}' 的仪表板状态。", - "edit-mode": "编辑模式", - "duplicate-state-action": "复制状态", - "breakpoint-value": "断点({{ value }})", - "breakpoints-id": { - "default": "默认", - "xs": "xs", - "sm": "sm", - "md": "md", - "lg": "lg", - "xl": "xl" - }, - "view-format-type-grid": "网格", - "view-format-type-list": "列表", - "view-format": "类型" - }, - "datakey": { - "settings": "设置", - "general": "常规", - "advanced": "高级", - "key": "键", - "label": "标签", - "color": "颜色", - "units": "单位符号", - "decimals": "小数位数", - "data-generation-func": "数据生成功能", - "use-data-post-processing-func": "使用数据后处理功能", - "configuration": "数据键配置", - "timeseries": "时间序列", - "attributes": "属性", - "entity-field": "实体字段", - "alarm": "告警字段", - "timeseries-required": "实体时间序列必填。", - "timeseries-or-attributes-required": "实体时间序列/属性必填。", - "alarm-fields-timeseries-or-attributes-required": "告警字段或实体时间序列/属性必填。", - "maximum-timeseries-or-attributes": "最多允许 { count, plural, =1 {1 个 timeseries/属性。} other {# 个 timeseries/属性。} }", - "alarm-fields-required": "告警字段必填。", - "function-types": "函数类型", - "function-type": "函数类型", - "function-types-required": "函数类型必填。", - "data-keys": "数据键", - "data-key": "数据键", - "data-keys-required": "数据键是必须的。", - "data-key-required": "数据键是必须的。", - "alarm-keys": "告警数据键", - "alarm-key": "告警数据键", - "alarm-key-functions": "告警数据键函数", - "alarm-key-function": "告警数据键函数", - "latest-keys": "最新值数据键", - "latest-key": "最新值数据键", - "latest-key-functions": "最新值数据键函数", - "latest-key-function": "最新值数据键函数", - "timeseries-keys": "时间序列数据键", - "timeseries-key": "时间序列数据键", - "timeseries-key-functions": "时间序列数据键函数", - "timeseries-key-function": "时间序列数据键函数", - "maximum-function-types": "最多允许 { count, plural, =1 {1 个函数类型} other {# 个函数类型} }", - "time-description": "当前值的时间戳;", - "value-description": "当前值;", - "prev-value-description": "上一次函数调用的结果;", - "time-prev-description": "上一个值的时间戳;", - "prev-orig-value-description": "先前的原始值;", - "aggregation": "聚合", - "aggregation-type-hint-common": "出于性能原因,聚合值的计算仅适用于固定的时间间隔,如“当前天”,“当前月”等,而不适用于滑动窗口间隔,例如“过去30分钟”或“过去24小时”。", - "aggregation-type-none-hint": "获取最新值。", - "aggregation-type-min-hint": "在所选时间窗口内找出数据点中的最小值。", - "aggregation-type-max-hint": "在所选时间窗口内找出数据点中的最大值。", - "aggregation-type-avg-hint": "在所选时间窗口内计算数据点的平均值。", - "aggregation-type-sum-hint": "在所选时间窗口内计算数据点所有值的总和。", - "aggregation-type-count-hint": "在所选时间窗口内计算数据点的总数。", - "delta-calculation": "增量计算", - "enable-delta-calculation": "启用增量计算", - "enable-delta-calculation-hint": "启用后将根据选定时间窗口和指定比较时段的聚合值计算数据键值。出于性能原因,增量计算仅适用于历史时间窗口,而不适用于实时值。例如,您可以计算昨天的能耗与前天的能耗之间的差值。", - "delta-calculation-result": "增量计算结果", - "delta-calculation-result-previous-value": "上个值", - "delta-calculation-result-delta-absolute": "绝对值", - "delta-calculation-result-delta-percent": "百分比", - "source": "来源", - "latest": "最新", - "latest-value": "最新值", - "delta": "增量", - "percent": "百分比", - "absolute": "绝对值" - }, - "datasource": { - "type": "数据源类型", - "name": "名称", - "label": "标签", - "add-datasource-prompt": "请添加数据源" - }, - "details": { - "details": "详情", - "edit-mode": "编辑模式", - "edit-json": "编辑JSON", - "toggle-edit-mode": "切换编辑模式" - }, - "device": { - "device": "设备", - "device-required": "设备必填", - "devices": "设备", - "management": "设备管理", - "view-devices": "查看设备", - "device-alias": "设备别名", - "device-type-max-length": "设备类型应该小于256个字符", - "aliases": "设备别名", - "no-alias-matching": "'{{alias}}' 未找到。", - "no-aliases-found": "未找到别名。", - "no-key-matching": "'{{key}}' 未找到。", - "no-keys-found": "未找到密钥。", - "create-new-alias": "创建别名", - "create-new-key": "创建键", - "duplicate-alias-error": "找到重复别名 '{{alias}}'。
设备别名必须是唯一的。", - "configure-alias": "配置 '{{alias}}' 别名", - "no-devices-matching": "未找到与 '{{entity}}' 匹配的设备。", - "alias": "别名", - "alias-required": "设备别名必填。", - "remove-alias": "删除设备别名", - "add-alias": "添加设备别名", - "name-starts-with": "名称前缀", - "help-text": "根据需要可以使用'%'进行匹配,例如:'%device_name_contains%','%device_name_ends','device_starts_with'。", - "device-list": "设备列表", - "use-device-name-filter": "使用筛选器", - "device-list-empty": "没有被选中的设备", - "device-name-filter-required": "设备名称筛选器必填。", - "device-name-filter-no-device-matched": "未找到以'{{device}}' 开头的设备。", - "add": "添加设备", - "assign-to-customer": "分配给客户", - "assign-device-to-customer": "将设备分配给客户", - "assign-device-to-customer-text": "请选择要分配给客户的设备", - "assign-device-to-edge-title": "将设备分配给边缘", - "assign-device-to-edge-text": "请选择要分配给边缘的设备", - "make-public": "公开", - "make-private": "私有", - "no-devices-text": "未找到设备", - "assign-to-customer-text": "请选择客户分配设备", - "device-details": "设备详细信息", - "add-device-text": "添加设备", - "credentials": "凭据", - "manage-credentials": "管理凭据", - "delete": "删除设备", - "assign-devices": "分配设备", - "assign-devices-text": "将 {count,plural,=1 {1 个设备} other {# 个设备} }分配给客户", - "delete-devices": "删除设备", - "unassign-from-customer": "取消分配客户", - "unassign-devices": "取消分配设备", - "unassign-devices-action-title": "取消分配此客户 {count,plural,=1 {1 个设备} other {# 个设备} }", - "unassign-device-from-edge-title": "确定要取消分配设备 '{{deviceName}}' 吗?", - "unassign-device-from-edge-text": "确认后,设备将被取消分配,边缘将无法访问。", - "unassign-devices-from-edge": "取消分配边缘", - "assign-new-device": "分配新设备", - "make-public-device-title": "确定要将设备 '{{deviceName}}' 设为公开吗?", - "make-public-device-text": "确认后,设备及其所有数据将被设为公开并可被其他人访问。", - "make-private-device-title": "确定要将设备 '{{deviceName}}' 设为私有吗?", - "make-private-device-text": "确认后,设备及其所有数据将被设为私有,不被其他人访问。", - "view-credentials": "查看凭据", - "delete-device-title": "确定要删除设备的{{deviceName}}吗?", - "delete-device-text": "请注意:确认后,设备及其所有相关数据将不可恢复。", - "delete-devices-title": "确定要删除{count,plural,=1 {1 个设备} other {# 个设备} } 吗?", - "delete-devices-action-title": "删除 {count,plural,=1 {1 个设备} other {# 个设备} }", - "delete-devices-text": "请注意:确认后,所有选定的设备将被删除,所有相关数据将不可恢复。", - "unassign-device-title": "确定要取消分配设备 '{{deviceName}}' 吗?", - "unassign-device-text": "确认后,设备将被取消分配,客户将无法访问。", - "unassign-device": "取消分配设备", - "unassign-devices-title": "确定要取消分配 {count,plural,=1 {1 个设备} other {# 个设备} } 吗?", - "unassign-devices-text": "确认后,所有选定的设备将被取消分配,并且客户将无法访问。", - "device-credentials": "设备凭据", - "loading-device-credentials": "加载设备凭据...", - "credentials-type": "凭据类型", - "access-token": "访问令牌", - "access-token-required": "访问令牌必填", - "access-token-invalid": "访问令牌长度必须为1到32个字符。", - "certificate-pem-format": "PEM 格式的证书", - "certificate-pem-format-required": "需要提供证书。", - "copy-access-token": "复制访问令牌", - "copy-certificate": "复制证书", - "copy-client-id": "复制客户端ID", - "copy-user-name": "复制用户名", - "copy-password": "复制密码", - "generate-client-id": "生成客户端ID", - "generate-user-name": "生成用户名", - "generate-password": "生成密码", - "generate-access-token": "生成访问令牌", - "lwm2m-security-config": { - "identity": "客户端身份", - "identity-required": "需要提供客户端身份。", - "identity-tooltip": "PSK 标识符是一个任意的 PSK 标识符,最多可以为 128 字节,如标准 [RFC7925] 中所述。", - "client-key": "客户端密钥", - "client-key-required": "需要提供客户端密钥。", - "client-key-tooltip-prk": "RPK 公钥或 ID 必须符合标准 [RFC7250] 并编码为 Base64 格式!", - "client-key-tooltip-psk": "PSK 密钥必须符合标准 [RFC4279],使用十六进制表示:32、64、128 个字符!", - "endpoint": "终端客户端名称", - "endpoint-required": "需要提供终端客户端名称。", - "client-public-key": "客户端公钥", - "client-public-key-hint": "如果客户端公钥为空,则将使用可信证书", - "client-public-key-tooltip": "X509 公钥必须采用 DER 编码的 X509v3 格式,并且仅支持 EC 算法,然后编码为 Base64 格式!", - "mode": "安全配置模式", - "client-tab": "客户端安全配置", - "client-certificate": "客户端证书", - "bootstrap-tab": "启动客户端", - "bootstrap-server": "启动服务器", - "lwm2m-server": "LwM2M服务器", - "client-publicKey-or-id": "客户端公钥或ID", - "client-publicKey-or-id-required": "客户端公钥或ID必填。", - "client-publicKey-or-id-tooltip-psk": "SK标识符是最多128字节,如标准[RFC7925]所述。", - "client-publicKey-or-id-tooltip-rpk": "RPK必须满足标准[RFC7250]而且编码为 Base64!", - "client-publicKey-or-id-tooltip-x509": "X509公钥必须是X509v3格式而且支持EC算法", - "client-secret-key": "客户端密钥", - "client-secret-key-required": "客户端密钥必填。", - "client-secret-key-tooltip-psk": "PSK键必须是[RFC4279]标准和HexDec格式: 32, 64, 128i字符!", - "client-secret-key-tooltip-prk": "RPK密钥必须是PKCS_8格式(DER编码, 标准[RFC5958]) 并编码为Base64!", - "client-secret-key-tooltip-x509": "X509密钥必须是PKCS_8格式(DER编码, 标准[RFC5958])!" - }, - "client-id": "客户端ID", - "client-id-pattern": "包含无效字符。", - "user-name": "用户名", - "user-name-required": "用户名必填。", - "client-id-or-user-name-necessary": "客户端ID或用户名是必需的", - "password": "密码", - "secret": "密钥", - "secret-required": "密钥必填", - "device-type": "设备类型", - "device-type-required": "设备类型必填。", - "select-device-type": "选择设备类型", - "enter-device-type": "输入设备类型", - "any-device": "任意设备", - "no-device-types-matching": "未找到匹配 '{{entitySubtype}}' 的设备类型。", - "device-type-list-empty": "未选择设备类型", - "device-profile-type-list-empty": "至少应选择一个设备配置。", - "device-types": "设备类型", - "name": "名称", - "name-required": "名称必填。", - "name-max-length": "名称应该小于256个字符。", - "label-max-length": "标签应该小于256个字符。", - "description": "说明", - "label": "标签", - "events": "事件", - "details": "详情", - "copyId": "复制设备ID", - "copyAccessToken": "复制访问令牌", - "copy-mqtt-authentication": "复制MQTT凭据", - "idCopiedMessage": "设备ID已复制到剪贴板", - "accessTokenCopiedMessage": "设备访问令牌已复制到剪贴板", - "mqtt-authentication-copied-message": "设备MQTT身份验证已复制到剪贴板", - "assignedToCustomer": "分配给客户", - "unable-delete-device-alias-title": "无法删除设备别名", - "unable-delete-device-alias-text": "设备别名 '{{deviceAlias}}' 不能够被删除,因为它被下列部件所使用:
{{widgetsList}}", - "is-gateway": "是否网关", - "overwrite-activity-time": "覆盖已连接设备的活动时间", - "device-filter": "设备筛选器", - "device-filter-title": "设备筛选器", - "filter-title": "筛选器", - "device-state": "设备状态", - "state": "状态", - "any": "所有", - "active": "活动", - "inactive": "非活动", - "public": "公开", - "device-public": "设备公开", - "select-device": "选择设备", - "import": "导入设备", - "device-file": "设备文件", - "search": "查找设备", - "selected-devices": "已选择 { count, plural, =1 {1 个设备} other {# 个设备} }", - "device-configuration": "设备配置", - "transport-configuration": "传输配置", - "wizard": { - "device-details": "设备详细信息" - }, - "unassign-devices-from-edge-title": "确定要取消分配 { count, plural, =1 {1 个设备} other {# 个设备} } 吗?", - "unassign-devices-from-edge-text": "确认后,设备将被取消分配,边缘将无法访问。", - "time": "时间", - "connectivity": { - "check-connectivity": "检查连通性", - "device-created-check-connectivity": "设备已创建,检查连通性!", - "loading-check-connectivity-command": "正在加载检查连通性命令...", - "use-following-instructions": "请使用以下说明代表设备发送遥测数据", - "execute-following-command": "执行以下命令", - "install-curl-windows": "从 Windows 10 b17063 开始,cURL 已默认安装", - "install-curl-macos": "从 Mac OS X 10.2 6C115(Jaguar)开始,cURL 已默认安装", - "install-mqtt-windows": "使用说明下载、安装、设置和运行 mosquitto_pub", - "install-coap-client": "使用说明下载、安装、设置和运行 coap-client", - "install-necessary-client-tools": "安装必要的客户端工具", - "mqtts-x509-command": "使用以下文档通过 MQTT 连接带有 X509 授权的设备", - "coaps-x509-command": "使用以下文档通过基于 DTLS 的 CoAP 连接带有 X509 授权的设备", - "snmp-command": "使用以下文档通过 SNMP 连接设备。", - "sparkplug-command": "使用以下文档通过 MQTT Sparkplug 连接设备。", - "lwm2m-command": "使用以下文档通过 LWM2M 连接设备。" - } + "smpp-provider": { + "smpp-version": "SMPP 版本", + "smpp-host": "SMPP 主机", + "smpp-host-required": "SMPP 主机为必填项", + "smpp-port": "SMPP 端口", + "smpp-port-required": "SMPP 端口为必填项", + "system-id": "System ID", + "system-id-required": "System ID 为必填项", + "password": "密码", + "password-required": "密码为必填项", + "type-settings": "类型设置", + "source-settings": "源设置", + "destination-settings": "目标设置", + "additional-settings": "附加设置", + "system-type": "系统类型", + "bind-type": "绑定类型", + "service-type": "服务类型", + "source-address": "源地址", + "source-ton": "源 TON", + "source-npi": "源 NPI", + "destination-ton": "目标 TON(号码类型)", + "destination-npi": "目标 NPI(编号计划标识)", + "address-range": "地址范围", + "coding-scheme": "编码方案", + "bind-type-tx": "发送器", + "bind-type-rx": "接收器", + "bind-type-trx": "收发器", + "ton-unknown": "未知", + "ton-international": "国际", + "ton-national": "国内", + "ton-network-specific": "特定网络", + "ton-subscriber-number": "用户号码", + "ton-alphanumeric": "字母数字", + "ton-abbreviated": "缩写", + "npi-unknown": "0 - 未知", + "npi-isdn": "1 - ISDN/电话编号计划 (E163/E164)", + "npi-data-numbering-plan": "3 - 数据编号计划 (X.121)", + "npi-telex-numbering-plan": "4 - 电传编号计划 (F.69)", + "npi-land-mobile": "6 - 陆地移动 (E.212)", + "npi-national-numbering-plan": "8 - 国家编号计划", + "npi-private-numbering-plan": "9 - 专用编号计划", + "npi-ermes-numbering-plan": "10 - ERMES 编号计划 (ETSI DE/PS 3 01-3)", + "npi-internet": "13 - 互联网 (IP)", + "npi-wap-client-id": "18 - WAP Client Id(由 WAP Forum 定义)", + "scheme-smsc": "0 - SMSC 默认字母表(短代码和长代码为 ASCII,免费号码为 GSM)", + "scheme-ia5": "1 - IA5(短代码和长代码为 ASCII,免费号码为 Latin 9 (ISO-8859-9))", + "scheme-octet-unspecified-2": "2 - 未指定八位字节(8 位二进制)", + "scheme-latin-1": "3 - Latin 1 (ISO-8859-1)", + "scheme-octet-unspecified-4": "4 - 未指定八位字节(8 位二进制)", + "scheme-jis": "5 - JIS (X 0208-1990)", + "scheme-cyrillic": "6 - 西里尔文 (ISO-8859-5)", + "scheme-latin-hebrew": "7 - Latin/Hebrew (ISO-8859-8)", + "scheme-ucs-utf": "8 - UCS2/UTF-16 (ISO/IEC-10646)", + "scheme-pictogram-encoding": "9 - 象形文字编码", + "scheme-music-codes": "10 - 音乐代码 (ISO-2022-JP)", + "scheme-extended-kanji-jis": "13 - 扩展汉字 JIS (X 0212-1990)", + "scheme-korean-graphic-character-set": "14 - 韩文图形字符集 (KS C 5601/KS X 1001)" }, - "dynamic-form": { - "property": { - "properties": "属性", - "property": "属性", - "id": "ID", - "name": "名称", - "type": "类型", - "type-text": "文本", - "type-password": "密码", - "type-textarea": "文本区域", - "type-number": "数字", - "type-switch": "开关", - "type-select": "选择框", - "type-radios": "单选按钮", - "type-datetime": "日期/时间", - "type-image": "图片", - "type-javascript": "JavaScript", - "type-json": "JSON", - "type-html": "HTML", - "type-css": "CSS", - "type-markdown": "Markdown", - "type-color": "颜色", - "type-color-settings": "颜色设置", - "type-font": "字体", - "type-units": "单位", - "type-icon": "图标", - "type-fieldset": "字段集", - "type-array": "数组", - "type-html-section": "HTML区域", - "group-title": "分组标题", - "no-properties": "没有配置属性", - "add-property": "添加属性", - "property-settings": "属性设置", - "remove-property": "移除属性", - "default-value": "默认值", - "value-required": "值是必需的", - "number-settings": "数字设置", - "min": "最小值", - "max": "最大值", - "step": "步长", - "selected-options-limit": "选项限制", - "advanced-ui-settings": "高级UI设置", - "disable-on-property": "基于属性禁用", - "display-condition-function": "显示条件函数", - "sub-label": "子标签", - "vertical-divider-after": "垂直分隔符后", - "input-field-suffix": "输入框后缀", - "property-row-classes": "属性行类", - "property-field-classes": "属性字段类", - "not-unique-property-ids-error": "属性ID必须唯一!", - "enable-multiple-select": "启用多选", - "allow-empty-select-option": "允许空选项", - "select-options": "选择项", - "not-unique-select-option-value-error": "选择项值必须唯一!", - "value": "值", - "label": "标签", - "add-option": "添加选项", - "no-options": "没有配置选项", - "remove-option": "移除选项", - "textarea-rows": "文本区行数", - "help-id": "帮助ID", - "buttons-direction": "按钮方向", - "direction-row": "行", - "direction-column": "列", - "radio-button-options": "单选按钮选项", - "datetime-type": "日期/时间字段类型", - "datetime-type-date": "日期", - "datetime-type-time": "时间", - "datetime-type-datetime": "日期/时间", - "enable-clear-button": "启用清除按钮", - "html-section-settings": "HTML区域设置", - "html-section-classes": "HTML区域类", - "html-section-content": "HTML区域内容", - "array-item": "数组项", - "item-type": "项类型", - "item-name": "项名称", - "no-items": "没有项" - }, - "clear-form": "清除表单", - "clear-form-prompt": "确定要移除所有表单属性吗?", - "import-form": "从JSON导入表单", - "export-form": "导出表单为JSON", - "json-file": "JSON文件", - "json-content": "JSON内容", - "invalid-form-json-file-error": "无法从JSON导入表单:无效的表单JSON数据结构。" - }, - "asset-profile": { - "asset-profile": "资产配置", - "asset-profiles": "资产配置", - "all-asset-profiles": "全部", - "add": "添加资产配置", - "edit": "编辑资产配置", - "asset-profile-details": "资产配置详情", - "no-asset-profiles-text": "未找到资产配置", - "search": "搜索资产配置", - "selected-asset-profiles": "已选择 { count, plural, =1 {1 个资产配置} other {# 个资产配置} }", - "no-asset-profiles-matching": "未找到与 '{{entity}}' 匹配的资产配置。", - "asset-profile-required": "资产配置必填", - "idCopiedMessage": "资产配置ID已复制到剪贴板", - "set-default": "设为默认资产配置", - "delete": "删除资产配置", - "copyId": "复制资产配置ID", - "name-max-length": "名称长度必须小于256个字符", - "new-device-profile-name": "资产配置名称", - "new-device-profile-name-required": "资产配置名称必填。", - "name": "名称", - "name-required": "名称必填。", - "image": "资产配置图片", - "description": "说明", - "default": "默认", - "default-rule-chain": "默认规则链", - "default-edge-rule-chain": "默认边缘规则链", - "default-edge-rule-chain-hint": "作为规则链,用于在边缘上处理属于此资产配置中资产的传入数据。", - "mobile-dashboard": "移动端仪表板", - "mobile-dashboard-hint": "被移动端应用用作资产详情仪表板", - "select-queue-hint": "从下拉列表中选择。", - "delete-asset-profile-title": "确定要删除 '{{assetProfileName}}' 资产配置吗?", - "delete-asset-profile-text": "请注意:确认后,资产配置和所有相关数据将不可恢复。", - "delete-asset-profiles-title": "确定要删除 { count, plural, =1 {1 个资产配置} other {# 个资产配置} }吗?", - "delete-asset-profiles-text": "请注意:确认后,所有选定的资产配置将被删除,所有相关数据将不可恢复。", - "set-default-asset-profile-title": "确定要将 '{{assetProfileName}}' 设为默认资产配置吗?", - "set-default-asset-profile-text": "确认后,资产配置将被标记为默认,并将用于未指定配置的新资产。", - "no-asset-profiles-found": "未不到资产配置。", - "create-new-asset-profile": "创建资产配置", - "create-asset-profile": "创建资产配置", - "import": "导入资产配置", - "export": "导出资产配置", - "export-failed-error": "无法导出资产配置: {{error}}", - "asset-profile-file": "资产配置", - "invalid-asset-profile-file-error": "无法导入资产配置:无效的资产配置数据结构。" - }, - "device-profile": { - "device-profile": "设备配置", - "device-profiles": "设备配置", - "all-device-profiles": "全部", - "add": "添加设备配置", - "edit": "编辑设备配置", - "device-profile-details": "设备配置详情", - "no-device-profiles-text": "未找到设备配置", - "search": "查找设备配置", - "selected-device-profiles": "已选择 { count, plural, =1 {1 个设备配置} other {# 个设备配置} }", - "no-device-profiles-matching": "未找到与 '{{entity}}' 匹配的设备配置。", - "device-profile-required": "设备配置必填", - "idCopiedMessage": "设备配置 ID 已复制到剪贴板", - "set-default": "设为默认设备配置", - "delete": "删除设备配置", - "copyId": "复制设备配置 ID", - "name-max-length": "名称长度必须小于256个字符", - "name": "名称", - "name-required": "名称是必需的。", - "type": "配置类型", - "type-required": "配置类型必填。", - "type-default": "默认", - "image": "设备配置图片", - "transport-type": "传输方式", - "transport-type-required": "传输方式必填。", - "transport-type-default": "默认", - "transport-type-default-hint": "支持基本MQTT、HTTP和CoAP传输", - "transport-type-mqtt": "MQTT", - "transport-type-mqtt-hint": "启用高级MQTT传输设置", - "transport-type-coap": "CoAP", - "transport-type-coap-hint": "启用高级 CoAP 传输设置", - "transport-type-lwm2m": "LWM2M", - "transport-type-lwm2m-hint": "LWM2M传输类型", - "transport-type-snmp": "SNMP", - "transport-type-snmp-hint": "指定 SNMP 传输配置", - "transport-type-http": "HTTP", - "description": "说明", - "default": "默认", - "profile-configuration": "配置", - "transport-configuration": "传输配置", - "default-rule-chain": "默认规则链", - "default-edge-rule-chain": "默认边缘规则链", - "default-edge-rule-chain-hint": "作为规则链,用于在边缘上处理属于此设备配置中设备的传入数据。", - "mobile-dashboard": "移动端仪表板", - "mobile-dashboard-hint": "被移动端应用用作设备详情仪表板", - "select-queue-hint": "从下拉列表中选择或添加自定义名称。", - "delete-device-profile-title": "确定要删除'{{deviceProfileName}}'设备配置吗?", - "delete-device-profile-text": "请注意:确认后,设备配置和所有相关数据将不可恢复。", - "delete-device-profiles-title": "确定要删除 { count, plural, =1 {1 个设备配置} other {# 个设备配置} }吗?", - "delete-device-profiles-text": "请注意:确认后,所有选定的设备配置将被删除,所有相关数据将不可恢复。", - "set-default-device-profile-title": "确定要将设备配置'{{deviceProfileName}}'设为默认值吗?", - "set-default-device-profile-text": "确认后,设备配置将被标记为默认,并将用于未指定配置的新设备。", - "no-device-profiles-found": "未找到设备配置。", - "create-new-device-profile": "创建设备配置", - "mqtt-device-topic-filters": "MQTT设备主题筛选器", - "mqtt-device-topic-filters-unique": "MQTT设备主题筛选器必须唯一。", - "mqtt-device-topic-filters-spark-plug": "MQTT Sparkplug B边缘网络(EoN)节点", - "mqtt-device-topic-filters-spark-plug-hint": "允许来自具备Sparkplug B负载和主题格式的边缘网络(EoN)节点的连接。", - "mqtt-device-topic-filters-spark-plug-attribute-metric-names": "将SparkPlug指标存储为属性。", - "mqtt-device-topic-filters-spark-plug-attribute-metric-names-hint": "将作为设备属性存储的SparkPlug指标的名称。其他指标将作为设备遥测数据进行存储。", - "mqtt-device-payload-type": "MQTT设备Payload", - "mqtt-device-payload-type-json": "JSON", - "mqtt-device-payload-type-proto": "Protobuf", - "mqtt-enable-compatibility-with-json-payload-format": "启用与其他Payload格式兼容。", - "mqtt-enable-compatibility-with-json-payload-format-hint": "启用后平台将默认使用Protobuf的Payload格式,如果解析失败平台将尝试使用JSON的Payload格式。对于固件更新期间的向后兼容性很有用,例如固件的初始版本使用Json而新版本使用Protobuf在设备队列的固件更新过程中,需要同时支持Protobuf和JSON。兼容模式会导致一点的性能下降,因此建议在所有设备更新后禁用此模式。", - "mqtt-use-json-format-for-default-downlink-topics": "缺省下行主题采用Json格式", - "mqtt-use-json-format-for-default-downlink-topics-hint": "启用后平台将使用Json的Playload格式通过以下主题推送属性和RPC:v1/devices/me/attributes/response/$request_idv1/devices/me/attributes v1/devices/me/rpc/request/$request_idv1/devices/me/rpc/response/$request_id。此设置不会影响使用新(v2)主题发送的属性和rpc订阅:v2/a/res/$request_idv2/av2/r /req/$request_idv2/r/res/$request_id。其中$request_id是一个整数请求标识符。", - "mqtt-send-ack-on-validation-exception": "发布消息验证失败时发送PUBACK", - "mqtt-send-ack-on-validation-exception-hint": "默认情况下平台将关闭相关消息验证失败的MQTT会话,启用后平台将发布确认而不是关闭会话。", - "snmp-add-mapping": "添加SNMP映射", - "snmp-mapping-not-configured": "OID到时间序列/遥测的映射未配置", - "snmp-timseries-or-attribute-name": "用于映射的时间序列/属性名称", - "snmp-timseries-or-attribute-type": "用于映射的时间序列/属性类型", - "snmp-method-pdu-type-get-request": "GetRequest", - "snmp-method-pdu-type-get-next-request": "GetNextRequest", - "snmp-oid": "OID", - "transport-device-payload-type-json": "JSON", - "transport-device-payload-type-proto": "Protobuf", - "mqtt-payload-type-required": "Payload类型必填。", - "coap-device-type": "CoAP设备类型", - "coap-device-payload-type": "CoAP设备消息Payload", - "coap-device-type-required": "CoAP设备类型必填。", - "coap-device-type-default": "默认", - "coap-device-type-efento": "Efento NB-IoT", - "support-level-wildcards": "支持单[+]和多级[#]通配符。", - "telemetry-topic-filter": "遥测数据主题筛选器", - "telemetry-topic-filter-required": "遥测数据主题筛选器必填。", - "attributes-topic-filter": "属性主题筛选器", - "attributes-subscribe-topic-filter": "订阅属性的主题筛选器", - "attributes-topic-filter-required": "属性的主题筛选器必填。", - "attributes-subscribe-topic-filter-required": "订阅属性的主题筛选器必填。", - "telemetry-proto-schema": "遥测数据 Proto Schema", - "telemetry-proto-schema-required": "遥测数据 Proto Schema 必填。", - "attributes-proto-schema": "属性 Proto Schema", - "attributes-proto-schema-required": "属性 Proto Schema 必填。", - "rpc-response-proto-schema": "RPC 响应 Proto Schema", - "rpc-response-proto-schema-required": "RPC 响应 Proto Schema 必填。", - "rpc-response-topic-filter": "RPC响应主题筛选器", - "rpc-response-topic-filter-required": "RPC响应主题筛选器必填。", - "rpc-request-proto-schema": "RPC 请求 Proto Schema", - "rpc-request-proto-schema-required": "RPC 请求 Proto Schema 必填。", - "rpc-request-proto-schema-hint": "RPC 请求消息应始终包含字段:string method = 1; int32 requestId = 2; 和params = 3的任何数据类型。", - "not-valid-pattern-topic-filter": "无效的主题筛选器模式", - "not-valid-single-character": "单级通配符的使用无效", - "not-valid-multi-character": "多级通配符的使用无效", - "single-level-wildcards-hint": "[+] 适用于任何主题过滤级别。例如:v1/devices/+/telemetry or +/devices/+/attributes。", - "multi-level-wildcards-hint": "[#]可以替换主题筛选器本身,并且必须是主题的最后一个符号。例如:# or v1/devices/me/#。", - "alarm-rules": "告警规则", - "alarm-rules-with-count": "告警规则({{count}})", - "no-alarm-rules": "未配置告警规则", - "add-alarm-rule": "添加告警规则", - "edit-alarm-rule": "编辑告警规则", - "alarm-type": "告警类型", - "alarm-type-required": "告警类型必填。", - "alarm-type-unique": "警报类型在设备配置警报规则中必须唯一。", - "alarm-type-max-length": "告警类型应该小于256字符。", - "create-alarm-pattern": "创建 {{alarmType}} 告警", - "create-alarm-rules": "创建告警规则", - "no-create-alarm-rules": "未配置创建条件", - "add-create-alarm-rule-prompt": "请添加创建告警规则", - "clear-alarm-rule": "清除告警规则", - "no-clear-alarm-rule": "未配置明确条件", - "add-create-alarm-rule": "添加创建条件", - "add-clear-alarm-rule": "添加清除条件", - "select-alarm-severity": "选择告警严重性", - "alarm-severity-required": "告警严重级别必填。", - "condition-duration": "条件持续时间", - "condition-duration-value": "持续时间值", - "condition-duration-time-unit": "时间单位", - "condition-duration-value-range": "持续时间值应在1到2147483647之间。", - "condition-duration-value-pattern": "持续时间值应为整数。", - "condition-duration-value-required": "持续时间值必填。", - "condition-duration-time-unit-required": "时间单位必填。", - "advanced-settings": "高级设置", - "alarm-rule-additional-info": "附加信息", - "edit-alarm-rule-additional-info": "编辑附加信息", - "alarm-rule-additional-info-placeholder": "请在此处提供评论和调整,以便在附加信息下的告警详情中显示", - "alarm-rule-additional-info-hint": "提示: 使用${keyName}来替代告警规则条件中使用的属性或遥测键的值。", - "alarm-rule-mobile-dashboard": "移动端仪表板", - "alarm-rule-mobile-dashboard-hint": "作为移动端告警详情仪表板使用。", - "alarm-rule-no-mobile-dashboard": "未选择仪表板。", - "propagate-alarm": "传递警报", - "alarm-rule-relation-types-list": "要传递的关联类型", - "alarm-rule-relation-types-list-hint": "如果未选择传递关联类型,则将不按关联类型过滤而传递告警。", - "propagate-alarm-to-owner": "将告警传播给实体所有者(客户或租户)。", - "propagate-alarm-to-tenant": "将告警传播给租户", - "alarm-rule-condition": "告警规则条件", - "enter-alarm-rule-condition-prompt": "请添加告警规则条件", - "edit-alarm-rule-condition": "编辑告警规则条件", - "device-provisioning": "设备预配置", - "provision-strategy": "预配置策略", - "provision-strategy-required": "预配置策略必填。", - "provision-strategy-disabled": "禁用", - "provision-strategy-created-new": "允许创建设备", - "provision-strategy-check-pre-provisioned": "检查预配置的设备", - "provision-device-key": "预配置设备密钥名", - "provision-device-key-required": "预配置设备密钥名必填。", - "copy-provision-key": "复制预配置密钥名", - "provision-key-copied-message": "预配置密钥名已复制到剪贴板", - "provision-device-secret": "预配置设备密钥", - "provision-device-secret-required": "预配置设备密钥必填。", - "copy-provision-secret": "复制预配置密钥", - "provision-secret-copied-message": "预配置密钥已复制到剪贴板", - "provision-strategy-x509": { - "certificate-chain": "X509 证书链", - "certificate-chain-hint": "X.509 证书策略用于通过客户端证书在双向TLS通信中提供设备的方式。", - "allow-create-new-devices": "创建设备", - "allow-create-new-devices-hint": "如果选择创建设备,则将客户端证书用作设备凭据。", - "certificate-value": "PEM 格式的证书", - "certificate-value-required": "PEM 格式的证书必填。", - "cn-regex-variable": "CN 正则表达式变量", - "cn-regex-variable-required": "CN 正则表达式变量必填。", - "cn-regex-variable-hint": "需要从设备 X509 证书的通用名称中获取设备名称。" - }, - "condition": "条件", - "condition-type": "条件类型", - "condition-type-simple": "简单", - "condition-type-duration": "持续时间", - "condition-during": "在{{during}}期间", - "condition-during-dynamic": " \"{{ attribute }}\" ({{during}})期间", - "condition-type-repeating": "重复", - "condition-type-required": "条件类型必填。", - "condition-repeating-value": "事件计数", - "condition-repeating-value-range": "事件计数应在1到2147483647之间。", - "condition-repeating-value-pattern": "事件计数应为整数。", - "condition-repeating-value-required": "事件计数值必填。", - "condition-repeat-times": "重复 { count, plural, =1 {1 次} other {# 次} }", - "condition-repeat-times-dynamic": "重复 \"{ attribute }\" ({ count, plural, =1 {1 time} other {# times} })", - "schedule-type": "计划程序类型", - "schedule-type-required": "计划类型必填。", - "schedule": "启用规则:", - "edit-schedule": "编辑告警日程表", - "schedule-any-time": "始终启用", - "schedule-specific-time": "定时启用", - "schedule-custom": "自定义启用", - "schedule-day": { - "monday": "星期一", - "tuesday": "星期二", - "wednesday": "星期三", - "thursday": "星期四", - "friday": "星期五", - "saturday": "星期六", - "sunday": "星期日" - }, - "schedule-days": "天", - "schedule-time": "时间", - "schedule-time-from": "从", - "schedule-time-to": "到", - "schedule-days-of-week-required": "每周至少选择一天。", - "create-device-profile": "创建设备配置", - "import": "导入设备配置", - "export": "导出设备配置", - "export-failed-error": "无法导出设备配置: {{error}}", - "device-profile-file": "设备配置", - "invalid-device-profile-file-error": "无法导入设备配置:无效的设备配置数据结构。", - "power-saving-mode": "节能模式", - "power-saving-mode-type": { - "default": "使用设备配置的节能模式", - "psm": "节能模式(PSM)", - "drx": "非连续接收(DRX)", - "edrx": "连续接收(eDRX)" - }, - "edrx-cycle": "eDRX循环", - "edrx-cycle-required": "eDRX循环必填。", - "edrx-cycle-pattern": "eDRX循环必须是一个正整数。", - "edrx-cycle-min": "eDRX循环的最小值{{ min }}秒。", - "paging-transmission-window": "分页传输窗口", - "paging-transmission-window-required": "分页传输窗口必填。", - "paging-transmission-window-pattern": "分页传输窗口必须是正整数。", - "paging-transmission-window-min": "分页传输窗口的最小值{{ min }}秒。", - "psm-activity-timer": "PSM活动计时器", - "psm-activity-timer-required": "PSM活动计时器必填。", - "psm-activity-timer-pattern": "PSM活动计时器必须是正整数", - "psm-activity-timer-min": "PSM活动计时器的最小数量为{{ min }}秒。", - "lwm2m": { - "object-list": "Object列表", - "object-list-empty": "没有选择边object。", - "no-objects-found": "没有选择边object。", - "no-objects-matching": "没有找到匹配的object'{{object}}'。", - "model-tab": "LWM2M模式", - "add-new-instances": "添加新实例", - "instances-list": "实例列表", - "instances-list-required": "实例列表必填。", - "instance-id-pattern": "实例id必须是一个正整数。", - "instance-id-max": "实例id最大值是{{max}}", - "instance": "实例", - "resource-label": "#ID资源名称", - "observe-label": "观察者", - "attribute-label": "属性", - "telemetry-label": "遥测", - "edit-observe-select": "选择观察者编辑遥测或属性", - "edit-attributes-select": "选择要编辑的遥测或属性", - "no-attributes-set": "没有设置属性", - "key-name": "键名", - "key-name-required": "键名必填", - "attribute-name": "属性名称", - "attribute-name-required": "属性名称必填。", - "attribute-value": "属性值", - "attribute-value-required": "属性值必填。", - "attribute-value-pattern": "属性值必须是一个正整数。", - "edit-attributes": "编辑属性:{{ name }}", - "view-attributes": "查看属性:{{ name }}", - "add-attribute": "添加属性", - "edit-attribute": "编辑属性", - "view-attribute": "查看属性", - "remove-attribute": "移除属性", - "delete-server-text": "请注意,确认删除后,服务器配置将无法恢复。", - "delete-server-title": "确定要删除服务器吗?", - "mode": "安全配置模式", - "bootstrap-tab": "Bootstrap", - "bootstrap-server-legend": "Bootstrap服务...", - "lwm2m-server-legend": "LwM2M服务...", - "server": "服务器", - "short-id": "服务器ID", - "short-id-tooltip": "服务器ID用作关联服务器对象实例的链接。", - "short-id-tooltip-bootstrap": "服务器短ID用作关联服务器对象实例的链接,\n 该标识符唯一地标识了为LWM2M客户端配置的每个LWM2M服务器,\n 当Bootstrap-Server资源的值为‘false’时必须设置资源。", - "short-id-required": "服务器ID必填。", - "short-id-range": "服务器ID应在{{ min }}到{{ max }}范围内。", - "short-id-pattern": "服务器ID必须是一个正整数。", - "lifetime": "客户端注册生命周期", - "lifetime-required": "客户端注册生命周期必填。", - "lifetime-pattern": "客户端注册生命周期必须是一个正整数。", - "default-min-period": "最小期限", - "default-min-period-tooltip": "LWM2M客户端在观察中不包含此参数时使用的默认值。", - "default-min-period-required": "最小期限必填。", - "default-min-period-pattern": "最小期限必须是一个正整数。", - "notification-storing": "禁用或离线时通知存储", - "binding": "绑定", - "binding-type": { - "u": "U: 客户端通过UDP绑定。", - "m": "M: 客户端通过MQTT绑定。", - "h": "H: 客户端通过HTTP绑定。", - "t": "T: 客户端通过TCP绑定。", - "s": "S: 客户端通过SMS绑定。", - "n": "N: 客户端通过非IP绑定将响应发送到请求(支持LWM2M 1.1)。", - "uq": "UQ: 通过UDP队列模式连接(不支持LWM2M 1.1)。", - "uqs": "UQS: 通过UDP和SMS活动连接(不支持LWM2M 1.1)。", - "tq": "TQ: 通过TCP队列模式连接(不支持LWM2M 1.1)。", - "tqs": "TQS: 通过TCP和SMS活动连接(不支持LWM2M 1.1)。", - "sq": "SQ: 通过队列模式的SMS连接(不支持LWM2M 1.1)。" - }, - "binding-tooltip": "这是LwM2M服务器对象的绑定资源列表 - /1/x/7。", - "bootstrap-server": "Bootstrap Server", - "lwm2m-server": "LwM2M Server", - "include-bootstrap-server": "包含Bootstrap Server更新", - "bootstrap-update-title": "你已经配置了Bootstrap Server,您确定要排除更新吗?", - "bootstrap-update-text": "请注意确认更新后Bootstrap Server配置数据将无法恢复。", - "server-host": "主机", - "server-host-required": "主机必填。", - "server-port": "端口", - "server-port-required": "端口必填。", - "server-port-pattern": "端口必须是一个正整数。", - "server-port-range": "端口应在1到65535范围内。", - "server-public-key": "服务器公钥", - "server-public-key-required": "服务器公钥必填。", - "client-hold-off-time": "停留时间", - "client-hold-off-time-required": "停留时间必填。", - "client-hold-off-time-pattern": "停留时间必须是一个正整数。", - "client-hold-off-time-tooltip": "客户端仅与Bootstrap-Server共用停留时间", - "account-after-timeout": "帐户超时", - "account-after-timeout-required": "帐户超时必填。", - "account-after-timeout-pattern": "帐户超时必须是一个正整数。", - "account-after-timeout-tooltip": "Bootstrap-Server帐户资源的超时值。", - "server-type": "服务器类型", - "add-new-server-title": "添加新的服务器配置", - "add-server-config": "添加服务器配置", - "add-lwm2m-server-config": "添加LwM2M服务器", - "no-config-servers": "没有服务器配置", - "others-tab": "其它设置", - "client-strategy": "客户端连接策略", - "client-strategy-label": "策略", - "client-strategy-only-observe": "只在初始连接后观察对客户的请求", - "client-strategy-read-all": "注册后阅读所有资源并观察对客户的请求", - "fw-update": "固件升级", - "fw-update-strategy": "固件升级策略", - "fw-update-strategy-data": "发布固件升级二制文件使用Object 19和Resource 0数据。", - "fw-update-strategy-package": "发布固件升级二制文件使用Object 5和Resource 0包", - "fw-update-strategy-package-uri": "自动生成唯一的CoAP地址下载包和发布软件更新作为Object 5和Resource 1(软件包URI)。", - "sw-update": "软件更新", - "sw-update-strategy": "软件更新策略", - "sw-update-strategy-package": "发布二制文件使用Object 9和Resource 2(包)", - "sw-update-strategy-package-uri": "自动生成唯一的CoAP地址下载包和发布软件更新作为Object 9和Resource 3(软件包URI)。", - "fw-update-resource": "固件更新COAP资源", - "fw-update-resource-required": "固件更新COAP资源必填。", - "sw-update-resource": "软件更新COAP资源", - "sw-update-resource-required": "软件更新COAP资源必填。", - "config-json-tab": "设备配置JSON", - "attributes-name": { - "min-period": "最小周期", - "max-period": "最大周期", - "greater-than": "大于", - "less-than": "小于", - "step": "步长", - "min-evaluation-period": "最小评估周期", - "max-evaluation-period": "最大评估周期" - }, - "default-object-id": "默认对象版本(属性)", - "default-object-id-ver": { - "v1-0": "1.0", - "v1-1": "1.1" - } - }, - "snmp": { - "add-communication-config": "添加通信配置", - "add-mapping": "添加映射", - "authentication-passphrase": "身份验证密码", - "authentication-passphrase-required": "身份验证密码必填。", - "authentication-protocol": "身份验证协议", - "authentication-protocol-required": "身份验证协议必填。", - "communication-configs": "通信配置", - "community": "Community字符串", - "community-required": "Community字符串必填。", - "context-name": "上下文名称", - "data-key": "数据键", - "data-key-required": "数据键必填。", - "data-type": "数据类型", - "data-type-required": "数据类型必填。", - "engine-id": "引擎ID", - "host": "主机", - "host-required": "主机必填。", - "oid": "OID", - "oid-pattern": "无效OID格式", - "oid-required": "OID必填。", - "please-add-communication-config": "请添加通信配置", - "please-add-mapping-config": "请添加映射配置", - "port": "端口", - "port-format": "端口格式无效", - "port-required": "端口必填。", - "privacy-passphrase": "私有密码", - "privacy-passphrase-required": "私有密码必填。", - "privacy-protocol": "私有协议", - "privacy-protocol-required": "私有协议必填。", - "protocol-version": "协议版本", - "protocol-version-required": "协议版本必填。", - "querying-frequency": "查询频率(ms)", - "querying-frequency-invalid-format": "查询频率必须是一个正整数。", - "querying-frequency-required": "查询频率必填。", - "retries": "重试", - "retries-invalid-format": "重试必须是一个正整数。", - "retries-required": "重试必填。", - "scope": "范围", - "scope-required": "范围必填。", - "security-name": "Security名称", - "security-name-required": "Security名称必填。", - "timeout-ms": "超时(ms)", - "timeout-ms-invalid-format": "超时必须是一个正整数。", - "timeout-ms-required": "超时必填。", - "user-name": "用户名", - "user-name-required": "用户名必填。" - } + "queue-select-name": "选择队列名称", + "queue-name": "名称", + "queue-name-required": "队列名称为必填项!", + "queues": "队列", + "queue-partitions": "分区", + "queue-submit-strategy": "提交策略", + "queue-processing-strategy": "处理策略", + "queue-configuration": "队列配置", + "repository-settings": "仓库设置", + "repository": "仓库", + "repository-url": "仓库 URL", + "repository-url-required": "仓库 URL 为必填项。", + "default-branch": "默认分支名称", + "repository-read-only": "只读", + "show-merge-commits": "显示合并提交", + "authentication-settings": "认证设置", + "auth-method": "认证方法", + "auth-method-username-password": "密码/访问 Token", + "auth-method-username-password-hint": "GitHub 用户必须使用具有仓库写权限的访问 Token。", + "auth-method-private-key": "私钥", + "password-access-token": "密码/访问 Token", + "change-password-access-token": "修改密码/访问 Token", + "private-key": "私钥", + "drop-private-key-file-or": "拖放私钥文件或", + "passphrase": "密码短语", + "enter-passphrase": "输入密码短语", + "change-passphrase": "修改密码短语", + "check-access": "检查访问权限", + "check-repository-access-success": "仓库访问验证成功!", + "delete-repository-settings-title": "确定要删除仓库设置吗?", + "delete-repository-settings-text": "请注意,确认后仓库设置将被移除,版本控制功能将不可用。", + "auto-commit-settings": "自动提交设置", + "auto-commit": "自动提交", + "auto-commit-entities": "自动提交实体", + "no-auto-commit-entities-prompt": "未配置自动提交的实体", + "delete-auto-commit-settings-title": "确定要删除自动提交设置吗?", + "delete-auto-commit-settings-text": "请注意,确认后自动提交设置将被移除,所有实体的自动提交将被禁用。", + "mobile-app": { + "mobile-app": "移动应用", + "mobile-app-qr-code-widget-settings": "移动应用二维码部件设置", + "applications": "应用", + "default": "默认", + "custom": "自定义", + "android": "Android", + "ios": "iOS", + "appearance": "外观", + "appearance-on-home-page": "首页外观", + "enabled": "已启用", + "disabled": "已禁用", + "badges": "徽章", + "label": "标签", + "label-required": "标签为必填项", + "label-max-length": "标签应不超过 50 个字符", + "right": "右", + "left": "左", + "set": "设置", + "preview": "预览", + "connect-mobile-app": "连接移动应用", + "use-system-settings": "使用系统设置" }, - "dialog": { - "close": "关闭对话框", - "error-message-title": "错误信息:", - "error-details-title": "错误详细信息" + "2fa": { + "2fa": "双因素认证", + "available-providers": "可用提供商", + "issuer-name": "签发者名称", + "issuer-name-required": "签发者名称为必填项。", + "max-verification-failures-before-user-lockout": "用户锁定前最大验证失败次数", + "max-verification-failures-before-user-lockout-pattern": "最大验证失败次数必须为正整数。", + "number-of-checking-attempts": "检查尝试次数", + "number-of-checking-attempts-pattern": "检查尝试次数必须为正整数。", + "number-of-checking-attempts-required": "检查尝试次数为必填项。", + "number-of-codes": "验证码数量", + "number-of-codes-pattern": "验证码数量必须为正整数。", + "number-of-codes-required": "验证码数量为必填项。", + "provider": "提供商", + "retry-verification-code-period": "重试验证码周期", + "retry-verification-code-period-pattern": "最小周期时间为 5 秒", + "retry-verification-code-period-required": "重试验证码周期为必填项。", + "total-allowed-time-for-verification": "验证允许的总时间", + "total-allowed-time-for-verification-pattern": "最小允许总时间为 60 秒", + "total-allowed-time-for-verification-required": "允许的总时间为必填项。", + "use-system-two-factor-auth-settings": "使用系统双因素认证设置", + "verification-code-check-rate-limit": "验证码检查频率限制", + "verification-code-lifetime": "验证码有效期", + "verification-code-lifetime-pattern": "验证码有效期必须为正整数。", + "verification-code-lifetime-required": "验证码有效期为必填项。", + "verification-message-template": "验证消息模板", + "verification-limitations": "验证限制", + "verification-message-template-pattern": "验证消息需要包含模式:${code}", + "verification-message-template-required": "验证消息模板为必填项。", + "within-time": "时间范围", + "within-time-pattern": "时间必须为正整数。", + "within-time-required": "时间为必填项。" }, - "direction": { - "column": "列", - "row": "排" + "jwt": { + "security-settings": "JWT 安全设置", + "issuer-name": "签发者名称", + "issuer-name-required": "签发者名称为必填项。", + "signings-key": "签名密钥", + "signings-key-hint": "Base64 编码的字符串,至少表示 512 位数据。", + "signings-key-required": "签名密钥为必填项。", + "signings-key-min-length": "签名密钥必须至少为 512 位数据。", + "signings-key-base64": "签名密钥必须为 base64 格式。", + "expiration-time": "Token 过期时间(秒)", + "expiration-time-required": "Token 过期时间为必填项。", + "expiration-time-max": "最大允许时间为 2147483647 秒(68 年)。", + "expiration-time-min": "最小时间为 60 秒(1 分钟)。", + "refresh-expiration-time": "刷新 Token 过期时间(秒)", + "refresh-expiration-time-required": "刷新 Token 过期时间为必填项。", + "refresh-expiration-time-max": "最大允许时间为 2147483647 秒(68 年)。", + "refresh-expiration-time-min": "最小时间为 900 秒(15 分钟)。", + "refresh-expiration-time-less-token": "刷新 Token 时间必须大于 Token 时间。", + "generate-key": "生成密钥", + "info-header": "所有用户将需要重新登录", + "info-message": "更改 JWT 签名密钥将导致所有已签发的 Token 失效。所有用户都需要重新登录。这也将影响使用 Rest API/Websockets 的脚本。" }, - "edge": { - "edge": "边缘", - "edge-instances": "边缘实例", - "instances": "边缘实例", - "edge-file": "边缘文件", - "name-max-length": "名称长度必须小于256个字符", - "label-max-length": "标签长度必须小于256个字符", - "type-max-length": "类型长度必须小于256个字符", - "management": "边缘管理", - "no-edges-matching": "未找到匹配的边缘 '{{entity}}'。", - "add": "增加边缘", - "no-edges-text": "未找到边缘", - "edge-details": "边缘详情", - "add-edge-text": "增加新的边缘", - "delete": "删除边缘", - "delete-edge-title": "确定删除边缘 '{{edgeName}}'吗?", - "delete-edge-text": "当心, 确认后,边缘以及所有关联数据将不可恢复。", - "delete-edges-title": "确定删除 { count, plural, =1 {1 个边缘} other {# 个边缘} }吗?", - "delete-edges-text": "当心, 确认后,选定的边缘以及所有关联数据将不可恢复。", - "name": "名称", - "name-starts-with": "边缘名称前缀", - "name-required": "名称必填。", - "description": "说明", - "details": "详情", - "events": "事件", - "copy-id": "复制边缘编号", - "id-copied-message": "边缘编号已经复制到剪切板", - "sync": "同步边缘", - "edge-required": "边缘必填。", - "edge-type": "边缘类型", - "edge-type-required": "边缘类型必填。", - "event-action": "事件行动", - "entity-id": "实体编号", - "select-edge-type": "选择边缘类型", - "assign-to-customer": "分配给客户", - "assign-to-customer-text": "请选择需要分配给边缘的客户", - "assign-edge-to-customer": "分配边缘给客户", - "assign-edge-to-customer-text": "请选择需要分配给边缘的客户", - "assignedToCustomer": "分配给客户", - "edge-public": "边缘公开", - "assigned-to-customer": "分配给: {{customerTitle}}", - "unassign-from-customer": "取消分配客户", - "unassign-edge-title": "确定取消分配边缘 '{{edgeName}}' 吗?", - "unassign-edge-text": "确定后,边缘将被取消分配,并且客户将无法访问。", - "unassign-edges-title": "确定要取消分配 {count,plural, =1 {1 个边缘} other {# 个边缘} } 吗?", - "unassign-edges-text": "确定后,所有选定的边缘将被取消分配,并且客户将无法访问。", - "make-public": "公开", - "make-public-edge-title": "确定要将边缘 '{{edgeName}}' 设为公开吗?", - "make-public-edge-text": "确认后,边缘及其所有数据将被设为公开并可被其他人访问。", - "make-private": "私有", - "public": "公开", - "make-private-edge-title": "确定要将边缘 '{{edgeName}}' 设为私有吗?", - "make-private-edge-text": "确认后,边缘及其所有数据将被设为私有,不被其他人访问。", - "import": "导入边缘", - "install-connect-instructions": "安装和连接说明", - "install-connect-instructions-edge-created": "边缘已创建!请检查安装和连接说明", - "loading-edge-instructions": "正在加载边缘说明...", - "label": "标签", - "load-entity-error": "加载数据失败,实体已经被删除。", - "assign-new-edge": "分配新边缘", - "unassign-from-edge": "取消分配边缘", - "edge-key": "边缘键", - "copy-edge-key": "复制边缘键", - "edge-key-copied-message": "边缘键已经被复制到剪切板", - "edge-secret": "边缘密钥", - "copy-edge-secret": "复制边缘密钥", - "edge-secret-copied-message": "边缘密钥已经被复制到剪切板", - "manage-assets": "管理资产", - "manage-devices": "管理设备", - "manage-entity-views": "管理实体视图", - "manage-dashboards": "管理仪表板", - "manage-rulechains": "管理规则链", - "assets": "边缘资产", - "devices": "边缘设备", - "entity-views": "边缘实体视图", - "dashboard": "边缘仪表板", - "dashboards": "边缘仪表板", - "rulechain-templates": "规则链模版", - "edge-rulechain-templates": "边缘规则链模板", - "rulechains": "规则链", - "search": "搜索边缘", - "selected-edges": "{ count, plural, =1 {1 个边缘} other {# 个边缘} } 被选中", - "any-edge": "任何边缘", - "no-edge-types-matching": "未找到匹配的边缘类型 '{{entitySubtype}}'。", - "edge-type-list-empty": "没有选择边缘类型。", - "edge-types": "边缘类型", - "enter-edge-type": "输入边缘类型", - "deployed": "已部署", - "pending": "待定", - "downlinks": "下行", - "no-downlinks-prompt": "未找到下行", - "sync-process-started-successfully": "同步处理开始成功!", - "missing-related-rule-chains-title": "边缘缺少关联规则链", - "missing-related-rule-chains-text": "分配给边缘的规则链使用规则节点将消息转发给未分配给当前边缘的规则链。

缺少的规则链列表:
{{missingRuleChains}}", - "upgrade-instructions": "升级说明", - "widget-datasource-error": "组件只支持边缘实体数据源", - "connected": "已连接", - "disconnected": "已断开连接" - }, - "edge-event": { - "type-dashboard": "仪表板", - "type-asset": "资产", - "type-device": "设备", - "type-device-profile": "设备概要", - "type-asset-profile": "资产配置", - "type-entity-view": "实体视图", - "type-alarm": "告警", - "type-rule-chain": "规则链", - "type-rule-chain-metadata": "规则链元数据", - "type-edge": "边缘", - "type-user": "用户", - "type-tenant": "租户", - "type-tenant-profile": "租户配置", - "type-customer": "客户", - "type-relation": "关联", - "type-widgets-bundle": "部件包", - "type-widgets-type": "部件类型", - "type-admin-settings": "管理员设置", - "type-ota-package": "OTA包", - "type-queue": "队列", - "action-type-added": "增加", - "action-type-deleted": "删除", - "action-type-updated": "更新", - "action-type-post-attributes": "推送属性", - "action-type-attributes-updated": "属性更新", - "action-type-attributes-deleted": "属性删除", - "action-type-timeseries-updated": "时间序列更新", - "action-type-credentials-updated": "认证更新", - "action-type-assigned-to-customer": "分配给客户", - "action-type-unassigned-from-customer": "取消分配客户", - "action-type-relation-add-or-update": "关联增加或更新", - "action-type-relation-deleted": "关联删除", - "action-type-rpc-call": "RPC调用", - "action-type-alarm-ack": "告警确认", - "action-type-alarm-clear": "告警清除", - "action-type-alarm-assigned": "告警已分配", - "action-type-alarm-unassigned": "告警未分配", - "action-type-assigned-to-edge": "分配给边缘", - "action-type-unassigned-from-edge": "取消分配边缘", - "action-type-credentials-request": "认证请求", - "action-type-entity-merge-request": "实体合并请求" + "resources": "资源", + "notifications": "通知", + "notifications-settings": "通知设置", + "slack-api-token": "Slack API Token", + "slack": "Slack", + "slack-settings": "Slack 设置", + "mobile-settings": "移动端设置", + "firebase-service-account-file": "Firebase 服务账户凭证 JSON 文件", + "select-firebase-service-account-file": "拖放您的 Firebase 服务账户凭证文件或" + }, + "alarm": { + "alarm": "告警", + "alarms": "告警", + "all-alarms": "所有告警", + "select-alarm": "选择告警", + "no-alarms-matching": "未找到匹配“{{entity}}”的告警。", + "alarm-required": "告警为必填项", + "alarm-filter": "告警过滤器", + "filter": "过滤器", + "alarm-status": "告警状态", + "alarm-status-list": "告警状态列表", + "any-status": "任意状态", + "search-status": { + "ANY": "任意", + "ACTIVE": "活动", + "CLEARED": "已清除", + "ACK": "已确认", + "UNACK": "未确认" }, - "error": { - "unable-to-connect": "无法连接到服务器!请检查您的互联网连接。", - "unhandled-error-code": "未处理的错误代码: {{errorCode}}", - "unknown-error": "未知错误" - }, - "entity": { - "entity": "实体", - "entities": "实体", - "entities-count": "实体数量", - "alarms-count": "告警数量", - "aliases": "别名", - "aliases-short": "别名", - "entity-alias": "别名", - "unable-delete-entity-alias-title": "无法删除实体别名", - "unable-delete-entity-alias-text": "实体别名'{{entityAlias}}'被以下部件使用不能删除:
{{widgetsList}}", - "duplicate-alias-error": "别名'{{alias}}'重复,同一仪表板别名必须唯一。", - "missing-entity-filter-error": "别名'{{alias}}'缺少筛选器", - "configure-alias": "别名'{{alias}}'配置", - "alias": "别名", - "alias-required": "实体别名必填。", - "remove-alias": "移除实体别名", - "add-alias": "添加实体别名", - "entity-list": "实体列表", - "entity-type": "实体类型", - "entity-types": "实体类型", - "entity-type-list": "实体类型列表", - "any-entity": "任意实体", - "add-entity-type": "添加实体类型", - "enter-entity-type": "输入实体类型", - "no-entities-matching": "未找到匹配'{{entity}}'的实体。", - "no-entities-text": "找不到实体", - "no-entity-types-matching": "未找到匹配'{{entityType}}'类型的实体。", - "name-starts-with": "名称开始于", - "help-text": "根据需要可以使用'%'进行匹配例如:'%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'。", - "use-entity-name-filter": "用户筛选器", - "entity-list-empty": "没有选择实体。", - "entity-type-list-required": "至少应选择一个实体类型。", - "entity-name-filter-required": "实体名筛选器必填。", - "entity-name-filter-no-entity-matched": "未找到以'{{entity}}'开头的实体", - "all-subtypes": "全部", - "select-entities": "选择实体", - "no-aliases-found": "未找到别名", - "no-alias-matching": "未找到'{{alias}}'", - "create-new-alias": "创建别名", - "create-new": "创建", - "key": "键名", - "key-name": "键名", - "no-keys-found": "未找到键名", - "no-key-matching": "未找到键名'{{key}}'", - "create-new-key": "创建键", - "type": "类型", - "type-required": "实体类型必填。", - "type-device": "设备", - "type-devices": "设备", - "list-of-devices": "{ count, plural, =1 {1 个设备} other {# 个设备} }", - "device-name-starts-with": "以 '{{prefix}}' 开头的设备", - "type-device-profile": "设备配置", - "type-device-profiles": "设备配置", - "clear-selected-profiles": "清除已选择的配置", - "list-of-device-profiles": "{ count, plural, =1 {1 个设备配置} other {# 个设备配置} }", - "device-profile-name-starts-with": "名称以 '{{prefix}}' 开头的设备配置", - "type-asset-profile": "资产配置", - "type-asset-profiles": "资产配置", - "list-of-asset-profiles": "{ count, plural, =1 {1 个资产配置} other {# 个资产配置} }", - "asset-profile-name-starts-with": "名称以 '{{prefix}}' 开头的资产配置", - "type-asset": "资产", - "type-assets": "资产", - "list-of-assets": "{ count, plural, =1 {1 个资产} other {# 个资产} }", - "asset-name-starts-with": "以 '{{prefix}}' 开头的资产", - "type-entity-view": "实体视图", - "type-entity-views": "实体视图", - "list-of-entity-views": "{ count, plural, =1 {1 个实体视图} other {# 个实体视图} }", - "entity-view-name-starts-with": "以 '{{prefix}}' 开头的实体视图", - "type-rule": "规则", - "type-rules": "规则", - "list-of-rules": "{ count, plural, =1 {1 个规则} other {# 个规则} }", - "rule-name-starts-with": "以 '{{prefix}}' 开头的规则", - "type-plugin": "插件", - "type-plugins": "插件", - "list-of-plugins": "{ count, plural, =1 {1 个插件} other {# 个插件} }", - "plugin-name-starts-with": "以 '{{prefix}}' 开头的插件", - "type-tenant": "租户", - "type-tenants": "租户", - "list-of-tenants": "{ count, plural, =1 {1 个租户} other {# 个租户} }", - "tenant-name-starts-with": "以 '{{prefix}}' 开头的租户", - "type-tenant-profile": "租户简介", - "type-tenant-profiles": "租户配置", - "list-of-tenant-profiles": "{ count, plural, =1 {1 个租户配置} other {# 个租户配置} }", - "tenant-profile-name-starts-with": "名称以 '{{prefix}}' 开头的租户配置", - "type-customer": "客户", - "type-customers": "客户", - "list-of-customers": "{ count, plural, =1 {1 个客户} other {# 个客户} }", - "customer-name-starts-with": "以 '{{prefix}}' 开头的客户", - "type-user": "用户", - "type-users": "用户", - "list-of-users": "{ count, plural, =1 {1 个用户} other {# 个用户} }", - "user-name-starts-with": "以 '{{prefix}}' 开头的用户", - "type-dashboard": "仪表板", - "type-dashboards": "仪表板", - "list-of-dashboards": "{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }", - "dashboard-name-starts-with": "以 '{{prefix}}' 开头的仪表板", - "type-alarm": "告警", - "type-alarms": "告警", - "list-of-alarms": "{ count, plural, =1 {1 个告警} other {# 个告警} }", - "alarm-name-starts-with": "以 '{{prefix}}' 开头的告警", - "type-rulechain": "规则链", - "type-rulechains": "规则链库", - "list-of-rulechains": "{ count, plural, =1 {1 个规则链} other {# 个规则链} }", - "rulechain-name-starts-with": "规则链前缀名称 '{{prefix}}'", - "type-rulenode": "规则节点", - "type-rulenodes": "规则节点", - "list-of-rulenodes": "{ count, plural, =1 {1 个规则节点} other {# 个规则节点} }", - "rulenode-name-starts-with": "名称以 '{{prefix}}' 开头的规则节点", - "type-current-customer": "当前客户", - "type-current-tenant": "当前租户", - "type-current-user": "当前用户", - "type-current-user-owner": "当前用户所有者", - "type-widgets-bundle": "部件包", - "type-widgets-bundles": "部件包", - "list-of-widgets-bundles": "{ count, plural, =1 {1 个部件包} other {# 个部件包} }", - "type-widget": "部件", - "type-widgets": "部件", - "list-of-widgets": "{ count, plural, =1 {1 个部件} other {# 个部件} }", - "search": "实体检索", - "selected-entities": "已选择 { count, plural, =1 {1 个实体} other {# 个实体} }", - "entity-name": "实体名", - "entity-label": "实体标签", - "details": "实体详情", - "no-entities-prompt": "未找到实体", - "no-data": "无数据", - "columns-to-display": "要显示的列", - "type-api-usage-state": "Api使用状态", - "type-edge": "边缘", - "type-edges": "边缘", - "list-of-edges": "{ count, plural, =1 {1 个边缘} other {列表 # 个边缘} }", - "edge-name-starts-with": "以'{{prefix}}'开头的边缘", - "version-conflict": { - "message": "您要覆盖现有版本还是丢弃更改并加载最新版本?", - "link": "您可以使用此下载的{{entityType}}版本", - "overwrite": "覆盖", - "discard": "丢弃" - }, - "type-tb-resource": "资源", - "type-tb-resources": "资源", - "list-of-tb-resources": "{ count, plural, =1 {1 个资源} other {# 个资源} }", - "type-ota-package": "OTA包", - "type-rpc": "RPC", - "type-queue": "队列", - "type-queue-stats": "队列统计", - "type-queues-stats": "队列统计", - "type-notification": "通知", - "type-notification-rule": "通知规则", - "type-notification-rules": "通知规则", - "list-of-notification-rules": "{ count, plural, =1 {1 个通知规则} other {# 个通知规则} }", - "type-notification-target": "通知收件人", - "type-notification-targets": "通知接收者", - "list-of-notification-targets": "{ count, plural, =1 {1 个通知接收者} other {# 个通知接收者} }", - "type-notification-request": "通知请求", - "type-notification-template": "通知模板", - "type-notification-templates": "通知模板", - "list-of-notification-templates": "{ count, plural, =1 {1 个通知模板} other {# 个通知模板} }", - "link": "连接", - "type-oauth2-client": "OAuth2.0客户端", - "type-oauth2-clients": "OAuth2.0客户端", - "list-of-oauth2-clients": "{ count, plural, =1 {一个 OAuth2.0客户端} other {# 个 OAuth2.0客户端列表} }", - "type-domain": "域名", - "type-domains": "域名", - "list-of-domains": "{ count, plural, =1 {一个域名} other {# 个域名列表} }", - "type-mobile-app": "移劝端", - "type-mobile-apps": "移动端", - "list-of-mobile-apps": "{ count, plural, =1 {一个移动应用} other {# 个移动应用列表} }", - "type-mobile-app-bundle": "移动应用包", - "type-mobile-app-bundles": "移动应用包", - "list-of-mobile-app-bundles": "{ count, plural, =1 {一个移动应用包} other {# 个移动应用包列表} }" - }, - "entity-field": { - "created-time": "创建时间", - "name": "名称", - "type": "类型", - "first-name": "名字", - "last-name": "姓氏", - "email": "电子邮件", - "title": "标题", - "country": "国家", - "state": "省/州", - "city": "城市", - "address": "地址", - "address2": "地址二", - "zip": "邮政编码", - "phone": "电话", - "label": "标签", - "queue-name": "对列名称", - "service-id": "服务Id", - "owner-name": "所有者名称", - "owner-type": "所有者类型" - }, - "entity-view": { - "entity-view": "实体视图", - "entity-view-required": "实体视图必填。", - "entity-views": "实体视图", - "management": "实体视图管理", - "view-entity-views": "查看实体视图", - "entity-view-alias": "实体视图别名", - "aliases": "实体视图别名", - "no-alias-matching": "未找到匹配'{{alias}}'的别名。", - "no-aliases-found": "未找到别名。", - "no-key-matching": "'{{key}}' 未找到。", - "no-keys-found": "未找到密钥。", - "create-new-alias": "创建别名", - "create-new-key": "创建键", - "duplicate-alias-error": "找到重复别名'{{alias}}'。
实体视图别名必须是唯一的。", - "configure-alias": "配置 '{{alias}}' 别名", - "no-entity-views-matching": "未找到与'{{entity}}'匹配的实体视图。", - "public": "公开", - "alias": "别名", - "alias-required": "实体视图别名必填。", - "remove-alias": "删除实体视图别名", - "add-alias": "添加实体视图别名", - "name-starts-with": "名称前缀", - "help-text": "根据需要可以使用'%'进行匹配,例如:'%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'。", - "entity-view-list": "实体视图列表", - "use-entity-view-name-filter": "使用筛选器", - "entity-view-list-empty": "没有被选中的实体视图", - "entity-view-name-filter-required": "实体视图名称筛选器必填。", - "entity-view-name-filter-no-entity-view-matched": "未找到以'{{entityView}}' 开头的实体视图。", - "add": "添加实体视图", - "entity-view-public": "实体视图是公共的", - "assign-to-customer": "分配给客户", - "assign-entity-view-to-customer": "将实体视图分配给客户", - "assign-entity-view-to-customer-text": "请选择要分配给客户的实体视图", - "assign-entity-view-to-edge-title": "将实体视图分配给边缘", - "no-entity-views-text": "未找到实体视图", - "assign-to-customer-text": "请选择客户分配实体视图", - "entity-view-details": "实体视图详细信息", - "add-entity-view-text": "添加实体视图", - "delete": "删除实体视图", - "assign-entity-views": "分配实体视图", - "assign-entity-views-text": "分配 { count, plural, =1 {1 个实体视图} other {# 个实体视图} } 给客户", - "delete-entity-views": "删除实体视图", - "unassign-from-customer": "取消分配客户", - "unassign-entity-views": "取消分配实体视图", - "unassign-entity-views-action-title": "从客户处取消分配{count,plural,=1 {1 实体视图} other {# 实体视图} }", - "assign-new-entity-view": "分配新实体视图", - "delete-entity-view-title": "确定要删除实体视图 '{{entityViewName}}'吗?", - "delete-entity-view-text": "请注意:确认后实体视图及其所有相关数据将不可恢复。", - "delete-entity-views-title": "确定要删除 { count, plural, =1 {1 实体视图} other {# 实体视图} }吗?", - "delete-entity-views-action-title": "删除 { count, plural, =1 {1 个实体视图} other {# 个实体视图} }", - "delete-entity-views-text": "请注意:确认后,所有选定的实体视图将被删除,所有相关的数据将不可恢复。", - "unassign-entity-view-title": "确定要取消对 '{{entityViewName}}' 实体视图的分配吗?", - "unassign-entity-view-text": "确认后,实体视图将未分配,客户无法访问。", - "unassign-entity-view": "未分配实体视图", - "unassign-entity-views-title": "确定要取消分配 { count, plural, =1 {1 个实体视图} other {# 个实体视图} } 吗?", - "unassign-entity-views-text": "确认后,所有选定的实体视图将被分配,客户无法访问。", - "entity-view-type": "实体视图类型", - "entity-view-type-required": "实体视图类型必填。", - "select-entity-view-type": "选择实体视图类型", - "enter-entity-view-type": "输入实体视图类型", - "any-entity-view": "任何实体视图", - "no-entity-view-types-matching": "未找到匹配 '{{entitySubtype}}' 的实体视图类型。", - "entity-view-type-list-empty": "实体视图类型未选择。", - "entity-view-types": "实体视图类型", - "created-time": "创建时间", - "name": "名称", - "name-required": "名称必填。", - "name-max-length": "名称应该小于256个字符。", - "type-max-length": "实体视图类型应该小于256个字符。", - "description": "说明", - "events": "事件", - "details": "详情", - "copyId": "复制实体视图ID", - "idCopiedMessage": "实体视图ID已复制到剪贴板", - "assignedToCustomer": "分配给客户", - "unable-entity-view-device-alias-title": "无法删除实体视图别名", - "unable-entity-view-device-alias-text": "实体视图别名 '{{entityViewAlias}}' 不能够被删除,因为它被下列部件所使用:
{{widgetsList}}", - "select-entity-view": "选择实体视图", - "make-public": "实体视图设为公开", - "make-private": "实体视图设为私有", - "start-ts": "开始时间", - "end-ts": "结束时间", - "date-limits": "日期限制", - "client-attributes": "客户端属性", - "shared-attributes": "共享属性", - "server-attributes": "服务端属性", - "timeseries": "时间序列", - "client-attributes-placeholder": "客户端属性", - "shared-attributes-placeholder": "共享属性", - "server-attributes-placeholder": "服务端属性", - "timeseries-placeholder": "时间序列", - "target-entity": "目标实体", - "attributes-propagation": "属性传播", - "attributes-propagation-hint": "每次保存或更新这个实体视图时,实体视图将自动从目标实体复制指定的属性。由于性能原因,目标实体属性不会在每次属性更改时传递到实体视图。您可以通过配置\"copy to view\"规则链中的规则节点,并将\"Post attributes\"和\"attributes Updated\"消息链接到新规则节点,从而启用自动传递。", - "timeseries-data": "时间序列数据", - "timeseries-data-hint": "配置目标实体的时间序列数据键,以便实体视图可以访问这些键。此时间序列数据是只读的。", - "search": "查找实体视图", - "selected-entity-views": "已选择 { count, plural, =1 {1 个实体视图} other {# 个实体视图} }", - "make-public-entity-view-title": "确定要将实体视图 '{{entityViewName}}' 设为公开吗?", - "make-public-entity-view-text": "确认后,实体视图及其所有数据将被公开并被他人访问。", - "make-private-entity-view-title": "确定要将实体视图 '{{entityViewName}}' 设为私有吗?", - "make-private-entity-view-text": "确认后,实体视图及其所有数据将被私有化,无法被他人访问。", - "assign-entity-view-to-edge": "将实体视图分配给边缘", - "assign-entity-view-to-edge-text": "请选择要分配给边缘的实体视图", - "unassign-entity-view-from-edge-title": "确定要取消对 '{{entityViewName}}' 实体视图的分配吗?", - "unassign-entity-view-from-edge-text": "确认后,实体视图将未分配,边缘无法访问。", - "unassign-entity-views-from-edge-action-title": "从边缘处取消分配{count,plural,=1 {1 实体视图} other {# 实体视图} }", - "unassign-entity-view-from-edge": "未分配实体视图", - "unassign-entity-views-from-edge-title": "确定要取消分配 { count, plural, =1 {1 个实体视图} other {# 个实体视图} } 吗?", - "unassign-entity-views-from-edge-text": "确认后,所有选定的实体视图将被分配,边缘无法访问。" - }, - "event": { - "event-type": "事件类型", - "events-filter": "事件筛选器", - "clean-events": "清除事件", - "type-error": "错误", - "type-lc-event": "生命周期事件", - "type-stats": "类型统计", - "type-debug-rule-node": "调试", - "type-debug-rule-chain": "调试", - "no-events-prompt": "未找到事件", - "error": "错误", - "alarm": "告警", - "event-time": "事件时间", - "server": "服务器", - "body": "整体", - "method": "方法", - "type": "类型", - "message": "消息", - "message-id": "消息ID", - "copy-message-id": "复制消息ID", - "message-type": "消息类型", - "data-type": "数据类型", - "relation-type": "关联类型", - "metadata": "元数据", - "data": "数据", - "event": "事件", - "status": "状态", - "success": "成功", - "failed": "失败", - "messages-processed": "消息处理", - "max-messages-processed": "最大处理消息数", - "min-messages-processed": "最少处理消息数", - "errors-occurred": "错误发生", - "max-errors-occurred": "最大发生错误数", - "min-errors-occurred": "最少发生错误数", - "min-value": "最小值为 0。", - "all-events": "全部", - "has-error": "有错误", - "entity-id": "实体ID", - "copy-entity-id": "复制实体ID", - "entity-type": "实体类型", - "clear-filter": "清除筛选器", - "clear-request-title": "清除所有事件", - "clear-request-text": "你确定要清除所有事件吗?", - "started": "已开始", - "updated": "已更新", - "stopped": "已停止" - }, - "extension": { - "extensions": "扩展", - "selected-extensions": "已选择 { count, plural, =1 {1 个扩展} other {# 个扩展} }", - "type": "类型", - "key": "键名", - "value": "价值", - "id": "ID", - "extension-id": "扩展ID", - "extension-type": "扩展类型", - "transformer-json": "JSON *", - "unique-id-required": "当前扩展ID已经存在。", - "delete": "删除扩展", - "add": "添加扩展", - "edit": "编辑扩展", - "delete-extension-title": "确定要删除扩展 '{{extensionId}}'吗?", - "delete-extension-text": "请注意:确认后,扩展和所有相关数据将不可恢复。", - "delete-extensions-title": "确定要删除 { count, plural, =1 {1 个扩展} other {# 个扩展} }吗?", - "delete-extensions-text": "请注意:确认后,所有选定的扩展将被删除,所有相关数据将不可恢复。", - "converters": "转换器", - "converter-id": "转换器序号", - "configuration": "配置", - "converter-configurations": "转换器的配置", - "token": "安全令牌", - "add-converter": "添加转换器", - "add-config": "添加转换器配置", - "device-name-expression": "设备名称表达式", - "device-type-expression": "设备类型表达式", - "custom": "定制", - "to-double": "加倍", - "transformer": "转换器", - "json-required": "转换器JSON必填。", - "json-parse": "无法解析转换器JSON。", - "attributes": "属性", - "add-attribute": "添加属性", - "add-map": "添加映射元素", - "timeseries": "时间序列", - "add-timeseries": "添加时间序列", - "field-required": "必填字段", - "brokers": "代理服务器组", - "add-broker": "添加代理服务器", - "host": "主机", - "port": "端口", - "port-range": "端口应该在1到65535的范围内。", - "ssl": "SSL", - "credentials": "证书", - "username": "用户名", - "password": "密码", - "retry-interval": "重试间隔(毫秒)", - "anonymous": "匿名", - "basic": "基本", - "pem": "PEM", - "ca-cert": "CA证书文件*", - "private-key": "私钥文件*", - "cert": "证书文件*", - "no-file": "没有选择文件。", - "drop-file": "删除文件或单击以选择要上载的文件。", - "mapping": "映射", - "topic-filter": "主题筛选器", - "converter-type": "转换类型", - "converter-json": "Json", - "json-name-expression": "设备名称JSON表达式", - "topic-name-expression": "设备名称主题表达式", - "json-type-expression": "设备类型JSON表达式", - "topic-type-expression": "设备类型主题表达式", - "attribute-key-expression": "属性键名表达式", - "attr-json-key-expression": "属性键JSON表达式", - "attr-topic-key-expression": "属性键名主题表达式", - "request-id-expression": "请求ID表达式", - "request-id-json-expression": "请求ID JSON表达式", - "request-id-topic-expression": "请求ID主题表达式", - "response-topic-expression": "响应主题表达式", - "value-expression": "值表达式", - "topic": "主题", - "timeout": "超时时间(毫秒)", - "converter-json-required": "转换JSON必填。", - "converter-json-parse": "无法解析转换JSON。", - "filter-expression": "筛选条件表达式", - "connect-requests": "连接请求", - "add-connect-request": "添加连接请求", - "disconnect-requests": "断开请求", - "add-disconnect-request": "添加断开请求", - "attribute-requests": "属性请求", - "add-attribute-request": "添加属性请求", - "attribute-updates": "属性更新", - "add-attribute-update": "添加属性更新", - "server-side-rpc": "服务端RPC", - "add-server-side-rpc-request": "添加服务端RPC请求", - "device-name-filter": "设备名称筛选器", - "attribute-filter": "属性筛选器", - "method-filter": "方法筛选器", - "request-topic-expression": "请求主题表达式", - "response-timeout": "响应超时(毫秒)", - "topic-expression": "主题表达", - "client-scope": "客户范围", - "add-device": "添加服务器", - "opc-server": "服务器组", - "opc-add-server": "添加服务器", - "opc-add-server-prompt": "请添加服务器", - "opc-application-name": "应用名称", - "opc-application-uri": "应用URI", - "opc-scan-period-in-seconds": "秒级扫描周期", - "opc-security": "安全性", - "opc-identity": "身份", - "opc-keystore": "密钥库", - "opc-type": "类型", - "opc-keystore-type": "类型", - "opc-keystore-location": "Location *", - "opc-keystore-password": "密码", - "opc-keystore-alias": "别名", - "opc-keystore-key-password": "密钥密码", - "opc-device-node-pattern": "设备节点模式", - "opc-device-name-pattern": "设备名称模式", - "modbus-server": "Servers/slaves", - "modbus-add-server": "添加 server/slave", - "modbus-add-server-prompt": "请添加 server/slave", - "modbus-transport": "Transport", - "modbus-tcp-reconnect": "自动重新连接", - "modbus-rtu-over-tcp": "RTU over TCP", - "modbus-port-name": "串口名称", - "modbus-encoding": "编码", - "modbus-parity": "奇偶性", - "modbus-baudrate": "波特率", - "modbus-databits": "数据位", - "modbus-stopbits": "停止位", - "modbus-databits-range": "数据位应该在7到8的范围内。", - "modbus-stopbits-range": "停止位应该在1到2的范围内。", - "modbus-unit-id": "单位编号", - "modbus-unit-id-range": "单位ID应该在1到247的范围内", - "modbus-device-name": "设备名称", - "modbus-poll-period": "轮询周期 (毫秒)", - "modbus-attributes-poll-period": "轮询属性周期 (毫秒)", - "modbus-timeseries-poll-period": "时间序列数据轮询周期 (毫秒)", - "modbus-poll-period-range": "轮询周期应为正值。", - "modbus-tag": "标签", - "modbus-function": "函数", - "modbus-register-address": "寄存器地址", - "modbus-register-address-range": "寄存器地址应该在0到65535的范围内。", - "modbus-register-bit-index": "位索引", - "modbus-register-bit-index-range": "位索引应该在0到15的范围内。", - "modbus-register-count": "寄存器计数", - "modbus-register-count-range": "寄存器计数应该是一个正值。", - "modbus-byte-order": "字节顺序", - "sync": { - "status": "状态", - "sync": "同步", - "not-sync": "不同步", - "last-sync-time": "最后同步时间", - "not-available": "无法使用" - }, - "export-extensions-configuration": "导出扩展配置", - "import-extensions-configuration": "导入扩展配置", - "import-extensions": "导入扩展", - "import-extension": "导入扩展", - "export-extension": "导出扩展", - "file": "扩展文件", - "invalid-file-error": "无效的扩展文件" - }, - "feature": { - "advanced-features": "高级功能" - }, - "filter": { - "add": "添加筛选器", - "edit": "编辑筛选器", - "name": "筛选器名称", - "name-required": "筛选器名称必填。", - "duplicate-filter": "同名筛选器已存在。", - "filters": "筛选器", - "unable-delete-filter-title": "无法删除筛选器", - "unable-delete-filter-text": "无法删除筛选器 '{{filter}}' ,因为它由以下部件使用:
{{widgetsList}}", - "duplicate-filter-error": "找到重复的筛选器 '{{filter}}'。
筛选器在仪表板中必须是唯一的。", - "missing-key-filters-error": "筛选器 '{{filter}}' 的键名筛选条件缺失。", - "filter": "筛选器", - "editable": "可编辑", - "no-filters-found": "未找到筛选器。", - "no-filter-text": "未指定筛选器", - "add-filter-prompt": "请添加筛选器", - "no-filter-matching": "未找到 '{{filter}}' 。", - "create-new-filter": "请新增!", - "create-new": "创建", - "filter-required": "筛选器必填。", - "operation": { - "operation": "操作", - "equal": "等于", - "not-equal": "不等于", - "starts-with": "开始于", - "ends-with": "结束于", - "contains": "包含", - "not-contains": "不包含", - "greater": "大于", - "less": "小于", - "greater-or-equal": "大于或等于", - "less-or-equal": "小于或等于", - "and": "和", - "or": "或", - "in": "存在", - "not-in": "不存在" - }, - "ignore-case": "忽略大小写", - "value": "数值", - "remove-filter": "删除筛选器", - "duplicate-filter-action": "重复过滤器", - "preview": "筛选器预览", - "no-filters": "未配置筛选器", - "add-filter": "添加筛选器", - "add-complex-filter": "添加复合筛选器", - "add-complex": "添加复合", - "complex-filter": "复合筛选器", - "edit-complex-filter": "编辑复合筛选器", - "edit-filter-user-params": "编辑筛选器谓词用户参数", - "filter-user-params": "过滤谓词用户参数", - "user-parameters": "用户参数", - "display-label": "要显示的标签", - "order-priority": "字段顺序优先级", - "key-filter": "键名筛选器", - "key-filters": "键名筛选器", - "key-name": "键名", - "key-name-required": "键名必填。", - "key-type": { - "key-type": "键类型", - "attribute": "属性", - "timeseries": "时间序列", - "entity-field": "实体", - "constant": "常量", - "client-attribute": "客户端属性", - "server-attribute": "服务端属性", - "shared-attribute": "共享属性" - }, - "value-type": { - "value-type": "值类型", - "string": "字符串", - "numeric": "数字", - "boolean": "布尔值", - "date-time": "日期时间" - }, - "value-type-required": "键值类型是必需的。", - "key-value-type-change-title": "确定要更改键值类型吗?", - "key-value-type-change-message": "如果您确认新的值类型,所有输入的键过滤器将被删除。", - "no-key-filters": "未配置键名筛选器", - "add-key-filter": "添加键名筛选器", - "remove-key-filter": "删除键名筛选器", - "edit-key-filter": "编辑键名筛选器", - "date": "日期", - "time": "时间", - "current-tenant": "当前租户", - "current-customer": "当前客户", - "current-user": "当前用户", - "current-device": "当前设备", - "default-value": "默认值", - "default-comma-separated-values": "默认用逗号分隔", - "dynamic-source-type": "动态源类型", - "dynamic-value": "动态值", - "no-dynamic-value": "无动态值", - "source-attribute": "源属性", - "switch-to-dynamic-value": "切换到动态值", - "switch-to-default-value": "切换到默认值", - "inherit-owner": "从所有者继承", - "source-attribute-not-set": "如果未设置源属性" - }, - "fullscreen": { - "expand": "展开到全屏", - "exit": "退出全屏", - "toggle": "切换全屏模式", - "fullscreen": "全屏" - }, - "function": { - "function": "函数" + "display-status": { + "ACTIVE_UNACK": "活动未确认", + "ACTIVE_ACK": "活动已确认", + "CLEARED_UNACK": "已清除未确认", + "CLEARED_ACK": "已清除已确认" }, - "gateway": { - "gateway-name": "网关名称", - "gateway-name-required": "网关名称必填。", - "gateways": "网关", - "create-new-gateway": "创建网关", - "create-new-gateway-text": "确定要创建名为 '{{gatewayName}}' 的新网关?", - "launch-command": "启动命令", - "no-gateway-found": "未找到网关。", - "no-gateway-matching": "未找到 '{{item}}' 。" - }, - "grid": { - "delete-item-title": "确定要删除此项吗?", - "delete-item-text": "请注意,确认后,项目及其所有相关数据将不可恢复。", - "delete-items-title": "确定删除{ count, plural, =1 {1 项} other {# 项} }吗?", - "delete-items-action-title": "删除{ count, plural, =1 {1 个元素} other {# 个元素} }", - "delete-items-text": "请注意确认后所有选择的项目将被删除,所有相关数据将不可恢复。", - "add-item-text": "添加项目", - "no-items-text": "未找到项目", - "item-details": "项目详细信息", - "delete-item": "删除项目", - "delete-items": "删除项目", - "scroll-to-top": "滚动到顶部" - }, - "help": { - "goto-help-page": "查看帮助", - "show-help": "显示帮助" + "no-alarms-prompt": "未找到告警", + "created-time": "创建时间", + "type": "类型", + "severity": "严重程度", + "originator": "发起者", + "originator-type": "发起者类型", + "details": "详情", + "originator-label": "发起者标签", + "assign": "分配", + "assignments": "分配记录", + "assignee": "受理人", + "assignee-id": "受理人 ID", + "assignee-first-name": "受理人名字", + "assignee-last-name": "受理人姓氏", + "assignee-email": "受理人 email", + "unassigned": "未分配", + "user-deleted": "用户已删除", + "assignee-not-set": "全部", + "status": "状态", + "alarm-details": "告警详情", + "start-time": "开始时间", + "assign-time": "分配时间", + "end-time": "结束时间", + "ack-time": "确认时间", + "clear-time": "清除时间", + "duration": "持续时间", + "alarm-severity": "告警严重程度", + "alarm-severity-list": "告警严重程度列表", + "any-severity": "任意严重程度", + "severity-critical": "严重", + "severity-major": "重要", + "severity-minor": "次要", + "severity-warning": "警告", + "severity-indeterminate": "不确定", + "acknowledge": "确认", + "clear": "清除", + "delete": "删除", + "search": "搜索告警", + "selected-alarms": "{ count, plural, =1 {1 个告警} other {# 个告警} }已选择", + "no-data": "无数据可显示", + "polling-interval": "告警轮询间隔(秒)", + "polling-interval-required": "告警轮询间隔为必填项。", + "min-polling-interval-message": "允许的最小轮询间隔为 1 秒。", + "aknowledge-alarms-title": "确认 { count, plural, =1 {1 个告警} other {# 个告警} }", + "aknowledge-alarms-text": "确定要确认 { count, plural, =1 {1 个告警} other {# 个告警} }吗?", + "aknowledge-alarm-title": "确认告警", + "aknowledge-alarm-text": "确定要确认告警吗?", + "selected-alarms-are-acknowledged": "所选告警已被确认", + "clear-alarms-title": "清除 { count, plural, =1 {1 个告警} other {# 个告警} }", + "clear-alarms-text": "确定要清除 { count, plural, =1 {1 个告警} other {# 个告警} }吗?", + "clear-alarm-title": "清除告警", + "clear-alarm-text": "确定要清除告警吗?", + "delete-alarms-title": "删除 { count, plural, =1 {1 个告警} other {# 个告警} }", + "delete-alarms-text": "确定要删除 { count, plural, =1 {1 个告警} other {# 个告警} }吗?", + "selected-alarms-are-cleared": "所选告警已被清除", + "alarm-status-filter": "告警状态过滤器", + "alarm-filter-title": "告警过滤器", + "assigned": "已分配", + "filter-title": "过滤器", + "max-count-load": "最大加载告警数量(0 表示无限制)", + "max-count-load-required": "最大加载告警数量为必填项。", + "max-count-load-error-min": "最小值为 0。", + "fetch-size": "获取数量", + "fetch-size-required": "获取数量为必填项。", + "fetch-size-error-min": "最小值为 10。", + "alarm-types": "告警类型", + "alarm-type-list": "告警类型列表", + "any-type": "任意类型", + "assigned-to-current-user": "已分配给当前用户", + "assigned-to-me": "分配给我", + "search-propagated-alarms": "搜索传播的告警", + "comments": "告警评论", + "show-more": "显示更多", + "additional-info": "附加信息", + "alarm-type": "告警类型", + "enter-alarm-type": "输入告警类型", + "no-alarm-types-matching": "未找到匹配“{{entitySubtype}}”的告警类型。", + "alarm-type-list-empty": "未选择告警类型。" + }, + "alarm-activity": { + "add": "添加评论...", + "alarm-comment": "告警评论", + "comments": "评论", + "delete-alarm-comment": "确定要删除此评论吗?", + "refresh": "刷新", + "oldest-first": "最早优先", + "newest-first": "最新优先", + "activity": "活动", + "export": "导出为 CSV", + "author": "作者", + "created-date": "创建日期", + "edited-date": "编辑日期", + "text": "文本", + "system": "系统" + }, + "alias": { + "add": "添加别名", + "edit": "编辑别名", + "name": "别名名称", + "name-required": "别名名称为必填项", + "duplicate-alias": "同名别名已存在。", + "filter-type-single-entity": "单个实体", + "filter-type-entity-list": "实体列表", + "filter-type-entity-name": "实体名称", + "filter-type-entity-type": "实体类型", + "filter-type-state-entity": "来自仪表板状态的实体", + "filter-type-state-entity-description": "从仪表板状态参数获取的实体", + "filter-type-asset-type": "资产类型", + "filter-type-asset-type-description": "类型为“{{assetTypes}}”的资产", + "filter-type-asset-type-and-name-description": "类型为“{{assetTypes}}”且名称以“{{prefix}}”开头的资产", + "filter-type-device-type": "设备类型", + "filter-type-device-type-description": "类型为“{{deviceTypes}}”的设备", + "filter-type-device-type-and-name-description": "类型为“{{deviceTypes}}”且名称以“{{prefix}}”开头的设备", + "filter-type-entity-view-type": "实体视图类型", + "filter-type-entity-view-type-description": "类型为“{{entityViewTypes}}”的实体视图", + "filter-type-entity-view-type-and-name-description": "类型为“{{entityViewTypes}}”且名称以“{{prefix}}”开头的实体视图", + "filter-type-edge-type": "Edge 类型", + "filter-type-edge-type-description": "类型为“{{edgeTypes}}”的 Edge", + "filter-type-edge-type-and-name-description": "类型为“{{edgeTypes}}”且名称以“{{prefix}}”开头的 Edge", + "filter-type-relations-query": "关联查询", + "filter-type-relations-query-description": "与 {{rootEntity}} 具有 {{relationType}} 关联(方向:{{direction}})的 {{entities}}", + "filter-type-edge-search-query": "Edge 搜索查询", + "filter-type-edge-search-query-description": "类型为 {{edgeTypes}} 且与 {{rootEntity}} 具有 {{relationType}} 关联(方向:{{direction}})的 Edge", + "filter-type-asset-search-query": "资产搜索查询", + "filter-type-asset-search-query-description": "类型为 {{assetTypes}} 且与 {{rootEntity}} 具有 {{relationType}} 关联(方向:{{direction}})的资产", + "filter-type-device-search-query": "设备搜索查询", + "filter-type-device-search-query-description": "类型为 {{deviceTypes}} 且与 {{rootEntity}} 具有 {{relationType}} 关联(方向:{{direction}})的设备", + "filter-type-entity-view-search-query": "实体视图搜索查询", + "filter-type-entity-view-search-query-description": "类型为 {{entityViewTypes}} 且与 {{rootEntity}} 具有 {{relationType}} 关联(方向:{{direction}})的实体视图", + "filter-type-apiUsageState": "API 使用状态", + "entity-filter": "实体过滤器", + "resolve-multiple": "解析为多个实体", + "resolve-multiple-hint": "启用后可同时显示所有过滤实体的数据。\n禁用后,部件仅显示所选实体的数据。", + "filter-type": "过滤器类型", + "filter-type-required": "过滤器类型为必填项。", + "entity-filter-no-entity-matched": "未找到匹配指定过滤器的实体。", + "no-entity-filter-specified": "未指定实体过滤器", + "root-state-entity": "使用仪表板状态实体作为根", + "last-level-relation": "仅获取最后一级关联", + "root-entity": "根实体", + "state-entity-parameter-name": "状态实体参数名称", + "default-state-entity": "默认状态实体", + "default-entity-parameter-name": "默认", + "query-options": "查询选项", + "max-relation-level": "最大关联层级", + "unlimited-level": "无限层级", + "state-entity": "仪表板状态实体", + "all-entities": "所有实体", + "any-relation": "任意" + }, + "asset": { + "asset": "资产", + "assets": "资产", + "management": "资产管理", + "view-assets": "查看资产", + "add": "添加资产", + "asset-type-max-length": "资产类型应少于 256 个字符", + "assign-to-customer": "分配给客户", + "assign-asset-to-customer": "将资产分配给客户", + "assign-asset-to-customer-text": "请选择要分配给客户的资产", + "no-assets-text": "未找到资产", + "assign-to-customer-text": "请选择要分配资产的客户", + "public": "公开", + "assignedToCustomer": "已分配给客户", + "make-public": "将资产设为公开", + "make-private": "将资产设为私有", + "unassign-from-customer": "从客户取消分配", + "delete": "删除资产", + "asset-public": "资产为公开状态", + "asset-type": "资产类型", + "asset-type-required": "资产类型为必填项。", + "select-asset-type": "选择资产类型", + "enter-asset-type": "输入资产配置", + "any-asset": "任意资产", + "no-asset-types-matching": "未找到匹配“{{entitySubtype}}”的资产类型。", + "asset-type-list-empty": "未选择资产类型。", + "asset-types": "资产类型", + "name": "名称", + "name-required": "名称为必填项。", + "name-max-length": "名称应少于 256 个字符", + "label-max-length": "标签应少于 256 个字符", + "description": "描述", + "type": "类型", + "type-required": "类型为必填项。", + "details": "详情", + "events": "事件", + "add-asset-text": "添加新资产", + "asset-details": "资产详情", + "assign-assets": "分配资产", + "assign-assets-text": "将 { count, plural, =1 {1 个资产} other {# 个资产} }分配给客户", + "assign-asset-to-edge-title": "将资产分配给 Edge", + "assign-asset-to-edge-text": "请选择要分配给 Edge 的资产", + "delete-assets": "删除资产", + "unassign-assets": "取消分配资产", + "unassign-assets-action-title": "从客户取消分配 { count, plural, =1 {1 个资产} other {# 个资产} }", + "assign-new-asset": "分配新资产", + "delete-asset-title": "确定要删除资产“{{assetName}}”吗?", + "delete-asset-text": "请注意,确认后该资产及所有相关数据将无法恢复。", + "delete-assets-title": "确定要删除 { count, plural, =1 {1 个资产} other {# 个资产} }吗?", + "delete-assets-action-title": "删除 { count, plural, =1 {1 个资产} other {# 个资产} }", + "delete-assets-text": "请注意,确认后所有选中的资产将被移除,所有相关数据将无法恢复。", + "make-public-asset-title": "确定要将资产“{{assetName}}”设为公开吗?", + "make-public-asset-text": "确认后,该资产及其所有数据将被设为公开,可被其他人访问。", + "make-private-asset-title": "确定要将资产“{{assetName}}”设为私有吗?", + "make-private-asset-text": "确认后,该资产及其所有数据将被设为私有,其他人将无法访问。", + "unassign-asset-title": "确定要取消分配资产“{{assetName}}”吗?", + "unassign-asset-text": "确认后,该资产将被取消分配,客户将无法访问。", + "unassign-asset": "取消分配资产", + "unassign-assets-title": "确定要取消分配 { count, plural, =1 {1 个资产} other {# 个资产} }吗?", + "unassign-assets-text": "确认后,所有选中的资产将被取消分配,客户将无法访问。", + "copyId": "复制资产 ID", + "idCopiedMessage": "资产 ID 已复制到剪贴板", + "select-asset": "选择资产", + "no-assets-matching": "未找到匹配“{{entity}}”的资产。", + "asset-required": "资产为必填项。", + "name-starts-with": "资产名称表达式", + "help-text": "根据需要使用“%”:“%asset_name_contains%”、“%asset_name_ends”、“asset_starts_with%”。", + "search": "搜索资产", + "import": "导入资产", + "asset-file": "资产文件", + "label": "标签", + "assign-asset-to-edge": "将资产分配给 Edge", + "unassign-asset-from-edge": "取消分配资产", + "unassign-asset-from-edge-title": "确定要取消分配资产“{{assetName}}”吗?", + "unassign-asset-from-edge-text": "确认后,该资产将被取消分配,Edge 将无法访问。", + "unassign-assets-from-edge-title": "确定要取消分配 { count, plural, =1 {1 个资产} other {# 个资产} }吗?", + "unassign-assets-from-edge-text": "确认后,所有选中的资产将被取消分配,Edge 将无法访问。", + "selected-assets": "{ count, plural, =1 {1 个资产} other {# 个资产} }已选择" + }, + "attribute": { + "attributes": "属性", + "latest-telemetry": "最新遥测", + "no-latest-telemetry": "无最新遥测", + "attributes-scope": "实体属性范围", + "scope-telemetry": "遥测", + "scope-latest-telemetry": "最新遥测", + "scope-client": "客户端属性", + "scope-server": "服务端属性", + "scope-shared": "共享属性", + "scope-client-short": "客户端", + "scope-server-short": "服务端", + "scope-shared-short": "共享", + "scope-latest-short": "最新", + "scope-any": "任意", + "add": "添加属性", + "key": "键", + "key-max-length": "键应少于 256 个字符", + "last-update-time": "最后更新时间", + "key-required": "属性键为必填项。", + "value": "值", + "value-required": "属性值为必填项。", + "telemetry-key-required": "遥测键为必填项", + "telemetry-value-required": "遥测值为必填项", + "delete-attributes-title": "确定要删除 { count, plural, =1 {1 个属性} other {# 个属性} }吗?", + "delete-attributes-text": "请注意,确认后所有选中的属性将被移除。", + "delete-attributes": "删除属性", + "enter-attribute-value": "输入属性值", + "show-on-widget": "在部件中显示", + "widget-mode": "部件模式", + "next-widget": "下一个部件", + "prev-widget": "上一个部件", + "add-to-dashboard": "添加到仪表板", + "add-widget-to-dashboard": "将部件添加到仪表板", + "selected-attributes": "{ count, plural, =1 {1 个属性} other {# 个属性} }已选择", + "selected-telemetry": "{ count, plural, =1 {1 个遥测单元} other {# 个遥测单元} }已选择", + "no-attributes-text": "未找到属性", + "no-telemetry-text": "未找到遥测", + "copy-key": "复制键", + "add-telemetry": "添加遥测", + "copy-value": "复制值", + "delete-timeseries": { + "start-time": "开始时间", + "ends-on": "结束于", + "strategy": "策略", + "delete-strategy": "删除策略", + "all-data": "删除所有数据", + "all-data-except-latest-value": "删除除最新值外的所有数据", + "latest-value": "删除最新值", + "all-data-for-time-period": "删除指定时间段的所有数据", + "rewrite-latest-value": "重写最新值" + } + }, + "api-usage": { + "api-features": "API 功能", + "api-usage": "API 使用量", + "alarm": "告警", + "alarms-created": "已创建的告警", + "queue-stats": "队列统计", + "processing-failures-and-timeouts": "处理失败和超时", + "exceptions": "异常", + "alarms-created-daily-activity": "已创建告警每日活动", + "alarms-created-hourly-activity": "已创建告警每小时活动", + "alarms-created-monthly-activity": "已创建告警每月活动", + "data-points": "数据点", + "data-points-storage-days": "数据点存储天数", + "device-api": "设备 API", + "email": "Email", + "email-messages": "Email 消息", + "email-messages-daily-activity": "Email 消息每日活动", + "email-messages-monthly-activity": "Email 消息每月活动", + "executions": "执行次数", + "scripts": "脚本", + "scripts-hourly-activity": "脚本每小时活动", + "scripts-daily-activity": "脚本每日活动", + "scripts-monthly-activity": "脚本每月活动", + "javascript": "JavaScript", + "javascript-executions": "JavaScript 执行次数", + "tbel": "TBEL", + "tbel-executions": "TBEL 执行次数", + "latest-error": "最新错误", + "messages": "消息", + "notifications": "通知", + "notifications-email-sms": "通知(Email/SMS)", + "notifications-hourly-activity": "通知每小时活动", + "permanent-failures": "${entityName} 永久失败", + "permanent-timeouts": "${entityName} 永久超时", + "processing-failures": "${entityName} 处理失败", + "processing-timeouts": "${entityName} 处理超时", + "rule-chain": "规则链", + "rule-engine": "规则引擎", + "rule-engine-executions": "规则引擎执行次数", + "rule-engine-hourly-activity": "规则引擎每小时活动", + "rule-engine-daily-activity": "规则引擎每日活动", + "rule-engine-monthly-activity": "规则引擎每月活动", + "rule-engine-statistics": "规则引擎统计", + "rule-node": "规则节点", + "sms": "SMS", + "sms-messages": "SMS 消息", + "sms-messages-daily-activity": "SMS 消息每日活动", + "sms-messages-monthly-activity": "SMS 消息每月活动", + "successful": "${entityName} 成功", + "telemetry": "遥测", + "telemetry-persistence": "遥测持久化", + "telemetry-persistence-daily-activity": "遥测持久化每日活动", + "telemetry-persistence-hourly-activity": "遥测持久化每小时活动", + "telemetry-persistence-monthly-activity": "遥测持久化每月活动", + "transport": "传输", + "transport-daily-activity": "传输每日活动", + "transport-data-points": "传输数据点", + "view-details": "查看详情", + "view-statistics": "查看统计", + "transport-messages": "传输消息" + }, + "api-limit": { + "cassandra-write-queries-core": "Rest API Cassandra 写入查询", + "cassandra-read-queries-core": "Rest API 和 WS 遥测 Cassandra 读取查询", + "cassandra-write-queries-rule-engine": "规则引擎遥测 Cassandra 写入查询", + "cassandra-read-queries-rule-engine": "规则引擎遥测 Cassandra 读取查询", + "cassandra-write-queries-monolith": "单体遥测 Cassandra 写入查询", + "cassandra-read-queries-monolith": "单体遥测 Cassandra 读取查询", + "entity-version-creation": "实体版本创建", + "entity-version-load": "实体版本加载", + "notification-requests": "通知请求", + "notification-requests-per-rule": "每规则通知请求", + "rest-api-requests": "REST API 请求", + "rest-api-requests-per-customer": "每客户 REST API 请求", + "transport-messages": "传输消息", + "transport-messages-per-device": "每设备传输消息", + "transport-messages-per-gateway": "每 Gateway 传输消息", + "transport-messages-per-gateway-device": "每 Gateway 设备传输消息", + "ws-updates-per-session": "每会话 WS 更新", + "edge-events": "Edge 事件", + "edge-events-per-edge": "每 Edge 事件", + "edge-uplink-messages": "Edge 上行消息", + "edge-uplink-messages-per-edge": "每 Edge 上行消息" + }, + "audit-log": { + "audit": "审计", + "audit-logs": "审计日志", + "timestamp": "时间戳", + "entity-type": "实体类型", + "entity-name": "实体名称", + "user": "用户", + "type": "类型", + "status": "状态", + "details": "详情", + "type-added": "已添加", + "type-deleted": "已删除", + "type-updated": "已更新", + "type-attributes-updated": "属性已更新", + "type-attributes-deleted": "属性已删除", + "type-rpc-call": "RPC 调用", + "type-credentials-updated": "凭证已更新", + "type-assigned-to-customer": "已分配给客户", + "type-unassigned-from-customer": "已从客户取消分配", + "type-assigned-to-edge": "已分配给 Edge", + "type-unassigned-from-edge": "已从 Edge 取消分配", + "type-activated": "已激活", + "type-suspended": "已停用", + "type-credentials-read": "凭证已读取", + "type-attributes-read": "属性已读取", + "type-relation-add-or-update": "关联已更新", + "type-relation-delete": "关联已删除", + "type-relations-delete": "所有关联已删除", + "type-alarm-ack": "告警已确认", + "type-alarm-clear": "告警已清除", + "type-alarm-delete": "告警已删除", + "type-alarm-assign": "告警已分配", + "type-alarm-unassign": "告警已取消分配", + "type-added-comment": "已添加评论", + "type-updated-comment": "已更新评论", + "type-deleted-comment": "已删除评论", + "type-login": "登录", + "type-logout": "登出", + "type-lockout": "锁定", + "status-success": "成功", + "status-failure": "失败", + "audit-log-details": "审计日志详情", + "no-audit-logs-prompt": "未找到日志", + "action-data": "操作数据", + "failure-details": "失败详情", + "search": "搜索审计日志", + "clear-search": "清除搜索", + "type-assigned-from-tenant": "已从租户分配", + "type-assigned-to-tenant": "已分配给租户", + "type-provision-success": "设备已配置", + "type-provision-failure": "设备配置失败", + "type-timeseries-updated": "遥测已更新", + "type-timeseries-deleted": "遥测已删除", + "type-sms-sent": "SMS 已发送" + }, + "debug-settings": { + "label": "调试配置", + "on-failure": "仅失败(24/7)", + "all-messages": "所有消息({{time}})", + "failures": "失败", + "entity": "实体", + "hint": { + "main-limited": "每 {{time}} 将记录不超过 {{msg}} 条{{entity}}调试消息。", + "on-failure": "仅记录错误消息。", + "all-messages": "记录所有调试消息。" + } + }, + "calculated-fields": { + "expression": "表达式", + "no-found": "未找到计算字段", + "list": "{ count, plural, =1 {一个计算字段} other {# 个计算字段列表} }", + "selected-fields": "{ count, plural, =1 {1 个计算字段} other {# 个计算字段} }已选择", + "type": { + "simple": "简单", + "script": "脚本" }, - "home": { - "home": "首页", - "profile": "属性", - "logout": "注销", - "menu": "菜单", - "avatar": "头像", - "open-user-menu": "打开用户菜单" - }, - "file-input": { - "browse-file": "浏览文件", - "browse-files": "浏览文件" - }, - "image": { - "gallery": "图像库", - "search": "搜索图像", - "selected-images": "已选择{ count, plural, =1 {1 个图像} other {# 个图像} }", - "created-time": "创建时间", - "name": "名称", - "name-required": "名称不能为空。", - "resolution": "分辨率", - "size": "尺寸", - "system": "系统", - "download-image": "下载图像", - "export-image": "导出图像为JSON", - "import-image": "从JSON导入图像", - "upload-image": "上传图像", - "edit-image": "编辑图像", - "image-details": "图像详情", - "no-images": "未找到图像", - "delete-image": "删除图像", - "delete-image-title": "确定要删除图像 '{{imageTitle}}' 吗?", - "delete-image-text": "请注意,确认后图像将无法恢复。", - "delete-images-title": "确定要删除{ count, plural, =1 {1 个图像} other {# 个图像} } 吗?", - "delete-images-text": "请注意,确认后所有选定的图像都将被删除,并且所有相关数据将无法恢复。", - "list-mode": "列表视图", - "grid-mode": "网格视图", - "image-preview": "图像预览", - "update-image": "更新图像", - "export-failed-error": "无法导出图像:{{error}}", - "image-json-file": "图像JSON文件", - "invalid-image-json-file-error": "无法从JSON导入图像:无效的图像JSON数据结构。", - "image-is-in-use": "图像被其他实体使用", - "images-are-in-use": "图像被其他实体使用", - "image-is-in-use-text": "无法删除图像'{{title}}',因为它被以下实体使用:", - "images-are-in-use-text": "由于图像被其他实体使用,无法删除所有图像。
您可以通过单击相应图像行上的引用按钮查看引用的实体。
如果仍然要删除这些图像,请在下方的表格中选择它们,然后点击删除所选按钮。", - "delete-image-in-use-text": "如果仍然要删除该图像,请点击无论如何删除按钮。", - "system-entities": "系统实体:", - "entities": "实体:", - "references": "引用", - "include-system-images": "包含系统图像", - "clear-image": "清除图像", - "no-image": "无图像", - "no-image-selected": "未选择图像", - "browse-from-gallery": "从图像库浏览", - "set-link": "设置链接", - "image-link": "图像链接", - "link": "链接", - "copy-image-link": "复制图像链接", - "embed-image": "嵌入图像", - "embed-to-html": "嵌入到HTML", - "embed-to-html-hint": "此功能将使链接对任何未经授权的用户可用。", - "embed-to-html-text": "使用以下代码片段,您可以将图像嵌入到基于纯HTML的组件中。
此类组件包括HTML卡片小部件、单元格内容函数等。", - "embed-to-angular-template": "嵌入到Angular HTML模板", - "embed-to-angular-template-text": "使用以下代码片段,您可以将图像嵌入到Angular HTML模板中。
此类组件包括Markdown小部件、小部件编辑器中的HTML部分、自定义操作等。" - }, - "image-input": { - "drop-images-or": "拖放一张或多张图片", - "drag-and-drop": "拖放", - "or": "或", - "browse": "浏览", - "no-images": "未选择任何图片", - "images": "图片" - }, - "import": { - "no-file": "没有选择文件", - "drop-file": "拖放一个JSON文件或者单击以选择要上传的文件。", - "drop-json-file-or": "拖放一个 JSON 文件或者", - "drop-file-csv": "拖放一个CSV文件或单击以选择要上载的文件。", - "drop-file-csv-or": "拖放一个 CSV 文件或者", - "column-value": "数值", - "column-title": "标题", - "column-example": "示例值数据", - "column-key": "属性/遥测键", - "credentials": "凭据", - "csv-delimiter": "CSV分隔符", - "csv-first-line-header": "第一行包含列名", - "csv-update-data": "更新属性/遥测", - "details": "详情", - "import-csv-number-columns-error": "一个文件至少应该包含两列", - "import-csv-invalid-format-error": "文件格式无效。行: '{{line}}'", - "column-type": { - "name": "名称", - "type": "类型", - "label": "标签", - "column-type": "列类型", - "client-attribute": "客户端属性", - "shared-attribute": "共享属性", - "server-attribute": "服务器属性", - "timeseries": "时间序列", - "entity-field": "实体字段", - "access-token": "访问令牌", - "x509": "X.509", - "mqtt": { - "client-id": "MQTT客户端ID", - "user-name": "MQTT用户名", - "password": "MQTT密码" - }, - "lwm2m": { - "client-endpoint": "客户端终节点名称", - "security-config-mode": "安全配置模式", - "client-identity": "客户标识", - "client-key": "客户端公钥", - "client-cert": "客户端证书", - "bootstrap-server-security-mode": "LwM2M bootstrap server安全模式", - "bootstrap-server-secret-key": "LwM2M bootstrap server密钥", - "bootstrap-server-public-key-id": "LwM2M bootstrap server公钥", - "lwm2m-server-security-mode": "LwM2M server安全模式", - "lwm2m-server-secret-key": "LwM2M server证书密钥", - "lwm2m-server-public-key-id": "LwM2M server公钥" - }, - "snmp": { - "host": "SNMP 主机地址", - "port": "SNMP 端口", - "version": "SNMP 版本 (例如:v1, v2c, 或 v3)", - "community-string": "SNMP 团体字符串" - }, - "isgateway": "是否网关", - "activity-time-from-gateway-device": "来自网关设备的活动时间", - "description": "说明", - "routing-key": "边缘键", - "secret": "边缘密钥" - }, - "stepper-text": { - "select-file": "选择一个文件", - "configuration": "导入配置", - "column-type": "选择列类型", - "creat-entities": "创建实体" - }, - "message": { - "create-entities": "{{count}} 个新实体已成功创建。", - "update-entities": "{{count}} 个实体已成功更新。", - "error-entities": "创建 {{count}} 个实体时出错。" - } + "arguments": "参数", + "decimals-by-default": "默认小数位数", + "debugging": "计算字段调试", + "argument-name": "参数名称", + "datasource": "数据源", + "add-argument": "添加参数", + "test-script-function": "测试脚本函数", + "no-arguments": "至少需要一个参数。", + "argument-settings": "参数设置", + "argument-current": "当前实体", + "argument-current-tenant": "当前租户", + "argument-device": "设备", + "argument-asset": "资产", + "argument-customer": "客户", + "argument-tenant": "当前租户", + "argument-type": "参数类型", + "attribute": "属性", + "copy-argument-name": "复制参数名称", + "timeseries-key": "时间序列键", + "device-name": "设备名称", + "latest-telemetry": "最新遥测", + "rolling": "时间序列滚动", + "attribute-scope": "属性范围", + "server-attributes": "服务端属性", + "client-attributes": "客户端属性", + "shared-attributes": "共享属性", + "attribute-key": "属性键", + "default-value": "默认值", + "limit": "最大值数量", + "time-window": "时间窗口", + "customer-name": "客户名称", + "asset-name": "资产名称", + "timeseries": "时间序列", + "output": "输出", + "create": "创建新的计算字段", + "file": "计算字段文件", + "invalid-file-error": "文件格式无效。请确保文件为有效的 JSON 文件。", + "import": "导入计算字段", + "export": "导出计算字段", + "export-failed-error": "无法导出计算字段:{{error}}", + "output-type": "输出类型", + "delete-title": "确定要删除计算字段“{{title}}”吗?", + "delete-text": "请注意,确认后该计算字段及所有相关数据将无法恢复。", + "delete-multiple-title": "确定要删除 { count, plural, =1 {1 个计算字段} other {# 个计算字段} }吗?", + "delete-multiple-text": "请注意,确认后所有选中的计算字段将被移除,所有相关数据将无法恢复。", + "test-with-this-message": "使用此消息测试", + "use-latest-timestamp": "使用最新时间戳", + "hint": { + "arguments-simple-with-rolling": "简单类型的计算字段不应包含时间序列滚动类型的键。", + "arguments-empty": "至少需要指定一个参数。", + "expression-required": "表达式为必填项。", + "expression-invalid": "表达式无效", + "expression-max-length": "表达式长度应少于 255 个字符。", + "argument-name-required": "参数名称为必填项。", + "argument-name-pattern": "参数名称无效。", + "argument-name-duplicate": "同名参数已存在。", + "argument-name-max-length": "参数名称应少于 256 个字符。", + "argument-name-forbidden": "参数名称为保留名称,无法使用。", + "argument-type-required": "参数类型为必填项。", + "max-args": "已达到最大参数数量。", + "decimals-range": "默认小数位数应为 0 到 15 之间的数字。", + "expression": "默认表达式演示如何将温度从华氏度转换为摄氏度。", + "arguments-entity-not-found": "未找到参数目标实体。", + "use-latest-timestamp": "启用后,计算值将使用参数遥测中的最新时间戳进行持久化,而非服务器时间。" + } + }, + "ai-models": { + "ai-models": "AI 模型", + "ai-model": "AI 模型", + "model": "模型", + "name": "名称", + "ai-provider": "AI 提供商", + "no-found": "未找到 AI 模型", + "list": "{ count, plural, =1 {1 个模型} other {# 个模型列表} }", + "selected-fields": "已选择{ count, plural, =1 {1 个模型} other {# 个模型} }", + "add": "添加模型", + "delete-model-title": "确定要删除模型“{{modelName}}”吗?", + "delete-model-text": "请注意,确认后模型及所有相关数据将无法恢复。", + "delete-models-title": "确定要删除{ count, plural, =1 {1 个模型} other {# 个模型} }吗?", + "delete-models-text": "请注意,确认后所有选中的模型将被移除,所有相关数据将无法恢复。", + "ai-providers": { + "openai": "OpenAI", + "azure-openai": "Azure OpenAI", + "google-ai-gemini": "Google AI Gemini", + "google-vertex-ai-gemini": "Google Vertex AI Gemini", + "mistral-ai": "Mistral AI", + "anthropic": "Anthropic", + "amazon-bedrock": "Amazon Bedrock", + "github-models": "GitHub Models", + "ollama": "Ollama" }, - "scada": { - "symbols": "组态库", - "search": "搜索组态图形", - "selected-symbols": "选中{ count, plural, =1 {1个图形} other {#个图形} }", - "download-symbol": "下载图形", - "export-symbol": "导出图形", - "import-symbol": "导入图形", - "upload-symbol": "上传图形", - "update-symbol": "更新图形", - "edit-symbol": "编辑图形", - "symbol-details": "图形详情", - "mode-svg": "SVG", - "mode-xml": "XML", - "no-symbols": "未找到图形", - "show-hidden-elements": "显示元素", - "hide-hidden-elements": "隐藏元素", - "delete-symbol": "删除图形", - "delete-symbol-title": "确定要删除'{{imageTitle}}'组态图形吗?", - "delete-symbol-text": "请注意在确认后组态图形将无法恢复。", - "delete-symbols-title": "确定要删除{ count, plural, =1 {1个图形} other {#个图形} }吗?", - "delete-symbols-text": "请注意在确认后所有选择的组态图形将被删除且相关数据将无法恢复。", - "include-system-symbols": "包含系统组态图形", - "symbol-preview": "图形预览", - "general": "常规", - "tags": "标签", - "properties": "属性", - "title": "标题", - "description": "描述", - "search-tags": "标签", - "widget-size": "尺寸", - "cols": "列", - "rows": "行", - "state-render-function": "函数", - "preview": "预览", - "preview-widget-action-text": "部件动作'{{type}}'调用成功!", - "no-symbol": "没有图形", - "no-symbol-selected": "没有选中图形。", - "clear-symbol": "清除图形缓存", - "browse-symbol-from-gallery": "查看图形库中的图形", - "zoom-in": "放大", - "zoom-out": "缩小", - "create-widget": "创建部件", - "create-widget-from-symbol": "根据图形创建部件", - "hidden": "隐藏", - "tag": { - "tag": "标签", - "on-click-action": "事件", - "no-tags": "没有配置标签", - "delete-tag-text": "您确定要从{{elementType}}元素删除{{tag}}标签吗?", - "update-tag": "更新标签", - "enter-tag": "确定标签", - "tag-settings": "标签设置", - "remove-tag": "移除标签", - "add-tag": "添加标签" - }, - "behavior": { - "behavior": "行为", - "id": "序号", - "name": "名称", - "type": "类型", - "no-behaviors": "无任何行为配置", - "add-behavior": "添加行为", - "type-action": "动作", - "type-value": "数值", - "type-widget-action": "部件动作", - "behavior-settings": "行为设置", - "remove-behavior": "移除行为", - "hint": "提示", - "group-title": "分组标题", - "value-type": "数据类型", - "default-value": "默认数据", - "true-label": "True标签", - "false-label": "False标签", - "state-label": "State标签", - "default-payload": "默认payload", - "not-unique-behavior-ids-error": "行为ID必须是唯一的!", - "default-settings": "默认设置" - }, - "symbol": { - "symbol": "图形", - "fluid-presence": "液体", - "fluid-presence-hint": "指示管道中是否显示液体。", - "fluid-present": "液体显示", - "present": "显示", - "absent": "隐藏", - "flow-presence": "流动", - "flow-presence-hint": "指示液体是否在管道中流动。", - "flow-present": "存在流动", - "flow-direction": "方向", - "flow-direction-hint": "指示液体流动方向。", - "forward": "向前", - "reverse": "向后", - "flow-animation-speed": "速度", - "flow-animation-speed-hint": "数值表示流动的动画速度:1正常速度 0无动画 <1动画较慢 >1动画较快。", - "leak": "裂纹", - "leak-hint": "指示管道是否存在裂纹。", - "leak-present": "裂纹存在", - "fluid-color": "液体颜色", - "pipe-color": "管道颜色", - "horizontal-pipe": "水平管", - "vertical-pipe": "垂直管", - "horizontal-fluid-color": "水平液体颜色", - "vertical-fluid-color": "垂直液体颜色", - "left-pipe": "左管", - "right-pipe": "右管", - "top-pipe": "顶管", - "bottom-pipe": "底管", - "left-fluid-color": "左液体颜色", - "right-fluid-color": "正常液体颜色", - "top-fluid-color": "顶液体颜色", - "bottom-fluid-color": "底液体颜色", - "display": "显示", - "value": "数值", - "units": "单位", - "flow-meter-value-hint": "在流量计上显示数值", - "value-hint": "浮点数表示当前值", - "running": "运行", - "running-hint": "指示组件是否处于运行状态。", - "warning-state": "警告状态", - "warning": "警告", - "warning-click": "警告点击", - "warning-state-hint": "指示组件是否处于警告状态。", - "critical-state": "严重状态", - "critical": "严重", - "critical-click": "严重状态点击", - "critical-state-hint": "指示组件是否处于严重状态。", - "critical-state-animation": "状态动画", - "critical-state-animation-hint": "当组件处于严重状态时显示闪烁动画。", - "warning-critical-state-animation": "警告/严重状态动画", - "warning-critical-state-animation-hint": "当组件处于警告或严重状态时,是否启用闪烁动画。", - "animation": "动画", - "broken": "裂纹", - "broken-hint": "指示组件是否存在裂纹。", - "on-display-click": "显示单击", - "on-display-click-hint": "当用户单击时请调用显示操作。", - "pipe": "管道", - "default-border-color": "默认边框颜色", - "active-border-color": "主动边框颜色", - "warning-border-color": "警告边框颜色", - "critical-border-color": "严重边框颜色", - "background-color": "背景颜色", - "rotation-animation-speed": "动画速度", - "rotation-animation-speed-hint": "数值表示旋转动画速度:1正常速度 0无动画 <1动画较慢 >1动画较快。", - "on-click": "单击", - "on-click-hint": "当用户单击组件时调用操作。", - "right-top-connector": "右上连接", - "right-bottom-connector": "右下连接", - "left-top-connector": "左上连接", - "left-bottom-connector": "左下连接", - "top-left-connector": "上左连接", - "top-right-connector": "右左连接", - "running-color": "运行颜色", - "stopped-color": "停止颜色", - "stopped": "已停止", - "warning-color": "警告颜色", - "critical-color": "严重颜色", - "opened": "已经打开", - "opened-hint": "指示组件是否处于打开状态。", - "open": "打开", - "open-hint": "当用户单击打开组件时请调用操作。", - "close": "关闭", - "close-hint": "当用户单击关闭组件时请调用操作。", - "close-state-animation": "关闭状态动画", - "close-state-animation-hint": "当组件处于关闭状态时启用闪烁动画。", - "opened-color": "打开时颜色", - "closed-color": "关闭时颜色", - "opened-rotation-angle": "打开角度", - "closed-rotation-angle": "关闭角度", - "tank-capacity": "容器容量", - "tank-capacity-hint": "双值表示总储罐容量。", - "current-volume": "当前容量", - "current-volume-hint": "双重值表示当前占用的体积。", - "tank-color": "容器颜色", - "value-box": "显示文本框", - "value-text": "单位", - "scale": "显示刻度", - "transparent-mode": "透明模式", - "major-ticks": "数值刻度", - "intervals": "间隔", - "major-ticks-color": "数值颜色", - "normal": "正常", - "minor-ticks": "线条刻度", - "minor-ticks-color": "线条颜色", - "temperature": "温度", - "temperature-hint": "表示当前温度。", - "update-temperature": "温度更新", - "update-temperature-hint": "当用户单击更改当前温度时调用动作。", - "run": "运行", - "run-hint": "当用户单击组件时调用运行操作。", - "stop": "停止", - "stop-hint": "当用户单击组件时调用停止操作。", - "temperature-step": "温度步长", - "heat-pump-color": "背景颜色", - "power-button-background": "按钮颜色", - "value-box-background": "文本框颜色", - "value-units": "显示单位", - "filtration-mode": "过滤模式", - "filtration-mode-hint": "指示当前的过滤模式。", - "filtration-mode-update": "状态更新", - "filtration-mode-update-hint": "当用户单击更改当前过滤模式时调用操作。", - "filter-mode": "过滤", - "waste-mode": "废弃", - "backwash-mode": "清洗", - "recirculate-mode": "循环", - "rinse-mode": "冲洗", - "closed-mode": "关闭", - "sand-filter-color": "沙滤器颜色", - "mode-box-background": "按钮颜色", - "border-color": "状态颜色", - "label-color": "文本颜色", - "water-leak-hint": "指示是否泄漏。", - "default-color": "默认颜色", - "leak-color": "泄漏颜色", - "full-value": "全部数值", - "full-value-hint": "表示全部数值。", - "label": "标签", - "icon": "图标", - "button-color": "按钮颜色", - "on-label": "'开启' 标签文本", - "off-label": "'关闭' 标签文本", - "arrow-presence": "箭头存在", - "arrow-presence-hint": "指示连接器中是否存在箭头。", - "arrow-present": "箭头存在", - "arrow-direction": "箭头方向", - "arrow-direction-hint": "指示流动方向。", - "main-line": "主线", - "line": "线", - "line-color": "线颜色", - "arrow-color": "箭头颜色", - "target-value": "目标值", - "target-value-hint": "指示刻度上的目标点。", - "min-max-value": "最小值和最大值", - "min-value": "最小值", - "max-value": "最大值", - "warning-scale-color": "警告刻度颜色", - "critical-scale-color": "关键刻度颜色", - "scale-color": "刻度颜色", - "target": "目标", - "high-warning-state": "高警告状态", - "show-high-warning-scale": "显示高警告刻度", - "high-warning-scale": "高警告刻度", - "high-warning-state-hint": "双重值表示高警告范围,直到高关键或最大值。", - "low-warning-state": "低警告状态", - "show-low-warning-scale": "显示低警告刻度", - "low-warning-scale": "低警告刻度", - "low-warning-state-hint": "双重值表示低警告范围,直到低关键或最小值。", - "high-critical-state": "高关键状态", - "show-high-critical-scale": "显示高关键刻度", - "high-critical-scale": "高关键刻度", - "high-critical-state-hint": "双重值表示高关键范围,直到最大值刻度。", - "low-critical-state": "低关键状态", - "show-low-critical-scale": "显示低关键刻度", - "low-critical-scale": "低关键刻度", - "low-critical-state-hint": "双重值表示低关键范围,直到最小值刻度。", - "filter-color": "滤色器颜色", - "colors": "颜色", - "alarm-colors": "警报颜色" - } + "name-required": "名称为必填项。", + "name-max-length": "名称不得超过 255 个字符。", + "provider": "提供商", + "api-key": "API 密钥", + "api-key-required": "API 密钥为必填项。", + "api-key-open-ai-required": "使用官方 OpenAI API 时,API 密钥为必填项。", + "project-id": "Project ID", + "project-id-required": "Project ID 为必填项", + "location": "位置", + "location-required": "位置为必填项。", + "service-account-key-file": "服务账号密钥文件", + "service-account-key-file-required": "服务账号密钥文件为必填项。", + "no-file": "未选择文件。", + "drop-file": "拖放文件或点击选择要上传的文件。", + "personal-access-token": "个人访问 Token", + "personal-access-token-required": "个人访问 Token 为必填项。", + "configuration": "配置", + "model-id": "模型 ID", + "model-id-required": "模型 ID 为必填项。", + "deployment-name": "部署名称", + "deployment-name-required": "部署名称为必填项", + "set": "设置", + "region": "区域", + "region-required": "区域为必填项。", + "access-key-id": "访问密钥 ID", + "access-key-id-required": "访问密钥 ID 为必填项。", + "secret-access-key": "秘密访问密钥", + "secret-access-key-required": "秘密访问密钥为必填项。", + "temperature": "温度", + "temperature-hint": "调整模型输出的随机性级别。值越高随机性越大,值越低随机性越小。", + "temperature-min": "必须大于等于 0。", + "top-p": "Top P", + "top-p-hint": "为模型创建一个最可能 Token 的候选池。值越高候选池越大越多样化,值越低候选池越小。", + "top-p-min-max": "必须大于 0 且不超过 1。", + "top-k": "Top K", + "top-k-hint": "将模型的选择限制为固定的\"K\"个最可能的 Token。", + "top-k-min": "必须大于等于 0。", + "presence-penalty": "存在惩罚", + "presence-penalty-hint": "如果某个 Token 已出现在文本中,则对其可能性施加固定惩罚。", + "frequency-penalty": "频率惩罚", + "frequency-penalty-hint": "根据 Token 在文本中出现的频率对其可能性施加递增惩罚。", + "max-output-tokens": "最大输出 Token 数", + "max-output-tokens-hint": "设置模型在单次响应中可以\n生成的最大 Token 数。", + "context-length": "上下文长度", + "context-length-hint": "定义上下文窗口的大小(以 Token 为单位)。此值设置模型的总内存限制,包括用户输入和生成的响应。", + "endpoint": "Endpoint", + "endpoint-required": "Endpoint 为必填项。", + "baseurl": "Base URL", + "baseurl-required": "Base URL 为必填项。", + "service-version": "服务版本", + "check-connectivity": "检查连接", + "check-connectivity-success": "测试请求成功", + "check-connectivity-failed": "测试请求失败", + "no-model-matching": "未找到匹配“{{entity}}”的模型。", + "model-required": "模型为必填项。", + "no-model-text": "未找到模型。", + "authentication": "认证", + "authentication-basic-hint": "使用标准 HTTP Basic 认证。用户名和密码将被组合、Base64 编码,并在每次请求 Ollama 服务器时通过\"Authorization\"请求头发送。", + "authentication-token-hint": "使用 Bearer Token 认证。提供的 Token 将直接在每次请求 Ollama 服务器时通过\"Authorization\"请求头发送。", + "authentication-type": { + "none": "无", + "basic": "Basic", + "token": "Token" }, - "item": { - "selected": "选择" - }, - "js-func": { - "no-return-error": "函数必须返回值!", - "return-type-mismatch": "函数必须返回'{{type}}'类型的值!", - "tidy": "整理", - "mini": "迷你", - "modules": "模块", - "remove-module": "移除模块", - "no-modules": "未配置模块", - "add-module": "添加模块", - "module-alias": "别名", - "module-resource": "JS模块资源", - "not-unique-module-aliases-error": "模块别名必须是唯一的!", - "show-module-info": "显示模块信息", - "show-module-source-code": "显示模块源代码", - "module-members": "模块成员", - "module-no-members": "模块没有导出的成员", - "module-load-error": "模块加载错误", - "source-code": "源代码", - "source-code-load-error": "源代码加载错误", - "no-js-module-text": "未找到JS模块", - "no-js-module-matching": "未找到与 '{{module}}' 匹配的JS模块" + "username": "用户名", + "username-required": "用户名为必填项。", + "password": "密码", + "password-required": "密码为必填项。", + "token": "Token", + "token-required": "Token 为必填项。" + }, + "confirm-on-exit": { + "message": "您有未保存的更改。确定要离开此页面吗?", + "html-message": "您有未保存的更改。
确定要离开此页面吗?", + "title": "未保存的更改" + }, + "contact": { + "country": "国家", + "country-required": "国家为必填项。", + "country-object-required": "请从列表中选择有效的国家。", + "city": "城市", + "state": "州/省", + "postal-code": "邮政编码", + "postal-code-invalid": "邮政编码格式无效。", + "address": "地址", + "address2": "地址 2", + "phone": "电话", + "email": "Email", + "no-address": "无地址", + "no-country-found": "未找到国家。", + "no-country-matching": "未找到匹配“{{country}}”的国家。", + "state-max-length": "州/省长度应少于 256", + "phone-max-length": "电话号码应少于 256", + "city-max-length": "城市名称应少于 256" + }, + "common": { + "name": "名称", + "type": "类型", + "general": "通用", + "username": "用户名", + "password": "密码", + "data": "数据", + "timestamp": "时间戳", + "enter-username": "输入用户名", + "enter-password": "输入密码", + "enter-search": "输入搜索内容", + "created-time": "创建时间", + "disabled": "已禁用", + "loading": "加载中...", + "proceed": "继续", + "open-details-page": "打开详情页", + "not-found": "未找到", + "value": "值", + "documentation": "文档", + "time-left": "剩余 {{time}}", + "output": "输出", + "suffix": { + "s": "s", + "ms": "ms" + }, + "hint": { + "name-required": "名称为必填项。", + "name-pattern": "名称无效。", + "name-max-length": "名称应少于 256 个字符。", + "title-required": "标题为必填项。", + "title-pattern": "标题无效。", + "title-max-length": "标题应少于 256 个字符。", + "key-required": "键为必填项。", + "key-pattern": "键无效。", + "key-max-length": "键应少于 256 个字符。" + }, + "required-fields": "缺少必填字段" + }, + "content-type": { + "json": "Json", + "text": "文本", + "binary": "二进制 (Base64)" + }, + "color": { + "color": "颜色" + }, + "customer": { + "customer": "客户", + "customers": "客户", + "management": "客户管理", + "dashboard": "客户仪表板", + "dashboards": "客户仪表板", + "devices": "客户设备", + "entity-views": "客户实体视图", + "assets": "客户资产", + "public-dashboards": "公开仪表板", + "public-devices": "公开设备", + "public-assets": "公开资产", + "public-entity-views": "公开实体视图", + "add": "添加客户", + "delete": "删除客户", + "manage-customer-users": "管理客户用户", + "manage-customer-devices": "管理客户设备", + "manage-customer-dashboards": "管理客户仪表板", + "manage-public-devices": "管理公开设备", + "manage-public-dashboards": "管理公开仪表板", + "manage-customer-assets": "管理客户资产", + "manage-customer-edges": "管理客户 Edge", + "manage-public-assets": "管理公开资产", + "add-customer-text": "添加新客户", + "no-customers-text": "未找到客户", + "customer-details": "客户详情", + "delete-customer-title": "确定要删除客户“{{customerTitle}}”吗?", + "delete-customer-text": "请注意,确认后客户及所有相关数据将无法恢复。", + "delete-customers-title": "确定要删除{ count, plural, =1 {1 个客户} other {# 个客户} }吗?", + "delete-customers-action-title": "删除{ count, plural, =1 {1 个客户} other {# 个客户} }", + "delete-customers-text": "请注意,确认后所有选中的客户将被移除,所有相关数据将无法恢复。", + "manage-users": "管理用户", + "manage-assets": "管理资产", + "manage-devices": "管理设备", + "manage-dashboards": "管理仪表板", + "title": "标题", + "title-required": "标题为必填项。", + "title-max-length": "标题应少于 256", + "description": "描述", + "details": "详情", + "events": "事件", + "copyId": "复制客户 Id", + "idCopiedMessage": "客户 Id 已复制到剪贴板", + "select-customer": "选择客户", + "no-customers-matching": "未找到匹配“{{entity}}”的客户。", + "customer-required": "客户为必填项。", + "select-default-customer": "选择默认客户", + "default-customer": "默认客户", + "default-customer-required": "在租户级别调试仪表板时需要默认客户", + "search": "搜索客户", + "selected-customers": "已选择{ count, plural, =1 {1 个客户} other {# 个客户} }", + "edges": "客户 Edge 实例", + "manage-edges": "管理 Edge" + }, + "css-size": { + "size-value-required": "尺寸值为必填项", + "invalid-size-value": "尺寸值无效" + }, + "date": { + "last-update-n-ago": "上次更新于 N 前", + "last-update-n-ago-text": "上次更新于 {{ agoText }}", + "custom-date": "自定义日期", + "format": "格式", + "preview": "预览", + "auto": "自动", + "time-granularity-formats": "时间粒度格式", + "unit-year": "年", + "unit-month": "月", + "unit-day": "日", + "unit-hour": "小时", + "unit-minute": "分钟", + "unit-second": "秒", + "unit-millisecond": "毫秒" + }, + "datetime": { + "date-from": "起始日期", + "time-from": "起始时间", + "date-to": "结束日期", + "time-to": "结束时间", + "from": "从", + "to": "到" + }, + "dashboard": { + "dashboard": "仪表板", + "dashboards": "仪表板", + "management": "仪表板管理", + "view-dashboards": "查看仪表板", + "add": "添加仪表板", + "assign-dashboard-to-customer": "将仪表板分配给客户", + "assign-dashboard-to-customer-text": "请选择要分配给客户的仪表板", + "assign-to-customer-text": "请选择要分配仪表板的客户", + "assign-to-customer": "分配给客户", + "unassign-from-customer": "取消分配客户", + "make-public": "公开仪表板", + "make-private": "将仪表板设为私有", + "manage-assigned-customers": "管理已分配的客户", + "assigned-customers": "已分配的客户", + "assign-to-customers": "将仪表板分配给客户", + "assign-to-customers-text": "请选择要分配仪表板的客户", + "unassign-from-customers": "取消分配仪表板的客户", + "unassign-from-customers-text": "请选择要取消分配仪表板的客户", + "no-dashboards-text": "未找到仪表板", + "no-widgets": "未配置部件", + "add-widget": "添加新部件", + "add-widget-button-text": "添加部件", + "title": "标题", + "image": "仪表板图片", + "mobile-app-settings": "移动应用设置", + "mobile-order": "仪表板在移动应用中的排序", + "mobile-hide": "在移动应用中隐藏仪表板", + "update-image": "更新仪表板图片", + "take-screenshot": "截图", + "select-widget-title": "选择部件", + "select-widget-value": "{{title}}:选择部件", + "select-widget-subtitle": "可用部件类型列表", + "delete": "删除仪表板", + "title-required": "标题为必填项。", + "title-max-length": "标题应少于 256", + "description": "描述", + "details": "详情", + "dashboard-details": "仪表板详情", + "add-dashboard-text": "添加新仪表板", + "assign-dashboards": "分配仪表板", + "assign-new-dashboard": "分配新仪表板", + "assign-dashboards-text": "将{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }分配给客户", + "unassign-dashboards-action-text": "取消分配客户的{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }", + "delete-dashboards": "删除仪表板", + "unassign-dashboards": "取消分配仪表板", + "unassign-dashboards-action-title": "取消分配客户的{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }", + "delete-dashboard-title": "确定要删除仪表板“{{dashboardTitle}}”吗?", + "delete-dashboard-text": "请注意,确认后仪表板及所有相关数据将无法恢复。", + "delete-dashboards-title": "确定要删除{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }吗?", + "delete-dashboards-action-title": "删除{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }", + "delete-dashboards-text": "请注意,确认后所有选中的仪表板将被移除,所有相关数据将无法恢复。", + "unassign-dashboard-title": "确定要取消分配仪表板“{{dashboardTitle}}”吗?", + "unassign-dashboard-text": "确认后仪表板将被取消分配,客户将无法访问。", + "unassign-dashboard": "取消分配仪表板", + "unassign-dashboards-title": "确定要取消分配{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }吗?", + "unassign-dashboards-text": "确认后所有选中的仪表板将被取消分配,客户将无法访问。", + "public-dashboard-title": "仪表板现已公开", + "public-dashboard-text": "您的仪表板{{dashboardTitle}}现已公开,可通过以下公开链接访问:", + "public-dashboard-notice": "注意:请勿忘记将相关设备设为公开以访问其数据。", + "make-private-dashboard-title": "确定要将仪表板“{{dashboardTitle}}”设为私有吗?", + "make-private-dashboard-text": "确认后仪表板将设为私有,其他人将无法访问。", + "make-private-dashboard": "将仪表板设为私有", + "socialshare-text": "“{{dashboardTitle}}”由 ThingsBoard 提供支持", + "socialshare-title": "“{{dashboardTitle}}”由 ThingsBoard 提供支持", + "select-dashboard": "选择仪表板", + "no-dashboards-matching": "未找到匹配“{{entity}}”的仪表板。", + "dashboard-required": "仪表板为必填项。", + "select-existing": "选择已有仪表板", + "create-new": "创建新仪表板", + "new-dashboard-title": "新仪表板标题", + "open-dashboard": "打开仪表板", + "set-background": "设置背景", + "background-color": "背景颜色", + "background-image": "背景图片", + "background-size-mode": "背景尺寸模式", + "no-image": "未选择图片", + "empty-image": "无图片", + "drop-image": "拖放图片或点击选择要上传的文件。", + "maximum-upload-file-size": "最大上传文件大小:{{ size }}", + "cannot-upload-file": "无法上传文件", + "settings": "设置", + "move-all-widgets": "移动所有部件", + "move-by": "移动", + "cols": "列", + "rows": "行", + "layout": "布局", + "layout-type-default": "默认", + "layout-type-scada": "SCADA", + "layout-type-divider": "分隔线", + "layout-settings-type": "布局设置:{{ type }} 断点", + "columns-count": "列数", + "columns-count-required": "列数为必填项。", + "min-columns-count-message": "最小列数只允许为 10。", + "max-columns-count-message": "最大列数只允许为 1000。", + "min-layout-width": "最小布局宽度", + "columns-suffix": "列", + "widgets-margins": "部件间距", + "margin-required": "间距值为必填项。", + "min-margin-message": "最小间距值只允许为 0。", + "max-margin-message": "最大间距值只允许为 50。", + "horizontal-margin": "水平间距", + "horizontal-margin-required": "水平间距值为必填项。", + "min-horizontal-margin-message": "最小水平间距值只允许为 0。", + "max-horizontal-margin-message": "最大水平间距值只允许为 50。", + "vertical-margin": "垂直间距", + "vertical-margin-required": "垂直间距值为必填项。", + "min-vertical-margin-message": "最小垂直间距值只允许为 0。", + "max-vertical-margin-message": "最大垂直间距值只允许为 50。", + "apply-outer-margin": "将间距应用到布局两侧", + "autofill-height": "自动填充布局高度", + "mobile-layout": "移动端布局设置", + "mobile-row-height": "移动端行高", + "mobile-row-height-required": "移动端行高值为必填项。", + "min-mobile-row-height-message": "移动端最小行高只允许为 5 像素。", + "max-mobile-row-height-message": "移动端最大行高只允许为 200 像素。", + "row-height": "行高", + "row-height-required": "行高值为必填项。", + "min-row-height-message": "最小行高只允许为 5 像素。", + "max-row-height-message": "最大行高只允许为 200 像素。", + "display-first-in-mobile-view": "在移动端视图中优先显示", + "title-settings": "标题设置", + "display-title": "显示仪表板标题", + "title-color": "标题颜色", + "toolbar-settings": "工具栏设置", + "hide-toolbar": "隐藏工具栏", + "toolbar-always-open": "保持工具栏展开", + "display-dashboards-selection": "显示仪表板选择", + "display-entities-selection": "显示实体选择", + "display-filters": "显示过滤器", + "display-dashboard-timewindow": "显示时间窗口", + "display-dashboard-export": "显示导出", + "display-update-dashboard-image": "显示更新仪表板图片", + "dashboard-logo-settings": "仪表板 Logo 设置", + "display-dashboard-logo": "在仪表板全屏模式下显示 Logo", + "dashboard-logo-image": "仪表板 Logo 图片", + "advanced-settings": "高级设置", + "dashboard-css": "仪表板 CSS", + "import": "导入仪表板", + "export": "导出仪表板", + "export-failed-error": "无法导出仪表板:{{error}}", + "export-prompt": "嵌入仪表板图片和资源", + "create-new-dashboard": "创建新仪表板", + "dashboard-file": "仪表板文件", + "invalid-dashboard-file-error": "无法导入仪表板:仪表板数据结构无效。", + "dashboard-import-missing-aliases-title": "配置导入仪表板使用的别名", + "create-new-widget": "创建新部件", + "import-widget": "导入部件", + "widget-file": "部件文件", + "invalid-widget-file-error": "无法导入部件:部件数据结构无效。", + "widget-import-missing-aliases-title": "配置导入部件使用的别名", + "open-toolbar": "打开仪表板工具栏", + "close-toolbar": "关闭工具栏", + "configuration-error": "配置错误", + "alias-resolution-error-title": "仪表板别名配置错误", + "invalid-aliases-config": "无法找到匹配某些别名过滤器的设备。
请联系管理员以解决此问题。", + "select-devices": "选择设备", + "assignedToCustomer": "已分配给客户", + "assignedToCustomers": "已分配给客户", + "public": "公开", + "copyId": "复制仪表板 Id", + "idCopiedMessage": "仪表板 Id 已复制到剪贴板", + "public-link": "公开链接", + "copy-public-link": "复制公开链接", + "public-link-copied-message": "仪表板公开链接已复制到剪贴板", + "manage-states": "管理仪表板状态", + "states": "仪表板状态", + "states-short": "状态", + "search-states": "搜索仪表板状态", + "selected-states": "已选择{ count, plural, =1 {1 个仪表板状态} other {# 个仪表板状态} }", + "edit-state": "编辑仪表板状态", + "delete-state": "删除仪表板状态", + "add-state": "添加仪表板状态", + "no-states-text": "未找到状态", + "state": "仪表板状态", + "state-name": "名称", + "state-name-required": "仪表板状态名称为必填项。", + "state-id": "状态 Id", + "state-id-required": "仪表板状态 Id 为必填项。", + "state-id-exists": "具有相同 Id 的仪表板状态已存在。", + "is-root-state": "根状态", + "delete-state-title": "删除仪表板状态", + "delete-state-text": "确定要删除名为“{{stateName}}”的仪表板状态吗?", + "show-details": "显示详情", + "hide-details": "隐藏详情", + "select-state": "选择目标状态", + "state-controller": "状态控制器", + "state-controller-default": "静态(已弃用)", + "search": "搜索仪表板", + "selected-dashboards": "已选择{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }", + "home-dashboard": "主页仪表板", + "home-dashboard-hide-toolbar": "隐藏主页仪表板工具栏", + "unassign-dashboard-from-edge-text": "确认后仪表板将被取消分配,Edge 将无法访问。", + "unassign-dashboards-from-edge-title": "确定要取消分配{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }吗?", + "unassign-dashboards-from-edge-text": "确认后所有选中的仪表板将被取消分配,Edge 将无法访问。", + "assign-dashboard-to-edge": "将仪表板分配给 Edge", + "assign-dashboard-to-edge-text": "请选择要分配给 Edge 的仪表板", + "non-existent-dashboard-state-error": "未找到 Id 为\"{{ stateId }}\"的仪表板状态", + "edit-mode": "编辑模式", + "duplicate-state-action": "复制状态", + "breakpoint-value": "断点({{ value }})", + "breakpoints-id": { + "default": "默认", + "xs": "手机 (xs)", + "sm": "平板 (sm)", + "md": "笔记本 (md)", + "lg": "桌面 (lg)", + "xl": "桌面 (xl)" + }, + "view-format-type-grid": "网格", + "view-format-type-list": "列表", + "view-format": "视图格式" + }, + "datakey": { + "settings": "设置", + "general": "通用", + "advanced": "高级", + "key": "键", + "keys": "键", + "label": "标签", + "color": "颜色", + "units": "值旁显示的特殊符号", + "decimals": "小数点后位数", + "data-generation-func": "数据生成函数", + "use-data-post-processing-func": "使用数据后处理函数", + "configuration": "数据键配置", + "timeseries": "时间序列", + "attributes": "属性", + "entity-field": "实体字段", + "alarm": "告警字段", + "timeseries-required": "实体时间序列为必填项。", + "timeseries-or-attributes-required": "实体时间序列/属性为必填项。", + "alarm-fields-timeseries-or-attributes-required": "告警字段或实体时间序列/属性为必填项。", + "maximum-timeseries-or-attributes": "最多允许{ count, plural, =1 {1 个时间序列/属性。} other {# 个时间序列/属性} }", + "alarm-fields-required": "告警字段为必填项。", + "function-types": "函数类型", + "function-type": "函数类型", + "function-types-required": "函数类型为必填项。", + "data-keys": "数据键", + "data-key": "数据键", + "data-keys-required": "数据键为必填项。", + "data-key-required": "数据键为必填项。", + "alarm-keys": "告警数据键", + "alarm-key": "告警数据键", + "alarm-key-functions": "告警键函数", + "alarm-key-function": "告警键函数", + "latest-keys": "最新数据键", + "latest-key": "最新数据键", + "latest-key-functions": "最新键函数", + "latest-key-function": "最新键函数", + "timeseries-keys": "时间序列数据键", + "timeseries-key": "时间序列数据键", + "timeseries-key-functions": "时间序列键函数", + "timeseries-key-function": "时间序列键函数", + "maximum-function-types": "最多允许{ count, plural, =1 {1 个函数类型。} other {# 个函数类型} }", + "time-description": "当前值的时间戳;", + "value-description": "当前值;", + "prev-value-description": "上次函数调用的结果;", + "time-prev-description": "上一个值的时间戳;", + "prev-orig-value-description": "原始上一个值;", + "aggregation": "聚合", + "aggregation-type-hint-common": "出于性能考虑,聚合值计算仅适用于固定时间间隔(如“当天”、“当月”等),不适用于滑动窗口间隔(如“最近 30 分钟”或“最近 24 小时”)。", + "aggregation-type-none-hint": "取最新值。", + "aggregation-type-min-hint": "在选定时间窗口内的数据点中找到最小值。", + "aggregation-type-max-hint": "在选定时间窗口内的数据点中找到最大值。", + "aggregation-type-avg-hint": "计算选定时间窗口内数据点的平均值。", + "aggregation-type-sum-hint": "对选定时间窗口内所有数据点的值求和。", + "aggregation-type-count-hint": "选定时间窗口内数据点的总数。", + "delta-calculation": "增量计算", + "enable-delta-calculation": "启用增量计算", + "enable-delta-calculation-hint": "启用后,数据键的值将根据选定时间窗口和指定比较周期的聚合值进行计算。出于性能考虑,增量计算仅适用于历史时间窗口,不适用于实时值。例如,您可以计算昨天的能耗与前天的能耗之间的增量。", + "delta-calculation-result": "增量计算结果", + "delta-calculation-result-previous-value": "前一个值", + "delta-calculation-result-delta-absolute": "增量(绝对值)", + "delta-calculation-result-delta-percent": "增量(百分比)", + "source": "来源", + "latest": "最新", + "latest-value": "最新值", + "delta": "增量", + "percent": "百分比", + "absolute": "绝对值" + }, + "datasource": { + "type": "数据源类型", + "name": "名称", + "label": "标签", + "add-datasource-prompt": "请添加数据源" + }, + "details": { + "details": "详情", + "edit-mode": "编辑模式", + "edit-json": "编辑 JSON", + "toggle-edit-mode": "切换编辑模式" + }, + "device": { + "device": "设备", + "device-required": "设备为必填项。", + "devices": "设备", + "management": "设备管理", + "view-devices": "查看设备", + "device-alias": "设备别名", + "device-type-max-length": "设备类型应少于 256", + "aliases": "设备别名", + "no-alias-matching": "未找到“{{alias}}”。", + "no-aliases-found": "未找到别名。", + "no-key-matching": "未找到“{{key}}”。", + "no-keys-found": "未找到键。", + "create-new-alias": "创建新别名!", + "create-new-key": "创建新键!", + "duplicate-alias-error": "发现重复别名“{{alias}}”。
设备别名在仪表板内必须唯一。", + "configure-alias": "配置“{{alias}}”别名", + "no-devices-matching": "未找到匹配“{{entity}}”的设备。", + "alias": "别名", + "alias-required": "设备别名为必填项。", + "remove-alias": "移除设备别名", + "add-alias": "添加设备别名", + "name-starts-with": "设备名称表达式", + "help-text": "根据需要使用“%”:“%device_name_contains%”、“%device_name_ends”、“device_starts_with%”。", + "device-list": "设备列表", + "use-device-name-filter": "使用过滤器", + "device-list-empty": "未选择设备。", + "device-name-filter-required": "设备名称过滤器为必填项。", + "device-name-filter-no-device-matched": "未找到以“{{device}}”开头的设备。", + "add": "添加设备", + "assign-to-customer": "分配给客户", + "assign-device-to-customer": "将设备分配给客户", + "assign-device-to-customer-text": "请选择要分配给客户的设备", + "make-public": "公开设备", + "make-private": "将设备设为私有", + "no-devices-text": "未找到设备", + "assign-to-customer-text": "请选择要分配设备的客户", + "device-details": "设备详情", + "add-device-text": "添加新设备", + "credentials": "凭证", + "manage-credentials": "管理凭证", + "delete": "删除设备", + "assign-devices": "分配设备", + "assign-devices-text": "将{ count, plural, =1 {1 个设备} other {# 个设备} }分配给客户", + "delete-devices": "删除设备", + "unassign-from-customer": "取消分配客户", + "unassign-devices": "取消分配设备", + "unassign-devices-action-title": "取消分配客户的{ count, plural, =1 {1 个设备} other {# 个设备} }", + "unassign-device-from-edge-title": "确定要取消分配设备“{{deviceName}}”吗?", + "unassign-device-from-edge-text": "确认后设备将被取消分配,Edge 将无法访问。", + "unassign-devices-from-edge": "从 Edge 取消分配设备", + "assign-new-device": "分配新设备", + "make-public-device-title": "确定要将设备“{{deviceName}}”设为公开吗?", + "make-public-device-text": "确认后设备及其所有数据将设为公开,其他人可访问。", + "make-private-device-title": "确定要将设备“{{deviceName}}”设为私有吗?", + "make-private-device-text": "确认后设备及其所有数据将设为私有,其他人将无法访问。", + "view-credentials": "查看凭证", + "delete-device-title": "确定要删除设备“{{deviceName}}”吗?", + "delete-device-text": "请注意,确认后设备及所有相关数据将无法恢复。", + "delete-devices-title": "确定要删除{ count, plural, =1 {1 个设备} other {# 个设备} }吗?", + "delete-devices-action-title": "删除{ count, plural, =1 {1 个设备} other {# 个设备} }", + "delete-devices-text": "请注意,确认后所有选中的设备将被移除,所有相关数据将无法恢复。", + "unassign-device-title": "确定要取消分配设备“{{deviceName}}”吗?", + "unassign-device-text": "确认后设备将被取消分配,客户将无法访问。", + "unassign-device": "取消分配设备", + "unassign-devices-title": "确定要取消分配{ count, plural, =1 {1 个设备} other {# 个设备} }吗?", + "unassign-devices-text": "确认后所有选中的设备将被取消分配,客户将无法访问。", + "device-credentials": "设备凭证", + "loading-device-credentials": "正在加载设备凭证...", + "credentials-type": "凭证类型", + "access-token": "访问 Token", + "access-token-required": "访问 Token 为必填项。", + "access-token-invalid": "访问 Token 长度必须在 1 到 32 个字符之间。", + "certificate-pem-format": "PEM 格式证书", + "certificate-pem-format-required": "证书为必填项。", + "copy-access-token": "复制访问 Token", + "copy-certificate": "复制证书", + "copy-client-id": "复制 Client ID", + "copy-user-name": "复制用户名", + "copy-password": "复制密码", + "generate-client-id": "生成 Client ID", + "generate-user-name": "生成用户名", + "generate-password": "生成密码", + "generate-access-token": "生成访问 Token", + "lwm2m-security-config": { + "identity": "Client Identity", + "identity-required": "Client Identity 为必填项。", + "identity-tooltip": "PSK 标识符是最多 128 字节的任意 PSK 标识符,如标准 [RFC7925] 所述。\nPSK 标识符必须先转换为字符串,然后使用 UTF-8 编码为八位字节。", + "client-key": "Client Key", + "client-key-required": "Client Key 为必填项。", + "client-key-tooltip-prk": "RPK 公钥或 id 必须符合标准 [RFC7250] 并编码为 Base64 格式!", + "client-key-tooltip-psk": "PSK 密钥必须符合标准 [RFC4279] 且为 HexDec 格式:32、64、128 字符!", + "endpoint": "Endpoint Client Name", + "endpoint-required": "Endpoint Client Name 为必填项。", + "client-public-key": "客户端公钥", + "client-public-key-hint": "如果客户端公钥为空,将使用受信任的证书", + "client-public-key-tooltip": "X509 公钥必须为 DER 编码的 X509v3 格式,仅支持 EC 算法,然后编码为 Base64 格式!", + "mode": "安全配置模式", + "client-tab": "客户端安全配置", + "client-certificate": "客户端证书", + "bootstrap-tab": "Bootstrap 客户端", + "bootstrap-server": "Bootstrap 服务器", + "lwm2m-server": "LwM2M 服务器", + "client-publicKey-or-id": "客户端公钥或 Id", + "client-publicKey-or-id-required": "客户端公钥或 Id 为必填项。", + "client-publicKey-or-id-tooltip-psk": "PSK 标识符是最多 128 字节的任意 PSK 标识符,如标准 [RFC7925] 所述。\nPSK 标识符必须先转换为字符串,然后使用 UTF-8 编码为八位字节。", + "client-publicKey-or-id-tooltip-rpk": "RPK 公钥或 id 必须符合标准 [RFC7250] 并编码为 Base64 格式!", + "client-publicKey-or-id-tooltip-x509": "X509 公钥必须为 DER 编码的 X509v3 格式,仅支持 EC 算法,然后编码为 Base64 格式", + "client-secret-key": "客户端密钥", + "client-secret-key-required": "客户端密钥为必填项。", + "client-secret-key-tooltip-psk": "PSK 密钥必须符合标准 [RFC4279] 且为 HexDec 格式:32、64、128 字符!", + "client-secret-key-tooltip-prk": "RPK 密钥必须为 PKCS_8 格式(DER 编码,标准 [RFC5958]),然后编码为 Base64 格式!", + "client-secret-key-tooltip-x509": "X509 密钥必须为 PKCS_8 格式(DER 编码,标准 [RFC5958]),然后编码为 Base64 格式!" + }, + "client-id": "Client ID", + "client-id-pattern": "包含无效字符。", + "user-name": "用户名", + "user-name-required": "用户名为必填项。", + "client-id-or-user-name-necessary": "Client ID 和/或用户名为必填项", + "password": "密码", + "secret": "密钥", + "secret-required": "密钥为必填项。", + "device-type": "设备配置", + "device-type-required": "设备类型为必填项。", + "select-device-type": "选择设备类型", + "enter-device-type": "输入设备配置", + "any-device": "任意设备", + "no-device-types-matching": "未找到匹配“{{entitySubtype}}”的设备配置。", + "device-type-list-empty": "未选择设备配置!", + "device-profile-type-list-empty": "至少应选择一个设备配置。", + "device-types": "设备类型", + "name": "名称", + "name-required": "名称为必填项。", + "name-max-length": "名称应少于 256", + "label-max-length": "标签应少于 256", + "description": "描述", + "label": "标签", + "events": "事件", + "details": "详情", + "copyId": "复制设备 Id", + "copyAccessToken": "复制访问 Token", + "copy-mqtt-authentication": "复制 MQTT 凭证", + "idCopiedMessage": "设备 Id 已复制到剪贴板", + "accessTokenCopiedMessage": "设备访问 Token 已复制到剪贴板", + "mqtt-authentication-copied-message": "设备 MQTT 认证信息已复制到剪贴板", + "assignedToCustomer": "已分配给客户", + "unable-delete-device-alias-title": "无法删除设备别名", + "unable-delete-device-alias-text": "设备别名“{{deviceAlias}}”无法删除,因为以下部件正在使用它:
{{widgetsList}}", + "is-gateway": "是否为 Gateway", + "overwrite-activity-time": "覆盖已连接设备的活动时间", + "device-filter-title": "设备过滤器", + "filter-title": "过滤器", + "device-state": "设备状态", + "state": "状态", + "any": "任意", + "active": "活跃", + "inactive": "不活跃", + "public": "公开", + "device-public": "设备已公开", + "select-device": "选择设备", + "import": "导入设备", + "device-file": "设备文件", + "search": "搜索设备", + "selected-devices": "已选择{ count, plural, =1 {1 个设备} other {# 个设备} }", + "device-configuration": "设备配置", + "transport-configuration": "传输配置", + "wizard": { + "device-details": "设备详情" + }, + "unassign-devices-from-edge-title": "确定要取消分配{ count, plural, =1 {1 个设备} other {# 个设备} }吗?", + "unassign-devices-from-edge-text": "确认后所有选中的设备将被取消分配,Edge 将无法访问。", + "time": "时间", + "connectivity": { + "check-connectivity": "检查连接", + "device-created-check-connectivity": "设备已创建。让我们检查连接!", + "loading-check-connectivity-command": "正在加载检查连接命令...", + "use-following-instructions": "使用以下说明通过 shell 代表设备发送遥测数据", + "execute-following-command": "执行以下命令", + "install-curl-windows": "从 Windows 10 b17063 开始,cURL 默认可用", + "install-curl-macos": "从 Mac OS X 10.2 6C115 (Jaguar) 开始,cURL 默认可用", + "install-mqtt-windows": "使用说明下载、安装、设置和运行 mosquitto_pub", + "install-coap-client": "使用说明下载、安装、设置和运行 coap-client", + "install-necessary-client-tools": "安装必要的客户端工具", + "mqtts-x509-command": "使用以下文档通过 MQTT 及 X509 授权连接设备", + "coaps-x509-command": "使用以下文档通过 CoAP over DTLS 及 X509 授权连接设备", + "snmp-command": "使用以下文档通过 SNMP 连接设备。", + "sparkplug-command": "使用以下文档通过 MQTT Sparkplug 连接设备。", + "lwm2m-command": "使用以下文档通过 LWM2M 连接设备。" + } + }, + "dynamic-form": { + "property": { + "properties": "属性", + "property": "属性", + "id": "Id", + "name": "名称", + "type": "类型", + "type-text": "文本", + "type-password": "密码", + "type-textarea": "文本区域", + "type-number": "数字", + "type-switch": "开关", + "type-select": "下拉选择", + "type-radios": "单选按钮", + "type-datetime": "日期/时间", + "type-image": "图片", + "type-javascript": "JavaScript", + "type-json": "JSON", + "type-html": "HTML", + "type-css": "CSS", + "type-markdown": "Markdown", + "type-color": "颜色", + "type-color-settings": "颜色设置", + "type-font": "字体", + "type-units": "单位", + "type-icon": "图标", + "type-fieldset": "字段集", + "type-array": "数组", + "type-html-section": "HTML 区段", + "group-title": "分组标题", + "no-properties": "未配置属性", + "add-property": "添加属性", + "property-settings": "属性设置", + "remove-property": "移除属性", + "default-value": "默认值", + "value-required": "值为必填项", + "number-settings": "数字设置", + "min": "最小值", + "max": "最大值", + "step": "步长", + "selected-options-limit": "已选选项限制", + "advanced-ui-settings": "高级 UI 设置", + "disable-on-property": "根据属性禁用", + "disable-on-property-none": "无(字段始终启用)", + "display-condition-function": "显示条件函数", + "sub-label": "子标签", + "vertical-divider-after": "之后的垂直分隔线", + "input-field-suffix": "输入字段后缀", + "property-row-classes": "属性行样式类", + "property-field-classes": "属性字段样式类", + "not-unique-property-ids-error": "属性 Id 必须唯一!", + "enable-multiple-select": "启用多选", + "allow-empty-select-option": "允许空选项", + "select-options": "选择选项", + "not-unique-select-option-value-error": "选择选项值必须唯一!", + "value": "值", + "label": "标签", + "add-option": "添加选项", + "no-options": "未配置选项", + "remove-option": "移除选项", + "textarea-rows": "文本区域行数", + "help-id": "帮助 Id", + "buttons-direction": "按钮方向", + "direction-row": "行", + "direction-column": "列", + "radio-button-options": "单选按钮选项", + "datetime-type": "日期/时间字段类型", + "datetime-type-date": "日期", + "datetime-type-time": "时间", + "datetime-type-datetime": "日期/时间", + "enable-clear-button": "启用清除按钮", + "html-section-settings": "HTML 区段设置", + "html-section-classes": "HTML 区段样式类", + "html-section-content": "HTML 区段内容", + "array-item": "数组项", + "item-type": "项类型", + "item-name": "项名称", + "no-items": "无项目", + "support-unit-conversion": "支持单位转换" + }, + "clear-form": "清除表单", + "clear-form-prompt": "确定要移除所有表单属性吗?", + "import-form": "从 JSON 导入表单", + "export-form": "将表单导出为 JSON", + "json-file": "JSON 文件", + "json-content": "JSON 内容", + "invalid-form-json-file-error": "无法从 JSON 导入表单:表单 JSON 数据结构无效。" + }, + "asset-profile": { + "asset-profile": "资产配置", + "asset-profiles": "资产配置", + "all-asset-profiles": "全部", + "add": "添加资产配置", + "edit": "编辑资产配置", + "asset-profile-details": "资产配置详情", + "no-asset-profiles-text": "未找到资产配置", + "search": "搜索资产配置", + "selected-asset-profiles": "已选择{ count, plural, =1 {1 个资产配置} other {# 个资产配置} }", + "no-asset-profiles-matching": "未找到匹配“{{entity}}”的资产配置。", + "asset-profile-required": "资产配置为必填项", + "idCopiedMessage": "资产配置 Id 已复制到剪贴板", + "set-default": "设为默认资产配置", + "delete": "删除资产配置", + "copyId": "复制资产配置 Id", + "name-max-length": "名称应少于 256", + "new-device-profile-name": "资产配置名称", + "new-device-profile-name-required": "资产配置名称为必填项。", + "name": "名称", + "name-required": "名称为必填项。", + "image": "资产配置图片", + "description": "描述", + "default": "默认", + "default-rule-chain": "默认规则链", + "default-edge-rule-chain": "默认 Edge 规则链", + "default-edge-rule-chain-hint": "在 Edge 上用作处理此资产配置资产传入数据的规则链", + "mobile-dashboard": "移动端仪表板", + "mobile-dashboard-hint": "移动应用程序用作资产详情仪表板", + "select-queue-hint": "从下拉列表中选择。", + "delete-asset-profile-title": "确定要删除资产配置“{{assetProfileName}}”吗?", + "delete-asset-profile-text": "请注意,确认后资产配置及所有相关数据将无法恢复。", + "delete-asset-profiles-title": "确定要删除{ count, plural, =1 {1 个资产配置} other {# 个资产配置} }吗?", + "delete-asset-profiles-text": "请注意,确认后所有选中的资产配置将被移除,所有相关数据将无法恢复。", + "set-default-asset-profile-title": "确定要将资产配置“{{assetProfileName}}”设为默认吗?", + "set-default-asset-profile-text": "确认后资产配置将被标记为默认,并用于未指定配置的新资产。", + "no-asset-profiles-found": "未找到资产配置。", + "create-new-asset-profile": "创建新资产配置!", + "create-asset-profile": "创建新资产配置", + "import": "导入资产配置", + "export": "导出资产配置", + "export-failed-error": "无法导出资产配置:{{error}}", + "asset-profile-file": "资产配置文件", + "invalid-asset-profile-file-error": "无法导入资产配置:资产配置数据结构无效。" + }, + "device-profile": { + "device-profile": "设备配置", + "device-profiles": "设备配置", + "all-device-profiles": "全部", + "add": "添加设备配置", + "edit": "编辑设备配置", + "device-profile-details": "设备配置详情", + "no-device-profiles-text": "未找到设备配置", + "search": "搜索设备配置", + "selected-device-profiles": "{ count, plural, =1 {1 个设备配置} other {# 个设备配置} }已选择", + "no-device-profiles-matching": "未找到与 '{{entity}}' 匹配的设备配置。", + "device-profile-required": "设备配置为必填项", + "idCopiedMessage": "设备配置 Id 已复制到剪贴板", + "set-default": "设为默认设备配置", + "delete": "删除设备配置", + "copyId": "复制设备配置 Id", + "name-max-length": "名称长度不能超过 256", + "name": "名称", + "name-required": "名称为必填项。", + "type": "配置类型", + "type-required": "配置类型为必填项。", + "type-default": "默认", + "image": "设备配置图片", + "transport-type": "传输类型", + "transport-type-required": "传输类型为必填项。", + "transport-type-default": "默认", + "transport-type-default-hint": "支持基本 MQTT、HTTP 和 CoAP 传输", + "transport-type-mqtt": "MQTT", + "transport-type-mqtt-hint": "启用高级 MQTT 传输设置", + "transport-type-coap": "CoAP", + "transport-type-coap-hint": "启用高级 CoAP 传输设置", + "transport-type-lwm2m": "LWM2M", + "transport-type-lwm2m-hint": "LWM2M 传输类型", + "transport-type-snmp": "SNMP", + "transport-type-snmp-hint": "指定 SNMP 传输配置", + "transport-type-http": "HTTP", + "description": "描述", + "default": "默认", + "profile-configuration": "配置设定", + "transport-configuration": "传输配置", + "default-rule-chain": "默认规则链", + "default-edge-rule-chain": "默认 Edge 规则链", + "default-edge-rule-chain-hint": "在 Edge 上用作规则链,处理此设备配置的设备传入数据", + "mobile-dashboard": "移动端仪表板", + "mobile-dashboard-hint": "移动应用使用此仪表板作为设备详情仪表板", + "select-queue-hint": "从下拉列表中选择。", + "delete-device-profile-title": "确定要删除设备配置 '{{deviceProfileName}}' 吗?", + "delete-device-profile-text": "请注意,确认后设备配置及所有相关数据(包括关联的 OTA 更新)将无法恢复。", + "delete-device-profiles-title": "确定要删除 { count, plural, =1 {1 个设备配置} other {# 个设备配置} } 吗?", + "delete-device-profiles-text": "请注意,确认后所有选中的设备配置将被移除,所有相关数据(包括关联的 OTA 更新)将无法恢复。", + "set-default-device-profile-title": "确定要将设备配置 '{{deviceProfileName}}' 设为默认吗?", + "set-default-device-profile-text": "确认后,该设备配置将被标记为默认,并将用于未指定配置的新设备。", + "no-device-profiles-found": "未找到设备配置。", + "create-new-device-profile": "创建新的设备配置!", + "mqtt-device-topic-filters": "MQTT 设备主题过滤器", + "mqtt-device-topic-filters-unique": "MQTT 设备主题过滤器必须唯一。", + "mqtt-device-topic-filters-spark-plug": "MQTT Sparkplug B Edge of Network (EoN) 节点。", + "mqtt-device-topic-filters-spark-plug-hint": "允许来自使用 Sparkplug B 负载和主题格式的 EoN 节点的连接。", + "mqtt-device-topic-filters-spark-plug-attribute-metric-names": "作为属性存储的 SparkPlug 指标。", + "mqtt-device-topic-filters-spark-plug-attribute-metric-names-hint": "将作为设备属性存储的 SparkPlug 指标名称。其他所有指标将作为设备遥测存储。", + "mqtt-device-payload-type": "MQTT 设备负载", + "mqtt-device-payload-type-json": "JSON", + "mqtt-device-payload-type-proto": "Protobuf", + "mqtt-enable-compatibility-with-json-payload-format": "启用与其他负载格式的兼容性。", + "mqtt-enable-compatibility-with-json-payload-format-hint": "启用后,平台将默认使用 Protobuf 负载格式。如果解析失败,平台将尝试使用 JSON 负载格式。适用于固件更新期间的向后兼容性。例如,初始版本的固件使用 Json,而新版本使用 Protobuf。在设备群的固件更新过程中,需要同时支持 Protobuf 和 JSON。兼容模式会引入轻微的性能下降,因此建议在所有设备更新完成后禁用此模式。", + "mqtt-use-json-format-for-default-downlink-topics": "对默认下行主题使用 Json 格式", + "mqtt-use-json-format-for-default-downlink-topics-hint": "启用后,平台将使用 Json 负载格式通过以下主题推送属性和 RPC:v1/devices/me/attributes/response/$request_idv1/devices/me/attributesv1/devices/me/rpc/request/$request_idv1/devices/me/rpc/response/$request_id。此设置不影响使用新 (v2) 主题发送的属性和 RPC 订阅:v2/a/res/$request_idv2/av2/r/req/$request_idv2/r/res/$request_id。其中 $request_id 是整数请求标识符。", + "mqtt-send-ack-on-validation-exception": "在 PUBLISH 消息验证失败时发送 PUBACK", + "mqtt-send-ack-on-validation-exception-hint": "默认情况下,平台在消息验证失败时将关闭 MQTT 会话。启用后,平台将发送发布确认而不是关闭会话。", + "mqtt-protocol-version": "协议版本", + "snmp-add-mapping": "添加 SNMP 映射", + "snmp-mapping-not-configured": "未配置 OID 到时间序列/遥测的映射", + "snmp-timseries-or-attribute-name": "映射的时间序列/属性名称", + "snmp-timseries-or-attribute-type": "映射的时间序列/属性类型", + "snmp-method-pdu-type-get-request": "GetRequest", + "snmp-method-pdu-type-get-next-request": "GetNextRequest", + "snmp-oid": "OID", + "transport-device-payload-type-json": "JSON", + "transport-device-payload-type-proto": "Protobuf", + "mqtt-payload-type-required": "负载类型为必填项。", + "coap-device-type": "CoAP 设备类型", + "coap-device-payload-type": "CoAP 设备负载", + "coap-device-type-required": "CoAP 设备类型为必填项。", + "coap-device-type-default": "默认", + "coap-device-type-efento": "Efento NB-IoT", + "support-level-wildcards": "支持单级 [+] 和多级 [#] 通配符。", + "telemetry-topic-filter": "遥测主题过滤器", + "telemetry-topic-filter-required": "遥测主题过滤器为必填项。", + "attributes-topic-filter": "属性发布主题过滤器", + "attributes-subscribe-topic-filter": "属性订阅主题过滤器", + "attributes-topic-filter-required": "属性发布主题过滤器为必填项。", + "attributes-subscribe-topic-filter-required": "属性订阅主题为必填项", + "telemetry-proto-schema": "遥测 proto 模式", + "telemetry-proto-schema-required": "遥测 proto 模式为必填项。", + "attributes-proto-schema": "属性 proto 模式", + "attributes-proto-schema-required": "属性 proto 模式为必填项。", + "rpc-response-proto-schema": "RPC 响应 proto 模式", + "rpc-response-proto-schema-required": "RPC 响应 proto 模式为必填项。", + "rpc-response-topic-filter": "RPC 响应主题过滤器", + "rpc-response-topic-filter-required": "RPC 响应主题过滤器为必填项。", + "rpc-request-proto-schema": "RPC 请求 proto 模式", + "rpc-request-proto-schema-required": "RPC 请求 proto 模式为必填项。", + "rpc-request-proto-schema-hint": "RPC 请求消息应始终包含以下字段:string method = 1;int32 requestId = 2;以及任意数据类型的 params = 3。", + "not-valid-pattern-topic-filter": "无效的模式主题过滤器", + "not-valid-single-character": "单级通配符使用无效", + "not-valid-multi-character": "多级通配符使用无效", + "single-level-wildcards-hint": "[+] 适用于任何主题过滤器级别。例如:v1/devices/+/telemetry+/devices/+/attributes。", + "multi-level-wildcards-hint": "[#] 可以替代主题过滤器本身,且必须是主题的最后一个符号。例如:#v1/devices/me/#。", + "alarm-rules": "告警规则", + "alarm-rules-with-count": "告警规则 ({{count}})", + "no-alarm-rules": "未配置告警规则", + "add-alarm-rule": "添加告警规则", + "edit-alarm-rule": "编辑告警规则", + "alarm-type": "告警类型", + "alarm-type-required": "告警类型为必填项。", + "alarm-type-unique": "告警类型在设备配置告警规则中必须唯一。", + "alarm-type-max-length": "告警类型长度不能超过 256", + "create-alarm-pattern": "创建 {{alarmType}} 告警", + "create-alarm-rules": "创建告警规则", + "no-create-alarm-rules": "未配置创建条件", + "add-create-alarm-rule-prompt": "请添加创建告警规则", + "clear-alarm-rule": "清除告警规则", + "no-clear-alarm-rule": "未配置清除条件", + "add-create-alarm-rule": "添加创建条件", + "add-clear-alarm-rule": "添加清除条件", + "select-alarm-severity": "选择告警严重程度", + "alarm-severity-required": "告警严重程度为必填项。", + "condition-duration": "条件持续时间", + "condition-duration-value": "持续时间值", + "condition-duration-time-unit": "时间单位", + "condition-duration-value-range": "持续时间值应在 1 到 2147483647 的范围内。", + "condition-duration-value-pattern": "持续时间值应为整数。", + "condition-duration-value-required": "持续时间值为必填项。", + "condition-duration-time-unit-required": "时间单位为必填项。", + "advanced-settings": "高级设置", + "alarm-rule-additional-info": "附加信息", + "edit-alarm-rule-additional-info": "编辑附加信息", + "alarm-rule-additional-info-placeholder": "请在此提供您的备注和调整内容,以在告警详情的附加信息中显示", + "alarm-rule-additional-info-hint": "提示:使用 ${keyName} 替换告警规则条件中使用的属性或遥测键的值。", + "alarm-rule-mobile-dashboard": "移动端仪表板", + "alarm-rule-mobile-dashboard-hint": "移动应用使用此仪表板作为告警详情仪表板", + "alarm-rule-no-mobile-dashboard": "未选择仪表板", + "propagate-alarm": "将告警传播到关联实体", + "alarm-rule-relation-types-list": "关联类型", + "alarm-rule-relation-types-list-hint": "定义关联类型以过滤关联实体。如果未设置,告警将传播到所有关联实体。", + "propagate-alarm-to-owner": "将告警传播到实体所有者(客户或租户)", + "propagate-alarm-to-tenant": "将告警传播到租户", + "alarm-rule-condition": "告警规则条件", + "enter-alarm-rule-condition-prompt": "请添加告警规则条件", + "edit-alarm-rule-condition": "编辑告警规则条件", + "device-provisioning": "设备预配置", + "provision-strategy": "预配置策略", + "provision-strategy-required": "预配置策略为必填项。", + "provision-strategy-disabled": "已禁用", + "provision-strategy-created-new": "允许创建新设备", + "provision-strategy-check-pre-provisioned": "检查预配置设备", + "provision-device-key": "设备预配置密钥", + "provision-device-key-required": "设备预配置密钥为必填项。", + "copy-provision-key": "复制预配置密钥", + "provision-key-copied-message": "预配置密钥已复制到剪贴板", + "provision-device-secret": "设备预配置密码", + "provision-device-secret-required": "设备预配置密码为必填项。", + "copy-provision-secret": "复制预配置密码", + "provision-secret-copied-message": "预配置密码已复制到剪贴板", + "provision-strategy-x509": { + "certificate-chain": "X509 证书链", + "certificate-chain-hint": "X.509 证书策略用于在双向 TLS 通信中通过客户端证书预配置设备。", + "allow-create-new-devices": "创建新设备", + "allow-create-new-devices-hint": "如果选中,将创建新设备,并使用客户端证书作为设备凭据。", + "certificate-value": "PEM 格式证书", + "certificate-value-required": "PEM 格式证书为必填项", + "cn-regex-variable": "CN 正则表达式变量", + "cn-regex-variable-required": "CN 正则表达式变量为必填项", + "cn-regex-variable-hint": "需要从设备 X509 证书的通用名称中提取设备名称。" + }, + "condition": "条件", + "condition-type": "条件类型", + "condition-type-simple": "简单", + "condition-type-duration": "持续时间", + "condition-during": "持续 {{during}}", + "condition-during-dynamic": "持续 \"{{ attribute }}\" ({{during}})", + "condition-type-repeating": "重复", + "condition-type-required": "条件类型为必填项。", + "condition-repeating-value": "事件次数", + "condition-repeating-value-range": "事件次数应在 1 到 2147483647 的范围内。", + "condition-repeating-value-pattern": "事件次数应为整数。", + "condition-repeating-value-required": "事件次数为必填项。", + "condition-repeat-times": "重复 { count, plural, =1 {1 次} other {# 次} }", + "condition-repeat-times-dynamic": "重复 \"{ attribute }\" ({ count, plural, =1 {1 次} other {# 次} })", + "schedule-type": "调度器类型", + "schedule-type-required": "调度器类型为必填项。", + "schedule": "调度", + "edit-schedule": "编辑告警调度", + "schedule-any-time": "始终活动", + "schedule-specific-time": "在特定时间活动", + "schedule-custom": "自定义", + "schedule-day": { + "monday": "星期一", + "tuesday": "星期二", + "wednesday": "星期三", + "thursday": "星期四", + "friday": "星期五", + "saturday": "星期六", + "sunday": "星期日" + }, + "schedule-days": "天数", + "schedule-time": "时间", + "schedule-time-from": "从", + "schedule-time-to": "到", + "schedule-days-of-week-required": "至少应选择一个星期几。", + "create-device-profile": "创建新设备配置", + "import": "导入设备配置", + "export": "导出设备配置", + "export-failed-error": "无法导出设备配置:{{error}}", + "device-profile-file": "设备配置文件", + "invalid-device-profile-file-error": "无法导入设备配置:无效的设备配置数据结构。", + "power-saving-mode": "省电模式", + "power-saving-mode-type": { + "default": "使用设备配置省电模式", + "psm": "省电模式 (PSM)", + "drx": "非连续接收 (DRX)", + "edrx": "扩展非连续接收 (eDRX)" + }, + "edrx-cycle": "eDRX 周期", + "edrx-cycle-required": "eDRX 周期为必填项。", + "edrx-cycle-pattern": "eDRX 周期必须为正整数。", + "edrx-cycle-min": "eDRX 周期最小值为 {{ min }} 秒。", + "paging-transmission-window": "寻呼传输窗口", + "paging-transmission-window-required": "寻呼传输窗口为必填项。", + "paging-transmission-window-pattern": "寻呼传输窗口必须为正整数。", + "paging-transmission-window-min": "寻呼传输窗口最小值为 {{ min }} 秒。", + "psm-activity-timer": "PSM 活动定时器", + "psm-activity-timer-required": "PSM 活动定时器为必填项。", + "psm-activity-timer-pattern": "PSM 活动定时器必须为正整数。", + "psm-activity-timer-min": "PSM 活动定时器最小值为 {{ min }} 秒。", + "lwm2m": { + "object-list": "对象列表", + "object-list-empty": "未选择任何对象。", + "no-objects-found": "未找到对象。", + "no-objects-matching": "未找到与 '{{object}}' 匹配的对象。", + "model-tab": "LWM2M 模型", + "add-new-instances": "添加新实例", + "instances-list": "实例列表", + "instances-list-required": "实例列表为必填项。", + "instance-id-pattern": "实例 ID 必须为正整数。", + "instance-id-max": "实例 ID 最大值为 {{max}}。", + "instance": "实例", + "resource-label": "#ID 资源名称", + "observe-label": "观察", + "attribute-label": "属性", + "telemetry-label": "遥测", + "edit-observe-select": "要编辑观察,请选择遥测或属性", + "edit-attributes-select": "要编辑属性,请选择遥测或属性", + "no-attributes-set": "未设置属性", + "key-name": "键名称", + "key-name-required": "键名称为必填项", + "attribute-name": "属性名称", + "attribute-name-required": "属性名称为必填项。", + "attribute-value": "属性值", + "attribute-value-required": "属性值为必填项。", + "attribute-value-pattern": "属性值必须为正整数。", + "edit-attributes": "编辑属性:{{ name }}", + "view-attributes": "查看属性:{{ name }}", + "add-attribute": "添加属性", + "edit-attribute": "编辑属性", + "view-attribute": "查看属性", + "remove-attribute": "移除属性", + "delete-server-text": "请注意,确认后服务器配置将无法恢复。", + "delete-server-title": "确定要删除该服务器吗?", + "mode": "安全配置模式", + "bootstrap-tab": "Bootstrap", + "bootstrap-server-legend": "Bootstrap 服务器 (ShortId...)", + "lwm2m-server-legend": "LwM2M 服务器 (ShortId...)", + "server": "服务器", + "short-id": "服务器短 ID", + "short-id-tooltip": "服务器短 Id。用作关联服务器对象实例的链接。\n此标识符唯一标识为 LwM2M 客户端配置的每个 LwM2M 服务器。\n当 Bootstrap-Server 资源的值为 'false' 时,必须设置此资源。\nID:0 和 ID:65535 的值不得用于标识 LwM2M 服务器。", + "short-id-tooltip-bootstrap": "服务器短 Id。用作关联服务器对象实例的链接。\n此标识符唯一标识为 LwM2M 客户端配置的每个 LwM2M 服务器。\n当 Bootstrap-Server 资源的值为 'false' 时,必须设置此资源。", + "short-id-required": "服务器短 ID 为必填项。", + "short-id-range": "服务器短 ID 应在 {{ min }} 到 {{ max }} 的范围内。", + "short-id-pattern": "服务器短 ID 必须为正整数。", + "lifetime": "客户端注册生命周期", + "lifetime-required": "客户端注册生命周期为必填项。", + "lifetime-pattern": "客户端注册生命周期必须为正整数。", + "default-min-period": "两次通知之间的最小周期(秒)", + "default-min-period-tooltip": "在观察中未包含此参数时,LwM2M 客户端应使用的默认最小观察周期值。", + "default-min-period-required": "最小周期为必填项。", + "default-min-period-pattern": "最小周期必须为正整数。", + "notification-storing": "禁用或离线时的通知存储", + "binding": "绑定", + "binding-type": { + "u": "U:客户端可随时通过 UDP 绑定访问。", + "m": "M:客户端可随时通过 MQTT 绑定访问。", + "h": "H:客户端可随时通过 HTTP 绑定访问。", + "t": "T:客户端可随时通过 TCP 绑定访问。", + "s": "S:客户端可随时通过 SMS 绑定访问。", + "n": "N:客户端必须通过非 IP 绑定发送此类请求的响应(自 LWM2M 1.1 起支持)。", + "uq": "UQ:UDP 队列模式连接(自 LWM2M 1.1 起不再支持)", + "uqs": "UQS:UDP 和 SMS 连接同时活动;UDP 为队列模式,SMS 为标准模式(自 LWM2M 1.1 起不再支持)", + "tq": "TQ:TCP 队列模式连接(自 LWM2M 1.1 起不再支持)", + "tqs": "TQS:TCP 和 SMS 连接同时活动;TCP 为队列模式,SMS 为标准模式(自 LWM2M 1.1 起不再支持)", + "sq": "SQ:SMS 队列模式连接(自 LWM2M 1.1 起不再支持)" + }, + "binding-tooltip": "这是 LwM2M 服务器对象 - /1/x/7 中“binding”资源的列表。\n指示 LwM2M 客户端支持的绑定模式。\n此值应与设备对象 (/3/0/16) 中“Supported Binding and Modes”资源的值相同。\n虽然支持多种传输方式,但在整个传输会话期间只能使用一种传输绑定。\n例如,当同时支持 UDP 和 SMS 时,LwM2M 客户端和 LwM2M 服务器可以选择在整个传输会话期间通过 UDP 或 SMS 进行通信。", + "bootstrap-server": "Bootstrap 服务器", + "lwm2m-server": "LwM2M 服务器", + "include-bootstrap-server": "包含 Bootstrap 服务器更新", + "bootstrap-update-title": "您已配置了 Bootstrap 服务器。确定要排除更新吗?", + "bootstrap-update-text": "请注意,确认后 Bootstrap 服务器配置数据将无法恢复。", + "server-host": "主机", + "server-host-required": "主机为必填项。", + "server-port": "端口", + "server-port-required": "端口为必填项。", + "server-port-pattern": "端口必须为正整数。", + "server-port-range": "端口应在 1 到 65535 的范围内。", + "server-public-key": "服务器公钥", + "server-public-key-required": "服务器公钥为必填项。", + "client-hold-off-time": "Hold Off 时间", + "client-hold-off-time-required": "Hold Off 时间为必填项。", + "client-hold-off-time-pattern": "Hold Off 时间必须为正整数。", + "client-hold-off-time-tooltip": "Client Hold Off 时间仅用于 Bootstrap 服务器", + "account-after-timeout": "超时后的账户", + "account-after-timeout-required": "超时后的账户为必填项。", + "account-after-timeout-pattern": "超时后的账户必须为正整数。", + "account-after-timeout-tooltip": "Bootstrap 服务器在此资源给定的超时值后的账户。", + "server-type": "服务器类型", + "add-new-server-title": "添加新服务器配置", + "add-server-config": "添加服务器配置", + "add-lwm2m-server-config": "添加 LwM2M 服务器", + "no-config-servers": "未配置服务器", + "others-tab": "其他设置", + "ota-update": "OTA 更新", + "use-object-19-for-ota-update": "使用 Object 19 获取 OTA 文件元数据(校验和、大小、版本、名称)", + "use-object-19-for-ota-update-hint": "使用 Resource ObjectId = 19 进行 OTA 更新:FirmWare → InstanceId = 65534,SoftWare → InstanceId = 65535。数据格式为 Base64 包装的 JSON。此 JSON 包含 OTA 文件元数据(文件信息):\"Checksum\" (SHA256)。附加字段:\"Title\"(OTA 名称)、\"Version\"(OTA 版本)、\"File Name\"(在客户端存储 OTA 的文件名)、\"File Size\"(OTA 大小,以字节为单位)。", + "client-strategy": "连接时的客户端策略", + "client-strategy-label": "策略", + "client-strategy-only-observe": "初始连接后仅向客户端发送 Observe 请求", + "client-strategy-read-all": "注册后读取所有资源并向客户端发送 Observe 请求", + "fw-update": "固件更新", + "fw-update-strategy": "固件更新策略", + "fw-update-strategy-data": "使用 Object 19 和 Resource 0 (Data) 以二进制文件推送固件更新", + "fw-update-strategy-package": "使用 Object 5 和 Resource 0 (Package) 以二进制文件推送固件更新", + "fw-update-strategy-package-uri": "自动生成唯一 CoAP URL 下载软件包,并以 Object 5 和 Resource 1 (Package URI) 推送固件更新", + "sw-update": "软件更新", + "sw-update-strategy": "软件更新策略", + "sw-update-strategy-package": "使用 Object 9 和 Resource 2 (Package) 推送二进制文件", + "sw-update-strategy-package-uri": "自动生成唯一 CoAP URL 下载软件包,并使用 Object 9 和 Resource 3 (Package URI) 推送软件更新", + "fw-update-resource": "固件更新 CoAP 资源", + "fw-update-resource-required": "固件更新 CoAP 资源为必填项。", + "sw-update-resource": "软件更新 CoAP 资源", + "sw-update-resource-required": "软件更新 CoAP 资源为必填项。", + "config-json-tab": "Json 配置设备配置", + "attributes-name": { + "min-period": "最小周期", + "max-period": "最大周期", + "greater-than": "大于", + "less-than": "小于", + "step": "步长", + "min-evaluation-period": "最小评估周期", + "max-evaluation-period": "最大评估周期" + }, + "default-object-id": "默认对象版本(属性)", + "default-object-id-ver": { + "v1-0": "1.0", + "v1-1": "1.1", + "v1-2": "1.2" + }, + "observe-strategy": { + "observe-strategy": "观察策略", + "single": "单个", + "single-description": "每个资源一个 Observe 请求(精度更高,网络流量更大)", + "composite-all": "全部组合", + "composite-all-description": "所有资源使用单个 Composite Observe 请求进行观察(更高效,灵活性较低)", + "composite-by-object": "按对象组合", + "composite-by-object-description": "资源按对象类型分组,使用单独的 Composite Observe 请求进行观察(平衡方案)" + } + }, + "snmp": { + "add-communication-config": "添加通信配置", + "add-mapping": "添加映射", + "authentication-passphrase": "认证密码短语", + "authentication-passphrase-required": "认证密码短语为必填项。", + "authentication-protocol": "认证协议", + "authentication-protocol-required": "认证协议为必填项。", + "communication-configs": "通信配置", + "community": "Community 字符串", + "community-required": "Community 字符串为必填项。", + "context-name": "上下文名称", + "data-key": "数据键", + "data-key-required": "数据键为必填项。", + "data-type": "数据类型", + "data-type-required": "数据类型为必填项。", + "engine-id": "Engine ID", + "host": "主机", + "host-required": "主机为必填项。", + "oid": "OID", + "oid-pattern": "OID 格式无效。", + "oid-required": "OID 为必填项。", + "please-add-communication-config": "请添加通信配置", + "please-add-mapping-config": "请添加映射配置", + "port": "端口", + "port-format": "端口格式无效。", + "port-required": "端口为必填项。", + "privacy-passphrase": "隐私密码短语", + "privacy-passphrase-required": "隐私密码短语为必填项。", + "privacy-protocol": "隐私协议", + "privacy-protocol-required": "隐私协议为必填项。", + "protocol-version": "协议版本", + "protocol-version-required": "协议版本为必填项。", + "querying-frequency": "查询频率(毫秒)", + "querying-frequency-invalid-format": "查询频率必须为正整数。", + "querying-frequency-required": "查询频率为必填项。", + "retries": "重试次数", + "retries-invalid-format": "重试次数必须为正整数。", + "retries-required": "重试次数为必填项。", + "scope": "范围", + "scope-required": "范围为必填项。", + "security-name": "安全名称", + "security-name-required": "安全名称为必填项。", + "timeout-ms": "超时(毫秒)", + "timeout-ms-invalid-format": "超时必须为正整数。", + "timeout-ms-required": "超时为必填项。", + "user-name": "用户名", + "user-name-required": "用户名为必填项。" + } + }, + "dialog": { + "close": "关闭对话框", + "error-message-title": "错误消息:", + "error-details-title": "错误详情" + }, + "direction": { + "column": "列", + "row": "行" + }, + "edge": { + "edge": "Edge", + "edge-instances": "Edge 实例", + "instances": "实例", + "edge-file": "Edge 文件", + "name-max-length": "名称长度不能超过 256", + "label-max-length": "标签长度不能超过 256", + "type-max-length": "类型长度不能超过 256", + "management": "Edge 管理", + "no-edges-matching": "未找到与 '{{entity}}' 匹配的 Edge。", + "add": "添加 Edge", + "no-edges-text": "未找到 Edge", + "edge-details": "Edge 详情", + "add-edge-text": "添加新 Edge", + "delete": "删除 Edge", + "delete-edge-title": "确定要删除 Edge '{{edgeName}}' 吗?", + "delete-edge-text": "请注意,确认后 Edge 及所有相关数据将无法恢复。", + "delete-edges-title": "确定要删除 { count, plural, =1 {1 个 Edge} other {# 个 Edge} } 吗?", + "delete-edges-text": "请注意,确认后所有选中的 Edge 将被移除,所有相关数据将无法恢复。", + "name": "名称", + "name-starts-with": "Edge 名称开头为", + "name-required": "名称为必填项。", + "description": "描述", + "details": "详情", + "events": "事件", + "copy-id": "复制 Edge Id", + "id-copied-message": "Edge Id 已复制到剪贴板", + "sync": "同步 Edge", + "edge-required": "Edge 为必填项", + "edge-type": "Edge 类型", + "edge-type-required": "Edge 类型为必填项。", + "event-action": "事件操作", + "entity-id": "实体 ID", + "select-edge-type": "选择 Edge 类型", + "assign-to-customer": "分配给客户", + "assign-to-customer-text": "请选择要分配 Edge 的客户", + "assign-edge-to-customer": "将 Edge 分配给客户", + "assign-edge-to-customer-text": "请选择要分配给客户的 Edge", + "assignedToCustomer": "已分配给客户", + "edge-public": "Edge 为公开", + "assigned-to-customer": "已分配给:{{customerTitle}}", + "unassign-from-customer": "取消分配客户", + "unassign-edge-title": "确定要取消分配 Edge '{{edgeName}}' 吗?", + "unassign-edge-text": "确认后,Edge 将被取消分配,客户将无法访问。", + "unassign-edges-title": "确定要取消分配 { count, plural, =1 {1 个 Edge} other {# 个 Edge} } 吗?", + "unassign-edges-text": "确认后,所有选中的 Edge 将被取消分配,客户将无法访问。", + "make-public": "将 Edge 设为公开", + "make-public-edge-title": "确定要将 Edge '{{edgeName}}' 设为公开吗?", + "make-public-edge-text": "确认后,Edge 及其所有数据将设为公开并可被其他人访问。", + "make-private": "将 Edge 设为私有", + "public": "公开", + "make-private-edge-title": "确定要将 Edge '{{edgeName}}' 设为私有吗?", + "make-private-edge-text": "确认后,Edge 及其所有数据将设为私有,其他人将无法访问。", + "import": "导入 Edge", + "install-connect-instructions": "安装和连接说明", + "install-connect-instructions-edge-created": "Edge 已创建!请查看安装和连接说明", + "loading-edge-instructions": "正在加载 Edge 说明...", + "label": "标签", + "load-entity-error": "加载数据失败。实体已被删除。", + "assign-new-edge": "分配新 Edge", + "unassign-from-edge": "取消分配 Edge", + "edge-key": "Edge 密钥", + "copy-edge-key": "复制 Edge 密钥", + "edge-key-copied-message": "Edge 密钥已复制到剪贴板", + "edge-secret": "Edge 密码", + "copy-edge-secret": "复制 Edge 密码", + "edge-secret-copied-message": "Edge 密码已复制到剪贴板", + "manage-assets": "管理资产", + "manage-devices": "管理设备", + "manage-entity-views": "管理实体视图", + "manage-dashboards": "管理仪表板", + "manage-rulechains": "管理规则链", + "assets": "Edge 资产", + "devices": "Edge 设备", + "entity-views": "Edge 实体视图", + "dashboard": "Edge 仪表板", + "dashboards": "Edge 仪表板", + "rulechain-templates": "规则链模板", + "edge-rulechain-templates": "Edge 规则链模板", + "rulechains": "Edge 规则链", + "search": "搜索 Edge", + "selected-edges": "{ count, plural, =1 {1 个 Edge} other {# 个 Edge} }已选择", + "any-edge": "任意 Edge", + "no-edge-types-matching": "未找到与 '{{entitySubtype}}' 匹配的 Edge 类型。", + "edge-type-list-empty": "未选择 Edge 类型。", + "edge-types": "Edge 类型", + "enter-edge-type": "输入 Edge 类型", + "deployed": "已部署", + "pending": "待处理", + "downlinks": "下行链路", + "no-downlinks-prompt": "未找到下行链路", + "sync-process-started-successfully": "同步过程已成功启动!", + "missing-related-rule-chains-title": "Edge 缺少关联的规则链", + "missing-related-rule-chains-text": "分配给 Edge 的规则链使用了将消息转发到未分配给此 Edge 的规则链的规则节点。

缺少的规则链列表:
{{missingRuleChains}}", + "widget-datasource-error": "此部件仅支持 Edge 实体数据源", + "upgrade-instructions": "升级说明", + "connected": "已连接", + "disconnected": "已断开" + }, + "edge-event": { + "type-dashboard": "仪表板", + "type-asset": "资产", + "type-device": "设备", + "type-device-profile": "设备配置", + "type-asset-profile": "资产配置", + "type-entity-view": "实体视图", + "type-alarm": "告警", + "type-rule-chain": "规则链", + "type-rule-chain-metadata": "规则链元数据", + "type-edge": "Edge", + "type-user": "用户", + "type-tenant": "租户", + "type-tenant-profile": "租户配置", + "type-customer": "客户", + "type-relation": "关联", + "type-widgets-bundle": "部件包", + "type-widgets-type": "部件类型", + "type-admin-settings": "管理员设置", + "type-ota-package": "OTA 软件包", + "type-queue": "队列", + "action-type-added": "已添加", + "action-type-deleted": "已删除", + "action-type-updated": "已更新", + "action-type-post-attributes": "发布属性", + "action-type-attributes-updated": "属性已更新", + "action-type-attributes-deleted": "属性已删除", + "action-type-timeseries-updated": "时间序列已更新", + "action-type-credentials-updated": "凭据已更新", + "action-type-assigned-to-customer": "已分配给客户", + "action-type-unassigned-from-customer": "已取消分配客户", + "action-type-relation-add-or-update": "关联添加或更新", + "action-type-relation-deleted": "关联已删除", + "action-type-rpc-call": "RPC 调用", + "action-type-alarm-ack": "告警确认", + "action-type-alarm-clear": "告警清除", + "action-type-alarm-assigned": "告警已分配", + "action-type-alarm-unassigned": "告警已取消分配", + "action-type-assigned-to-edge": "已分配到 Edge", + "action-type-unassigned-from-edge": "已取消分配 Edge", + "action-type-credentials-request": "凭据请求", + "action-type-entity-merge-request": "实体合并请求" + }, + "error": { + "unable-to-connect": "无法连接到服务器!请检查您的网络连接。", + "unhandled-error-code": "未处理的错误代码:{{errorCode}}", + "unknown-error": "未知错误" + }, + "entity": { + "entity": "实体", + "entities": "实体", + "entities-count": "实体数量", + "alarms-count": "告警数量", + "aliases": "实体别名", + "aliases-short": "别名", + "entity-alias": "实体别名", + "unable-delete-entity-alias-title": "无法删除实体别名", + "unable-delete-entity-alias-text": "实体别名 '{{entityAlias}}' 无法删除,因为它被以下部件使用:
{{widgetsList}}", + "duplicate-alias-error": "发现重复别名 '{{alias}}'。
实体别名在仪表板中必须唯一。", + "missing-entity-filter-error": "别名 '{{alias}}' 缺少过滤器。", + "configure-alias": "配置 '{{alias}}' 别名", + "alias": "别名", + "alias-required": "实体别名为必填项。", + "remove-alias": "移除实体别名", + "add-alias": "添加实体别名", + "edit-alias": "编辑实体别名", + "entity-list": "实体列表", + "entity-type": "实体类型", + "entity-types": "实体类型", + "entity-type-list": "实体类型列表", + "any-entity": "任意实体", + "add-entity-type": "添加实体类型", + "enter-entity-type": "输入实体类型", + "no-entities-matching": "未找到与 '{{entity}}' 匹配的实体。", + "no-entities-text": "未找到实体", + "no-entity-types-matching": "未找到与 '{{entityType}}' 匹配的实体类型。", + "name-starts-with": "名称表达式", + "help-text": "根据需要使用 '%':'%entity_name_contains%'、'%entity_name_ends'、'entity_starts_with%'。", + "use-entity-name-filter": "使用过滤器", + "entity-list-empty": "未选择实体。", + "entity-type-list-required": "至少应选择一种实体类型。", + "entity-name-filter-required": "实体名称过滤器为必填项。", + "entity-name-filter-no-entity-matched": "未找到以 '{{entity}}' 开头的实体。", + "all-subtypes": "全部", + "select-entities": "选择实体", + "no-aliases-found": "未找到别名。", + "no-alias-matching": "未找到 '{{alias}}'。", + "create-new-alias": "创建新别名!", + "create-new": "创建新的", + "key": "键", + "key-name": "键名称", + "no-keys-found": "未找到键。", + "no-key-matching": "未找到 '{{key}}'。", + "create-new-key": "创建新键!", + "type": "类型", + "type-required": "实体类型为必填项。", + "type-device": "设备", + "type-devices": "设备", + "list-of-devices": "{ count, plural, =1 {1 个设备} other {# 个设备列表} }", + "device-name-starts-with": "名称以 '{{prefix}}' 开头的设备", + "type-device-profile": "设备配置", + "type-device-profiles": "设备配置", + "clear-selected-profiles": "清除已选配置", + "list-of-device-profiles": "{ count, plural, =1 {1 个设备配置} other {# 个设备配置列表} }", + "device-profile-name-starts-with": "名称以 '{{prefix}}' 开头的设备配置", + "type-asset-profile": "资产配置", + "type-asset-profiles": "资产配置", + "list-of-asset-profiles": "{ count, plural, =1 {1 个资产配置} other {# 个资产配置列表} }", + "asset-profile-name-starts-with": "名称以 '{{prefix}}' 开头的资产配置", + "type-asset": "资产", + "type-assets": "资产", + "list-of-assets": "{ count, plural, =1 {1 个资产} other {# 个资产列表} }", + "asset-name-starts-with": "名称以 '{{prefix}}' 开头的资产", + "type-entity-view": "实体视图", + "type-entity-views": "实体视图", + "list-of-entity-views": "{ count, plural, =1 {1 个实体视图} other {# 个实体视图列表} }", + "entity-view-name-starts-with": "名称以 '{{prefix}}' 开头的实体视图", + "type-rule": "规则", + "type-rules": "规则", + "list-of-rules": "{ count, plural, =1 {1 条规则} other {# 条规则列表} }", + "rule-name-starts-with": "名称以 '{{prefix}}' 开头的规则", + "type-plugin": "插件", + "type-plugins": "插件", + "list-of-plugins": "{ count, plural, =1 {1 个插件} other {# 个插件列表} }", + "plugin-name-starts-with": "名称以 '{{prefix}}' 开头的插件", + "type-tenant": "租户", + "type-tenants": "租户", + "list-of-tenants": "{ count, plural, =1 {1 个租户} other {# 个租户列表} }", + "tenant-name-starts-with": "名称以 '{{prefix}}' 开头的租户", + "type-tenant-profile": "租户配置", + "type-tenant-profiles": "租户配置", + "list-of-tenant-profiles": "{ count, plural, =1 {1 个租户配置} other {# 个租户配置列表} }", + "tenant-profile-name-starts-with": "名称以 '{{prefix}}' 开头的租户配置", + "type-customer": "客户", + "type-customers": "客户", + "list-of-customers": "{ count, plural, =1 {1 个客户} other {# 个客户列表} }", + "customer-name-starts-with": "名称以 '{{prefix}}' 开头的客户", + "type-user": "用户", + "type-users": "用户", + "list-of-users": "{ count, plural, =1 {1 个用户} other {# 个用户列表} }", + "user-name-starts-with": "名称以 '{{prefix}}' 开头的用户", + "type-dashboard": "仪表板", + "type-dashboards": "仪表板", + "list-of-dashboards": "{ count, plural, =1 {1 个仪表板} other {# 个仪表板列表} }", + "dashboard-name-starts-with": "名称以 '{{prefix}}' 开头的仪表板", + "type-alarm": "告警", + "type-alarms": "告警", + "list-of-alarms": "{ count, plural, =1 {1 个告警} other {# 个告警列表} }", + "alarm-name-starts-with": "名称以 '{{prefix}}' 开头的告警", + "type-rulechain": "规则链", + "type-rulechains": "规则链", + "list-of-rulechains": "{ count, plural, =1 {1 条规则链} other {# 条规则链列表} }", + "rulechain-name-starts-with": "名称以 '{{prefix}}' 开头的规则链", + "type-rulenode": "规则节点", + "type-rulenodes": "规则节点", + "list-of-rulenodes": "{ count, plural, =1 {1 个规则节点} other {# 个规则节点列表} }", + "rulenode-name-starts-with": "名称以 '{{prefix}}' 开头的规则节点", + "type-current-customer": "当前客户", + "type-current-tenant": "当前租户", + "type-current-user": "当前用户", + "type-current-user-owner": "当前用户所有者", + "type-calculated-field": "计算字段", + "type-calculated-fields": "计算字段", + "type-ai-model": "AI 模型", + "type-ai-models": "AI 模型", + "type-widgets-bundle": "部件包", + "type-widgets-bundles": "部件包", + "list-of-widgets-bundles": "{ count, plural, =1 {1 个部件包} other {# 个部件包列表} }", + "type-widget": "部件", + "type-widgets": "部件", + "list-of-widgets": "{ count, plural, =1 {1 个部件} other {# 个部件列表} }", + "search": "搜索实体", + "selected-entities": "{ count, plural, =1 {1 个实体} other {# 个实体} }已选择", + "entity-name": "实体名称", + "entity-label": "实体标签", + "details": "实体详情", + "no-entities-prompt": "未找到实体", + "no-data": "无数据可显示", + "columns-to-display": "显示列", + "type-api-usage-state": "API 使用状态", + "type-edge": "Edge", + "type-edges": "Edge", + "list-of-edges": "{ count, plural, =1 {1 个 Edge} other {# 个 Edge 列表} }", + "edge-name-starts-with": "名称以 '{{prefix}}' 开头的 Edge", + "version-conflict": { + "message": "您要覆盖现有版本还是放弃更改并加载最新版本?", + "link": "您可以使用此链接下载您的 {{entityType}} 版本", + "overwrite": "覆盖版本", + "discard": "放弃更改" + }, + "type-tb-resource": "资源", + "type-tb-resources": "资源", + "list-of-tb-resources": "{ count, plural, =1 {1 个资源} other {# 个资源列表} }", + "type-ota-package": "OTA 软件包", + "type-ota-packages": "OTA 软件包", + "list-of-ota-packages": "{ count, plural, =1 {1 个 OTA 软件包} other {# 个 OTA 软件包列表} }", + "type-rpc": "RPC", + "type-queue": "队列", + "type-queue-stats": "队列统计", + "type-queues-stats": "队列统计", + "type-notification": "通知", + "type-notification-rule": "通知规则", + "type-notification-rules": "通知规则", + "list-of-notification-rules": "{ count, plural, =1 {1 个通知规则} other {# 个通知规则列表} }", + "type-notification-target": "通知接收者", + "type-notification-targets": "通知接收者", + "list-of-notification-targets": "{ count, plural, =1 {1 个通知接收者} other {# 个通知接收者列表} }", + "type-notification-request": "通知请求", + "type-notification-template": "通知模板", + "type-notification-templates": "通知模板", + "list-of-notification-templates": "{ count, plural, =1 {1 个通知模板} other {# 个通知模板列表} }", + "link": "链接", + "type-oauth2-client": "OAuth 2.0 客户端", + "type-oauth2-clients": "OAuth 2.0 客户端", + "list-of-oauth2-clients": "{ count, plural, =1 {1 个 OAuth 2.0 客户端} other {# 个 OAuth 2.0 客户端列表} }", + "type-domain": "域名", + "type-domains": "域名", + "list-of-domains": "{ count, plural, =1 {1 个域名} other {# 个域名列表} }", + "type-mobile-app": "移动应用", + "type-mobile-apps": "移动应用", + "list-of-mobile-apps": "{ count, plural, =1 {1 个移动应用} other {# 个移动应用列表} }", + "type-mobile-app-bundle": "移动包", + "type-mobile-app-bundles": "移动包", + "list-of-mobile-app-bundles": "{ count, plural, =1 {1 个移动包} other {# 个移动包列表} }" + }, + "entity-field": { + "created-time": "创建时间", + "name": "名称", + "type": "类型", + "first-name": "名", + "last-name": "姓", + "email": "Email", + "title": "标题", + "country": "国家", + "state": "省/州", + "city": "城市", + "address": "地址", + "address2": "地址 2", + "zip": "邮编", + "phone": "电话", + "label": "标签", + "queue-name": "队列名称", + "service-id": "服务 Id", + "owner-name": "所有者名称", + "owner-type": "所有者类型" + }, + "entity-view": { + "entity-view": "实体视图", + "entity-view-required": "实体视图为必填项。", + "entity-views": "实体视图", + "management": "实体视图管理", + "view-entity-views": "查看实体视图", + "entity-view-alias": "实体视图别名", + "aliases": "实体视图别名", + "no-alias-matching": "未找到 '{{alias}}'。", + "no-aliases-found": "未找到别名。", + "no-key-matching": "未找到 '{{key}}'。", + "no-keys-found": "未找到键。", + "create-new-alias": "创建新别名!", + "create-new-key": "创建新键!", + "duplicate-alias-error": "发现重复别名 '{{alias}}'。
实体视图别名在仪表板中必须唯一。", + "configure-alias": "配置 '{{alias}}' 别名", + "no-entity-views-matching": "未找到与 '{{entity}}' 匹配的实体视图。", + "public": "公开", + "alias": "别名", + "alias-required": "实体视图别名为必填项。", + "remove-alias": "移除实体视图别名", + "add-alias": "添加实体视图别名", + "name-starts-with": "实体视图名称表达式", + "help-text": "根据需要使用 '%':'%entity-view_name_contains%'、'%entity-view_name_ends'、'entity-view_starts_with%'。", + "entity-view-list": "实体视图列表", + "use-entity-view-name-filter": "使用过滤器", + "entity-view-list-empty": "未选择实体视图。", + "entity-view-name-filter-required": "实体视图名称过滤器为必填项。", + "entity-view-name-filter-no-entity-view-matched": "未找到以 '{{entityView}}' 开头的实体视图。", + "add": "添加实体视图", + "entity-view-public": "实体视图为公开", + "assign-to-customer": "分配给客户", + "assign-entity-view-to-customer": "将实体视图分配给客户", + "assign-entity-view-to-customer-text": "请选择要分配给客户的实体视图", + "no-entity-views-text": "未找到实体视图", + "assign-to-customer-text": "请选择要分配实体视图的客户", + "entity-view-details": "实体视图详情", + "add-entity-view-text": "添加新实体视图", + "delete": "删除实体视图", + "assign-entity-views": "分配实体视图", + "assign-entity-views-text": "将 { count, plural, =1 {1 个实体视图} other {# 个实体视图} } 分配给客户", + "delete-entity-views": "删除实体视图", + "make-public": "将实体视图设为公开", + "make-private": "将实体视图设为私有", + "unassign-from-customer": "取消分配客户", + "unassign-entity-views": "取消分配实体视图", + "unassign-entity-views-action-title": "取消分配 { count, plural, =1 {1 个实体视图} other {# 个实体视图} }", + "assign-new-entity-view": "分配新实体视图", + "delete-entity-view-title": "确定要删除实体视图 '{{entityViewName}}' 吗?", + "delete-entity-view-text": "请注意,确认后实体视图及所有相关数据将无法恢复。", + "delete-entity-views-title": "确定要删除 { count, plural, =1 {1 个实体视图} other {# 个实体视图} } 吗?", + "delete-entity-views-action-title": "删除 { count, plural, =1 {1 个实体视图} other {# 个实体视图} }", + "delete-entity-views-text": "请注意,确认后所有选中的实体视图将被移除,所有相关数据将无法恢复。", + "make-public-entity-view-title": "确定要将实体视图 '{{entityViewName}}' 设为公开吗?", + "make-public-entity-view-text": "确认后,实体视图及其所有数据将设为公开并可被其他人访问。", + "make-private-entity-view-title": "确定要将实体视图 '{{entityViewName}}' 设为私有吗?", + "make-private-entity-view-text": "确认后,实体视图及其所有数据将设为私有,其他人将无法访问。", + "unassign-entity-view-title": "确定要取消分配实体视图 '{{entityViewName}}' 吗?", + "unassign-entity-view-text": "确认后,实体视图将被取消分配,客户将无法访问。", + "unassign-entity-view": "取消分配实体视图", + "unassign-entity-views-title": "确定要取消分配 { count, plural, =1 {1 个实体视图} other {# 个实体视图} } 吗?", + "unassign-entity-views-text": "确认后,所有选中的实体视图将被取消分配,客户将无法访问。", + "entity-view-type": "实体视图类型", + "entity-view-type-required": "实体视图类型为必填项。", + "select-entity-view-type": "选择实体视图类型", + "enter-entity-view-type": "输入实体视图类型", + "any-entity-view": "任意实体视图", + "no-entity-view-types-matching": "未找到与 '{{entitySubtype}}' 匹配的实体视图类型。", + "entity-view-type-list-empty": "未选择实体视图类型。", + "entity-view-types": "实体视图类型", + "created-time": "创建时间", + "name": "名称", + "name-required": "名称为必填项。", + "name-max-length": "名称长度不能超过 256", + "type-max-length": "实体视图类型长度不能超过 256", + "description": "描述", + "events": "事件", + "details": "详情", + "copyId": "复制实体视图 Id", + "idCopiedMessage": "实体视图 Id 已复制到剪贴板", + "assignedToCustomer": "已分配给客户", + "unable-entity-view-device-alias-title": "无法删除实体视图别名", + "unable-entity-view-device-alias-text": "设备别名 '{{entityViewAlias}}' 无法删除,因为它被以下部件使用:
{{widgetsList}}", + "select-entity-view": "选择实体视图", + "start-ts": "开始时间", + "end-ts": "结束时间", + "date-limits": "日期限制", + "client-attributes": "客户端属性", + "shared-attributes": "共享属性", + "server-attributes": "服务端属性", + "timeseries": "时间序列", + "client-attributes-placeholder": "客户端属性", + "shared-attributes-placeholder": "共享属性", + "server-attributes-placeholder": "服务端属性", + "timeseries-placeholder": "时间序列", + "target-entity": "目标实体", + "attributes-propagation": "属性传播", + "attributes-propagation-hint": "实体视图将在每次保存或更新此实体视图时自动从目标实体复制指定的属性。出于性能考虑,每次属性更改时不会自动将目标实体属性传播到实体视图。您可以通过在规则链中配置“copy to view”规则节点并将“Post attributes”和“Attributes Updated”消息链接到新规则节点来启用自动传播。", + "timeseries-data": "时间序列数据", + "timeseries-data-hint": "配置实体视图可访问的目标实体时间序列数据键。此时间序列数据为只读。", + "search": "搜索实体视图", + "selected-entity-views": "{ count, plural, =1 {1 个实体视图} other {# 个实体视图} }已选择", + "assign-entity-view-to-edge": "将实体视图分配到 Edge", + "assign-entity-view-to-edge-text": "请选择要分配到 Edge 的实体视图", + "unassign-entity-view-from-edge-title": "确定要取消分配实体视图 '{{entityViewName}}' 吗?", + "unassign-entity-view-from-edge-text": "确认后,实体视图将被取消分配,Edge 将无法访问。", + "unassign-entity-views-from-edge-action-title": "取消分配 { count, plural, =1 {1 个实体视图} other {# 个实体视图} }", + "unassign-entity-view-from-edge": "取消分配实体视图", + "unassign-entity-views-from-edge-title": "确定要取消分配 { count, plural, =1 {1 个实体视图} other {# 个实体视图} } 吗?", + "unassign-entity-views-from-edge-text": "确认后,所有选中的实体视图将被取消分配,Edge 将无法访问。" + }, + "event": { + "event-type": "事件类型", + "events-filter": "事件过滤器", + "clean-events": "清除事件", + "type-error": "错误", + "type-lc-event": "生命周期事件", + "type-stats": "统计", + "type-debug-rule-node": "调试", + "type-debug-rule-chain": "调试", + "type-debug-calculated-field": "调试", + "arguments": "参数", + "result": "结果", + "no-events-prompt": "未找到事件", + "error": "错误", + "alarm": "告警", + "event-time": "事件时间", + "server": "服务器", + "body": "消息体", + "method": "方法", + "type": "类型", + "metadata": "元数据", + "message": "消息", + "message-id": "消息 Id", + "copy-message-id": "复制消息 Id", + "message-type": "消息类型", + "data-type": "数据类型", + "relation-type": "关联类型", + "data": "数据", + "event": "事件", + "status": "状态", + "success": "成功", + "failed": "失败", + "messages-processed": "已处理消息数", + "max-messages-processed": "最大已处理消息数", + "min-messages-processed": "最小已处理消息数", + "errors-occurred": "发生的错误数", + "max-errors-occurred": "最大错误数", + "min-errors-occurred": "最小错误数", + "min-value": "最小值为 0。", + "all-events": "全部", + "has-error": "有错误", + "entity-id": "实体 Id", + "copy-entity-id": "复制实体 Id", + "entity-type": "实体类型", + "clear-filter": "清除过滤器", + "clear-request-title": "清除所有事件", + "clear-request-text": "确定要清除所有事件吗?", + "started": "已启动", + "updated": "已更新", + "stopped": "已停止" + }, + "extension": { + "extensions": "扩展", + "selected-extensions": "{ count, plural, =1 {1 个扩展} other {# 个扩展} }已选择", + "type": "类型", + "key": "键", + "value": "值", + "id": "Id", + "extension-id": "扩展 Id", + "extension-type": "扩展类型", + "transformer-json": "JSON *", + "unique-id-required": "当前扩展 Id 已存在。", + "delete": "删除扩展", + "add": "添加扩展", + "edit": "编辑扩展", + "delete-extension-title": "确定要删除扩展 '{{extensionId}}' 吗?", + "delete-extension-text": "请注意,确认后扩展及所有相关数据将无法恢复。", + "delete-extensions-title": "确定要删除 { count, plural, =1 {1 个扩展} other {# 个扩展} } 吗?", + "delete-extensions-text": "请注意,确认后所有选中的扩展将被移除。", + "converters": "转换器", + "converter-id": "转换器 Id", + "configuration": "配置", + "converter-configurations": "转换器配置", + "token": "安全 Token", + "add-converter": "添加转换器", + "add-config": "添加转换器配置", + "device-name-expression": "设备名称表达式", + "device-type-expression": "设备类型表达式", + "custom": "自定义", + "to-double": "转为 Double", + "transformer": "转换器", + "json-required": "转换器 JSON 为必填项。", + "json-parse": "无法解析转换器 JSON。", + "attributes": "属性", + "add-attribute": "添加属性", + "add-map": "添加映射元素", + "timeseries": "时间序列", + "add-timeseries": "添加时间序列", + "field-required": "字段为必填项", + "brokers": "代理", + "add-broker": "添加代理", + "host": "主机", + "port": "端口", + "port-range": "端口应在 1 到 65535 的范围内。", + "ssl": "SSL", + "credentials": "凭据", + "username": "用户名", + "password": "密码", + "retry-interval": "重试间隔(毫秒)", + "anonymous": "匿名", + "basic": "基本", + "pem": "PEM", + "ca-cert": "CA 证书文件 *", + "private-key": "私钥文件 *", + "cert": "证书文件 *", + "no-file": "未选择文件。", + "drop-file": "拖放文件或点击选择要上传的文件。", + "mapping": "映射", + "topic-filter": "主题过滤器", + "converter-type": "转换器类型", + "converter-json": "Json", + "json-name-expression": "设备名称 JSON 表达式", + "topic-name-expression": "设备名称主题表达式", + "json-type-expression": "设备类型 JSON 表达式", + "topic-type-expression": "设备类型主题表达式", + "attribute-key-expression": "属性键表达式", + "attr-json-key-expression": "属性键 JSON 表达式", + "attr-topic-key-expression": "属性键主题表达式", + "request-id-expression": "请求 ID 表达式", + "request-id-json-expression": "请求 ID JSON 表达式", + "request-id-topic-expression": "请求 ID 主题表达式", + "response-topic-expression": "响应主题表达式", + "value-expression": "值表达式", + "topic": "主题", + "timeout": "超时(毫秒)", + "converter-json-required": "转换器 JSON 为必填项。", + "converter-json-parse": "无法解析转换器 JSON。", + "filter-expression": "过滤器表达式", + "connect-requests": "连接请求", + "add-connect-request": "添加连接请求", + "disconnect-requests": "断开连接请求", + "add-disconnect-request": "添加断开连接请求", + "attribute-requests": "属性请求", + "add-attribute-request": "添加属性请求", + "attribute-updates": "属性更新", + "add-attribute-update": "添加属性更新", + "server-side-rpc": "服务端 RPC", + "add-server-side-rpc-request": "添加服务端 RPC 请求", + "device-name-filter": "设备名称过滤器", + "attribute-filter": "属性过滤器", + "method-filter": "方法过滤器", + "request-topic-expression": "请求主题表达式", + "response-timeout": "响应超时(毫秒)", + "topic-expression": "主题表达式", + "client-scope": "客户端范围", + "add-device": "添加设备", + "opc-server": "服务器", + "opc-add-server": "添加服务器", + "opc-add-server-prompt": "请添加服务器", + "opc-application-name": "应用名称", + "opc-application-uri": "应用 URI", + "opc-scan-period-in-seconds": "扫描周期(秒)", + "opc-security": "安全", + "opc-identity": "身份", + "opc-keystore": "密钥库", + "opc-type": "类型", + "opc-keystore-type": "类型", + "opc-keystore-location": "位置 *", + "opc-keystore-password": "密码", + "opc-keystore-alias": "别名", + "opc-keystore-key-password": "密钥密码", + "opc-device-node-pattern": "设备节点模式", + "opc-device-name-pattern": "设备名称模式", + "modbus-server": "服务器/从机", + "modbus-add-server": "添加服务器/从机", + "modbus-add-server-prompt": "请添加服务器/从机", + "modbus-transport": "传输", + "modbus-tcp-reconnect": "自动重连", + "modbus-rtu-over-tcp": "RTU over TCP", + "modbus-port-name": "串口名称", + "modbus-encoding": "编码", + "modbus-parity": "校验", + "modbus-baudrate": "波特率", + "modbus-databits": "数据位", + "modbus-stopbits": "停止位", + "modbus-databits-range": "数据位应在 7 到 8 的范围内。", + "modbus-stopbits-range": "停止位应在 1 到 2 的范围内。", + "modbus-unit-id": "Unit ID", + "modbus-unit-id-range": "Unit ID 应在 1 到 247 的范围内。", + "modbus-device-name": "设备名称", + "modbus-poll-period": "轮询周期(毫秒)", + "modbus-attributes-poll-period": "属性轮询周期(毫秒)", + "modbus-timeseries-poll-period": "时间序列轮询周期(毫秒)", + "modbus-poll-period-range": "轮询周期应为正数值。", + "modbus-tag": "标签", + "modbus-function": "功能", + "modbus-register-address": "寄存器地址", + "modbus-register-address-range": "寄存器地址应在 0 到 65535 的范围内。", + "modbus-register-bit-index": "位索引", + "modbus-register-bit-index-range": "位索引应在 0 到 15 的范围内。", + "modbus-register-count": "寄存器数量", + "modbus-register-count-range": "寄存器数量应为正数值。", + "modbus-byte-order": "字节序", + "sync": { + "status": "状态", + "sync": "已同步", + "not-sync": "未同步", + "last-sync-time": "最后同步时间", + "not-available": "不可用" + }, + "export-extensions-configuration": "导出扩展配置", + "import-extensions-configuration": "导入扩展配置", + "import-extensions": "导入扩展", + "import-extension": "导入扩展", + "export-extension": "导出扩展", + "file": "扩展文件", + "invalid-file-error": "无效的扩展文件" + }, + "feature": { + "advanced-features": "高级功能" + }, + "filter": { + "add": "添加过滤器", + "edit": "编辑过滤器", + "name": "过滤器名称", + "name-required": "过滤器名称为必填项。", + "duplicate-filter": "已存在同名过滤器。", + "filters": "过滤器", + "unable-delete-filter-title": "无法删除过滤器", + "unable-delete-filter-text": "过滤器“{{filter}}”无法删除,因为它被以下部件使用:
{{widgetsList}}", + "duplicate-filter-error": "发现重复过滤器“{{filter}}”。
过滤器在仪表板中必须唯一。", + "missing-key-filters-error": "过滤器“{{filter}}”缺少键过滤器。", + "filter": "过滤器", + "editable": "可编辑", + "editable-hint": "允许用户在仪表板中更改过滤器值。", + "no-filters-found": "未找到过滤器。", + "no-filter-text": "未指定过滤器", + "add-filter-prompt": "请添加过滤器", + "no-filter-matching": "未找到“{{filter}}”。", + "create-new-filter": "创建新过滤器!", + "create-new": "创建", + "filter-required": "过滤器为必填项。", + "operation": { + "operation": "操作", + "equal": "等于", + "not-equal": "不等于", + "starts-with": "以…开头", + "ends-with": "以…结尾", + "contains": "包含", + "not-contains": "不包含", + "greater": "大于", + "less": "小于", + "greater-or-equal": "大于或等于", + "less-or-equal": "小于或等于", + "and": "且", + "or": "或", + "in": "在…中", + "not-in": "不在…中" + }, + "ignore-case": "忽略大小写", + "value": "值", + "remove-filter": "移除过滤器", + "duplicate-filter-action": "复制过滤器", + "preview": "过滤器预览", + "no-filters": "未配置过滤器", + "add-filter": "添加过滤器", + "add-complex-filter": "添加复合过滤器", + "add-complex": "添加复合", + "complex-filter": "复合过滤器", + "edit-complex-filter": "编辑复合过滤器", + "edit-filter-user-params": "编辑过滤器谓词用户参数", + "filter-user-params": "过滤器谓词用户参数", + "user-parameters": "用户参数", + "display-label": "显示标签", + "custom-label": "自定义标签", + "custom-label-hint": "启用后可设置自定义过滤器标签。禁用时将自动生成标签。", + "order-priority": "显示顺序", + "key-filter": "键过滤器", + "key-filters": "键过滤器", + "key-name": "键名称", + "key-name-required": "键名称为必填项。", + "key-type": { + "key-type": "键类型", + "attribute": "属性", + "timeseries": "时间序列", + "entity-field": "实体字段", + "constant": "常量", + "client-attribute": "客户端属性", + "server-attribute": "服务端属性", + "shared-attribute": "共享属性" + }, + "value-type": { + "value-type": "值类型", + "string": "字符串", + "numeric": "数值", + "boolean": "布尔值", + "date-time": "日期时间" + }, + "value-type-required": "键值类型为必填项。", + "key-value-type-change-title": "确定要更改键值类型吗?", + "key-value-type-change-message": "如果确认新值类型,所有已输入的键过滤器将被移除。", + "no-key-filters": "未配置键过滤器", + "add-key-filter": "添加键过滤器", + "remove-key-filter": "移除键过滤器", + "edit-key-filter": "编辑键过滤器", + "date": "日期", + "time": "时间", + "current-tenant": "当前租户", + "current-customer": "当前客户", + "current-user": "当前用户", + "current-device": "当前设备", + "default-value": "默认值", + "default-comma-separated-values": "默认逗号分隔值", + "dynamic-source-type": "动态源类型", + "dynamic-value": "动态值", + "no-dynamic-value": "无动态值", + "source-attribute": "源属性", + "switch-to-dynamic-value": "切换到动态值", + "switch-to-default-value": "切换到默认值", + "inherit-owner": "从所有者继承", + "source-attribute-not-set": "如果源属性未设置", + "unit": "单位" + }, + "fullscreen": { + "expand": "展开为全屏", + "exit": "退出全屏", + "toggle": "切换全屏模式", + "fullscreen": "全屏" + }, + "function": { + "function": "函数" + }, + "gateway": { + "gateway-name": "Gateway 名称", + "gateway-name-required": "Gateway 名称为必填项。", + "gateways": "Gateways", + "create-new-gateway": "创建新 Gateway", + "create-new-gateway-text": "确定要创建名为“{{gatewayName}}”的新 Gateway 吗?", + "launch-command": "启动命令", + "no-gateway-found": "未找到 Gateway。", + "no-gateway-matching": " 未找到“{{item}}”。" + }, + "grid": { + "delete-item-title": "确定要删除此项目吗?", + "delete-item-text": "请注意,确认后此项目及所有相关数据将无法恢复。", + "delete-items-title": "确定要删除 { count, plural, =1 {1 个项目} other {# 个项目} } 吗?", + "delete-items-action-title": "删除 { count, plural, =1 {1 个项目} other {# 个项目} }", + "delete-items-text": "请注意,确认后所有选中的项目将被移除,且所有相关数据将无法恢复。", + "add-item-text": "添加新项目", + "no-items-text": "未找到项目", + "item-details": "项目详情", + "delete-item": "删除项目", + "delete-items": "删除项目", + "scroll-to-top": "滚动到顶部" + }, + "help": { + "goto-help-page": "前往帮助页面", + "show-help": "显示帮助" + }, + "home": { + "home": "首页", + "profile": "个人资料", + "logout": "退出登录", + "menu": "菜单", + "avatar": "头像", + "open-user-menu": "打开用户菜单" + }, + "file-input": { + "browse-file": "浏览文件", + "browse-files": "浏览文件" + }, + "image": { + "gallery": "图片库", + "search": "搜索图片", + "selected-images": "已选择 { count, plural, =1 {1 张图片} other {# 张图片} }", + "created-time": "创建时间", + "name": "名称", + "name-required": "名称为必填项。", + "resolution": "分辨率", + "size": "大小", + "system": "系统", + "download-image": "下载图片", + "export-image": "导出图片为 JSON", + "import-image": "从 JSON 导入图片", + "upload-image": "上传图片", + "edit-image": "编辑图片", + "image-details": "图片详情", + "no-images": "未找到图片", + "delete-image": "删除图片", + "delete-image-title": "确定要删除图片“{{imageTitle}}”吗?", + "delete-image-text": "请注意,确认后图片将无法恢复。", + "delete-images-title": "确定要删除 { count, plural, =1 {1 张图片} other {# 张图片} } 吗?", + "delete-images-text": "请注意,确认后所有选中的图片将被移除,且所有相关数据将无法恢复。", + "list-mode": "列表视图", + "grid-mode": "网格视图", + "image-preview": "图片预览", + "update-image": "更新图片", + "export-failed-error": "无法导出图片:{{error}}", + "image-json-file": "图片 JSON 文件", + "invalid-image-json-file-error": "无法从 JSON 导入图片:无效的图片 JSON 数据结构。", + "image-is-in-use": "图片被其他实体使用", + "images-are-in-use": "图片被其他实体使用", + "image-is-in-use-text": "图片 “{{title}}” 未被删除,因为它被以下实体使用:", + "images-are-in-use-text": "并非所有图片都已删除,因为它们被其他实体使用。
您可以通过点击对应图片行中的 引用 按钮查看引用实体。
如果仍要删除这些图片,请在下表中选中它们并点击 删除选中 按钮。", + "delete-image-in-use-text": "如果仍要删除该图片,请点击 仍然删除 按钮。", + "system-entities": "系统实体:", + "entities": "实体:", + "references": "引用", + "include-system-images": "包含系统图片", + "clear-image": "清除图片", + "no-image": "无图片", + "no-image-selected": "未选择图片", + "browse-from-gallery": "从图片库浏览", + "set-link": "设置链接", + "image-link": "图片链接", + "link": "链接", + "copy-image-link": "复制图片链接", + "embed-image": "嵌入图片", + "embed-to-html": "嵌入到 HTML", + "embed-to-html-hint": "此功能将使链接对任何未授权用户可用。", + "embed-to-html-text": "使用以下代码片段,您可以将图片嵌入到基于纯 HTML 的组件中。
此类组件包括 HTML 卡片部件、单元格内容函数等。", + "embed-to-angular-template": "嵌入到 Angular HTML 模板", + "embed-to-angular-template-text": "使用以下代码片段,您可以将图片嵌入到用于组件的 Angular HTML 模板中。
此类组件包括 Markdown 部件、部件编辑器中的 HTML 部分、自定义操作等。" + }, + "image-input": { + "drop-images-or": "拖放图片或", + "drag-and-drop": "拖放", + "or": "或", + "browse": "浏览", + "no-images": "未选择图片", + "images": "图片" + }, + "import": { + "no-file": "未选择文件", + "drop-file": "拖放 JSON 文件或点击选择要上传的文件。", + "drop-json-file-or": "拖放 JSON 文件或", + "drop-file-csv": "拖放 CSV 文件或点击选择要上传的文件。", + "drop-file-csv-or": "拖放 CSV 文件或", + "column-value": "值", + "column-title": "标题", + "column-example": "示例值数据", + "column-key": "属性/遥测键", + "credentials": "凭证", + "csv-delimiter": "CSV 分隔符", + "csv-first-line-header": "第一行包含列名", + "csv-update-data": "更新属性/遥测", + "details": "详情", + "import-csv-number-columns-error": "文件应至少包含两列", + "import-csv-invalid-format-error": "无效的文件格式。行:'{{line}}'", + "column-type": { + "name": "名称", + "type": "类型", + "label": "标签", + "column-type": "列类型", + "client-attribute": "客户端属性", + "shared-attribute": "共享属性", + "server-attribute": "服务端属性", + "timeseries": "时间序列", + "entity-field": "实体字段", + "access-token": "访问 Token", + "x509": "X.509", + "mqtt": { + "client-id": "MQTT Client ID", + "user-name": "MQTT 用户名", + "password": "MQTT 密码" + }, + "lwm2m": { + "client-endpoint": "LwM2M endpoint 客户端名称", + "security-config-mode": "LwM2M 安全配置模式", + "client-identity": "LwM2M 客户端标识", + "client-key": "LwM2M 客户端密钥", + "client-cert": "LwM2M 客户端公钥", + "bootstrap-server-security-mode": "LwM2M 引导服务器安全模式", + "bootstrap-server-secret-key": "LwM2M 引导服务器密钥", + "bootstrap-server-public-key-id": "LwM2M 引导服务器公钥或 ID", + "lwm2m-server-security-mode": "LwM2M 服务器安全模式", + "lwm2m-server-secret-key": "LwM2M 服务器密钥", + "lwm2m-server-public-key-id": "LwM2M 服务器公钥或 ID" + }, + "snmp": { + "host": "SNMP 主机", + "port": "SNMP 端口", + "version": "SNMP 版本(v1、v2c 或 v3)", + "community-string": "SNMP 团体字符串" + }, + "isgateway": "是否为 Gateway", + "activity-time-from-gateway-device": "来自 Gateway 设备的活动时间", + "description": "描述", + "routing-key": "Edge 密钥", + "secret": "Edge 密钥" + }, + "stepper-text": { + "select-file": "选择文件", + "configuration": "导入配置", + "column-type": "选择列类型", + "creat-entities": "创建新实体" + }, + "message": { + "create-entities": "已成功创建 {{count}} 个新实体。", + "update-entities": "已成功更新 {{count}} 个实体。", + "error-entities": "创建 {{count}} 个实体时出错。" + } + }, + "scada": { + "symbols": "SCADA 符号", + "search": "搜索符号", + "selected-symbols": "已选择 { count, plural, =1 {1 个符号} other {# 个符号} }", + "download-symbol": "下载 SCADA 符号", + "export-symbol": "导出 SCADA 符号为 JSON", + "import-symbol": "从 JSON 导入 SCADA 符号", + "upload-symbol": "上传 SCADA 符号", + "update-symbol": "更新 SCADA 符号", + "edit-symbol": "编辑 SCADA 符号", + "symbol-details": "SCADA 符号详情", + "mode-svg": "SVG", + "mode-xml": "XML", + "no-symbols": "未找到符号", + "show-hidden-elements": "显示隐藏元素", + "hide-hidden-elements": "隐藏隐藏元素", + "delete-symbol": "删除 SCADA 符号", + "delete-symbol-title": "确定要删除 SCADA 符号“{{imageTitle}}”吗?", + "delete-symbol-text": "请注意,确认后 SCADA 符号将无法恢复。", + "delete-symbols-title": "确定要删除 { count, plural, =1 {1 个 SCADA 符号} other {# 个 SCADA 符号} } 吗?", + "delete-symbols-text": "请注意,确认后所有选中的 SCADA 符号将被移除,且所有相关数据将无法恢复。", + "include-system-symbols": "包含系统符号", + "symbol-preview": "符号预览", + "general": "通用", + "tags": "标签", + "properties": "属性", + "title": "标题", + "description": "描述", + "search-tags": "搜索标签", + "widget-size": "部件大小", + "cols": "列", + "rows": "行", + "state-render-function": "状态渲染函数", + "preview": "预览", + "preview-widget-action-text": "部件操作“{{type}}”已成功调用!", + "no-symbol": "无 SCADA 符号", + "no-symbol-selected": "未选择 SCADA 符号", + "clear-symbol": "清除 SCADA 符号", + "browse-symbol-from-gallery": "从图库浏览 SCADA 符号", + "zoom-in": "放大", + "zoom-out": "缩小", + "create-widget": "创建部件", + "create-widget-from-symbol": "从 SCADA 符号创建部件", + "hidden": "隐藏", + "tag": { + "tag": "标签", + "on-click-action": "点击操作", + "no-tags": "未配置标签", + "delete-tag-text": "确定要从 {{elementType}} 元素中删除标签
{{tag}} 吗?", + "update-tag": "更新标签", + "enter-tag": "输入标签", + "tag-settings": "标签设置", + "remove-tag": "移除标签", + "add-tag": "添加标签" + }, + "behavior": { + "behavior": "行为", + "id": "ID", + "name": "名称", + "type": "类型", + "no-behaviors": "未配置行为", + "add-behavior": "添加行为", + "type-action": "操作", + "type-value": "值", + "type-widget-action": "部件操作", + "behavior-settings": "行为设置", + "remove-behavior": "移除行为", + "hint": "提示", + "group-title": "分组标题", + "value-type": "值类型", + "default-value": "默认值", + "true-label": "True 标签", + "false-label": "False 标签", + "state-label": "状态标签", + "default-payload": "默认有效载荷", + "not-unique-behavior-ids-error": "行为 ID 必须唯一!", + "default-settings": "默认设置" + }, + "symbol": { + "symbol": "SCADA 符号", + "fluid-presence": "流体存在", + "fluid-presence-hint": "指示管道中是否存在流体。", + "fluid-present": "流体存在", + "present": "存在", + "absent": "不存在", + "flow-presence": "流动存在", + "flow-presence-hint": "指示管道中流体是否在流动。", + "flow-present": "流动存在", + "flow-direction": "流动方向", + "flow-direction-hint": "指示流体流动方向。", + "forward": "正向", + "reverse": "反向", + "flow-animation-speed": "流动动画速度", + "flow-animation-speed-hint": "表示流动动画速度的双精度值。1 - 正常速度,0 - 无动画,< 1 - 较慢动画,> 1 - 较快动画。", + "leak": "泄漏", + "leak-hint": "指示管道中是否存在泄漏。", + "leak-present": "存在泄漏", + "fluid-color": "流体颜色", + "pipe-color": "管道颜色", + "horizontal-pipe": "水平管道", + "vertical-pipe": "垂直管道", + "horizontal-fluid-color": "水平流体颜色", + "vertical-fluid-color": "垂直流体颜色", + "left-pipe": "左侧管道", + "right-pipe": "右侧管道", + "top-pipe": "顶部管道", + "bottom-pipe": "底部管道", + "left-fluid-color": "左侧流体颜色", + "right-fluid-color": "右侧流体颜色", + "top-fluid-color": "顶部流体颜色", + "bottom-fluid-color": "底部流体颜色", + "display": "显示", + "display-format": "显示格式", + "value": "值", + "decimals": "小数位数", + "units": "单位", + "flow-meter-value-hint": "流量计显示屏上显示的双精度值", + "value-hint": "表示当前值的双精度值", + "running": "运行中", + "running-hint": "指示组件是否处于运行状态。", + "warning-state": "警告状态", + "warning": "警告", + "warning-click": "警告点击", + "warning-state-hint": "指示组件是否处于警告状态。", + "critical-state": "严重状态", + "critical": "严重", + "critical-click": "严重点击", + "critical-state-hint": "指示组件是否处于严重状态。", + "critical-state-animation": "严重状态动画", + "critical-state-animation-hint": "是否在组件处于严重状态时启用闪烁动画。", + "warning-critical-state-animation": "警告/严重状态动画", + "warning-critical-state-animation-hint": "是否在组件处于警告或严重状态时启用闪烁动画。", + "animation": "动画", + "broken": "损坏", + "broken-hint": "指示组件是否已损坏。", + "on-display-click": "点击显示", + "on-display-click-hint": "用户点击显示时调用的操作。", + "pipe": "管道", + "default-border-color": "默认边框颜色", + "active-border-color": "活跃边框颜色", + "warning-border-color": "警告边框颜色", + "critical-border-color": "严重边框颜色", + "background-color": "背景颜色", + "rotation-animation-speed": "旋转动画速度", + "rotation-animation-speed-hint": "表示旋转动画速度的双精度值。1 - 正常速度,0 - 无动画,< 1 - 较慢动画,> 1 - 较快动画。", + "on-click": "点击", + "on-click-hint": "用户点击组件时调用的操作。", + "connectors-positions": "连接器位置", + "right-connector": "右侧连接器", + "right-top-connector": "右上连接器", + "right-bottom-connector": "右下连接器", + "left-connector": "左侧连接器", + "left-top-connector": "左上连接器", + "left-bottom-connector": "左下连接器", + "top-left-connector": "左上连接器", + "top-right-connector": "右上连接器", + "top-connector": "顶部连接器", + "bottom-connector": "底部连接器", + "running-color": "运行颜色", + "stopped-color": "停止颜色", + "stopped": "已停止", + "warning-color": "警告颜色", + "critical-color": "严重颜色", + "opened": "已打开", + "opened-hint": "指示组件是否处于打开状态。", + "open": "打开", + "open-hint": "用户点击打开组件时调用的操作。", + "close": "关闭", + "close-hint": "用户点击关闭组件时调用的操作。", + "close-state-animation": "关闭状态动画", + "close-state-animation-hint": "是否在组件处于关闭状态时启用闪烁动画。", + "opened-color": "打开颜色", + "closed-color": "关闭颜色", + "opened-rotation-angle": "打开旋转角度", + "closed-rotation-angle": "关闭旋转角度", + "tank-capacity": "储罐容量", + "tank-capacity-hint": "表示储罐总容量的双精度值。", + "current-volume": "当前容积", + "current-volume-hint": "表示当前已占用容积的双精度值。", + "tank-color": "储罐颜色", + "value-box": "值框", + "value-text": "值文本", + "scale": "刻度", + "transparent-mode": "透明模式", + "major-ticks": "主刻度", + "intervals": "间隔", + "major-ticks-color": "主刻度颜色", + "normal": "正常", + "minor-ticks": "次刻度", + "minor-ticks-color": "次刻度颜色", + "temperature": "温度", + "temperature-hint": "表示当前温度的双精度值。", + "update-temperature": "更新温度", + "update-temperature-hint": "用户点击更改当前温度时调用的操作。", + "run": "运行", + "run-hint": "用户点击运行组件时调用的操作。", + "stop": "停止", + "stop-hint": "用户点击停止组件时调用的操作。", + "temperature-step": "温度步进增量", + "heat-pump-color": "热泵颜色", + "power-button-background": "电源按钮背景", + "value-box-background": "值框背景", + "value-units": "值单位", + "enable-units-scale": "在刻度上启用单位", + "filtration-mode": "过滤模式", + "filtration-mode-hint": "表示当前过滤模式的整数值。", + "filtration-mode-update": "过滤模式更新状态", + "filtration-mode-update-hint": "用户点击更改当前过滤模式时调用的操作。", + "filter-mode": "过滤", + "waste-mode": "排废", + "backwash-mode": "反冲洗", + "recirculate-mode": "循环", + "rinse-mode": "冲洗", + "closed-mode": "关闭", + "sand-filter-color": "砂滤器颜色", + "mode-box-background": "模式框背景", + "border-color": "边框颜色", + "label-color": "标签颜色", + "water-leak-hint": "指示是否存在泄漏。", + "default-color": "默认颜色", + "leak-color": "泄漏颜色", + "full-value": "满值", + "full-value-hint": "表示满值的双精度值。", + "label": "标签", + "icon": "图标", + "button-color": "按钮颜色", + "on-label": "“开”标签文本", + "off-label": "“关”标签文本", + "arrow-presence": "箭头存在", + "arrow-presence-hint": "指示连接器中是否存在箭头。", + "arrow-present": "箭头存在", + "arrow-direction": "流动方向", + "arrow-direction-hint": "指示流动方向。", + "flow-animation": "流动存在", + "flow-animation-hint": "指示连接器中流体是否在流动。", + "flow": "流动", + "flow-line": "线条", + "flow-line-style": "线条样式", + "flow-style-hint": "设置虚线和间隔值,使其总和可被 100 整除,以实现完美的动画同步。", + "flow-dash-cap": "虚线端点", + "dash-cap-butt": "平头", + "dash-cap-round": "圆头", + "dash-cap-square": "方头", + "dash": "虚线", + "gap": "间隔", + "main-line": "主线条", + "line": "线条", + "line-color": "线条颜色", + "arrow-color": "箭头颜色", + "target-value": "目标值", + "target-value-hint": "指示刻度上的目标点。", + "min-max-value": "最小值和最大值", + "min-value": "最小值", + "max-value": "最大值", + "progress-bar": "进度条", + "progress-arrow": "进度箭头", + "warning-scale-color": "警告刻度颜色", + "critical-scale-color": "严重刻度颜色", + "scale-color": "刻度颜色", + "target": "目标", + "high-warning-state": "高警告状态", + "show-high-warning-scale": "显示高警告刻度", + "high-warning-scale": "高警告刻度", + "high-warning-state-hint": "表示从高警告范围到高严重或最大值的双精度值。", + "low-warning-state": "低警告状态", + "show-low-warning-scale": "显示低警告刻度", + "low-warning-scale": "低警告刻度", + "low-warning-state-hint": "表示从低警告范围到低严重或最小值的双精度值。", + "high-critical-state": "高严重状态", + "show-high-critical-scale": "显示高严重刻度", + "high-critical-scale": "高严重刻度", + "high-critical-state-hint": "表示从高严重范围到最大刻度值的双精度值。", + "low-critical-state": "低严重状态", + "show-low-critical-scale": "显示低严重状态", + "low-critical-scale": "低严重状态", + "low-critical-state-hint": "表示从低严重范围到最小刻度值的双精度值。", + "filter-color": "过滤器颜色", + "colors": "颜色", + "indicator-colors": "指示器颜色", + "enabled": "已启用", + "disabled": "已禁用", + "on": "开", + "off": "关", + "on-off-state": "开/关状态", + "on-off-state-hint": "指示组件是处于开还是关状态。", + "on-update-state": "开更新状态", + "on-update-state-hint": "用户点击将状态更新为开时调用的操作。", + "off-update-state": "关更新状态", + "off-update-state-hint": "用户点击将状态更新为关时调用的操作。", + "voltage": "电压", + "input-voltage": "输入电压", + "input-voltage-hint": "表示输入电压值的双精度值。", + "output-voltage": "输出电压", + "output-voltage-hint": "表示输出电压值的双精度值。", + "first-phase-voltage": "第一相电压", + "second-phase-voltage": "第二相电压", + "third-phase-voltage": "第三相电压", + "phase-voltage-hint": "表示当前相电压值的双精度值", + "voltage-hint": "表示当前电压的双精度值", + "current-voltage-color": "当前电压颜色", + "phase-indicator-color": "相位指示器颜色", + "measured": "测量值", + "measured-hint": "表示千瓦时能耗的双精度值", + "day-rate": "日间费率", + "night-rate": "夜间费率", + "off-peak-rate": "低谷费率", + "peak-rate": "高峰费率", + "export-rate": "输出费率", + "operating-mode": "运行模式", + "bypass-mode": "旁路", + "operating-mode-hint": "表示当前运行模式的整数值(0 - 关,1 - 开,2 - 旁路)", + "connected": "已连接", + "connected-hint": "指示组件是否处于已连接状态。", + "disconnected": "已断开", + "indicator": "指示器", + "operation-mode": "运行模式", + "operation-mode-hint": "指示逆变器处于市电还是逆变器模式。", + "operation-mode-indicators-color": "运行模式指示器颜色", + "mains-on-mode": "市电开", + "inverter-on-mode": "逆变器开", + "charging-mode": "充电模式", + "charging-mode-hint": "表示当前充电模式的整数值(1 - 恒流,2 - 恒压,3 - 浮充)", + "charging-mode-indicators-color": "充电模式指示器颜色", + "inverter-faults": "故障", + "inverter-fault-indicators-color": "故障指示器颜色", + "overload-fault": "过载", + "overload-fault-hint": "指示逆变器是否处于过载状态。", + "low-battery-fault": "低电量", + "low-battery-fault-hint": "指示电池是否过度放电。", + "temperature-fault": "温度", + "temperature-fault-hint": "指示逆变器中是否存在高温。", + "triangle": "三角形", + "socket": "插座", + "left-button": "左按钮", + "right-button": "右按钮", + "alarm-colors": "告警颜色", + "hook-color": "挂钩颜色" + } + }, + "item": { + "selected": "已选择" + }, + "js-func": { + "no-return-error": "函数必须返回值!", + "return-type-mismatch": "函数必须返回“{{type}}”类型的值!", + "tidy": "整理", + "mini": "压缩", + "modules": "模块", + "remove-module": "移除模块", + "no-modules": "未配置模块", + "add-module": "添加模块", + "module-alias": "别名", + "invalid-module-alias-name": "无效的别名名称", + "module-resource": "JS 模块资源", + "not-unique-module-aliases-error": "模块别名必须唯一!", + "show-module-info": "显示模块信息", + "show-module-source-code": "显示模块源代码", + "module-members": "模块成员", + "module-no-members": "模块没有导出成员", + "module-load-error": "模块加载错误", + "source-code": "源代码", + "source-code-load-error": "源代码加载错误", + "no-js-module-text": "未找到 JS 模块", + "no-js-module-matching": "未找到与“{{module}}”匹配的 JS 模块。" + }, + "key-val": { + "key": "键", + "value": "值", + "remove-entry": "移除条目", + "add-entry": "添加条目", + "no-data": "无条目" + }, + "layout": { + "layout": "布局", + "layouts": "布局", + "manage": "管理布局", + "settings": "布局设置", + "color": "颜色", + "main": "主", + "right": "右", + "left": "左", + "select": "选择目标布局", + "percentage-width": "百分比宽度(%)", + "fixed-width": "固定宽度(px)", + "left-width": "左列(%)", + "right-width": "右列(%)", + "pick-fixed-side": "固定侧:", + "layout-fixed-width": "固定宽度(px)", + "value-min-error": "值必须大于 {{min}}{{unit}}", + "value-max-error": "值必须小于 {{max}}{{unit}}", + "layout-fixed-width-required": "固定宽度为必填项", + "right-width-percentage-required": "右侧百分比为必填项", + "left-width-percentage-required": "左侧百分比为必填项", + "divider": "分隔线", + "right-side": "右侧布局", + "left-side": "左侧布局", + "add-new-breakpoint": "添加新断点", + "breakpoint": "断点", + "breakpoints": "断点", + "copy-from": "复制自", + "size": "大小", + "delete-breakpoint-title": "确定要删除断点“{{name}}”吗?", + "delete-breakpoint-text": "请注意,确认后断点将无法恢复,设置将恢复为默认断点。" + }, + "legend": { + "direction": "方向", + "position": "位置", + "show-values": "显示值", + "min-option": "最小值", + "max-option": "最大值", + "average-option": "平均值", + "total-option": "总计", + "latest-option": "最新值", + "sort-legend": "在图例中排序数据键", + "show-max": "显示最大值", + "show-min": "显示最小值", + "show-avg": "显示平均值", + "show-total": "显示总计值", + "show-latest": "显示最新值", + "settings": "图例设置", + "min": "最小", + "max": "最大", + "avg": "平均", + "total": "总计", + "latest": "最新", + "Min": "最小", + "Max": "最大", + "Avg": "平均", + "Total": "总计", + "Latest": "最新", + "comparison-time-ago": { + "previousInterval": "(前一区间)", + "customInterval": "(自定义区间)", + "days": "(一天前)", + "weeks": "(一周前)", + "months": "(一月前)", + "years": "(一年前)" + }, + "column-title": "列标题", + "label": "标签", + "value": "值" + }, + "login": { + "login": "登录", + "request-password-reset": "请求重置密码", + "reset-password": "重置密码", + "create-password": "创建密码", + "two-factor-authentication": "双因素认证", + "passwords-mismatch-error": "输入的密码必须一致!", + "password-again": "再次输入密码", + "sign-in": "登录", + "username": "用户名(Email)", + "remember-me": "记住我", + "forgot-password": "忘记密码?", + "password-reset": "密码重置", + "expired-password-reset-message": "您的密码已过期!\n请输入新密码。", + "new-password": "新密码", + "new-password-again": "确认新密码", + "password-link-sent-message": "重置链接已发送", + "email": "Email", + "invalid-email-format": "无效的 Email 格式。", + "or": "或", + "error": "登录错误", + "verify-your-identity": "验证您的身份", + "select-way-to-verify": "选择验证方式", + "resend-code": "重新发送验证码", + "resend-code-wait": "在 { time, plural, =1 {1 秒} other {# 秒} } 后重新发送验证码", + "try-another-way": "尝试其他方式", + "totp-auth-description": "请输入您的身份验证器应用中的安全码。", + "totp-auth-placeholder": "验证码", + "sms-auth-description": "安全码已发送到您的手机号码 {{contact}}。", + "sms-auth-placeholder": "短信验证码", + "email-auth-description": "安全码已发送到您的 Email 地址 {{contact}}。", + "email-auth-placeholder": "Email 验证码", + "backup-code-auth-description": "请输入您的备用验证码之一。", + "backup-code-auth-placeholder": "备用验证码", + "activation-link-expired": "激活链接已过期", + "activation-link-expired-message": "激活您个人资料的链接已过期。您可以返回登录页面以接收新的 Email。", + "reset-password-link-expired": "密码重置链接已过期", + "reset-password-link-expired-message": "重置密码的链接已过期。您可以返回登录页面以接收新的 Email。" + }, + "mobile": { + "add-application": "添加应用程序", + "app-id": "App Site Association ID", + "app-id-required": "App Site Association ID 为必填项", + "app-id-pattern": "App Site Association ID 格式无效", + "app-store-link": "App Store 链接", + "app-store-link-required": "App Store 链接为必填项", + "application-details": "应用程序详情", + "application-package": "应用程序包", + "application-secret": "Application Secret", + "application-secret-required": "Application Secret 为必填项", + "application": "应用程序", + "applications": "应用程序", + "copy-app-id": "复制 App ID", + "copy-app-store-link": "复制 App Store 链接", + "copy-application-package": "复制应用程序包", + "copy-application-secret": "复制 Application Secret", + "copy-google-play-link": "复制 Google Play 链接", + "copy-sha256-certificate-fingerprints": "复制 SHA256 证书指纹", + "delete-application": "删除应用程序", + "delete-application-button-text": "我了解后果,删除应用程序", + "delete-application-text": "此操作无法撤销。这将永久删除您的应用程序。
如果不想永久删除,可以暂时 暂停 应用程序。
要删除 应用程序,请输入 \"{{phrase}}\" 以确认。", + "delete-application-title-short": "确定要删除应用程序“{{name}}”吗?", + "delete-application-text-short": "请注意,确认后应用程序及所有相关数据将无法恢复。", + "delete-application-phrase": "delete application", + "delete-applications-bundle-text": "请注意,确认后移动包及所有相关数据将无法恢复。", + "delete-applications-bundle-title": "确定要删除移动包“{{bundleName}}”吗?", + "generate-application-secret": "生成 Application Secret", + "google-play-link": "Google Play 链接", + "google-play-link-required": "Google Play 链接为必填项", + "latest-version": "最新版本", + "min-version": "最低版本", + "invalid-version-pattern": "无效的版本格式。请使用格式:主版本.次版本.修订版本(例如 1.0.0)。", + "mobile-center": "移动中心", + "mobile-package": "应用程序包", + "mobile-package-max-length": "应用程序包应少于 256 个字符", + "mobile-package-required": "应用程序包为必填项。", + "mobile-package-pattern": "应用程序包格式无效", + "mobile-package-title": "应用程序标题", + "mobile-package-title-max-length": "应用程序标题应少于 256 个字符", + "no-application": "未找到应用程序", + "no-bundles": "未找到包", + "platform-type": "平台类型", + "search-application": "搜索应用程序", + "search-bundles": "搜索包", + "set": "设置", + "sha256-certificate-fingerprints": "SHA256 证书指纹", + "sha256-certificate-fingerprints-required": "SHA256 证书指纹为必填项", + "sha256-certificate-fingerprints-pattern": "SHA256 证书指纹格式无效", + "show-hidden-pages": "显示隐藏页面", + "status": "状态", + "status-type": { + "deprecated": "已弃用", + "draft": "草稿", + "published": "已发布", + "suspended": "已暂停" + }, + "store-information": "商店信息", + "version-information": "版本信息", + "min-version-release-notes": "最低版本发布说明", + "latest-version-release-notes": "最新版本发布说明", + "bundle": "包", + "bundles": "包", + "add-bundle": "添加包", + "title": "标题", + "title-required": "标题为必填项", + "title-cannot-contain-only-spaces": "标题不能仅包含空格", + "title-max-length": "标题应少于 256 个字符", + "oauth-clients": "OAuth 2.0 客户端", + "android-app": "Android 应用", + "android-application": "Android 应用程序", + "ios-app": "iOS 应用", + "ios-application": "iOS 应用程序", + "invalid-store-link": "无效的商店链接", + "enable-oauth": "启用 OAuth 2.0", + "enable-self-registration": "启用自助注册", + "edit-bundle": "编辑包", + "description": "描述", + "basic-settings": "基本设置", + "no-application-matching": "未找到与“{{entity}}”匹配的应用程序。", + "no-bundle-matching": "未找到与“{{entity}}”匹配的包。", + "application-required": "应用程序为必填项。", + "bundle-required": "包为必填项。", + "no-application-text": "未找到应用程序", + "no-bundle-text": "未找到包", + "layout": "布局", + "pages": "页面", + "hide-all-pages": "隐藏所有页面", + "reset-to-default-pages": "重置为默认页面", + "add-specific-page": "添加特定页面", + "visible": "可见", + "hidden": "隐藏", + "reset-to-page-default": "将页面重置为默认", + "mobile-599": "手机(最大 599px)", + "tablet-959": "平板电脑(最大 959px)", + "max-element-number": "最大元素数量", + "page-name": "页面名称", + "page-name-required": "页面名称为必填项。", + "page-name-cannot-contain-only-spaces": "页面名称不能仅包含空格。", + "page-name-max-length": "页面名称应少于 256 个字符", + "page-type": "页面类型", + "pages-types": { + "dashboard": "仪表板", + "web-view": "Web 视图", + "custom": "自定义" + }, + "url": "URL", + "invalid-url-format": "无效的 URL 格式", + "path": "路径", + "invalid-path-format": "无效的路径格式", + "custom-page": "自定义页面", + "edit-page": "编辑页面", + "edit-custom-page": "编辑自定义页面", + "delete-page": "删除页面", + "qr-code-widget": "二维码部件", + "type-here": "在此输入", + "configuration-dialog": "配置对话框", + "configuration-app": "配置应用", + "configuration-step": { + "prepare-environment-title": "准备开发环境", + "prepare-environment-text": "Flutter ThingsBoard 移动应用程序需要 Flutter SDK。请按照说明设置 Flutter SDK。", + "get-source-code-title": "获取应用源代码", + "get-source-code-text": "您可以通过从 GitHub 仓库克隆来获取 Flutter ThingsBoard 移动应用程序的源代码:", + "configure-app-settings-title": "配置应用设置", + "configure-app-settings-text": "下载配置文件并将其放置到上一步克隆的项目根目录中。", + "download-file": "下载文件", + "run-app-title": "运行应用", + "run-app-text": "按照 IDE 中的说明运行应用。\n如果使用终端,请使用以下命令运行应用:", + "more-information": "详细信息请参阅我们的入门文档。", + "getting-started": "入门指南" + } + }, + "notification": { + "action-button": "操作按钮", + "action-type": "操作类型", + "active": "活跃", + "add-notification-recipients-group": "添加通知收件人组", + "add-notification-template": "添加通知模板", + "add-recipient": "添加收件人", + "add-recipients": "添加收件人", + "add-rule": "添加规则", + "add-stage": "添加阶段", + "add-template": "添加模板", + "after": "之后", + "alarm-assignment-trigger-settings": "告警分配触发器设置", + "alarm-comment-trigger-settings": "告警评论触发器设置", + "alarm-trigger-settings": "告警触发器设置", + "all": "全部", + "api-feature-hint": "如果该字段为空,触发器将应用于所有 API 功能", + "api-usage-trigger-settings": "API 使用触发器设置", + "new-platform-version-trigger-settings": "新平台版本触发器设置", + "rate-limits-trigger-settings": "超出速率限制触发器设置", + "task-processing-failure-trigger-settings": "任务处理失败触发器设置", + "resources-shortage-trigger-settings": "资源不足触发器设置", + "at-least-one-should-be-selected": "至少需要选择一项", + "basic-settings": "基本设置", + "button-text": "按钮文本", + "button-text-required": "按钮文本为必填项", + "button-text-max-length": "按钮文本长度不得超过 {{ length }} 个字符", + "compose": "编写", + "conversation": "会话", + "conversation-required": "会话为必填项", + "copy-notification-template": "复制通知模板", + "copy-rule": "复制规则", + "copy-template": "复制模板", + "create-new": "新建", + "created": "已创建", + "customize-messages": "自定义消息", + "cpu-threshold": "CPU 阈值", + "delete-notification-text": "请注意,确认后该通知将无法恢复。", + "delete-notification-title": "确定要删除该通知吗?", + "delete-notifications-text": "请注意,确认后通知将无法恢复。", + "delete-notifications-title": "确定要删除 { count, plural, =1 {1 条通知} other {# 条通知} } 吗?", + "delete-recipient-text": "请注意,确认后该收件人将无法恢复。", + "delete-recipient-title": "确定要删除收件人“{{recipientName}}”吗?", + "delete-recipients-text": "请注意,确认后收件人将无法恢复。", + "delete-recipients-title": "确定要删除 { count, plural, =1 {1 个收件人} other {# 个收件人} } 吗?", + "delete-request-text": "请注意,确认后该请求将无法恢复。", + "delete-request-title": "确定要删除该请求吗?", + "delete-requests-text": "请注意,确认后请求将无法恢复。", + "delete-requests-title": "确定要删除 { count, plural, =1 {1 个请求} other {# 个请求} } 吗?", + "delete-rule-text": "请注意,确认后该规则将无法恢复。", + "delete-rule-title": "确定要删除规则“{{ruleName}}”吗?", + "delete-rules-text": "请注意,确认后规则将无法恢复。", + "delete-rules-title": "确定要删除 { count, plural, =1 {1 条规则} other {# 条规则} } 吗?", + "delete-template-text": "请注意,确认后该模板将无法恢复。", + "delete-template-title": "确定要删除模板“{{templateName}}”吗?", + "delete-templates-text": "请注意,确认后模板将无法恢复。", + "delete-templates-title": "确定要删除 { count, plural, =1 {1 个模板} other {# 个模板} } 吗?", + "deleted": "已删除", + "delivery-method": { + "delivery-method": "发送方式", + "email": "Email", + "email-preview": "Email 通知预览", + "slack": "Slack", + "slack-preview": "Slack 通知预览", + "microsoft-teams": "Microsoft Teams", + "microsoft-teams-preview": "Microsoft Teams 通知预览", + "sms": "SMS", + "sms-preview": "SMS 通知预览", + "web": "Web", + "web-preview": "Web 通知预览", + "mobile-app": "移动应用", + "mobile-app-preview": "移动应用通知预览" + }, + "delivery-method-not-configure-click": "发送方式未配置。点击进行设置。", + "delivery-method-not-configure-contact": "发送方式未配置。请联系系统管理员。", + "delivery-methods": "发送方式", + "description": "描述", + "device-activity-trigger-settings": "设备活跃触发器设置", + "device-list-rule-hint": "如果该字段为空,触发器将应用于所有设备", + "device-profiles-list-rule-hint": "如果该字段为空,触发器将应用于所有设备配置", + "disabled": "已禁用", + "edge-trigger-settings": "Edge 触发器设置", + "edge-list-rule-hint": "如果该字段为空,触发器将应用于所有 Edge 实例", + "edit-notification-recipients-group": "编辑通知收件人组", + "edit-notification-template": "编辑通知模板", + "edit-rule": "编辑规则", + "edit-template": "编辑模板", + "enabled": "已启用", + "entities-limit-trigger-settings": "实体限制触发器设置", + "entity-action-trigger-settings": "实体操作触发器设置", + "entity-type": "实体类型", + "escalation-chain": "升级链", + "failed-send": "发送失败", + "fails": "{ count, plural, =1 {1 次失败} other {# 次失败} }", + "filter": "过滤", + "first-recipient": "第一收件人", + "inactive": "不活跃", + "inbox": "收件箱", + "notification-inbox": "通知 / 收件箱", + "input-field-support-templatization": "输入字段支持模板化。", + "input-fields-support-templatization": "输入字段支持模板化。", + "link": "链接", + "link-required": "链接为必填项", + "link-max-length": "链接长度不得超过 {{ length }} 个字符", + "link-type": { + "dashboard": "打开仪表板", + "link": "打开 URL 链接" + }, + "loading-notifications": "正在加载通知...", + "management": "通知管理", + "mark-all-as-read": "全部标记为已读", + "mark-as-read": "标记为已读", + "message": "消息", + "message-required": "消息为必填项", + "message-max-length": "消息长度不得超过 {{ length }} 个字符", + "name": "名称", + "name-required": "名称为必填项", + "new-notification": "新通知", + "no-inbox-notification": "未找到通知", + "no-notification-request": "暂无通知请求", + "no-notification-templates": "未找到通知模板", + "no-notifications-yet": "暂无通知", + "no-recipients-notification": "暂无收件人通知", + "no-recipients-matching": "未找到与“{{entity}}”匹配的收件人。", + "no-recipients-text": "未找到收件人", + "no-rule": "未配置规则", + "no-rules-notification": "暂无规则通知", + "no-severity-found": "未找到严重程度", + "no-severity-matching": "未找到“{{severity}}”。", + "no-template-matching": "未找到与“{{template}}”匹配的资源。", + "create-new-template": "创建一个新模板!", + "not-found-slack-recipient": "未找到 Slack 收件人", + "notification": "通知", + "notification-center": "通知中心", + "notification-tap-action": "通知点击操作", + "notification-tap-action-hint": "如果未启用,将使用默认告警仪表板", + "notify": "通知", + "notify-again": "再次通知", + "notify-alarm-action": { + "acknowledged": "告警已确认", + "assigned": "告警已分配", + "cleared": "告警已清除", + "created": "告警已创建", + "severity-changed": "告警严重程度已变更", + "unassigned": "告警已取消分配" + }, + "notify-on": "通知条件", + "notify-on-comment-update": "评论更新时通知", + "notify-on-required": "通知条件为必填项", + "notify-on-unassign": "取消分配时通知", + "notify-only-user-comments": "仅通知用户评论", + "only-rule-chain-lifecycle-failures": "仅规则链生命周期失败", + "only-rule-node-lifecycle-failures": "仅规则节点生命周期失败", + "platform-users": "平台用户", + "ram-threshold": "RAM 阈值", + "rate-limits": "速率限制", + "rate-limits-hint": "如果该字段为空,触发器将应用于所有速率限制", + "recipient": "收件人", + "recipient-group": "收件人组", + "recipient-type": { + "affected-tenant-administrators": "受影响的租户管理员", + "affected-user": "受影响的用户", + "all-users": "所有用户", + "customer-users": "客户用户", + "system-administrators": "系统管理员", + "tenant-administrators": "租户管理员", + "user-filters": "用户过滤器", + "user-list": "用户列表", + "users-entity-owner": "实体所有者的用户" + }, + "recipients": "收件人", + "notification-recipient": "通知收件人", + "notification-recipient-required": "通知收件人为必填项。", + "notification-recipients": "通知 / 收件人", + "recipients-count": "{ count, plural, =1 {1 个收件人} other {# 个收件人} }", + "recipients-required": "收件人为必填项", + "refresh-allow-delivery-method": "刷新允许的发送方式", + "request-search": "搜索请求", + "request-status": { + "processing": "处理中", + "scheduled": "已计划", + "sent": "已发送" + }, + "review": "审核", + "rule": "规则", + "rule-chain-list-rule-hint": "如果该字段为空,触发器将应用于所有规则链", + "rule-engine-events-trigger-settings": "规则引擎事件触发器设置", + "rule-engine-filter": "规则引擎过滤器", + "rule-name": "规则名称", + "rule-name-required": "名称为必填项", + "rule-disable": "禁用通知规则", + "rule-enable": "启用通知规则", + "rule-node-filter": "规则节点过滤器", + "rules": "规则", + "notification-rules": "通知 / 规则", + "scheduler-later": "计划稍后发送", + "search-notification": "搜索通知", + "search-recipients": "搜索收件人", + "search-rules": "搜索规则", + "search-templates": "搜索模板", + "see-documentation": "查看文档", + "selected-notifications": "已选择 { count, plural, =1 {1 条通知} other {# 条通知} }", + "selected-recipients": "已选择 { count, plural, =1 {1 个收件人} other {# 个收件人} }", + "selected-requests": "已选择 { count, plural, =1 {1 个请求} other {# 个请求} }", + "selected-rules": "已选择 { count, plural, =1 {1 条规则} other {# 条规则} }", + "selected-template": "已选择 { count, plural, =1 {1 个模板} other {# 个模板} }", + "send-notification": "发送通知", + "sent": "已发送", + "setup": "设置", + "notification-sent": "通知 / 已发送", + "set-entity-from-notification": "将通知中的实体设置到仪表板状态", + "slack-chanel-type": "Slack 频道类型", + "slack-chanel-types": { + "direct": "私信", + "private-channel": "私有频道", + "public-channel": "公共频道" + }, + "start-from-scratch": "从头开始", + "status": "状态", + "stop-escalation-alarm-status-become": "当告警状态变为以下时停止升级:", + "storage-threshold": "存储阈值", + "subject": "主题", + "subject-required": "主题为必填项", + "subject-max-length": "主题长度不得超过 {{ length }} 个字符", + "template": "模板", + "template-name": "模板名称", + "template-required": "模板为必填项", + "template-type": { + "alarm": "告警", + "alarm-assignment": "告警分配", + "alarm-comment": "告警评论", + "api-usage-limit": "API 使用限制", + "device-activity": "设备活跃", + "entities-limit": "实体限制", + "entity-action": "实体操作", + "general": "通用", + "rule-engine-lifecycle-event": "规则引擎生命周期事件", + "rule-node": "规则节点", + "new-platform-version": "新平台版本", + "rate-limits": "超出速率限制", + "edge-communication-failure": "Edge 通信故障", + "edge-connection": "Edge 连接", + "task-processing-failure": "任务处理失败", + "resources-shortage": "资源不足" + }, + "templates": "模板", + "notification-templates": "通知 / 模板", + "tenant-profiles-list-rule-hint": "如果该字段为空,触发器将应用于所有租户配置", + "tenants-list-rule-hint": "如果该字段为空,触发器将应用于所有租户", + "threshold": "阈值", + "theme-color": "主题颜色", + "time": "时间", + "track-rule-node-events": "跟踪规则节点事件", + "trigger": { + "alarm": "告警", + "alarm-assignment": "告警分配", + "alarm-comment": "告警评论", + "api-usage-limit": "API 使用限制", + "device-activity": "设备活跃", + "entities-limit": "实体限制", + "entity-action": "实体操作", + "rule-engine-lifecycle-event": "规则引擎生命周期事件", + "new-platform-version": "新平台版本", + "rate-limits": "超出速率限制", + "edge-connection": "Edge 连接", + "edge-communication-failure": "Edge 通信故障", + "task-processing-failure": "任务处理失败", + "resources-shortage": "资源不足", + "trigger": "触发器", + "trigger-required": "触发器为必填项" + }, + "type": "类型", + "unread": "未读", + "updated": "已更新", + "use-deprecated-webhook-connectors": "使用已弃用的 Webhook 连接器", + "use-old-api": "使用旧 API", + "use-template": "使用模板", + "view-all": "查看全部", + "warning": "警告", + "webhook-url": "Webhook URL", + "webhook-url-required": "Webhook URL 为必填项", + "workflow-url": "Workflow URL", + "workflow-url-required": "Workflow URL 为必填项", + "channel-name": "频道名称", + "channel-name-required": "频道名称为必填项", + "settings": { + "notification-settings": "通知设置", + "reset-all": "重置所有设置", + "reset-all-title": "确定要重置表单吗?", + "reset-all-text": "确认后,设置表单将重置为默认值并保存。", + "type": "类型", + "enable-all": "全部启用", + "disable-all": "全部禁用", + "delivery-not-configured": "发送方式未配置" + } + }, + "ota-update": { + "add": "添加软件包", + "assign-firmware": "已分配固件", + "assign-firmware-required": "已分配固件为必填项", + "assign-software": "已分配软件", + "assign-software-required": "已分配软件为必填项", + "auto-generate-checksum": "自动生成校验和", + "checksum": "校验和", + "checksum-hint": "如果校验和为空,将自动生成", + "checksum-algorithm": "校验和算法", + "checksum-copied-message": "软件包校验和已复制到剪贴板", + "change-firmware": "更改固件可能导致 { count, plural, =1 {1 个设备} other {# 个设备} } 更新。", + "change-software": "更改软件可能导致 { count, plural, =1 {1 个设备} other {# 个设备} } 更新。", + "change-ota-setting-title": "确定要更改 OTA 设置吗?", + "chose-compatible-device-profile": "上传的软件包仅对具有所选配置的设备可用。", + "chose-firmware-distributed-device": "选择要分发到设备的固件", + "chose-software-distributed-device": "选择要分发到设备的软件", + "content-type": "内容类型", + "copy-checksum": "复制校验和", + "copy-direct-url": "复制直接 URL", + "copyId": "复制软件包 Id", + "copied": "已复制!", + "delete": "删除软件包", + "delete-ota-update-text": "请注意,确认后该 OTA 更新将无法恢复。", + "delete-ota-update-title": "确定要删除 OTA 更新“{{title}}”吗?", + "delete-ota-updates-text": "请注意,确认后所有选中的 OTA 更新将被移除。", + "delete-ota-updates-title": "确定要删除 { count, plural, =1 {1 个 OTA 更新} other {# 个 OTA 更新} } 吗?", + "description": "描述", + "direct-url": "直接 URL", + "direct-url-copied-message": "软件包直接 URL 已复制到剪贴板", + "direct-url-required": "直接 URL 为必填项", + "download": "下载软件包", + "drop-file": "拖放软件包文件或点击选择要上传的文件。", + "drop-package-file-or": "拖放软件包文件或", + "file-name": "文件名", + "file-size": "文件大小", + "file-size-bytes": "文件大小(字节)", + "idCopiedMessage": "软件包 Id 已复制到剪贴板", + "no-firmware-matching": "未找到与“{{entity}}”匹配的兼容固件 OTA 更新软件包。", + "no-firmware-text": "暂无已配置的兼容固件 OTA 更新软件包。", + "no-packages-text": "未找到软件包", + "no-software-matching": "未找到与“{{entity}}”匹配的兼容软件 OTA 更新软件包。", + "no-software-text": "暂无已配置的兼容软件 OTA 更新软件包。", + "ota-update": "OTA 更新", + "ota-update-details": "OTA 更新详情", + "ota-updates": "OTA 更新", + "package-file": "软件包文件", + "package-type": "软件包类型", + "packages-repository": "软件包仓库", + "search": "搜索软件包", + "selected-package": "已选择 { count, plural, =1 {1 个软件包} other {# 个软件包} }", + "title": "标题", + "title-required": "标题为必填项。", + "title-max-length": "标题长度不得超过 256", + "types": { + "firmware": "固件", + "software": "软件" + }, + "upload-binary-file": "上传二进制文件", + "use-external-url": "使用外部 URL", + "version": "版本", + "version-required": "版本为必填项。", + "version-tag": "版本标签", + "version-tag-hint": "自定义标签应与设备上报的软件包版本一致。", + "version-max-length": "版本长度不得超过 256", + "warning-after-save-no-edit": "软件包上传后,将无法修改标题、版本、设备配置和软件包类型。" + }, + "position": { + "top": "顶部", + "bottom": "底部", + "left": "左侧", + "right": "右侧" + }, + "profile": { + "profile": "个人资料", + "last-login-time": "上次登录", + "change-password": "修改密码", + "current-password": "当前密码", + "copy-jwt-token": "复制 JWT Token", + "jwt-token": "JWT Token", + "token-valid-till": "Token 有效期至", + "tokenCopiedSuccessMessage": "JWT Token 已复制到剪贴板", + "tokenCopiedWarnMessage": "JWT Token 已过期!请刷新页面。" + }, + "profiles": { + "profiles": "配置" + }, + "security": { + "security": "安全", + "general-settings": "通用安全设置", + "access-token": "访问 Token", + "access-token-required": "访问 Token 为必填项", + "clientId": "Client ID", + "clientId-required": "Client ID 为必填项", + "username": "用户名", + "username-required": "用户名为必填项", + "ca-cert": "CA 证书", + "2fa": { + "2fa": "双因素认证", + "2fa-description": "双因素认证保护您的账户免受未授权访问。您只需在登录时输入安全码即可。", + "authenticate-with": "您可以通过以下方式进行认证:", + "disable-2fa-provider-text": "禁用 {{name}} 将降低您账户的安全性", + "disable-2fa-provider-title": "确定要禁用 {{name}} 吗?", + "get-new-code": "获取新验证码", + "main-2fa-method": "设为主要双因素认证方式", + "dialog": { + "activation-step-description-email": "下次登录时,系统将提示您输入发送到您 Email 地址的安全码。", + "activation-step-description-sms": "下次登录时,系统将提示您输入发送到该手机号码的安全码。", + "activation-step-description-totp": "下次登录时,您需要提供双因素认证码。", + "activation-step-label": "激活", + "backup-code-description": "请打印这些验证码,以便在需要登录账户时使用。每个备用验证码只能使用一次。", + "backup-code-warn": "离开此页面后,这些验证码将无法再次显示。请使用以下选项安全存储。", + "download-txt": "下载(txt)", + "email-step-description": "输入要用作认证器的 Email 地址。", + "email-step-label": "Email", + "enable-email-title": "启用 Email 认证器", + "enable-sms-title": "启用 SMS 认证器", + "enable-totp-title": "启用认证器应用", + "enter-verification-code": "在此输入 6 位验证码", + "get-backup-code-title": "获取备用验证码", + "next": "下一步", + "scan-qr-code": "使用验证应用扫描此二维码", + "send-code": "发送验证码", + "sms-step-description": "输入要用作认证器的手机号码。", + "sms-step-label": "手机号码", + "success": "成功!", + "totp-step-description-install": "您可以安装 Google Authenticator、Authy 或 Duo 等应用。", + "totp-step-description-open": "在手机上打开认证器应用。", + "totp-step-label": "获取应用", + "verification-code": "6 位验证码", + "verification-code-invalid": "验证码格式无效", + "verification-code-incorrect": "验证码不正确", + "verification-code-many-request": "验证码校验请求过多", + "verification-step-description": "输入我们刚发送到 {{address}} 的 6 位验证码", + "verification-step-label": "验证" + }, + "provider": { + "email": "Email", + "email-description": "使用发送到您 Email 地址的安全码进行认证。", + "email-hint": "认证码通过 Email 发送至 {{ info }}", + "sms": "SMS", + "sms-description": "使用手机进行认证。登录时我们将通过 SMS 短信向您发送安全码。", + "sms-hint": "认证码通过短信发送至 {{ info }}", + "totp": "认证器应用", + "totp-description": "使用手机上的 Google Authenticator、Authy 或 Duo 等应用进行认证。它将生成登录所需的安全码。", + "totp-hint": "认证器应用已为您的账户设置", + "backup_code": "备用验证码", + "backup-code-description": "这些可打印的一次性密码允许您在不方便使用手机时(例如旅行中)登录账户。", + "backup-code-hint": "目前有 {{ info }} 个一次性验证码可用" + } + }, + "password-requirement": { + "at-least": "至少:", + "character": "{ count, plural, =1 {1 个字符} other {# 个字符} }", + "digit": "{ count, plural, =1 {1 个数字} other {# 个数字} }", + "incorrect-password-try-again": "密码不正确,请重试", + "lowercase-letter": "{ count, plural, =1 {1 个小写字母} other {# 个小写字母} }", + "new-passwords-not-match": "新密码不匹配", + "password-should-not-contain-spaces": "密码不能包含空格", + "password-not-meet-requirements": "密码不符合要求", + "password-requirements": "密码要求", + "password-should-difference": "新密码应与当前密码不同", + "special-character": "{ count, plural, =1 {1 个特殊字符} other {# 个特殊字符} }", + "uppercase-letter": "{ count, plural, =1 {1 个大写字母} other {# 个大写字母} }", + "at-most": "最多:" + } + }, + "relation": { + "relations": "关联", + "direction": "方向", + "clear-relation-type": "清除关联类型", + "search-direction": { + "FROM": "从", + "TO": "到" + }, + "direction-type": { + "FROM": "从", + "TO": "到" + }, + "from-relations": "出站关联", + "to-relations": "入站关联", + "selected-relations": "已选择 { count, plural, =1 {1 条关联} other {# 条关联} }", + "type": "类型", + "to-entity-type": "目标实体类型", + "to-entity-name": "目标实体名称", + "from-entity-type": "源实体类型", + "from-entity-name": "源实体名称", + "to-entity": "目标实体", + "from-entity": "源实体", + "delete": "删除关联", + "relation-type": "关联类型", + "relation-type-required": "关联类型为必填项。", + "relation-type-max-length": "关联类型长度不得超过 256", + "any-relation-type": "任意类型", + "add": "添加关联", + "edit": "编辑关联", + "delete-to-relation-title": "确定要删除与实体“{{entityName}}”的关联吗?", + "delete-to-relation-text": "请注意,确认后实体“{{entityName}}”将与当前实体取消关联。", + "delete-to-relations-title": "确定要删除 { count, plural, =1 {1 条关联} other {# 条关联} } 吗?", + "delete-to-relations-text": "请注意,确认后所有选中的关联将被移除,相应实体将与当前实体取消关联。", + "delete-from-relation-title": "确定要删除来自实体“{{entityName}}”的关联吗?", + "delete-from-relation-text": "请注意,确认后当前实体将与实体“{{entityName}}”取消关联。", + "delete-from-relations-title": "确定要删除 { count, plural, =1 {1 条关联} other {# 条关联} } 吗?", + "delete-from-relations-text": "请注意,确认后所有选中的关联将被移除,当前实体将与相应实体取消关联。", + "remove-relation-filter": "移除关联过滤器", + "remove-filter": "移除过滤器", + "add-relation-filter": "添加关联过滤器", + "any-relation": "任意关联", + "relation-filters": "关联过滤器", + "relation-filter": "关联过滤器", + "additional-info": "附加信息(JSON)", + "invalid-additional-info": "无法解析附加信息 JSON。", + "no-relations-text": "未找到关联", + "not": "非" + }, + "resource": { + "add": "添加资源", + "all-types": "全部", + "copyId": "复制资源 Id", + "delete": "删除资源", + "delete-resource-text": "请注意,确认后该资源将无法恢复。", + "delete-resource-title": "确定要删除资源“{{resourceTitle}}”吗?", + "delete-resources-action-title": "删除 { count, plural, =1 {1 个资源} other {# 个资源} }", + "delete-resources-text": "请注意,即使选中的资源正在设备配置中使用,也将被删除。", + "delete-resources-title": "确定要删除 { count, plural, =1 {1 个资源} other {# 个资源} } 吗?", + "download": "下载资源", + "drop-file": "拖放资源文件或点击选择要上传的文件。", + "drop-resource-file-or": "拖放资源文件或", + "empty": "资源为空", + "file-name": "文件名", + "idCopiedMessage": "资源 Id 已复制到剪贴板", + "no-resource-matching": "未找到与“{{widgetsBundle}}”匹配的资源。", + "no-resource-text": "未找到资源", + "open-widgets-bundle": "打开部件包", + "resource": "资源", + "resource-file": "资源文件", + "resource-files": "资源文件", + "resource-library-details": "资源详情", + "resource-type": "资源类型", + "resources-library": "资源库", + "search": "搜索资源", + "selected-resources": "已选择 { count, plural, =1 {1 个资源} other {# 个资源} }", + "system": "系统", + "title": "标题", + "title-required": "标题为必填项。", + "title-max-length": "标题长度不得超过 256", + "type": { + "jks": "JKS", + "js-module": "JS 模块", + "lwm2m-model": "LWM2M 模型", + "pkcs-12": "PKCS #12", + "general": "通用" + }, + "resource-sub-type": "子类型", + "sub-type": { + "image": "图片", + "scada-symbol": "Scada 符号", + "extension": "扩展", + "module": "模块" + }, + "resource-is-in-use": "资源正被其他实体使用", + "resources-are-in-use": "资源正被其他实体使用", + "resource-is-in-use-text": "资源 '{{title}}' 未被删除,因为它正被以下实体使用:", + "resources-are-in-use-text": "并非所有资源都已被删除,因为它们正被其他实体使用。
您可以通过点击相应资源行中的引用按钮查看引用的实体。
如果仍要删除这些资源,请在下方表格中选择它们并点击删除所选按钮。", + "delete-resource-in-use-text": "如果仍要删除该资源,请点击仍然删除按钮。" + }, + "javascript": { + "add": "添加 JavaScript 资源", + "delete": "删除 JavaScript 资源", + "delete-javascript-resource-text": "请注意,确认后该 JavaScript 资源将无法恢复。", + "delete-javascript-resource-title": "确定要删除 JavaScript 资源“{{resourceTitle}}”吗?", + "delete-javascript-resources-action-title": "删除 { count, plural, =1 {1 个 JavaScript 资源} other {# 个 JavaScript 资源} }", + "delete-javascript-resources-text": "请注意,即使选中的 JavaScript 资源正在 JavaScript 函数中使用,也将被删除。", + "delete-javascript-resources-title": "确定要删除 { count, plural, =1 {1 个 JavaScript 资源} other {# 个 JavaScript 资源} } 吗?", + "delete-javascript-resource-in-use-text": "如果仍要删除该 JavaScript 资源,请点击仍然删除按钮。", + "download": "下载 JavaScript 资源", + "upload-from-file": "从文件上传 JavaScript", + "resource-file": "JavaScript 资源文件", + "drop-file": "拖放 JavaScript 文件或点击选择要上传的文件。", + "drop-resource-file-or": "拖放 JavaScript 文件或", + "javascript-library": "JavaScript 库", + "javascript-type": "JavaScript 类型", + "javascript-resource-details": "JavaScript 资源详情", + "javascript-resource-is-in-use": "JavaScript 资源正被其他实体使用", + "javascript-resources-are-in-use": "JavaScript 资源正被其他实体使用", + "javascript-resource-is-in-use-text": "JavaScript 资源 '{{title}}' 未被删除,因为它正被以下实体使用:", + "javascript-resources-are-in-use-text": "并非所有 JavaScript 资源都已被删除,因为它们正被其他实体使用。
您可以通过点击相应资源行中的引用按钮查看引用的实体。
如果仍要删除这些 JavaScript 资源,请在下方表格中选择它们并点击删除所选按钮。", + "search": "搜索 JavaScript 资源", + "selected-javascript-resources": "已选择 { count, plural, =1 {1 个 JavaScript 资源} other {# 个 JavaScript 资源} }", + "no-javascript-resource-text": "未找到 JavaScript 资源", + "all-types": "全部", + "module-script": "模块脚本" + }, + "rpc": { + "error": { + "target-device-is-not-set": "目标设备未设置!", + "invalid-target-entity": "{{entityType}} 实体不支持 RPC 命令。", + "failed-to-resolve-target-device": "无法解析目标设备!", + "request-timeout": "请求超时", + "rpc-http-error": "错误:{{status}} - {{statusText}}" + } + }, + "rulechain": { + "rulechain": "规则链", + "rulechain-events": "规则链事件", + "rulechains": "规则链", + "root": "根", + "delete": "删除规则链", + "name": "名称", + "name-required": "名称为必填项。", + "name-max-length": "名称长度不得超过 256", + "description": "描述", + "add": "添加规则链", + "set-root": "设为根规则链", + "set-root-rulechain-title": "确定要将规则链“{{ruleChainName}}”设为根规则链吗?", + "set-root-rulechain-text": "确认后,该规则链将成为根规则链,并处理所有传入的传输消息。", + "delete-rulechain-title": "确定要删除规则链“{{ruleChainName}}”吗?", + "delete-rulechain-text": "请注意,确认后该规则链及所有相关数据将无法恢复。", + "delete-rulechains-title": "确定要删除 { count, plural, =1 {1 条规则链} other {# 条规则链} } 吗?", + "delete-rulechains-action-title": "删除 { count, plural, =1 {1 条规则链} other {# 条规则链} }", + "delete-rulechains-text": "请注意,确认后所有选中的规则链将被移除,所有相关数据将无法恢复。", + "add-rulechain-text": "添加新规则链", + "no-rulechains-text": "未找到规则链", + "rulechain-details": "规则链详情", + "details": "详情", + "events": "事件", + "system": "系统", + "import": "导入规则链", + "export": "导出规则链", + "export-failed-error": "无法导出规则链:{{error}}", + "create-new-rulechain": "创建新规则链", + "rulechain-file": "规则链文件", + "invalid-rulechain-file-error": "无法导入规则链:无效的规则链数据结构。", + "copyId": "复制规则链 Id", + "idCopiedMessage": "规则链 Id 已复制到剪贴板", + "select-rulechain": "选择规则链", + "no-rulechains-matching": "未找到与“{{entity}}”匹配的规则链。", + "rulechain-required": "规则链为必填项", + "management": "规则管理", + "debug-mode": "调试模式", + "search": "搜索规则链", + "selected-rulechains": "已选择 { count, plural, =1 {1 条规则链} other {# 条规则链} }", + "open-rulechain": "打开规则链", + "edge-template-root": "模板根", + "assign-to-edge": "分配到 Edge", + "edge-rulechain": "Edge 规则链", + "unassign-rulechain-from-edge-text": "确认后,该规则链将被取消分配,Edge 将无法访问。", + "unassign-rulechains-from-edge-title": "确定要取消分配 { count, plural, =1 {1 条规则链} other {# 条规则链} } 吗?", + "unassign-rulechains-from-edge-text": "确认后,所有选中的规则链将被取消分配,Edge 将无法访问。", + "assign-rulechain-to-edge-title": "将规则链分配到 Edge", + "assign-rulechain-to-edge-text": "请选择要分配到 Edge 的规则链", + "set-edge-template-root-rulechain": "设为 Edge 模板根规则链", + "set-edge-template-root-rulechain-title": "确定要将规则链“{{ruleChainName}}”设为 Edge 模板根规则链吗?", + "set-edge-template-root-rulechain-text": "确认后,该规则链将成为 Edge 模板根规则链,并作为新创建 Edge 的根规则链。", + "invalid-rulechain-type-error": "无法导入规则链:无效的规则链类型。期望类型为 {{expectedRuleChainType}}。", + "set-auto-assign-to-edge": "创建时自动将规则链分配到 Edge", + "set-auto-assign-to-edge-title": "确定要在创建时将 Edge 规则链“{{ruleChainName}}”分配到 Edge 吗?", + "set-auto-assign-to-edge-text": "确认后,该 Edge 规则链将在创建时自动分配到 Edge。", + "unset-auto-assign-to-edge": "创建时不自动将规则链分配到 Edge", + "unset-auto-assign-to-edge-title": "确定不在创建时将 Edge 规则链“{{ruleChainName}}”分配到 Edge 吗?", + "unset-auto-assign-to-edge-text": "确认后,该 Edge 规则链将不再在创建时自动分配到 Edge。", + "unassign-rulechain-title": "确定要取消分配规则链“{{ruleChainName}}”吗?", + "unassign-rulechains": "取消分配规则链" + }, + "rulenode": { + "rule-node-events": "规则节点事件", + "details": "详情", + "events": "事件", + "search": "搜索节点", + "open-node-library": "打开节点库", + "close-node-library": "关闭节点库", + "add": "添加规则节点", + "name": "名称", + "name-required": "名称为必填项。", + "name-max-length": "名称长度不得超过 256", + "type": "类型", + "rule-node-description": "规则节点描述", + "delete": "删除规则节点", + "select-all-objects": "选择所有节点和连接", + "deselect-all-objects": "取消选择所有节点和连接", + "delete-selected-objects": "删除所选节点和连接", + "delete-selected": "删除所选", + "create-nested-rulechain": "创建嵌套规则链", + "select-all": "全选", + "copy-selected": "复制所选", + "deselect-all": "取消全选", + "rulenode-details": "规则节点详情", + "debug-mode": "调试模式", + "singleton": "单例", + "configuration": "配置", + "link": "链接", + "link-details": "规则节点链接详情", + "add-link": "添加链接", + "link-label": "链接标签", + "link-label-required": "链接标签为必填项。", + "custom-link-label": "自定义链接标签", + "custom-link-label-required": "自定义链接标签为必填项。", + "link-labels": "链接标签", + "link-labels-required": "链接标签为必填项。", + "no-link-labels-found": "未找到链接标签", + "no-link-label-matching": "未找到“{{label}}”。", + "create-new-link-label": "创建一个新标签!", + "type-filter": "过滤", + "type-filter-details": "使用配置的条件过滤传入消息", + "type-enrichment": "数据补充", + "type-enrichment-details": "向消息元数据中添加附加信息", + "type-transformation": "转换", + "type-transformation-details": "更改消息负载和元数据", + "type-action": "操作", + "type-action-details": "执行特殊操作", + "type-external": "外部", + "type-external-details": "与外部系统交互", + "type-rule-chain": "规则链", + "type-rule-chain-details": "将传入消息转发到指定规则链", + "type-flow": "流程", + "type-flow-details": "组织消息流程", + "type-input": "输入", + "type-input-details": "规则链的逻辑输入,将传入消息转发到下一个关联的规则节点", + "type-unknown": "未知", + "type-unknown-details": "无法解析的规则节点", + "directive-is-not-loaded": "定义的配置指令“{{directiveName}}”不可用。", + "ui-resources-load-error": "加载配置 UI 资源失败。", + "invalid-target-rulechain": "无法解析目标规则链!", + "test-script-function": "测试脚本函数", + "script-lang-java-script": "JavaScript", + "script-lang-tbel": "TBEL", + "message": "消息", + "message-type": "消息类型", + "select-message-type": "选择消息类型", + "message-type-required": "消息类型为必填项", + "metadata": "元数据", + "metadata-required": "元数据条目不能为空。", + "output": "输出", + "test": "测试", + "help": "帮助", + "reset-debug-settings": "重置所有节点的调试设置", + "test-with-this-message": "{{test}} 使用此消息", + "queue-hint": "选择要将消息转发到的队列。默认使用“Main”队列。", + "queue-singleton-hint": "选择在多实例环境中用于消息转发的队列。默认使用“Main”队列。" + }, + "rule-node-config": { + "id": "Id", + "additional-info": "附加信息", + "advanced-settings": "高级设置", + "create-entity-if-not-exists": "如果实体不存在则创建新实体", + "create-entity-if-not-exists-hint": "如果启用,将使用指定参数创建新实体(除非该实体已存在)。已有实体将直接用于关联。", + "select-device-connectivity-event": "选择设备连接事件", + "entity-name-pattern": "名称模式", + "device-name-pattern": "设备名称", + "asset-name-pattern": "资产名称", + "entity-view-name-pattern": "实体视图名称", + "customer-title-pattern": "客户标题", + "dashboard-name-pattern": "仪表板标题", + "user-name-pattern": "用户 Email", + "edge-name-pattern": "Edge 名称", + "entity-name-pattern-required": "名称模式为必填项", + "entity-name-pattern-hint": "名称模式字段支持模板化。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "copy-message-type": "复制消息类型", + "entity-type-pattern": "类型模式", + "entity-type-pattern-required": "类型模式为必填项", + "message-type-value": "消息类型值", + "message-type-value-required": "消息类型值为必填项", + "message-type-value-max-length": "消息类型值应少于 256 个字符", + "output-message-type": "输出消息类型", + "entity-cache-expiration": "实体缓存过期时间(秒)", + "entity-cache-expiration-hint": "指定存储已找到的实体记录的最大时间间隔。值为 0 表示记录永不过期。", + "entity-cache-expiration-required": "实体缓存过期时间为必填项。", + "entity-cache-expiration-range": "实体缓存过期时间应大于或等于 0。", + "customer-name-pattern": "客户标题", + "customer-name-pattern-required": "客户标题为必填项", + "customer-name-pattern-hint": "使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "create-customer-if-not-exists": "如果客户不存在则创建新客户", + "unassign-from-customer": "如果发起者是仪表板则从指定客户取消分配", + "unassign-from-customer-tooltip": "只有仪表板可以同时分配给多个客户。\n如果消息发起者是仪表板,您需要明确指定要取消分配的客户标题。", + "customer-cache-expiration": "客户缓存过期时间(秒)", + "customer-cache-expiration-hint": "指定存储已找到的客户记录的最大时间间隔。值为 0 表示记录永不过期。", + "customer-cache-expiration-required": "客户缓存过期时间为必填项。", + "customer-cache-expiration-range": "客户缓存过期时间应大于或等于 0。", + "interval-start": "间隔开始", + "interval-end": "间隔结束", + "time-unit": "时间单位", + "fetch-mode": "获取模式", + "order-by-timestamp": "按时间戳排序", + "limit": "限制", + "limit-hint": "最小限制值为 2,最大为 1000。如果您想获取单条记录,请选择获取模式“First”或“Last”。", + "limit-required": "限制为必填项。", + "limit-range": "限制应在 2 到 1000 的范围内。", + "time-unit-milliseconds": "毫秒", + "time-unit-seconds": "秒", + "time-unit-minutes": "分钟", + "time-unit-hours": "小时", + "time-unit-days": "天", + "time-value-range": "允许范围为 1 到 2147483647。", + "start-interval-value-required": "间隔开始为必填项。", + "end-interval-value-required": "间隔结束为必填项。", + "filter": "过滤器", + "switch": "切换", + "math-templatization-tooltip": "此字段支持模板化。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "add-message-type": "添加消息类型", + "select-message-types-required": "至少应选择一种消息类型。", + "select-message-types": "选择消息类型", + "no-message-types-found": "未找到消息类型", + "no-message-type-matching": "未找到“{{messageType}}”。", + "create-new-message-type": "创建新的消息类型。", + "message-types-required": "消息类型为必填项。", + "client-attributes": "客户端属性", + "shared-attributes": "共享属性", + "server-attributes": "服务端属性", + "attributes-keys": "属性键", + "attributes-keys-required": "属性键为必填项", + "attributes-scope": "属性范围", + "attributes-scope-value": "属性范围值", + "attributes-scope-value-copy": "复制属性范围值", + "attributes-scope-hint": "使用 'scope' 元数据键为每条消息动态设置属性范围。如果提供了该值,将覆盖配置中设置的范围。", + "notify-device": "强制通知设备", + "send-attributes-updated-notification": "发送属性更新通知", + "send-attributes-updated-notification-hint": "将已更新属性的通知作为单独消息发送到规则引擎队列。", + "send-attributes-deleted-notification": "发送属性删除通知", + "send-attributes-deleted-notification-hint": "将已删除属性的通知作为单独消息发送到规则引擎队列。", + "update-attributes-only-on-value-change": "仅在值更改时保存属性", + "update-attributes-only-on-value-change-hint": "对每条传入消息都更新属性,无论其值是否已更改。这会增加 API 使用量并降低性能。", + "update-attributes-only-on-value-change-hint-enabled": "仅在属性值发生更改时才更新属性。如果值未更改,则不会更新属性时间戳,也不会发送属性更改通知。", + "fetch-credentials-to-metadata": "将凭据获取到元数据", + "notify-device-on-update-hint": "如果启用,将强制向设备发送共享属性更新通知。如果禁用,通知行为由传入消息元数据中的 'notifyDevice' 参数控制。要关闭通知,消息元数据必须包含值为 'false' 的 'notifyDevice' 参数。其他任何情况都将触发向设备发送通知。", + "notify-device-on-delete-hint": "如果启用,将强制向设备发送共享属性移除通知。如果禁用,通知行为由传入消息元数据中的 'notifyDevice' 参数控制。要开启通知,消息元数据必须包含值为 'true' 的 'notifyDevice' 参数。其他任何情况都不会触发向设备发送通知。", + "latest-timeseries": "最新时间序列数据键", + "timeseries-keys": "时间序列键", + "timeseries-keys-required": "至少应选择一个时间序列键。", + "add-timeseries-key": "添加时间序列键", + "add-message-field": "添加消息字段", + "relation-search-parameters": "关联搜索参数", + "relation-parameters": "关联参数", + "add-metadata-field": "添加元数据字段", + "data-keys": "消息字段名称", + "copy-from": "复制来源", + "data-to-metadata": "数据到元数据", + "metadata-to-data": "元数据到数据", + "use-regular-expression-hint": "使用正则表达式按模式复制键。\n\n提示与技巧:\n按“Enter”完成字段名称输入。\n按“Backspace”删除字段名称。支持多个字段名称。", + "interval": "间隔", + "interval-required": "间隔为必填项", + "interval-hint": "去重间隔(秒)。", + "interval-min-error": "最小允许值为 1", + "max-pending-msgs": "最大待处理消息数", + "max-pending-msgs-hint": "为每个唯一去重 ID 存储在内存中的最大消息数。", + "max-pending-msgs-required": "最大待处理消息数为必填项", + "max-pending-msgs-max-error": "最大允许值为 1000", + "max-pending-msgs-min-error": "最小允许值为 1", + "max-retries": "最大重试次数", + "max-retries-required": "最大重试次数为必填项", + "max-retries-hint": "将去重消息推入队列的最大重试次数。重试间隔为 10 秒", + "max-retries-max-error": "最大允许值为 100", + "max-retries-min-error": "最小允许值为 0", + "strategy": "策略", + "strategy-required": "策略为必填项", + "strategy-all-hint": "将去重期间内到达的所有消息作为单个 JSON 数组消息返回。其中每个元素表示包含 msg 和 metadata 内部属性的对象。", + "strategy-first-hint": "返回去重期间内到达的第一条消息。", + "strategy-last-hint": "返回去重期间内到达的最后一条消息。", + "first": "第一条", + "last": "最后一条", + "all": "全部", + "output-msg-type-hint": "去重结果的消息类型。", + "queue-name-hint": "去重结果将发布到的队列名称。", + "keys": "键", + "keys-required": "键为必填项", + "rename-keys-in": "在以下位置重命名键", + "data": "数据", + "message": "消息", + "metadata": "元数据", + "current-key-name": "当前键名称", + "key-name-required": "键名称为必填项", + "new-key-name": "新键名称", + "new-key-name-required": "新键名称为必填项", + "metadata-keys": "元数据字段名称", + "json-path-expression": "JSON 路径表达式", + "json-path-expression-required": "JSON 路径表达式为必填项", + "json-path-expression-hint": "JSONPath 指定 JSON 结构中某个元素或一组元素的路径。'$' 表示根对象或数组。", + "relations-query": "关联查询", + "device-relations-query": "设备关联查询", + "max-relation-level": "最大关联层级", + "max-relation-level-error": "值应大于 0 或不指定。", + "max-relation-level-invalid": "值应为整数。", + "relation-type": "关联类型", + "relation-type-pattern": "关联类型模式", + "relation-type-pattern-required": "关联类型模式为必填项", + "relation-types-list": "要传播的关联类型", + "relation-types-list-hint": "如果未选择传播关联类型,告警将不按关联类型过滤进行传播。", + "unlimited-level": "无限层级", + "latest-telemetry": "最新遥测", + "add-telemetry-key": "添加遥测键", + "delete-from": "删除来源", + "use-regular-expression-delete-hint": "使用正则表达式按模式删除键。\n\n提示与技巧:\n按“Enter”完成字段名称输入。\n按“Backspace”删除字段名称。\n支持多个字段名称。", + "fetch-into": "获取到", + "attr-mapping": "属性映射:", + "source-attribute": "源属性键", + "source-attribute-required": "源属性键为必填项。", + "source-telemetry": "源遥测键", + "source-telemetry-required": "源遥测键为必填项。", + "target-key": "目标键", + "target-key-required": "目标键为必填项。", + "attr-mapping-required": "至少应指定一个映射条目。", + "fields-mapping": "字段映射", + "fields-mapping-hint": "如果消息字段设置为 $entityId,消息发起者的 ID 将保存到指定的表列中。", + "relations-query-config-direction-suffix": "发起者", + "profile-name": "配置名称", + "fetch-circle-parameter-info-from-metadata-hint": "元数据字段 '{{perimeterKeyName}}' 应按以下格式定义:{\"latitude\":48.196, \"longitude\":24.6532, \"radius\":100.0, \"radiusUnit\":\"METER\"}", + "fetch-poligon-parameter-info-from-metadata-hint": "元数据字段 '{{perimeterKeyName}}' 应按以下格式定义:[[48.19736,24.65235],[48.19800,24.65060],...,[48.19849,24.65420]]", + "short-templatization-tooltip": "使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "fields-mapping-required": "至少应指定一个字段映射。", + "at-least-one-field-required": "至少一个输入字段必须提供值。", + "originator-fields-sv-map-hint": "目标键字段支持模板化。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "sv-map-hint": "仅目标键字段支持模板化。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "source-field": "源字段", + "source-field-required": "源字段为必填项。", + "originator-source": "发起者来源", + "new-originator": "新发起者", + "originator-customer": "客户", + "originator-tenant": "租户", + "originator-related": "关联实体", + "originator-alarm-originator": "告警发起者", + "originator-entity": "按名称模式匹配的实体", + "clone-message": "克隆消息", + "transform": "转换", + "default-ttl": "默认 TTL", + "default-ttl-required": "默认 TTL 为必填项。", + "default-ttl-hint": "规则节点将从消息元数据中获取 Time-to-Live(TTL)值。如果没有值,则使用配置中指定的 TTL。如果值设为 0,则应用租户配置中的 TTL。", + "default-ttl-zero-hint": "如果 TTL 值设为 0,则不会应用 TTL。", + "min-default-ttl-message": "最小 TTL 仅允许为 0。", + "generation-parameters": "生成参数", + "message-count": "生成消息限制(0 - 无限)", + "message-count-required": "生成消息限制为必填项。", + "min-message-count-message": "最小消息数仅允许为 0。", + "period-seconds": "周期(秒)", + "period-seconds-required": "周期为必填项。", + "generation-frequency-seconds": "生成频率(秒)", + "generation-frequency-required": "生成频率为必填项。", + "min-generation-frequency-message": "最小值仅允许为 60 秒。", + "script-lang-tbel": "TBEL", + "script-lang-js": "JS", + "use-metadata-period-in-seconds-patterns": "使用秒周期模式", + "use-metadata-period-in-seconds-patterns-hint": "如果选中,规则节点将使用消息元数据或数据中的秒周期间隔模式(假设间隔以秒为单位)。", + "period-in-seconds-pattern": "秒周期模式", + "period-in-seconds-pattern-required": "秒周期模式为必填项", + "min-period-seconds-message": "最小周期仅允许为 60 秒。", + "originator": "发起者", + "message-body": "消息体", + "message-metadata": "消息元数据", + "generate": "生成", + "current-rule-node": "当前规则节点", + "current-tenant": "当前租户", + "generator-function": "生成器函数", + "test-generator-function": "测试生成器函数", + "generator": "生成器", + "test-filter-function": "测试过滤器函数", + "test-switch-function": "测试切换函数", + "test-transformer-function": "测试转换器函数", + "transformer": "转换器", + "alarm-create-condition": "告警创建条件", + "test-condition-function": "测试条件函数", + "alarm-clear-condition": "告警清除条件", + "alarm-details-builder": "告警详情构建器", + "test-details-function": "测试详情函数", + "alarm-type": "告警类型", + "select-entity-types": "选择实体类型", + "alarm-type-required": "告警类型为必填项。", + "alarm-severity": "告警严重程度", + "alarm-severity-required": "告警严重程度为必填项", + "alarm-severity-pattern": "告警严重程度模式", + "alarm-status-filter": "告警状态过滤器", + "alarm-status-list-empty": "告警状态列表为空", + "no-alarm-status-matching": "未找到匹配的告警状态。", + "propagate": "将告警传播到关联实体", + "propagate-to-owner": "将告警传播到实体所有者(客户或租户)", + "propagate-to-tenant": "将告警传播到租户", + "condition": "条件", + "details": "详情", + "to-string": "转为字符串", + "test-to-string-function": "测试转为字符串函数", + "from-template": "发件人", + "from-template-required": "发件人为必填项", + "message-to-metadata": "消息到元数据", + "metadata-to-message": "元数据到消息", + "from-message": "来自消息", + "from-metadata": "来自元数据", + "to-template": "收件人", + "to-template-required": "收件人模板为必填项", + "mail-address-list-template-hint": "逗号分隔的地址列表,使用 ${metadataKey} 获取元数据中的值,使用 $[messageKey] 获取消息体中的值", + "cc-template": "抄送", + "bcc-template": "密送", + "subject-template": "主题", + "subject-template-required": "主题模板为必填项", + "body-template": "正文", + "body-template-required": "正文模板为必填项", + "dynamic-mail-body-type": "动态邮件正文类型", + "mail-body-type": "邮件正文类型", + "body-type-template": "正文类型模板", + "reply-routing-configuration": "回复路由配置", + "rpc-reply-routing-configuration-hint": "这些配置参数指定用于标识服务、会话和请求的元数据键名称,以便发送回复。", + "reply-routing-configuration-hint": "这些配置参数指定用于标识服务和请求的元数据键名称,以便发送回复。", + "request-id-metadata-attribute": "请求 Id", + "service-id-metadata-attribute": "服务 Id", + "session-id-metadata-attribute": "会话 Id", + "timeout-sec": "超时时间(秒)", + "timeout-required": "超时时间为必填项", + "min-timeout-message": "最小超时值仅允许为 0。", + "endpoint-url-pattern": "Endpoint URL 模式", + "endpoint-url-pattern-required": "Endpoint URL 模式为必填项", + "request-method": "请求方法", + "use-simple-client-http-factory": "使用简单客户端 HTTP 工厂", + "ignore-request-body": "无请求体", + "parse-to-plain-text": "解析为纯文本", + "parse-to-plain-text-hint": "如果选中,请求体消息载荷将从 JSON 字符串转换为纯文本,例如 msg = \"Hello,\\t\"world\"\" 将解析为 Hello, \"world\"", + "read-timeout": "读取超时时间(毫秒)", + "read-timeout-hint": "值为 0 表示无限超时", + "max-parallel-requests-count": "最大并行请求数", + "max-parallel-requests-count-hint": "值为 0 表示不限制并行处理", + "max-response-size": "最大响应大小(KB)", + "max-response-size-hint": "解码或编码 HTTP 消息(如 JSON 或 XML 载荷)时分配用于缓冲数据的最大内存量", + "headers": "请求头", + "headers-hint": "在请求头/值字段中使用 ${metadataKey} 获取元数据中的值,使用 $[messageKey] 获取消息体中的值", + "header": "请求头", + "header-required": "请求头为必填项", + "value": "值", + "value-required": "值为必填项", + "topic-pattern": "主题模式", + "key-pattern": "键模式", + "key-pattern-hint": "可选。如果指定了有效的分区号,则在发送记录时将使用该分区号。如果未指定分区,则使用键代替。如果两者都未指定,将以轮询方式分配分区。", + "topic-pattern-required": "主题模式为必填项", + "topic": "主题", + "topic-required": "主题为必填项", + "bootstrap-servers": "Bootstrap 服务器", + "bootstrap-servers-required": "Bootstrap 服务器值为必填项", + "other-properties": "其他属性", + "key": "键", + "key-required": "键为必填项", + "retries": "失败时自动重试次数", + "min-retries-message": "最小重试次数仅允许为 0。", + "batch-size-bytes": "生产者批量大小(字节)", + "min-batch-size-bytes-message": "最小批量大小仅允许为 0。", + "linger-ms": "本地缓冲时间(毫秒)", + "min-linger-ms-message": "最小值仅允许为 0 毫秒。", + "buffer-memory-bytes": "客户端缓冲区最大大小(字节)", + "min-buffer-memory-message": "最小缓冲区大小仅允许为 0。", + "memory-buffer-size-range": "内存缓冲区大小必须在 0 到 {{max}} KB 之间", + "acks": "确认数", + "topic-arn-pattern": "主题 ARN 模式", + "topic-arn-pattern-required": "主题 ARN 模式为必填项", + "aws-access-key-id": "AWS Access Key ID", + "aws-access-key-id-required": "AWS Access Key ID 为必填项", + "aws-secret-access-key": "AWS Secret Access Key", + "aws-secret-access-key-required": "AWS Secret Access Key 为必填项", + "aws-region": "AWS 区域", + "aws-region-required": "AWS 区域为必填项", + "exchange-name-pattern": "Exchange 名称模式", + "routing-key-pattern": "路由键模式", + "message-properties": "消息属性", + "host": "主机", + "host-required": "主机为必填项", + "port": "端口", + "port-required": "端口为必填项", + "port-range": "端口应在 1 到 65535 的范围内。", + "virtual-host": "虚拟主机", + "username": "用户名", + "password": "密码", + "automatic-recovery": "自动恢复", + "connection-timeout-ms": "连接超时时间(毫秒)", + "min-connection-timeout-ms-message": "最小值仅允许为 0 毫秒。", + "handshake-timeout-ms": "握手超时时间(毫秒)", + "min-handshake-timeout-ms-message": "最小值仅允许为 0 毫秒。", + "client-properties": "客户端属性", + "queue-url-pattern": "队列 URL 模式", + "queue-url-pattern-required": "队列 URL 模式为必填项", + "delay-seconds": "延迟(秒)", + "min-delay-seconds-message": "最小值仅允许为 0 秒。", + "max-delay-seconds-message": "最大值仅允许为 900 秒。", + "name": "名称", + "name-required": "名称为必填项", + "queue-type": "队列类型", + "sqs-queue-standard": "标准", + "sqs-queue-fifo": "FIFO", + "gcp-project-id": "GCP 项目 ID", + "gcp-project-id-required": "GCP 项目 ID 为必填项", + "gcp-service-account-key": "GCP 服务账号密钥文件", + "gcp-service-account-key-required": "GCP 服务账号密钥文件为必填项", + "pubsub-topic-name": "主题名称", + "pubsub-topic-name-required": "主题名称为必填项", + "message-attributes": "消息属性", + "message-attributes-hint": "在名称/值字段中使用 ${metadataKey} 获取元数据中的值,使用 $[messageKey] 获取消息体中的值", + "connect-timeout": "连接超时时间(秒)", + "connect-timeout-required": "连接超时时间为必填项。", + "connect-timeout-range": "连接超时时间应在 1 到 200 的范围内。", + "client-id": "Client ID", + "client-id-hint": "可选。留空将自动生成 Client ID。指定 Client ID 时请谨慎。大多数 MQTT 代理不允许使用相同 Client ID 的多个连接。要连接到此类代理,您的 MQTT Client ID 必须唯一。当平台以微服务模式运行时,规则节点的副本会在每个微服务中启动。这将自动导致多个具有相同 ID 的 MQTT 客户端,并可能导致规则节点故障。为避免此类故障,请启用下方的“将 Service ID 作为后缀添加到 Client ID”选项。", + "append-client-id-suffix": "将 Service ID 作为后缀添加到 Client ID", + "client-id-suffix-hint": "可选。在明确指定“Client ID”时适用。如果选中,Service ID 将作为后缀添加到 Client ID。有助于避免平台以微服务模式运行时的故障。", + "device-id": "设备 ID", + "device-id-required": "设备 ID 为必填项。", + "clean-session": "清除会话", + "enable-ssl": "启用 SSL", + "credentials": "凭据", + "credentials-type": "凭据类型", + "credentials-type-required": "凭据类型为必填项。", + "credentials-anonymous": "匿名", + "credentials-basic": "基本", + "credentials-pem": "PEM", + "credentials-pem-hint": "至少需要服务器 CA 证书文件或客户端证书和客户端私钥文件对", + "credentials-sas": "共享访问签名", + "sas-key": "SAS 密钥", + "sas-key-required": "SAS 密钥为必填项。", + "hostname": "主机名", + "hostname-required": "主机名为必填项。", + "azure-ca-cert": "CA 证书文件", + "username-required": "用户名为必填项。", + "password-required": "密码为必填项。", + "ca-cert": "服务器 CA 证书文件", + "private-key": "客户端私钥文件", + "cert": "客户端证书文件", + "no-file": "未选择文件。", + "drop-file": "拖放文件或点击以选择要上传的文件。", + "private-key-password": "私钥密码", + "use-system-smtp-settings": "使用系统 SMTP 设置", + "use-metadata-dynamic-interval": "使用动态间隔", + "metadata-dynamic-interval-hint": "间隔开始和结束输入字段支持模板化。请注意,替换后的模板值应以毫秒为单位设置。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "use-metadata-interval-patterns-hint": "如果选中,规则节点将使用消息元数据或数据中的开始和结束间隔模式(假设间隔以毫秒为单位)。", + "use-message-alarm-data": "使用消息告警数据", + "overwrite-alarm-details": "覆盖告警详情", + "use-alarm-severity-pattern": "使用告警严重程度模式", + "check-all-keys": "检查所有指定字段是否存在", + "check-all-keys-hint": "如果选中,将检查所有指定的键是否存在于消息数据和元数据中。", + "check-relation-to-specific-entity": "检查与特定实体的关联", + "check-relation-to-specific-entity-tooltip": "如果启用,将检查与特定实体的关联是否存在;否则,检查与任意实体的关联是否存在。在两种情况下,关联查找都基于配置的方向和类型。", + "check-relation-hint": "根据方向和关联类型检查与特定实体或任意实体的关联是否存在。", + "delete-relation-with-specific-entity": "删除与特定实体的关联", + "delete-relation-with-specific-entity-hint": "如果启用,将仅删除与一个特定实体的关联。否则,将删除与所有匹配实体的关联。", + "delete-relation-hint": "根据方向和类型,从传入消息的发起者删除到指定实体或实体列表的关联。", + "remove-current-relations": "移除当前关联", + "remove-current-relations-hint": "根据方向和类型,移除传入消息发起者的当前关联。", + "change-originator-to-related-entity": "将发起者更改为关联实体", + "change-originator-to-related-entity-hint": "用于将提交的消息作为来自另一个实体的消息进行处理。", + "start-interval": "间隔开始", + "end-interval": "间隔结束", + "start-interval-required": "间隔开始为必填项。", + "end-interval-required": "间隔结束为必填项。", + "smtp-protocol": "协议", + "smtp-host": "SMTP 主机", + "smtp-host-required": "SMTP 主机为必填项。", + "smtp-port": "SMTP 端口", + "smtp-port-required": "必须提供 SMTP 端口。", + "smtp-port-range": "SMTP 端口应在 1 到 65535 的范围内。", + "timeout-msec": "超时时间(毫秒)", + "min-timeout-msec-message": "最小值仅允许为 0 毫秒。", + "enter-username": "输入用户名", + "enter-password": "输入密码", + "enable-tls": "启用 TLS", + "tls-version": "TLS 版本", + "enable-proxy": "启用代理", + "use-system-proxy-properties": "使用系统代理属性", + "proxy-host": "代理主机", + "proxy-host-required": "代理主机为必填项。", + "proxy-port": "代理端口", + "proxy-port-required": "代理端口为必填项。", + "proxy-port-range": "代理端口应在 1 到 65535 的范围内。", + "proxy-user": "代理用户", + "proxy-password": "代理密码", + "proxy-scheme": "代理方案", + "numbers-to-template": "电话号码收件人模板", + "numbers-to-template-required": "电话号码收件人模板为必填项", + "numbers-to-template-hint": "逗号分隔的电话号码,使用 ${metadataKey} 获取元数据中的值,使用 $[messageKey] 获取消息体中的值", + "sms-message-template": "短信消息模板", + "sms-message-template-required": "短信消息模板为必填项", + "use-system-sms-settings": "使用系统短信提供商设置", + "min-period-0-seconds-message": "最小周期仅允许为 0 秒。", + "max-pending-messages": "最大待处理消息数", + "max-pending-messages-required": "最大待处理消息数为必填项。", + "max-pending-messages-range": "最大待处理消息数应在 1 到 100000 的范围内。", + "originator-types-filter": "发起者类型过滤器", + "interval-seconds": "间隔(秒)", + "interval-seconds-required": "间隔为必填项。", + "int-range": "值不得超过最大整数限制(2147483648)", + "min-interval-seconds-message": "最小间隔仅允许为 1 秒。", + "output-timeseries-key-prefix": "输出时间序列键前缀", + "output-timeseries-key-prefix-required": "输出时间序列键前缀为必填项。", + "separator-hint": "您应按“Enter”完成字段输入。", + "select-details": "选择详情", + "entity-details-id": "Id", + "entity-details-title": "标题", + "entity-details-country": "国家", + "entity-details-state": "省/州", + "entity-details-city": "城市", + "entity-details-zip": "邮编", + "entity-details-address": "地址", + "entity-details-address2": "地址2", + "entity-details-additional_info": "附加信息", + "entity-details-phone": "电话", + "entity-details-email": "Email", + "email-sender": "Email 发送者", + "fields-to-check": "要检查的字段", + "add-detail": "添加详情", + "check-all-keys-tooltip": "如果启用,将检查消息和元数据字段名称中列出的所有字段是否存在于传入消息及其元数据中。", + "fields-to-check-hint": "按“Enter”完成字段名称输入。支持多个字段名称。", + "entity-details-list-empty": "至少应选择一个详情。", + "alarm-status": "告警状态", + "alarm-required": "至少应选择一个告警状态。", + "no-entity-details-matching": "未找到匹配的实体详情。", + "custom-table-name": "自定义表名称", + "custom-table-name-required": "表名称为必填项", + "custom-table-hint": "该表必须在您的 Cassandra 集群中创建,且其名称必须以前缀 'cs_tb_' 开头,以避免将数据插入到通用 TB 表中。请在此处输入不带 'cs_tb_' 前缀的表名称。", + "message-field": "消息字段", + "message-field-required": "消息字段为必填项。", + "table-col": "表列", + "table-col-required": "表列为必填项。", + "latitude-field-name": "纬度字段名称", + "longitude-field-name": "经度字段名称", + "latitude-field-name-required": "纬度字段名称为必填项。", + "longitude-field-name-required": "经度字段名称为必填项。", + "fetch-perimeter-info-from-metadata": "从元数据获取边界信息", + "fetch-perimeter-info-from-metadata-tooltip": "如果边界类型设为“Polygon”,元数据字段 '{{perimeterKeyName}}' 的值将直接用作边界定义,不进行额外解析。否则,如果边界类型设为“Circle”,'{{perimeterKeyName}}' 元数据字段的值将被解析以提取 'latitude'、'longitude'、'radius'、'radiusUnit' 字段用于圆形边界定义。", + "perimeter-key-name": "边界键名称", + "perimeter-key-name-hint": "包含边界信息的元数据字段名称。", + "perimeter-key-name-required": "边界键名称为必填项。", + "perimeter-circle": "圆形", + "perimeter-polygon": "多边形", + "perimeter-type": "边界类型", + "circle-center-latitude": "中心纬度", + "circle-center-latitude-required": "中心纬度为必填项。", + "circle-center-longitude": "中心经度", + "circle-center-longitude-required": "中心经度为必填项。", + "range-unit-meter": "米", + "range-unit-kilometer": "千米", + "range-unit-foot": "英尺", + "range-unit-mile": "英里", + "range-unit-nautical-mile": "海里", + "range-units": "范围单位", + "range-units-required": "范围单位为必填项。", + "range": "范围", + "range-required": "范围为必填项。", + "polygon-definition": "多边形定义", + "polygon-definition-required": "多边形定义为必填项。", + "polygon-definition-hint": "使用以下格式手动定义多边形:[[lat1,lon1],[lat2,lon2], ... ,[latN,lonN]]。", + "min-inside-duration": "最小内部持续时间", + "min-inside-duration-value-required": "最小内部持续时间为必填项", + "min-inside-duration-time-unit": "最小内部持续时间单位", + "min-outside-duration": "最小外部持续时间", + "min-outside-duration-value-required": "最小外部持续时间为必填项", + "min-outside-duration-time-unit": "最小外部持续时间单位", + "tell-failure-if-absent": "报告失败", + "tell-failure-if-absent-hint": "如果至少一个选定的键不存在,出站消息将报告“Failure”。", + "get-latest-value-with-ts": "获取最新遥测值的时间戳", + "get-latest-value-with-ts-hint": "如果选中,最新遥测值还将包含时间戳,例如:\"temp\": \"{\"ts\":1574329385897, \"value\":42}\"", + "ignore-null-strings": "忽略空字符串", + "ignore-null-strings-hint": "如果选中,规则节点将忽略值为空的实体字段。", + "add-metadata-key-values-as-kafka-headers": "将消息元数据键值对添加到 Kafka 记录头", + "add-metadata-key-values-as-kafka-headers-hint": "如果选中,消息元数据中的键值对将作为具有预定义字符集编码的字节数组添加到出站记录头。", + "charset-encoding": "字符集编码", + "charset-encoding-required": "字符集编码为必填项。", + "charset-us-ascii": "US-ASCII", + "charset-iso-8859-1": "ISO-8859-1", + "charset-utf-8": "UTF-8", + "charset-utf-16be": "UTF-16BE", + "charset-utf-16le": "UTF-16LE", + "charset-utf-16": "UTF-16", + "select-queue-hint": "队列名称可从下拉列表中选择或添加自定义名称。", + "device-profile-node-hint": "如果您有持续时间或重复条件,此功能可确保告警状态评估的连续性。", + "persist-alarm-rules": "持久化告警规则的状态", + "persist-alarm-rules-hint": "如果启用,规则节点将把处理状态存储到数据库。", + "fetch-alarm-rules": "获取告警规则的状态", + "fetch-alarm-rules-hint": "如果启用,规则节点将在初始化时恢复处理状态,并确保即使在服务器重启后也能触发告警。否则,状态将在设备的第一条消息到达时恢复。", + "input-value-key": "输入值键", + "input-value-key-required": "输入值键为必填项。", + "output-value-key": "输出值键", + "output-value-key-required": "输出值键为必填项。", + "number-of-digits-after-floating-point": "浮点数后的位数", + "number-of-digits-after-floating-point-range": "浮点数后的位数应在 0 到 15 的范围内。", + "failure-if-delta-negative": "如果差值为负则报告失败", + "failure-if-delta-negative-tooltip": "如果差值为负,规则节点将强制消息处理失败。", + "use-caching": "使用缓存", + "use-caching-tooltip": "规则节点将缓存来自传入消息的“{{inputValueKey}}”值以提高性能。请注意,如果您在其他位置修改了“{{inputValueKey}}”值,缓存将不会更新。", + "add-time-difference-between-readings": "添加“{{inputValueKey}}”读数之间的时间差", + "add-time-difference-between-readings-tooltip": "如果启用,规则节点将把“{{periodValueKey}}”添加到出站消息中。", + "period-value-key": "周期值键", + "period-value-key-required": "周期值键为必填项。", + "general-pattern-hint": "使用 ${metadataKey} 获取元数据中的值,使用 $[messageKey] 获取消息体中的值。", + "alarm-severity-pattern-hint": "使用 ${metadataKey} 获取元数据中的值,使用 $[messageKey] 获取消息体中的值。告警严重程度应为系统值(CRITICAL、MAJOR 等)", + "output-node-name-hint": "规则节点名称对应于出站消息的关联类型,用于将消息转发到调用者规则链中的其他规则节点。", + "use-server-ts": "使用服务器时间戳", + "use-server-ts-hint": "对缺少显式时间戳的时间序列数据使用服务器当前时间戳。这有助于在处理来自多个源的消息或消息乱序到达时保持正确的排序。", + "kv-map-pattern-hint": "所有输入字段支持模板化。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "kv-map-single-pattern-hint": "输入字段支持模板化。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "shared-scope": "共享范围", + "server-scope": "服务端范围", + "client-scope": "客户端范围", + "attribute-type": "属性", + "attribute-type-description": "从数据库获取属性值", + "attribute-type-result-description": "将结果作为实体属性存储到数据库", + "constant-type": "常量", + "constant-type-description": "定义常量值", + "time-series-type": "时间序列", + "time-series-type-description": "从数据库获取最新时间序列值", + "time-series-type-result-description": "将结果作为实体时间序列存储到数据库", + "message-body-type": "消息", + "message-body-type-description": "从传入消息获取参数值", + "message-body-type-result-description": "将结果添加到出站消息", + "message-metadata-type": "元数据", + "message-metadata-type-description": "从传入消息元数据获取参数值", + "message-metadata-result-description": "将结果添加到出站消息元数据", + "argument-tile": "参数", + "no-arguments-prompt": "未配置参数", + "result-title": "结果", + "functions-field-input": "函数", + "no-option-found": "未找到选项", + "argument-source-field-input": "来源", + "argument-source-field-input-required": "参数来源为必填项。", + "argument-key-field-input": "键", + "argument-key-field-input-required": "参数键为必填项。", + "constant-value-field-input": "常量值", + "constant-value-field-input-required": "常量值为必填项。", + "attribute-scope-field-input": "属性范围", + "attribute-scope-field-input-required": "属性范围为必填项。", + "default-value-field-input": "默认值", + "type-field-input": "类型", + "type-field-input-required": "类型为必填项。", + "key-field-input": "键", + "add-entity-type": "添加实体类型", + "add-device-profile": "添加设备配置", + "key-field-input-required": "键为必填项。", + "number-floating-point-field-input": "浮点数后的位数", + "number-floating-point-field-input-hint": "使用 0 将结果转换为整数", + "add-to-message-field-input": "添加到消息", + "add-to-metadata-field-input": "添加到元数据", + "custom-expression-field-input": "数学表达式", + "custom-expression-field-input-required": "数学表达式为必填项", + "custom-expression-field-input-hint": "指定要计算的数学表达式。默认表达式演示如何将华氏温度转换为摄氏温度", + "retained-message": "保留消息", + "attributes-mapping": "属性映射", + "latest-telemetry-mapping": "最新遥测映射", + "add-mapped-attribute-to": "将映射的属性添加到", + "add-mapped-latest-telemetry-to": "将映射的最新遥测添加到", + "add-mapped-fields-to": "将映射的字段添加到", + "add-selected-details-to": "将选定的详情添加到", + "clear-selected-types": "清除选定的类型", + "clear-selected-details": "清除选定的详情", + "clear-selected-fields": "清除选定的字段", + "clear-selected-keys": "清除选定的键", + "geofence-configuration": "地理围栏配置", + "coordinate-field-names": "坐标字段名称", + "coordinate-field-hint": "规则节点尝试从消息中检索指定的字段。如果不存在,将在元数据中查找。", + "presence-monitoring-strategy": "存在监测策略", + "presence-monitoring-strategy-on-first-message": "首条消息时", + "presence-monitoring-strategy-on-each-message": "每条消息时", + "presence-monitoring-strategy-on-first-message-hint": "在上一次存在状态“已进入”或“已离开”更新后,经过配置的最小持续时间,在第一条消息时报告存在状态“内部”或“外部”。", + "presence-monitoring-strategy-on-each-message-hint": "在存在状态“已进入”或“已离开”更新后,在每条消息时报告存在状态“内部”或“外部”。", + "fetch-credentials-to": "将凭据获取到", + "add-originator-attributes-to": "将发起者属性添加到", + "originator-attributes": "发起者属性", + "fetch-latest-telemetry-with-timestamp": "获取带时间戳的最新遥测", + "fetch-latest-telemetry-with-timestamp-tooltip": "如果选中,最新遥测值将带有时间戳添加到出站元数据,例如:\"{{latestTsKeyName}}\": \"{\"ts\":1574329385897, \"value\":42}\"", + "tell-failure": "如果任何属性缺失则报告失败", + "tell-failure-tooltip": "如果至少一个选定的键不存在,出站消息将报告“Failure”。", + "created-time": "创建时间", + "chip-help": "按 'Enter' 完成{{inputName}}输入。\n按 'Backspace' 删除{{inputName}}。\n支持多个值。", + "detail": "详情", + "field-name": "字段名称", + "device-profile": "设备配置", + "entity-type": "实体类型", + "message-type": "消息类型", + "timeseries-key": "时间序列键", + "type": "类型", + "first-name": "名", + "last-name": "姓", + "label": "标签", + "originator-fields-mapping": "发起者字段映射", + "add-mapped-originator-fields-to": "将映射的发起者字段添加到", + "fields": "字段", + "skip-empty-fields": "跳过空字段", + "skip-empty-fields-tooltip": "值为空的字段将不会添加到输出消息/输出元数据中。", + "fetch-interval": "获取间隔", + "fetch-strategy": "获取策略", + "fetch-timeseries-from-to": "获取从 {{startInterval}} {{startIntervalTimeUnit}} 前到 {{endInterval}} {{endIntervalTimeUnit}} 前的时间序列。", + "fetch-timeseries-from-to-invalid": "获取时间序列无效(“间隔开始”应小于“间隔结束”)。", + "use-metadata-dynamic-interval-tooltip": "如果选中,规则节点将基于消息和元数据模式使用动态间隔的开始和结束。", + "all-mode-hint": "如果选择了获取模式“All”,规则节点将使用可配置的查询参数从获取间隔中检索遥测。", + "first-mode-hint": "如果选择了获取模式“First”,规则节点将检索最接近获取间隔开始的遥测。", + "last-mode-hint": "如果选择了获取模式“Last”,规则节点将检索最接近获取间隔结束的遥测。", + "ascending": "升序", + "descending": "降序", + "min": "最小值", + "max": "最大值", + "average": "平均值", + "sum": "求和", + "count": "计数", + "none": "无", + "last-level-relation-tooltip": "如果选中,规则节点将仅在最大关联层级设定的层级上搜索关联实体。", + "last-level-device-relation-tooltip": "如果选中,规则节点将仅在最大关联层级设定的层级上搜索关联设备。", + "data-to-fetch": "要获取的数据", + "mapping-of-customers": "客户的映射", + "map-fields-required": "所有映射字段为必填项。", + "attributes": "属性", + "related-device-attributes": "关联设备属性", + "add-selected-attributes-to": "将选定的属性添加到", + "device-profiles": "设备配置", + "mapping-of-tenant": "租户的映射", + "add-attribute-key": "添加属性键", + "message-template": "消息模板", + "message-template-required": "消息模板为必填项", + "use-system-slack-settings": "使用系统 Slack 设置", + "slack-api-token": "Slack API Token", + "slack-api-token-required": "Slack API Token 为必填项", + "keys-mapping": "键映射", + "add-key": "添加键", + "recipients": "收件人", + "message-subject-and-content": "消息主题和内容", + "template-rules-hint": "两个输入字段均支持模板化。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从消息元数据中提取值。", + "originator-customer-desc": "使用传入消息发起者的客户作为新发起者。", + "originator-tenant-desc": "使用当前租户作为新发起者。", + "originator-related-entity-desc": "使用关联实体作为新发起者。基于配置的关联类型和方向进行查找。", + "originator-alarm-originator-desc": "使用告警发起者作为新发起者。仅当传入消息发起者为告警实体时适用。", + "originator-entity-by-name-pattern-desc": "使用从数据库获取的实体作为新发起者。基于实体类型和指定的名称模式进行查找。", + "email-from-template-hint": "使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "recipients-block-main-hint": "逗号分隔的地址列表。所有输入字段支持模板化。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "forward-msg-default-rule-chain": "将消息转发到发起者的默认规则链", + "forward-msg-default-rule-chain-tooltip": "如果启用,消息将转发到发起者的默认规则链;如果发起者在实体配置中未定义默认规则链,则使用配置中的规则链。", + "exclude-zero-deltas": "从出站消息中排除零差值", + "exclude-zero-deltas-hint": "如果启用,仅当“{{outputValueKey}}”输出键的值不为零时才将其添加到出站消息。", + "exclude-zero-deltas-time-difference-hint": "如果启用,仅当“{{outputValueKey}}”值不为零时,才将“{{outputValueKey}}”和“{{periodValueKey}}”输出键添加到出站消息。", + "search-direction-from": "从发起者到目标实体", + "search-direction-to": "从目标实体到发起者", + "del-relation-direction-from": "从发起者", + "del-relation-direction-to": "到发起者", + "target-entity": "目标实体", + "function-configuration": "函数配置", + "function-name": "函数名称", + "function-name-required": "函数名称为必填项。", + "qualifier": "限定符", + "qualifier-hint": "如果未指定限定符,将使用默认限定符 \"$LATEST\"。", + "aws-credentials": "AWS 凭据", + "connection-timeout": "连接超时时间", + "connection-timeout-required": "连接超时时间为必填项。", + "connection-timeout-min": "最小连接超时时间为 0。", + "connection-timeout-hint": "初始建立连接时在放弃并超时之前等待的时间(秒)。值为 0 表示无限,不推荐使用。", + "request-timeout": "请求超时时间", + "request-timeout-required": "请求超时时间为必填项", + "request-timeout-min": "最小请求超时时间为 0", + "request-timeout-hint": "等待请求完成后放弃并超时的时间(秒)。值为 0 表示无限,不推荐使用。", + "units": "单位", + "tell-failure-aws-lambda": "如果 AWS Lambda 函数执行引发异常则报告失败", + "tell-failure-aws-lambda-hint": "如果 AWS Lambda 函数执行引发异常,规则节点将强制消息处理失败。", + "basic-mode": "基本", + "advanced-mode": "高级", + "save-time-series": { + "processing-settings": "处理设置", + "processing-settings-hint": "定义传入消息的处理方式。基本处理设置允许您选择预配置的策略,而高级设置允许您为每个操作选择单独的处理策略。", + "advanced-settings-hint": "配置处理策略时请谨慎。某些组合可能导致意外行为。", + "strategy": "策略", + "deduplication-interval": "去重间隔", + "deduplication-interval-required": "去重间隔为必填项", + "deduplication-interval-min-max-range": "去重间隔应至少为 1 秒且最多为 1 天", + "strategy-type": { + "every-message": "每条消息", + "skip": "跳过", + "deduplicate": "去重", + "web-sockets-only": "仅 WebSockets" + }, + "time-series": "时间序列", + "latest": "最新值", + "web-sockets": "WebSockets" + }, + "save-attribute": { + "processing-settings": "处理设置", + "processing-settings-hint": "定义传入消息的处理方式。基本处理设置允许您选择预配置的策略,而高级设置允许您为每个操作选择单独的处理策略。", + "advanced-settings-hint": "配置处理策略时请谨慎。某些组合可能导致意外行为。", + "strategy": "策略", + "deduplication-interval": "去重间隔", + "deduplication-interval-required": "去重间隔为必填项", + "deduplication-interval-min-max-range": "去重间隔应至少为 1 秒且最多为 1 天", + "scope": "范围", + "strategy-type": { + "every-message": "每条消息", + "skip": "跳过", + "deduplicate": "去重", + "web-sockets-only": "仅 WebSockets" + }, + "attributes": "属性" }, "key-val": { - "key": "键名", - "value": "数值", - "remove-entry": "删除条目", - "add-entry": "增加条目", - "no-data": "没有条目" - }, - "layout": { - "layout": "布局", - "layouts": "布局", - "manage": "布局管理", - "settings": "布局设置", - "color": "颜色", - "main": "主体", - "right": "右侧", - "left": "左侧", - "select": "选择目标布局", - "percentage-width": "百分比宽度(%)", - "fixed-width": "固定(px)", - "left-width": "左列(%)", - "right-width": "右列(%)", - "pick-fixed-side": "固定侧: ", - "layout-fixed-width": "固定宽度(px)", - "value-min-error": "值是必须大于{{min}}{{unit}}", - "value-max-error": "值是必须小于{{max}}{{unit}}", - "layout-fixed-width-required": "固定宽度必填", - "right-width-percentage-required": "右侧百分比宽度必填", - "left-width-percentage-required": "左侧百分比宽度必填", - "divider": "分隔线", - "right-side": "右侧布局", - "left-side": "左侧布局", - "add-new-breakpoint": "添加新的栅格", - "breakpoint": "栅格", - "breakpoints": "栅格", - "copy-from": "复制", - "size": "尺寸", - "delete-breakpoint-title": "确定要删除栅格'{{name}}'吗?", - "delete-breakpoint-text": "请注意确认后栅格将无法恢复并且将使用默认栅格。" - }, - "legend": { - "direction": "图例方向", - "position": "图例位置", - "show-values": "显示数值", - "min-option": "最小值", - "max-option": "最大值", - "average-option": "平均值", - "total-option": "总数", - "latest-option": "最新值", - "sort-legend": "在图例中排序数据键", - "show-max": "显示最大值", - "show-min": "显示最小值", - "show-avg": "显示平均值", - "show-total": "显示总数", - "show-latest": "显示最新值", - "settings": "设置图例", - "min": "最小值", - "max": "最大值", - "avg": "平均值", - "total": "总数", - "latest": "最新值", - "Min": "最小值", - "Max": "最大值", - "Avg": "平均值", - "Total": "总数", - "Latest": "最新值", - "comparison-time-ago": { - "previousInterval": "(历史间隔)", - "customInterval": "(自定义间隔)", - "days": "(一天前)", - "weeks": "(一周前)", - "months": "(一个月前)", - "years": "(一年前)" - }, - "column-title": "标题", - "label": "标签", - "value": "数值" - }, - "login": { - "login": "登录", - "request-password-reset": "请求密码重置", - "reset-password": "重置密码", - "create-password": "创建密码", - "two-factor-authentication": "双因素认证", - "passwords-mismatch-error": "输入的密码必须相同!", - "password-again": "再次输入密码", - "sign-in": "登录 ", - "username": "用户名(电子邮件)", - "remember-me": "记住我", - "forgot-password": "忘记密码?", - "password-reset": "密码重置", - "expired-password-reset-message": "您的凭据已过期!请创建密码。", - "new-password": "新密码", - "new-password-again": "再次输入新密码", - "password-link-sent-message": "密码重置链接已成功发送!", - "email": "电子邮件", - "invalid-email-format": "email格式无效。", - "login-with": "使用{{name}}登录", - "or": "或", - "error": "登录错误", - "verify-your-identity": "身份验证", - "select-way-to-verify": "选择验证方式", - "resend-code": "重发验证码", - "resend-code-wait": "{ time, plural, =1 {1 秒} other {# 秒} }后重发验证码", - "try-another-way": "尝试其他方法", - "totp-auth-description": "请从验证APP中查看验证码。", - "totp-auth-placeholder": "验证码", - "sms-auth-description": "验证码已发送到手机号码{{contact}}。", - "sms-auth-placeholder": "SMS 验证码", - "email-auth-description": "验证码已发送到电子邮箱地址{{contact}}。", - "email-auth-placeholder": "电子邮件验证码", - "backup-code-auth-description": "请输入一个备份验证码。", - "backup-code-auth-placeholder": "备份验证码", - "activation-link-expired": "激活链接已过期", - "activation-link-expired-message": "您的激活链接已过期返回登录页面重新发送电子邮件。", - "reset-password-link-expired": "密码重置链接已过期", - "reset-password-link-expired-message": "重置密码链接已过期返回登录页面重新发送电子邮件。" + "key": "键", + "value": "值", + "see-examples": "查看示例。", + "remove-entry": "移除条目", + "remove-mapping-entry": "移除映射条目", + "add-mapping-entry": "添加映射", + "add-entry": "添加条目", + "copy-key-values-from": "复制键值来源", + "delete-key-values": "删除键值", + "delete-key-values-from": "删除键值来源", + "at-least-one-key-error": "至少应选择一个键。", + "unique-key-value-pair-error": "“{{keyText}}”必须与“{{valText}}”不同!" }, - "markdown": { - "edit": "编辑", - "preview": "预览", - "copy-code": "点击复制", - "copied": "复制完成" + "mail-body-types": { + "plain-text": "纯文本", + "html": "HTML", + "dynamic": "动态", + "use-body-type-template": "使用正文类型模板", + "plain-text-description": "简单的无格式文本,没有特殊样式或格式。", + "html-text-description": "允许您在邮件正文中使用 HTML 标签进行格式化、链接和图片。", + "dynamic-text-description": "允许基于模板化功能动态使用纯文本或 HTML 正文类型。", + "after-template-evaluation-hint": "模板评估后,值应为 true 表示 HTML,false 表示纯文本。" + }, + "ai": { + "ai-model": "AI 模型", + "model": "模型", + "ai-model-hint": "选择此规则节点用于处理请求的预配置 AI 模型,或使用“新建”来配置新模型。", + "prompt-settings": "提示词设置", + "prompt-settings-hint": "可选的系统提示词设置 AI 的一般角色和约束,而用户提示词定义要执行的具体任务。两个字段均支持模板化。", + "system-prompt": "系统提示词", + "system-prompt-max-length": "系统提示词不得超过 500000 个字符。", + "system-prompt-blank": "系统提示词不能为空。", + "user-prompt": "用户提示词", + "user-prompt-required": "用户提示词为必填项。", + "user-prompt-max-length": "用户提示词不得超过 500000 个字符。", + "user-prompt-blank": "用户提示词不能为空。", + "response-format": "响应格式", + "response-text": "文本", + "response-json": "JSON", + "response-json-schema": "JSON Schema", + "response-format-hint-TEXT": "允许模型生成任意文本,该文本可能是或不是有效的 JSON 对象。如果输出不是有效的 JSON 对象,将自动包装在 \"response\" 键下的 JSON 对象中。", + "response-format-hint-JSON": "要求模型生成有效的 JSON 响应。如果输出不是有效的 JSON 对象,将自动包装在 \"response\" 键下的 JSON 对象中。", + "response-format-hint-JSON_SCHEMA": "要求模型生成与提供的 schema 中定义的特定结构和数据类型匹配的 JSON。如果输出不是有效的 JSON 对象,将自动包装在 \"response\" 键下的 JSON 对象中。", + "response-json-schema-hint": "虽然可以输入任何有效的 JSON Schema,但此规则节点仅支持其功能的有限子集。详情请参阅节点文档。", + "response-json-schema-required": "JSON Schema 为必填项", + "advanced-settings": "高级设置", + "timeout": "超时时间", + "timeout-hint": "等待 AI 模型响应的最大时间,\n超过此时间请求将被终止。", + "timeout-required": "超时时间为必填项", + "timeout-validation": "必须为 1 秒到 10 分钟之间。", + "force-acknowledgement": "强制确认", + "force-acknowledgement-hint": "如果启用,传入消息将立即被确认。然后模型的响应将作为单独的新消息入队。", + "ai-resources": "AI 资源" + } + }, + "timezone": { + "timezone": "时区", + "select-timezone": "选择时区", + "no-timezones-matching": "未找到与“{{timezone}}”匹配的时区。", + "timezone-required": "时区为必填项。", + "browser-time": "浏览器时间" + }, + "queue": { + "queue-name": "队列", + "no-queues-found": "未找到队列。", + "no-queues-matching": "未找到与“{{queue}}”匹配的队列。", + "select-name": "选择队列名称", + "name": "名称", + "name-required": "队列名称为必填项!", + "name-unique": "队列名称不唯一!", + "name-pattern": "队列名称包含 ASCII 字母数字、“.”、“_”和“-”以外的字符!", + "queue-required": "队列为必填项!", + "topic-required": "队列主题为必填项!", + "poll-interval-required": "轮询间隔为必填项!", + "poll-interval-min-value": "轮询间隔不能小于 1", + "partitions-required": "分区为必填项!", + "partitions-min-value": "分区数不能小于 1", + "pack-processing-timeout-required": "处理超时为必填项", + "pack-processing-timeout-min-value": "处理超时值不能小于 1", + "batch-size-required": "批量大小为必填项!", + "batch-size-min-value": "批量大小不能小于 1", + "retries-required": "重试次数为必填项!", + "retries-min-value": "重试次数不能为负数", + "failure-percentage-required": "失败百分比为必填项!", + "failure-percentage-min-value": "失败百分比不能小于 0", + "failure-percentage-max-value": "失败百分比不能大于 100", + "pause-between-retries-required": "重试间隔为必填项!", + "pause-between-retries-min-value": "重试间隔不能小于 1", + "max-pause-between-retries-required": "最大重试间隔为必填项!", + "max-pause-between-retries-min-value": "最大重试间隔不能小于 1", + "submit-strategy-type-required": "提交策略类型为必填项!", + "processing-strategy-type-required": "处理策略类型为必填项!", + "queues": "队列", + "selected-queues": "{ count, plural, =1 {1 个队列} other {# 个队列} }已选择", + "delete-queue-title": "确定要删除队列“{{queueName}}”吗?", + "delete-queues-title": "确定要删除 { count, plural, =1 {1 个队列} other {# 个队列} }吗?", + "delete-queue-text": "请注意,确认后队列及所有相关数据将无法恢复。", + "delete-queues-text": "确认后所有选中的队列将被删除且不可访问。", + "search": "搜索队列", + "add": "添加队列", + "details": "队列详情", + "topic": "主题", + "submit-settings": "提交设置", + "submit-strategy": "策略类型 *", + "grouping-parameter": "分组参数", + "processing-settings": "重试处理设置", + "processing-strategy": "处理类型 *", + "retries-settings": "重试设置", + "polling-settings": "轮询设置", + "batch-processing": "批量处理", + "poll-interval": "轮询间隔", + "partitions": "分区", + "immediate-processing": "即时处理", + "consumer-per-partition": "为每个消费者发送消息轮询", + "consumer-per-partition-hint": "为每个分区启用独立的消费者", + "duplicate-msg-to-all-partitions": "将消息复制到所有分区", + "processing-timeout": "处理超时(毫秒)", + "batch-size": "批量大小", + "retries": "重试次数(0 — 无限)", + "failure-percentage": "跳过重试的失败消息百分比(%)", + "pause-between-retries": "重试间隔(秒)", + "max-pause-between-retries": "额外重试间隔(秒)", + "delete": "删除队列", + "copyId": "复制队列 Id", + "idCopiedMessage": "队列 Id 已复制到剪贴板", + "description": "描述", + "description-hint": "此文本将显示在队列描述中,替代所选策略", + "alt-description": "提交策略:{{submitStrategy}},处理策略:{{processingStrategy}}", + "custom-properties": "自定义属性", + "custom-properties-hint": "自定义队列(主题)创建属性,例如 'retention.ms:604800000;retention.bytes:1048576000'", + "strategies": { + "sequential-by-originator-label": "按来源顺序执行", + "sequential-by-originator-hint": "例如设备 A 的新消息在设备 A 的上一条消息被确认前不会提交", + "sequential-by-tenant-label": "按租户顺序执行", + "sequential-by-tenant-hint": "例如租户 A 的新消息在租户 A 的上一条消息被确认前不会提交", + "sequential-label": "顺序执行", + "sequential-hint": "新消息在上一条消息被确认前不会提交", + "burst-label": "突发", + "burst-hint": "所有消息按到达顺序提交到规则链", + "batch-label": "批量", + "batch-hint": "新批次在上一批次被确认前不会提交", + "skip-all-failures-label": "跳过所有失败", + "skip-all-failures-hint": "忽略所有失败", + "skip-all-failures-and-timeouts-label": "跳过所有失败和超时", + "skip-all-failures-and-timeouts-hint": "忽略所有失败和超时", + "retry-all-label": "全部重试", + "retry-all-hint": "重试处理包中的所有消息", + "retry-failed-label": "重试失败", + "retry-failed-hint": "重试处理包中所有失败的消息", + "retry-timeout-label": "重试超时", + "retry-timeout-hint": "重试处理包中所有超时的消息", + "retry-failed-and-timeout-label": "重试失败和超时", + "retry-failed-and-timeout-hint": "重试处理包中所有失败和超时的消息" + } + }, + "queue-statistics": { + "queue-statistics": "队列统计", + "no-queue-statistics-matching": "未找到与“{{entity}}”匹配的队列统计。", + "queue-statistics-required": "队列统计为必填项。", + "list-of-queue-statistics": "{ count, plural, =1 {1 条队列统计} other {# 条队列统计列表} }", + "selected-queue-statistics": "{ count, plural, =1 {1 条队列统计} other {# 条队列统计} }已选择", + "no-queue-statistics-text": "未找到队列统计", + "queue-statistics-starts-with": "名称以“{{prefix}}”开头的队列统计" + }, + "server-error": { + "general": "服务器通用错误", + "authentication": "认证错误", + "jwt-token-expired": "JWT Token 已过期", + "tenant-trial-expired": "租户试用已过期", + "credentials-expired": "凭证已过期", + "permission-denied": "权限被拒绝", + "invalid-arguments": "参数无效", + "bad-request-params": "请求参数错误", + "item-not-found": "未找到该项", + "too-many-requests": "请求过多", + "too-many-updates": "更新过多" + }, + "tenant": { + "tenant": "租户", + "tenants": "租户", + "management": "租户管理", + "add": "添加租户", + "admins": "管理员", + "manage-tenant-admins": "管理租户管理员", + "delete": "删除租户", + "add-tenant-text": "添加新租户", + "no-tenants-text": "未找到租户", + "tenant-details": "租户详情", + "title-max-length": "标题不能超过 256 个字符", + "delete-tenant-title": "确定要删除租户“{{tenantTitle}}”吗?", + "delete-tenant-text": "请注意,确认后租户及所有相关数据将无法恢复。", + "delete-tenants-title": "确定要删除 { count, plural, =1 {1 个租户} other {# 个租户} }吗?", + "delete-tenants-action-title": "删除 { count, plural, =1 {1 个租户} other {# 个租户} }", + "delete-tenants-text": "请注意,确认后所有选中的租户将被移除,且所有相关数据将无法恢复。", + "title": "标题", + "title-required": "标题为必填项。", + "description": "描述", + "details": "详情", + "events": "事件", + "copyId": "复制租户 Id", + "idCopiedMessage": "租户 Id 已复制到剪贴板", + "select-tenant": "选择租户", + "no-tenants-matching": "未找到与“{{entity}}”匹配的租户。", + "tenant-required": "租户为必填项", + "search": "搜索租户", + "selected-tenants": "{ count, plural, =1 {1 个租户} other {# 个租户} }已选择", + "isolated-tb-rule-engine": "使用隔离的 ThingsBoard 规则引擎队列", + "isolated-tb-rule-engine-details": "每个租户将拥有专用的规则引擎队列" + }, + "tenant-profile": { + "tenant-profile": "租户配置", + "tenant-profiles": "租户配置", + "add": "添加租户配置", + "add-profile": "添加配置", + "debug": "调试", + "edit": "编辑租户配置", + "tenant-profile-details": "租户配置详情", + "no-tenant-profiles-text": "未找到租户配置", + "name-max-length": "名称不能超过 256 个字符", + "search": "搜索租户配置", + "selected-tenant-profiles": "{ count, plural, =1 {1 个租户配置} other {# 个租户配置} }已选择", + "no-tenant-profiles-matching": "未找到与“{{entity}}”匹配的租户配置。", + "tenant-profile-required": "租户配置为必填项", + "idCopiedMessage": "租户配置 Id 已复制到剪贴板", + "set-default": "设为默认租户配置", + "delete": "删除租户配置", + "copyId": "复制租户配置 Id", + "name": "名称", + "name-required": "名称为必填项。", + "data": "配置数据", + "profile-configuration": "配置", + "description": "描述", + "default": "默认", + "delete-tenant-profile-title": "确定要删除租户配置“{{tenantProfileName}}”吗?", + "delete-tenant-profile-text": "请注意,确认后租户配置及所有相关数据将无法恢复。", + "delete-tenant-profiles-title": "确定要删除 { count, plural, =1 {1 个租户配置} other {# 个租户配置} }吗?", + "delete-tenant-profiles-text": "请注意,确认后所有选中的租户配置将被移除,且所有相关数据将无法恢复。", + "set-default-tenant-profile-title": "确定要将租户配置“{{tenantProfileName}}”设为默认吗?", + "set-default-tenant-profile-text": "确认后,该租户配置将被标记为默认配置,并用于未指定配置的新租户。", + "no-tenant-profiles-found": "未找到租户配置。", + "create-new-tenant-profile": "创建新租户配置!", + "create-tenant-profile": "创建新租户配置", + "import": "导入租户配置", + "export": "导出租户配置", + "export-failed-error": "无法导出租户配置:{{error}}", + "tenant-profile-file": "租户配置文件", + "invalid-tenant-profile-file-error": "无法导入租户配置:租户配置数据结构无效。", + "advanced-settings": "高级设置", + "entities": "实体", + "rule-engine": "规则引擎", + "time-to-live": "生存时间", + "calculated-fields": "计算字段", + "alarms-and-notifications": "告警和通知", + "ota-files-in-bytes": "文件", + "ws-title": "WS", + "unlimited": "(0 — 无限)", + "maximum-devices": "设备最大数量", + "maximum-devices-required": "设备最大数量为必填项。", + "maximum-devices-range": "设备最大数量不能为负数", + "maximum-assets": "资产最大数量", + "maximum-assets-required": "资产最大数量为必填项。", + "maximum-assets-range": "资产最大数量不能为负数", + "maximum-customers": "客户最大数量", + "maximum-customers-required": "客户最大数量为必填项。", + "maximum-customers-range": "客户最大数量不能为负数", + "maximum-users": "用户最大数量", + "maximum-users-required": "用户最大数量为必填项。", + "maximum-users-range": "用户最大数量不能为负数", + "maximum-dashboards": "仪表板最大数量", + "maximum-dashboards-required": "仪表板最大数量为必填项。", + "maximum-dashboards-range": "仪表板最大数量不能为负数", + "maximum-edges": "Edge 最大数量", + "maximum-edges-required": "Edge 最大数量为必填项。", + "maximum-edges-range": "Edge 最大数量不能为负数", + "maximum-rule-chains": "规则链最大数量", + "maximum-rule-chains-required": "规则链最大数量为必填项。", + "maximum-rule-chains-range": "规则链最大数量不能为负数", + "maximum-resources-sum-data-size": "资源文件最大总大小(字节)", + "maximum-resources-sum-data-size-required": "资源文件最大总大小为必填项。", + "maximum-resources-sum-data-size-range": "资源文件最大总大小不能为负数", + "maximum-resource-size": "单个资源文件最大大小(字节)", + "maximum-resource-size-required": "单个资源文件最大大小为必填项", + "maximum-resource-size-range": "单个资源文件最大大小不能为负数", + "maximum-ota-packages-sum-data-size": "OTA 软件包文件最大总大小(字节)", + "maximum-ota-package-sum-data-size-required": "OTA 软件包文件最大总大小为必填项。", + "maximum-ota-package-sum-data-size-range": "OTA 软件包文件最大总大小不能为负数", + "maximum-debug-duration-min": "最大调试持续时间(分钟)", + "maximum-debug-duration-min-range": "最大调试持续时间不能为负数", + "rest-requests-for-tenant": "租户 REST 请求", + "transport-tenant-telemetry-msg-rate-limit": "传输层租户遥测消息", + "transport-tenant-telemetry-data-points-rate-limit": "传输层租户遥测数据点", + "transport-device-msg-rate-limit": "传输层设备消息", + "transport-device-telemetry-msg-rate-limit": "传输层设备遥测消息", + "transport-device-telemetry-data-points-rate-limit": "传输层设备遥测数据点", + "transport-gateway-msg-rate-limit": "传输层 Gateway 消息", + "transport-gateway-telemetry-msg-rate-limit": "传输层 Gateway 遥测消息", + "transport-gateway-telemetry-data-points-rate-limit": "传输层 Gateway 遥测数据点", + "transport-gateway-device-msg-rate-limit": "传输层 Gateway 设备消息", + "transport-gateway-device-telemetry-msg-rate-limit": "传输层 Gateway 设备遥测消息", + "transport-gateway-device-telemetry-data-points-rate-limit": "传输层 Gateway 设备遥测数据点", + "tenant-entity-export-rate-limit": "实体版本创建", + "tenant-entity-import-rate-limit": "实体版本加载", + "tenant-notification-request-rate-limit": "通知请求", + "tenant-notification-requests-per-rule-rate-limit": "每条通知规则的通知请求", + "max-calculated-fields": "每个实体的计算字段最大数量", + "max-calculated-fields-range": "每个实体的计算字段最大数量不能为负数", + "max-calculated-fields-required": "每个实体的计算字段最大数量为必填项", + "max-data-points-per-rolling-arg": "滚动参数中的最大数据点数量", + "max-data-points-per-rolling-arg-range": "滚动参数中的最大数据点数量不能为负数", + "max-data-points-per-rolling-arg-required": "滚动参数中的最大数据点数量为必填项", + "max-arguments-per-cf": "每个计算字段的最大参数数量", + "max-arguments-per-cf-range": "每个计算字段的最大参数数量不能为负数", + "max-arguments-per-cf-required": "每个计算字段的最大参数数量为必填项", + "max-state-size": "状态最大大小(KB)", + "max-state-size-range": "状态最大大小(KB)不能为负数", + "max-state-size-required": "状态最大大小(KB)为必填项", + "max-value-argument-size": "单个值参数最大大小(KB)", + "max-value-argument-size-range": "单个值参数最大大小(KB)不能为负数", + "max-value-argument-size-required": "单个值参数最大大小(KB)为必填项", + "max-transport-messages": "传输消息最大数量", + "max-transport-messages-required": "传输消息最大数量为必填项。", + "max-transport-messages-range": "传输消息最大数量不能为负数", + "max-transport-data-points": "传输数据点最大数量 ", + "max-transport-data-points-required": "传输数据点最大数量 为必填项。", + "max-transport-data-points-range": "传输数据点最大数量 不能为负数", + "max-r-e-executions": "规则引擎执行最大次数", + "max-r-e-executions-required": "规则引擎执行最大次数为必填项。", + "max-r-e-executions-range": "规则引擎执行最大次数不能为负数", + "max-j-s-executions": "JavaScript 执行最大次数 ", + "max-j-s-executions-required": "JavaScript 执行最大次数 为必填项。", + "max-j-s-executions-range": "JavaScript 执行最大次数 不能为负数", + "max-tbel-executions": "TBEL 执行最大次数 ", + "max-tbel-executions-required": "TBEL 执行最大次数为必填项。", + "max-tbel-executions-range": "TBEL 执行最大次数不能为负数", + "max-d-p-storage-days": "数据点存储最大天数", + "max-d-p-storage-days-required": "数据点存储最大天数为必填项。", + "max-d-p-storage-days-range": "数据点存储最大天数不能为负数", + "default-storage-ttl-days": "默认存储 TTL 天数", + "default-storage-ttl-days-required": "默认存储 TTL 天数为必填项。", + "default-storage-ttl-days-range": "默认存储 TTL 天数不能为负数", + "alarms-ttl-days": "告警 TTL 天数", + "alarms-ttl-days-required": "告警 TTL 天数为必填项", + "alarms-ttl-days-days-range": "告警 TTL 天数不能为负数", + "rpc-ttl-days": "RPC TTL 天数", + "rpc-ttl-days-required": "RPC TTL 天数为必填项", + "rpc-ttl-days-days-range": "RPC TTL 天数不能为负数", + "queue-stats-ttl-days": "队列统计 TTL 天数", + "queue-stats-ttl-days-required": "队列统计 TTL 天数为必填项", + "queue-stats-ttl-days-range": "队列统计 TTL 天数不能为负数", + "rule-engine-exceptions-ttl-days": "规则引擎异常 TTL 天数", + "rule-engine-exceptions-ttl-days-required": "规则引擎异常 TTL 天数为必填项", + "rule-engine-exceptions-ttl-days-range": "规则引擎异常 TTL 天数不能为负数", + "max-rule-node-executions-per-message": "每条消息的规则节点执行最大次数", + "max-rule-node-executions-per-message-required": "每条消息的规则节点执行最大次数为必填项。", + "max-rule-node-executions-per-message-range": "每条消息的规则节点执行最大次数不能为负数", + "max-emails": "Email 发送最大数量", + "max-emails-required": "Email 发送最大数量为必填项。", + "max-emails-range": "Email 发送最大数量不能为负数", + "sms-enabled": "SMS 已启用", + "max-sms": "SMS 发送最大数量", + "max-sms-required": "SMS 发送最大数量为必填项。", + "max-sms-range": "SMS 发送最大数量不能为负数", + "max-created-alarms": "告警创建最大数量", + "max-created-alarms-required": "告警创建最大数量为必填项。", + "max-created-alarms-range": "告警创建最大数量不能为负数", + "no-queue": "未配置队列", + "add-queue": "添加队列", + "queues-with-count": "队列({{count}})", + "tenant-rest-limits": "租户 REST 请求", + "customer-rest-limits": "客户 REST 请求", + "incorrect-pattern-for-rate-limits": "格式为逗号分隔的容量和周期(秒)对,用冒号分隔,例如 100:1,2000:60", + "too-small-value-zero": "值必须大于 0", + "too-small-value-one": "值必须大于 1", + "queue-size-is-limited-by-system-configuration": "队列大小同时受系统配置限制。", + "cassandra-write-tenant-core-limits-configuration": "Rest API Cassandra 写入查询", + "cassandra-read-tenant-core-limits-configuration": "Rest API 和 WS 遥测 Cassandra 读取查询", + "cassandra-write-tenant-rule-engine-limits-configuration": "规则引擎遥测 Cassandra 写入查询", + "cassandra-read-tenant-rule-engine-limits-configuration": "规则引擎遥测 Cassandra 读取查询", + "ws-limit-max-sessions-per-tenant": "每个租户的最大会话数", + "ws-limit-max-sessions-per-customer": "每个客户的最大会话数", + "ws-limit-max-sessions-per-regular-user": "每个普通用户的最大会话数", + "ws-limit-max-sessions-per-public-user": "每个公共用户的最大会话数", + "ws-limit-queue-per-session": "每个会话的最大消息队列大小", + "ws-limit-max-subscriptions-per-tenant": "每个租户的最大订阅数", + "ws-limit-max-subscriptions-per-customer": "每个客户的最大订阅数", + "ws-limit-max-subscriptions-per-regular-user": "每个普通用户的最大订阅数", + "ws-limit-max-subscriptions-per-public-user": "每个公共用户的最大订阅数", + "ws-limit-updates-per-session": "每个会话的 WS 更新", + "rate-limits": { + "add-limit": "添加限制", + "and-also-less-than": "且小于", + "advanced-settings": "高级设置", + "edit-limit": "编辑限制", + "calculated-field-debug-event-rate-limit": "计算字段调试事件", + "edit-calculated-field-debug-event-rate-limit": "编辑计算字段调试事件速率限制", + "edit-transport-tenant-msg-title": "编辑传输层租户消息速率限制", + "edit-transport-tenant-telemetry-msg-title": "编辑传输层租户遥测消息速率限制", + "edit-transport-tenant-telemetry-data-points-title": "编辑传输层租户遥测数据点速率限制", + "edit-transport-device-msg-title": "编辑传输层设备消息速率限制", + "edit-transport-device-telemetry-msg-title": "编辑传输层设备遥测消息速率限制", + "edit-transport-device-telemetry-data-points-title": "编辑传输层设备遥测数据点速率限制", + "edit-transport-gateway-msg-title": "编辑传输层 Gateway 消息速率限制", + "edit-transport-gateway-telemetry-msg-title": "编辑传输层 Gateway 遥测消息速率限制", + "edit-transport-gateway-telemetry-data-points-title": "编辑传输层 Gateway 遥测数据点速率限制", + "edit-transport-gateway-device-msg-title": "编辑传输层 Gateway 设备消息速率限制", + "edit-transport-gateway-device-telemetry-msg-title": "编辑传输层 Gateway 设备遥测消息速率限制", + "edit-transport-gateway-device-telemetry-data-points-title": "编辑传输层 Gateway 设备遥测数据点速率限制", + "edit-tenant-rest-limits-title": "编辑租户 REST 请求速率限制", + "edit-customer-rest-limits-title": "编辑客户 REST 请求速率限制", + "edit-ws-limit-updates-per-session-title": "编辑每个会话的 WS 更新速率限制", + "edit-cassandra-write-tenant-core-limits-configuration": "编辑 Rest API Cassandra 写入查询", + "edit-cassandra-read-tenant-core-limits-configuration": "编辑 Rest API 和 WS 遥测 Cassandra 读取查询", + "edit-cassandra-write-tenant-rule-engine-limits-configuration": "编辑规则引擎遥测 Cassandra 写入查询", + "edit-cassandra-read-tenant-rule-engine-limits-configuration": "编辑规则引擎遥测 Cassandra 读取查询", + "edit-tenant-entity-export-rate-limit-title": "编辑实体版本创建速率限制", + "edit-tenant-entity-import-rate-limit-title": "编辑实体版本加载速率限制", + "edit-tenant-notification-request-rate-limit-title": "编辑通知请求速率限制", + "edit-tenant-notification-requests-per-rule-rate-limit-title": "编辑每条通知规则的通知请求速率限制", + "edit-edge-events-rate-limit": "编辑 Edge 事件速率限制", + "edit-edge-events-per-edge-rate-limit": "编辑每个 Edge 的 Edge 事件速率限制", + "edge-events-rate-limit": "Edge 事件", + "edge-events-per-edge-rate-limit": "每个 Edge 的 Edge 事件", + "edit-edge-uplink-messages-rate-limit": "编辑 Edge 上行消息速率限制", + "edit-edge-uplink-messages-per-edge-rate-limit": "编辑每个 Edge 的 Edge 上行消息速率限制", + "edge-uplink-messages-rate-limit": "Edge 上行消息", + "edge-uplink-messages-per-edge-rate-limit": "每个 Edge 的 Edge 上行消息", + "messages-per": "消息每", + "not-set": "未设置", + "number-of-messages": "消息数量", + "number-of-messages-required": "消息数量为必填项。", + "number-of-messages-min": "最小值为 1。", + "preview": "预览", + "per-seconds": "每秒", + "per-seconds-required": "时间速率为必填项。", + "per-seconds-min": "最小值为 1。", + "per-seconds-duplicate": "时间速率重复。每个时间间隔必须唯一。", + "rate-limits": "速率限制", + "remove-limit": "移除限制", + "transport-tenant-msg": "传输层租户消息", + "transport-tenant-telemetry-msg": "传输层租户遥测消息", + "transport-tenant-telemetry-data-points": "传输层租户遥测数据点", + "transport-device-msg": "传输层设备消息", + "transport-device-telemetry-msg": "传输层设备遥测消息", + "transport-device-telemetry-data-points": "传输层设备遥测数据点", + "transport-gateway-msg": "传输层 Gateway 消息", + "transport-gateway-telemetry-msg": "传输层 Gateway 遥测消息", + "transport-gateway-telemetry-data-points": "传输层 Gateway 遥测数据点", + "transport-gateway-device-msg": "传输层 Gateway 设备消息", + "transport-gateway-device-telemetry-msg": "传输层 Gateway 设备遥测消息", + "transport-gateway-device-telemetry-data-points": "传输层 Gateway 设备遥测数据点", + "sec": "秒" + } + }, + "timeinterval": { + "seconds-interval": "{ seconds, plural, =1 {1 秒} other {# 秒} }", + "minutes-interval": "{ minutes, plural, =1 {1 分钟} other {# 分钟} }", + "hours-interval": "{ hours, plural, =1 {1 小时} other {# 小时} }", + "days-interval": "{ days, plural, =1 {1 天} other {# 天} }", + "days": "天", + "hours": "小时", + "minutes": "分钟", + "seconds": "秒", + "advanced": "高级", + "custom": "自定义", + "predefined": { + "yesterday": "昨天", + "day-before-yesterday": "前天", + "this-day-last-week": "上周的今天", + "previous-week": "上一周(周日 - 周六)", + "previous-week-iso": "上一周(周一 - 周日)", + "previous-month": "上个月", + "previous-quarter": "上个季度", + "previous-half-year": "上半年", + "previous-year": "去年", + "current-hour": "当前小时", + "current-day": "当天", + "current-day-so-far": "当天至今", + "current-week": "本周(周日 - 周六)", + "current-week-iso": "本周(周一 - 周日)", + "current-week-so-far": "本周至今(周日 - 周六)", + "current-week-iso-so-far": "本周至今(周一 - 周日)", + "current-month": "本月", + "current-month-so-far": "本月至今", + "current-quarter": "本季度", + "current-quarter-so-far": "本季度至今", + "current-half-year": "本半年", + "current-half-year-so-far": "本半年至今", + "current-year": "本年", + "current-year-so-far": "本年至今" + }, + "type": { + "week": "周(周日 - 周六)", + "week-iso": "周(周一 - 周日)", + "month": "月", + "quarter": "季度" + } + }, + "timeunit": { + "milliseconds": "毫秒", + "seconds": "秒", + "minutes": "分钟", + "hours": "小时", + "days": "天" + }, + "timewindow": { + "timewindow": "时间窗口", + "timewindow-settings": "时间窗口设置", + "years": "{ years, plural, =1 {1 年 } other {# 年 } }", + "years-short": "{{ years }}年", + "months": "{ months, plural, =1 {1 个月 } other {# 个月 } }", + "months-short": "{{ months }}月", + "weeks": "{ weeks, plural, =1 {1 周 } other {# 周 } }", + "weeks-short": "{{ weeks }}周", + "days": "{ days, plural, =1 {1 天 } other {# 天 } }", + "days-short": "{{ days }}天", + "hours": "{ hours, plural, =0 { 小时 } =1 {1 小时 } other {# 小时 } }", + "hr": "{{ hr }} 小时", + "hr-short": "{{ hr }}时", + "minutes": "{ minutes, plural, =0 { 分钟 } =1 {1 分钟 } other {# 分钟 } }", + "min": "{{ min }} 分钟", + "min-short": "{{ min }}分", + "seconds": "{ seconds, plural, =0 { 秒 } =1 {1 秒 } other {# 秒 } }", + "sec": "{{ sec }} 秒", + "sec-short": "{{ sec }}秒", + "short": { + "years": "{ years, plural, =1 {1 年 } other {# 年 } }", + "days": "{ days, plural, =1 {1 天 } other {# 天 } }", + "hours": "{ hours, plural, =1 {1 小时 } other {# 小时 } }", + "minutes": "{{minutes}} 分钟 ", + "seconds": "{{seconds}} 秒 " }, + "realtime": "实时", + "history": "历史", + "last-prefix": "最近", + "period": "从 {{ startTime }} 到 {{ endTime }}", + "edit": "编辑时间窗口", + "date-range": "日期范围", + "for-all-time": "所有时间", + "last": "最近", + "time-period": "时间段", + "hide": "隐藏", + "interval": "间隔", + "just-now": "刚刚", + "just-now-lower": "刚刚", + "ago": "前", + "style": "时间窗口样式", + "icon": "图标", + "icon-position": "图标位置", + "icon-position-left": "左", + "icon-position-right": "右", + "font": "字体", + "color": "颜色", + "displayTypePrefix": "显示实时/历史前缀", + "preview": "预览", + "relative": "相对", + "range": "范围", + "hide-timewindow-section": "对终端用户隐藏时间窗口部分", + "hide-last-interval": "对终端用户隐藏最近间隔", + "hide-relative-interval": "对终端用户隐藏相对间隔", + "hide-fixed-interval": "对终端用户隐藏固定间隔", + "hide-aggregation": "对终端用户隐藏聚合", + "hide-group-interval": "对终端用户隐藏分组间隔", + "hide-max-values": "对终端用户隐藏最大值", + "hide-timezone": "对终端用户隐藏时区", + "disable-custom-interval": "禁用自定义间隔选择", + "edit-aggregation-functions-list": "编辑聚合函数列表", + "edit-aggregation-functions-list-hint": "可以指定可用选项列表。", + "allowed-aggregation-functions": "允许的聚合函数", + "edit-intervals-list": "编辑间隔列表", + "allowed-agg-intervals": "分组间隔", + "default-agg-interval": "默认分组间隔", + "edit-intervals-list-hint": "可以指定可用间隔选项列表。", + "edit-grouping-intervals-list-hint": "可以配置分组间隔列表和默认分组间隔。", + "all": "全部" + }, + "tooltip": { + "trigger": "触发器", + "trigger-point": "点", + "trigger-axis": "轴", + "label": "标签", + "value": "值", + "date": "日期", + "show-date-time-interval": "显示日期时间间隔", + "show-date-time-interval-hint": "根据数据聚合显示日期时间间隔。", + "hide-zero-tooltip-values": "隐藏零值", + "show-stack-total": "在堆叠模式下显示总值", + "background-color": "背景颜色", + "background-blur": "背景模糊" + }, + "unit": { + "set-unit-conversion": "设置单位转换", + "unit-settings": { + "unit-settings": "单位设置", + "source-unit": "源单位", + "source-unit-hint": "这是存储值的单位,即您要转换的源单位。请输入源数据使用的符号(例如 m、km、ft、in)。", + "target-metric-unit": "目标公制单位", + "target-metric-unit-hint": "选择要将源值转换为哪个公制单位(SI)(例如 cm、mm、km)。", + "target-imperial-unit": "目标英制单位", + "target-imperial-unit-hint": "选择要将源值转换为哪个英制单位(例如 in、ft、yd)。", + "target-hybrid-unit": "目标混合单位", + "target-hybrid-unit-hint": "选择要将源值转换为哪个混合单位(例如 cm、in、km)。混合单位结合了公制或英制单位。", + "enable-unit-conversion": "启用单位转换", + "enable-unit-conversion-hint": "开启以激活转换。关闭时,源值将保持不变。如果对应的度量组中只有一个单位(例如光通量、AQI),则此选项被禁用。" + }, + "unit-system": "单位制", + "unit-system-type": { + "AUTO": "自动", + "METRIC": "公制", + "IMPERIAL": "英制", + "HYBRID": "混合" + }, + "measures": { + "absorbed-dose-rate": "吸收剂量率", + "acceleration": "加速度", + "acidity": "酸度", + "air-quality-index": "空气质量指数", + "amount-of-substance": "物质的量", + "angle": "角度", + "angular-acceleration": "角加速度", + "area": "面积", + "area-density": "面密度", + "capacitance": "电容", + "catalytic-activity": "催化活性", + "catalytic-concentration": "催化浓度", + "charge": "电荷", + "current-density": "电流密度", + "data-transfer-rate": "数据传输速率", + "density": "密度", + "digital": "数字存储", + "dimension-ratio": "尺寸比", + "dynamic-viscosity": "动力粘度", + "earthquake-magnitude": "地震震级", + "electric-charge-density": "电荷密度", + "electric-current": "电流", + "electric-dipole-moment": "电偶极矩", + "electric-field-strength": "电场强度", + "electric-flux": "电通量", + "electric-permittivity": "介电常数", + "electric-polarizability": "电极化率", + "electrical-conductance": "电导", + "electrical-conductivity": "电导率", + "energy": "能量", + "energy-density": "能量密度", + "force": "力", + "frequency": "频率", + "fuel-efficiency": "燃油效率", + "heat-capacity": "热容", + "illuminance": "照度", + "inductance": "电感", + "kinematic-viscosity": "运动粘度", + "length": "长度", + "light-exposure": "曝光量", + "linear-charge-density": "线电荷密度", + "logarithmic-ratio": "对数比", + "luminous-efficacy": "发光效率", + "luminous-flux": "光通量", + "luminous-intensity": "发光强度", + "magnetic-field-gradient": "磁场梯度", + "magnetic-flux": "磁通量", + "magnetic-flux-density": "磁通量密度", + "magnetic-moment": "磁矩", + "magnetic-permeability": "磁导率", + "mass": "质量", + "mass-fraction": "质量分数", + "molar-concentration": "摩尔浓度", + "molar-energy": "摩尔能", + "molar-heat-capacity": "摩尔热容", + "molar-mass": "摩尔质量", + "number-concentration": "数浓度", + "parts-per-million": "百万分率", + "power": "功率", + "power-density": "功率密度", + "pressure": "压力", + "radiance": "辐射亮度", + "radiant-intensity": "辐射强度", + "radiation-dose": "辐射剂量", + "radioactive-decay": "放射性衰变", + "radioactivity": "放射性", + "radioactivity-concentration": "放射性浓度", + "reciprocal-length": "倒数长度", + "resistance": "电阻", + "reynolds-number": "雷诺数", + "signal-level": "信号电平", + "solid-angle": "立体角", + "specific-energy": "比能", + "specific-heat-capacity": "比热容", + "specific-humidity": "比湿", + "specific-volume": "比容", + "speed": "速度", + "surface-charge-density": "面电荷密度", + "surface-tension": "表面张力", + "temperature": "温度", + "thermal-conductivity": "热导率", + "time": "时间", + "torque": "扭矩", + "turbidity": "浊度", + "voltage": "电压", + "volume": "体积", + "volume-flow": "体积流量" + }, + "millimeter": "毫米", + "centimeter": "厘米", + "decimeter": "分米", + "angstrom": "埃", + "nanometer": "纳米", + "micrometer": "微米", + "meter": "米", + "kilometer": "千米", + "inch": "英寸", + "foot": "英尺", + "foot-us": "英尺(美国测量)", + "yard": "码", + "mile": "英里", + "nautical-mile": "海里", + "astronomical-unit": "天文单位", + "reciprocal-metre": "每米", + "meter-per-meter": "米每米", + "steradian": "球面度", + "thou": "密耳", + "barleycorn": "大麦粒", + "hand": "手宽", + "chain": "链", + "furlong": "弗隆", + "league": "里格", + "fathom": "英寻", + "cable": "链(海缆)", + "link": "链节", + "rod": "杆", + "nanogram": "纳克", + "microgram": "微克", + "milligram": "毫克", + "gram": "克", + "kilogram": "千克", + "tonne": "吨", + "ounce": "盎司", + "pound": "磅", + "stone": "英石", + "hundredweight-count": "英担", + "short-tons": "短吨", + "dalton": "道尔顿", + "grain": "格令", + "drachm": "打兰", + "quarter": "夸特", + "slug": "斯勒格", + "carat": "克拉", + "cubic-millimeter": "立方毫米", + "cubic-centimeter": "立方厘米", + "cubic-meter": "立方米", + "cubic-kilometer": "立方千米", + "microliter": "微升", + "milliliter": "毫升", + "liter": "升", + "hectoliter": "百升", + "cubic-inch": "立方英寸", + "cubic-foot": "立方英尺", + "cubic-yard": "立方码", + "fluid-ounce": "液量盎司", + "fluid-ounce-per-second": "液量盎司每秒", + "pint": "品脱", + "quart": "夸脱", + "gallon": "加仑", + "oil-barrels": "石油桶", + "cubic-meter-per-kilogram": "立方米每千克", + "gill": "及耳", + "hogshead": "霍格斯黑德", + "teaspoon": "茶匙", + "tablespoon": "汤匙", + "cup": "杯", + "celsius": "摄氏度", + "kelvin": "开尔文", + "rankine": "兰金", + "fahrenheit": "华氏度", + "percent": "百分比", + "meter-per-second": "米每秒", + "kilometer-per-hour": "千米每小时", + "foot-per-second": "英尺每秒", + "foot-per-minute": "英尺每分钟", + "mile-per-hour": "英里每小时", + "knot": "节", + "inch-per-second": "英寸每秒", + "inch-per-hour": "英寸每小时", + "millimeters-per-minute": "毫米每分钟", + "meter-per-minute": "米每分钟", + "kilometer-per-hour-squared": "千米每小时平方", + "foot-per-second-squared": "英尺每秒平方", + "pascal": "帕斯卡", + "kilopascal": "千帕", + "megapascal": "兆帕", + "gigapascal": "吉帕", + "millibar": "毫巴", + "bar": "巴", + "kilobar": "千巴", + "newton": "牛顿", + "newton-meter": "牛顿·米", + "foot-pounds": "英尺·磅", + "inch-pounds": "英寸·磅", + "newton-per-meter": "牛顿每米", + "atmospheres": "标准大气压", + "pounds-per-square-inch": "磅每平方英寸", + "kilopound-per-square-inch": "千磅每平方英寸", + "torr": "托", + "inches-of-mercury": "英寸汞柱", + "pascal-per-square-meter": "帕斯卡每平方米", + "pound-per-square-inch": "磅每平方英寸", + "newton-per-square-meter": "牛顿每平方米", + "kilogram-force-per-square-meter": "千克力每平方米", + "pascal-per-square-centimeter": "帕斯卡每平方厘米", + "ton-force-per-square-inch": "吨力每平方英寸", + "kilonewton-per-square-meter": "千牛顿每平方米", + "newton-per-square-millimeter": "牛顿每平方毫米", + "microjoule": "微焦", + "millijoule": "毫焦", + "joule": "焦耳", + "kilojoule": "千焦", + "megajoule": "兆焦", + "gigajoule": "吉焦", + "watt-hour": "瓦时", + "watt-minute": "瓦分", + "kilowatt-hour": "千瓦时", + "milliwatt-hour": "毫瓦时", + "megawatt-hour": "兆瓦时", + "gigawatt-hour": "吉瓦时", + "electron-volts": "电子伏特", + "joules-per-coulomb": "焦耳每库仑", + "british-thermal-unit": "英热单位", + "thousand-british-thermal-unit": "千英热单位", + "million-british-thermal-unit": "百万英热单位", + "foot-pound": "英尺·磅", + "calorie": "卡路里", + "small-calorie": "小卡", + "kilocalorie": "千卡", + "joule-per-kelvin": "焦耳每开尔文", + "joule-per-kilogram-kelvin": "焦耳每千克·开尔文", + "joule-per-kilogram": "焦耳每千克", + "watt-per-meter-kelvin": "瓦每米·开尔文", + "joule-per-cubic-meter": "焦耳每立方米", + "therm": "撒姆", + "electric-dipole-moment": "电偶极矩", + "magnetic-dipole-moment": "磁偶极矩", + "debye": "德拜", + "coulomb-per-square-meter-per-volt": "库仑每平方米每伏", + "milliwatt": "毫瓦", + "microwatt": "微瓦", + "watt": "瓦特", + "kilowatt": "千瓦", + "megawatt": "兆瓦", + "gigawatt": "吉瓦", + "metric-horsepower": "公制马力", + "milliwatt-per-square-centimeter": "毫瓦每平方厘米", + "watt-per-square-centimeter": "瓦每平方厘米", + "kilowatt-per-square-centimeter": "千瓦每平方厘米", + "milliwatt-per-square-meter": "毫瓦每平方米", + "watt-per-square-meter": "瓦每平方米", + "kilowatt-per-square-meter": "千瓦每平方米", + "watt-per-square-inch": "瓦每平方英寸", + "kilowatt-per-square-inch": "千瓦每平方英寸", + "horsepower": "马力", + "btu-per-hour": "英热单位每小时", + "btu-per-second": "英热单位每秒", + "btu-per-day": "英热单位每天", + "mbtu-per-hour": "千英热单位每小时", + "mbtu-per-second": "千英热单位每秒", + "mbtu-per-day": "千英热单位每天", + "mmbtu-per-hour": "百万英热单位每小时", + "mmbtu-per-second": "百万英热单位每秒", + "mmbtu-per-day": "百万英热单位每天", + "foot-pound-per-second": "英尺·磅每秒", + "coulomb": "库仑", + "millicoulomb": "毫库仑", + "microcoulomb": "微库仑", + "nanocoulomb": "纳库仑", + "picocoulomb": "皮库仑", + "coulomb-per-meter": "库仑每米", + "coulomb-per-cubic-meter": "库仑每立方米", + "coulomb-per-square-meter": "库仑每平方米", + "square-millimeter": "平方毫米", + "square-centimeter": "平方厘米", + "square-meter": "平方米", + "hectare": "公顷", + "square-kilometer": "平方千米", + "square-inch": "平方英寸", + "square-foot": "平方英尺", + "square-yard": "平方码", + "acre": "英亩", + "square-mile": "平方英里", + "are": "公亩", + "barn": "靶恩", + "circular-inch": "圆英寸", + "milliampere-hour": "毫安时", + "ampere-hours": "安时", + "kiloampere-hours": "千安时", + "nanoampere": "纳安", + "picoampere": "皮安", + "microampere": "微安", + "milliampere": "毫安", + "ampere": "安培", + "kiloampere": "千安", + "megaampere": "兆安", + "gigaampere": "吉安", + "microampere-per-square-centimeter": "微安每平方厘米", + "ampere-per-square-meter": "安培每平方米", + "ampere-per-meter": "安培每米", + "oersted": "奥斯特", + "bohr-magneton": "玻尔磁子", + "ampere-meter-squared": "安培·平方米", + "nanovolt": "纳伏", + "picovolt": "皮伏", + "millivolt": "毫伏", + "microvolt": "微伏", + "volt": "伏特", + "kilovolt": "千伏", + "megavolt": "兆伏", + "dbmV": "分贝伏", + "dbm": "分贝毫瓦", + "volt-meter": "伏特·米", + "kilovolt-meter": "千伏·米", + "megavolt-meter": "兆伏·米", + "microvolt-meter": "微伏·米", + "millivolt-meter": "毫伏·米", + "nanovolt-meter": "纳伏·米", + "ohm": "欧姆", + "microohm": "微欧", + "milliohm": "毫欧", + "kilohm": "千欧", + "megohm": "兆欧", + "gigohm": "吉欧", + "millihertz": "毫赫兹", + "hertz": "赫兹", + "kilohertz": "千赫兹", + "megahertz": "兆赫兹", + "gigahertz": "吉赫兹", + "terahertz": "太赫兹", + "rpm": "转每分钟", + "candela-per-square-meter": "坎德拉每平方米", + "candela": "坎德拉", + "lumen": "流明", + "lux": "勒克斯", + "foot-candle": "英尺烛光", + "lumen-per-square-meter": "流明每平方米", + "lux-second": "勒克斯·秒", + "lumen-second": "流明·秒", + "lumens-per-watt": "流明每瓦", + "mole": "摩尔", + "nanomole": "纳摩尔", + "micromole": "微摩尔", + "millimole": "毫摩尔", + "kilomole": "千摩尔", + "mole-per-cubic-meter": "摩尔每立方米", + "rssi": "接收信号强度指示", + "ppm": "百万分率", + "ppb": "十亿分率", + "micrograms-per-cubic-meter": "微克每立方米", + "aqi": "AQI", + "gram-per-cubic-meter": "克每立方米", + "gram-per-kilogram": "比湿", + "millimeters-per-second": "毫米每秒", + "neper": "奈培", + "bel": "贝尔", + "decibel": "分贝", + "meters-per-second-squared": "米每秒平方", + "becquerel": "贝可勒尔", + "curie": "居里", + "gray": "戈瑞", + "sievert": "希沃特", + "roentgen": "伦琴", + "cps": "计数每秒", + "rad": "拉德", + "rem": "雷姆", + "dps": "衰变每秒", + "rutherford": "卢瑟福", + "coulombs-per-kilogram": "库仑每千克", + "becquerels-per-cubic-meter": "贝可勒尔每立方米", + "curies-per-liter": "居里每升", + "becquerels-per-second": "贝可勒尔每秒", + "curies-per-second": "居里每秒", + "gy-per-second": "戈瑞每秒", + "watt-per-steradian": "瓦每球面度", + "watt-per-square-metre-steradian": "瓦每平方米·球面度", + "ph-level": "pH 值", + "turbidity": "浊度", + "mg-per-liter": "毫克每升", + "microsiemens-per-centimeter": "微西门子每厘米", + "millisiemens-per-meter": "毫西门子每米", + "siemens-per-meter": "西门子每米", + "kilogram-per-cubic-meter": "千克每立方米", + "gram-per-cubic-centimeter": "克每立方厘米", + "kilogram-per-square-meter": "千克每平方米", + "milligram-per-milliliter": "毫克每毫升", + "milligram-per-cubic-meter": "毫克每立方米", + "pound-per-cubic-foot": "磅每立方英尺", + "ounces-per-cubic-inch": "盎司每立方英寸", + "tons-per-cubic-yard": "吨每立方码", + "particle-density": "粒子密度", + "kilometers-per-liter": "千米每升", + "miles-per-gallon": "英里每加仑", + "liters-per-100-km": "升每百千米", + "gallons-per-mile": "加仑每英里", + "liters-per-hour": "升每小时", + "gallons-per-hour": "加仑每小时", + "beats-per-minute": "次每分钟", + "millimeters-of-mercury": "毫米汞柱", + "milligrams-per-deciliter": "毫克每分升", + "g-force": "重力加速度", + "kilonewton": "千牛顿", + "kilogram-force": "千克力", + "pound-force": "磅力", + "kilopound-force": "千磅力", + "dyne": "达因", + "poundal": "磅达", + "kip": "千磅力", + "gal": "伽", + "gravity": "重力", + "hectopascal": "百帕", + "atmosphere": "标准大气压", + "millibars": "毫巴", + "inch-of-mercury": "英寸汞柱", + "richter-scale": "里氏震级", + "nanosecond": "纳秒", + "microsecond": "微秒", + "millisecond": "毫秒", + "second": "秒", + "minute": "分钟", + "hour": "小时", + "day": "天", + "week": "周", + "month": "月", + "year": "年", + "cubic-foot-per-minute": "立方英尺每分钟", + "cubic-meters-per-hour": "立方米每小时", + "cubic-meters-per-second": "立方米每秒", + "liter-per-second": "升每秒", + "liter-per-minute": "升每分钟", + "gallons-per-minute": "加仑每分钟", + "cubic-foot-per-second": "立方英尺每秒", + "milliliters-per-minute": "毫升每分钟", + "cubic-decimeter-per-second": "立方分米每秒", + "bit": "比特", + "byte": "字节", + "kilobyte": "千字节", + "megabyte": "兆字节", + "gigabyte": "吉字节", + "terabyte": "太字节", + "petabyte": "拍字节", + "exabyte": "艾字节", + "zettabyte": "泽字节", + "yottabyte": "尧字节", + "bit-per-second": "比特每秒", + "kilobit-per-second": "千比特每秒", + "megabit-per-second": "兆比特每秒", + "gigabit-per-second": "吉比特每秒", + "terabit-per-second": "太比特每秒", + "byte-per-second": "字节每秒", + "kilobyte-per-second": "千字节每秒", + "megabyte-per-second": "兆字节每秒", + "gigabyte-per-second": "吉字节每秒", + "degree": "度", + "radian": "弧度", + "gradian": "百分度", + "arcminute": "角分", + "arcsecond": "角秒", + "milliradian": "毫弧度", + "revolution": "转", + "siemens": "西门子", + "millisiemens": "毫西门子", + "microsiemens": "微西门子", + "kilosiemens": "千西门子", + "megasiemens": "兆西门子", + "gigasiemens": "吉西门子", + "farad": "法拉", + "millifarad": "毫法拉", + "microfarad": "微法拉", + "nanofarad": "纳法拉", + "picofarad": "皮法拉", + "kilofarad": "千法拉", + "megafarad": "兆法拉", + "gigafarad": "吉法拉", + "terfarad": "太法拉", + "farad-per-meter": "法拉每米", + "tesla": "特斯拉", + "gauss": "高斯", + "kilogauss": "千高斯", + "millitesla": "毫特斯拉", + "microtesla": "微特斯拉", + "nanotesla": "纳特斯拉", + "kilotesla": "千特斯拉", + "megatesla": "兆特斯拉", + "millitesla-square-meters": "毫特斯拉·平方米", + "gamma": "伽马", + "lambda": "兰姆达", + "square-meter-per-second": "平方米每秒", + "square-centimeter-per-second": "平方厘米每秒", + "stoke": "斯托克斯", + "centistokes": "厘斯托克斯", + "square-foot-per-second": "平方英尺每秒", + "square-inch-per-second": "平方英寸每秒", + "pascal-second": "帕斯卡·秒", + "centipoise": "厘泊", + "poise": "泊", + "reynolds": "雷诺", + "pound-per-foot-hour": "磅每英尺·小时", + "newton-second-per-square-meter": "牛顿·秒每平方米", + "dyne-second-per-square-centimeter": "达因·秒每平方厘米", + "kilogram-per-meter-second": "千克每米·秒", + "tesla-square-meters": "特斯拉·平方米", + "maxwell": "麦克斯韦", + "tesla-per-meter": "特斯拉每米", + "gauss-per-centimeter": "高斯每厘米", + "weber": "韦伯", + "microweber": "微韦伯", + "milliweber": "毫韦伯", + "gauss-square-centimeter": "高斯·平方厘米", + "kilogauss-square-centimeter": "千高斯·平方厘米", + "henry": "亨利", + "millihenry": "毫亨利", + "microhenry": "微亨利", + "nanohenry": "纳亨利", + "henry-per-meter": "亨利每米", + "tesla-meter-per-ampere": "特斯拉·米每安培", + "gauss-per-oersted": "高斯每奥斯特", + "kilogram-per-mole": "千克每摩尔", + "gram-per-mole": "克每摩尔", + "milligram-per-mole": "毫克每摩尔", + "joule-per-mole": "焦耳每摩尔", + "joule-per-mole-kelvin": "焦耳每摩尔·开尔文", + "millivolts-per-meter": "毫伏每米", + "volts-per-meter": "伏特每米", + "kilovolts-per-meter": "千伏每米", + "radian-per-second": "弧度每秒", + "radian-per-second-squared": "弧度每秒平方", + "revolutions-per-minute-per-second": "角加速度", + "deg-per-second": "度每秒", + "rotation-per-minute": "转每分钟", + "degrees-brix": "白利度", + "katal": "开特", + "katal-per-cubic-metre": "开特每立方米", + "paris-inch": "巴黎英寸" + }, + "user": { + "user": "用户", + "users": "用户", + "customer-users": "客户用户", + "tenant-admins": "租户管理员", + "sys-admin": "系统管理员", + "tenant-admin": "租户管理员", + "customer": "客户", + "anonymous": "匿名", + "add": "添加用户", + "delete": "删除用户", + "add-user-text": "添加新用户", + "no-users-text": "未找到用户", + "user-details": "用户详情", + "delete-user-title": "确定要删除用户“{{userEmail}}”吗?", + "delete-user-text": "请注意,确认后用户及所有相关数据将无法恢复。", + "delete-users-title": "确定要删除 { count, plural, =1 {1 个用户} other {# 个用户} }吗?", + "delete-users-action-title": "删除 { count, plural, =1 {1 个用户} other {# 个用户} }", + "delete-users-text": "请注意,确认后所有选中的用户将被移除,且所有相关数据将无法恢复。", + "activation-email-sent-message": "激活 Email 已成功发送!", + "resend-activation": "重新发送激活", + "email": "Email", + "email-required": "Email 为必填项。", + "invalid-email-format": "Email 格式无效。", + "first-name": "名", + "last-name": "姓", + "description": "描述", + "default-dashboard": "默认仪表板", + "always-fullscreen": "始终全屏", + "select-user": "选择用户", + "no-users-matching": "未找到与“{{entity}}”匹配的用户。", + "user-required": "用户为必填项", + "activation-method": "激活方式", + "display-activation-link": "显示激活链接", + "send-activation-mail": "发送激活邮件", + "activation-link": "用户激活链接", + "activation-link-text": "要激活用户,请使用以下激活链接({{activationLinkTtl}}后过期):", + "copy-activation-link": "复制激活链接", + "activation-link-copied-message": "用户激活链接已复制到剪贴板", + "details": "详情", + "login-as-tenant-admin": "以租户管理员身份登录", + "login-as-customer-user": "以客户用户身份登录", + "search": "搜索用户", + "selected-users": "{ count, plural, =1 {1 个用户} other {# 个用户} }已选择", + "disable-account": "禁用用户账户", + "enable-account": "启用用户账户", + "enable-account-message": "用户账户已成功启用!", + "disable-account-message": "用户账户已成功禁用!", + "copyId": "复制用户 Id", + "idCopiedMessage": "用户 Id 已复制到剪贴板", + "user-list": "用户列表", + "user-list-required": "用户列表为必填项" + }, + "value": { + "type": "值类型", + "string": "字符串", + "string-value": "字符串值", + "string-value-required": "字符串值为必填项", + "integer": "整数", + "integer-value": "整数值", + "integer-value-required": "整数值为必填项", + "invalid-integer-value": "整数值无效", + "double": "双精度浮点数", + "double-value": "双精度浮点数值", + "double-value-required": "双精度浮点数值为必填项", + "boolean": "布尔值", + "boolean-value": "布尔值", + "false": "False", + "true": "True", + "long": "长整数", + "json": "JSON", + "json-value": "JSON 值", + "json-value-invalid": "JSON 值格式无效", + "json-value-required": "JSON 值为必填项。" + }, + "version-control": { + "version-control": "版本控制", + "management": "版本控制管理", + "search": "搜索版本", + "branch": "分支", + "default": "默认", + "select-branch": "选择分支", + "branch-required": "分支为必填项", + "create-entity-version": "创建实体版本", + "version-name": "版本名称", + "version-name-required": "版本名称为必填项", + "author": "作者", + "export-relations": "导出关联", + "export-attributes": "导出属性", + "export-credentials": "导出凭证", + "export-calculated-fields": "导出计算字段\n及告警规则", + "entity-versions": "实体版本", + "versions": "版本", + "created-time": "创建时间", + "version-id": "版本 ID", + "no-entity-versions-text": "未找到实体版本", + "no-versions-text": "未找到版本", + "copy-full-version-id": "复制完整版本 ID", + "create-version": "创建版本", + "creating-version": "正在创建版本…请稍候", + "nothing-to-commit": "无更改可提交", + "restore-version": "恢复版本", + "restore-entity-from-version": "从版本“{{versionName}}”恢复实体", + "restoring-entity-version": "正在恢复实体版本…请稍候", + "load-relations": "加载关联", + "load-attributes": "加载属性", + "load-credentials": "加载凭证", + "load-calculated-fields": "加载计算字段和告警规则", + "compare-with-current": "与当前版本比较", + "diff-entity-with-version": "与实体版本“{{versionName}}”比较差异", + "previous-difference": "上一个差异", + "next-difference": "下一个差异", + "current": "当前", + "differences": "{ count, plural, =1 {1 处差异} other {# 处差异} }", + "create-entities-version": "创建实体版本", + "default-sync-strategy": "默认同步策略", + "sync-strategy-merge": "合并", + "sync-strategy-overwrite": "覆盖", + "entities-to-export": "要导出的实体", + "entities-to-restore": "要恢复的实体", + "sync-strategy": "同步策略", + "all-entities": "所有实体", + "no-entities-to-export-prompt": "请指定要导出的实体", + "no-entities-to-restore-prompt": "请指定要恢复的实体", + "add-entity-type": "添加实体类型", + "remove-all": "全部移除", + "version-create-result": "{ added, plural, =0 {未添加实体} =1 {已添加 1 个实体} other {已添加 # 个实体} }。
{ modified, plural, =0 {未修改实体} =1 {已修改 1 个实体} other {已修改 # 个实体} }。
{ removed, plural, =0 {未移除实体} =1 {已移除 1 个实体} other {已移除 # 个实体} }。", + "remove-other-entities": "移除其他实体", + "find-existing-entity-by-name": "按名称查找现有实体", + "restore-entities-from-version": "从版本“{{versionName}}”恢复实体", + "restoring-entities-from-version": "正在恢复实体…请稍候", + "no-entities-restored": "未恢复任何实体", + "created": "{{created}} 已创建", + "updated": "{{updated}} 已更新", + "deleted": "{{deleted}} 已删除", + "remove-other-entities-confirm-text": "请注意!此操作将永久删除所有当前
不在您要恢复的版本中的所有实体。

请输入 \"remove other entities\" 以确认。", + "auto-commit-to-branch": "自动提交到 {{ branch }} 分支", + "default-create-entity-version-name": "{{entityName}} 更新", + "sync-strategy-merge-hint": "在仓库中创建或更新选中的实体。所有其他仓库实体不会被修改。", + "sync-strategy-overwrite-hint": "在仓库中创建或更新选中的实体。所有其他仓库实体将被删除。", + "device-credentials-conflict": "无法加载外部 ID 为 {{entityId}} 的设备,
因为数据库中另一个设备已存在相同的凭证。
请考虑在恢复表单中禁用加载凭证设置。", + "missing-referenced-entity": "无法加载外部 ID 为 {{sourceEntityId}}{{sourceEntityTypeName}}
因为它引用了缺失的 ID 为 {{targetEntityId}}{{targetEntityTypeName}}。", + "runtime-failed": "失败:{{message}}", + "auto-commit-settings-read-only-hint": "当仓库设置中启用了只读选项时,自动提交功能不可用。", + "rollback-on-error": "出错时回滚", + "rollback-on-error-hint": "如果您有大量实体需要恢复,请考虑禁用此选项以提高性能。\n 注意,如果在版本加载过程中发生错误,已持久化的实体(包括关联、属性等)将保持原样" + }, + "widget": { + "widget-library": "部件库", + "widget-bundle": "部件包", + "all-bundles": "所有包", + "select-widgets-bundle": "选择部件包", + "widgets": "部件", + "all-widgets": "所有部件", + "widget": "部件", + "select-widget": "选择部件", + "no-widgets-matching": "未找到匹配 '{{entity}}' 的部件。", + "no-widgets": "暂无部件", + "no-widgets-text": "未找到部件", + "management": "部件管理", + "editor": "部件编辑器", + "confirm-to-exit-editor-html": "您有未保存的部件设置。
确定要离开此页面吗?", + "widget-type-not-found": "加载部件配置时出现问题。
关联的\n 部件类型可能已被移除。", + "widget-type-load-error": "部件因以下错误未能加载:", + "remove": "移除部件", + "delete": "删除部件", + "edit": "编辑部件", + "remove-widget-title": "确定要移除部件 '{{widgetTitle}}' 吗?", + "remove-widget-text": "确认后,该部件及所有相关数据将无法恢复。", + "replace-reference-with-widget-copy": "将引用替换为部件副本", + "timeseries": "时间序列", + "search-data": "搜索数据", + "no-data-found": "未找到数据", + "latest": "最新值", + "rpc": "控制部件", + "alarm": "告警部件", + "static": "静态部件", + "timeseries-short": "序列", + "latest-short": "最新", + "rpc-short": "控制", + "alarm-short": "告警", + "static-short": "静态", + "select-widget-type": "选择部件类型", + "missing-widget-title-error": "必须指定部件标题!", + "widget-saved": "部件已保存", + "unable-to-save-widget-error": "无法保存部件!部件存在错误!", + "save": "保存部件", + "saveAs": "部件另存为", + "move": "移动部件", + "save-widget-as": "部件另存为", + "save-widget-as-text": "请输入新的部件标题", + "toggle-fullscreen": "切换全屏", + "run": "运行部件", + "widget-title": "部件标题", + "title": "标题", + "title-required": "部件标题为必填项。", + "title-max-length": "标题不能超过 256 个字符", + "system": "系统", + "type": "部件类型", + "resources": "资源", + "resource-url": "JavaScript/CSS URL", + "resource-is-extension": "是否为扩展", + "remove-resource": "移除资源", + "add-resource": "添加资源", + "html": "HTML", + "tidy": "整理", + "css": "CSS", + "settings-form": "设置表单", + "data-key-settings-form": "数据键设置表单", + "latest-data-key-settings-form": "最新数据键设置表单", + "widget-settings": "部件设置", + "description": "描述", + "tags": "标签", + "image-preview": "图片预览", + "settings-form-selector": "设置表单选择器", + "data-key-settings-form-selector": "数据键设置表单选择器", + "latest-data-key-settings-form-selector": "最新数据键设置表单选择器", + "all": "全部", + "actual": "当前", + "scada": "SCADA 符号", + "deprecated": "已弃用", + "has-basic-mode": "具有基础模式", + "basic-mode-form-selector": "基础模式表单选择器", + "basic-mode": "基础", + "advanced-mode": "高级", + "javascript": "Javascript", + "js": "JS", + "delete-widget-title": "确定要删除部件 '{{widgetName}}' 吗?", + "delete-widget-text": "确认后,该部件及所有相关数据将无法恢复。", + "delete-widgets-title": "确定要删除 { count, plural, =1 {1 个部件} other {# 个部件} } 吗?", + "delete-widgets-text": "请注意,确认后所有选中的部件将被移除,且所有相关数据将无法恢复。", + "delete-widget": "删除部件", + "widget-template-load-failed-error": "加载部件模板失败!", + "details": "详情", + "widget-details": "部件详情", + "add": "添加部件", + "add-existing-widget": "添加现有部件", + "add-new-widget": "添加新部件", + "search-widgets": "搜索部件", + "selected-widgets": "已选择 { count, plural, =1 {1 个部件} other {# 个部件} }", + "undo": "撤销部件更改", + "export": "导出部件", + "export-prompt": "嵌入部件图片和资源", + "export-widgets": "导出部件", + "export-widgets-prompt": "嵌入部件图片和资源", + "import": "导入部件", + "no-data": "部件无数据可显示", + "data-overflow": "部件显示 {{total}} 个实体中的 {{count}} 个", + "alarm-data-overflow": "部件显示 {{totalEntities}} 个实体中 {{allowedEntities}} 个(最大允许数)实体的告警", + "search": "搜索部件", + "filter": "部件过滤器类型", + "loading-widgets": "正在加载部件...", + "widget-template-error": "无效的部件 HTML 模板。", + "reference": "引用" + }, + "widget-action": { + "header-button": "部件标题栏按钮", + "do-nothing": "无操作", + "open-dashboard-state": "导航到新的仪表板状态", + "update-dashboard-state": "更新当前仪表板状态", + "open-dashboard": "导航到其他仪表板", + "custom": "自定义操作", + "custom-pretty": "自定义操作(带 HTML 模板)", + "custom-pretty-error-title": "自定义对话框错误", + "custom-pretty-template-error": "无效的自定义对话框模板。", + "custom-pretty-controller-error": "执行自定义对话框函数时发生错误。", + "mobile-action": "移动端操作", + "target-dashboard-state": "目标仪表板状态", + "target-dashboard-state-required": "目标仪表板状态为必填项", + "set-entity-from-widget": "从部件设置实体", + "target-dashboard": "目标仪表板", + "select-target-dashboard": "选择目标仪表板", + "target-dashboard-required": "目标仪表板为必填项。", + "open-right-layout": "打开右侧仪表板布局(移动端视图)", + "state-display-type": "仪表板状态显示选项", + "open-normal": "正常", + "open-in-separate-dialog": "在单独对话框中打开", + "open-in-popover": "在弹出框中打开", + "dialog-title": "对话框标题", + "dialog-hide-dashboard-toolbar": "在对话框中隐藏仪表板工具栏", + "dialog-width": "对话框宽度(相对于视口宽度的百分比)", + "dialog-height": "对话框高度(相对于视口高度的百分比)", + "dialog-size-range-error": "对话框大小百分比值应在 1 到 100 之间。", + "popover-preferred-placement": "首选弹出框位置", + "popover-placement-top": "顶部", + "popover-placement-topLeft": "左上", + "popover-placement-topRight": "右上", + "popover-placement-right": "右侧", + "popover-placement-rightTop": "右上", + "popover-placement-rightBottom": "右下", + "popover-placement-bottom": "底部", + "popover-placement-bottomLeft": "左下", + "popover-placement-bottomRight": "右下", + "popover-placement-left": "左侧", + "popover-placement-leftTop": "左上", + "popover-placement-leftBottom": "左下", + "popover-hide-on-click-outside": "点击外部时隐藏弹出框", + "popover-hide-dashboard-toolbar": "在弹出框中隐藏仪表板工具栏", + "popover-width": "弹出框宽度", + "popover-height": "弹出框高度", + "popover-style": "弹出框样式", + "open-new-browser-tab": "在新浏览器标签页中打开", + "open-URL": "打开 URL", + "URL": "URL", + "url-required": "URL 为必填项。", "mobile": { - "add-application": "添加应用", - "app-id": "应用ID", - "app-id-required": "应用ID必填", - "app-id-pattern": "应用ID格式无效", - "app-store-link": "应用商店链接", - "app-store-link-required": "应用商店链接必填", - "application-details": "应用详情", - "application-package": "应用包", - "application-secret": "应用密钥", - "application-secret-required": "应用密钥必填", - "application": "应用", - "applications": "应用列表", - "copy-app-id": "复制应用ID", - "copy-app-store-link": "复制应用商店链接", - "copy-application-package": "复制应用包", - "copy-application-secret": "复制应用密钥", - "copy-google-play-link": "复制Google Play链接", - "copy-sha256-certificate-fingerprints": "复制SHA256证书指纹", - "delete-application": "删除应用", - "delete-application-button-text": "我理解后果,删除应用", - "delete-application-text": "此操作无法撤销。删除应用将永久删除应用及其所有相关数据。
如果不想永久删除,可以暂时挂起应用。
若要删除应用,请输入\"{{phrase}}\"进行确认。", - "delete-application-title-short": "确定要删除应用 '{{name}}' 吗?", - "delete-application-text-short": "请注意:确认后应用及所有相关数据将无法恢复。", - "delete-application-phrase": "删除应用", - "delete-applications-bundle-text": "请注意:确认后移动应用包及所有相关数据将无法恢复。", - "delete-applications-bundle-title": "确定要删除移动应用包 '{{bundleName}}' 吗?", - "generate-application-secret": "生成应用密钥", - "google-play-link": "Google Play链接", - "google-play-link-required": "Google Play链接必填", - "latest-version": "最新版本", - "min-version": "最低版本", - "invalid-version-pattern": "版本格式无效。请使用格式:major.minor.patch(例如:1.0.0)。", - "mobile-center": "移动中心", - "mobile-package": "应用包", - "mobile-package-max-length": "应用包长度应少于256个字符", - "mobile-package-required": "应用包是必需的", - "mobile-package-pattern": "应用包格式无效", - "no-application": "未找到应用", - "no-bundles": "未找到移动包", - "platform-type": "平台类型", - "search-application": "搜索应用", - "search-bundles": "搜索移动包", - "set": "设置", - "sha256-certificate-fingerprints": "SHA256证书指纹", - "sha256-certificate-fingerprints-required": "SHA256证书指纹是必需的", - "sha256-certificate-fingerprints-pattern": "SHA256证书指纹格式无效", - "show-hidden-pages": "显示隐藏页面", - "status": "状态", - "status-type": { - "deprecated": "已弃用", - "draft": "草稿", - "published": "已发布", - "suspended": "已暂停" - }, - "store-information": "商店信息", - "version-information": "版本信息", - "min-version-release-notes": "最低版本发布说明", - "latest-version-release-notes": "最新版本发布说明", - "bundle": "捆绑包", - "bundles": "捆绑包列表", - "add-bundle": "添加捆绑包", - "title": "标题", - "title-required": "标题必填", - "oauth-clients": "OAuth2.0客户端", - "android-app": "Android应用", - "android-application": "Android应用程序", - "ios-app": "iOS应用", - "ios-application": "iOS应用程序", - "invalid-store-link": "无效的商店链接", - "enable-oauth": "启用OAuth2.0", - "enable-self-registration": "启用自助注册", - "edit-bundle": "编辑捆绑包", - "description": "描述", - "basic-settings": "基本设置", - "no-application-matching": "未找到与 '{{entity}}' 匹配的应用程序。", - "no-bundle-matching": "未找到与 '{{entity}}' 匹配的捆绑包。", - "application-required": "应用程序必填。", - "bundle-required": "捆绑包必填。", - "no-application-text": "未找到应用程序", - "no-bundle-text": "未找到捆绑包", - "layout": "布局", - "pages": "页面", - "hide-all-pages": "隐藏所有页面", - "reset-to-default-pages": "重置为默认页面", - "add-specific-page": "添加特定页面", - "visible": "可见", - "hidden": "隐藏", - "reset-to-page-default": "重置页面为默认", - "mobile-599": "移动端(最大 599px)", - "tablet-959": "平板(最大 959px)", - "max-element-number": "最大元素数量", - "page-name": "页面名称", - "page-name-required": "页面名称必填。", - "page-name-cannot-contain-only-spaces": "页面名称不能仅包含空格。", - "page-type": "页面类型", - "pages-types": { - "dashboard": "仪表盘", - "web-view": "网页视图", - "custom": "自定义" - }, - "url": "URL", - "invalid-url-format": "URL格式无效", - "path": "路径", - "invalid-path-format": "路径格式无效", - "custom-page": "自定义页面", - "edit-page": "编辑页面", - "edit-custom-page": "编辑自定义页面", - "delete-page": "删除页面", - "qr-code-widget": "二维码小部件", - "type-here": "在此输入", - "configuration-dialog": "配置对话框", - "configuration-app": "配置应用程序", - "configuration-step": { - "prepare-environment-title": "准备开发环境", - "prepare-environment-text": "Flutter ThingsBoard 移动应用程序需要 Flutter SDK。按照说明设置 Flutter SDK。", - "get-source-code-title": "获取应用程序源代码", - "get-source-code-text": "您可以通过从 GitHub 仓库克隆来获取 Flutter ThingsBoard 移动应用程序源代码:", - "configure-api-title": "配置 ThingsBoard API 端点", - "configure-api-text": "在编辑器/IDE 中打开 flutter_thingsboard_app 项目。编辑:", - "configure-api-hint": "将 thingsBoardApiEndpoint 常量的值设置为与您的 ThingsBoard 服务器实例的 API 端点匹配。请勿使用“localhost”或“127.0.0.1”主机名。", - "run-app-title": "运行应用程序", - "run-app-text": "按您的 IDE 中的说明运行应用程序。\n如果使用终端,请使用以下命令运行应用程序:", - "more-information": "详细信息请参阅我们的入门文档。", - "getting-started": "入门", - "configure-package-title": "配置应用程序包", - "configure-package-text": "您可以手动更改应用程序包,也可以使用第三方 CLI 工具。", - "configure-package-text-install": "要安装 Rename CLI 工具,请执行以下命令:", - "configure-package-run-commands": "在您的项目根目录下运行以下命令:" - } + "device-provision": "设备配网", + "action-type": "移动端操作类型", + "select-action-type": "选择移动端操作类型", + "action-type-required": "移动端操作类型为必填项", + "take-picture-from-gallery": "从相册选取图片", + "take-photo": "拍照", + "map-direction": "打开地图导航", + "map-location": "打开地图位置", + "scan-qr-code": "扫描二维码", + "make-phone-call": "拨打电话", + "get-location": "获取手机位置", + "take-screenshot": "截屏" }, - "notification": { - "action-button": "操作按钮", - "action-type": "操作类型", - "active": "活动", - "add-notification-recipients-group": "添加通知收件人组", - "add-notification-template": "添加通知模板", - "add-recipient": "添加收件人", - "add-recipients": "添加收件人", - "add-rule": "添加规则", - "add-stage": "添加阶段", - "add-template": "添加模板", - "after": "之后", - "alarm-assignment-trigger-settings": "告警分配触发设置", - "alarm-comment-trigger-settings": "告警评论触发设置", - "alarm-trigger-settings": "告警触发设置", - "all": "所有", - "api-feature-hint": "如果字段为空,则触发器将应用于所有API功能", - "api-usage-trigger-settings": "API使用触发设置", - "new-platform-version-trigger-settings": "新平台版本触发设置", - "rate-limits-trigger-settings": "超出速率限制触发设置", - "task-processing-failure-trigger-settings": "任务处理故障触发设置", - "at-least-one-should-be-selected": "至少需要选择一个", - "basic-settings": "基本设置", - "button-text": "按钮文本", - "button-text-required": "按钮文本必填。", - "button-text-max-length": "按钮文本应小于或等于{{ length }}个字符。", - "compose": "组合", - "conversation": "对话", - "conversation-required": "对话必填。", - "copy-notification-template": "复制通知模板", - "copy-rule": "复制规则", - "copy-template": "复制模板", - "create-new": "创建", - "created": "已创建", - "customize-messages": "自定义消息", - "delete-notification-text": "请注意,在确认后,通知将无法恢复。", - "delete-notification-title": "您确定要删除该通知吗?", - "delete-notifications-text": "请注意,在确认后,通知将无法恢复。", - "delete-notifications-title": "确定要删除{ count, plural, =1 {1 个通知} other {# 个通知} }吗?", - "delete-recipient-text": "请注意,在确认后,收件人将无法恢复。", - "delete-recipient-title": "确定要删除收件人'{{recipientName}}' 吗?", - "delete-recipients-text": "请注意,在确认后,收件人将无法恢复。", - "delete-recipients-title": "确定要删除{ count, plural, =1 {1 个收件人} other {# 个收件人} }吗?", - "delete-request-text": "请注意,在确认后,请求将无法恢复。", - "delete-request-title": "确定要删除请求吗?", - "delete-requests-text": "请注意,在确认后,请求将无法恢复。", - "delete-requests-title": "确定要删除{ count, plural, =1 {1 个请求} other {# 个请求} }吗?", - "delete-rule-text": "请注意,在确认后,规则将无法恢复。", - "delete-rule-title": "确定要删除规则'{{ruleName}}' 吗?请注意,确认后无法恢复。", - "delete-rules-text": "请注意,在确认后,规则将无法恢复。", - "delete-rules-title": "确定要删除{ count, plural, =1 {1 条规则} other {# 条规则} }吗?", - "delete-template-text": "请注意,在确认后,模板将无法恢复。", - "delete-template-title": "确定要删除模板'{{templateName}}' 吗?", - "delete-templates-text": "请注意,在确认后,模板将无法恢复。", - "delete-templates-title": "确定要删除{ count, plural, =1 {1 个模板} other {# 个模板} }吗?", - "deleted": "已删除", - "delivery-method": { - "delivery-method": "推送方式", - "email": "Email", - "email-preview": "Email 通知预览", - "slack": "Slack", - "slack-preview": "Slack 通知预览", - "microsoft-teams": "微软Teams", - "microsoft-teams-preview": "微软Teams通知预览", - "sms": "SMS", - "sms-preview": "SMS通知预览", - "web": "Web", - "web-preview": "Web通知预览", - "mobile-app": "移动应用", - "mobile-app-preview": "移动应用通知预览" - }, - "delivery-method-not-configure-click": "单击进行推送方式设置。", - "delivery-method-not-configure-contact": "推送方式未设置,请与系统管理员联系。", - "delivery-methods": "推送方式", - "description": "描述", - "device-activity-trigger-settings": "设备活动触发设置", - "device-list-rule-hint": "如果该字段为空,则触发器将适用于所有设备。", - "device-profiles-list-rule-hint": "如果该字段为空,则触发器将适用于所有设备配置。", - "disabled": "禁用", - "edge-trigger-settings": "Edge触发设置", - "edge-list-rule-hint": "如果字段为空则将触发应用于所有Edge实例", - "edit-notification-recipients-group": "编辑通知收件人群组", - "edit-notification-template": "编辑通知模板", - "edit-rule": "编辑规则", - "edit-template": "编辑模板", - "enabled": "已启用", - "entities-limit-trigger-settings": "实体限制触发器设置", - "entity-action-trigger-settings": "实体动作触发器设置", - "entity-type": "实体类型", - "escalation-chain": "逐步升级链", - "failed-send": "发送失败", - "fails": "{ count, plural, =1 {1 个失败} other {# 个失败} }", - "filter": "筛选器", - "first-recipient": "第一收件人", - "inactive": "非活动", - "inbox": "收件箱", - "notification-inbox": "通知 / 收件箱", - "input-field-support-templatization": "输入字段支持模板化", - "input-fields-support-templatization": "输入字段支持模板化", - "link": "链接", - "link-required": "链接必填。", - "link-type": { - "dashboard": "打开仪表板", - "link": "打开URL链接" - }, - "loading-notifications": "加载通知中…", - "management": "通知管理", - "mark-all-as-read": "全部标记为已读", - "mark-as-read": "标记为已读", - "message": "信息", - "message-required": "信息必填。", - "message-max-length": "提示信息应该小于或等于 {{ length }}个字符", - "name": "名称", - "name-required": "名称必填", - "new-notification": "新通知", - "no-inbox-notification": "未找到通知", - "no-notification-request": "没有通知请求", - "no-notification-templates": "未找到通知模板", - "no-notifications-yet": "目前还没有通知", - "no-recipients-notification": "没有收件人的通知", - "no-recipients-matching": "未找到与 '{{entity}}' 匹配的收件人。", - "no-recipients-text": "未找到收件人", - "no-rule": "未配置规则", - "no-rules-notification": "没有规则通知", - "no-severity-found": "未找到严重性级别", - "no-severity-matching": "未找到'{{severity}}'。", - "no-template-matching": "未找到与'{{template}}' 匹配的资源。", - "not-found-slack-recipient": "未找到Slack的收件人", - "notification": "通知", - "notification-center": "通知中心", - "notification-tap-action": "单击通知操作", - "notification-tap-action-hint": "如果未启用将使用默认警报仪表板", - "notify": "通知", - "notify-again": "再次通知", - "notify-alarm-action": { - "acknowledged": "告警已确认", - "assigned": "告警已分配", - "cleared": "告警已清除", - "created": "告警已确认", - "severity-changed": "告警级别已更改", - "unassigned": "告警未分配" - }, - "notify-on": "通知条件", - "notify-on-comment-update": "在评论更新时通知", - "notify-on-required": "通知条件必填。", - "notify-on-unassign": "在取消分配时通知", - "notify-only-user-comments": "仅在用户评论时通知", - "only-rule-chain-lifecycle-failures": "仅在规则链生命周期故障时通知", - "only-rule-node-lifecycle-failures": "仅在规则节点生命周期故障时通知", - "platform-users": "平台用户", - "rate-limits": "速率限制", - "rate-limits-hint": "如果该字段为空,则触发器将应用于所有速率限制", - "recipient": "收件人", - "recipient-group": "收件人组", - "recipient-type": { - "affected-tenant-administrators": "受影响的租户管理员", - "affected-user": "受影响的用户", - "all-users": "所有用户", - "customer-users": "客户用户", - "system-administrators": "系统管理员", - "tenant-administrators": "租户管理员", - "user-filters": "用户筛选器", - "user-list": "用户列表", - "users-entity-owner": "实体所有者的用户" - }, - "recipients": "收件人", - "notification-recipient": "通知接收者", - "notification-recipient-required": "通知接收者必填。", - "notification-recipients": "通知/收件人", - "recipients-count": "{ count, plural, =1 {1 个收件人} other {# 个收件人} }", - "recipients-required": "收件人必填。", - "refresh-allow-delivery-method": "刷新允许推送方式", - "request-search": "请求搜索", - "request-status": { - "processing": "处理中", - "scheduled": "已安排", - "sent": "已发送" - }, - "review": "检查", - "rule": "规则", - "rule-chain-list-rule-hint": "如果字段为空,则触发器将应用于所有规则链。", - "rule-engine-events-trigger-settings": "规则引擎事件触发器设置", - "rule-engine-filter": "规则引擎筛选器", - "rule-name": "规则名称", - "rule-name-required": "名称必填。", - "rule-disable": "禁用通知规则", - "rule-enable": "启用通知规则", - "rule-node-filter": "规则节点筛选器", - "rules": "规则", - "notification-rules": "通知 / 规则", - "scheduler-later": "稍后安排", - "search-notification": "搜索通知", - "search-recipients": "搜索收件人", - "search-rules": "搜索规则", - "search-templates": "搜索模板", - "see-documentation": "查看文档", - "selected-notifications": "已选择{ count, plural, =1 {1 个通知} other {# 个通知} }", - "selected-recipients": "已选择{ count, plural, =1 {1 个收件人} other {# 个收件人} }", - "selected-requests": "已选择{ count, plural, =1 {1 个请求} other {# 个请求} }", - "selected-rules": "已选择{ count, plural, =1 {1 个规则} other {# 个规则} }", - "selected-template": "已选择{ count, plural, =1 {1 个模板} other {# 个模板} }", - "send-notification": "发送通知", - "sent": "已发送", - "setup": "步骤", - "notification-sent": "通知/已发送", - "set-entity-from-notification": "将通知中的实体设置为仪表盘状态", - "slack-chanel-type": "Slack频道类型", - "slack-chanel-types": { - "direct": "直接消息", - "private-channel": "私有频道", - "public-channel": "公开频道" - }, - "start-from-scratch": "从头开始", - "status": "状态", - "stop-escalation-alarm-status-become": "停止逐步升级,将告警状态设置为:", - "subject": "主题", - "subject-required": "主题必填。", - "subject-max-length": "主题应小于或等于{{ length }}个字符", - "template": "模板", - "template-name": "模板名称", - "template-required": "模板必填。", - "template-type": { - "alarm": "告警", - "alarm-assignment": "告警分配", - "alarm-comment": "告警评论", - "api-usage-limit": "API使用限制", - "device-activity": "设备活动", - "entities-limit": "实体限制", - "entity-action": "实体操作", - "general": "通用", - "rule-engine-lifecycle-event": "规则引擎生命周期事件", - "rule-node": "规则节点", - "new-platform-version": "新的平台版本", - "rate-limits": "超过速率限制", - "edge-communication-failure": "Edge通信故障", - "edge-connection": "Edge连接", - "task-processing-failure": "任务处理失败" - }, - "templates": "模板", - "notification-templates": "通知/模板", - "tenant-profiles-list-rule-hint": "如果字段为空,触发器将应用于所有租户配置", - "tenants-list-rule-hint": "如果字段为空,触发器将应用于所有租户", - "threshold": "阈值", - "theme-color": "主题颜色", - "time": "时间", - "track-rule-node-events": "追踪规则节点事件", - "trigger": { - "alarm": "告警", - "alarm-assignment": "告警分配", - "alarm-comment": "告警评论", - "api-usage-limit": "API使用限制", - "device-activity": "设备活动", - "entities-limit": "实体限制", - "entity-action": "实体操作", - "rule-engine-lifecycle-event": "规则引擎生命周期事件", - "new-platform-version": "新的平台版本", - "rate-limits": "超过速率限制", - "edge-connection": "Edge连接", - "edge-communication-failure": "Edge通信故障", - "task-processing-failure": "任务处理失败", - "trigger": "触发器", - "trigger-required": "触发器必填。" - }, - "type": "类型", - "unread": "未读", - "updated": "已更新", - "use-deprecated-webhook-connectors": "使用已弃用的Webhook连接器", - "use-old-api": "使用旧API", - "use-template": "使用模板", - "view-all": "查看全部", - "warning": "警告", - "webhook-url": "Webhook URL", - "webhook-url-required": "Webhook URL必填。", - "workflow-url": "Workflow URL", - "workflow-url-required": "Workflow URL必填。", - "channel-name": "频道名称", - "channel-name-required": "需要填写频道名称", - "settings": { - "notification-settings": "通知设置", - "reset-all": "重置全部设置", - "reset-all-title": "您确定要将表单重置吗?", - "reset-all-text": "确认后,设置表单将重置为默认值并保存。", - "type": "类型", - "enable-all": "全部启用", - "disable-all": "全部禁用", - "delivery-not-configured": "未配置传递方式" - } + "custom-action-function": "自定义操作函数", + "custom-pretty-function": "自定义操作(带 HTML 模板)函数", + "map-item-type": "地图项目类型", + "map-item": { + "marker": "标记", + "polygon": "多边形", + "rectangle": "矩形", + "circle": "圆形" }, - "ota-update": { - "add": "添加包", - "assign-firmware": "分配的固件", - "assign-firmware-required": "分配的固件必填", - "assign-software": "分配的软件", - "assign-software-required": "分配的软件必填", - "auto-generate-checksum": "自动生成校验和", - "checksum": "校验和", - "checksum-hint": "如果校验和为空,会自动生成", - "checksum-algorithm": "校验和算法", - "checksum-copied-message": "包校验和已复制到剪贴板", - "change-firmware": "固件的更改可能会导致{ count, plural, =1 {1 个设备} other {# 个设备} } 的更新。", - "change-software": "软件的更改可能会导致{ count, plural, =1 {1 个设备} other {# 个设备} } 的更新。", - "chose-compatible-device-profile": "上传的包仅适用于具有所选配置的设备。", - "chose-firmware-distributed-device": "选择将分发到设备的固件", - "chose-software-distributed-device": "选择将分发到设备的软件", - "content-type": "内容类型", - "copy-checksum": "复制校验和", - "copy-direct-url": "复制直接URL", - "copyId": "复制包ID", - "copied": "已复制!", - "delete": "删除包", - "delete-ota-update-text": "请注意:确认后,OTA升级将不可恢复。", - "delete-ota-update-title": "确定要删除 '{{title}}' OTA升级吗?", - "delete-ota-updates-text": "请注意:确认后,所有选中的OTA升级将被删除。", - "delete-ota-updates-title": "确定要删除{ count, plural, =1 {1 OTA升级} other {# OTA升级} }吗?", - "description": "说明", - "direct-url": "直接URL", - "direct-url-copied-message": "包直接URL已复制到剪贴板", - "direct-url-required": "直接URL必填", - "download": "下载包", - "drop-file": "拖放包文件或点击选择要上传的文件。", - "drop-package-file-or": "拖放一个包文件或者", - "file-name": "文件名", - "file-size": "文件大小", - "file-size-bytes": "文件大小(以字节为单位)", - "idCopiedMessage": "包ID已被复制到剪贴板", - "no-firmware-matching": "未找到与'{{entity}}'匹配的兼容固件OTA升级包。", - "no-firmware-text": "没有提供兼容的固件OTA升级包。", - "no-packages-text": "未找到包", - "no-software-matching": "未找到匹配 '{{entity}}' 的兼容软件OTA升级包。", - "no-software-text": "没有提供兼容的软件OTA升级包。", - "ota-update": "OTA 升级", - "ota-update-details": "OTA 升级详情", - "ota-updates": "OTA 升级", - "package-file": "包文件", - "package-type": "包类型", - "packages-repository": "包仓库", - "search": "搜索包", - "selected-package": "{ count, plural, =1 {1个包} other {#个包} }选中", - "title": "标题", - "title-required": "标题必填。", - "title-max-length": "标题长度应该小于256个字符。", - "types": { - "firmware": "固件", - "software": "软件" - }, - "upload-binary-file": "上传二进制文件", - "use-external-url": "使用外部URL", - "version": "版本", - "version-required": "版本必填。", - "version-tag": "版本标签", - "version-tag-hint": "自定义标签应与您设备报告的软件包版本相匹配。", - "version-max-length": "版本长度应该小于256个字符", - "warning-after-save-no-edit": "上传包后,您将无法修改标题、版本、设备配置和包类型。" - }, - "position": { - "top": "顶部", - "bottom": "底部", - "left": "左侧", - "right": "右侧" - }, - "profile": { - "profile": "属性", - "last-login-time": "最后登录", - "change-password": "更改密码", - "current-password": "当前密码", - "copy-jwt-token": "复制 JWT 令牌", - "jwt-token": "JWT 令牌", - "token-valid-till": "令牌有效期至", - "tokenCopiedSuccessMessage": "JWT 令牌已复制到剪贴板", - "tokenCopiedWarnMessage": "JWT 令牌已过期!请刷新页面。" - }, - "profiles": { - "profiles": "配置" - }, - "security": { - "security": "安全", - "general-settings": "通用安全设置", - "access-token": "访问令牌", - "access-token-required": "需要访问令牌", - "clientId": "客户端ID", - "clientId-required": "需要客户端ID", - "username": "用户名", - "username-required": "需要用户名", - "ca-cert": "CA证书", - "2fa": { - "2fa": "双因素认证", - "2fa-description": "双因素认证可保护您的帐户免受未经授权的访问。在登录时必须输入安全验证码。", - "authenticate-with": "可以使用以下身份验证:", - "disable-2fa-provider-text": "禁用{{ name }}会降低帐户的安全性", - "disable-2fa-provider-title": "确定要禁用 {{ name }}吗?", - "get-new-code": "获取新验证码", - "main-2fa-method": "用作主要的双因素认证方法", - "dialog": { - "activation-step-description-email": "下次登录时,系统将提示您输入电子邮件中的验证码。", - "activation-step-description-sms": "下次登录时,系统将提示您输入短信中的验证码。", - "activation-step-description-totp": "下次登录时,您需要提供一个双因素认证码。", - "activation-step-label": "激活", - "backup-code-description": "打印出验证码,以便在您需要时使用它们登录帐户。每个备份验证码可以使用一次。", - "backup-code-warn": "离开此页后,这些代码将无法再次显示。使用以下选项安全存放。", - "download-txt": "下载(txt)", - "email-step-description": "输入用作身份验证的电子邮件", - "email-step-label": "电子邮件", - "enable-email-title": "启用电子邮件验证", - "enable-sms-title": "启用SMS验证", - "enable-totp-title": "启用验证APP", - "enter-verification-code": "输入6位验证码", - "get-backup-code-title": "获取备份验证码", - "next": "下一步", - "scan-qr-code": "使用验证APP扫描二维码", - "send-code": "发送验证码", - "sms-step-description": "输入用作身份验证的手机号码", - "sms-step-label": "手机号码", - "success": "操作成功!", - "totp-step-description-install": "可以安装像Google Authenticator、Authy或Duo这样的应用程序。", - "totp-step-description-open": "在手机上打开验证APP。", - "totp-step-label": "获取APP", - "verification-code": "6位验证码", - "verification-code-invalid": "验证码格式无效", - "verification-code-incorrect": "验证码不正确", - "verification-code-many-request": "请求过多,请检查验证码", - "verification-step-description": "输入发送到{{ address }}的6位代码", - "verification-step-label": "验证" - }, - "provider": { - "email": "电子邮件", - "email-description": "使用您电子邮件中的验证码进行身份验证。", - "email-hint": "身份验证码通过电子邮件发送到{{ info }}", - "sms": "SMS", - "sms-description": "使用短信进行身份验证,当登录时系统会通过短信向您发送验证码。", - "sms-hint": "身份验证码通过短信发送到{{ info }}", - "totp": "验证APP", - "totp-description": "使用手机上的Google Authenticator、Authy或Duo等应用程序进行身份验证,它将生成用于登录的验证码。", - "totp-hint": "已为您的帐户设置验证APP", - "backup_code": "备份验证码", - "backup-code-description": "这些可打印的一次性密码允许您在离开手机时登录,比如正在旅行。", - "backup-code-hint": "{{ info }}个一次性代码此时处于激活状态" - } - }, - "password-requirement": { - "at-least": "至少:", - "character": "{ count, plural, =1 {1 位字符} other {# 位字符} }", - "digit": "{ count, plural, =1 {1 位数字} other {# 位数字} }", - "incorrect-password-try-again": "密码不正确再试一次。", - "lowercase-letter": "{ count, plural, =1 {1 位小写字母} other {# 位小写字母} }", - "new-passwords-not-match": "新密码不匹配", - "password-should-not-contain-spaces": "密码不应包含空格", - "password-not-meet-requirements": "密码不符合要求", - "password-requirements": "密码要求", - "password-should-difference": "新密码应与当前密码不同", - "special-character": "{ count, plural, =1 {1 位特殊字符} other {# 位特殊字符} }", - "uppercase-letter": "{ count, plural, =1 {1 位大写字母} other {# 位大写字母} }", - "at-most": "最多:" - } + "place-map-item": "放置地图项目", + "map-item-tooltip": { + "customize-map-item-tooltips": "自定义地图项目提示", + "place-marker": "放置标记", + "start-draw-rectangle": "开始绘制矩形", + "finish-draw-rectangle": "完成绘制矩形", + "start-draw-polygon": "开始绘制多边形", + "continue-draw-polygon": "继续绘制多边形", + "finish-draw-polygon": "完成绘制多边形", + "start-draw-circle": "开始绘制圆形", + "finish-draw-circle": "完成绘制圆形" + } + }, + "widgets-bundle": { + "current": "当前包", + "widgets-bundles": "部件包", + "widgets-bundle-widgets": "部件包部件", + "add": "添加部件包", + "delete": "删除部件包", + "title": "标题", + "title-required": "标题为必填项。", + "title-max-length": "标题不能超过 256 个字符", + "description": "描述", + "image-preview": "图片预览", + "scada": "SCADA 部件包", + "order": "排序", + "add-widgets-bundle-text": "添加新部件包", + "no-widgets-bundles-text": "未找到部件包", + "empty": "部件包为空", + "details": "详情", + "widgets-bundle-details": "部件包详情", + "delete-widgets-bundle-title": "确定要删除部件包 '{{widgetsBundleTitle}}' 吗?", + "delete-widgets-bundle-text": "请注意,确认后该部件包及所有相关数据将无法恢复。", + "delete-widgets-bundles-title": "确定要删除 { count, plural, =1 {1 个部件包} other {# 个部件包} } 吗?", + "delete-widgets-bundles-action-title": "删除 { count, plural, =1 {1 个部件包} other {# 个部件包} }", + "delete-widgets-bundles-text": "请注意,确认后所有选中的部件包将被移除,且所有相关数据将无法恢复。", + "no-widgets-bundles-matching": "未找到匹配 '{{widgetsBundle}}' 的部件包。", + "widgets-bundle-required": "部件包为必填项。", + "system": "系统", + "import": "导入部件包", + "export": "导出部件包", + "export-widgets-bundle-widgets-prompt": "在导出数据中包含包内部件(否则仅导出引用的部件 FQN)", + "export-failed-error": "无法导出部件包:{{error}}", + "create-new-widgets-bundle": "创建新部件包", + "widgets-bundle-file": "部件包文件", + "invalid-widgets-bundle-file-error": "无法导入部件包:无效的部件包数据结构。", + "search": "搜索部件包", + "selected-widgets-bundles": "已选择 { count, plural, =1 {1 个部件包} other {# 个部件包} }", + "open-widgets-bundle": "打开部件包", + "loading-widgets-bundles": "正在加载部件包...", + "create-new": "创建新部件包" + }, + "widget-config": { + "data": "数据", + "settings": "设置", + "advanced": "高级", + "appearance": "外观", + "widget-card": "部件卡片", + "mobile": "移动端", + "title": "标题", + "title-tooltip": "标题提示", + "general-settings": "常规设置", + "display-title": "显示部件标题", + "card-title": "卡片标题", + "drop-shadow": "阴影", + "enable-fullscreen": "启用全屏", + "background-color": "背景颜色", + "text-color": "文本颜色", + "border-radius": "边框圆角", + "padding": "内边距", + "margin": "外边距", + "widget-style": "部件样式", + "widget-css": "部件 CSS", + "title-style": "标题样式", + "mobile-mode-settings": "移动端模式", + "order": "排序", + "height": "高度", + "mobile-hide": "在移动端模式下隐藏部件", + "desktop-hide": "在桌面端模式下隐藏部件", + "units": "显示在值旁边的特殊符号", + "units-by-default": "默认单位", + "decimals": "小数点后位数", + "decimals-by-default": "默认小数位数", + "default-data-key-parameter-hint": "此参数适用于所有部件值,除非被数据键配置覆盖", + "units-short": "单位", + "decimals-short": "小数位", + "decimals-suffix": "小数位", + "digits-suffix": "位数", + "timewindow": "时间窗口", + "use-dashboard-timewindow": "使用仪表板时间窗口", + "use-widget-timewindow": "使用部件时间窗口", + "display-timewindow": "显示时间窗口", + "legend": "图例", + "display-legend": "显示图例", + "datasources": "数据源", + "datasource": "数据源", + "maximum-datasources": "最多允许 { count, plural, =1 {1 个数据源。} other {# 个数据源} }", + "timeseries-key-error": "至少需要指定一个时间序列数据键", + "datasource-type": "类型", + "datasource-parameters": "参数", + "remove-datasource": "移除数据源", + "add-datasource": "添加数据源", + "target-device": "目标设备", + "alarm-source": "告警源", + "actions": "操作", + "action": "操作", + "add-action": "添加操作", + "search-actions": "搜索操作", + "no-actions-text": "未找到操作", + "action-source": "操作来源", + "select-action-source": "选择操作来源", + "action-source-required": "操作来源为必填项。", + "column-index": "列索引", + "select-column-index": "选择列索引", + "column-index-required": "列索引为必填项。", + "not-set": "未设置", + "action-name": "名称", + "action-name-required": "操作名称为必填项。", + "action-name-not-unique": "已存在同名的操作。\n操作名称在同一操作来源中必须唯一。", + "action-icon": "图标", + "header-button": { + "button-settings": "按钮设置", + "button-type": "按钮类型", + "button-type-basic": "基础", + "button-type-raised": "凸起", + "button-type-stroked": "描边", + "button-type-flat": "扁平", + "button-type-icon": "图标", + "button-type-mini-fab": "FAB", + "colors": "颜色", + "color": "颜色", + "background": "背景", + "border": "边框", + "advanced-button-style": "高级按钮样式", + "button-style": "按钮样式" }, - "relation": { - "relations": "关联", - "direction": "方向", - "clear-relation-type": "清除关系类型", - "search-direction": { - "FROM": "从", - "TO": "到" - }, - "direction-type": { - "FROM": "从", - "TO": "到" - }, - "from-relations": "向外的关联", - "to-relations": "向内的关联", - "selected-relations": "已选择{ count, plural, =1 {1 个关联} other {# 个关联} }", - "type": "类型", - "to-entity-type": "到实体类型", - "to-entity-name": "到实体名称", - "from-entity-type": "从实体类型", - "from-entity-name": "从实体类型", - "to-entity": "到实体", - "from-entity": "从实体", - "delete": "删除关联", - "relation-type": "关联类型", - "relation-type-required": "关联类型必填", - "relation-type-max-length": "关联类型长度应该小于256个字符。", - "any-relation-type": "任何类型", - "add": "添加关联", - "edit": "编辑关联", - "delete-to-relation-title": "确定要删除实体'{{entityName}}'的关联吗?", - "delete-to-relation-text": "确定删除后实体'{{entityName}}'将取消与当前实体的关联关系。", - "delete-to-relations-title": "确定要删除{ count, plural, =1 {1 个关联} other {# 个关联} }吗?", - "delete-to-relations-text": "确定删除所有选择的关联关系后,与当前实体对应的所有关联关系将被移除。", - "delete-from-relation-title": "确定要从实体'{{entityName}}' 删除关联吗?", - "delete-from-relation-text": "确定删除后当前实体将与实体 '{{entityName}}'取消关联", - "delete-from-relations-title": "确定删除{ count, plural, =1 {1 个关联} other {# 个关联} }吗?", - "delete-from-relations-text": "确定删除所有选择的关联关系后,当前实体将与对应的实体取消关联", - "remove-relation-filter": "移除关联筛选器", - "remove-filter": "移除过滤器", - "add-relation-filter": "添加关联筛选器", - "any-relation": "任意关联", - "relation-filters": "关联筛选器", - "additional-info": "附加信息 (JSON)", - "invalid-additional-info": "无法解析附加信息JSON。", - "no-relations-text": "未找到关联", - "not": "不是" - }, - "resource": { - "add": "添加资源", - "all-types": "全部", - "copyId": "复制资源ID", - "delete": "删除资源", - "delete-resource-text": "请注意:确认后,资源将不可恢复。", - "delete-resource-title": "确定要删除资源'{{resourceTitle}}'吗?", - "delete-resources-action-title": "删除{ count, plural, =1 {1 个资源} other {# 个资源} }", - "delete-resources-text": "请注意:确认后,所有选定的资源将被删除。", - "delete-resources-title": "确定要删除{ count, plural, =1 {1 个资源} other {# 个资源} }吗?", - "download": "下载资源", - "drop-file": "拖放资源文件或单击以选择要上传的文件。", - "drop-resource-file-or": "拖放一个资源文件或者", - "empty": "资源为空", - "file-name": "文件名称", - "idCopiedMessage": "资源ID已复制到剪贴板", - "no-resource-matching": "未找到与'{{widgetsBundle}}'匹配的资源。", - "no-resource-text": "未找到资源", - "open-widgets-bundle": "打开部件库", - "resource": "资源", - "resource-file": "资源文件", - "resource-files": "资源文件", - "resource-library-details": "资源库详情", - "resource-type": "资源类型", - "resources-library": "资源库", - "search": "查找资源", - "selected-resources": "已选择{ count, plural, =1 {1 个资源} other {# 个资源} }", - "system": "系统", - "title": "标题", - "title-required": "标题是必填项。", - "title-max-length": "标题长度应该小于256个字符。", - "type": { - "jks": "JKS", - "js-module": "JS 模块", - "lwm2m-model": "LWM2M 模型", - "pkcs-12": "PKCS #12" - }, - "resource-sub-type": "子类型", - "sub-type": { - "image": "图像", - "scada-symbol": "SCADA符号", - "extension": "扩展", - "module": "模块" - } + "show-hide-action-using-function": "使用函数显示/隐藏操作", + "show-action-function": "显示操作函数", + "action-type": "类型", + "action-type-required": "操作类型为必填项。", + "edit-action": "编辑操作", + "delete-action": "删除操作", + "delete-action-title": "删除部件操作", + "delete-action-text": "确定要删除名为 '{{actionName}}' 的部件操作吗?", + "title-icon": "标题图标", + "display-icon": "显示标题图标", + "card-icon": "卡片图标", + "icon": "图标", + "icon-color": "图标颜色", + "icon-size": "图标大小", + "advanced-settings": "高级设置", + "data-settings": "数据设置", + "limits": "限制", + "no-data-display-message": "“无数据可显示”替代消息", + "data-page-size": "每个数据源的最大实体数", + "settings-component-not-found": "未找到选择器 '{{selector}}' 对应的设置表单组件", + "preview": "预览", + "set": "设置", + "set-message": "设置消息", + "advanced-title-style": "高级标题样式", + "card-style": "卡片样式", + "text": "文本", + "background": "背景", + "advanced-widget-style": "高级部件样式", + "card-buttons": "卡片按钮", + "show-card-buttons": "显示卡片按钮", + "card-border-radius": "卡片边框圆角", + "card-padding": "卡片内边距", + "card-appearance": "卡片外观", + "color": "颜色", + "tooltip": "提示", + "units-required": "单位为必填项。", + "list-layout": "列表布局", + "layout": "布局", + "resize-options": "调整大小选项", + "resizable": "可调整大小", + "preserve-aspect-ratio": "保持宽高比" + }, + "widget-type": { + "import": "导入部件类型", + "export": "导出部件类型", + "export-failed-error": "无法导出部件:{{error}}", + "widget-file": "部件文件", + "invalid-widget-file-error": "无法导入部件:无效的部件数据结构。" + }, + "markdown": { + "edit": "编辑", + "preview": "预览", + "copy-code": "点击复制", + "copied": "已复制!" + }, + "widgets": { + "mobile-app-qr-code": { + "configuration-hint": "配置取决于平台主设置中的移动应用二维码部件", + "get-it-on-google-play": "在 Google Play 上获取", + "download-on-the-app-store": "在 App Store 上下载" }, - "javascript": { - "add": "添加JavaScript资源", - "delete": "删除JavaScript资源", - "delete-javascript-resource-text": "请注意:确认后该JavaScript资源将不可恢复。", - "delete-javascript-resource-title": "确定要删除JavaScript资源 '{{resourceTitle}}' 吗?", - "delete-javascript-resources-action-title": "删除JavaScript { count, plural, =1 {1 个资源} other {# 个资源} }", - "delete-javascript-resources-text": "请注意,即使这些JavaScript资源已被JavaScript函数使用,它们也将被删除。", - "delete-javascript-resources-title": "确定要删除JavaScript { count, plural, =1 {1 个资源} other {# 个资源} } 吗?", - "download": "下载JavaScript资源", - "upload-from-file": "从文件上传JavaScript", - "resource-file": "JavaScript资源文件", - "drop-file": "拖放一个JavaScript文件,或点击选择要上传的文件。", - "drop-resource-file-or": "拖放一个JavaScript文件或", - "javascript-library": "JavaScript库", - "javascript-type": "JavaScript类型", - "javascript-resource-details": "JavaScript资源详情", - "search": "搜索JavaScript资源", - "selected-javascript-resources": "{ count, plural, =1 {1 个 JavaScript 资源} other {# 个 JavaScript 资源} } 已选择", - "no-javascript-resource-text": "未找到JavaScript资源", - "all-types": "全部", - "module-script": "模块脚本" + "action-button": { + "behavior": "行为", + "on-click": "点击时", + "on-click-hint": "点击按钮时触发的操作", + "first-button-click": "第一按钮点击", + "first-button-click-hint": "按下第一按钮时的操作。", + "second-button-click": "第二按钮点击", + "second-button-click-hint": "按下第二按钮时的操作。", + "button-click-hint": "按下部件时的操作。" }, - "rpc": { - "error": { - "target-device-is-not-set": "目标设备未设置!", - "invalid-target-entity": "{{entityType}}实体不支持RPC命令。", - "failed-to-resolve-target-device": "无法解析目标设备!", - "request-timeout": "请求超时", - "rpc-http-error": "错误: {{status}}-{{statusText}}" - } + "command-button": { + "behavior": "行为", + "on-click": "点击时", + "on-click-hint": "点击按钮时执行的操作。" }, - "rulechain": { - "rulechain": "规则链", - "rulechain-events": "规则链事件", - "rulechains": "规则链库", - "root": "是否根链", - "delete": "删除规则链", - "name": "名称", - "name-required": "名称必填。", - "name-max-length": "名称长度应该小于256个字符。", - "description": "说明", - "add": "添加规则链", - "set-root": "设置为根规则链", - "set-root-rulechain-title": "确定要设置'{{ruleChainName}}'为根规则链吗?", - "set-root-rulechain-text": "确认后,规则链将变为根规格链,并将处理所有传入的传输消息。", - "delete-rulechain-title": " 确定要删除规则链'{{ruleChainName}}'吗?", - "delete-rulechain-text": "请注意,确认后,规则链和所有相关数据将不可恢复。", - "delete-rulechains-title": "确定要删除{count, plural, =1 { 1 个规则链} other {# 个规则链} }吗?", - "delete-rulechains-action-title": "删除{ count, plural, =1 {1 个规则链} other {# 个规则链} }", - "delete-rulechains-text": "请注意:确认后所有选定的规则链将被删除,所有相关的数据将不可恢复。", - "add-rulechain-text": "添加规则链", - "no-rulechains-text": "未找到规则链", - "rulechain-details": "规则链详情", - "details": "详情", - "events": "事件", - "system": "系统", - "import": "导入规则链", - "export": "导出规则链", - "export-failed-error": "无法导出规则链:{{error}}", - "create-new-rulechain": "创建规则链", - "rulechain-file": "规则链文件", - "invalid-rulechain-file-error": "不能导入规则链:无效的规则链数据格式。", - "copyId": "复制规则链ID", - "idCopiedMessage": "规则ID已经复制到粘贴板", - "select-rulechain": "选择规则链", - "no-rulechains-matching": "没有发现匹配'{{entity}}'的规则链。", - "rulechain-required": "规则链必填", - "management": "规则集管理", - "debug-mode": "调试模式", - "search": "查找规则链", - "selected-rulechains": "已选择{ count, plural, =1 {1 个规则链} other {# 个规则链} }", - "open-rulechain": "打开规则链", - "edge-template-root": "模版根链", - "assign-to-edge": "分配给边缘", - "edge-rulechain": "边缘规则链", - "unassign-rulechain-from-edge-text": "确认后规则链将会取消分配,边缘无法访问。", - "unassign-rulechains-from-edge-title": "确定要取消分配{ count, plural, =1 {1 个规则链} other {# 个规则链} }吗?", - "unassign-rulechains-from-edge-text": "确认后,选定的规则链将会取消分配,边缘无法访问。", - "assign-rulechain-to-edge-title": "分配规则链给边缘", - "assign-rulechain-to-edge-text": "请选择要分配给边缘的规则链", - "set-edge-template-root-rulechain": "设置为边缘模版根规则链", - "set-edge-template-root-rulechain-title": "确定将'{{ruleChainName}}' 设置为边缘模版根规则链吗?", - "set-edge-template-root-rulechain-text": "确认后,将会成为边缘模版根规则链,且它会成为新创建边缘的根规则链。", - "invalid-rulechain-type-error": "不能导入规则链:无效的规则链类型。期望类型为{{expectedRuleChainType}}。", - "set-auto-assign-to-edge": "将规则链分配给新创建的边缘", - "set-auto-assign-to-edge-title": "确定将规则链'{{ruleChainName}}'自动分配给新创建的边缘吗?", - "set-auto-assign-to-edge-text": "确认后,将自动分配规则链给新创建的边缘。", - "unset-auto-assign-to-edge": "不将规则链分配给边缘", - "unset-auto-assign-to-edge-title": "确定不再将规则链'{{ruleChainName}}'自动分配给新创建的边缘吗?", - "unset-auto-assign-to-edge-text": "确认后,将不再自动分配规则链给新创建的边缘。", - "unassign-rulechain-title": "确定要取消分配规则链'{{ruleChainName}}' 吗?", - "unassign-rulechains": "取消分配规则链" - }, - "rulenode": { - "rule-node-events": "规则节点事件", - "details": "详情", - "events": "事件", - "search": "查找节点", - "open-node-library": "打开节点库", - "close-node-library": "关闭节点库", - "add": "添加规则节点", - "name": "名称", - "name-required": "名称必填。", - "name-max-length": "名称长度应该小于256个字符。", - "type": "类型", - "rule-node-description": "规则节点描述", - "delete": "删除规则节点", - "select-all-objects": "选择所有节点和连接", - "deselect-all-objects": "取消选择所有节点和连接", - "delete-selected-objects": "删除选定的节点和连接", - "delete-selected": "删除选定", - "create-nested-rulechain": "创建嵌套规则链", - "select-all": "选择全部", - "copy-selected": "复制", - "deselect-all": "取消选择", - "rulenode-details": "规则节点详情", - "debug-mode": "调试模式", - "singleton": "单例", - "configuration": "配置", - "link": "链接", - "link-details": "规则节点链接详情", - "add-link": "添加链接", - "link-label": "链接标签", - "link-label-required": "链接标签必填", - "custom-link-label": "自定义链接标签", - "custom-link-label-required": "自定义链接标签必填", - "link-labels": "链接标签", - "link-labels-required": "链接标签必填。", - "no-link-labels-found": "未找到链接标签", - "no-link-label-matching": "未找到匹配'{{label}}'的链接标签。", - "create-new-link-label": "创建链接标签", - "type-filter": "筛选器", - "type-filter-details": "使用配置条件筛选传入消息", - "type-enrichment": "属性集", - "type-enrichment-details": "向消息元数据中添加附加信息", - "type-transformation": "变换", - "type-transformation-details": "更改消息Payload和元数据", - "type-action": "动作", - "type-action-details": "执行特别动作", - "type-external": "外部", - "type-external-details": "与外部系统交互", - "type-rule-chain": "规则链", - "type-rule-chain-details": "将传入消息转发到指定的规则链", - "type-flow": "流", - "type-flow-details": "流详情", - "type-input": "输入", - "type-input-details": "规则链的逻辑输入,将传入消息转发到下一个相关规则节点", - "type-unknown": "未知", - "type-unknown-details": "未解析的规则节点", - "directive-is-not-loaded": "定义的配置指令'{{directiveName}}'不可用。", - "ui-resources-load-error": "加载配置UI资源失败。", - "invalid-target-rulechain": "无法解析目标规则链!", - "test-script-function": "测试脚本功能", - "script-lang-java-script": "JavaScript", - "script-lang-tbel": "TBEL", - "message": "消息", - "message-type": "消息类型", - "select-message-type": "选择消息类型", - "message-type-required": "消息类型必填", - "metadata": "元数据", - "metadata-required": "元数据项不能为空。", - "output": "输出", - "test": "测试", - "help": "帮助", - "reset-debug-settings": "重置所有节点的调试设置", - "test-with-this-message": "使用此消息进行{{test}}测试", - "queue-hint": "选择一个队列将消息转发到另一个队列,默认情况下使用'Main'队列。", - "queue-singleton-hint": "选择一个队列以在多实体中转发消息,默认情况下使用'Main'队列。" - }, - "timezone": { - "timezone": "时区", - "select-timezone": "选择时区", - "no-timezones-matching": "未找到与'{{timezone}}'匹配的时区。", - "timezone-required": "时区必填。", - "browser-time": "浏览器时间" - }, - "queue": { - "queue-name": "队列", - "no-queues-found": "未找到队列", - "no-queues-matching": "未找到匹配'{{queue}}'的队列", - "select-name": "选择队列名称", - "name": "名称", - "name-required": "队列名称必填。", - "name-unique": "队列名称必须唯一。", - "name-pattern": "队列名称不能包含ASCII字母数字以外的字符,'.','_'和'-'等。", - "queue-required": "队列必填。", - "topic-required": "队列主题必填。", - "poll-interval-required": "轮询间隔必填。", - "poll-interval-min-value": "轮询间隔不能小于1", - "partitions-required": "分区必填。", - "partitions-min-value": "分区不能小于1", - "pack-processing-timeout-required": "处理超时时间必填。", - "pack-processing-timeout-min-value": "处理超时时间不能小于1", - "batch-size-required": "批量处理大小必填。", - "batch-size-min-value": "批量处理大小不能小于1", - "retries-required": "重试次数必填。", - "retries-min-value": "重试次数不能为负", - "failure-percentage-required": "失败百分比必填。", - "failure-percentage-min-value": "失败百分比值不能小于0", - "failure-percentage-max-value": "失败百分比值不能大于100", - "pause-between-retries-required": "重试间隔必填。", - "pause-between-retries-min-value": "重试间隔不能小于1", - "max-pause-between-retries-required": "最大重试间隔必填。", - "max-pause-between-retries-min-value": "最大重试间隔不能小于1", - "submit-strategy-type-required": "提交策略类型必填。", - "processing-strategy-type-required": "处理策略类型必填。", - "queues": "队列", - "selected-queues": "已选择{ count, plural, =1 {1 个队列} other {# 个队列} }", - "delete-queue-title": "确定要删除'{{queueName}}'队列吗?", - "delete-queues-title": "确定要删除{ count, plural, =1 {1 个队列} other {# 个队列} }吗?", - "delete-queue-text": "请注意:确认后队列和所有相关数据将不可恢复。", - "delete-queues-text": "确认后所有选定队列都将被删除并无法访问。", - "search": "搜索队列", - "add": "添加队列", - "details": "队列详情", - "topic": "主题", - "submit-settings": "提交设置", - "submit-strategy": "策略类型*", - "grouping-parameter": "分组参数", - "processing-settings": "重试处理设置", - "processing-strategy": "处理类型*", - "retries-settings": "重试设置", - "polling-settings": "轮询设置", - "batch-processing": "批量处理", - "poll-interval": "轮询间隔", - "partitions": "分区", - "immediate-processing": "即时处理", - "consumer-per-partition": "每个分区消费者单独轮询消息", - "consumer-per-partition-hint": "每个分区启用单独的消费者", - "duplicate-msg-to-all-partitions": "重复给所有分区的消息", - "processing-timeout": "处理超时(毫秒)", - "batch-size": "批量处理大小", - "retries": "重试次数 (0 – 无限制)", - "failure-percentage": "跳过重试的失败消息百分比", - "pause-between-retries": "重试间隔(秒)", - "max-pause-between-retries": "最大重试间隔(秒)", - "delete": "删除队列", - "copyId": "复制队列ID", - "idCopiedMessage": "队列ID已复制到剪贴板", - "description": "说明", - "description-hint": "此文本将显示在队列说明中,而不是所选策略中", - "alt-description": "提交策略:{{submitStrategy}},处理策略:{{processingStrategy}}", - "custom-properties": "自定义属性", - "custom-properties-hint": "自定义队列(主题)创建属性例如'retention.ms:604800000;retention.bytes:1048576000'", - "strategies": { - "sequential-by-originator-label": "按发起者顺序处理", - "sequential-by-originator-hint": "在确认设备A的前一条消息之前,不会提交设备A的新消息", - "sequential-by-tenant-label": "按租户顺序处理", - "sequential-by-tenant-hint": "在确认租户A的前一条消息之前,不会提交租户A的新消息", - "sequential-label": "顺序处理", - "sequential-hint": "在确认前一条消息之前,不会提交新消息", - "burst-label": "突发处理", - "burst-hint": "所有消息都按到达的顺序提交到规则链", - "batch-label": "批量处理", - "batch-hint": "在确认前一批消息之前,不会提交新批", - "skip-all-failures-label": "跳过所有失败", - "skip-all-failures-hint": "忽略所有失败", - "skip-all-failures-and-timeouts-label": "跳过所有失败和超时", - "skip-all-failures-and-timeouts-hint": "忽略所有失败和超时", - "retry-all-label": "全部重试", - "retry-all-hint": "重试处理包中的所有消息", - "retry-failed-label": "失败重试", - "retry-failed-hint": "重试处理包中的所有失败消息", - "retry-timeout-label": "超时重试", - "retry-timeout-hint": "重试处理包中的所有超时消息", - "retry-failed-and-timeout-label": "失败与超时重试", - "retry-failed-and-timeout-hint": "重试处理包中所有失败和超时的消息" - } + "power-button": { + "behavior": "行为", + "power-on": "电源“开”", + "power-on-hint": "执行组件开启操作。", + "power-off": "电源“关”", + "power-off-hint": "执行组件关闭操作。", + "on-label": "开", + "off-label": "关", + "layout": "布局", + "layout-default": "默认", + "layout-simplified": "简化", + "layout-outlined": "轮廓", + "layout-default-volume": "默认.音量", + "layout-simplified-volume": "简化.音量", + "layout-outlined-volume": "轮廓.音量", + "layout-default-icon": "默认.图标", + "layout-simplified-icon": "简化.图标", + "layout-outlined-icon": "轮廓.图标", + "main": "主色", + "background": "背景", + "button-icon-on": "按钮图标“开”", + "button-icon-off": "按钮图标“关”", + "power-on-colors": "电源“开”颜色", + "power-off-colors": "电源“关”颜色", + "disabled-colors": "禁用颜色", + "button": "按钮" }, - "queue-statistics": { - "queue-statistics": "队列统计", - "no-queue-statistics-matching": "未找到与'{{entity}}'匹配的队列统计信息。", - "queue-statistics-required": "队列统计必填。", - "list-of-queue-statistics": "{ count, plural, =1 {个队列统计} other {对列统计#列表} }", - "selected-queue-statistics": "选中{ count, plural, =1 {1个队列统计} other {#对列统计} }", - "no-queue-statistics-text": "找不到队列统计数据", - "queue-statistics-starts-with": "队列统计的名称以始于'{{prefix}}'" - }, - "server-error": { - "general": "一般服务器错误", - "authentication": "授权错误", - "jwt-token-expired": "JWT令牌已过期", - "tenant-trial-expired": "租户过期", - "credentials-expired": "凭据过期", - "permission-denied": "没有权限", - "invalid-arguments": "无效参数", - "bad-request-params": "请求无效", - "item-not-found": "找不到项目", - "too-many-requests": "请求过于频繁", - "too-many-updates": "更新过于频繁" - }, - "tenant": { - "tenant": "租户", - "tenants": "租户", - "management": "租户管理", - "add": "添加租户", - "admins": "管理员", - "manage-tenant-admins": "管理租户管理员", - "delete": "删除租户", - "add-tenant-text": "添加租户", - "no-tenants-text": "未找到租户", - "tenant-details": "租客详情", - "title-max-length": "标题长度应该小于256个字符。", - "delete-tenant-title": "确定要删除租户'{{tenantTitle}}'吗?", - "delete-tenant-text": "请注意:确认后租户和所有相关数据将不可恢复。", - "delete-tenants-title": "确定要删除{count,plural,=1 {1 个租户} other {# 个租户} }吗?", - "delete-tenants-action-title": "删除{ count, plural, =1 {1 个租户} other {# 个租户} }", - "delete-tenants-text": "请注意:确认后所有选定的租户将被删除,所有相关数据将不可恢复。", - "title": "标题", - "title-required": "标题必填。", - "description": "说明", - "details": "详情", - "events": "事件", - "copyId": "复制租户ID", - "idCopiedMessage": "租户ID已经复制到粘贴板", - "select-tenant": "选择租户", - "no-tenants-matching": "未找到匹配'{{entity}}'的租户", - "tenant-required": "租户必填", - "search": "查找租户", - "selected-tenants": "已选择{ count, plural, =1 {1 个租户} other {# 个租户} }", - "isolated-tb-rule-engine": "使用独立的规则引擎服务", - "isolated-tb-rule-engine-details": "每个独立租户需要单独的规则引擎微服务" - }, - "tenant-profile": { - "tenant-profile": "租户配置", - "tenant-profiles": "租户配置", - "add": "添加租户配置", - "add-profile": "添加配置", - "debug": "调试", - "edit": "编辑租户配置", - "tenant-profile-details": "租户配置详细信息", - "no-tenant-profiles-text": "未找到租户配置", - "name-max-length": "名称长度必须小于256个字符", - "search": "查找租户配置", - "selected-tenant-profiles": "已选择{ count, plural, =1 {1 个租户配置} other {# 个租户配置} }", - "no-tenant-profiles-matching": "未找到与'{{entity}}'匹配的租户配置。", - "tenant-profile-required": "租户配置必填", - "idCopiedMessage": "租户配置ID已复制到剪贴板", - "set-default": "设置该租户配置为默认", - "delete": "删除租户配置", - "copyId": "复制租户配置ID", - "name": "名称", - "name-required": "名称必填。", - "data": "配置数据", - "profile-configuration": "配置设置", - "description": "说明", - "default": "默认", - "delete-tenant-profile-title": "确定要删除租户配置'{{tenantProfileName}}'吗?", - "delete-tenant-profile-text": "请注意:确认后,租户配置和所有相关数据将不可恢复。", - "delete-tenant-profiles-title": "确定要删除{ count, plural, =1 {1 个租户配置} other {# 个租户配置} }吗?", - "delete-tenant-profiles-text": "请注意:确认后,所有选定的租户配置将被删除,所有相关数据将不可恢复。", - "set-default-tenant-profile-title": "确定要将租户配置'{{tenantProfileName}}'设为默认值吗?", - "set-default-tenant-profile-text": "确认后此租户配置将被标记为默认配置并将用于未指定配置的新租户。", - "no-tenant-profiles-found": "未找到租户配置。", - "create-new-tenant-profile": "创建租户配置", - "create-tenant-profile": "创建租户配置", - "import": "导入租户配置", - "export": "导出租户配置", - "export-failed-error": "无法导出租户配置:{{error}}", - "tenant-profile-file": "租户配置", - "invalid-tenant-profile-file-error": "无法导入租户配置:无效的租户配置数据结构。", - "advanced-settings": "高级设置", - "entities": "实体", - "rule-engine": "规则引擎", - "time-to-live": "TTL", - "alarms-and-notifications": "告警与通知", - "ota-files-in-bytes": "OTA文件(字节)", - "ws-title": "WS", - "unlimited": "(0 - 无限制)", - "maximum-devices": "最大设备数", - "maximum-devices-required": "最大设备数必填。", - "maximum-devices-range": "最大设备数不能为负数", - "maximum-assets": "最大资产数", - "maximum-assets-required": "最大资产数必填。", - "maximum-assets-range": "最大资产数不能为负数", - "maximum-customers": "最大客户数", - "maximum-customers-required": "最大客户数必填。", - "maximum-customers-range": "最大客户数不能为负数", - "maximum-users": "最大用户数", - "maximum-users-required": "最大用户数必填。", - "maximum-users-range": "最大用户数不能为负数", - "maximum-dashboards": "最大仪表板数", - "maximum-dashboards-required": "最大仪表板数必填。", - "maximum-dashboards-range": "最大仪表板数不能为负数", - "maximum-edges": "最大边数", - "maximum-edges-required": "需要最大边数。", - "maximum-edges-range": "边的最大数量不能为负数", - "maximum-rule-chains": "最大规则链数", - "maximum-rule-chains-required": "最大规则链数必填。", - "maximum-rule-chains-range": "最大规则链数不能为负数", - "maximum-resources-sum-data-size": "资源文件总大小", - "maximum-resources-sum-data-size-required": "资源文件总大小必填。", - "maximum-resources-sum-data-size-range": "资源文件总大小不能为负数", - "maximum-resource-size": "最大资源文件大小(字节)", - "maximum-resource-size-required": "最大资源文件大小是必需的", - "maximum-resource-size-range": "最大资源文件大小不能为负数", - "maximum-ota-packages-sum-data-size": "OTA包文件总大小", - "maximum-ota-package-sum-data-size-required": "OTA包文件总大小必填。", - "maximum-ota-package-sum-data-size-range": "OTA包文件总大小不能为负数", - "maximum-debug-duration-min": "最大调试时长(分钟)", - "maximum-debug-duration-min-range": "最大调试时长不能为负", - "rest-requests-for-tenant": "租户REST请求", - "transport-tenant-telemetry-msg-rate-limit": "租户遥测消息", - "transport-tenant-telemetry-data-points-rate-limit": "租户遥测数据点", - "transport-device-msg-rate-limit": "设备消息", - "transport-device-telemetry-msg-rate-limit": "设备遥测数据点", - "transport-device-telemetry-data-points-rate-limit": "设备遥测消息", - "transport-gateway-msg-rate-limit": "传输网关消息", - "transport-gateway-telemetry-msg-rate-limit": "传输网关遥测消息", - "transport-gateway-telemetry-data-points-rate-limit": "传输网关遥测数据点", - "transport-gateway-device-msg-rate-limit": "传输网关设备消息", - "transport-gateway-device-telemetry-msg-rate-limit": "传输网关设备遥测消息", - "transport-gateway-device-telemetry-data-points-rate-limit": "传输网关设备遥测数据点", - "tenant-entity-export-rate-limit": "实体版本创建", - "tenant-entity-import-rate-limit": "实体版本加载", - "tenant-notification-request-rate-limit": "通知请求", - "tenant-notification-requests-per-rule-rate-limit": "每个通知规则的通知请求", - "max-transport-messages": "最大传输消息数", - "max-transport-messages-required": "最大传输消息数必填。", - "max-transport-messages-range": "最大传输消息数不能为负数", - "max-transport-data-points": "最大传输数据点数", - "max-transport-data-points-required": "最大传输数据点数必填。", - "max-transport-data-points-range": "最大传输数据点数不能为负", - "max-r-e-executions": "最大规则引擎执行数", - "max-r-e-executions-required": "最大规则引擎执行数必填。", - "max-r-e-executions-range": "最大规则引擎执行数不能为负", - "max-j-s-executions": "最大JavaScript执行数", - "max-j-s-executions-required": "最大JavaScript执行数必填。", - "max-j-s-executions-range": "最大JavaScript执行数不能为负数", - "max-tbel-executions": "最大TBEL执行数", - "max-tbel-executions-required": "需要指定最大TBEL执行数。", - "max-tbel-executions-range": "最大TBEL执行数不能为负数。", - "max-d-p-storage-days": "最大存储点天", - "max-d-p-storage-days-required": "最大存储点天必填。", - "max-d-p-storage-days-range": "最大存储点天不能为负数", - "default-storage-ttl-days": "默认存储TTL天数", - "default-storage-ttl-days-required": "默认存储TTL天数必填。.", - "default-storage-ttl-days-range": "默认存储TTL天数不能为负数", - "alarms-ttl-days": "告警TTL天数", - "alarms-ttl-days-required": "告警TTL天数必填。", - "alarms-ttl-days-days-range": "告警TTL天数不能为负数", - "rpc-ttl-days": "RPC TTL天数", - "rpc-ttl-days-required": "RPC TTL天数必填。", - "rpc-ttl-days-days-range": "RPC TTL天数不能为负数", - "queue-stats-ttl-days": "队列统计信息TTL天数", - "queue-stats-ttl-days-required": "需要指定队列统计信息TTL天数", - "queue-stats-ttl-days-range": "队列统计信息TTL天数不能为负数", - "rule-engine-exceptions-ttl-days": "规则引擎异常TTL天数", - "rule-engine-exceptions-ttl-days-required": "需要指定规则引擎异常TTL天数", - "rule-engine-exceptions-ttl-days-range": "规则引擎异常TTL天数不能为负数", - "max-rule-node-executions-per-message": "每条消息的最大规则节点执行数", - "max-rule-node-executions-per-message-required": "每个消息的最大规则节点执行数必填。", - "max-rule-node-executions-per-message-range": "每条消息的最大规则节点执行数不能为负", - "max-emails": "最大电子邮件发送数", - "max-emails-required": "最大电子邮件发送数必填。", - "max-emails-range": "最大电子邮件发送数不能为负", - "sms-enabled": "启用短信", - "max-sms": "最大短信发送数", - "max-sms-required": "最大短信发送数必填。", - "max-sms-range": "最大短信发送数不能为负", - "max-created-alarms": "最大创建告警数", - "max-created-alarms-required": "最大创建告警数必填。", - "max-created-alarms-range": "最大创建告警数不能为负数", - "no-queue": "未配置队列", - "add-queue": "添加队列", - "queues-with-count": "队列 ({{count}})", - "tenant-rest-limits": "租户REST请求", - "customer-rest-limits": "客户REST请求", - "incorrect-pattern-for-rate-limits": "格式为以冒号分割容量与周期(秒)并以逗号分割配置对例如 100:1,2000:60", - "too-small-value-zero": "数值必须大于0", - "too-small-value-one": "数值必须大于1", - "queue-size-is-limited-by-system-configuration": "队列的大小也受系统配置的限制。", - "cassandra-tenant-limits-configuration": "租户Cassandra查询", - "ws-limit-max-sessions-per-tenant": "租户最大会话数", - "ws-limit-max-sessions-per-customer": "客户最大会话数", - "ws-limit-max-sessions-per-regular-user": "普通用户最大会话数", - "ws-limit-max-sessions-per-public-user": "公共用户最大会话数", - "ws-limit-queue-per-session": "会话最大消息队列大小", - "ws-limit-max-subscriptions-per-tenant": "租户最大订阅数", - "ws-limit-max-subscriptions-per-customer": "客户最大订阅数", - "ws-limit-max-subscriptions-per-regular-user": "普通用户最大订阅数", - "ws-limit-max-subscriptions-per-public-user": "公共用户最大订阅数", - "ws-limit-updates-per-session": "会话WS更新", - "rate-limits": { - "add-limit": "添加限制", - "advanced-settings": "高级设置", - "edit-limit": "编辑限制", - "edit-transport-tenant-msg-title": "编辑传输租户消息速率限制", - "edit-transport-tenant-telemetry-msg-title": "编辑传输租户遥测消息速率限制", - "edit-transport-tenant-telemetry-data-points-title": "编辑传输租户遥测数据点速率限制", - "edit-transport-device-msg-title": "编辑传输设备消息速率限制", - "edit-transport-device-telemetry-msg-title": "编辑传输设备遥测消息速率限制", - "edit-transport-device-telemetry-data-points-title": "编辑传输设备遥测数据点速率限制", - "edit-transport-gateway-msg-title": "编辑传输网关消息速率限制", - "edit-transport-gateway-telemetry-msg-title": "编辑传输网关遥测消息速率限制", - "edit-transport-gateway-telemetry-data-points-title": "编辑传输网关遥测数据点率限制", - "edit-transport-gateway-device-msg-title": "编辑传输网关设备消息速率限制", - "edit-transport-gateway-device-telemetry-msg-title": "编辑传输网关设备遥测消息速率限制", - "edit-transport-gateway-device-telemetry-data-points-title": "编辑传输网关设备遥测数据点速率限制", - "edit-tenant-rest-limits-title": "编辑租户费率限制的休息请求", - "edit-customer-rest-limits-title": "编辑客户REST请求速率限制", - "edit-ws-limit-updates-per-session-title": "编辑会话WS更新速率限制", - "edit-cassandra-tenant-limits-configuration-title": "编辑租户Cassandra查询速率限制", - "edit-tenant-entity-export-rate-limit-title": "编辑实体版本创建速率限制", - "edit-tenant-entity-import-rate-limit-title": "编辑实体版本加载速率限制", - "edit-tenant-notification-request-rate-limit-title": "编辑通知请求的速率限制", - "edit-tenant-notification-requests-per-rule-rate-limit-title": "编辑每个通知规则的通知请求速率限制", - "edit-edge-events-rate-limit": "编辑Edge事件速率限制", - "edit-edge-events-per-edge-rate-limit": "编辑每个Edge事件速率限制", - "edge-events-rate-limit": "Edge事件", - "edge-events-per-edge-rate-limit": "每个Edge事件", - "edit-edge-uplink-messages-rate-limit": "编辑Edge上行链路消息速率限制", - "edit-edge-uplink-messages-per-edge-rate-limit": "编辑Edge上行链路消息每个Edge速率限制", - "edge-uplink-messages-rate-limit": "Edge上行链路消息", - "edge-uplink-messages-per-edge-rate-limit": "每个Edge上行链路消息", - "messages-per": "每条消息", - "not-set": "未配置", - "number-of-messages": "消息数量", - "number-of-messages-required": "消息数量必填。", - "number-of-messages-min": "最小值为1。", - "preview": "预览", - "per-seconds": "每秒", - "per-seconds-required": "时间必填。", - "per-seconds-min": "最小值为1。", - "rate-limits": "速率限制", - "remove-limit": "删除限制", - "transport-tenant-msg": "传输租户消息", - "transport-tenant-telemetry-msg": "传输租户遥测消息", - "transport-tenant-telemetry-data-points": "传输租户遥测数据点", - "transport-device-msg": "传输设备消息", - "transport-device-telemetry-msg": "传输设备遥测消息", - "transport-device-telemetry-data-points": "传输设备遥测数据点", - "transport-gateway-msg": "传输网关消息", - "transport-gateway-telemetry-msg": "传输网关遥测消息", - "transport-gateway-telemetry-data-points": "传输网关遥测数据点", - "transport-gateway-device-msg": "传输网关设备消息", - "transport-gateway-device-telemetry-msg": "传输网关设备遥测消息", - "transport-gateway-device-telemetry-data-points": "传输网关设备遥测数据点", - "sec": "秒" - } + "toggle-button": { + "behavior": "行为", + "checked": "选中", + "unchecked": "未选中", + "check": "选中", + "check-hint": "执行选中组件的操作。", + "uncheck": "取消选中", + "uncheck-hint": "执行取消选中组件的操作。", + "auto-scale": "自动缩放", + "horizontal-fill": "水平填充", + "vertical-fill": "垂直填充", + "button-appearance": "按钮外观" }, - "timeinterval": { - "seconds-interval": "{ seconds, plural, =1 {1 秒} other {# 秒} }", - "minutes-interval": "{ minutes, plural, =1 {1 分} other {# 分} }", - "hours-interval": "{ hours, plural, =1 {1 小时} other {# 小时} }", - "days-interval": "{ days, plural, =1 {1 天} other {# 天} }", - "days": "天", - "hours": "小时", - "minutes": "分钟", - "seconds": "秒", - "advanced": "高级", - "custom": "自定义", - "predefined": { - "yesterday": "昨天", - "day-before-yesterday": "前天", - "this-day-last-week": "前一周的这一天", - "previous-week": "前一周(周日至周六)", - "previous-week-iso": "前一周(周一至周日)", - "previous-month": "前一个月", - "previous-quarter": "上季度", - "previous-half-year": "前半年", - "previous-year": "前一年", - "current-hour": "当前小时", - "current-day": "当前天", - "current-day-so-far": "当天到目前为止", - "current-week": "本周(周日至周六)", - "current-week-iso": "本周(周一至周日)", - "current-week-so-far": "本周到目前为止(周日至周六)", - "current-week-iso-so-far": "本周到目前为止(周一至周日)", - "current-month": "本月", - "current-month-so-far": "本月到目前为止", - "current-quarter": "当前季度", - "current-quarter-so-far": "当前季度到目前为止", - "current-half-year": "当前半年", - "current-half-year-so-far": "当前半年到目前为止", - "current-year": "本年", - "current-year-so-far": "本年到目前为止" - }, - "type": { - "week": "每周(星期日-星期六)", - "week-iso": "每周(星期一-星期日)", - "month": "月", - "quarter": "季度" - } + "segmented-button": { + "layout": "布局", + "layout-squared": "方形", + "layout-rounded": "圆角", + "card-border": "卡片边框", + "button-appearance": "按钮外观", + "first": "第一", + "second": "第二", + "color-styles": "颜色样式", + "selected": "已选择", + "unselected": "未选择" }, - "timeunit": { - "milliseconds": "毫秒", - "seconds": "秒", - "minutes": "分钟", - "hours": "小时", - "days": "天" - }, - "timewindow": { - "timewindow": "时间窗口", - "timewindow-settings": "设置时间窗口", - "years": "{ years, plural, =1 {1年 } other {#年 } }", - "years-short": "{{ years }}y", - "months": "{ months, plural, =1 {1月 } other {#月 } }", - "months-short": "{{ months }}M", - "weeks": "{ weeks, plural, =1 {1周 } other {#周 } }", - "weeks-short": "{{ weeks }}w", - "days": "{ days, plural, =1 {1天 } other {#天 } }", - "days-short": "{{ days }}d", - "hours": "{ hours, plural, =0 {-小时 } =1 {1小时 } other {#小时 } }", - "hr": "{{ hr }} 时", - "hr-short": "{{ hr }}h", - "minutes": "{ minutes, plural, =0 {-分 } =1 {1分 } other {#分 } }", - "min": "{{ min }} 分", - "min-short": "{{ min }}m", - "seconds": "{ seconds, plural, =0 {-秒 } =1 {1秒 } other {#秒 } }", - "sec": "{{ sec }} 秒", - "sec-short": "{{ sec }}s", - "short": { - "years": "{ years, plural, =1 {1 年} other {# 年} }", - "days": "{ days, plural, =1 {1 天 } other {# 天 } }", - "hours": "{ hours, plural, =1 {1 小时 } other {# 小时 } }", - "minutes": "{{minutes}}分 ", - "seconds": "{{seconds}}秒 " - }, - "realtime": "实时", - "history": "历史", - "last-prefix": "最后", - "period": "从{{ startTime }}到{{ endTime }}", - "edit": "编辑时间窗口", - "date-range": "日期范围", - "for-all-time": "所有时间", - "last": "最后", - "time-period": "时间段", - "hide": "隐藏", - "interval": "区间", - "just-now": "刚刚", - "just-now-lower": "刚刚", - "ago": "之前", - "style": "样式", - "icon": "图标", - "icon-position": "图标位置", - "icon-position-left": "左侧", - "icon-position-right": "右侧", - "font": "字体", - "color": "颜色", - "displayTypePrefix": "实时/历史", - "preview": "预览", - "relative": "相对", - "range": "范围", - "hide-timewindow-section": "隐藏用户的时间窗口", - "hide-last-interval": "隐藏用户的最后间隔", - "hide-relative-interval": "隐藏用户的相对间隔", - "hide-fixed-interval": "隐藏用户的固定间隔", - "hide-aggregation": "隐藏用户的聚合", - "hide-group-interval": "隐藏用户的分组间隔", - "hide-max-values": "隐藏用户的最大值", - "hide-timezone": "隐藏用户的时区", - "disable-custom-interval": "禁用自定义间隔选择", - "edit-aggregation-functions-list": "编辑聚合函数列表", - "edit-aggregation-functions-list-hint": "可以指定可用选项的列表。", - "allowed-aggregation-functions": "允许的聚合函数", - "edit-intervals-list": "编辑时间间隔列表", - "allowed-agg-intervals": "分组时间间隔", - "default-agg-interval": "默认分组时间间隔", - "edit-intervals-list-hint": "可以指定可用的时间间隔选项列表。", - "edit-grouping-intervals-list-hint": "可以配置分组时间间隔列表和默认分组时间间隔。", - "all": "全部" - }, - "tooltip": { - "trigger": "触发", - "trigger-point": "点", - "trigger-axis": "轴", + "button": { + "layout": "布局", + "outlined": "轮廓", + "filled": "填充", + "underlined": "下划线", + "basic": "基础", + "auto-scale": "自动缩放", + "label": "标签", + "icon": "图标", + "border-radius": "边框圆角", + "color-palette": "调色板", + "main": "主色", + "background": "背景", + "border": "边框", + "custom-styles": "自定义样式", + "clear-style": "清除样式", + "shadow": "阴影", + "enabled": "启用", + "disabled": "禁用", + "preview": "预览", + "copy-style-from": "从...复制样式" + }, + "value-stepper": { + "behavior": "行为", + "simplified": "简化", + "filled": "填充", + "outlined": "轮廓", + "volume": "音量", + "initial-state": "初始状态", + "initial-state-hint": "获取初始值的操作。", + "disabled-state": "禁用状态", + "disabled-state-hint": "配置组件被禁用的条件。", + "right-button-click": "右按钮点击", + "right-button-click-hint": "按下右按钮时的操作。", + "left-button-click": "左按钮点击", + "left-button-click-hint": "按下左按钮时的操作。", + "auto-scale": "自动缩放", + "value-range": "范围", + "min-range": "最小值", + "max-range": "最大值", + "value-increment-decrement-step": "值递增/递减步长", + "value": "值", + "value-box-background": "值框背景", + "border": "边框", + "button-appearance": "按钮外观", + "left": "左", + "right": "右", + "left-button": "左按钮", + "right-button": "右按钮", + "icon": "图标", + "color-palette": "调色板", + "main": "主色", + "background": "背景", + "button-icon-on": "按钮图标“开”", + "button-on-colors": "电源“开”颜色", + "disabled-colors": "禁用颜色" + }, + "button-state": { + "activated-state": "激活状态", + "activated-state-hint": "配置按钮处于激活状态的条件。", + "disabled-state": "禁用状态", + "disabled-state-hint": "配置按钮被禁用的条件。", + "selected-state": "选择按钮", + "selected-state-hint": "配置按钮被选中的条件。", + "enabled": "启用", + "hovered": "悬停", + "pressed": "按下", + "activated": "已激活", + "disabled": "已禁用", + "initial": "第一按钮", + "first": "第一", + "second": "第二" + }, + "background": { + "background": "背景", + "background-settings": "背景设置", + "background-type-image": "图片", + "background-type-color": "颜色", + "image-url": "图片 URL", + "overlay": "叠加层", + "enable-overlay": "启用叠加层", + "blur": "模糊", + "preview": "预览" + }, + "bar-chart": { + "bar-appearance": "柱状图外观", + "label-on-bar": "柱上标签", + "value-on-bar": "柱上数值", + "bar-chart-style": "柱状图样式", + "bar-axis": "柱状图轴" + }, + "polar-area-chart": { + "polar-axis": "极坐标轴", + "start-angle": "起始角度", + "polar-area-chart-style": "极坐标面积图样式" + }, + "battery-level": { + "layout": "布局", + "layout-vertical-solid": "垂直.实心", + "layout-horizontal-solid": "水平.实心", + "layout-vertical-divided": "垂直.分段", + "layout-horizontal-divided": "水平.分段", + "icon": "图标", + "value": "值", + "auto-scale": "自动缩放", + "battery-level-color": "电池电量颜色", + "battery-shape-color": "电池外形颜色", + "battery-level-card-style": "电池电量卡片样式", + "sections-count": "分段数量" + }, + "signal-strength": { + "value": "值", + "last-update": "最后更新", + "no-signal": "无信号", + "layout": "布局", + "layout-wifi": "Wi-Fi", + "layout-cellular-bar": "蜂窝信号条", + "icon": "图标", + "date": "日期", + "active-bars-color": "活跃信号条颜色", + "inactive-bars-color": "非活跃信号条颜色", + "signal-strength-card-style": "信号强度卡片样式", + "no-signal-rssi-value": "“无信号”RSSI 值" + }, + "status-widget": { + "behavior": "行为", + "layout": "布局", + "layout-default": "默认", + "layout-center": "居中", + "layout-icon": "图标", + "on": "开", + "off": "关", + "label": "标签", + "status": "状态", + "icon": "图标", + "color-palette": "调色板", + "disabled-color-palette": "禁用调色板", + "primary": "主要", + "primary-color-hint": "图标和标签的颜色", + "secondary": "次要", + "secondary-color-hint": "状态的颜色", + "background": "背景" + }, + "chart": { + "common-settings": "通用设置", + "enable-stacking-mode": "启用堆叠模式", + "selection": "时间范围选择", + "enable-selection-mode": "启用选择模式", + "line-shadow-size": "线条阴影大小", + "display-smooth-lines": "显示平滑(曲线)线条", + "default-bar-width": "非聚合数据的默认柱宽(毫秒)", + "bar-alignment": "柱对齐", + "bar-alignment-left": "左", + "bar-alignment-right": "右", + "bar-alignment-center": "居中", + "default-font": "默认字体", + "default-font-size": "默认字号", + "default-font-color": "默认字体颜色", + "thresholds-line-width": "所有阈值的默认线宽", + "tooltip-settings": "提示框设置", + "tooltip": "提示框", + "show-tooltip": "显示提示框", + "hover-individual-points": "悬停显示单个数据点", + "show-cumulative-values": "在堆叠模式下显示累计值", + "hide-zero-false-values": "在提示框中隐藏零值/假值", + "tooltip-value-format-function": "提示框值格式化函数", + "grid-settings": "网格设置", + "show-vertical-lines": "显示垂直线", + "show-horizontal-lines": "显示水平线", + "grid-outline-border-width": "网格轮廓/边框宽度(px)", + "primary-color": "主色", + "background-color": "背景颜色", + "ticks-color": "刻度颜色", + "xaxis-settings": "X 轴设置", + "axis-title": "轴标题", + "xaxis-tick-labels-settings": "X 轴刻度标签设置", + "show-tick-labels": "显示轴刻度标签", + "yaxis-settings": "Y 轴设置", + "min-scale-value": "刻度最小值", + "max-scale-value": "刻度最大值", + "yaxis-tick-labels-settings": "Y 轴刻度标签设置", + "tick-step-size": "刻度步长", + "number-of-decimals": "显示的小数位数", + "ticks-formatter-function": "刻度格式化函数", + "comparison-settings": "对比设置", + "enable-comparison": "启用对比", + "time-for-comparison": "对比周期", + "time-for-comparison-previous-interval": "上一区间(默认)", + "time-for-comparison-days": "一天前", + "time-for-comparison-weeks": "一周前", + "time-for-comparison-months": "一个月前", + "time-for-comparison-years": "一年前", + "time-for-comparison-custom-interval": "自定义区间", + "custom-interval-value": "自定义区间值(毫秒)", + "comparison-x-axis-settings": "对比 X 轴设置", + "axis-position": "轴位置", + "axis-position-top": "顶部(默认)", + "axis-position-bottom": "底部", + "custom-legend-settings": "自定义图例设置", + "enable-custom-legend": "启用自定义图例(这将允许您在键标签中使用属性/时间序列值)", + "key-name": "键名称", + "key-name-required": "键名称为必填项", + "key-type": "键类型", + "key-type-attribute": "属性", + "key-type-timeseries": "时间序列", + "label-keys-list": "标签中使用的键列表", + "no-label-keys": "未配置键", + "add-label-key": "添加新键", + "line-width": "线宽", + "color": "颜色", + "data-is-hidden-by-default": "数据默认隐藏", + "disable-data-hiding": "禁用数据隐藏", + "remove-from-legend": "从图例中移除数据键", + "exclude-from-stacking": "从堆叠中排除(在“堆叠”模式下可用)", + "line-settings": "线条设置", + "show-line": "显示线条", + "fill-line": "填充线条", + "fill-line-opacity": "填充不透明度", + "points-settings": "数据点设置", + "show-points": "显示数据点", + "points-line-width": "数据点线宽", + "points-radius": "数据点半径", + "point-shape": "数据点形状", + "point-shape-circle": "圆形", + "point-shape-cross": "十字形", + "point-shape-diamond": "菱形", + "point-shape-square": "方形", + "point-shape-triangle": "三角形", + "point-shape-custom": "自定义函数", + "point-shape-draw-function": "数据点形状绘制函数", + "show-separate-axis": "显示独立轴", + "axis-position-left": "左", + "axis-position-right": "右", + "thresholds": "阈值", + "no-thresholds": "未配置阈值", + "add-threshold": "添加阈值", + "show-values-for-comparison": "显示历史对比值", + "comparison-values-label": "历史值标签", + "comparison-line-color": "对比线颜色", + "threshold-settings": "阈值设置", + "use-as-threshold": "使用键值作为阈值", + "threshold-line-width": "阈值线宽", + "threshold-color": "阈值颜色", + "common-pie-settings": "通用饼图设置", + "radius": "半径", + "inner-radius": "内半径", + "tilt": "倾斜", + "common-pie-settings-range-error": "值应在 0 到 1 之间", + "stroke-settings": "描边设置", + "width-pixels": "宽度(像素)", + "show-labels": "显示标签", + "animation-settings": "动画设置", + "animated-pie": "启用饼图动画(实验性)", + "border-settings": "边框设置", + "border-width": "边框宽度", + "border-color": "边框颜色", + "legend-settings": "图例设置", + "display-legend": "显示图例", + "labels-font-color": "标签字体颜色", + "series": "系列", + "add-series": "添加系列", + "series-settings": "系列设置", + "remove-series": "移除系列", + "no-series": "未配置系列", + "no-series-error": "至少应指定一个系列", + "chart-appearance": "图表外观", + "vertical-grid-lines": "垂直网格线", + "horizontal-grid-lines": "水平网格线", + "chart-background": "图表背景", + "grid-lines-color": "网格线颜色", + "border": "边框", + "axis": "轴", + "vertical-axis": "垂直轴", + "ticks": "刻度", + "horizontal-axis": "水平轴", + "shape-empty-circle": "空心圆", + "shape-circle": "圆形", + "shape-rect": "矩形", + "shape-round-rect": "圆角矩形", + "shape-triangle": "三角形", + "shape-diamond": "菱形", + "shape-pin": "图钉", + "shape-arrow": "箭头", + "shape-none": "无", + "line-type-solid": "实线", + "line-type-dashed": "虚线", + "line-type-dotted": "点线", + "label-position-top": "顶部", + "label-position-bottom": "底部", + "label-position-outside": "外部", + "label-position-inside": "内部", + "fill": "填充", + "fill-type-none": "无", + "fill-type-solid": "实心", + "fill-type-opacity": "不透明度", + "fill-type-gradient": "渐变", + "background": "背景", + "opacity": "不透明度", + "gradient-stops": "渐变节点", + "gradient-start": "起始", + "gradient-end": "结束", + "animation": { + "animation": "动画", + "animation-threshold": "动画阈值", + "animation-duration": "动画持续时间", + "animation-easing": "动画缓动", + "animation-delay": "动画延迟", + "update-animation-duration": "更新动画持续时间", + "update-animation-easing": "更新动画缓动", + "update-animation-delay": "更新动画延迟" + }, + "chart-axis": { + "scale": "刻度", + "scale-min": "最小", + "scale-max": "最大", + "scale-auto": "自动" + }, + "bar": { + "show-border": "显示边框", + "border-width": "边框宽度", + "border-radius": "边框圆角", + "bar-width": "柱宽", "label": "标签", - "value": "数值", - "date": "日期", - "show-date-time-interval": "显示间隔", - "show-date-time-interval-hint": "根据数据聚合显示时间间隔。", - "background-color": "背景颜色", - "background-blur": "背景模糊" - }, - "unit": { - "millimeter": "毫米", - "centimeter": "厘米", - "angstrom": "埃米", - "nanometer": "纳米", - "micrometer": "千分尺", - "meter": "米", - "kilometer": "公里", - "inch": "英寸", - "foot": "英尺", - "yard": "码", - "mile": "英里", - "nautical-mile": "海里", - "astronomical-unit": "天文单位", - "reciprocal-metre": "倒数米", - "meter-per-meter": "每米", - "steradian": "球面度", - "thou": "毫英寸", - "barleycorn": "1/3英寸", - "hand": "4英寸", - "chain": "66英尺", - "furlong": "660英尺", - "league": "3英里", - "fathom": "6英尺", - "cable": "平方毫米", - "link": "Link", - "rod": "杆", - "nanogram": "纳克", - "microgram": "微克", - "milligram": "毫克", - "gram": "克", - "kilogram": "千克", - "tonne": "吨", - "ounce": "盎司", - "pound": "磅", - "stone": "英石", - "hundredweight-count": "数百分点", - "short-tons": "短吨", - "dalton": "道尔顿", - "grain": "格令", - "drachm": "打兰", - "quarter": "一刻钟", - "slug": "斯勒格", - "carat": "克拉", - "cubic-millimeter": "立方毫米", - "cubic-centimeter": "立方厘米", - "cubic-meter": "立方米", - "cubic-kilometer": "立方千米", - "microliter": "微升", - "milliliter": "毫升", - "liter": "公升", - "hectoliter": "百升", - "cubic-inch": "立方英寸", - "cubic-foot": "立方英尺", - "cubic-yard": "立方英里", - "fluid-ounce": "液体盎司", - "pint": "品脱", - "quart": "夸脱", - "gallon": "加仑", - "oil-barrels": "油桶", - "cubic-meter-per-kilogram": "每公斤立方米", - "gill": "吉尔", - "hogshead": "大桶", - "teaspoon": "茶匙", - "tablespoon": "汤匙", - "cup": "杯", - "celsius": "摄氏度", - "kelvin": "开尔文", - "rankine": "兰金", - "fahrenheit": "华氏度", - "percent": "百分比", - "meter-per-second": "米每秒", - "kilometer-per-hour": "千米每小时", - "foot-per-second": "英尺每秒", - "mile-per-hour": "英里每小时", - "knot": "节", - "millimeters-per-minute": "毫米每分钟", - "kilometer-per-hour-squared": "千米每小时平方", - "foot-per-second-squared": "英尺每秒平方", - "pascal": "帕斯卡", - "kilopascal": "千帕", - "megapascal": "兆帕", - "gigapascal": "吉帕", - "millibar": "毫巴", - "bar": "巴", - "kilobar": "千巴", - "newton": "牛顿", - "newton-meter": "牛顿·米", - "foot-pounds": "英尺磅", - "inch-pounds": "英寸磅", - "newton-per-meter": "牛顿每米", - "atmospheres": "大气压", - "pounds-per-square-inch": "磅每平方英寸", - "torr": "托", - "inches-of-mercury": "英寸汞柱", - "pascal-per-square-meter": "帕斯卡每平方米", - "pound-per-square-inch": "磅每平方英寸", - "newton-per-square-meter": "牛顿每平方米", - "kilogram-force-per-square-meter": "千克力每平方米", - "pascal-per-square-centimeter": "帕斯卡每平方厘米", - "ton-force-per-square-inch": "吨力每平方英寸", - "kilonewton-per-square-meter": "千牛顿每平方米", - "newton-per-square-millimeter": "牛顿每平方毫米", - "microjoule": "微焦耳", - "millijoule": "毫焦耳", - "joule": "焦耳", - "kilojoule": "千焦耳", - "megajoule": "兆焦耳", - "gigajoule": "吉焦耳", - "watt-hour": "瓦时", - "kilowatt-hour": "千瓦时", - "electron-volts": "电子伏特", - "joules-per-coulomb": "焦耳每库仑", - "british-thermal-unit": "英热单位", - "foot-pound": "英尺磅", - "calorie": "卡路里", - "small-calorie": "小卡路里", - "kilocalorie": "千卡路里", - "joule-per-kelvin": "焦耳每开尔文", - "joule-per-kilogram-kelvin": "焦耳每千克开尔文", - "joule-per-kilogram": "焦耳每千克", - "watt-per-meter-kelvin": "瓦特每米开尔文", - "joule-per-cubic-meter": "焦耳每立方米", - "therm": "热单位", - "electric-dipole-moment": "电偶极矩", - "magnetic-dipole-moment": "磁偶极矩", - "debye": "德拜", - "coulomb-per-square-meter-per-volt": "库仑每平方米每伏特", - "milliwatt": "毫瓦", - "microwatt": "微瓦", - "watt": "瓦特", - "kilowatt": "千瓦", - "megawatt": "兆瓦", - "gigawatt": "吉瓦", - "metric-horsepower": "公制马力", - "milliwatt-per-square-centimeter": "毫瓦每平方厘米", - "watt-per-square-centimeter": "瓦特每平方厘米", - "kilowatt-per-square-centimeter": "千瓦每平方厘米", - "milliwatt-per-square-meter": "毫瓦每平方米", - "watt-per-square-meter": "瓦特每平方米", - "kilowatt-per-square-meter": "千瓦每平方米", - "watt-per-square-inch": "瓦特每平方英寸", - "kilowatt-per-square-inch": "千瓦每平方英寸", - "horsepower": "马力", - "btu-per-hour": "英热单位/小时", - "coulomb": "库仑", - "millicoulomb": "毫库仑", - "microcoulomb": "微库仑", - "picocoulomb": "皮库仑", - "coulomb-per-meter": "库仑每米", - "coulomb-per-cubic-meter": "库仑每立方米", - "coulomb-per-square-meter": "库仑每平方米", - "square-millimeter": "平方毫米", - "square-centimeter": "平方厘米", - "square-meter": "平方米", - "hectare": "公顷", - "square-kilometer": "平方千米", - "square-inch": "平方英寸", - "square-foot": "平方英尺", - "square-yard": "平方码", - "acre": "英亩", - "square-mile": "平方英里", - "are": "亚尔", - "barn": "巴恩", - "circular-inch": "圆英寸", - "milliampere-hour": "毫安时", - "milliampere-hour-tags": "电流, 电流流动, 电荷, 电流容量, 电流流, 电流流动, 毫安时, 毫安小时, mAh", - "ampere-hours": "安时", - "ampere-hours-tags": "电流, 电流流动, 电荷, 电流容量, 电流流, 电流流动, 安培, 安时, Ah", - "kiloampere-hours": "千安时", - "kiloampere-hours-tags": "电流, 电流流动, 电荷, 电流容量, 电流流, 电流流动, 千安时, 千安小时, kAh", - "nanoampere": "纳安培", - "nanoampere-tags": "电流, 安培, 纳安培, nA", - "picoampere": "皮安培", - "picoampere-tags": "电流, 安培, 皮安培, pA", - "microampere": "微安培", - "microampere-tags": "电流, 微安培, 微安培, μA", - "milliampere": "毫安培", - "milliampere-tags": "电流, 毫安培, 毫安培, mA", - "ampere": "安培", - "ampere-tags": "电流, 电流流动, 电流流, 电流流动, 安培, 安培, 电流强度, A", - "kiloamperes": "千安培", - "kiloamperes-tags": "电流, 电流流动, 千安培, kA", - "microampere-per-square-centimeter": "每平方厘米微安培", - "microampere-per-square-centimeter-tags": "电流密度, 每平方厘米微安培, µA/cm²", - "ampere-per-square-meter": "每平方米安培", - "ampere-per-square-meter-tags": "电流密度, 单位面积电流, 每平方米安培, A/m²", - "ampere-per-meter": "每米安培", - "ampere-per-meter-tags": "磁场强度, 磁场强度, 每米安培, A/m", - "oersted": "奥斯特", - "oersted-tags": "磁场, 奥斯特, Oe", - "bohr-magneton": "玻尔磁子", - "bohr-magneton-tags": "原子物理学, 磁矩, 玻尔磁子, μB", - "ampere-meter-squared": "安培·米平方", - "ampere-meter-squared-tags": "磁矩, 偶极矩, 安培·米平方, A·m²", - "ampere-meter": "安培·米", - "ampere-meter-tags": "磁场, 电流环, 安培·米, A·m", - "nanovolt": "纳伏特", - "picovolt": "皮伏特", - "millivolts": "毫伏特", - "microvolts": "微伏特", - "volt": "伏特", - "kilovolts": "千伏特", - "dbmV": "dBmV", - "dbm": "dBm", - "volt-meter": "伏特·米", - "kilovolt-meter": "千伏特·米", - "megavolt-meter": "兆伏特·米", - "microvolt-meter": "微伏特·米", - "millivolt-meter": "毫伏特·米", - "nanovolt-meter": "纳伏特·米", - "ohm": "欧姆", - "microohm": "微欧姆", - "milliohm": "毫欧姆", - "kilohm": "千欧姆", - "megohm": "兆欧姆", - "gigohm": "吉欧姆", - "hertz": "赫兹", - "kilohertz": "千赫兹", - "megahertz": "兆赫兹", - "gigahertz": "吉赫兹", - "rpm": "每分钟转速", - "candela-per-square-meter": "每平方米坎德拉", - "candela": "坎德拉", - "lumen": "流明", - "lux": "勒克斯", - "foot-candle": "英尺烛光", - "lumen-per-square-meter": "每平方米流明", - "lux-second": "勒克斯秒", - "lumen-second": "流明秒", - "lumens-per-watt": "每瓦流明", - "absorbance": "吸光度", - "mole": "摩尔", - "nanomole": "纳摩尔", - "micromole": "微摩尔", - "millimole": "毫摩尔", - "kilomole": "千摩尔", - "mole-per-cubic-meter": "每立方米摩尔", - "rssi": "接收信号强度指示", - "ppm": "百万分之一", - "ppb": "十亿分之一", - "micrograms-per-cubic-meter": "每立方米微克", - "aqi": "空气质量指数", - "gram-per-cubic-meter": "每立方米克", - "gram-per-kilogram": "比湿", - "millimeters-per-second": "每秒毫米", - "neper": "奈普尔", - "bel": "贝尔", - "decibel": "分贝", - "meters-per-second-squared": "每秒平方米", - "becquerel": "贝克勒尔", - "curie": "居里", - "gray": "戈瑞", - "sievert": "希沃特", - "roentgen": "伦琴", - "cps": "每秒计数", - "rad": "辐射剂量", - "rem": "辐射当量剂量", - "dps": "每秒衰变次数", - "rutherford": "卢瑟福", - "coulombs-per-kilogram": "每千克库仑", - "becquerels-per-cubic-meter": "每立方米贝可勒尔", - "curies-per-liter": "每升居里", - "becquerels-per-second": "每秒贝可勒尔", - "curies-per-second": "每秒居里", - "gy-per-second": "每秒戈瑞", - "watt-per-steradian": "每斯特拉迪安瓦特", - "watt-per-square-metre-steradian": "每平方米斯特拉迪安瓦特", - "ph-level": "pH值", - "turbidity": "浑浊度", - "mg-per-liter": "每升毫克", - "microsiemens-per-centimeter": "每厘米微西门子", - "millisiemens-per-meter": "每米毫西门子", - "siemens-per-meter": "每米西门子", - "kilogram-per-cubic-meter": "每立方米千克", - "gram-per-cubic-centimeter": "每立方厘米克", - "kilogram-per-square-meter": "每平方米千克", - "milligram-per-milliliter": "每毫升毫克", - "milligram-per-cubic-meter": "每立方米毫克", - "pound-per-cubic-foot": "每立方英尺磅", - "ounces-per-cubic-inch": "每立方英寸盎司", - "tons-per-cubic-yard": "每立方码吨", - "particle-density": "粒子密度", - "kilometers-per-liter": "每升公里", - "miles-per-gallon": "每加仑英里", - "liters-per-100-km": "每百公里升数", - "gallons-per-mile": "每英里加仑", - "liters-per-hour": "每小时升数", - "gallons-per-hour": "每小时加仑", - "beats-per-minute": "每分钟节拍数", - "millimeters-of-mercury": "毫米汞柱", - "milligrams-per-deciliter": "每分升毫克", - "g-force": "重力加速度", - "kilonewton": "千牛顿", - "kilogram-force": "千克力", - "pound-force": "磅力", - "kilopound-force": "千磅力", - "dyne": "达因", - "poundal": "磅顿", - "kip": "千磅力", - "gal": "加尔", - "gravity": "重力", - "hectopascal": "百帕斯卡", - "atmosphere": "大气压", - "millibars": "毫巴", - "inch-of-mercury": "一英寸汞柱", - "richter-scale": "里氏震级", - "second": "秒", - "minute": "分", - "hour": "小时", - "day": "天", - "week": "周", - "month": "月", - "year": "年", - "cubic-foot-per-minute": "每分钟立方英尺", - "cubic-meters-per-hour": "每小时立方米", - "cubic-meters-per-second": "每秒立方米", - "liter-per-second": "每秒升", - "liter-per-minute": "每分钟升", - "gallons-per-minute": "每分钟加仑", - "cubic-foot-per-second": "每秒立方英尺", - "milliliters-per-minute": "每分钟毫升", - "bit": "比特", - "byte": "字节", - "kilobyte": "千字节", - "megabyte": "兆字节", - "gigabyte": "吉字节", - "terabyte": "太字节", - "petabyte": "拍字节", - "exabyte": "艾字节", - "zettabyte": "泽字节", - "yottabyte": "尧字节", - "bit-per-second": "每秒比特", - "kilobit-per-second": "每秒千比特", - "megabit-per-second": "每秒兆比特", - "gigabit-per-second": "每秒吉比特", - "terabit-per-second": "每秒太比特", - "byte-per-second": "每秒字节", - "kilobyte-per-second": "每秒千字节", - "megabyte-per-second": "每秒兆字节", - "gigabyte-per-second": "每秒吉字节", - "degree": "度", - "radian": "弧度", - "gradian": "梯度", - "mil": "千分之一英寸", - "revolution": "转", - "siemens": "西门子", - "millisiemens": "毫西门子", - "microsiemens": "微西门子", - "kilosiemens": "千西门子", - "megasiemens": "兆西门子", - "gigasiemens": "吉西门子", - "farad": "法拉", - "millifarad": "毫法拉", - "microfarad": "微法拉", - "nanofarad": "纳法拉", - "picofarad": "皮法拉", - "kilofarad": "千法拉", - "megafarad": "兆法拉", - "gigafarad": "吉法拉", - "terfarad": "太法拉", - "farad-per-meter": "每米法拉", - "tesla": "特斯拉", - "gauss": "高斯", - "kilogauss": "千高斯", - "millitesla": "毫特斯拉", - "microtesla": "微特斯拉", - "nanotesla": "纳特斯拉", - "kilotesla": "千特斯拉", - "megatesla": "兆特斯拉", - "millitesla-square-meters": "毫特斯拉平方米", - "gamma": "伽马", - "lambda": "波长", - "square-meter-per-second": "每秒平方米", - "square-centimeter-per-second": "每秒平方厘米", - "stoke": "斯托克", - "centistokes": "厘斯托克", - "square-foot-per-second": "每秒平方英尺", - "square-inch-per-second": "每秒平方英寸", - "pascal-second": "帕斯卡秒", - "centipoise": "厘泊", - "poise": "泊", - "reynolds": "雷诺数", - "pound-per-foot-hour": "每英尺每小时磅", - "newton-second-per-square-meter": "每平方米牛顿秒", - "dyne-second-per-square-centimeter": "每平方厘米达因秒", - "kilogram-per-meter-second": "千克每米秒", - "tesla-square-meters": "特斯拉平方米", - "maxwell": "麦克斯韦", - "tesla-per-meter": "每米特斯拉", - "gauss-per-centimeter": "每厘米高斯", - "weber": "韦伯", - "microweber": "微韦伯", - "milliweber": "毫韦伯", - "gauss-square-centimeter": "高斯平方厘米", - "kilogauss-square-centimeter": "千高斯平方厘米", - "henry": "亨利", - "millihenry": "毫亨利", - "microhenry": "微亨利", - "nanohenry": "纳亨利", - "henry-per-meter": "每米亨利", - "tesla-meter-per-ampere": "每安培米特斯拉", - "gauss-per-oersted": "每欧斯特高斯", - "kilogram-per-mole": "每摩尔千克", - "gram-per-mole": "每摩尔克", - "milligram-per-mole": "每摩尔毫克", - "joule-per-mole": "每摩尔焦耳", - "joule-per-mole-kelvin": "每摩尔每开尔文焦耳", - "millivolts-per-meter": "每米毫伏", - "volts-per-meter": "每米伏特", - "kilovolts-per-meter": "每米千伏", - "radian-per-second": "每秒弧度", - "radian-per-second-squared": "每秒平方弧度", - "revolutions-per-minute-per-second": "角加速度", - "revolutions-per-minute-per-second-squared": "角加速度", - "deg-per-second": "度/秒", - "degrees-brix": "布里克度", - "katal": "卡塔尔", - "katal-per-cubic-metre": "每立方米卡塔尔" - }, - "user": { - "user": "用户", - "users": "用户", - "customer-users": "客户用户", - "tenant-admins": "租户管理员", - "sys-admin": "系统管理员", - "tenant-admin": "租户管理员", - "customer": "客户", - "anonymous": "匿名", - "add": "添加用户", - "delete": "删除用户", - "add-user-text": "添加用户", - "no-users-text": "未找到用户", - "user-details": "用户详细信息", - "delete-user-title": "确定要删除用户'{{userEmail}}' 吗?", - "delete-user-text": "请注意:确认后,用户和所有相关数据将不可恢复。", - "delete-users-title": "确定要删除{ count, plural, =1 {1 个用户} other {# 个用户} } 吗?", - "delete-users-action-title": "删除{ count, plural, =1 {1 个用户} other {# 个用户} }", - "delete-users-text": "请注意:确认后所有选定的用户将被删除,所有相关数据将不可恢复。", - "activation-email-sent-message": "激活电子邮件已成功发送!", - "resend-activation": "重新发送激活", - "email": "电子邮件", - "email-required": "电子邮件必填。", - "invalid-email-format": "无效的邮件格式。", - "first-name": "名字", - "last-name": "姓氏", - "description": "说明", - "default-dashboard": "默认面板", - "always-fullscreen": "始终全屏", - "select-user": "选择用户", - "no-users-matching": "未找到匹配'{{entity}}'的用户。", - "user-required": "用户必填", - "activation-method": "激活方式", - "display-activation-link": "显示激活链接", - "send-activation-mail": "发送激活邮件", - "activation-link": "用户激活链接", - "activation-link-text": "使用该链接激活激活用户:", - "copy-activation-link": "复制用户激活链接", - "activation-link-copied-message": "用户激活链接已经复制到粘贴板", - "details": "详情", - "login-as-tenant-admin": "以租户管理员身份登录", - "login-as-customer-user": "以客户用户身份登录", - "search": "查找用户", - "selected-users": "已选择{ count, plural, =1 {1 个用户} other {# 个用户} }", - "disable-account": "禁用用户帐户", - "enable-account": "启用用户帐户", - "enable-account-message": "已成功启用用户帐户!", - "disable-account-message": "已成功禁用用户帐户!", - "copyId": "复制用户ID", - "idCopiedMessage": "用户ID已复制到剪贴板", - "user-list": "用户列表", - "user-list-required": "用户列表必填。" - }, - "value": { - "type": "值类型", - "string": "字符串", - "string-value": "字符串值", - "string-value-required": "字符串值必填", - "integer": "整数", - "integer-value": "整数值", - "integer-value-required": "整数值必填", - "invalid-integer-value": "整数值无效", - "double": "双精度小数", - "double-value": "双精度小数值", - "double-value-required": "需要双精度值", - "boolean": "布尔值", - "boolean-value": "布尔值", - "false": "假", - "true": "真", - "long": "长整数", - "json": "JSON", - "json-value": "JSON值", - "json-value-invalid": "JSON值的格式无效", - "json-value-required": "JSON值必填。" - }, - "version-control": { - "version-control": "版本控制", - "management": "版本控制管理", - "search": "搜索版本", - "branch": "分支", - "default": "默认", - "select-branch": "选择分支", - "branch-required": "分支必填", - "create-entity-version": "创建实体版本", - "version-name": "版本名称", - "version-name-required": "版本名称必填", - "author": "作者", - "export-relations": "导出关联", - "export-attributes": "导出属性", - "export-credentials": "导出凭据", - "entity-versions": "实体版本", - "versions": "版本", - "created-time": "创建时间", - "version-id": "版本ID", - "no-entity-versions-text": "未找到实体版本", - "no-versions-text": "未找到版本", - "copy-full-version-id": "复制完整版本ID", - "create-version": "创建版本", - "creating-version": "请稍候,正在创建版本...", - "nothing-to-commit": "没有要提交的更改", - "restore-version": "还原版本", - "restore-entity-from-version": "从版本'{{versionName}}'还原实体", - "restoring-entity-version": "请稍候正在还原实体版本...", - "load-relations": "加载关联", - "load-attributes": "加载属性", - "load-credentials": "加载凭据", - "compare-with-current": "与当前比较", - "diff-entity-with-version": "与实体版本'{{versionName}}'不同", - "previous-difference": "上一个差异", - "next-difference": "下一个差异", - "current": "当前", - "differences": "{ count, plural, =1 {1 个差异} other {# 个差异} }", - "create-entities-version": "创建实体版本", - "default-sync-strategy": "默认同步策略", - "sync-strategy-merge": "合并", - "sync-strategy-overwrite": "覆盖", - "entities-to-export": "导出的实体", - "entities-to-restore": "还原的实体", - "sync-strategy": "同步策略", - "all-entities": "所有实体", - "no-entities-to-export-prompt": "请指定要导出的实体", - "no-entities-to-restore-prompt": "请指定要还原的实体", - "add-entity-type": "添加实体类型", - "remove-all": "全部删除", - "version-create-result": "{ added, plural, =0 {没有实体} =1 {1 个实体} other {# 个实体} } 被添加。
{ modified, plural, =0 {没有实体} =1 {1 个实体} other {# 个实体} }被修改。
{ removed, plural, =0 {没有实体} =1 {1 个实体} other {# 个实体} }被删除。", - "remove-other-entities": "删除其他实体", - "find-existing-entity-by-name": "按名称查找现有实体", - "restore-entities-from-version": "从版本'{{versionName}}'还原实体", - "restoring-entities-from-version": "请稍候正在还原实体...", - "no-entities-restored": "未还原任何实体", - "created": "{{created}}创建", - "updated": "{{updated}}更新", - "deleted": "{{deleted}}删除", - "remove-other-entities-confirm-text": "请注意!在还原版本中不存在的当前实体
将被永久删除

请输入\"remove other entities\"进行确认。", - "auto-commit-to-branch": "自动提交到{{ branch }}分支", - "default-create-entity-version-name": "{{entityName}}更新", - "sync-strategy-merge-hint": "创建或更新选定的实体,仓库其他实体均不修改。", - "sync-strategy-overwrite-hint": "创建或更新选定的实体,仓库其他实体将被删除。", - "device-credentials-conflict": "无法加载外部ID为{{entityId}} 的设备
因为数据库中已存在相同的凭据。
请考虑禁用还原表单中的 加载凭据 设置。", - "missing-referenced-entity": "无法加载外部ID为{{sourceEntityId}}{{sourceEntityTypeName}}
因为它引用了缺失的 {{targetEntityTypeName}} (ID:{{targetEntityId}}).", - "runtime-failed": "失败:{{message}}", - "auto-commit-settings-read-only-hint": "在仓库设置中启用只读选项后,'自动提交'功能将无法正常工作。", - "rollback-on-error": "回滚错误", - "rollback-on-error-hint": "如果您有大量实体需要恢复请考虑禁用此选项以提高性能。\n请注意如果在版本加载过程中发生错误,已经持久化的实体(具有关系、属性等)将不发生修改。" - }, - "widget": { - "widget-library": "部件库", - "widget-bundle": "部件包", - "all-bundles": "所有包", - "select-widgets-bundle": "选择部件包", - "widgets": "部件", - "all-widgets": "所有部件", - "widget": "部件", - "select-widget": "选择部件", - "no-widgets-matching": "未找到与'{{entity}}匹配的部件。", - "no-widgets": "暂无部件", - "no-widgets-text": "未找到部件", - "management": "管理部件", - "editor": "部件编辑器", - "confirm-to-exit-editor-html": "有未保存的部件设置
确定要离开此页面吗?", - "widget-type-not-found": "加载部件配置出错
可能关联的部件已经删除了。", - "widget-type-load-error": "由于以下错误未加载部件:", - "remove": "删除部件", - "delete": "删除部件", - "edit": "编辑部件", - "remove-widget-title": "确定要删除'{{widgetTitle}}'部件吗?", - "remove-widget-text": "确认后所有相关数据将变得不可恢复。", - "replace-reference-with-widget-copy": "基于部件复制替换引用", - "timeseries": "时间序列", - "search-data": "查找数据", - "no-data-found": "未找到数据", - "latest": "最新值", - "rpc": "控件部件", - "alarm": "告警部件", - "static": "静态部件", - "timeseries-short": "时序", - "latest-short": "最新", - "rpc-short": "控制", - "alarm-short": "告警", - "static-short": "静态", - "select-widget-type": "选择窗口部件类型", - "missing-widget-title-error": "部件标题必须指定!", - "widget-saved": "部件已保存", - "unable-to-save-widget-error": "控件有错误无法保存部件!", - "save": "保存部件", - "saveAs": "部件另存为", - "move": "移动部件", - "save-widget-as": "部件另存为", - "save-widget-as-text": "请输入部件标题", - "toggle-fullscreen": "全屏", - "run": "运行", - "widget-title": "部件标题", - "title": "部件标题", - "title-required": "部件标题必填。", - "title-max-length": "标题必须小于256个字符", - "system": "系统", - "type": "类型", - "resources": "资源", - "resource-url": "JavaScript/CSS", - "resource-is-extension": "是否扩展", - "remove-resource": "删除资源", - "add-resource": "添加资源", - "html": "HTML", - "tidy": "整理", - "css": "CSS", - "settings-form": "设置表单", - "data-key-settings-form": "数据键设置表单", - "latest-data-key-settings-form": "最新数据键设置表单", - "widget-settings": "设置", - "description": "描述", - "tags": "标签", - "image-preview": "图片预览", - "settings-form-selector": "设置表单选择器", - "data-key-settings-form-selector": "数据键设置表单选择器", - "latest-data-key-settings-form-selector": "最新值数据键设置表单选择器", - "all": "全部", - "actual": "实际", - "scada": "组态", - "deprecated": "弃用", - "has-basic-mode": "基础模式", - "basic-mode-form-selector": "表单选择器", - "basic-mode": "基础", - "advanced-mode": "高级", - "javascript": "JavaScript", - "js": "JS", - "delete-widget-title": "确定要删除部件'{{widgetName}}'吗?", - "delete-widget-text": "确认后部件及其所有相关数据将无法恢复。", - "delete-widgets-title": "确定要删除{ count, plural, =1 {1个部件} other {#个部件} }吗?", - "delete-widgets-text": "请谨慎操作确认后,所有选定的部件将被删除并且所有相关数据将无法恢复。", - "delete-widget": "删除部件", - "widget-template-load-failed-error": "无法加载部件模板!", - "details": "详情", - "widget-details": "部件详情", - "add": "添加", - "add-existing-widget": "添加现有部件", - "add-new-widget": "添加新部件", - "search-widgets": "搜索部件", - "selected-widgets": "已选择{ count, plural, =1 {1 个部件} other {# 个部件} }", - "undo": "撤销", - "export": "导出", - "export-prompt": "嵌入部件图片和资源", - "export-widgets": "导出部件", - "export-widgets-prompt": "嵌入部件图片和资源", - "import": "导入部件", - "no-data": "部件上没有要显示的数据", - "data-overflow": "部件显示{{count}}条实体中的{{total}}条。", - "alarm-data-overflow": "部件显示了{{allowedEntities}}(最大允许)实体中的告警,总共有{{totalEntities}}个实体", - "search": "搜索", - "filter": "过滤", - "loading-widgets": "加载部件...", - "widget-template-error": "无效HTML模板部件。", - "reference": "引用" + "label-hint": "在柱上方显示标签。", + "series-label-hint": "在柱上方显示带数值的标签。", + "label-background": "标签背景" + } }, - "widget-action": { - "header-button": "顶部按钮", - "do-nothing": "无任何动作", - "open-dashboard-state": "切换仪表板状态", - "update-dashboard-state": "更新仪表板状态", - "open-dashboard": "打开仪表板", - "custom": "自定义动作", - "custom-pretty": "自定义动作(HTML模板)", - "custom-pretty-error-title": "自定义对话框错误", - "custom-pretty-template-error": "无效的自定义对话框模板。", - "custom-pretty-controller-error": "自定义对话框函数错误。", - "mobile-action": "移动端动作", - "target-dashboard-state": "目标仪表板状态", - "target-dashboard-state-required": "目标仪表板状态必填", - "set-entity-from-widget": "从部件中设置实体", - "target-dashboard": "目标仪表板", - "select-target-dashboard": "选择目标仪表板", - "target-dashboard-required": "必须选择目标仪表板。", - "open-right-layout": "打开右侧布局 (移动端视图)", - "state-display-type": "显示仪表板状态选项", - "open-normal": "普通", - "open-in-separate-dialog": "在单独的对话框中打开", - "open-in-popover": "在弹出框中打开", - "dialog-title": "对话框标题", - "dialog-hide-dashboard-toolbar": "在对话框中隐藏仪表板工具栏", - "dialog-width": "对话框宽度相对于视口宽度的百分比", - "dialog-height": "对话框高度相对于视口高度的百分比", - "dialog-size-range-error": "对话框的大小百分比值应该介于1到100之间。", - "popover-preferred-placement": "首选的弹出框位置", - "popover-placement-top": "顶部", - "popover-placement-topLeft": "上左", - "popover-placement-topRight": "上右", - "popover-placement-right": "右侧", - "popover-placement-rightTop": "右上", - "popover-placement-rightBottom": "右下", - "popover-placement-bottom": "底部", - "popover-placement-bottomLeft": "下左", - "popover-placement-bottomRight": "下右", - "popover-placement-left": "左侧", - "popover-placement-leftTop": "左上", - "popover-placement-leftBottom": "左下", - "popover-hide-on-click-outside": "在点击弹出框外部时隐藏弹出框", - "popover-hide-dashboard-toolbar": "在弹出框中隐藏仪表板工具栏", - "popover-width": "宽度", - "popover-height": "高度", - "popover-style": "样式", - "open-new-browser-tab": "在选项卡中打开", - "open-URL": "打开URL", - "URL": "URL", - "url-required": "URL必填。", - "mobile": { - "action-type": "移动端动作类型", - "select-action-type": "选择移动端操作类型", - "action-type-required": "移动端动作类型必填。", - "take-picture-from-gallery": "从图库中获取照片", - "take-photo": "拍照", - "map-direction": "打开地图导航", - "map-location": "打开地图位置", - "scan-qr-code": "扫描二维码", - "make-phone-call": "拨打电话", - "get-location": "获取手机位置", - "take-screenshot": "截屏" - }, - "custom-action-function": "自定义动作函数", - "custom-pretty-function": "自定义动作(HTML模板)" - }, - "widgets-bundle": { - "current": "当前组", - "widgets-bundles": "部件包", - "widgets-bundle-widgets": "包部件", - "add": "添加部件包", - "delete": "删除部件包", - "title": "标题", - "title-required": "标题必填。", - "title-max-length": "标题长度应该小于256个字符。", - "description": "描述", - "image-preview": "图片预览", - "scada": "SCADA部件包", - "order": "其他", - "add-widgets-bundle-text": "添加部件包", - "no-widgets-bundles-text": "未找到部件包", - "empty": "部件包是空的", - "details": "详情", - "widgets-bundle-details": "部件包详细信息", - "delete-widgets-bundle-title": "确定要删除部件包'{{widgetsBundleTitle}}'吗?", - "delete-widgets-bundle-text": "请注意:确认后部件包和所有相关数据将不可恢复。", - "delete-widgets-bundles-title": "确定要删除{ count, plural, =1 {1 个部件包} other {# 个部件包} }吗?", - "delete-widgets-bundles-action-title": "删除{ count, plural, =1 {1 个部件包} other {# 个部件包} }", - "delete-widgets-bundles-text": "请注意:确认后,所有选定的部件包将被删除,所有相关数据将不可恢复。", - "no-widgets-bundles-matching": "未找到与'{{widgetsBundle}}'匹配的部件包。", - "widgets-bundle-required": "部件包必填。", - "system": "系统", - "import": "导入部件包", - "export": "导出部件包", - "export-widgets-bundle-widgets-prompt": "在导出的数据中包含包部件(否则只会导出引用的部件完全限定名)", - "export-failed-error": "无法导出部件包: {{error}}", - "create-new-widgets-bundle": "创建部件包", - "widgets-bundle-file": "部件包文件", - "invalid-widgets-bundle-file-error": "无法导入部件包:无效的部件包数据结构。", - "search": "查找部件包", - "selected-widgets-bundles": "已选择{ count, plural, =1 {1 个部件包} other {# 个部件包} }", - "open-widgets-bundle": "打开部件包", - "loading-widgets-bundles": "加载部件包...", - "create-new": "创建新部件包" - }, - "widget-config": { - "data": "数据", - "settings": "设置", - "advanced": "高级", - "appearance": "外观", - "widget-card": "卡片", - "mobile": "移动设备", - "title": "标题", - "title-tooltip": "标题提示文字", - "general-settings": "常规设置", - "display-title": "显示", - "card-title": "标题", - "drop-shadow": "投影", - "enable-fullscreen": "启用全屏", - "background-color": "背景颜色", - "text-color": "文字颜色", - "border-radius": "边框半径", - "padding": "填充", - "margin": "边缘", - "widget-style": "部件样式", - "widget-css": "部件CSS", - "title-style": "标题样式", - "mobile-mode-settings": "移动端设置", - "order": "顺序", - "height": "高度", - "mobile-hide": "在移动端隐藏部件", - "desktop-hide": "在桌面端隐藏部件", - "units": "特殊符号展示值", - "units-by-default": "默认单位", - "decimals": "小数位数", - "decimals-by-default": "默认小数位数", - "default-data-key-parameter-hint": "该参数适用于所有部件值,除非被数据键配置覆盖。", - "units-short": "单位", - "decimals-short": "小数", - "decimals-suffix": "位小数", - "timewindow": "时间窗口", - "use-dashboard-timewindow": "使用仪表板时间窗口", - "use-widget-timewindow": "使用部件时间窗口", - "display-timewindow": "显示时间窗口", - "legend": "图例", - "display-legend": "显示图例", - "datasources": "数据源", - "datasource": "数据源", - "maximum-datasources": "最大允许{ count, plural, =1 {1 个数据源。} other {# 个数据源。} }", - "timeseries-key-error": "需要至少指定一个timeseries数据键", - "datasource-type": "类型", - "datasource-parameters": "参数", - "remove-datasource": "移除数据源", - "add-datasource": "添加数据源", - "target-device": "目标设备", - "alarm-source": "告警源", - "actions": "动作", - "action": "动作", - "add-action": "添加动作", - "search-actions": "搜索动作", - "no-actions-text": "找不到动作", - "action-source": "动作源", - "select-action-source": "选择动作源", - "action-source-required": "动作源必填", - "column-index": "序号", - "select-column-index": "选择序号", - "column-index-required": "序号必填。", - "not-set": "未设置", - "action-name": "名称", - "action-name-required": "动作名称必填。", - "action-name-not-unique": "动作名称已经存在。", - "action-icon": "图标", - "show-hide-action-using-function": "使用函数显示/隐藏动作", - "show-action-function": "显示动作函数", - "action-type": "类型", - "action-type-required": "类型必填", - "edit-action": "编辑动作", - "delete-action": "删除动作", - "delete-action-title": "删除部件动作", - "delete-action-text": "确定要删除部件动作'{{actionName}}'吗?", - "title-icon": "标题图标", - "display-icon": "显示标题图标", - "card-icon": "图标", + "color": { + "color-settings": "颜色设置", + "color-type-constant": "常量", + "color-type-gradient": "渐变", + "color-type-range": "范围", + "color-type-function": "函数", + "color": "颜色", + "value-range": "值范围", + "from": "从", + "to": "到", + "color-function": "颜色函数", + "copy-color-settings-from": "从...复制颜色设置", + "copy-from": "从...复制", + "settings-type": "设置类型", + "basic-mode": "基础", + "advanced-mode": "高级", + "entity-alias": "实体别名", + "entity-attribute": "实体属性", + "gradient-color": "渐变颜色", + "gradient-color-min": "颜色", + "gradient-start": "渐变起始颜色", + "gradient-start-min": "起始", + "gradient-end": "渐变结束颜色", + "gradient-end-min": "结束", + "start-value": "起始值", + "end-value": "结束值", + "gradient-type": "渐变类型" + }, + "dashboard-state": { + "dashboard-state-settings": "仪表板状态设置", + "dashboard-state": "仪表板状态 ID", + "autofill-state-layout": "默认自动填充状态布局高度", + "default-margin": "默认部件间距", + "default-background-color": "默认背景颜色", + "sync-parent-state-params": "与父仪表板同步状态参数" + }, + "date-range-navigator": { + "date-range-picker-settings": "日期范围选择器设置", + "hide-date-range-picker": "隐藏日期范围选择器", + "picker-one-panel": "日期范围选择器单面板", + "picker-auto-confirm": "日期范围选择器自动确认", + "picker-show-template": "日期范围选择器显示模板", + "first-day-of-week": "每周第一天", + "interval-settings": "区间设置", + "hide-interval": "隐藏区间", + "initial-interval": "初始区间", + "interval-hour": "小时", + "interval-day": "天", + "interval-week": "周", + "interval-two-weeks": "2 周", + "interval-month": "月", + "interval-three-months": "3 个月", + "interval-six-months": "6 个月", + "step-settings": "步长设置", + "hide-step-size": "隐藏步长", + "initial-step-size": "初始步长", + "hide-labels": "隐藏标签", + "use-session-storage": "使用会话存储", + "localizationMap": { + "Sun": "日", + "Mon": "一", + "Tue": "二", + "Wed": "三", + "Thu": "四", + "Fri": "五", + "Sat": "六", + "Jan": "1月", + "Feb": "2月", + "Mar": "3月", + "Apr": "4月", + "May": "5月", + "Jun": "6月", + "Jul": "7月", + "Aug": "8月", + "Sep": "9月", + "Oct": "10月", + "Nov": "11月", + "Dec": "12月", + "January": "一月", + "February": "二月", + "March": "三月", + "April": "四月", + "June": "六月", + "July": "七月", + "August": "八月", + "September": "九月", + "October": "十月", + "November": "十一月", + "December": "十二月", + "Custom Date Range": "自定义日期范围", + "Date Range Template": "日期范围模板", + "Today": "今天", + "Yesterday": "昨天", + "This Week": "本周", + "Last Week": "上周", + "This Month": "本月", + "Last Month": "上月", + "Year": "年", + "This Year": "今年", + "Last Year": "去年", + "Date picker": "日期选择器", + "Hour": "小时", + "Day": "天", + "Week": "周", + "2 weeks": "2 周", + "Month": "月", + "3 months": "3 个月", + "6 months": "6 个月", + "Custom interval": "自定义区间", + "Interval": "区间", + "Step size": "步长", + "Ok": "确定" + } + }, + "doughnut": { + "doughnut-appearance": "环形图外观", + "layout": "布局", + "layout-default": "默认", + "layout-with-total": "显示总计", + "central-total-value": "中心总计值", + "doughnut-card-style": "环形图卡片样式" + }, + "entities-hierarchy": { + "hierarchy-data-settings": "层级数据设置", + "relations-query-function": "节点关联查询函数", + "has-children-function": "节点有子节点函数", + "node-state-settings": "节点状态设置", + "node-opened-function": "默认节点展开函数", + "node-disabled-function": "节点禁用函数", + "display-settings": "显示设置", + "node-icon-function": "节点图标函数", + "node-text-function": "节点文本函数", + "sort-settings": "排序设置", + "nodes-sort-function": "节点排序函数" + }, + "edge": { + "display-default-title": "显示默认标题" + }, + "gateway": { + "general-settings": "常规设置", + "widget-title": "部件标题", + "default-archive-file-name": "默认归档文件名", + "device-type-for-new-gateway": "新 Gateway 的设备类型", + "messages-settings": "消息设置", + "save-config-success-message": "Gateway 配置保存成功的文本消息", + "device-name-exists-message": "输入的设备名称已存在时的文本消息", + "gateway-title": "Gateway 表单", + "read-only": "只读", + "events-title": "Gateway 事件表单标题", + "events-filter": "事件过滤器", + "event-key-contains": "事件键包含...", + "show-connector": "为连接器显示", + "connector-state-param-key": "连接器状态参数键", + "message": "消息", + "level": "级别", + "created-time": "创建时间" + }, + "gauge": { + "default-color": "默认颜色", + "radial-gauge-settings": "径向仪表设置", + "ticks-settings": "刻度设置", + "min-value": "最小值", + "max-value": "最大值", + "min-value-short": "最小", + "max-value-short": "最大", + "start-ticks-angle": "起始刻度角度", + "ticks-angle": "刻度角度", + "major-ticks": "主刻度", + "major-ticks-count": "主刻度数量", + "major-ticks-color": "主刻度颜色", + "minor-ticks": "次刻度", + "minor-ticks-count": "次刻度数量", + "minor-ticks-color": "次刻度颜色", + "tick-numbers-font": "刻度数字字体", + "unit-title-settings": "单位标题设置", + "show-unit-title": "单位标题", + "unit-title": "单位标题", + "title-font": "标题文本字体", + "units-settings": "单位设置", + "units-font": "单位文本字体", + "value-box-settings": "值框设置", + "show-value-box": "显示值框", + "value-box": "值框", + "value-int": "值整数部分的位数", + "value-text": "值文本", + "value-text-shadow": "值文本阴影", + "value-font": "值文本字体", + "rect-stroke-color-start": "矩形描边颜色 - 起始渐变", + "rect-stroke-color-end": "矩形描边颜色 - 结束渐变", + "background-color": "背景颜色", + "shadow-color": "阴影颜色", + "value-box-rect-stroke-color": "值框矩形描边颜色", + "value-box-rect-stroke-color-end": "值框矩形描边颜色 - 结束渐变", + "value-box-background-color": "值框背景颜色", + "value-box-shadow-color": "值框阴影颜色", + "plate-settings": "表盘设置", + "show-plate-border": "表盘边框", + "plate-color": "表盘颜色", + "needle-settings": "指针设置", + "needle-circle-size": "指针圆圈大小", + "needle-color": "指针颜色", + "needle-color-start": "指针颜色 - 起始渐变", + "needle-color-end": "指针颜色 - 结束渐变", + "needle-color-shadow-up": "指针上半部分阴影颜色", + "needle-color-shadow-down": "投影", + "highlights-settings": "高亮设置", + "highlights-width": "高亮宽度", + "highlights": "高亮", + "highlight-from": "起始", + "highlight-to": "结束", + "highlight-color": "颜色", + "no-highlights": "未配置高亮", + "add-highlight": "添加高亮", + "animation-settings": "动画设置", + "enable-animation": "动画", + "animation-duration-rule": "动画持续时间和规则", + "animation-duration": "动画持续时间", + "animation-rule": "动画规则", + "animation-linear": "线性", + "animation-quad": "二次", + "animation-quint": "五次", + "animation-cycle": "循环", + "animation-bounce": "弹跳", + "animation-elastic": "弹性", + "animation-dequad": "反二次", + "animation-dequint": "反五次", + "animation-decycle": "反循环", + "animation-debounce": "反弹跳", + "animation-delastic": "反弹性", + "linear-gauge-settings": "线性仪表设置", + "bar-stroke": "条形描边", + "bar-stroke-width": "条形描边宽度", + "bar-stroke-color": "条形描边颜色", + "bar-background-color": "条形背景颜色 - 起始渐变", + "bar-background-color-end": "条形背景颜色 - 结束渐变", + "progress-bar-color": "进度条颜色", + "progress-bar": "进度条", + "progress-bar-color-start": "进度条颜色 - 起始渐变", + "progress-bar-color-end": "进度条颜色 - 结束渐变", + "major-ticks-names": "主刻度名称", + "show-stroke-ticks": "显示刻度描边", + "major-ticks-font": "主刻度字体", + "border-color": "边框颜色", + "border-width": "边框宽度", + "needle-circle": "指针圆圈", + "needle-circle-color": "指针圆圈颜色", + "animation-target": "动画目标", + "animation-target-needle": "指针", + "animation-target-plate": "表盘", + "common-settings": "通用仪表设置", + "gauge-type": "仪表类型", + "gauge-type-arc": "弧形", + "gauge-type-donut": "环形", + "gauge-type-horizontal-bar": "水平条形", + "gauge-type-vertical-bar": "垂直条形", + "donut-start-angle": "起始角度(度)", + "bar-settings": "仪表条形设置", + "relative-bar-width": "相对条形宽度", + "neon-glow-brightness": "霓虹发光效果亮度(0-100)", + "neon-glow-brightness-hint": "0 - 禁用效果 ", + "stripes-thickness": "条纹厚度", + "stripes-thickness-hint": "0 - 无条纹", + "rounded-line-cap": "圆角线帽", + "bar-color-settings": "条形颜色设置", + "use-precise-level-color-values": "使用精确颜色级别", + "bar-colors": "条形颜色,从低到高", + "color": "颜色", + "no-bar-colors": "未配置条形颜色", + "add-bar-color": "添加条形颜色", + "from": "起始", + "to": "结束", + "fixed-level-colors": "使用边界值的条形颜色", + "gauge-title-settings": "仪表标题设置", + "show-gauge-title": "显示仪表标题", + "gauge-title": "仪表标题", + "gauge-title-font": "仪表标题字体", + "unit-title-and-timestamp-settings": "单位标题和时间戳设置", + "show-timestamp": "时间戳", + "timestamp-format": "时间戳格式", + "label-font": "值下方标签的字体", + "value-settings": "值设置", + "show-value": "显示值文本", + "min-max-settings": "最小/最大标签设置", + "show-min-max": "显示最小值和最大值", + "min-max-font": "最小和最大标签的字体", + "show-ticks": "显示刻度", + "tick-width": "刻度宽度", + "tick-color": "刻度颜色", + "tick-values": "刻度值", + "no-tick-values": "未配置刻度值", + "add-tick-value": "添加刻度值", + "gauge-appearance": "仪表外观", + "units-title": "单位标题", + "value": "值", + "ticks": "刻度", + "arrow-and-scale-color": "箭头和刻度默认颜色", + "scale-settings": "刻度设置", + "scale": "刻度", + "scale-color": "刻度颜色", + "compass-appearance": "罗盘外观", + "label": "标签", + "labels": "标签", + "label-style": "标签样式", + "simple-gauge-type": "类型", + "gauge-bar-background": "仪表条形背景", + "bar-color": "条形颜色", + "min-and-max-value": "最小值和最大值", + "min-and-max-label": "最小和最大标签", + "font": "字体", + "tick-width-and-color": "刻度宽度和颜色", + "min-max-validation-text": "最大值必须大于最小值" + }, + "gpio": { + "pin": "引脚", + "label": "标签", + "row": "行", + "column": "列", + "color": "颜色", + "panel-settings": "面板设置", + "background-color": "背景颜色", + "gpio-switches": "GPIO 开关", + "no-gpio-switches": "未配置 GPIO 开关", + "add-gpio-switch": "添加 GPIO 开关", + "gpio-status-request": "GPIO 状态请求", + "method-name": "方法名称", + "method-body": "方法体", + "gpio-status-change-request": "GPIO 状态更改请求", + "parse-gpio-status-function": "解析 GPIO 状态函数", + "gpio-leds": "GPIO LED", + "no-gpio-leds": "未配置 GPIO LED", + "add-gpio-led": "添加 GPIO LED" + }, + "html-card": { + "html": "HTML", + "css": "CSS" + }, + "input-widgets": { + "attribute-not-allowed": "属性参数不能在此部件中使用", + "blocked-location": "地理定位已在您的浏览器中被阻止", + "claim-device": "认领设备", + "claim-failed": "认领设备失败!", + "claim-not-found": "未找到设备!", + "claim-successful": "设备认领成功!", + "date": "日期", + "device-name": "设备名称", + "device-name-required": "设备名称为必填项", + "discard-changes": "放弃更改", + "entity-attribute-required": "实体属性为必填项", + "entity-coordinate-required": "纬度和经度两个字段均为必填项", + "entity-timeseries-required": "实体时间序列为必填项", + "get-location": "获取当前位置", + "invalid-date": "无效日期", + "latitude": "纬度", + "longitude": "经度", + "min-value-error": "最小值为 {{value}}", + "max-value-error": "最大值为 {{value}}", + "not-allowed-entity": "所选实体不能拥有共享属性", + "no-attribute-selected": "未选择属性", + "no-datakey-selected": "未选择数据键", + "no-coordinate-specified": "未指定纬度/经度的数据键", + "no-entity-selected": "未选择实体", + "no-image": "无图片", + "no-support-geolocation": "您的浏览器不支持地理定位", + "no-support-web-camera": "您的浏览器不支持摄像头", + "enable-https-use-widget": "请启用 HTTPS 以使用此部件", + "no-found-your-camera": "找不到您的摄像头", + "no-permission-camera": "用户拒绝了权限 / 此站点没有使用摄像头的权限", + "no-timeseries-selected": "未选择时间序列", + "secret-key": "密钥", + "secret-key-required": "密钥为必填项", + "switch-attribute-value": "切换实体属性值", + "switch-camera": "切换摄像头", + "switch-timeseries-value": "切换实体时间序列值", + "take-photo": "拍照", + "time": "时间", + "timeseries-not-allowed": "时间序列参数不能在此部件中使用", + "update-failed": "更新失败", + "update-successful": "更新成功", + "update-attribute": "更新属性", + "update-timeseries": "更新时间序列", + "value": "值", + "general-settings": "常规设置", + "widget-title": "部件标题", + "claim-button-label": "认领按钮标签", + "show-secret-key-field": "显示“密钥”输入字段", + "labels-settings": "标签设置", + "show-labels": "显示标签", + "device-name-label": "设备名称输入字段的标签", + "secret-key-label": "密钥输入字段的标签", + "messages-settings": "消息设置", + "claim-device-success-message": "设备认领成功的文本消息", + "claim-device-not-found-message": "未找到设备时的文本消息", + "claim-device-failed-message": "设备认领失败的文本消息", + "claim-device-name-required-message": "“设备名称必填”错误消息", + "claim-device-secret-key-required-message": "“密钥必填”错误消息", + "show-label": "显示标签", + "label": "标签", + "required": "必填", + "required-error-message": "“必填”错误消息", + "show-result-message": "显示结果消息", + "integer-field-settings": "整数字段设置", + "min-value": "最小值", + "max-value": "最大值", + "double-field-settings": "双精度字段设置", + "text-field-settings": "文本字段设置", + "min-length": "最小长度", + "max-length": "最大长度", + "checkbox-settings": "复选框设置", + "true-label": "选中时标签", + "false-label": "未选中时标签", + "image-input-settings": "图片输入设置", + "display-preview": "显示预览", + "display-clear-button": "显示清除按钮", + "display-apply-button": "显示应用按钮", + "display-discard-button": "显示放弃按钮", + "datetime-field-settings": "日期/时间字段设置", + "display-time-input": "显示时间输入", + "latitude-key-name": "纬度键名称", + "longitude-key-name": "经度键名称", + "show-get-location-button": "显示“获取当前位置”按钮", + "use-high-accuracy": "使用高精度", + "location-fields-settings": "位置字段设置", + "latitude-label": "纬度标签", + "longitude-label": "经度标签", + "input-fields-alignment": "输入字段对齐", + "input-fields-alignment-column": "列(默认)", + "input-fields-alignment-row": "行", + "layout": "布局", + "row-gap": "行间距(像素)", + "column-gap": "列间距(像素)", + "latitude-field-required": "纬度字段为必填项", + "longitude-field-required": "经度字段为必填项", + "attribute-settings": "属性设置", + "widget-mode": "部件模式", + "widget-mode-update-attribute": "更新属性", + "widget-mode-update-timeseries": "更新时间序列", + "attribute-scope": "属性范围", + "attribute-scope-server": "服务端属性", + "attribute-scope-shared": "共享属性", + "value-required": "值为必填项", + "image-settings": "图片输出设置", + "image-format": "图片格式", + "image-format-jpeg": "JPEG", + "image-format-png": "PNG", + "image-format-webp": "WEBP", + "image-quality": "图片质量", + "max-image-width": "最大宽度", + "max-image-height": "最大高度", + "action-buttons": "操作按钮", + "show-action-buttons": "显示操作按钮", + "update-all-values": "更新所有值,而不仅仅是已修改的值", + "save-button-label": "“保存”按钮标签", + "reset-button-label": "“撤销”按钮标签", + "group-settings": "分组设置", + "show-group-title": "显示与不同实体相关的字段组标题", + "group-title": "组标题", + "fields-alignment": "字段对齐", + "fields-alignment-row": "行(默认)", + "fields-alignment-column": "列", + "fields-in-row": "每行字段数量", + "option-value": "值(输入‘null’以创建空选项)", + "option-label": "标签", + "hide-input-field": "隐藏输入字段", + "datakey-type": "数据键类型", + "datakey-type-server": "服务端属性(默认)", + "datakey-type-shared": "共享属性", + "datakey-type-timeseries": "时间序列", + "datakey-value-type": "数据键值类型", + "datakey-value-type-string": "字符串", + "datakey-value-type-double": "双精度", + "datakey-value-type-integer": "整数", + "datakey-value-type-json": "JSON", + "datakey-value-type-boolean-checkbox": "布尔值(复选框)", + "datakey-value-type-boolean-switch": "布尔值(开关)", + "datakey-value-type-date-time": "日期和时间", + "datakey-value-type-date": "日期", + "datakey-value-type-time": "时间", + "datakey-value-type-select": "下拉选择", + "datakey-value-type-radio": "单选按钮", + "datakey-value-type-color": "颜色", + "value-is-required": "值为必填项", + "ability-to-edit-attribute": "属性编辑能力", + "ability-to-edit-attribute-editable": "可编辑(默认)", + "ability-to-edit-attribute-disabled": "禁用", + "ability-to-edit-attribute-readonly": "只读", + "disable-on-datakey-name": "在另一个数据键值为 false 时禁用(指定数据键名称)", + "field-appearance": "字段外观", + "appearance-fill": "填充", + "appearance-outline": "轮廓", + "subscript-sizing": "下标大小", + "subscript-sizing-fixed": "固定", + "subscript-sizing-dynamic": "动态", + "slide-toggle-settings": "滑动开关设置", + "slide-toggle-label-position": "滑动开关标签位置", + "slide-toggle-label-position-after": "之后", + "slide-toggle-label-position-before": "之前", + "select-options": "下拉选项", + "no-select-options": "未配置下拉选项", + "add-select-option": "添加下拉选项", + "numeric-field-settings": "数值字段设置", + "step-interval": "值之间的步进间隔", + "error-messages": "错误消息", + "min-value-error-message": "“最小值”错误消息", + "max-value-error-message": "“最大值”错误消息", + "invalid-date-error-message": "“无效日期”错误消息", + "invalid-JSON-error-message": "“无效 JSON”错误消息", + "icon-settings": "图标设置", + "dialog-editor-settings": "对话框编辑器设置", + "use-custom-icon": "使用自定义图标", + "input-cell-icon": "输入单元格前显示的图标", + "value-conversion-settings": "值转换设置", + "get-value-settings": "获取值设置", + "use-get-value-function": "使用 getValue 函数", + "get-value-function": "getValue 函数", + "set-value-settings": "设置值设置", + "use-set-value-function": "使用 setValue 函数", + "set-value-function": "setValue 函数", + "json-invalid": "JSON 值格式无效", + "title": "标题", + "cancel-button-label": "“取消”按钮标签", + "radio-button-settings": "单选按钮设置", + "color": "颜色", + "columns": "列", + "radio-options": "单选选项", + "no-radio-options": "未配置单选选项", + "add-radio-option": "添加单选选项", + "radio-label-position": "标签位置", + "radio-label-position-before": "之前", + "radio-label-position-after": "之后" + }, + "invalid-qr-code-text": "二维码的输入文本无效。输入应为字符串类型", + "qr-code": { + "use-qr-code-text-function": "使用二维码文本函数", + "qr-code-text-pattern": "二维码文本模式(例如 '${entityName} | ${keyName} - some text.')", + "qr-code-text-pattern-hint": "二维码文本模式使用实体别名中实体中第一个找到的键的值。", + "qr-code-text-pattern-required": "二维码文本模式为必填项。", + "qr-code-text-function": "二维码文本函数" + }, + "label-widget": { + "label-pattern": "模式", + "label-pattern-hint": "提示:例如 'Text ${keyName} units.' 或 ${#<key index>} units'", + "label-pattern-required": "模式为必填项", + "label-position": "位置(相对于背景的百分比)", + "x-pos": "X", + "y-pos": "Y", + "background-color": "背景颜色", + "font-settings": "字体设置", + "background-image": "背景图片", + "labels": "标签", + "no-labels": "未配置标签", + "add-label": "添加标签" + }, + "navigation": { + "title": "标题", + "navigation-path": "导航路径", + "filter-type": "过滤类型", + "filter-type-all": "所有项目", + "filter-type-include": "包含项目", + "filter-type-exclude": "排除项目", + "items": "项目", + "enter-urls-to-filter": "输入要过滤的 URL..." + }, + "persistent-table": { + "rpc-id": "RPC ID", + "message-type": "消息类型", + "method": "方法", + "params": "参数", + "created-time": "创建时间", + "expiration-time": "过期时间", + "retries": "重试次数", + "status": "状态", + "filter": "过滤器", + "refresh": "刷新", + "add": "添加 RPC 请求", + "details": "详情", + "delete": "删除", + "delete-request-title": "删除持久化 RPC 请求", + "delete-request-text": "您确定要删除该请求吗?", + "details-title": "详情 RPC ID:", + "additional-info": "附加信息", + "response": "响应", + "any-status": "任意状态", + "rpc-status-list": "RPC 状态列表", + "no-request-prompt": "无可显示的请求", + "send-request": "发送请求", + "add-title": "创建持久化 RPC 请求", + "method-error": "方法为必填项。", + "timeout-error": "最小超时值为 5000(5 秒)。", + "white-space-error": "不允许使用空格。", + "rpc-status": { + "QUEUED": "已排队", + "SENT": "已发送", + "DELIVERED": "已送达", + "SUCCESSFUL": "成功", + "TIMEOUT": "超时", + "EXPIRED": "已过期", + "FAILED": "失败" + }, + "rpc-search-status-all": "全部", + "message-types": { + "false": "双向", + "true": "单向" + }, + "general-settings": "常规设置", + "enable-filter": "启用过滤器", + "enable-sticky-header": "滚动时显示表头", + "enable-sticky-action": "滚动时显示操作列", + "display-request-details": "显示请求详情", + "allow-send-request": "允许发送 RPC 请求", + "allow-delete-request": "允许删除请求", + "columns-settings": "列设置", + "display-columns": "要显示的列", + "column": "列", + "no-columns-found": "未找到列", + "no-columns-matching": "未找到“{{column}}”。" + }, + "range-chart": { + "chart": "图表", + "data-zoom": "数据缩放", + "range-chart-appearance": "范围图表外观", + "range-colors": "范围颜色", + "out-of-range-color": "超出范围颜色", + "show-range-thresholds": "显示范围阈值", + "range-thresholds-settings": "范围阈值设置", + "fill-area": "填充区域", + "fill-area-opacity": "填充区域不透明度", + "range-chart-style": "范围图表样式" + }, + "knob": { + "behavior": "行为", + "initial-value": "初始值", + "initial-value-hint": "获取旋钮初始值的操作。", + "on-value-change": "值变更时", + "on-value-change-hint": "旋钮值变更时触发的操作。", + "range": "范围", + "min": "最小", + "max": "最大", + "value": "值", + "fallback-initial-value": "备用初始值" + }, + "rpc": { + "value-settings": "值设置", + "initial-value": "初始值", + "retrieve-value-settings": "获取开/关值设置", + "retrieve-value-method": "使用方法获取值", + "retrieve-value-method-none": "不获取", + "retrieve-value-method-rpc": "调用 RPC 获取值方法", + "retrieve-value-method-attribute": "订阅属性", + "retrieve-value-method-timeseries": "订阅时间序列", + "attribute-value-key": "属性键", + "timeseries-value-key": "时间序列键", + "get-value-method": "RPC 获取值方法", + "parse-value-function": "解析值函数", + "update-value-settings": "更新值设置", + "set-value-method": "RPC 设置值方法", + "convert-value-function": "转换值函数", + "rpc-settings": "RPC 设置", + "request-timeout": "RPC 请求超时(毫秒)", + "persistent-rpc-settings": "持久化 RPC 设置", + "request-persistent": "RPC 请求持久化", + "persistent-polling-interval": "获取持久化 RPC 命令响应的轮询间隔(毫秒)", + "common-settings": "通用设置", + "switch-title": "开关标题", + "show-on-off-labels": "显示开/关标签", + "slide-toggle-label": "滑动开关标签", + "label-position": "标签位置", + "label-position-before": "之前", + "label-position-after": "之后", + "slider-color": "滑块颜色", + "slider-color-primary": "主要", + "slider-color-accent": "强调", + "slider-color-warn": "警告", + "button-style": "按钮样式", + "button-raised": "凸起按钮", + "button-primary": "主要颜色", + "button-background-color": "按钮背景颜色", + "button-text-color": "按钮文本颜色", + "widget-title": "部件标题", + "button-label": "按钮标签", + "device-attribute-scope": "设备属性范围", + "server-attribute": "服务端属性", + "shared-attribute": "共享属性", + "device-attribute-parameters": "设备属性参数", + "is-one-way-command": "单向命令", + "rpc-method": "RPC 方法", + "rpc-method-params": "RPC 方法参数", + "show-rpc-error": "显示 RPC 命令执行错误", + "led-title": "LED 标题", + "led-color": "LED 颜色", + "check-status-settings": "检查状态设置", + "perform-rpc-status-check": "执行 RPC 设备状态检查", + "retrieve-led-status-value-method": "使用方法获取 LED 状态值", + "led-status-value-attribute": "包含 LED 状态值的设备属性", + "led-status-value-timeseries": "包含 LED 状态值的设备时间序列", + "check-status-method": "RPC 检查设备状态方法", + "parse-led-status-value-function": "解析 LED 状态值函数", + "knob-title": "旋钮标题" + }, + "maps": { + "map-type": { + "type": "地图类型", + "map": "地图", + "image": "图片" + }, + "image": { + "image-source": "图片来源", + "image-source-image": "图片", + "image-source-entity-key": "实体键", + "source-entity-alias": "来源实体别名", + "image-url-key": "图片 URL 键", + "image-url-key-required": "图片 URL 键为必填项" + }, + "control": { + "map-controls": "地图控件", + "position": "位置", + "position-topleft": "左上", + "position-topright": "右上", + "position-bottomleft": "左下", + "position-bottomright": "右下", + "zoom-actions": "缩放操作", + "zoom-scroll": "滚动", + "zoom-double-click": "双击", + "zoom-control-buttons": "控制按钮", + "scale": "比例尺", + "scale-metric": "公制", + "scale-imperial": "英制", + "switch-to-drag-mode-using-button": "使用按钮切换到拖拽模式" + }, + "timeline": { + "control-panel": "时间线控制面板", + "time-step": "时间步长", + "speed-options": "速度选项", + "timestamp": "时间戳", + "snap-to-real-location": "对齐到真实位置", + "location-snap-filter-function": "位置对齐过滤函数", + "no-trips-data-available": "无可用的行程数据" + }, + "map-action": { + "map-action-buttons": "地图操作按钮", + "label": "标签", "icon": "图标", - "icon-color": "图标颜色", - "icon-size": "图标大小", - "advanced-settings": "高级设置", - "data-settings": "数据设置", - "limits": "限制", - "no-data-display-message": "没有数据时显示文本", - "data-page-size": "每个数据源的最大实体数", - "settings-component-not-found": "未找到设置的表单组件选择器'{{selector}}'", - "preview": "预览", - "set": "设置", - "set-message": "设置显示文本", - "advanced-title-style": "高级标题样式", - "card-style": "样式", - "text": "文本", - "background": "背景", - "advanced-widget-style": "高级部件样式", - "card-buttons": "按钮", - "show-card-buttons": "全屏按钮", - "card-border-radius": "边框半径", - "card-padding": "内边边距", - "card-appearance": "外观", "color": "颜色", - "tooltip": "文字提示", - "units-required": "单位必填", - "list-layout": "列表", - "layout": "布局", - "resize-options": "调整大小", - "resizable": "可调整大小", - "preserve-aspect-ratio": "保留纵横比例" - }, - "widget-type": { - "import": "导入部件", - "export": "导出部件", - "export-failed-error": "无法导出部件:{{error}}", - "widget-file": "部件文件", - "invalid-widget-file-error": "无法导入部件:无效的部件数据结构。" - }, - "widgets": { - "mobile-app-qr-code": { - "configuration-hint": "配置取决于平台中设置的移动应用二维码部件", - "get-it-on-google-play": "在Google Play上下载", - "download-on-the-app-store": "在App Store上下载" - }, - "action-button": { - "behavior": "行为", - "on-click": "单击", - "on-click-hint": "单击按钮时触发动作", - "first-button-click": "第一次按钮单击", - "first-button-click-hint": "按下第一个按钮时触发的动作", - "second-button-click": "第二次按钮单击", - "second-button-click-hint": "按下第二个按钮时触发的动作", - "button-click-hint": "按下部件时触发的动作" - }, - "command-button": { - "behavior": "行为", - "on-click": "单击", - "on-click-hint": "单击按钮时触发动作" - }, - "power-button": { - "behavior": "行为", - "power-on": "打开", - "power-on-hint": "打开电源执行的动作。", - "power-off": "关闭", - "power-off-hint": "关闭电源执行的动作。", - "on-label": "打开", - "off-label": "关闭", - "layout": "布局", - "layout-default": "默认", - "layout-simplified": "精简", - "layout-outlined": "默认", - "layout-default-volume": "默认", - "layout-simplified-volume": "精简", - "layout-outlined-volume": "默认", - "layout-default-icon": "默认.Icon", - "layout-simplified-icon": "精简.Icon", - "layout-outlined-icon": "默认.Icon", - "main": "前景色", - "background": "背景色", - "power-on-colors": "打开颜色", - "power-off-colors": "关闭颜色", - "disabled-colors": "禁用颜色", - "button": "按钮" - }, - "toggle-button": { - "behavior": "行为", - "checked": "打开", - "unchecked": "关闭", - "check": "打开状态", - "check-hint": "打开组件执行的动作。", - "uncheck": "关闭状态", - "uncheck-hint": "关闭组件执行的动作。", - "auto-scale": "自动", - "horizontal-fill": "水平填充", - "vertical-fill": "垂直填充", - "button-appearance": "外观" - }, - "segmented-button": { - "layout": "布局", - "layout-squared": "方形", - "layout-rounded": "圆角", - "card-border": "卡片边框", - "button-appearance": "按钮外观", - "first": "第一个", - "second": "第二个", - "color-styles": "颜色样式", - "selected": "已选中", - "unselected": "未选中" - }, - "button": { - "layout": "布局", - "outlined": "默认", - "filled": "填充", - "underlined": "强调", - "basic": "基础", - "auto-scale": "自动", - "label": "标签", - "icon": "图标", - "border-radius": "圆角", - "color-palette": "调色板", - "main": "前景色", - "background": "背景色", - "border": "边框", - "custom-styles": "自定义样式", - "clear-style": "清除样式", - "shadow": "阴影", - "enabled": "启用", - "disabled": "禁用", - "preview": "预览", - "copy-style-from": "复制" - }, - "button-state": { - "activated-state": "激活状态", - "activated-state-hint": "按钮在激活状态的触发条件。", - "disabled-state": "禁用状态", - "disabled-state-hint": "按钮在禁用状态的触发条件。", - "selected-state": "选中状态", - "selected-state-hint": "配置按钮选中状态的触发条件。", - "enabled": "启用", - "hovered": "悬停", - "pressed": "按压", - "activated": "激活", - "disabled": "禁用", - "initial": "初始状态", - "first": "第一个", - "second": "第二个" - }, - "background": { - "background": "背景颜色", - "background-settings": "背景设置", - "background-type-image": "上传图像", - "background-type-color": "纯色背景", - "image-url": "图像URL", - "overlay": "覆盖", - "enable-overlay": "启用覆盖", - "blur": "模糊", - "preview": "预览" - }, - "bar-chart": { - "bar-appearance": "外观", - "label-on-bar": "标签", - "value-on-bar": "数值", - "bar-chart-style": "样式", - "bar-axis": "轴" - }, - "polar-area-chart": { - "polar-axis": "极轴", - "start-angle": "角度", - "polar-area-chart-style": "图表样式" - }, - "battery-level": { - "layout": "布局", - "layout-vertical-solid": "垂直.实心", - "layout-horizontal-solid": "水平.实心", - "layout-vertical-divided": "垂直.分割", - "layout-horizontal-divided": "水平.分割", - "icon": "图标", - "value": "数值", - "auto-scale": "自动缩放", - "battery-level-color": "电量颜色", - "battery-shape-color": "形状颜色", - "battery-level-card-style": "电量卡片样式", - "sections-count": "分段数量" - }, - "signal-strength": { - "value": "数值", - "last-update": "上次更新", - "no-signal": "无信号", - "layout": "布局", - "layout-wifi": "Wi-Fi", - "layout-cellular-bar": "蜂窝网络", - "icon": "图标", - "date": "日期", - "active-bars-color": "有信号颜色", - "inactive-bars-color": "无信号颜色", - "signal-strength-card-style": "信号强度样式", - "no-signal-rssi-value": "无信号RSSI值" - }, - "status-widget": { - "behavior": "行为", - "layout": "布局", - "layout-default": "默认", - "layout-center": "居中", - "layout-icon": "图标", - "on": "打开", - "off": "关闭", - "label": "标签", - "status": "状态", - "icon": "图标", - "color-palette": "启用时调色板", - "disabled-color-palette": "禁用时调色板", - "primary": "基本", - "primary-color-hint": "图标和标签的颜色", - "secondary": "次要", - "secondary-color-hint": "状态颜色", - "background": "背景" - }, - "chart": { - "common-settings": "通用设置", - "enable-stacking-mode": "启用堆叠模式", - "selection": "时间范围选择", - "enable-selection-mode": "启用选择模式", - "line-shadow-size": "线条阴影大小", - "display-smooth-lines": "显示平滑(曲线)线条", - "default-bar-width": "非聚合数据的默认条形图宽度(毫秒)", - "bar-alignment": "Bar 对齐方式", - "bar-alignment-left": "左", - "bar-alignment-right": "右", - "bar-alignment-center": "居中", - "default-font": "默认字体", - "default-font-size": "默认字体大小", - "default-font-color": "默认字体颜色", - "thresholds-line-width": "所有阈值的默认线条宽度", - "tooltip-settings": "文字提示设置", - "tooltip": "文字提示", - "show-tooltip": "显示文字提示", - "hover-individual-points": "悬停在单个数据点上", - "show-cumulative-values": "在堆叠模式下显示累积值", - "hide-zero-false-values": "文字提示隐藏 zero/false", - "tooltip-value-format-function": "文字提示值的格式化函数", - "grid-settings": "网格线设置", - "show-vertical-lines": "显示垂直线条", - "show-horizontal-lines": "显示水平线条", - "grid-outline-border-width": "网格轮廓/边框宽度(px)", - "primary-color": "主要颜色", - "background-color": "背景颜色", - "ticks-color": "刻度颜色", - "xaxis-settings": "X轴设置", - "axis-title": "轴标题", - "xaxis-tick-labels-settings": "X轴刻度标签设置", - "show-tick-labels": "显示轴刻度标签", - "yaxis-settings": "Y轴设置", - "min-scale-value": "刻度上的最小值", - "max-scale-value": "刻度上的最大值", - "yaxis-tick-labels-settings": "Y轴刻度标签设置", - "tick-step-size": "刻度之间的步长", - "number-of-decimals": "要显示的小数位数", - "ticks-formatter-function": "刻度格式化函数", - "comparison-settings": "比较设置", - "enable-comparison": "启用比较", - "time-for-comparison": "比较期间", - "time-for-comparison-previous-interval": "上一个时间段(默认)", - "time-for-comparison-days": "一天前", - "time-for-comparison-weeks": "一周前", - "time-for-comparison-months": "一月前", - "time-for-comparison-years": "一年前", - "time-for-comparison-custom-interval": "自定义时间间隔", - "custom-interval-value": "自定义时间间隔值 (毫秒)", - "comparison-x-axis-settings": "比较X轴设置", - "axis-position": "轴位置", - "axis-position-top": "顶部 (默认)", - "axis-position-bottom": "底部", - "custom-legend-settings": "自定义设置图例", - "enable-custom-legend": "启用自定义图例 (这将允许您在键标签中使用属性/时间序列值)", - "key-name": "键名", - "key-name-required": "键名是必需的", - "key-type": "键类型", - "key-type-attribute": "属性", - "key-type-timeseries": "时间序列", - "label-keys-list": "要在标签中使用的键列表", - "no-label-keys": "未配置键", - "add-label-key": "添加新键", - "line-width": "线宽", - "color": "颜色", - "data-is-hidden-by-default": "默认情况下隐藏数据", - "disable-data-hiding": "禁用数据隐藏", - "remove-from-legend": "从图例中移除数据键", - "exclude-from-stacking": "从堆叠中排除(仅适用于'堆叠'模式)", - "line-settings": "线设置", - "show-line": "显示线条", - "fill-line": "填充线条", - "fill-line-opacity": "填充透明度", - "points-settings": "点设置", - "show-points": "显示点", - "points-line-width": "点的线宽", - "points-radius": "点的半径", - "point-shape": "形状", - "point-shape-circle": "圆", - "point-shape-cross": "十字", - "point-shape-diamond": "菱形", - "point-shape-square": "矩形", - "point-shape-triangle": "三角形", - "point-shape-custom": "自定义函数", - "point-shape-draw-function": "形状绘制函数", - "show-separate-axis": "显示分离的轴", - "axis-position-left": "左侧", - "axis-position-right": "右侧", - "thresholds": "阈值", - "no-thresholds": "未配置阈值", - "add-threshold": "添加新阈值", - "show-values-for-comparison": "显示历史比较值", - "comparison-values-label": "历史值标签", - "comparison-line-color": "对比线颜色", - "threshold-settings": "阈值设置", - "use-as-threshold": "使用遥测作为阈值", - "threshold-line-width": "阈值线宽", - "threshold-color": "阈值颜色", - "common-pie-settings": "常用饼图设置", - "radius": "半径", - "inner-radius": "内部半径", - "tilt": "倾斜", - "common-pie-settings-range-error": "值应在0到1的范围内", - "stroke-settings": "描边设置", - "width-pixels": "宽度(px)", - "show-labels": "显示标签", - "animation-settings": "动画设置", - "animated-pie": "启用饼图动画", - "border-settings": "边框设置", - "border-width": "边框宽度", - "border-color": "边框颜色", - "legend-settings": "设置图例", - "display-legend": "显示图例", - "labels-font-color": "标签字体颜色", - "series": "时间序列", - "add-series": "添加", - "series-settings": "设置", - "remove-series": "删除", - "no-series": "没有设置时间序列", - "no-series-error": "至少指定一个时间序列", - "chart-appearance": "图表外观", - "vertical-grid-lines": "垂直网格线", - "horizontal-grid-lines": "水平网格线", - "chart-background": "图表背景", - "grid-lines-color": "网格线颜色", - "border": "边框", - "axis": "轴", - "vertical-axis": "垂直轴", - "ticks": "刻度", - "horizontal-axis": "水平轴", - "shape-empty-circle": "空心圆形", - "shape-circle": "圆形", - "shape-rect": "长方形", - "shape-round-rect": "矩形", - "shape-triangle": "三角形", - "shape-diamond": "菱形", - "shape-pin": "Pin", - "shape-arrow": "箭头", - "shape-none": "无", - "line-type-solid": "实线", - "line-type-dashed": "虚线", - "line-type-dotted": "点画线", - "label-position-top": "上", - "label-position-bottom": "下", - "label-position-outside": "外部", - "label-position-inside": "内部", - "fill": "填充", - "fill-type-none": "无", - "fill-type-solid": "实线", - "fill-type-opacity": "透明度", - "fill-type-gradient": "渐变色", - "background": "背景色", - "opacity": "透明度", - "gradient-stops": "渐变值", - "gradient-start": "起始点", - "gradient-end": "结束点", - "animation": { - "animation": "动画", - "animation-threshold": "动画阈值", - "animation-duration": "动画时长", - "animation-easing": "动画方式", - "animation-delay": "动画延迟", - "update-animation-duration": "更新时长", - "update-animation-easing": "更新方式", - "update-animation-delay": "更新延迟" - }, - "chart-axis": { - "scale": "比例", - "scale-min": "最小", - "scale-max": "最大", - "scale-auto": "自动" - }, - "bar": { - "show-border": "显示边框", - "border-width": "边框宽度", - "border-radius": "边框圆角", - "bar-width": "宽度", - "label": "标签", - "label-hint": "在条形图上显示标签。", - "series-label-hint": "显示具有数值的标签。", - "label-background": "标签背景" - } - }, - "color": { - "color-settings": "颜色设置", - "color-type-constant": "固定值", - "color-type-gradient": "渐变色", - "color-type-range": "数值范围", - "color-type-function": "函数", - "color": "颜色", - "value-range": "数值范围", - "from": "从", - "to": "到", - "color-function": "颜色函数", - "copy-color-settings-from": "复制其他颜色设置", - "copy-from": "复制", - "settings-type": "类型设置", - "basic-mode": "基础", - "advanced-mode": "高级", - "entity-alias": "实体别名", - "entity-attribute": "实体属性", - "gradient-color": "渐变色", - "gradient-color-min": "颜色", - "gradient-start": "起始点", - "gradient-start-min": "起始", - "gradient-end": "结束点", - "gradient-end-min": "结束", - "start-value": "起始值", - "end-value": "结束植", - "gradient-type": "渐变类型" - }, - "dashboard-state": { - "dashboard-state-settings": "仪表板状态设置", - "dashboard-state": "仪表板状态 ID", - "autofill-state-layout": "自动填充状态布局默认高度", - "default-margin": "默认部件边距", - "default-background-color": "默认背景颜色", - "sync-parent-state-params": "与父仪表板同步状态参数" - }, - "date-range-navigator": { - "date-range-picker-settings": "日期范围选择设置", - "hide-date-range-picker": "隐藏日期范围选择", - "picker-one-panel": "日期范围选择板", - "picker-auto-confirm": "自动确认日期范围选择", - "picker-show-template": "日期范围选择显示模板", - "first-day-of-week": "一周的第一天", - "interval-settings": "间隔设置", - "hide-interval": "隐藏间隔", - "initial-interval": "初始间隔", - "interval-hour": "小时", - "interval-day": "天", - "interval-week": "周", - "interval-two-weeks": "2周", - "interval-month": "月", - "interval-three-months": "3个月", - "interval-six-months": "6个月", - "step-settings": "步长设置", - "hide-step-size": "隐藏步长", - "initial-step-size": "初始步长", - "hide-labels": "隐藏标签", - "use-session-storage": "使用会话存储", - "localizationMap": { - "Sun": "周日", - "Mon": "周一", - "Tue": "周二", - "Wed": "周三", - "Thu": "周四", - "Fri": "周五", - "Sat": "周六", - "Jan": "1月", - "Feb": "2月", - "Mar": "3月", - "Apr": "4月", - "May": "5月", - "Jun": "6月", - "Jul": "7月", - "Aug": "8月", - "Sep": "9月", - "Oct": "10月", - "Nov": "11月", - "Dec": "12月", - "January": "一月", - "February": "二月", - "March": "三月", - "April": "四月", - "June": "六月", - "July": "七月", - "August": "八月", - "September": "九月", - "October": "十月", - "November": "十一月", - "December": "十二月", - "Custom Date Range": "自定义日期范围", - "Date Range Template": "日期范围模板", - "Today": "今天", - "Yesterday": "昨天", - "This Week": "本星期", - "Last Week": "上星期", - "This Month": "本月", - "Last Month": "上月", - "Year": "年", - "This Year": "今年", - "Last Year": "去年", - "Date picker": "日期选择", - "Hour": "小时", - "Day": "天", - "Week": "周", - "2 weeks": "2周", - "Month": "月", - "3 months": "3个月", - "6 months": "6个月", - "Custom interval": "自定义间隔", - "Interval": "间隔", - "Step size": "步长", - "Ok": "确定" - } - }, - "doughnut": { - "doughnut-appearance": "外观", - "layout": "布局", - "layout-default": "默认", - "layout-with-total": "总计", - "central-total-value": "中心数值", - "doughnut-card-style": "样式" - }, - "entities-hierarchy": { - "hierarchy-data-settings": "层次数据设置", - "relations-query-function": "关系查询函数", - "has-children-function": "是否子级函数", - "node-state-settings": "状态设置", - "node-opened-function": "展开函数", - "node-disabled-function": "禁用函数", - "display-settings": "显示设置", - "node-icon-function": "图标函数", - "node-text-function": "文本函数", - "sort-settings": "排序设置", - "nodes-sort-function": "排序函数" - }, - "edge": { - "display-default-title": "显示默认标题" - }, - "gateway": { - "general-settings": "基础设置", - "widget-title": "部件标题", - "default-archive-file-name": "默认文件名", - "device-type-for-new-gateway": "新网关的设备类型", - "messages-settings": "消息设置", - "save-config-success-message": "配置保存成功消息", - "device-name-exists-message": "设备名称已经存在消消息", - "gateway-title": "网关标题", - "read-only": "只读", - "events-title": "事件标题", - "events-filter": "事件过滤", - "event-key-contains": "事件键包含...", - "show-connector": "显示连接器", - "connector-state-param-key": "连接器状态参数键", - "message": "消息", - "level": "层级", - "created-time": "创建时间" - }, - "gauge": { - "default-color": "默认颜色", - "radial-gauge-settings": "量规设置", - "ticks-settings": "刻度设置", - "min-value": "最小值", - "max-value": "最大值", - "min-value-short": "最小值", - "max-value-short": "最大值", - "start-ticks-angle": "起始角度", - "ticks-angle": "结束角度", - "major-ticks": "主刻度", - "major-ticks-count": "主刻度数量", - "major-ticks-color": "主刻度颜色", - "minor-ticks": "次刻度", - "minor-ticks-count": "次刻度数量", - "minor-ticks-color": "次刻度颜色", - "tick-numbers-font": "刻度数字字体", - "unit-title-settings": "单位设置", - "show-unit-title": "显示单位", - "unit-title": "单位", - "title-font": "字体", - "units-settings": "单位设置", - "units-font": "字体", - "value-box-settings": "数值框设置", - "show-value-box": "显示数值框", - "value-box": "数值框", - "value-int": "整数位数", - "value-text": "数值文本", - "value-text-shadow": "文本阴影", - "value-font": "数值字体", - "rect-stroke-color-start": "边框色渐变起始", - "rect-stroke-color-end": "边框色渐变结束", - "background-color": "背景颜色", - "shadow-color": "阴影颜色", - "value-box-rect-stroke-color": "数值框描边", - "value-box-rect-stroke-color-end": "数值框描边色渐变结束", - "value-box-background-color": "数值框背景颜色", - "value-box-shadow-color": "数值框阴影颜色", - "plate-settings": "背景设置", - "show-plate-border": "显示背景边框", - "plate-color": "背景颜色", - "needle-settings": "指针设置", - "needle-circle-size": "针座尺寸", - "needle-color": "指针颜色", - "needle-color-start": "指针颜色渐变起始", - "needle-color-end": "指针颜色渐变结束", - "needle-color-shadow-up": "指针上半部分阴影颜色", - "needle-color-shadow-down": "指针下半部分阴影颜色", - "highlights-settings": "高亮设置", - "highlights-width": "高亮宽度", - "highlights": "高亮", - "highlight-from": "起始值", - "highlight-to": "终止值", - "highlight-color": "颜色", - "no-highlights": "未配置高亮", - "add-highlight": "添加高亮", - "animation-settings": "动画设置", - "enable-animation": "启用动画", - "animation-duration-rule": "动画保持规则", - "animation-duration": "动画保持时间", - "animation-rule": "动画规则", - "animation-linear": "线性", - "animation-quad": "二次方", - "animation-quint": "五次方", - "animation-cycle": "循环", - "animation-bounce": "弹跳", - "animation-elastic": "弹性", - "animation-dequad": "二次方反向", - "animation-dequint": "五次方反向", - "animation-decycle": "循环反向", - "animation-debounce": "弹跳反向", - "animation-delastic": "弹性反向", - "linear-gauge-settings": "线性量规设置", - "bar-stroke": "柱状图描边", - "bar-stroke-width": "条形图描边宽度", - "bar-stroke-color": "条形图描边颜色", - "bar-background-color": "量规条形图背景颜色", - "bar-background-color-end": "条形图背景颜色-渐变结束", - "progress-bar-color": "进度条颜色", - "progress-bar": "进度条", - "progress-bar-color-start": "进度条颜色-渐变起始", - "progress-bar-color-end": "进度条颜色-渐变结束", - "major-ticks-names": "主刻度名称", - "show-stroke-ticks": "显示刻度描边", - "major-ticks-font": "主刻度字体", - "border-color": "边框颜色", - "border-width": "边框宽度", - "needle-circle": "指针圆圈", - "needle-circle-color": "指针圆圈颜色", - "animation-target": "动画目标", - "animation-target-needle": "指针", - "animation-target-plate": "背景板", - "common-settings": "通用量规设置", - "gauge-type": "量规类型", - "gauge-type-arc": "弧形", - "gauge-type-donut": "圆圈", - "gauge-type-horizontal-bar": "水平条形", - "gauge-type-vertical-bar": "垂直条形", - "donut-start-angle": "角度", - "bar-settings": "条形图设置", - "relative-bar-width": "条形宽度", - "neon-glow-brightness": "霓虹灯光效亮度(0-100)0-禁用效果", - "neon-glow-brightness-hint": "0-禁用效果", - "stripes-thickness": "条纹的厚度", - "stripes-thickness-hint": "0-无条纹", - "rounded-line-cap": "圆角线帽", - "bar-color-settings": "颜色设置", - "use-precise-level-color-values": "使用精确的颜色级别", - "bar-colors": "条形图颜色,从低到高", - "color": "颜色", - "no-bar-colors": "未配置条形图颜色", - "add-bar-color": "添加条形图颜色", - "from": "起始值", - "to": "终止值", - "fixed-level-colors": "使用边界值的条形图颜色", - "gauge-title-settings": "量规标题设置", - "show-gauge-title": "显示量规标题", - "gauge-title": "量规标题", - "gauge-title-font": "量规标题字体", - "unit-title-and-timestamp-settings": "单位标题和时间戳设置", - "show-timestamp": "显示值时间戳", - "timestamp-format": "时间格式", - "label-font": "显示在数值下方的标签字体", - "value-settings": "数值设置", - "show-value": "显示数值文本", - "min-max-settings": "最小/最大标签设置", - "show-min-max": "显示最小和最大值", - "min-max-font": "最小和最大标签字体", - "show-ticks": "显示刻度", - "tick-width": "宽度", - "tick-color": "颜色", - "tick-values": "刻度值", - "no-tick-values": "未配置刻度值", - "add-tick-value": "添加刻度值", - "gauge-appearance": "仪表盘外观", - "units-title": "单位标题", - "value": "数值", - "ticks": "刻度", - "arrow-and-scale-color": "默认颜色", - "scale-settings": "设置", - "scale": "尺寸", - "scale-color": "颜色", - "compass-appearance": "外观", - "label": "标签", - "labels": "标签", - "label-style": "标签样式", - "simple-gauge-type": "类型", - "gauge-bar-background": "量规背景", - "bar-color": "颜色", - "min-and-max-value": "最小和最大值", - "min-and-max-label": "最小和最大标签", - "font": "字体", - "tick-width-and-color": "刻度宽度和颜色", - "min-max-validation-text": "最大值必须大于最小值" - }, - "gpio": { - "pin": "引脚", - "label": "标签", - "row": "行", - "column": "列", - "color": "颜色", - "panel-settings": "面板设置", - "background-color": "背景颜色", - "gpio-switches": "GPIO开关", - "no-gpio-switches": "未配置GPIO开关", - "add-gpio-switch": "添加GPIO开关", - "gpio-status-request": "GPIO状态请求", - "method-name": "方法名称", - "method-body": "方法内容", - "gpio-status-change-request": "GPIO状态变更请求", - "parse-gpio-status-function": "解析GPIO状态函数", - "gpio-leds": "GPIO LED", - "no-gpio-leds": "未配置GPIO LED", - "add-gpio-led": "添加GPIO LED" - }, - "html-card": { - "html": "HTML", - "css": "CSS" - }, - "input-widgets": { - "attribute-not-allowed": "属性参数不能在此部件中使用", - "blocked-location": "在浏览器中阻止地理位置", - "claim-device": "声明设备", - "claim-failed": "声明设备失败!", - "claim-not-found": "未找到设备!", - "claim-successful": "设备已成功申领!", - "date": "日期", - "device-name": "设备名称", - "device-name-required": "设备名称必填", - "discard-changes": "放弃更改", - "entity-attribute-required": "实体属性必填", - "entity-coordinate-required": "纬度和经度两个字段都是必需的", - "entity-timeseries-required": "实体时间序列必填", - "get-location": "获取当前位置", - "invalid-date": "无效日期", - "latitude": "纬度", - "longitude": "经度", - "min-value-error": "最小值是{{value}}", - "max-value-error": "最大值是{{value}}", - "not-allowed-entity": "所选实体不能具有共享属性", - "no-attribute-selected": "未选择任何属性", - "no-datakey-selected": "未选择数据键", - "no-coordinate-specified": "未指定纬度/经度的数据键", - "no-entity-selected": "未选择实体", - "no-image": "没有图像", - "no-support-geolocation": "您的浏览器不支持地理定位", - "no-support-web-camera": "您的浏览器不支持摄像头", - "enable-https-use-widget": "请启用HTTPS以使用此部件", - "no-found-your-camera": "未找到摄像机", - "no-permission-camera": "权限被用户拒绝/此站点无权使用摄像机", - "no-timeseries-selected": "未选择时间序列值", - "secret-key": "密钥", - "secret-key-required": "密钥必填", - "switch-attribute-value": "切换实体属性值", - "switch-camera": "切换摄像机", - "switch-timeseries-value": "切换实体时间序列值", - "take-photo": "拍照", - "time": "时间", - "timeseries-not-allowed": "时间序列参数不能用于此部件", - "update-failed": "更新失败", - "update-successful": "更新成功", - "update-attribute": "更新属性", - "update-timeseries": "更新时间序列", - "value": "数值", - "general-settings": "通用设置", - "widget-title": "部件标题", - "claim-button-label": "认领按钮标签", - "show-secret-key-field": "显示'秘钥'输入字段", - "labels-settings": "标签设置", - "show-labels": "显示标签", - "device-name-label": "设备名称输入字段标签", - "secret-key-label": "秘钥输入字段标签", - "messages-settings": "消息设置", - "claim-device-success-message": "设备认领成功文本消息", - "claim-device-not-found-message": "设备未找到文本消息", - "claim-device-failed-message": "设备认领失败文本消息", - "claim-device-name-required-message": "'设备名称必填'错误消息", - "claim-device-secret-key-required-message": "'秘钥必填'错误消息", - "show-label": "显示标签", - "label": "标签", - "required": "必填", - "required-error-message": "'必填'错误消息", - "show-result-message": "显示结果消息", - "integer-field-settings": "整数字段设置", - "min-value": "最小值", - "max-value": "最大值", - "double-field-settings": "双精度字段设置", - "text-field-settings": "文本字段设置", - "min-length": "最小长度", - "max-length": "最大长度", - "checkbox-settings": "复选框设置", - "true-label": "选中标签", - "false-label": "未选中标签", - "image-input-settings": "图像输入设置", - "display-preview": "显示预览", - "display-clear-button": "显示清除按钮", - "display-apply-button": "显示应用按钮", - "display-discard-button": "显示放弃按钮", - "datetime-field-settings": "日期/时间字段设置", - "display-time-input": "显示时间输入", - "latitude-key-name": "纬度键名称", - "longitude-key-name": "经度键名称", - "show-get-location-button": "显示'获取当前位置'按钮", - "use-high-accuracy": "使用高精度", - "location-fields-settings": "位置字段设置", - "latitude-label": "纬度标签", - "longitude-label": "经度标签", - "input-fields-alignment": "输入字段对齐方式", - "input-fields-alignment-column": "列(默认)", - "input-fields-alignment-row": "行", - "layout": "布局", - "row-gap": "行之间的间距(像素)", - "column-gap": "列之间的间距(像素)", - "latitude-field-required": "纬度字段必填", - "longitude-field-required": "经度字段必填", - "attribute-settings": "属性设置", - "widget-mode": "部件模式", - "widget-mode-update-attribute": "更新属性", - "widget-mode-update-timeseries": "更新时间序列", - "attribute-scope": "属性范围", - "attribute-scope-server": "服务器属性", - "attribute-scope-shared": "共享属性", - "value-required": "值必填", - "image-settings": "图像设置", - "image-format": "图像格式", - "image-format-jpeg": "JPEG", - "image-format-png": "PNG", - "image-format-webp": "WEBP", - "image-quality": "使用有损压缩的图像质量,比如JPEG和WEBP", - "max-image-width": "最大图像宽度", - "max-image-height": "最大图像高度", - "action-buttons": "操作按钮", - "show-action-buttons": "显示操作按钮", - "update-all-values": "更新所有值,而不仅仅是修改过的值", - "save-button-label": "'保存'按钮标签", - "reset-button-label": "'撤销'按钮标签", - "group-settings": "分组设置", - "show-group-title": "显示字段组的标题,与不同实体相关联", - "group-title": "分组标题", - "fields-alignment": "字段对齐方式", - "fields-alignment-row": "行(默认)", - "fields-alignment-column": "列", - "fields-in-row": "每行字段数", - "option-value": "值(创建空选项时填写'null')", - "option-label": "标签", - "hide-input-field": "隐藏输入字段", - "datakey-type": "数据键类型", - "datakey-type-server": "服务器属性(默认)", - "datakey-type-shared": "共享属性", - "datakey-type-timeseries": "时间序列", - "datakey-value-type": "数据键值类型", - "datakey-value-type-string": "字符串", - "datakey-value-type-double": "双精度", - "datakey-value-type-integer": "整数", - "datakey-value-type-json": "JSON", - "datakey-value-type-boolean-checkbox": "布尔值(复选框)", - "datakey-value-type-boolean-switch": "布尔值(开关)", - "datakey-value-type-date-time": "日期和时间", - "datakey-value-type-date": "日期", - "datakey-value-type-time": "时间", - "datakey-value-type-select": "选择", - "datakey-value-type-color": "颜色", - "value-is-required": "值必填", - "ability-to-edit-attribute": "编辑属性的能力", - "ability-to-edit-attribute-editable": "可编辑(默认)", - "ability-to-edit-attribute-disabled": "禁用", - "ability-to-edit-attribute-readonly": "只读", - "disable-on-datakey-name": "在另一个数据键的值为假时禁用(指定数据键名称)", - "field-appearance": "字段外观", - "appearance-fill": "填充", - "appearance-outline": "轮廓", - "subscript-sizing": "下标大小", - "subscript-sizing-fixed": "固定", - "subscript-sizing-dynamic": "动态", - "slide-toggle-settings": "滑动开关设置", - "slide-toggle-label-position": "滑动开关标签位置", - "slide-toggle-label-position-after": "之后", - "slide-toggle-label-position-before": "之前", - "select-options": "选择选项", - "no-select-options": "没有配置选择选项", - "add-select-option": "添加选择选项", - "numeric-field-settings": "数值字段设置", - "step-interval": "值之间的步长间隔", - "error-messages": "错误消息", - "min-value-error-message": "'最小值'错误消息", - "max-value-error-message": "'最大值'错误消息", - "invalid-date-error-message": "'无效日期'错误消息", - "invalid-JSON-error-message": "'无效JSON'错误消息", - "icon-settings": "图标设置", - "dialog-editor-settings": "对话框编辑器设置", - "use-custom-icon": "使用自定义图标", - "input-cell-icon": "输入单元格前显示的图标", - "value-conversion-settings": "值转换设置", - "get-value-settings": "获取值设置", - "use-get-value-function": "使用getValue函数", - "get-value-function": "getValue函数", - "set-value-settings": "设置值设置", - "use-set-value-function": "使用setValue函数", - "set-value-function": "setValue函数", - "json-invalid": "JSON值格式无效", - "title": "标题", - "cancel-button-label": "'取消'按钮标签" - }, - "invalid-qr-code-text": "无效的二维码输入文本,输入应为字符串类型。", - "qr-code": { - "use-qr-code-text-function": "使用二维码文本函数", - "qr-code-text-pattern": "二维码文本模式(例如'${entityName} | ${keyName} - some text.')", - "qr-code-text-pattern-hint": "二维码文本模式将使用实体别名中的实体中找到的第一个键的值。", - "qr-code-text-pattern-required": "必须提供二维码文本模式。", - "qr-code-text-function": "二维码文本函数" - }, - "label-widget": { - "label-pattern": "模式", - "label-pattern-hint": "提示:例如文本${keyName}单位或${#<key index>}单位'", - "label-pattern-required": "必须提供模式", - "label-position": "位置(相对于背景的百分比)", - "x-pos": "X", - "y-pos": "Y", - "background-color": "背景颜色", - "font-settings": "字体设置", - "background-image": "背景图像", - "labels": "标签", - "no-labels": "无配置的标签", - "add-label": "添加标签" - }, - "navigation": { - "title": "标题", - "navigation-path": "导航路径", - "filter-type": "筛选类型", - "filter-type-all": "所有项目", - "filter-type-include": "包含项目", - "filter-type-exclude": "排除项目", - "items": "项目", - "enter-urls-to-filter": "输入要筛选的URL..." - }, - "persistent-table": { - "rpc-id": "RPC ID", - "message-type": "消息类型", - "method": "方法", - "params": "参数", - "created-time": "创建时间", - "expiration-time": "过期时间", - "retries": "重试次数", - "status": "状态", - "filter": "筛选", - "refresh": "刷新", - "add": "添加RPC请求", - "details": "详情", - "delete": "删除", - "delete-request-title": "删除持久化RPC请求", - "delete-request-text": "确定要删除请求吗?", - "details-title": "详情 RPC ID: ", - "additional-info": "附加信息", - "response": "响应", - "any-status": "任何状态", - "rpc-status-list": "RPC状态列表", - "no-request-prompt": "没有要显示的请求", - "send-request": "发送请求", - "add-title": "创建持久化RPC请求", - "method-error": "必须提供方法。", - "timeout-error": "最小超时值为5000(5秒)。", - "white-space-error": "不允许使用空格。", - "rpc-status": { - "QUEUED": "已排队", - "SENT": "已发送", - "DELIVERED": "已送达", - "SUCCESSFUL": "成功", - "TIMEOUT": "超时", - "EXPIRED": "已过期", - "FAILED": "失败" - }, - "rpc-search-status-all": "所有", - "message-types": { - "false": "双向", - "true": "单向" - }, - "general-settings": "常规设置", - "enable-filter": "启用筛选", - "enable-sticky-header": "滚动时显示标题栏", - "enable-sticky-action": "滚动时显示操作列", - "display-request-details": "显示请求详情", - "allow-send-request": "允许发送RPC请求", - "allow-delete-request": "允许删除请求", - "columns-settings": "列设置", - "display-columns": "要显示的列", - "column": "列", - "no-columns-found": "找不到列", - "no-columns-matching": "未找到'{{column}}'。" + "action": "操作", + "add-button": "添加按钮", + "no-action-buttons-configured": "未配置操作按钮", + "remove-action-button": "移除操作按钮", + "map-action-button": "地图操作按钮", + "button-requires": "按钮需要标签或图标" + }, + "common": { + "common-map-settings": "通用地图设置", + "fit-map-bounds": "调整地图范围以覆盖所有标记", + "default-map-center-position": "默认地图中心位置", + "default-map-zoom-level": "默认地图缩放级别", + "entities-limit": "加载实体数量限制" + }, + "layer": { + "label": "标签", + "layer": "图层", + "layers": "图层", + "map-layers": "地图图层", + "add-layer": "添加图层", + "layer-settings": "图层设置", + "remove-layer": "移除图层", + "no-layers": "未配置图层", + "roadmap": "路线图", + "satellite": "卫星图", + "hybrid": "混合图", + "reference": { + "reference-layer": "参考图层", + "no-layer": "无图层", + "openstreetmap-hybrid": "OpenStreetMap 混合", + "world-edition-hybrid": "World Edition 混合", + "enhanced-contrast-hybrid": "增强对比度混合" }, - "range-chart": { - "chart": "图表", - "data-zoom": "数据缩放", - "range-chart-appearance": "图表范围外观", - "range-colors": "范围颜色", - "out-of-range-color": "超出范围颜色", - "show-range-thresholds": "显示范围阈值", - "range-thresholds-settings": "范围阈值设置", - "fill-area": "填充区域", - "fill-area-opacity": "填充区域透明度", - "range-chart-style": "范围图样式" + "provider": { + "provider": "提供商", + "openstreet": { + "title": "OpenStreet", + "mapnik": "Mapnik", + "hot": "HOT", + "esri-street": "WorldStreetMap", + "esri-topo": "WorldTopoMap", + "esri-imagery": "WorldImagery", + "cartodb-positron": "Positron", + "cartodb-dark-matter": "DarkMatter" + }, + "google": { + "title": "Google", + "roadmap": "路线图", + "satellite": "卫星图", + "hybrid": "混合图", + "terrain": "地形图" + }, + "here": { + "title": "HERE", + "normal-day": "日间标准", + "normal-night": "夜间标准", + "hybrid-day": "日间混合", + "terrain-day": "日间地形" + }, + "tencent": { + "title": "腾讯", + "normal": "标准", + "satellite": "卫星图", + "terrain": "地形图" + }, + "custom": { + "title": "自定义", + "tile-url": "瓦片 URL" + } }, - "rpc": { - "value-settings": "值设置", - "initial-value": "初始值", - "retrieve-value-settings": "获取开/关值设置", - "retrieve-value-method": "使用方法获取值", - "retrieve-value-method-none": "不获取", - "retrieve-value-method-rpc": "调用RPC获取值方法", - "retrieve-value-method-attribute": "订阅属性获取值", - "retrieve-value-method-timeseries": "订阅时间序列获取值", - "attribute-value-key": "属性键", - "timeseries-value-key": "时间序列键", - "get-value-method": "RPC获取值方法", - "parse-value-function": "解析值的函数", - "update-value-settings": "更新值设置", - "set-value-method": "RPC设置值方法", - "convert-value-function": "转换值的函数", - "rpc-settings": "RPC设置", - "request-timeout": "RPC请求超时时间(毫秒)", - "persistent-rpc-settings": "持久化RPC设置", - "request-persistent": "持久化RPC请求", - "persistent-polling-interval": "持久化RPC命令响应的轮询间隔(毫秒)", - "common-settings": "常见设置", - "switch-title": "开关标题", - "show-on-off-labels": "显示开/关标签", - "slide-toggle-label": "滑动开关标签", - "label-position": "标签位置", - "label-position-before": "之前", - "label-position-after": "之后", - "slider-color": "滑块颜色", - "slider-color-primary": "主要", - "slider-color-accent": "强调", - "slider-color-warn": "警告", - "button-style": "按钮样式", - "button-raised": "凸起按钮", - "button-primary": "主要颜色", - "button-background-color": "按钮背景颜色", - "button-text-color": "按钮文字颜色", - "widget-title": "部件标题", - "button-label": "按钮标签", - "device-attribute-scope": "设备属性范围", - "server-attribute": "服务器属性", - "shared-attribute": "共享属性", - "device-attribute-parameters": "设备属性参数", - "is-one-way-command": "是单向命令", - "rpc-method": "RPC方法", - "rpc-method-params": "RPC方法参数", - "show-rpc-error": "显示RPC命令执行错误", - "led-title": "LED标题", - "led-color": "LED颜色", - "check-status-settings": "检查状态设置", - "perform-rpc-status-check": "执行RPC设备状态检查", - "retrieve-led-status-value-method": "使用方法获取LED状态值", - "led-status-value-attribute": "包含LED状态值的设备属性", - "led-status-value-timeseries": "包含LED状态值的设备时间序列", - "check-status-method": "RPC检查设备状态方法", - "parse-led-status-value-function": "解析LED状态值的函数", - "knob-title": "旋钮标题", - "min-value": "最小值", - "max-value": "最大值" + "credentials": { + "credentials": "凭据", + "api-key": "API 密钥" + } + }, + "overlays": { + "overlays": "覆盖层", + "overlays-hint": "配置地图实体的数据源、外观、行为、编辑选项和分组", + "trips": "行程", + "markers": "标记", + "polygons": "多边形", + "circles": "圆形" + }, + "data-layer": { + "source": "来源", + "filter": "过滤器", + "additional-data-keys": "附加数据键", + "additional-datasources": "附加数据源", + "additional-datasources-hint": "用于访问地图上未显示的实体的属性或遥测的数据源,可在地图覆盖层函数中使用。", + "more-datasources": "更多数据源", + "data-keys": "数据键", + "add-datasource": "添加数据源", + "no-datasources": "未配置数据源", + "remove-datasource": "移除数据源", + "behavior": "行为", + "on-click": "点击时", + "on-click-hint": "用户点击地图项目时触发的操作。", + "groups": "分组", + "groups-hint": "分配给覆盖层的分组名称列表,用于切换其在地图上的可见性。", + "color": "颜色", + "color-settings": "颜色设置", + "color-type-constant": "常量", + "color-type-range": "范围", + "color-type-function": "函数", + "color-range-source-key": "颜色范围来源键", + "color-range-source-key-required": "颜色范围来源键为必填项", + "color-range": "颜色范围", + "color-function": "颜色函数", + "label": "标签", + "tooltip": "提示框", + "pattern-type-pattern": "模式", + "pattern-type-function": "函数", + "label-pattern": "标签(模式示例:'${entityName}','${entityName}: (Text ${keyName} units.)')", + "label-function": "标签函数", + "tooltip-pattern": "提示框(例如 'Text ${keyName} units.' 或 Link text)", + "tooltip-function": "提示框函数", + "tooltip-trigger": "提示框触发方式", + "tooltip-trigger-click": "点击时显示提示框", + "tooltip-trigger-hover": "悬停时显示提示框", + "auto-close-tooltips": "自动关闭提示框", + "tooltip-offset": "提示框偏移", + "tooltip-offset-horizontal": "水平", + "tooltip-offset-vertical": "垂直", + "tooltip-tag-actions": "标签操作", + "add-tooltip-tag-action": "添加标签操作", + "edit-tooltip-tag-action": "编辑标签操作", + "remove-tooltip-tag-action": "移除标签操作", + "action-add": "添加", + "action-edit": "编辑", + "action-move": "移动", + "action-remove": "移除", + "edit-instruments": "工具", + "persist-location-attribute-scope": "持久化位置的属性范围", + "enable-snapping": "启用对齐到其他顶点以精确绘制", + "enable-snapping-hint": "自动将新点与现有形状对齐,使绘制更轻松、更准确。", + "drag-drop-mode": "拖放模式", + "trip": { + "no-trips": "未配置行程", + "add-trip": "添加行程", + "trip-configuration": "行程配置", + "remove-trip": "移除行程" }, - "maps": { - "select-entity": "选择实体", - "select-entity-hint": "提示:选择后在地图上点击以设置位置", - "tooltips": { - "placeMarker": "点击以放置'{{entityName}}'实体", - "firstVertex": "'{{entityName}}' 的多边形:点击以放置第一个点", - "firstVertex-cut": "点击以放置第一个点", - "continueLine": "'{{entityName}}' 的多边形:点击以继续绘制", - "continueLine-cut": "点击以继续绘制", - "finishLine": "点击任意现有标记以完成", - "finishPoly": "'{{entityName}}'的多边形:点击第一个标记以完成并保存", - "finishPoly-cut": "点击第一个标记以完成并保存", - "finishRect": "'{{entityName}}' 的多边形:点击以完成并保存", - "startCircle": "'{{entityName}}' 的圆:点击以放置圆心", - "finishCircle": "'{{entityName}}' 的圆:点击以完成圆形", - "placeCircleMarker": "点击以放置圆形标记" - }, - "actions": { - "finish": "完成", - "cancel": "取消", - "removeLastVertex": "移除最后一个点" - }, - "buttonTitles": { - "drawMarkerButton": "放置实体", - "drawPolyButton": "创建多边形", - "drawLineButton": "创建折线", - "drawCircleButton": "创建圆形", - "drawRectButton": "创建矩形", - "editButton": "编辑模式", - "dragButton": "拖放模式", - "cutButton": "切割多边形区域", - "deleteButton": "移除", - "drawCircleMarkerButton": "创建圆形标记", - "rotateButton": "旋转多边形" - }, - "map-provider-settings": "地图提供商设置", - "map-provider": "地图提供商", - "map-provider-google": "谷歌地图", - "map-provider-openstreet": "OpenStreet地图", - "map-provider-here": "HERE地图", - "map-provider-image": "图像地图", - "map-provider-tencent": "腾讯地图", - "openstreet-provider": "OpenStreet地图提供商", - "openstreet-provider-mapnik": "OpenStreetMap.Mapnik(默认)", - "openstreet-provider-hot": "OpenStreetMap.HOT", - "openstreet-provider-esri-street": "Esri.WorldStreetMap", - "openstreet-provider-esri-topo": "Esri.WorldTopoMap", - "openstreet-provider-esri-imagery": "Esri.WorldImagery", - "openstreet-provider-cartodb-positron": "CartoDB.Positron", - "openstreet-provider-cartodb-dark-matter": "CartoDB.DarkMatter", - "use-custom-provider": "使用自定义提供商", - "custom-provider-tile-url": "自定义提供商瓦片URL", - "google-maps-api-key": "谷歌地图API密钥", - "default-map-type": "默认地图类型", - "google-map-type-roadmap": "路线图", - "google-map-type-satelite": "卫星图", - "google-map-type-hybrid": "混合图", - "google-map-type-terrain": "地形图", - "map-layer": "地图图层", - "here-map-normal-day": "HERE.normalDay(默认)", - "here-map-normal-night": "HERE.normalNight", - "here-map-hybrid-day": "HERE.hybridDay", - "here-map-terrain-day": "HERE.terrainDay", - "credentials": "凭证", - "here-app-id": "HERE应用ID", - "here-app-code": "HERE应用代码", - "here-api-key": "HERE API密钥", - "here-use-new-version-api-3": "使用API版本3", - "tencent-maps-api-key": "腾讯地图API密钥", - "tencent-map-type-roadmap": "路线图", - "tencent-map-type-satelite": "卫星图", - "tencent-map-type-hybrid": "混合图", - "image-map-background": "图像地图背景", - "image-map-background-from-entity-attribute": "从实体属性获取图像地图背景", - "image-url-source-entity-alias": "图像URL源实体别名", - "image-url-source-entity-attribute": "图像URL源实体属性", - "common-map-settings": "常见地图设置", - "x-pos-key-name": "X位置键名", - "y-pos-key-name": "Y位置键名", - "latitude-key-name": "纬度键名", - "longitude-key-name": "经度键名", - "default-map-zoom-level": "默认地图缩放级别(0-20)", - "default-map-center-position": "默认地图中心位置(0,0)", - "disable-scroll-zooming": "禁用滚动缩放", - "disable-double-click-zooming": "禁用双击缩放", - "disable-zoom-control-buttons": "禁用缩放控制按钮", - "fit-map-bounds": "适应地图边界以覆盖所有标记", - "use-default-map-center-position": "使用默认地图中心位置", - "entities-limit": "加载实体的限制", - "markers-settings": "标记设置", - "marker-offset-x": "标记X偏移相对于位置乘以标记宽度", - "marker-offset-y": "标记Y偏移相对于位置乘以标记高度", - "position-function": "位置转换函数,应返回0到1之间的x,y坐标", - "draggable-marker": "可拖动的标记", - "label": "标签", - "show-label": "显示标签", - "use-label-function": "使用标签函数", - "label-pattern": "标签 (模式示例:'${entityName}', '${entityName}: (Text ${keyName} units.)' )", - "label-function": "标签函数", - "tooltip": "文字提示", - "show-tooltip": "显示文字提示", - "show-tooltip-action": "显示文字提示的操作", - "show-tooltip-action-click": "点击时显示文字提示(默认)", - "show-tooltip-action-hover": "悬停时显示文字提示", - "auto-close-tooltips": "自动关闭文字提示", - "use-tooltip-function": "使用文字提示函数", - "tooltip-pattern": "文字提示 (例如 'Text ${keyName} units.' or Link text')", - "tooltip-function": "文字提示函数", - "tooltip-offset-x": "文字提示X偏移相对于标记锚点乘以标记宽度", - "tooltip-offset-y": "文字提示Y偏移相对于标记锚点乘以标记高度", - "color": "颜色", - "use-color-function": "使用颜色函数", - "color-function": "颜色函数", - "marker-image": "标记图像", - "use-marker-image-function": "使用标记图像函数", - "custom-marker-image": "自定义标记图像", - "custom-marker-image-size": "自定义标记图像大小(px)", - "marker-image-function": "标记图像函数", - "marker-images": "标记图像", - "polygon-settings": "多边形设置", - "show-polygon": "显示多边形", - "polygon-key-name": "多边形键名", - "enable-polygon-edit": "启用多边形编辑", - "polygon-label": "多边形标签", - "show-polygon-label": "显示多边形标签", - "use-polygon-label-function": "使用多边形标签函数", - "polygon-label-pattern": "多边形标签 (模板示例:'${entityName}', '${entityName}: (Text ${keyName} units.)' )", - "polygon-label-function": "多边形标签函数", - "polygon-tooltip": "多边形文字提示", - "show-polygon-tooltip": "显示多边形文字提示", - "auto-close-polygon-tooltips": "自动关闭多边形文字提示", - "use-polygon-tooltip-function": "使用多边形文字提示函数", - "polygon-tooltip-pattern": "文字提示(例如'文本${keyName}单位'或连接文本')", - "polygon-tooltip-function": "多边形文字提示函数", - "polygon-color": "多边形颜色", - "polygon-opacity": "多边形不透明度", - "use-polygon-color-function": "使用多边形颜色函数", - "polygon-color-function": "多边形颜色函数", - "polygon-stroke": "多边形描边", - "stroke-color": "描边颜色", - "stroke-opacity": "描边不透明度", - "stroke-weight": "描边宽度", - "use-polygon-stroke-color-function": "使用多边形描边颜色函数", - "polygon-stroke-color-function": "多边形描边颜色函数", - "circle-settings": "圆设置", - "show-circle": "显示圆", - "circle-key-name": "圆键名", - "enable-circle-edit": "启用圆编辑", - "circle-label": "圆标签", - "show-circle-label": "显示圆标签", - "use-circle-label-function": "使用圆标签函数", - "circle-label-pattern": "圆标签 (模板示例:'${entityName}', '${entityName}: (Text ${keyName} units.)' )", - "circle-label-function": "圆标签函数", - "circle-tooltip": "圆文字提示", - "show-circle-tooltip": "显示圆文字提示", - "auto-close-circle-tooltips": "自动关闭圆文字提示", - "use-circle-tooltip-function": "使用圆文字提示函数", - "circle-tooltip-pattern": "文字提示(例如'文本${keyName}单位'或连接文本')", - "circle-tooltip-function": "圆文字提示函数", - "circle-fill-color": "圆填充颜色", - "circle-fill-color-opacity": "圆填充颜色不透明度", - "use-circle-fill-color-function": "使用圆填充颜色函数", - "circle-fill-color-function": "圆填充颜色函数", - "circle-stroke": "圆边框", - "use-circle-stroke-color-function": "使用圆边框颜色函数", - "circle-stroke-color-function": "圆边框颜色函数", - "markers-clustering-settings": "标记聚类设置", - "use-map-markers-clustering": "使用地图标记聚类", - "zoom-on-cluster-click": "点击集群时进行缩放", - "max-cluster-zoom": "当标记可以成为集群的一部分时的最大缩放级别(0-18)", - "max-cluster-radius-pixels": "簇所覆盖的最大半径(px)", - "cluster-zoom-animation": "缩放时显示标记动画", - "show-markers-bounds-on-cluster-mouse-over": "鼠标悬停在集群上时显示标记范围", - "spiderfy-max-zoom-level": "以最大缩放级别展开簇(以查看所有集群标记)", + "marker": { + "marker": "标记", + "latitude-key": "纬度键", + "longitude-key": "经度键", + "x-pos-key": "X 位置键", + "y-pos-key": "Y 位置键", + "latitude-key-required": "纬度键为必填项", + "longitude-key-required": "经度键为必填项", + "x-pos-key-required": "X 位置键为必填项", + "y-pos-key-required": "Y 位置键为必填项", + "no-markers": "未配置标记", + "add-marker": "添加标记", + "marker-configuration": "标记配置", + "remove-marker": "移除标记", + "marker-type": "标记类型", + "marker-type-shape": "形状", + "marker-type-icon": "图标", + "marker-type-image": "图片", + "shape": "形状", + "icon": "图标", + "image": "图片", + "marker-shapes": "标记形状", + "marker-icon": "标记图标", + "marker-appearance": "标记外观", + "marker-image": "标记图片", + "marker-image-type-image": "图片", + "marker-image-type-function": "函数", + "custom-marker-image-size": "自定义标记图片大小", + "marker-image-function": "标记图片函数", + "marker-images": "标记图片", + "marker-offset": "标记偏移", + "offset-horizontal": "水平", + "offset-vertical": "垂直", + "rotate-marker": "旋转标记", + "offset-angle": "偏移角度", + "position-conversion": "位置转换", + "position-conversion-function": "位置转换函数,应返回 x、y 坐标,每个值为 0 到 1 之间的双精度数", + "clustering": { + "use-map-markers-clustering": "使用地图标记聚合", + "zoom-on-cluster-click": "点击聚合时缩放", + "max-zoom": "标记可成为聚合一部分的最大缩放级别(0 - 18)", + "max-radius": "聚合覆盖的最大半径", + "zoom-animation": "缩放时标记的动画", + "bounds-on-cluster-mouse-over": "鼠标悬停聚合时的标记边界", + "spiderfy-max-zoom-level": "在最大缩放级别时展开(以查看所有聚合标记)", "load-optimization": "加载优化", - "cluster-chunked-loading": "使用块添加标记,以避免页面冻结", - "cluster-markers-lazy-load": "使用延迟加载添加标记", - "editor-settings": "编辑器设置", - "enable-snapping": "启用精确绘制时的吸附到其他顶点", - "init-draggable-mode": "以可拖动模式初始化地图", - "hide-all-edit-buttons": "隐藏所有编辑控制按钮", - "hide-draw-buttons": "隐藏绘制按钮", - "hide-edit-buttons": "隐藏编辑按钮", - "hide-remove-button": "隐藏删除按钮", - "route-map-settings": "路线地图设置", - "trip-animation-settings": "行程动画设置", - "normalization-step": "数据标准化步骤(毫秒)", - "tooltip-background-color": "文字提示背景颜色", - "tooltip-font-color": "文字提示字体颜色", - "tooltip-opacity": "文字提示不透明度(0-1)", - "auto-close-tooltip": "自动关闭文字提示", - "rotation-angle": "设置标记的附加旋转角度(度)", - "path-settings": "路径设置", - "path-color": "路径颜色", - "use-path-color-function": "使用路径颜色函数", - "path-color-function": "路径颜色函数", - "path-decorator": "路径装饰器", - "use-path-decorator": "使用路径装饰器", - "decorator-symbol": "装饰符号", - "decorator-symbol-arrow-head": "箭头", - "decorator-symbol-dash": "短划线", - "decorator-symbol-size": "装饰符号大小(px)", - "use-path-decorator-custom-color": "使用路径装饰器自定义颜色", - "decorator-custom-color": "装饰符号自定义颜色", - "decorator-offset": "装饰符号偏移量", - "end-decorator-offset": "结束装饰符号偏移量", - "decorator-repeat": "装饰符号重复", - "points-settings": "点设置", - "show-points": "显示点", - "point-color": "点颜色", - "point-size": "点大小(px)", - "use-point-color-function": "使用点颜色函数", - "point-color-function": "点颜色函数", - "use-point-as-anchor": "使用点作为锚点", - "point-as-anchor-function": "点作为锚点函数", - "independent-point-tooltip": "独立点文字提示", - "clustering-markers": "标记聚类", - "use-icon-create-function": "使用标记颜色函数", + "chunked-load": "使用分块添加标记以避免页面冻结", + "lazy-load": "使用懒加载添加标记", + "use-cluster-marker-color-function": "使用聚合标记颜色函数", "marker-color-function": "标记颜色函数" + }, + "edit": "编辑标记", + "remove-marker-for": "移除“{{entityName}}”的标记", + "place-marker": "放置标记", + "place-marker-hint": "点击以放置标记", + "place-marker-hint-with-entity": "点击以放置“{{entityName}}”实体" }, - "markdown": { - "use-markdown-text-function": "使用Markdown/HTML值函数", - "markdown-text-function": "Markdown/HTML值函数", - "markdown-text-pattern": "Markdown/HTML模板(使用变量的markdown或HTML,例如 '${entityName}或${keyName}。')", - "apply-default-markdown-style": "应用默认Markdown样式", - "markdown-css": "Markdown/HTML CSS" - }, - "simple-card": { - "label": "标签", - "label-position": "标签位置", - "label-position-left": "左侧", - "label-position-top": "顶部" - }, - "single-switch": { - "behavior": "行为", - "layout": "布局", - "layout-right": "居右", - "layout-left": "居左", - "layout-centered": "居中", - "auto-scale": "自动", - "label": "标签", - "icon": "图标", - "switch-color": "开关颜色", - "on": "打开", - "off": "关闭", - "disabled": "禁用", - "tumbler-color": "缩略图颜色", - "on-label": "打开标签", - "off-label": "闭关标签", - "switch": "开关" - }, - "slider": { - "behavior": "行为", - "initial-value": "初始值", - "initial-value-hint": "获取滑块的初始值。", - "on-value-change": "设置值", - "on-value-change-hint": "更改滑块数值时触发操作。", - "layout": "布局", - "layout-default": "默认", - "layout-extended": "扩展", - "layout-simplified": "精简", - "auto-scale": "自动", - "icon": "图标", - "value": "数值", - "range": "范围", - "min": "最小值", - "max": "最大值", - "range-ticks": "刻度范围", - "tick-marks": "刻度线", - "colors": "颜色", - "main": "前景色", - "background": "背景色", - "left-icon": "左边图标", - "right-icon": "右边图标", - "slider": "滑块" - }, - "value-card": { - "layout": "布局", - "layout-square": "正方形", - "layout-vertical": "垂直", - "layout-centered": "居中", - "layout-simplified": "简化", - "layout-horizontal": "水平", - "layout-horizontal-reversed": "水平翻转", - "label": "标签", - "icon": "图标", - "value": "数值", - "date": "日期", - "value-card-style": "数值卡片样式", - "auto-scale": "自动缩放" - }, - "label-card": { - "auto-scale": "自动", - "label": "标签", - "icon": "图标", - "label-card-style": "样式" - }, - "label-value-card": { - "value": "数值", - "label-value-card-style": "标签数值样式" - }, - "liquid-level-card": { - "layout-simple": "简单", - "layout-percentage": "百分比", - "layout-absolute": "绝对值", - "layout": "布局", - "background-overlay": "值背景叠加", - "total-volume": "总体积", - "total-volume-units": "总体积单位", - "tank": "容器", - "shape": "形状", - "datasource-units": "数据源单位", - "widget-units": "部件单位", - "decimals": "小数位数", - "liquid": "液体", - "liquid-color": "液体颜色", - "value": "数值", - "value-font": "值字体", - "level": "水位", - "last-update": "最后更新", - "shape-by-attribute": "按属性名称设置储罐形状", - "tooltip-background": "背景颜色", - "background-blur": "背景模糊", - "tank-color": "容器颜色", - "static": "静态", - "see-examples": "查看示例", - "attribute": "属性", - "shape-type": "类型", - "v-oval": "垂直椭圆", - "v-cylinder": "垂直圆柱体", - "v-capsule": "垂直胶囊", - "rectangle": "矩形", - "h-oval": "水平椭圆", - "h-ellipse": "水平椭圆", - "h-dish-ends": "水平盘形", - "h-cylinder": "水平圆柱体", - "h-capsule": "水平胶囊", - "h-elliptical_2_1": "水平2:1椭圆", - "icon": "图标", - "title": "标题", - "units": "单位", - "color-and-font": "颜色和字体", - "shape-attribute-name": "属性名称", - "total-volume-required": "需要总体积。", - "attribute-name-required": "需要属性名称。", - "attribute-key-not-set": "未设置属性'{{attributeName}}'键", - "attribute-key-invalid": "属性'{{attributeName}}'键无效" - }, - "aggregated-value-card": { - "subtitle": "副标题", - "chart": "图表", - "values": "数值", - "value-appearance": "数值外观", - "position": "位置", - "position-center": "中心", - "position-right-top": "右上", - "position-right-bottom": "右下", - "position-left-top": "左上", - "position-left-bottom": "左下", - "font": "字体", - "color": "颜色", - "arrow": "箭头", - "display-up-down-arrow": "显示向上/向下箭头", - "add-value": "添加数值", - "remove-value": "移除数值", - "no-values": "未配置数值", - "aggregation": "聚合", - "aggregated-value-card-style": "聚合数值卡片样式", - "auto-scale": "自动缩放" + "path": { + "path": "路径", + "path-decorator": "路径装饰器", + "decorator-symbol": "装饰器符号", + "decorator-symbol-arrow-head": "箭头", + "decorator-symbol-dash": "虚线", + "decorator-arrangement": "装饰器排列", + "decorator-offset": "起始", + "decorator-end-offset": "结束", + "decorator-repeat": "重复" }, - "value-chart-card": { - "layout": "布局", - "layout-left": "左侧", - "layout-right": "右侧", - "auto-scale": "自动缩放", - "icon": "图标", - "value": "数值", - "chart": "图表", - "value-chart-card-style": "数值图表卡片样式" + "points": { + "points": "点", + "point-tooltip": "点提示框" }, - "progress-bar": { - "layout": "布局", - "layout-default": "默认", - "layout-simplified": "简化", - "auto-scale": "自动缩放", - "icon": "图标", - "value": "数值", - "range": "范围", - "min": "最小值", - "max": "最大值", - "range-ticks": "刻度范围", - "bar": "条形", - "bar-color": "条形颜色", - "bar-background": "条形背景色", - "progress-bar-card-style": "条形卡片样式" + "shape": { + "fill": "填充", + "fill-type-color": "颜色", + "fill-type-stripe": "条纹", + "fill-type-image": "图片", + "color": "颜色", + "stripe": "条纹", + "image": "图片", + "stroke": "描边", + "fill-image": "填充图片", + "fill-image-type-image": "图片", + "fill-image-type-function": "函数", + "preserve-aspect-ratio": "保持宽高比", + "opacity": "不透明度", + "angle": "旋转角度", + "scale": "缩放", + "fill-image-function": "形状填充图片函数", + "fill-images": "形状填充图片", + "stripe-pattern": "条纹图案", + "first-stripe": "第一条纹", + "second-stripe": "第二条纹" }, - "notification": { - "max-notification-display": "显示的最大通知数量", - "counter": "计数提示", - "counter-hint": "如果启用部件标题将显示通知计数", - "icon": "图标", - "counter-value": "数值", - "counter-color": "颜色", - "notification-button": "通知按钮", - "button-view-all": "查看全部", - "button-filter": "过滤", - "type-filter": "类型", - "button-mark-read": "全部已读", - "notification-types": "通知类型", - "notification-type": "通知类型", - "search-type": "查询类型", - "any-type": "任意类型" + "polygon": { + "polygon-key": "多边形键", + "polygon-key-required": "多边形键为必填项", + "no-polygons": "未配置多边形", + "add-polygon": "添加多边形", + "polygon-configuration": "多边形配置", + "remove-polygon": "移除多边形", + "edit": "编辑多边形", + "remove-polygon-for": "移除“{{entityName}}”的多边形", + "cut": "裁剪多边形区域", + "rotate": "旋转多边形", + "draw-rectangle": "绘制矩形", + "draw-polygon": "绘制多边形", + "polygon-place-first-point-cut-hint": "点击以放置第一个点", + "continue-polygon-cut-hint": "点击以继续绘制", + "finish-polygon-cut-hint": "点击第一个标记以完成并保存", + "polygon-place-first-point-hint": "多边形:点击以放置第一个点", + "polygon-place-first-point-hint-with-entity": "“{{entityName}}”的多边形:点击以放置第一个点", + "continue-polygon-hint": "多边形:点击以继续绘制", + "continue-polygon-hint-with-entity": "“{{entityName}}”的多边形:点击以继续绘制", + "finish-polygon-hint": "多边形:点击第一个标记以完成绘制", + "finish-polygon-hint-with-entity": "“{{entityName}}”的多边形:点击第一个标记以完成并保存", + "rectangle-place-first-point-hint": "矩形:点击以放置第一个点", + "rectangle-place-first-point-hint-with-entity": "“{{entityName}}”的矩形:点击以放置第一个点", + "finish-rectangle-hint": "矩形:点击以完成绘制", + "finish-rectangle-hint-with-entity": "“{{entityName}}”的矩形:点击以完成并保存" }, - "alarm-count": { - "alarm-count-card-style": "告警告计数卡片样式" + "circle": { + "circle-key": "圆形键", + "circle-key-required": "圆形键为必填项", + "no-circles": "未配置圆形", + "add-circle": "添加圆形", + "circle-configuration": "圆形配置", + "remove-circle": "移除圆形", + "edit": "编辑圆形", + "remove-circle-for": "移除“{{entityName}}”的圆形", + "draw-circle": "绘制圆形", + "place-circle-center-hint-with-entity": "“{{entityName}}”的圆形:点击以放置圆心", + "place-circle-center-hint": "圆形:点击以放置圆心", + "finish-circle-hint-with-entity": "“{{entityName}}”的圆形:点击以完成并保存", + "finish-circle-hint": "圆形:点击以完成绘制" }, - "entity-count": { - "entity-count-card-style": "实体计数卡片样式" - }, - "count": { - "layout": "布局", - "layout-column": "列", - "layout-row": "行", - "label": "标签", - "icon": "图标", - "icon-background": "图标背景", - "value": "数值", - "chevron": "箭头", - "auto-scale": "自动缩放" - }, - "table": { - "common-table-settings": "常规设置", - "enable-search": "启用搜索", - "enable-sticky-header": "显示表头", - "enable-sticky-action": "显示操作列", - "hidden-cell-button-display-mode": "隐藏单元格按钮操作显示模式", - "show-empty-space-hidden-action": "显示空白区域而不是隐藏单元格按钮操作", - "dont-reserve-space-hidden-action": "不为隐藏的操作按钮预留空间", - "display-timestamp": "显示时间", - "display-pagination": "显示分页", - "default-page-size": "默认大小", - "use-entity-label-tab-name": "在选项卡名称中使用实体标签", - "hide-empty-lines": "隐藏空行", - "row-style": "行样式", - "use-row-style-function": "使用行样式函数", - "row-style-function": "行样式函数", - "cell-style": "单元格样式", - "use-cell-style-function": "使用单元格样式函数", - "cell-style-function": "单元格样式函数", - "cell-content": "单元格内容", - "use-cell-content-function": "使用单元格内容函数", - "cell-content-function": "单元格内容函数", - "show-latest-data-column": "显示最新数据列", - "latest-data-column-order": "最新数据列顺序", - "entities-table-title": "实体表标题", - "enable-select-column-display": "启用选择要显示的列", - "display-entity-name": "显示实体名称列", - "entity-name-column-title": "实体名称列标题", - "display-entity-label": "显示实体标签列", - "entity-label-column-title": "实体标签列标题", - "display-entity-type": "显示实体类型列", - "default-sort-order": "默认排序顺序", - "custom-title": "自定义表头标题", - "column-width": "列宽度(px或%)", - "default-column-visibility": "默认显示", - "column-visibility-visible": "显示", - "column-visibility-hidden": "隐藏", - "column-visibility-hidden-mobile": "在移动模式下隐藏", - "column-selection-to-display": "'显示列'中的列选择", - "column-selection-to-display-enabled": "启用", - "column-selection-to-display-disabled": "禁用", - "alarms-table-title": "告警表格标题", - "enable-alarms-selection": "启用告警选择", - "enable-alarms-search": "启用告警搜索", - "enable-alarm-filter": "启用告警过滤", - "display-alarm-details": "显示告警详细信息", - "allow-alarms-ack": "允许确认告警", - "allow-alarms-clear": "允许清除告警", - "display-alarm-activity": "显示活动告警", - "allow-alarms-assign": "允许分配告警", - "columns": "列", - "column-settings": "列设置", - "remove-column": "移除列", - "add-column": "添加列", - "no-columns": "没有配置列", - "columns-to-display": "显示的列", - "table-header": "表头", - "header-buttons": "表头按钮", - "table-buttons": "表格按钮", - "pagination": "分页", - "rows": "行", - "timeseries-column-error": "必须指定一个时间序序列", - "alarm-column-error": "必须指定一个告警数据列", - "table-tabs": "标签", - "show-cell-actions-menu-mobile": "在移动模式下显示单元格操作下拉菜单" - }, - "latest-chart": { - "total": "总数", - "auto-scale": "自动", - "clockwise-layout": "顺时针方向", - "sort-series": "标签排序", - "tooltip-value-type-absolute": "绝对", - "tooltip-value-type-percentage": "百分比" - }, - "pie-chart": { - "pie-chart-appearance": "外观", - "label": "标签", - "border": "标签", - "radius": "圆角", - "pie-chart-card-style": "样式" - }, - "radar-chart": { - "radar-appearance": "外观", - "shape": "形状", - "shape-polygon": "多边形", - "shape-circle": "圆形", - "color": "颜色", - "line": "线条", - "points": "点", - "points-label": "点标签", - "radar-axis": "雷达轴", - "axis-label": "轴标签", - "ticks-label": "刻度标签", - "radar-chart-style": "样式" - }, - "time-series-chart": { - "chart": "图表", - "chart-style": "样式", - "data-zoom": "数据缩放", - "stack-mode": "堆叠模式", - "stack-mode-hint": "图表上的堆栈具有同一单元的序列将放置在一起。", - "axes": "坐标", - "y-axes": "Y轴", - "line-type": "线条类型", - "line-width": "线条宽度", - "type-line": "线条", - "type-bar": "条形", - "type-point": "点", - "no-aggregation-bar-width-strategy": "非聚合数据的条形宽度", - "no-aggregation-bar-width-strategy-group": "分组", - "no-aggregation-bar-width-strategy-separate": "分隔", - "bar-group-width": "条形分组宽度", - "bar-width": "条形宽度", - "bar-width-relative": "百分比", - "bar-width-absolute": "绝对(ms)", - "comparison": { - "comparison": "数据比较", - "comparison-hint": "仅与历史数据一起比较!", - "show": "显示", - "settings": "比较设置", - "show-values-for-comparison": "显示历史数据进行比较", - "comparison-values-label": "数据键标签", - "comparison-values-label-auto": "自动", - "comparison-data-color": "颜色" - }, - "threshold": { - "thresholds": "阈值", - "source": "源", - "key-value": "键/值", - "no-thresholds": "未配置阈值", - "add-threshold": "添加", - "type-constant": "常量", - "type-latest-key": "键", - "type-entity": "实体", - "threshold-settings": "设置阈值", - "remove-threshold": "移除阈值", - "threshold-value-required": "阈值必填。", - "key-required": "键必填。", - "entity-key-required": "实体必填。", - "line-appearance": "线条外观", - "line-color": "线条颜色", - "start-symbol": "起始", - "end-symbol": "结束", - "symbol-size": "尺寸", - "label": "标签", - "label-position-start": "起始", - "label-position-middle": "中间", - "label-position-end": "结束", - "label-position-inside-start": "起始", - "label-position-inside-start-top": "起始上", - "label-position-inside-start-bottom": "起始下", - "label-position-inside-middle": "中间", - "label-position-inside-middle-top": "中间上", - "label-position-inside-middle-bottom": "中间下", - "label-position-inside-end": "结束", - "label-position-inside-end-top": "结束上", - "label-position-inside-end-bottom": "结束下", - "label-background": "标签背景" - }, - "state": { - "states": "状态", - "label": "标签", - "ticks-value": "刻度", - "source": "源", - "value-range": "值/范围", - "no-states": "未配置状态", - "add-state": "添加", - "type-constant": "常量", - "type-range": "范围", - "from": "从", - "to": "到", - "remove-state": "移除" - }, - "grid": { - "grid": "网格", - "background-color": "背景颜色", - "border": "边框" - }, - "axis": { - "axes": "坐标", - "x-axis": "X轴", - "y-axis": "Y轴", - "y-axis-settings": "Y轴设置", - "comparison-x-axis-settings": "比较X轴设置", - "remove-y-axis": "移除Y轴", - "id": "编号", - "label": "标签", - "position": "位置", - "position-left": "左", - "position-right": "右", - "position-top": "上", - "position-bottom": "下", - "tick-labels": "刻度标签", - "ticks-formatter-function": "刻度格式化函数", - "ticks-generator-function": "刻度生成函数", - "show-ticks": "显示刻度", - "show-line": "显示线条", - "show-split-lines": "显示分隔线", - "show-split-lines-x-axis-hint": "启用则显示垂直线。", - "show-split-lines-y-axis-hint": "启用则显示水平线。", - "ticks-interval": "刻度间隔", - "ticks-interval-hint": "强制设置轴的分段间隔。", - "split-number": "分隔号码", - "split-number-hint": "轴分成的多少段数量。", - "min": "最小值", - "max": "最大值", - "show": "显示", - "add-y-axis": "添加" - }, - "series": { - "legend-settings": "设置图例", - "show-in-legend": "显示图例", - "show-in-legend-hint": "在图例中显示系列名称和数据。", - "hidden-by-default": "默认情况下隐藏", - "hidden-by-default-hint": "默认情况下使系列隐藏在图例中。", - "series-type": "序列类型", - "type": "类型", - "type-line": "线条类型", - "type-bar": "条形", - "line": { - "line": "线条", - "show-line": "显示线条", - "step-line": "斜线", - "step-type-start": "起始", - "step-type-middle": "中间", - "step-type-end": "结束", - "smooth-line": "流畅" - }, - "point": { - "points": "点", - "show-points": "显示", - "point-label": "标签", - "point-label-hint": "显示具有超过序列点的值的标签。", - "point-label-background": "背景", - "point-shape": "形状", - "point-size": "尺寸" - } - } - }, - "wind-speed-direction": { - "layout": "布局", - "layout-default": "默认", - "layout-advanced": "高级", - "layout-simplified": "简化", - "values": "数值", - "wind-direction": "风向", - "center-value": "中心数值", - "icon": "图标", - "arrow": "箭头", - "ticks": "刻度", - "labels-type": "标签类型", - "directional-names": "方向名称", - "degrees": "度数", - "major-ticks": "主要刻度", - "minor-ticks": "次要刻度", - "wind-speed-direction-card-style": "风速和风向卡片样式", - "ticks-color": "刻度颜色", - "ticks-labels-type": "刻度标签类型", - "arrow-color": "箭头颜色" - }, - "value-source": { - "value-source": "值来源", - "predefined-value": "预定义值", - "entity-attribute": "从实体属性中获取的值", - "value": "数值", - "value-required": "数值必填。", - "key-required": "键必填。", - "entity-key-required": "实体必填。", - "source-entity-alias": "源实体别名", - "source-entity-attribute": "源实体属性", - "type-constant": "常量", - "type-latest-key": "键", - "type-entity": "实体" - }, - "rpc-state": { - "initial-state": "初始状态", - "initial-state-hint": "获取组件的初始状态(开/关)。", - "disabled-state": "禁用状态", - "disabled-state-hint": "配置禁用条件。", - "turn-on": "打开", - "turn-on-hint": "当滑块切换至“开”时触发的操作", - "turn-off": "关闭", - "turn-off-hint": "当滑块切换至“关闭”时触发的操作", - "on": "打开", - "off": "关闭", - "disabled": "禁用" - }, - "value-action": { - "do-nothing": "无任何动作", - "execute-rpc": "执行RPC", - "get-attribute": "获取属性", - "set-attribute": "设置属性", - "get-time-series": "获取遥测", - "get-alarm-status": "获取告警状态", - "get-dashboard-state": "获取仪表板状态", - "add-time-series": "添加遥测", - "execute-rpc-text": "执行RPC方法'{{methodName}}'", - "get-time-series-text": "使用遥测'{{key}}'", - "get-attribute-text": "使用属性'{{key}}'", - "get-alarm-status-text": "使用告警状态", - "get-dashboard-state-text": "使用仪表板状态", - "when-dashboard-state-is-text": "当仪表板状态为'{{state}}'", - "when-dashboard-state-function-is-text": "当(仪表板状态)是'{{state}}'", - "set-attribute-to-value-text": "设置'{{key}}'属性值:{{value}}", - "add-time-series-value-text": "添加'{{key}}'遥测值:{{value}}", - "set-attribute-text": "设置'{{key}}'属性", - "add-time-series-text": "添加'{{key}}'遥测", - "action": "动作", - "value": "数值", - "init-value-hint": "在设备发送数据之前将值设置。", - "method": "方法", - "method-name-required": "方法名称必填。", - "request-timeout-ms": "RPC请求超时(ms)", - "request-timeout-required": "RPC请求超时必填。", - "min-request-timeout-error": "请求超时值应更大或等于5000(5秒)。", - "request-persistent": "RPC请求持久化", - "persistent-polling-interval": "持久化的轮训间隔(ms)", - "persistent-polling-interval-hint": "轮询获取持久化RPC的命令响应", - "persistent-polling-interval-required": "轮询获取持久化必填。", - "min-persistent-polling-interval-error": "持续的轮询间隔值应>=1000 ms(1秒)。", - "attribute-scope": "作用域", - "attribute-key": "键名称", - "attribute-key-required": "键名称必填。", - "time-series-key": "键名称", - "time-series-key-required": "键名称必填。", - "action-result-converter": "动作转换", - "converter-none": "无", - "converter-function": "函数", - "converter-constant": "常量", - "converter-value": "数值", - "parse-value-function": "解析函数", - "state-when-result-is": "'{{state}}'结果是", - "parameters": "参数", - "convert-value-function": "转换函数", - "error": { - "target-entity-is-not-set": "目标实体未设置!", - "failed-to-perform-action": "无法执行{{ actionLabel }}操作。", - "invalid-attribute-scope": " {{entityType}}实体不支持{{scope}}属性作用域。" - } - }, - "widget-font": { - "font-settings": "字体设置", - "font-family": "字体", - "size": "大小", - "relative-font-size": "相对字体大小(百分比)", - "font-style": "样式", - "font-style-normal": "正常", - "font-style-italic": "斜体", - "font-style-oblique": "倾斜", - "font-weight": "粗细", - "font-weight-normal": "正常", - "font-weight-bold": "粗体", - "font-weight-bolder": "更粗", - "font-weight-lighter": "更轻", - "color": "颜色", - "shadow-color": "阴影颜色", - "preview": "预览", - "line-height": "行高", - "auto": "自动" - }, - "home": { - "no-data-available": "暂无数据" - }, - "system-info": { - "cpu": "CPU", - "ram": "内存", - "disk": "磁盘", - "cpu-warning-text": "CPU使用率过高为了避免系统故障,请优化系统性能。", - "cpu-critical-text": "CPU使用率严重过高为了避免系统故障,请优化系统性能。", - "ram-warning-text": "内存储备不足为了避免系统故障,请优化系统性能或增加内存大小。", - "ram-critical-text": "内存储备严重不足为了避免系统故障,请优化系统性能或增加内存大小。", - "disk-warning-text": "磁盘空间不足为了避免数据丢失,请释放或扩展磁盘空间。", - "disk-critical-text": "磁盘空间严重不足为了避免数据丢失,请释放或扩展磁盘空间。" - }, - "cluster-info": { - "service-id": "服务ID", - "service-type": "服务类型", - "no-data": "无数据" - }, - "transport-messages": { - "title": "传输消息", - "info": "来自设备的所有消息" + "select-entity": "选择实体", + "select-entity-hint": "提示:选择后点击地图以设置位置" + }, + "select-entity": "选择实体", + "select-entity-hint": "提示:选择后点击地图以设置位置", + "tooltips": { + "placeMarker": "点击以放置“{{entityName}}”实体", + "firstVertex": "“{{entityName}}”的多边形:点击以放置第一个点", + "firstVertex-cut": "点击以放置第一个点", + "continueLine": "“{{entityName}}”的多边形:点击以继续绘制", + "continueLine-cut": "点击以继续绘制", + "finishLine": "点击任意现有标记以完成", + "finishPoly": "“{{entityName}}”的多边形:点击第一个标记以完成并保存", + "finishPoly-cut": "点击第一个标记以完成并保存", + "finishRect": "“{{entityName}}”的多边形:点击以完成并保存", + "startCircle": "“{{entityName}}”的圆形:点击以放置圆心", + "finishCircle": "“{{entityName}}”的圆形:点击以完成圆形", + "placeCircleMarker": "点击以放置圆形标记" + }, + "actions": { + "finish": "完成", + "cancel": "取消", + "removeLastVertex": "移除最后一个点" + }, + "buttonTitles": { + "drawMarkerButton": "放置实体", + "drawPolyButton": "创建多边形", + "drawLineButton": "创建折线", + "drawCircleButton": "创建圆形", + "drawRectButton": "创建矩形", + "editButton": "编辑模式", + "dragButton": "拖放模式", + "cutButton": "裁剪多边形区域", + "deleteButton": "移除", + "drawCircleMarkerButton": "创建圆形标记", + "rotateButton": "旋转多边形" + }, + "map-provider-settings": "地图提供商设置", + "map-provider": "地图提供商", + "map-provider-google": "Google 地图", + "map-provider-openstreet": "OpenStreet 地图", + "map-provider-here": "HERE 地图", + "map-provider-image": "图片地图", + "map-provider-tencent": "腾讯地图", + "openstreet-provider": "OpenStreet 地图提供商", + "openstreet-provider-mapnik": "OpenStreetMap.Mapnik(默认)", + "openstreet-provider-hot": "OpenStreetMap.HOT", + "openstreet-provider-esri-street": "Esri.WorldStreetMap", + "openstreet-provider-esri-topo": "Esri.WorldTopoMap", + "openstreet-provider-esri-imagery": "Esri.WorldImagery", + "openstreet-provider-cartodb-positron": "CartoDB.Positron", + "openstreet-provider-cartodb-dark-matter": "CartoDB.DarkMatter", + "use-custom-provider": "使用自定义提供商", + "custom-provider-tile-url": "自定义提供商瓦片 URL", + "google-maps-api-key": "Google Maps API 密钥", + "default-map-type": "默认地图类型", + "google-map-type-roadmap": "路线图", + "google-map-type-satelite": "卫星图", + "google-map-type-hybrid": "混合图", + "google-map-type-terrain": "地形图", + "map-layer": "地图图层", + "here-map-normal-day": "HERE.normalDay(默认)", + "here-map-normal-night": "HERE.normalNight", + "here-map-hybrid-day": "HERE.hybridDay", + "here-map-terrain-day": "HERE.terrainDay", + "credentials": "凭据", + "here-app-id": "HERE 应用 ID", + "here-app-code": "HERE 应用代码", + "here-api-key": "HERE API 密钥", + "here-use-new-version-api-3": "使用 API 版本 3", + "tencent-maps-api-key": "腾讯地图 API 密钥", + "tencent-map-type-roadmap": "路线图", + "tencent-map-type-satelite": "卫星图", + "tencent-map-type-hybrid": "混合图", + "image-map-background": "图片地图背景", + "image-map-background-from-entity-attribute": "从实体属性获取图片地图背景", + "image-url-source-entity-alias": "图片 URL 来源实体别名", + "image-url-source-entity-attribute": "图片 URL 来源实体属性", + "common-map-settings": "通用地图设置", + "x-pos-key-name": "X 位置键名称", + "y-pos-key-name": "Y 位置键名称", + "latitude-key-name": "纬度键名称", + "longitude-key-name": "经度键名称", + "default-map-zoom-level": "默认地图缩放级别(0 - 20)", + "default-map-center-position": "默认地图中心位置(0,0)", + "disable-scroll-zooming": "禁用滚动缩放", + "disable-double-click-zooming": "禁用双击缩放", + "disable-zoom-control-buttons": "禁用缩放控制按钮", + "fit-map-bounds": "调整地图范围以覆盖所有标记", + "use-default-map-center-position": "使用默认地图中心位置", + "entities-limit": "加载实体数量限制", + "markers-settings": "标记设置", + "marker-offset-x": "标记 X 偏移(相对于位置乘以标记宽度)", + "marker-offset-y": "标记 Y 偏移(相对于位置乘以标记高度)", + "position-function": "位置转换函数,应返回 x、y 坐标,每个值为 0 到 1 之间的双精度数", + "draggable-marker": "可拖动标记", + "label": "标签", + "show-label": "显示标签", + "use-label-function": "使用标签函数", + "label-pattern": "标签(模式示例:'${entityName}','${entityName}: (Text ${keyName} units.)')", + "label-function": "标签函数", + "tooltip": "提示框", + "show-tooltip": "显示提示框", + "show-tooltip-action": "显示提示框的操作", + "show-tooltip-action-click": "点击时显示提示框(默认)", + "show-tooltip-action-hover": "悬停时显示提示框", + "auto-close-tooltips": "自动关闭提示框", + "use-tooltip-function": "使用提示框函数", + "tooltip-pattern": "提示框(例如 'Text ${keyName} units.' 或 Link text')", + "tooltip-function": "提示框函数", + "tooltip-offset-x": "提示框 X 偏移(相对于标记锚点乘以标记宽度)", + "tooltip-offset-y": "提示框 Y 偏移(相对于标记锚点乘以标记高度)", + "color": "颜色", + "use-color-function": "使用颜色函数", + "color-function": "颜色函数", + "marker-image": "标记图片", + "use-marker-image-function": "使用标记图片函数", + "custom-marker-image": "自定义标记图片", + "custom-marker-image-size": "自定义标记图片大小(像素)", + "marker-image-function": "标记图片函数", + "marker-images": "标记图片", + "polygon-settings": "多边形设置", + "show-polygon": "显示多边形", + "polygon-key-name": "多边形键名称", + "enable-polygon-edit": "启用多边形编辑", + "polygon-label": "多边形标签", + "show-polygon-label": "显示多边形标签", + "use-polygon-label-function": "使用多边形标签函数", + "polygon-label-pattern": "多边形标签(模式示例:'${entityName}','${entityName}: (Text ${keyName} units.)')", + "polygon-label-function": "多边形标签函数", + "polygon-tooltip": "多边形提示框", + "show-polygon-tooltip": "显示多边形提示框", + "auto-close-polygon-tooltips": "自动关闭多边形提示框", + "use-polygon-tooltip-function": "使用多边形提示框函数", + "polygon-tooltip-pattern": "提示框(例如 'Text ${keyName} units.' 或 Link text')", + "polygon-tooltip-function": "多边形提示框函数", + "polygon-color": "多边形颜色", + "polygon-opacity": "多边形不透明度", + "use-polygon-color-function": "使用多边形颜色函数", + "polygon-color-function": "多边形颜色函数", + "polygon-stroke": "多边形描边", + "stroke-color": "描边颜色", + "stroke-opacity": "描边不透明度", + "stroke-weight": "描边粗细", + "use-polygon-stroke-color-function": "使用多边形描边颜色函数", + "polygon-stroke-color-function": "多边形描边颜色函数", + "circle-settings": "圆形设置", + "show-circle": "显示圆形", + "circle-key-name": "圆形键名称", + "enable-circle-edit": "启用圆形编辑", + "circle-label": "圆形标签", + "show-circle-label": "显示圆形标签", + "use-circle-label-function": "使用圆形标签函数", + "circle-label-pattern": "圆形标签(模式示例:'${entityName}','${entityName}: (Text ${keyName} units.)')", + "circle-label-function": "圆形标签函数", + "circle-tooltip": "圆形提示框", + "show-circle-tooltip": "显示圆形提示框", + "auto-close-circle-tooltips": "自动关闭圆形提示框", + "use-circle-tooltip-function": "使用圆形提示框函数", + "circle-tooltip-pattern": "提示框(例如 'Text ${keyName} units.' 或 Link text')", + "circle-tooltip-function": "圆形提示框函数", + "circle-fill-color": "圆形填充颜色", + "circle-fill-color-opacity": "圆形填充颜色不透明度", + "use-circle-fill-color-function": "使用圆形填充颜色函数", + "circle-fill-color-function": "圆形填充颜色函数", + "circle-stroke": "圆形描边", + "use-circle-stroke-color-function": "使用圆形描边颜色函数", + "circle-stroke-color-function": "圆形描边颜色函数", + "markers-clustering-settings": "标记聚合设置", + "use-map-markers-clustering": "使用地图标记聚合", + "zoom-on-cluster-click": "点击聚合时缩放", + "max-cluster-zoom": "标记可成为聚合一部分的最大缩放级别(0 - 18)", + "max-cluster-radius-pixels": "聚合覆盖的最大半径(像素)", + "cluster-zoom-animation": "缩放时显示标记动画", + "show-markers-bounds-on-cluster-mouse-over": "鼠标悬停聚合时显示标记边界", + "spiderfy-max-zoom-level": "在最大缩放级别时展开(以查看所有聚合标记)", + "load-optimization": "加载优化", + "cluster-chunked-loading": "使用分块添加标记以避免页面冻结", + "cluster-markers-lazy-load": "使用懒加载添加标记", + "editor-settings": "编辑器设置", + "enable-snapping": "启用对齐到其他顶点以精确绘制", + "init-draggable-mode": "以拖拽模式初始化地图", + "hide-all-edit-buttons": "隐藏所有编辑控制按钮", + "hide-draw-buttons": "隐藏绘制按钮", + "hide-edit-buttons": "隐藏编辑按钮", + "hide-remove-button": "隐藏移除按钮", + "route-map-settings": "路线地图设置", + "trip-animation-settings": "行程动画设置", + "normalization-step": "数据标准化步长(毫秒)", + "tooltip-background-color": "提示框背景颜色", + "tooltip-font-color": "提示框字体颜色", + "tooltip-opacity": "提示框不透明度(0-1)", + "auto-close-tooltip": "自动关闭提示框", + "rotation-angle": "设置标记的附加旋转角度(度)", + "path-settings": "路径设置", + "path-color": "路径颜色", + "use-path-color-function": "使用路径颜色函数", + "path-color-function": "路径颜色函数", + "path-decorator": "路径装饰器", + "use-path-decorator": "使用路径装饰器", + "decorator-symbol": "装饰器符号", + "decorator-symbol-arrow-head": "箭头", + "decorator-symbol-dash": "虚线", + "decorator-symbol-size": "装饰器符号大小(像素)", + "use-path-decorator-custom-color": "使用路径装饰器自定义颜色", + "decorator-custom-color": "装饰器自定义颜色", + "decorator-offset": "装饰器偏移", + "end-decorator-offset": "结束装饰器偏移", + "decorator-repeat": "装饰器重复", + "points-settings": "点设置", + "show-points": "显示点", + "point-color": "点颜色", + "point-size": "点大小(像素)", + "use-point-color-function": "使用点颜色函数", + "point-color-function": "点颜色函数", + "use-point-as-anchor": "使用点作为锚点", + "point-as-anchor-function": "点作为锚点函数", + "independent-point-tooltip": "独立点提示框", + "clustering-markers": "标记聚合", + "use-icon-create-function": "使用标记颜色函数", + "marker-color-function": "标记颜色函数" + }, + "markdown": { + "use-markdown-text-function": "使用 Markdown/HTML 值函数", + "markdown-text-function": "Markdown/HTML 值函数", + "markdown-text-pattern": "Markdown/HTML 模式(Markdown 或带变量的 HTML,例如 '${entityName} or ${keyName} - some text.')", + "apply-default-markdown-style": "应用默认 Markdown 样式", + "markdown-css": "Markdown/HTML CSS" + }, + "simple-card": { + "label": "标签", + "label-position": "标签位置", + "label-position-left": "左侧", + "label-position-top": "顶部" + }, + "single-switch": { + "behavior": "行为", + "layout": "布局", + "layout-right": "右侧", + "layout-left": "左侧", + "layout-centered": "居中", + "auto-scale": "自动缩放", + "label": "标签", + "icon": "图标", + "switch-color": "开关颜色", + "on": "开", + "off": "关", + "disabled": "禁用", + "tumbler-color": "拨动器颜色", + "on-label": "开启标签", + "off-label": "关闭标签", + "switch": "开关" + }, + "slider": { + "behavior": "行为", + "initial-value": "初始值", + "initial-value-hint": "获取滑块初始值的操作。", + "on-value-change": "值变更时", + "on-value-change-hint": "滑块值变更时触发的操作。", + "layout": "布局", + "layout-default": "默认", + "layout-extended": "扩展", + "layout-simplified": "简化", + "auto-scale": "自动缩放", + "icon": "图标", + "value": "值", + "range": "范围", + "min": "最小", + "max": "最大", + "range-ticks": "范围刻度", + "tick-marks": "刻度标记", + "colors": "颜色", + "main": "主要", + "background": "背景", + "left-icon": "左侧图标", + "right-icon": "右侧图标", + "slider": "滑块" + }, + "value-card": { + "layout": "布局", + "layout-square": "方形", + "layout-vertical": "垂直", + "layout-centered": "居中", + "layout-simplified": "简化", + "layout-horizontal": "水平", + "layout-horizontal-reversed": "水平反向", + "label": "标签", + "icon": "图标", + "value": "值", + "date": "日期", + "value-card-style": "值卡片样式", + "auto-scale": "自动缩放" + }, + "label-card": { + "auto-scale": "自动缩放", + "label": "标签", + "icon": "图标", + "label-card-style": "标签卡片样式" + }, + "label-value-card": { + "value": "值", + "label-value-card-style": "标签和值卡片样式" + }, + "liquid-level-card": { + "layout-simple": "简单", + "layout-percentage": "百分比", + "layout-absolute": "绝对值", + "layout": "布局", + "background-overlay": "值背景覆盖", + "total-volume": "总容量", + "total-volume-units": "总容量单位", + "tank": "容器", + "shape": "形状", + "datasource-units": "源单位", + "widget-units": "部件单位", + "decimals": "小数位数", + "liquid": "液体", + "liquid-color": "液体颜色", + "value": "值", + "value-font": "值字体", + "level": "液位", + "last-update": "最后更新", + "shape-by-attribute": "通过属性名称设置容器形状", + "tooltip-background": "背景颜色", + "background-blur": "背景模糊", + "tank-color": "容器颜色", + "static": "静态", + "see-examples": "查看示例", + "attribute": "属性", + "shape-type": "类型", + "v-oval": "垂直椭圆", + "v-cylinder": "垂直圆柱", + "v-capsule": "垂直胶囊", + "rectangle": "矩形", + "h-oval": "水平椭圆", + "h-ellipse": "水平椭圆形", + "h-dish-ends": "水平碟形封头", + "h-cylinder": "水平圆柱", + "h-capsule": "水平胶囊", + "h-elliptical_2_1": "水平 2:1 椭圆形", + "icon": "卡片图标", + "title": "卡片标题", + "units": "单位", + "color-and-font": "颜色和字体", + "shape-attribute-name": "属性名称", + "total-volume-required": "总容量为必填项。", + "attribute-name-required": "属性名称为必填项。", + "attribute-key-not-set": "属性“{{attributeName}}”键未设置", + "attribute-key-invalid": "属性“{{attributeName}}”键无效" + }, + "aggregated-value-card": { + "subtitle": "副标题", + "chart": "图表", + "values": "值", + "value-appearance": "值外观", + "position": "位置", + "position-center": "居中", + "position-right-top": "右上", + "position-right-bottom": "右下", + "position-left-top": "左上", + "position-left-bottom": "左下", + "font": "字体", + "color": "颜色", + "arrow": "箭头", + "display-up-down-arrow": "显示上/下箭头", + "add-value": "添加值", + "remove-value": "移除值", + "no-values": "未配置值", + "aggregation": "聚合", + "aggregated-value-card-style": "聚合值卡片样式", + "auto-scale": "自动缩放" + }, + "value-chart-card": { + "layout": "布局", + "layout-left": "左", + "layout-right": "右", + "auto-scale": "自动缩放", + "icon": "图标", + "value": "值", + "chart": "图表", + "value-chart-card-style": "值图表卡片样式" + }, + "progress-bar": { + "layout": "布局", + "layout-default": "默认", + "layout-simplified": "简化", + "auto-scale": "自动缩放", + "icon": "图标", + "value": "值", + "range": "范围", + "min": "最小值", + "max": "最大值", + "range-ticks": "范围刻度", + "bar": "条形", + "bar-color": "条形颜色", + "bar-background": "条形背景", + "progress-bar-card-style": "进度条卡片样式" + }, + "notification": { + "max-notification-display": "最大通知显示数量", + "counter": "计数器", + "counter-hint": "当启用“部件标题”时将显示计数器", + "icon": "图标", + "counter-value": "值", + "counter-color": "颜色", + "notification-button": "通知按钮", + "button-view-all": "查看全部", + "button-filter": "筛选", + "type-filter": "类型筛选", + "button-mark-read": "全部标记为已读", + "notification-types": "通知类型", + "notification-type": "通知类型", + "search-type": "搜索类型", + "any-type": "任意类型" + }, + "alarm-count": { + "alarm-count-card-style": "告警计数卡片样式" + }, + "entity-count": { + "entity-count-card-style": "实体计数卡片样式" + }, + "count": { + "layout": "布局", + "layout-column": "列", + "layout-row": "行", + "label": "标签", + "icon": "图标", + "icon-background": "图标背景", + "value": "值", + "chevron": "箭头指示", + "auto-scale": "自动缩放" + }, + "table": { + "common-table-settings": "通用表格设置", + "enable-search": "启用搜索", + "enable-sticky-header": "始终显示表头", + "enable-sticky-action": "始终显示操作列", + "hidden-cell-button-display-mode": "隐藏单元格按钮操作显示模式", + "show-empty-space-hidden-action": "显示空白代替隐藏的单元格按钮操作", + "dont-reserve-space-hidden-action": "不为隐藏的操作按钮预留空间", + "display-timestamp": "时间戳", + "display-pagination": "显示分页", + "default-page-size": "默认页面大小", + "page-step-settings": "分页步长设置", + "page-step-count": "步数", + "page-step-increment": "步长增量", + "page-step-count-format-message": "应为 1 到 100 之间的整数值。", + "page-step-increment-format-message": "应为大于或等于 1 的整数值。", + "use-entity-label-tab-name": "在标签页名称中使用实体标签", + "hide-empty-lines": "隐藏空行", + "row-style": "行样式", + "use-row-style-function": "使用行样式函数", + "row-style-function": "行样式函数", + "cell-style": "单元格样式", + "use-cell-style-function": "使用单元格样式函数", + "cell-style-function": "单元格样式函数", + "cell-content": "单元格内容", + "use-cell-content-function": "使用单元格内容函数", + "cell-content-function": "单元格内容函数", + "show-latest-data-column": "显示最新数据列", + "latest-data-column-order": "最新数据列顺序", + "entities-table-title": "实体表格标题", + "enable-select-column-display": "启用选择显示列", + "display-entity-name": "显示实体名称列", + "entity-name-column-title": "实体名称列标题", + "display-entity-label": "显示实体标签列", + "entity-label-column-title": "实体标签列标题", + "display-entity-type": "显示实体类型列", + "default-sort-order": "默认排序", + "custom-title": "自定义表头标题", + "column-width": "列宽(px 或 %)", + "default-column-visibility": "默认列可见性", + "column-visibility-visible": "可见", + "column-visibility-hidden": "隐藏", + "column-visibility-hidden-mobile": "在移动模式下隐藏", + "column-selection-to-display": "在“显示列”中的列选择", + "column-selection-to-display-enabled": "启用", + "column-selection-to-display-disabled": "禁用", + "alarms-table-title": "告警表格标题", + "enable-alarms-selection": "启用告警选择", + "enable-alarms-search": "启用告警搜索", + "enable-alarm-filter": "启用告警筛选", + "display-alarm-details": "显示告警详情", + "allow-alarms-ack": "允许告警确认", + "allow-alarms-clear": "允许告警清除", + "display-alarm-activity": "显示告警活动", + "allow-alarms-assign": "允许告警分配", + "columns": "列", + "column-settings": "列设置", + "remove-column": "移除列", + "add-column": "添加列", + "no-columns": "未配置列", + "columns-to-display": "显示列", + "table-header": "表头", + "header-buttons": "表头按钮", + "table-buttons": "表格按钮", + "pagination": "分页", + "rows": "行", + "timeseries-column-error": "至少应指定一个时间序列列", + "alarm-column-error": "至少应指定一个告警列", + "table-tabs": "表格标签页", + "show-cell-actions-menu-mobile": "在移动模式下显示单元格操作下拉菜单", + "disable-sorting": "禁用排序" + }, + "latest-chart": { + "total": "总计", + "auto-scale": "自动缩放", + "clockwise-layout": "顺时针布局", + "sort-series": "按标签排序系列", + "tooltip-value-type-absolute": "绝对值", + "tooltip-value-type-percentage": "百分比" + }, + "pie-chart": { + "pie-chart-appearance": "饼图外观", + "label": "标签", + "border": "边框", + "radius": "半径", + "pie-chart-card-style": "饼图卡片样式" + }, + "radar-chart": { + "radar-appearance": "雷达图外观", + "shape": "形状", + "shape-polygon": "多边形", + "shape-circle": "圆形", + "color": "颜色", + "line": "线条", + "points": "数据点", + "points-label": "数据点标签", + "radar-axis": "雷达轴", + "axis-label": "轴标签", + "ticks-label": "刻度标签", + "radar-chart-style": "雷达图样式", + "max-axes-scaling": "最大轴缩放", + "max-axes-scaling-hint": "选择每个雷达轴是有独立的最大值(独立)还是共享基于部件数据集的所有轴中的最大值(共用)。", + "separate": "独立", + "common": "共用" + }, + "time-series-chart": { + "chart": "图表", + "chart-style": "图表样式", + "data-zoom": "数据缩放", + "stack-mode": "堆叠模式", + "stack-mode-hint": "在图表上堆叠系列。具有相同单位的系列将叠放在一起。", + "axes": "轴", + "y-axes": "Y 轴", + "line-type": "线条类型", + "line-width": "线条宽度", + "type-line": "折线", + "type-bar": "柱状", + "type-point": "散点", + "no-aggregation-bar-width-strategy": "非聚合数据的柱宽策略", + "no-aggregation-bar-width-strategy-group": "分组", + "no-aggregation-bar-width-strategy-separate": "独立", + "bar-group-width": "柱组宽度", + "bar-width": "柱宽度", + "bar-width-relative": "时间窗口百分比", + "bar-width-absolute": "绝对值(毫秒)", + "comparison": { + "comparison": "对比", + "comparison-hint": "对比仅适用于历史数据!", + "show": "显示", + "settings": "对比设置", + "show-values-for-comparison": "显示用于对比的历史数据", + "comparison-values-label": "对比数据键标签", + "comparison-values-label-auto": "自动", + "comparison-data-color": "对比数据颜色" + }, + "threshold": { + "thresholds": "阈值", + "source": "来源", + "key-value": "键 / 值", + "no-thresholds": "未配置阈值", + "add-threshold": "添加阈值", + "type-constant": "常量", + "type-latest-key": "键", + "type-entity": "实体", + "threshold-settings": "阈值设置", + "remove-threshold": "移除阈值", + "threshold-value-required": "阈值为必填项。", + "key-required": "键为必填项。", + "entity-key-required": "实体键为必填项。", + "line-appearance": "线条外观", + "line-color": "线条颜色", + "start-symbol": "起始符号", + "end-symbol": "结束符号", + "symbol-size": "大小", + "label": "标签", + "label-position-start": "起始", + "label-position-middle": "中间", + "label-position-end": "末尾", + "label-position-inside-start": "内部起始", + "label-position-inside-start-top": "内部起始上方", + "label-position-inside-start-bottom": "内部起始下方", + "label-position-inside-middle": "内部中间", + "label-position-inside-middle-top": "内部中间上方", + "label-position-inside-middle-bottom": "内部中间下方", + "label-position-inside-end": "内部末尾", + "label-position-inside-end-top": "内部末尾上方", + "label-position-inside-end-bottom": "内部末尾下方", + "label-background": "标签背景" + }, + "state": { + "states": "状态", + "label": "标签", + "ticks-value": "刻度值", + "source": "来源", + "value-range": "值 / 范围", + "no-states": "未配置状态", + "add-state": "添加状态", + "type-constant": "常量", + "type-range": "范围", + "from": "从", + "to": "到", + "remove-state": "移除状态" + }, + "grid": { + "grid": "网格", + "background-color": "背景颜色", + "border": "边框" + }, + "axis": { + "axes": "轴", + "x-axis": "X 轴", + "y-axis": "Y 轴", + "y-axis-settings": "Y 轴设置", + "comparison-x-axis-settings": "对比 X 轴设置", + "remove-y-axis": "移除 Y 轴", + "id": "Id", + "label": "标签", + "position": "位置", + "position-left": "左", + "position-right": "右", + "position-top": "上", + "position-bottom": "下", + "tick-labels": "刻度标签", + "ticks-formatter-function": "刻度格式化函数", + "ticks-generator-function": "刻度生成器函数", + "show-ticks": "显示刻度", + "show-line": "显示线条", + "show-split-lines": "显示分隔线", + "show-split-lines-x-axis-hint": "启用后,图表上将显示垂直线。", + "show-split-lines-y-axis-hint": "启用后,图表上将显示水平线。", + "ticks-interval": "刻度间隔", + "ticks-interval-hint": "强制设置轴的分段间隔。", + "split-number": "分段数", + "split-number-hint": "轴被分割的段数。", + "min": "最小值", + "max": "最大值", + "show": "显示", + "add-y-axis": "添加 Y 轴" + }, + "series": { + "legend-settings": "图例设置", + "show-in-legend": "在图例中显示", + "show-in-legend-hint": "在图例中显示系列名称和数据。", + "hidden-by-default": "默认隐藏", + "hidden-by-default-hint": "默认在图例中隐藏系列。", + "series-type": "系列类型", + "type": "类型", + "type-line": "折线", + "type-bar": "柱状", + "line": { + "line": "线条", + "show-line": "显示线条", + "step-line": "阶梯线", + "step-type-start": "起始", + "step-type-middle": "中间", + "step-type-end": "末尾", + "smooth-line": "平滑线" }, - "activity": { - "title": "活动" + "point": { + "points": "数据点", + "show-points": "显示数据点", + "point-label": "数据点标签", + "point-label-hint": "在系列数据点上方显示带有值的标签。", + "point-label-background": "数据点标签背景", + "point-shape": "数据点形状", + "point-size": "数据点大小" + } + } + }, + "wind-speed-direction": { + "layout": "布局", + "layout-default": "默认", + "layout-advanced": "高级", + "layout-simplified": "简化", + "values": "值", + "wind-direction": "风向", + "center-value": "中心值", + "icon": "图标", + "arrow": "箭头", + "ticks": "刻度", + "labels-type": "标签类型", + "directional-names": "方向名称", + "degrees": "度数", + "major-ticks": "主刻度", + "minor-ticks": "次刻度", + "wind-speed-direction-card-style": "风速和风向卡片样式", + "ticks-color": "刻度颜色", + "ticks-labels-type": "刻度标签类型", + "arrow-color": "箭头颜色" + }, + "value-source": { + "value-source": "值来源", + "predefined-value": "常量", + "entity-attribute": "实体属性", + "value": "值", + "value-required": "值为必填项。", + "key-required": "键为必填项。", + "entity-key-required": "实体键为必填项。", + "source-entity-alias": "源实体别名", + "source-entity-attribute": "源实体属性", + "type-constant": "常量", + "type-latest-key": "键", + "type-entity": "实体" + }, + "rpc-state": { + "initial-state": "初始状态", + "initial-state-hint": "获取组件初始状态(开/关)的操作。", + "disabled-state": "禁用状态", + "disabled-state-hint": "配置组件被禁用的条件。", + "turn-on": "开启", + "turn-on-hint": "当滑块切换为“开”时触发的操作", + "turn-off": "关闭", + "turn-off-hint": "当滑块切换为“关”时触发的操作", + "on": "开", + "off": "关", + "disabled": "已禁用" + }, + "value-action": { + "do-nothing": "不执行操作", + "execute-rpc": "执行 RPC", + "get-attribute": "获取属性", + "set-attribute": "设置属性", + "get-time-series": "获取时间序列", + "get-alarm-status": "获取告警状态", + "get-dashboard-state": "获取仪表板状态 ID", + "get-dashboard-state-object": "获取仪表板状态对象", + "add-time-series": "添加时间序列", + "execute-rpc-text": "执行 RPC 方法“{{methodName}}”", + "get-time-series-text": "使用时间序列“{{key}}”", + "get-attribute-text": "使用属性“{{key}}”", + "get-alarm-status-text": "使用告警状态", + "get-dashboard-state-text": "使用仪表板状态", + "get-dashboard-state-object-text": "使用仪表板状态对象", + "when-dashboard-state-is-text": "当仪表板状态 ID 为“{{state}}”时", + "when-dashboard-state-function-is-text": "当 f(仪表板状态 ID) 为“{{state}}”时", + "when-dashboard-state-object-function-is-text": "当 f(仪表板状态对象) 为“{{state}}”时", + "set-attribute-to-value-text": "将属性“{{key}}”设置为:{{value}}", + "add-time-series-value-text": "添加时间序列“{{key}}”值:{{value}}", + "set-attribute-text": "设置属性“{{key}}”", + "add-time-series-text": "添加时间序列“{{key}}”", + "action": "操作", + "value": "值", + "init-value-hint": "在设备发送数据之前将设置的值。", + "method": "方法", + "method-name-required": "方法名称为必填项。", + "request-timeout-ms": "RPC 请求超时(毫秒)", + "request-timeout-required": "请求超时为必填项。", + "min-request-timeout-error": "请求超时值应大于或等于 5000 毫秒(5 秒)。", + "request-persistent": "RPC 请求持久化", + "persistent-polling-interval": "持久化轮询间隔(毫秒)", + "persistent-polling-interval-hint": "获取持久化 RPC 命令响应的轮询间隔(毫秒)", + "persistent-polling-interval-required": "持久化轮询间隔为必填项。", + "min-persistent-polling-interval-error": "持久化轮询间隔值应大于或等于 1000 毫秒(1 秒)。", + "attribute-scope": "属性范围", + "attribute-key": "属性键", + "attribute-key-required": "属性键为必填项。", + "time-series-key": "时间序列键", + "time-series-key-required": "时间序列键为必填项。", + "action-result-converter": "操作结果转换器", + "converter-none": "无", + "converter-function": "函数", + "converter-constant": "常量", + "converter-value": "值", + "parse-value-function": "解析值函数", + "state-when-result-is": "当结果为“{{state}}”时", + "parameters": "参数", + "convert-value-function": "转换值函数", + "error": { + "target-entity-is-not-set": "未设置目标实体!", + "failed-to-perform-action": "执行 {{ actionLabel }} 操作失败。", + "invalid-attribute-scope": "{{entityType}} 实体不支持 {{scope}} 属性范围。" + } + }, + "widget-font": { + "font-settings": "字体设置", + "font-family": "字体族", + "size": "大小", + "relative-font-size": "相对字体大小(百分比)", + "font-style": "样式", + "font-style-normal": "常规", + "font-style-italic": "斜体", + "font-style-oblique": "倾斜", + "font-weight": "字重", + "font-weight-normal": "常规", + "font-weight-bold": "粗体", + "font-weight-bolder": "更粗", + "font-weight-lighter": "更细", + "color": "颜色", + "shadow-color": "阴影颜色", + "preview": "预览", + "line-height": "行高", + "auto": "自动" + }, + "home": { + "no-data-available": "暂无数据" + }, + "system-info": { + "cpu": "CPU", + "ram": "RAM", + "disk": "磁盘", + "cpu-warning-text": "CPU 使用率偏高。为避免系统故障,请优化系统性能。", + "cpu-critical-text": "CPU 使用率严重偏高。为避免系统故障,请优化系统性能。", + "ram-warning-text": "RAM 剩余空间不足。为避免系统故障,请优化系统性能或增加 RAM 容量。", + "ram-critical-text": "RAM 剩余空间严重不足。为避免系统故障,请优化系统性能或增加 RAM 容量。", + "disk-warning-text": "磁盘空间不足。为避免数据丢失,请释放或扩展磁盘空间。", + "disk-critical-text": "磁盘空间严重不足。为避免数据丢失,请释放或扩展磁盘空间。" + }, + "cluster-info": { + "service-id": "服务 ID", + "service-type": "服务类型", + "no-data": "暂无数据" + }, + "transport-messages": { + "title": "传输消息", + "info": "来自设备的所有消息" + }, + "activity": { + "title": "活动" + }, + "documentation": { + "title": "文档", + "add-link": "添加链接", + "add-link-title": "添加文档链接", + "name": "名称", + "name-required": "名称为必填项。", + "link": "链接", + "link-required": "链接为必填项。", + "columns": "列数" + }, + "quick-links": { + "title": "快速链接", + "add-link": "添加链接", + "add-link-title": "添加快速链接", + "quick-link": "快速链接", + "quick-link-required": "快速链接为必填项。", + "no-links-matching": "未找到与“{{name}}”匹配的链接。", + "columns": "列数" + }, + "recent-dashboards": { + "title": "仪表板", + "last": "最近查看", + "starred": "已收藏", + "name": "名称", + "last-viewed": "最近查看", + "no-last-viewed-dashboards": "暂无最近查看的仪表板" + }, + "configured-features": { + "title": "已配置功能", + "info": "需要配置的功能状态", + "email-feature": "Email", + "sms-feature": "短信", + "slack-feature": "Slack", + "oauth2-feature": "OAuth 2", + "2fa-feature": "双因素认证", + "feature-configured": "功能已配置。\n点击进行设置", + "feature-not-configured": "功能未配置。\n点击进行设置" + }, + "version-info": { + "title": "版本", + "contact-us": "联系我们", + "current-version": "当前版本", + "current": "当前", + "available-version": "可用版本", + "available": "可用", + "upgrade": "升级", + "version-is-up-to-date": "版本已是最新" + }, + "usage-info": { + "title": "使用情况", + "entities": "实体", + "api-calls": "API 调用" + }, + "functions": { + "title": "功能", + "pe-feature-tooltip": "仅适用于 ThingsBoard\nProfessional Edition", + "switch-to-pe": "切换到 PE", + "alarms": "告警", + "dashboards": "仪表板", + "entities-and-relations": "实体与关联", + "profiles": "配置", + "advanced-features": "高级功能", + "notification-center": "通知中心", + "api-usage": "API 使用情况", + "customers": "客户", + "customers-hierarchy": "客户层级", + "roles-and-permissions": "角色与权限", + "groups": "分组", + "integrations": "集成", + "solution-templates": "解决方案模板", + "scheduler": "调度器", + "white-labeling": "白标" + }, + "devices": { + "view-docs": "查看文档", + "inactive": "不活跃", + "active": "活跃", + "total": "总计" + }, + "alarms": { + "critical": "严重", + "assigned-to-me": "分配给我", + "total": "总计" + }, + "getting-started": { + "get-started": "开始使用", + "finish": "完成", + "done-welcome-title": "欢迎加入", + "done-welcome-text": "您做得非常棒!", + "sys-admin": { + "step1": { + "title": "创建租户和租户管理员", + "content": "

租户是拥有或管理设备和资产的个人或组织。租户可以拥有多个租户管理员用户、客户、设备和资产。

租户管理员可以在租户账户内创建和管理设备、资产、客户和仪表板。

请参考以下文档了解操作方法:

", + "how-to-create-tenant": "如何创建租户和租户管理员" }, - "documentation": { - "title": "文档", - "add-link": "添加链接", - "add-link-title": "添加文档链接", - "name": "名称", - "name-required": "名称是必填项。", - "link": "链接", - "link-required": "链接是必填项。", - "columns": "列" + "step2": { + "title": "配置功能:邮件服务器", + "content": "

邮件服务器配置对于用户激活、密码恢复和告警通知发送至关重要。

请参考以下文档了解操作方法:

", + "how-to-configure-mail-server": "如何配置邮件服务器" }, - "quick-links": { - "title": "快速链接", - "add-link": "添加链接", - "add-link-title": "添加快速链接", - "quick-link": "快速链接", - "quick-link-required": "快速链接是必填项。", - "no-links-matching": "找不到与'{{name}}'匹配的链接。", - "columns": "列" + "step3": { + "title": "配置功能:短信提供商", + "content": "

配置短信提供商,以便通过短信通知客户有关告警的信息。

请参考以下文档了解操作方法:

", + "how-to-configure-sms-provider": "如何配置短信提供商" }, - "recent-dashboards": { - "title": "仪表盘", - "last": "最近查看", - "starred": "已收藏", - "name": "名称", - "last-viewed": "最近查看", - "no-last-viewed-dashboards": "暂无最近查看的仪表盘" + "step4": { + "title": "配置功能:白标", + "content": "

无需编写代码,无需重启服务,即可轻松自定义您公司或产品的徽标和配色方案。

请参考以下文档了解操作方法:

" }, - "configured-features": { - "title": "配置的功能", - "info": "需要配置的功能状态", - "email-feature": "电子邮件", - "sms-feature": "短信", - "slack-feature": "Slack", - "oauth2-feature": "OAuth2.0", - "2fa-feature": "两步验证", - "feature-configured": "功能已配置", - "feature-not-configured": "功能未配置" + "step5": { + "title": "配置功能:双因素认证", + "content": "

通过双因素认证提高平台账户的安全性。

请参考以下文档了解操作方法:

" }, - "version-info": { - "title": "版本", - "contact-us": "联系我们", - "current-version": "当前版本", - "current": "当前", - "available-version": "可用版本", - "available": "可用", - "upgrade": "升级", - "version-is-up-to-date": "已经是最新版本" + "step6": { + "title": "配置功能:OAuth 2", + "content": "

通过 OAuth 2.0 单点登录功能简化租户和客户用户的登录流程。

请参考以下文档了解操作方法:

" + } + }, + "tenant-admin": { + "step1": { + "title": "创建设备", + "content": "

让我们通过界面将您的第一个设备接入平台。请参考以下文档了解操作方法:

", + "how-to-create-device": "如何创建设备" }, - "usage-info": { - "title": "使用情况", - "entities": "实体", - "api-calls": "API调用" + "step2": { + "title": "连接设备", + "content-before": "

要连接设备,您需要获取设备凭据。本指南建议使用默认自动生成的凭据,即访问令牌。

使用简单命令通过 HTTP 发布数据。请将 $ACCESS_TOKEN 替换为您的设备访问令牌:

", + "ubuntu": { + "install-curl": "为 Ubuntu 安装 cURL:" + }, + "macos": { + "install-curl": "为 MacOS 安装 cURL:" + }, + "windows": { + "install-curl": "从 Windows 10 b17063 开始,cURL 已默认可用。" + }, + "replace-access-token": "将 $ACCESS_TOKEN 替换为您的设备令牌:", + "content-after": "

您也可以使用其他协议,例如 MQTT、CoAP 等。

请参考以下文档了解操作方法:

", + "how-to-connect-device": "如何连接设备" }, - "functions": { - "title": "功能", - "pe-feature-tooltip": "仅适用于ThingsBoard专业版", - "switch-to-pe": "切换专业版", - "alarms": "告警", - "dashboards": "仪表盘", - "entities-and-relations": "实体和关系", - "profiles": "配置", - "advanced-features": "高级功能", - "notification-center": "通知中心", - "api-usage": "API使用情况", - "customers": "客户", - "customers-hierarchy": "客户层级", - "roles-and-permissions": "角色和权限", - "groups": "群组", - "integrations": "集成", - "solution-templates": "解决方案模板", - "scheduler": "调度器", - "white-labeling": "白标" + "step3": { + "title": "创建仪表板", + "content": "

创建仪表板以可视化来自资产、设备等实体的数据。

请参考以下文档了解操作方法:

", + "how-to-create-dashboard": "如何创建仪表板" }, - "devices": { - "view-docs": "查看文档", - "inactive": "非活动", - "active": "活动", - "total": "总数" + "step4": { + "title": "配置告警规则", + "alarm-rules": "告警规则", + "content": "

让我们在温度达到 25°C 时触发告警。请参考以下文档了解操作方法:

", + "how-to-configure-alarm-rules": "如何配置告警规则" }, - "alarms": { - "critical": "严重", - "assigned-to-me": "分配给我", - "total": "总数" + "step5": { + "title": "创建告警", + "content-before": "

要触发告警,请发送 26°C 或更高的遥测值。

", + "replace-access-token": "将 $ACCESS_TOKEN 替换为您的设备令牌:", + "content-after": "

请参考以下文档了解操作方法:

", + "how-to-create-alarm": "如何创建告警" }, - "getting-started": { - "get-started": "开始", - "finish": "完成", - "done-welcome-title": "欢迎加入我们", - "done-welcome-text": "你做得很好!", - "sys-admin": { - "step1": { - "title": "创建租户和租户管理员", - "content": "

租户是拥有或生产设备和资产的个人或组织,租户可以有多个租户管理员用户、客户、设备和资产。

租户管理员可以在租户账户中创建和管理设备、资产、客户和仪表板。

请按照文档进行操作:

", - "how-to-create-tenant": "如何创建租户和租户管理员" - }, - "step2": { - "title": "配置功能:邮件服务", - "content": "

邮件服务配置对于用户激活、密码恢复和报警通知的发送非常重要。

请按照文档进行操作:

", - "how-to-configure-mail-server": "如何配置邮件服务器" - }, - "step3": { - "title": "配置功能:短信提供商", - "content": "

配置短信提供商,通过短信向客户发送报警通知。

请按照文档进行操作:

", - "how-to-configure-sms-provider": "如何配置短信提供商" - }, - "step4": { - "title": "配置功能:双因素认证", - "content": "

通过双因素认证提高平台账户的安全性。

请按照文档进行操作:

", - "how-to-configure-2fa": "如何配置双因素认证" - }, - "step5": { - "title": "配置功能:OAuth 2", - "content": "

通过OAuth 2.0的单点登录功能,简化租户和客户用户的登录过程。

请按照文档进行操作:

", - "how-to-configure-oauth2": "如何配置OAuth 2" - }, - "step6": { - "title": "配置功能:Slack", - "content": "

根据设置的通知规则,通过Slack向租户和客户用户发送通知。

请按照文档进行操作:

", - "how-to-configure-notifications": "如何配置Slack" - } - }, - "tenant-admin": { - "step1": { - "title": "创建设备", - "content": "

让我们通过用户界面将您的第一个设备添加到平台。请按照文档进行操作:

", - "how-to-create-device": "如何创建设备" - }, - "step2": { - "title": "连接设备", - "content-before": "

要连接设备,您需要获取设备凭据。我们建议在本指南中使用默认生成的凭据,即访问令牌。

使用简单的命令通过HTTP发布数据。不要忘记将$ACCESS_TOKEN替换为您的设备访问令牌:

", - "ubuntu": { - "install-curl": "Ubuntu上安装cURL:" - }, - "macos": { - "install-curl": "MacOS上安装cURL:" - }, - "windows": { - "install-curl": "从Windows 10 b17063开始,cURL已默认可用。" - }, - "replace-access-token": "将$ACCESS_TOKEN替换为您的设备令牌:", - "content-after": "

您还可以使用其他协议如MQTT、CoAP等。

请按照文档进行操作:

", - "how-to-connect-device": "如何连接设备" - }, - "step3": { - "title": "创建仪表板", - "content": "

创建一个仪表板,用于可视化来自实体(如资产、设备等)的数据。

请按照文档进行操作:

", - "how-to-create-dashboard": "如何创建仪表板" - }, - "step4": { - "title": "配置报警规则", - "alarm-rules": "报警规则", - "content": "

当温度达到25°C时,让我们触发一个报警。请按照文档进行操作:

", - "how-to-configure-alarm-rules": "如何配置报警规则" - }, - "step5": { - "title": "创建报警", - "content-before": "

要触发报警,请发送一个新的温度值,该值为26℃或更高。

", - "replace-access-token": "将$ACCESS_TOKEN替换为您的设备令牌:", - "content-after": "

请按照文档进行操作:

", - "how-to-create-alarm": "如何创建报警" - }, - "step6": { - "title": "创建客户并分配仪表板", - "content": "

通过创建终端用户仪表板,客户用户只能查看自己的设备,另一个客户的数据将被隐藏。

请按照文档进行操作:

", - "how-to-create-customer-and-assign-dashboard": "如何创建客户并分配仪表板" - } - } - } - }, - "color": { - "color": "颜色" - }, - "icon": { - "icon": "图标", - "icons": "图标", - "select-icon": "选择图标", - "material-icons": "素材图标", - "show-all": "显示所有图标", - "search-icon": "搜索图标", - "no-icons-found": "没有找到符合'{{iconSearch}}'的图标" - }, - "phone-input": { - "phone-input-label": "手机号码", - "phone-input-required": "手机号码必填", - "phone-input-validation": "手机号码无效或不存在", - "phone-input-pattern": "无效的手机号码应为E.164格式例如:{{phoneNumber}}", - "phone-input-hint": "E.164格式手机号码例如:{{phoneNumber}}" - }, - "custom": { - "widget-action": { - "action-cell-button": "动作单元格按钮", - "row-click": "点击行时", - "cell-click": "点击单元格时", - "polygon-click": "点击多边形时", - "marker-click": "点击标记时", - "circle-click": "点击圆圈时", - "tooltip-tag-action": "文字提示标签操作", - "node-selected": "选择节点时", - "element-click": "点击HTML元素时", - "pie-slice-click": "点击切片时", - "row-double-click": "双击行时", - "cell-double-click": "双击单元格时", - "card-click": "点击卡片时", - "click": "点击时" + "step6": { + "title": "创建客户并共享仪表板", + "content": "

通过创建终端用户仪表板,客户用户只能查看自己的设备,其他客户的数据将被隐藏。

请参考以下文档了解操作方法:

" } - }, - "paginator": { - "items-per-page": "每页数量:", - "first-page-label": "首页", - "last-page-label": "尾页", - "next-page-label": "下一页", - "previous-page-label": "上一页", - "items-per-page-separator": "至" - }, - "language": { - "language": "语言" + } + } + }, + "icon": { + "icon": "图标", + "icons": "图标", + "select-icon": "选择图标", + "material-icons": "Material 图标", + "show-all": "显示全部图标", + "search-icon": "搜索图标", + "no-icons-found": "未找到与“{{iconSearch}}”匹配的图标" + }, + "phone-input": { + "phone-input-label": "电话号码", + "phone-input-required": "电话号码为必填项", + "phone-input-validation": "电话号码无效或不存在", + "phone-input-pattern": "电话号码无效。应为 E.164 格式,例如 {{phoneNumber}}", + "phone-input-hint": "E.164 格式的电话号码,例如 {{phoneNumber}}" + }, + "custom": { + "widget-action": { + "action-cell-button": "操作单元格按钮", + "row-click": "单击行时", + "cell-click": "单击单元格时", + "polygon-click": "单击多边形时", + "marker-click": "单击标记时", + "circle-click": "单击圆形时", + "tooltip-tag-action": "提示标签操作", + "node-selected": "选中节点时", + "element-click": "单击 HTML 元素时", + "pie-slice-click": "单击扇区时", + "row-double-click": "双击行时", + "cell-double-click": "双击单元格时", + "card-click": "单击卡片时", + "click": "单击时" } -} + }, + "paginator": { + "items-per-page": "每页条目数:", + "first-page-label": "第一页", + "last-page-label": "最后一页", + "next-page-label": "下一页", + "previous-page-label": "上一页", + "items-per-page-separator": "/" + }, + "language": { + "language": "语言" + } +} \ No newline at end of file From ee606346a084622597f6a0ebb77f1eea9624999f Mon Sep 17 00:00:00 2001 From: Vladyslav_Prykhodko Date: Fri, 13 Mar 2026 16:41:44 +0200 Subject: [PATCH 2/2] Improve and extend translations for da_DK, de_DE, el_GR, es_ES, fr_FR, hi_IN, it_IT, ja_JP, nl_NL, no_NO, pt_BR, tr_TR, uk_UA, and zh_CN locales. --- .../assets/locale/locale.constant-da_DK.json | 10 +- .../assets/locale/locale.constant-de_DE.json | 10 +- .../assets/locale/locale.constant-el_GR.json | 10 +- .../assets/locale/locale.constant-es_ES.json | 10 +- .../assets/locale/locale.constant-fr_FR.json | 10 +- .../assets/locale/locale.constant-hi_IN.json | 10 +- .../assets/locale/locale.constant-it_IT.json | 10 +- .../assets/locale/locale.constant-ja_JP.json | 10 +- .../assets/locale/locale.constant-nl_NL.json | 10 +- .../assets/locale/locale.constant-no_NO.json | 10 +- .../assets/locale/locale.constant-pt_BR.json | 9962 ++++++++- .../assets/locale/locale.constant-tr_TR.json | 10 +- .../assets/locale/locale.constant-uk_UA.json | 8 +- .../assets/locale/locale.constant-zh_CN.json | 17908 +++++++++------- 14 files changed, 19282 insertions(+), 8706 deletions(-) diff --git a/ui-ngx/src/assets/locale/locale.constant-da_DK.json b/ui-ngx/src/assets/locale/locale.constant-da_DK.json index 69ab79f43b..3ccb1678ac 100644 --- a/ui-ngx/src/assets/locale/locale.constant-da_DK.json +++ b/ui-ngx/src/assets/locale/locale.constant-da_DK.json @@ -803,7 +803,7 @@ "no-assets-matching": "Ingen assets matcher '{{entity}}'.", "asset-required": "Asset er påkrævet", "name-starts-with": "Asset-navneudtryk", - "help-text": "Brug '%' efter behov: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with'.", + "help-text": "Brug '%' efter behov: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Søg assets", "import": "Importér assets", "asset-file": "Assetfil", @@ -910,9 +910,9 @@ "processing-timeouts": "${entityName} behandlingstimeouts", "rule-chain": "Rule Chain", "rule-engine": "Rule Engine", - "rule-engine-daily-activity": "Daglig aktivitet for Rule Engine", "rule-engine-executions": "Rule Engine-udførelser", "rule-engine-hourly-activity": "Timebaseret aktivitet for Rule Engine", + "rule-engine-daily-activity": "Daglig aktivitet for Rule Engine", "rule-engine-monthly-activity": "Månedlig aktivitet for Rule Engine", "rule-engine-statistics": "Statistik for Rule Engine", "rule-node": "Rule Node", @@ -2124,7 +2124,7 @@ "remove-alias": "Fjern enhedsalias", "add-alias": "Tilføj enhedsalias", "name-starts-with": "Udtryk for enhedsnavn", - "help-text": "Brug '%' efter behov: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "Brug '%' efter behov: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Enhedsliste", "use-device-name-filter": "Brug filter", "device-list-empty": "Ingen enheder valgt.", @@ -3039,7 +3039,7 @@ "no-entities-text": "Ingen enheder fundet", "no-entity-types-matching": "Ingen enhedstyper matcher '{{entityType}}'.", "name-starts-with": "Navneudtryk", - "help-text": "Brug '%' efter behov: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'.", + "help-text": "Brug '%' efter behov: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Brug filter", "entity-list-empty": "Ingen enheder valgt.", "entity-type-list-required": "Mindst én enhedstype skal vælges.", @@ -3242,7 +3242,7 @@ "remove-alias": "Fjern entitetsvisningsalias", "add-alias": "Tilføj entitetsvisningsalias", "name-starts-with": "Entitetsvisningsnavn udtryk", - "help-text": "Brug '%' efter behov: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "Brug '%' efter behov: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Entitetsvisningsliste", "use-entity-view-name-filter": "Brug filter", "entity-view-list-empty": "Ingen entitetsvisninger valgt.", diff --git a/ui-ngx/src/assets/locale/locale.constant-de_DE.json b/ui-ngx/src/assets/locale/locale.constant-de_DE.json index 78a744a68d..9aefa0be37 100644 --- a/ui-ngx/src/assets/locale/locale.constant-de_DE.json +++ b/ui-ngx/src/assets/locale/locale.constant-de_DE.json @@ -803,7 +803,7 @@ "no-assets-matching": "Keine Assets gefunden, die mit '{{entity}}' übereinstimmen.", "asset-required": "Asset ist erforderlich", "name-starts-with": "Ausdruck für Assetnamen", - "help-text": "Verwenden Sie '%' je nach Bedarf: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with'.", + "help-text": "Verwenden Sie '%' nach Bedarf: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Assets suchen", "import": "Assets importieren", "asset-file": "Asset-Datei", @@ -910,9 +910,9 @@ "processing-timeouts": "${entityName} Verarbeitungszeitüberschreitungen", "rule-chain": "Regelkette", "rule-engine": "Regel-Engine", - "rule-engine-daily-activity": "Tägliche Aktivität der Regel-Engine", "rule-engine-executions": "Ausführungen der Regel-Engine", "rule-engine-hourly-activity": "Stündliche Aktivität der Regel-Engine", + "rule-engine-daily-activity": "Tägliche Aktivität der Regel-Engine", "rule-engine-monthly-activity": "Monatliche Aktivität der Regel-Engine", "rule-engine-statistics": "Regel-Engine-Statistiken", "rule-node": "Regelknoten", @@ -2124,7 +2124,7 @@ "remove-alias": "Gerätealias entfernen", "add-alias": "Gerätealias hinzufügen", "name-starts-with": "Ausdruck für Gerätename", - "help-text": "Verwenden Sie '%' bei Bedarf: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "Verwenden Sie '%' nach Bedarf: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Geräteliste", "use-device-name-filter": "Filter verwenden", "device-list-empty": "Keine Geräte ausgewählt.", @@ -3039,7 +3039,7 @@ "no-entities-text": "Keine Entitäten gefunden", "no-entity-types-matching": "Keine Entitätstypen gefunden, die mit '{{entityType}}' übereinstimmen.", "name-starts-with": "Namensausdruck", - "help-text": "Verwenden Sie '%' nach Bedarf: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'.", + "help-text": "Verwenden Sie '%' nach Bedarf: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Filter verwenden", "entity-list-empty": "Keine Entitäten ausgewählt.", "entity-type-list-required": "Mindestens ein Entitätstyp sollte ausgewählt werden.", @@ -3242,7 +3242,7 @@ "remove-alias": "Entitätsansicht-Alias entfernen", "add-alias": "Entitätsansicht-Alias hinzufügen", "name-starts-with": "Namensausdruck für Entitätsansicht", - "help-text": "Verwenden Sie '%' nach Bedarf: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "Verwenden Sie '%' nach Bedarf: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Liste der Entitätsansichten", "use-entity-view-name-filter": "Filter verwenden", "entity-view-list-empty": "Keine Entitätsansichten ausgewählt.", diff --git a/ui-ngx/src/assets/locale/locale.constant-el_GR.json b/ui-ngx/src/assets/locale/locale.constant-el_GR.json index 1583faa8e0..8e238b0f3b 100644 --- a/ui-ngx/src/assets/locale/locale.constant-el_GR.json +++ b/ui-ngx/src/assets/locale/locale.constant-el_GR.json @@ -803,7 +803,7 @@ "no-assets-matching": "Δεν βρέθηκαν περιουσιακά στοιχεία που να ταιριάζουν με '{{entity}}'.", "asset-required": "Απαιτείται περιουσιακό στοιχείο", "name-starts-with": "Έκφραση ονόματος περιουσιακού στοιχείου", - "help-text": "Χρησιμοποιήστε το '%' κατά περίπτωση: '%περιουσιακό_όνομα%', '%περιουσιακό_όνομα_λήγει', 'περιουσιακό_ξεκινά_με'.", + "help-text": "Χρησιμοποιήστε '%' ανάλογα με τις ανάγκες: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Αναζήτηση περιουσιακών στοιχείων", "import": "Εισαγωγή περιουσιακών στοιχείων", "asset-file": "Αρχείο περιουσιακών στοιχείων", @@ -910,9 +910,9 @@ "processing-timeouts": "Χρονικά όρια επεξεργασίας ${entityName}", "rule-chain": "Αλυσίδα κανόνων", "rule-engine": "Μηχανή κανόνων", - "rule-engine-daily-activity": "Ημερήσια δραστηριότητα μηχανής κανόνων", "rule-engine-executions": "Εκτελέσεις μηχανής κανόνων", "rule-engine-hourly-activity": "Ωριαία δραστηριότητα μηχανής κανόνων", + "rule-engine-daily-activity": "Ημερήσια δραστηριότητα μηχανής κανόνων", "rule-engine-monthly-activity": "Μηνιαία δραστηριότητα μηχανής κανόνων", "rule-engine-statistics": "Στατιστικά μηχανής κανόνων", "rule-node": "Κόμβος κανόνα", @@ -2124,7 +2124,7 @@ "remove-alias": "Αφαίρεση ψευδωνύμου συσκευής", "add-alias": "Προσθήκη ψευδωνύμου συσκευής", "name-starts-with": "Έκφραση ονόματος συσκευής", - "help-text": "Χρησιμοποιήστε '%' όπως απαιτείται: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "Χρησιμοποιήστε '%' ανάλογα με τις ανάγκες: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Λίστα συσκευών", "use-device-name-filter": "Χρήση φίλτρου", "device-list-empty": "Δεν έχουν επιλεγεί συσκευές.", @@ -3039,7 +3039,7 @@ "no-entities-text": "Δεν βρέθηκαν οντότητες", "no-entity-types-matching": "Δεν βρέθηκαν τύποι οντοτήτων που να ταιριάζουν με '{{entityType}}'.", "name-starts-with": "Έκφραση ονόματος", - "help-text": "Χρησιμοποιήστε '%' ανάλογα με την ανάγκη: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'.", + "help-text": "Χρησιμοποιήστε '%' ανάλογα με τις ανάγκες: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Χρήση φίλτρου", "entity-list-empty": "Δεν επιλέχθηκαν οντότητες.", "entity-type-list-required": "Πρέπει να επιλεγεί τουλάχιστον ένας τύπος οντότητας.", @@ -3242,7 +3242,7 @@ "remove-alias": "Αφαίρεση ψευδωνύμου προβολής οντότητας", "add-alias": "Προσθήκη ψευδωνύμου προβολής οντότητας", "name-starts-with": "Έκφραση ονόματος προβολής οντότητας", - "help-text": "Χρησιμοποιήστε '%' όπως απαιτείται: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "Χρησιμοποιήστε '%' ανάλογα με τις ανάγκες: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Λίστα προβολών οντοτήτων", "use-entity-view-name-filter": "Χρήση φίλτρου", "entity-view-list-empty": "Δεν έχουν επιλεγεί προβολές οντοτήτων.", diff --git a/ui-ngx/src/assets/locale/locale.constant-es_ES.json b/ui-ngx/src/assets/locale/locale.constant-es_ES.json index 28e4484572..d6c30dfd40 100644 --- a/ui-ngx/src/assets/locale/locale.constant-es_ES.json +++ b/ui-ngx/src/assets/locale/locale.constant-es_ES.json @@ -803,7 +803,7 @@ "no-assets-matching": "No se encontraron activos que coincidan con '{{entity}}'.", "asset-required": "Se requiere un activo", "name-starts-with": "Expresión del nombre del activo", - "help-text": "Usa '%' según sea necesario: '%nombre_activo_contiene%', '%nombre_activo_termina', 'activo_empieza_con'.", + "help-text": "Usa '%' según sea necesario: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Buscar activos", "import": "Importar activos", "asset-file": "Archivo de activos", @@ -910,9 +910,9 @@ "processing-timeouts": "Tiempos de espera de procesamiento de ${entityName}", "rule-chain": "Cadena de reglas", "rule-engine": "Motor de reglas", - "rule-engine-daily-activity": "Actividad diaria del motor de reglas", "rule-engine-executions": "Ejecuciones del motor de reglas", "rule-engine-hourly-activity": "Actividad por hora del motor de reglas", + "rule-engine-daily-activity": "Actividad diaria del motor de reglas", "rule-engine-monthly-activity": "Actividad mensual del motor de reglas", "rule-engine-statistics": "Estadísticas del motor de reglas", "rule-node": "Nodo de regla", @@ -2124,7 +2124,7 @@ "remove-alias": "Eliminar alias de dispositivo", "add-alias": "Agregar alias de dispositivo", "name-starts-with": "Expresión del nombre del dispositivo", - "help-text": "Usa '%' según sea necesario: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "Usa '%' según sea necesario: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Lista de dispositivos", "use-device-name-filter": "Usar filtro", "device-list-empty": "No se seleccionaron dispositivos.", @@ -3039,7 +3039,7 @@ "no-entities-text": "No se encontraron entidades", "no-entity-types-matching": "No se encontraron tipos de entidad que coincidan con '{{entityType}}'.", "name-starts-with": "Expresión de nombre", - "help-text": "Use '%' según sea necesario: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'.", + "help-text": "Usa '%' según sea necesario: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Usar filtro", "entity-list-empty": "No hay entidades seleccionadas.", "entity-type-list-required": "Se debe seleccionar al menos un tipo de entidad.", @@ -3242,7 +3242,7 @@ "remove-alias": "Eliminar alias de vista de entidad", "add-alias": "Agregar alias de vista de entidad", "name-starts-with": "Expresión del nombre de la vista de entidad", - "help-text": "Use '%' según sea necesario: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "Usa '%' según sea necesario: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Lista de vistas de entidad", "use-entity-view-name-filter": "Usar filtro", "entity-view-list-empty": "No se seleccionaron vistas de entidad.", diff --git a/ui-ngx/src/assets/locale/locale.constant-fr_FR.json b/ui-ngx/src/assets/locale/locale.constant-fr_FR.json index 989b252cc2..7f03212914 100644 --- a/ui-ngx/src/assets/locale/locale.constant-fr_FR.json +++ b/ui-ngx/src/assets/locale/locale.constant-fr_FR.json @@ -803,7 +803,7 @@ "no-assets-matching": "Aucun actif correspondant à '{{entity}}' trouvé.", "asset-required": "L'actif est requis", "name-starts-with": "Expression du nom de l'actif", - "help-text": "Utilisez '%' selon le besoin : '%nom_actif_contient%', '%nom_actif_termine', 'actif_commence_par'.", + "help-text": "Utilisez '%' selon vos besoins : '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Rechercher des actifs", "import": "Importer des actifs", "asset-file": "Fichier d'actifs", @@ -910,9 +910,9 @@ "processing-timeouts": "Expirations de traitement ${entityName}", "rule-chain": "Chaîne de règles", "rule-engine": "Moteur de règles", - "rule-engine-daily-activity": "Activité quotidienne du moteur de règles", "rule-engine-executions": "Exécutions du moteur de règles", "rule-engine-hourly-activity": "Activité horaire du moteur de règles", + "rule-engine-daily-activity": "Activité quotidienne du moteur de règles", "rule-engine-monthly-activity": "Activité mensuelle du moteur de règles", "rule-engine-statistics": "Statistiques du moteur de règles", "rule-node": "Nœud de règle", @@ -2124,7 +2124,7 @@ "remove-alias": "Supprimer l'alias de l'appareil", "add-alias": "Ajouter un alias d'appareil", "name-starts-with": "Expression du nom de l'appareil", - "help-text": "Utilisez '%' selon le besoin : '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "Utilisez '%' selon vos besoins : '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Liste des appareils", "use-device-name-filter": "Utiliser un filtre", "device-list-empty": "Aucun appareil sélectionné.", @@ -3039,7 +3039,7 @@ "no-entities-text": "Aucune entité trouvée", "no-entity-types-matching": "Aucun type d'entité correspondant à '{{entityType}}' n'a été trouvé.", "name-starts-with": "Expression du nom", - "help-text": "Utilisez '%' selon le besoin : '%nom_entité_contient%', '%nom_entité_se_termine', 'entité_commence_par'.", + "help-text": "Utilisez '%' selon vos besoins : '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Utiliser le filtre", "entity-list-empty": "Aucune entité sélectionnée.", "entity-type-list-required": "Au moins un type d'entité doit être sélectionné.", @@ -3242,7 +3242,7 @@ "remove-alias": "Supprimer l'alias de la vue d'entité", "add-alias": "Ajouter un alias de vue d'entité", "name-starts-with": "Expression du nom de la vue d'entité", - "help-text": "Utilisez '%' selon le besoin : '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "Utilisez '%' selon vos besoins : '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Liste des vues d'entité", "use-entity-view-name-filter": "Utiliser un filtre", "entity-view-list-empty": "Aucune vue d'entité sélectionnée.", diff --git a/ui-ngx/src/assets/locale/locale.constant-hi_IN.json b/ui-ngx/src/assets/locale/locale.constant-hi_IN.json index ef5707a0bd..afd71d0305 100644 --- a/ui-ngx/src/assets/locale/locale.constant-hi_IN.json +++ b/ui-ngx/src/assets/locale/locale.constant-hi_IN.json @@ -803,7 +803,7 @@ "no-assets-matching": "'{{entity}}' से मेल खाता कोई एसेट नहीं मिला।", "asset-required": "एसेट आवश्यक है।", "name-starts-with": "एसेट नाम अभिव्यक्ति", - "help-text": "ज़रूरत के अनुसार '%' का उपयोग करें: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with'.", + "help-text": "आवश्यकतानुसार '%' का उपयोग करें: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "एसेट खोजें", "import": "एसेट आयात करें", "asset-file": "एसेट फ़ाइल", @@ -910,9 +910,9 @@ "processing-timeouts": "${entityName} प्रोसेसिंग टाइमआउट", "rule-chain": "रूल चेन", "rule-engine": "रूल इंजन", - "rule-engine-daily-activity": "रूल इंजन की दैनिक सक्रियता", "rule-engine-executions": "रूल इंजन निष्पादन", "rule-engine-hourly-activity": "रूल इंजन की प्रति घंटा सक्रियता", + "rule-engine-daily-activity": "रूल इंजन की दैनिक सक्रियता", "rule-engine-monthly-activity": "रूल इंजन की मासिक सक्रियता", "rule-engine-statistics": "रूल इंजन सांख्यिकी", "rule-node": "रूल नोड", @@ -2124,7 +2124,7 @@ "remove-alias": "डिवाइस उपनाम हटाएँ", "add-alias": "डिवाइस उपनाम जोड़ें", "name-starts-with": "डिवाइस नाम अभिव्यक्ति", - "help-text": "आवश्यकता अनुसार '%' का उपयोग करें: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "आवश्यकतानुसार '%' का उपयोग करें: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "डिवाइस सूची", "use-device-name-filter": "फ़िल्टर का उपयोग करें", "device-list-empty": "कोई डिवाइस चयनित नहीं है।", @@ -3039,7 +3039,7 @@ "no-entities-text": "कोई एंटिटी नहीं मिली.", "no-entity-types-matching": "'{{entityType}}' से मेल खाने वाले कोई एंटिटी प्रकार नहीं मिले.", "name-starts-with": "नाम अभिव्यक्ति", - "help-text": "ज़रूरत के अनुसार '%' का उपयोग करें: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'.", + "help-text": "आवश्यकतानुसार '%' का उपयोग करें: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "फ़िल्टर उपयोग करें", "entity-list-empty": "कोई एंटिटी चयनित नहीं है.", "entity-type-list-required": "कम से कम एक एंटिटी प्रकार चुना जाना चाहिए.", @@ -3242,7 +3242,7 @@ "remove-alias": "एंटिटी व्यू उपनाम हटाएँ", "add-alias": "एंटिटी व्यू उपनाम जोड़ें", "name-starts-with": "एंटिटी व्यू नाम अभिव्यक्ति", - "help-text": "ज़रूरत के अनुसार '%' का उपयोग करें: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "आवश्यकतानुसार '%' का उपयोग करें: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "एंटिटी व्यू सूची", "use-entity-view-name-filter": "फ़िल्टर उपयोग करें", "entity-view-list-empty": "कोई एंटिटी व्यू चयनित नहीं है.", diff --git a/ui-ngx/src/assets/locale/locale.constant-it_IT.json b/ui-ngx/src/assets/locale/locale.constant-it_IT.json index ab07b5ec48..d2173f7631 100644 --- a/ui-ngx/src/assets/locale/locale.constant-it_IT.json +++ b/ui-ngx/src/assets/locale/locale.constant-it_IT.json @@ -803,7 +803,7 @@ "no-assets-matching": "Nessun asset corrispondente a '{{entity}}' trovato.", "asset-required": "L'asset è obbligatorio", "name-starts-with": "Espressione nome asset", - "help-text": "Usa '%' secondo necessità: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with'.", + "help-text": "Usa '%' secondo necessità: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Cerca asset", "import": "Importa asset", "asset-file": "File asset", @@ -910,9 +910,9 @@ "processing-timeouts": "Timeout di elaborazione ${entityName}", "rule-chain": "Catena di regole", "rule-engine": "Motore di regole", - "rule-engine-daily-activity": "Attività giornaliera motore di regole", "rule-engine-executions": "Esecuzioni motore di regole", "rule-engine-hourly-activity": "Attività oraria motore di regole", + "rule-engine-daily-activity": "Attività giornaliera motore di regole", "rule-engine-monthly-activity": "Attività mensile motore di regole", "rule-engine-statistics": "Statistiche motore di regole", "rule-node": "Nodo regola", @@ -2124,7 +2124,7 @@ "remove-alias": "Rimuovi alias del dispositivo", "add-alias": "Aggiungi alias del dispositivo", "name-starts-with": "Espressione nome dispositivo", - "help-text": "Usa '%' secondo necessità: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "Usa '%' secondo necessità: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Elenco dispositivi", "use-device-name-filter": "Usa filtro", "device-list-empty": "Nessun dispositivo selezionato.", @@ -3039,7 +3039,7 @@ "no-entities-text": "Nessuna entità trovata", "no-entity-types-matching": "Nessun tipo entità corrispondente a '{{entityType}}' trovato.", "name-starts-with": "Espressione nome", - "help-text": "Usa '%' secondo necessità: '%nome_entità_contiene%', '%nome_entità_finisce', 'entità_inizia_con'.", + "help-text": "Usa '%' secondo necessità: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Usa filtro", "entity-list-empty": "Nessuna entità selezionata.", "entity-type-list-required": "È richiesto almeno un tipo di entità.", @@ -3242,7 +3242,7 @@ "remove-alias": "Rimuovi alias vista entità", "add-alias": "Aggiungi alias vista entità", "name-starts-with": "Espressione nome vista entità", - "help-text": "Usa '%' se necessario: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "Usa '%' secondo necessità: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Elenco viste entità", "use-entity-view-name-filter": "Usa filtro", "entity-view-list-empty": "Nessuna vista entità selezionata.", diff --git a/ui-ngx/src/assets/locale/locale.constant-ja_JP.json b/ui-ngx/src/assets/locale/locale.constant-ja_JP.json index d4726ac3e9..9eb965a9e9 100644 --- a/ui-ngx/src/assets/locale/locale.constant-ja_JP.json +++ b/ui-ngx/src/assets/locale/locale.constant-ja_JP.json @@ -803,7 +803,7 @@ "no-assets-matching": "'{{entity}}'に一致するアセットが見つかりません。", "asset-required": "アセットは必須です", "name-starts-with": "アセット名の式", - "help-text": "必要に応じて'%'を使用してください: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with'。", + "help-text": "必要に応じて'%'を使用してください: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "アセットを検索", "import": "アセットをインポート", "asset-file": "アセットファイル", @@ -910,9 +910,9 @@ "processing-timeouts": "${entityName} 処理タイムアウト", "rule-chain": "ルールチェーン", "rule-engine": "ルールエンジン", - "rule-engine-daily-activity": "ルールエンジンの日別アクティビティ", "rule-engine-executions": "ルールエンジン実行", "rule-engine-hourly-activity": "ルールエンジンの時間別アクティビティ", + "rule-engine-daily-activity": "ルールエンジンの日別アクティビティ", "rule-engine-monthly-activity": "ルールエンジンの月別アクティビティ", "rule-engine-statistics": "ルールエンジン統計", "rule-node": "ルールノード", @@ -2124,7 +2124,7 @@ "remove-alias": "デバイスエイリアスを削除", "add-alias": "デバイスエイリアスを追加", "name-starts-with": "デバイス名式", - "help-text": "必要に応じて'%'を使用してください: '%device_name_contains%', '%device_name_ends', 'device_starts_with'。", + "help-text": "必要に応じて'%'を使用してください: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "デバイス一覧", "use-device-name-filter": "フィルターを使用", "device-list-empty": "デバイスが選択されていません。", @@ -3039,7 +3039,7 @@ "no-entities-text": "エンティティは見つかりません", "no-entity-types-matching": "エンティティタイプ '{{entityType}}' に一致するエンティティタイプは見つかりませんでした。", "name-starts-with": "名前の表現", - "help-text": "必要に応じて '%' を使用します: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'.", + "help-text": "必要に応じて'%'を使用してください: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "フィルターを使用", "entity-list-empty": "エンティティが選択されていません。", "entity-type-list-required": "少なくとも1つのエンティティタイプを選択する必要があります。", @@ -3242,7 +3242,7 @@ "remove-alias": "エンティティビューのエイリアスを削除", "add-alias": "エンティティビューのエイリアスを追加", "name-starts-with": "エンティティビュー名の式", - "help-text": "必要に応じて '%' を使用してください:'%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'。", + "help-text": "必要に応じて'%'を使用してください: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "エンティティビュー一覧", "use-entity-view-name-filter": "フィルターを使用", "entity-view-list-empty": "エンティティビューが選択されていません。", diff --git a/ui-ngx/src/assets/locale/locale.constant-nl_NL.json b/ui-ngx/src/assets/locale/locale.constant-nl_NL.json index 0f8b4adea2..49923f7ae3 100644 --- a/ui-ngx/src/assets/locale/locale.constant-nl_NL.json +++ b/ui-ngx/src/assets/locale/locale.constant-nl_NL.json @@ -803,7 +803,7 @@ "no-assets-matching": "Geen overeenkomende assets gevonden voor '{{entity}}'.", "asset-required": "Asset is verplicht", "name-starts-with": "Assetnaam-expressie", - "help-text": "Gebruik '%' indien nodig: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with'.", + "help-text": "Gebruik '%' naar behoefte: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Assets zoeken", "import": "Assets importeren", "asset-file": "Assetbestand", @@ -910,9 +910,9 @@ "processing-timeouts": "${entityName} Verwerking time-outs", "rule-chain": "Rule chain", "rule-engine": "Rule Engine", - "rule-engine-daily-activity": "Dagelijkse activiteit Rule Engine", "rule-engine-executions": "Rule Engine-uitvoeringen", "rule-engine-hourly-activity": "Uurlijkse activiteit Rule Engine", + "rule-engine-daily-activity": "Dagelijkse activiteit Rule Engine", "rule-engine-monthly-activity": "Maandelijkse activiteit Rule Engine", "rule-engine-statistics": "Rule Engine-statistieken", "rule-node": "Rule node", @@ -2124,7 +2124,7 @@ "remove-alias": "Apparaatalias verwijderen", "add-alias": "Apparaatalias toevoegen", "name-starts-with": "Apparaatnaam expressie", - "help-text": "Gebruik '%' indien nodig: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "Gebruik '%' naar behoefte: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Apparatenlijst", "use-device-name-filter": "Filter gebruiken", "device-list-empty": "Geen apparaten geselecteerd.", @@ -3039,7 +3039,7 @@ "no-entities-text": "Geen entiteiten gevonden", "no-entity-types-matching": "Geen entiteittypes gevonden die overeenkomen met '{{entityType}}'.", "name-starts-with": "Naamexpressie", - "help-text": "Gebruik '%' indien nodig: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'.", + "help-text": "Gebruik '%' naar behoefte: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Gebruik filter", "entity-list-empty": "Geen entiteiten geselecteerd.", "entity-type-list-required": "Minstens één entiteittype moet worden geselecteerd.", @@ -3242,7 +3242,7 @@ "remove-alias": "Alias van entiteitweergave verwijderen", "add-alias": "Alias voor entiteitweergave toevoegen", "name-starts-with": "Naamexpressie van entiteitweergave", - "help-text": "Gebruik '%' waar nodig: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "Gebruik '%' naar behoefte: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Lijst van entiteitweergaven", "use-entity-view-name-filter": "Filter gebruiken", "entity-view-list-empty": "Geen entiteitweergaven geselecteerd.", diff --git a/ui-ngx/src/assets/locale/locale.constant-no_NO.json b/ui-ngx/src/assets/locale/locale.constant-no_NO.json index 9b2c33dae9..80c1467767 100644 --- a/ui-ngx/src/assets/locale/locale.constant-no_NO.json +++ b/ui-ngx/src/assets/locale/locale.constant-no_NO.json @@ -803,7 +803,7 @@ "no-assets-matching": "Ingen eiendeler som samsvarer med '{{entity}}' ble funnet.", "asset-required": "Eiendel er påkrevd", "name-starts-with": "Navneuttrykk for eiendel", - "help-text": "Bruk '%' etter behov: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with'.", + "help-text": "Bruk '%' etter behov: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Søk etter eiendeler", "import": "Importer eiendeler", "asset-file": "Eiendelsfil", @@ -910,9 +910,9 @@ "processing-timeouts": "${entityName} Behandlingstidsavbrudd", "rule-chain": "Regelkjede", "rule-engine": "Regelmotor", - "rule-engine-daily-activity": "Daglig aktivitet for regelmotor", "rule-engine-executions": "Utførelser av regelmotor", "rule-engine-hourly-activity": "Timebasert aktivitet for regelmotor", + "rule-engine-daily-activity": "Daglig aktivitet for regelmotor", "rule-engine-monthly-activity": "Månedlig aktivitet for regelmotor", "rule-engine-statistics": "Statistikk for regelmotor", "rule-node": "Regelnode", @@ -2124,7 +2124,7 @@ "remove-alias": "Fjern enhetsalias", "add-alias": "Legg til enhetsalias", "name-starts-with": "Enhetsnavnuttrykk", - "help-text": "Bruk '%' etter behov: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "Bruk '%' etter behov: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Enhetsliste", "use-device-name-filter": "Bruk filter", "device-list-empty": "Ingen enheter valgt.", @@ -3039,7 +3039,7 @@ "no-entities-text": "Ingen enheter funnet", "no-entity-types-matching": "Ingen enhetstyper som samsvarer med '{{entityType}}' ble funnet.", "name-starts-with": "Navnuttrykk", - "help-text": "Bruk '%' etter behov: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'.", + "help-text": "Bruk '%' etter behov: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Bruk filter", "entity-list-empty": "Ingen enheter valgt.", "entity-type-list-required": "Minst én enhetstype må velges.", @@ -3242,7 +3242,7 @@ "remove-alias": "Fjern alias for entitetsvisning", "add-alias": "Legg til alias for entitetsvisning", "name-starts-with": "Navnuttrykk for entitetsvisning", - "help-text": "Bruk '%' etter behov: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "Bruk '%' etter behov: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Liste over entitetsvisninger", "use-entity-view-name-filter": "Bruk filter", "entity-view-list-empty": "Ingen entitetsvisninger valgt.", diff --git a/ui-ngx/src/assets/locale/locale.constant-pt_BR.json b/ui-ngx/src/assets/locale/locale.constant-pt_BR.json index 91ffd72b2f..094b013595 100644 --- a/ui-ngx/src/assets/locale/locale.constant-pt_BR.json +++ b/ui-ngx/src/assets/locale/locale.constant-pt_BR.json @@ -2,19 +2,24 @@ "access": { "unauthorized": "Não autorizado", "unauthorized-access": "Acesso não autorizado", - "unauthorized-access-text": "Para acessar este recurso, você precisa se inscrever!", + "unauthorized-access-text": "Você precisa fazer login para acessar este recurso!", "access-forbidden": "Acesso proibido", - "access-forbidden-text": "Você não tem direito de acesso a esta localização!
Se ainda deseja acessar esta localização, tente inscrever-se com um nome de usuário diferente.", - "refresh-token-expired": "A sessão expirou", - "refresh-token-failed": "Impossível atualizar a sessão", + "access-forbidden-text": "Você não tem permissão de acesso a este local!
Tente fazer login com outro usuário se ainda deseja obter acesso a este local.", + "refresh-token-expired": "Sessão expirada", + "refresh-token-failed": "Não foi possível atualizar a sessão", "permission-denied": "Permissão negada", "permission-denied-text": "Você não tem permissão para executar esta operação!" }, + "account": { + "account": "Conta", + "notification-settings": "Configurações de notificação" + }, "action": { "activate": "Ativar", "suspend": "Suspender", "save": "Salvar", "saveAs": "Salvar como", + "move": "Mover", "cancel": "Cancelar", "ok": "OK", "delete": "Excluir", @@ -23,22 +28,22 @@ "no": "Não", "update": "Atualizar", "remove": "Remover", - "select": "Selecionar", "search": "Pesquisar", "clear-search": "Limpar pesquisa", "assign": "Atribuir", - "unassign": "Cancelar atribuição", + "unassign": "Desatribuir", "share": "Compartilhar", "make-private": "Tornar privado", "apply": "Aplicar", "apply-changes": "Aplicar alterações", "edit-mode": "Modo de edição", "enter-edit-mode": "Entrar no modo de edição", - "decline-changes": "Rejeitar alterações", + "decline-changes": "Recusar alterações", + "decline": "Recusar", "close": "Fechar", "back": "Voltar", "run": "Executar", - "sign-in": "Inscreva-se!", + "sign-in": "Entrar!", "edit": "Editar", "view": "Visualizar", "create": "Criar", @@ -52,59 +57,138 @@ "import": "Importar", "export": "Exportar", "share-via": "Compartilhar via {{provider}}", + "select": "Selecionar", "continue": "Continuar", "discard-changes": "Descartar alterações", - "download": "Download", - "done": "Concluído" + "download": "Baixar", + "next": "Próximo", + "next-with-label": "Próximo: {{label}}", + "read-more": "Ler mais", + "hide": "Ocultar", + "test": "Testar", + "done": "Concluir", + "print": "Imprimir", + "restore": "Restaurar", + "confirm": "Confirmar", + "more": "Mais", + "less": "Menos", + "skip": "Ignorar", + "send": "Enviar", + "reset": "Redefinir", + "show-more": "Mostrar mais", + "dont-show-again": "Não mostrar novamente", + "see-documentation": "Ver documentação", + "see-debug-events": "Ver eventos de depuração", + "clear": "Limpar", + "upload": "Carregar", + "delete-anyway": "Excluir mesmo assim", + "delete-selected": "Excluir selecionados", + "set": "Definir" }, "aggregation": { "aggregation": "Agregação", "function": "Função de agregação de dados", - "limit": "Valores máx.", + "limit": "Máximo de valores", "group-interval": "Intervalo de agrupamento", - "min": "Mín.", - "max": "Máx.", + "min": "Mín", + "max": "Máx", "avg": "Média", "sum": "Soma", "count": "Contagem", "none": "Nenhum" }, "admin": { + "settings": "Configurações", "general": "Geral", - "general-settings": "Configuração geral", - "outgoing-mail": "Servidor de e-mail", - "outgoing-mail-settings": "Configuração do servidor de saída de e-mail", - "system-settings": "Configuração do sistema", - "test-mail-sent": "O e-mail de teste foi enviado corretamente!", - "base-url": "URL de base", - "base-url-required": "O URL de base é obrigatório.", - "mail-from": "E-mail de", - "mail-from-required": "'E-mail de' é obrigatório.", + "general-settings": "Configurações gerais", + "home-settings": "Configurações da página inicial", + "home": "Início", + "outgoing-mail": "Servidor de email", + "outgoing-mail-settings": "Configurações do servidor de email de saída", + "system-settings": "Configurações do sistema", + "test-mail-sent": "Email de teste enviado com sucesso!", + "base-url": "URL base", + "base-url-required": "URL base é obrigatória.", + "prohibit-different-url": "Proibir o uso de hostname dos cabeçalhos de requisição do cliente", + "prohibit-different-url-hint": "Esta configuração deve ser habilitada em ambientes de produção. Pode causar problemas de segurança quando desabilitada", + "device-connectivity": { + "device-connectivity": "Conectividade do dispositivo", + "http-s": "HTTP(s)", + "mqtt-s": "MQTT(s)", + "coap-s": "COAP(s)", + "http": "HTTP", + "https": "HTTPs", + "mqtt": "MQTT", + "mqtts": "MQTTs", + "coap": "COAP", + "coaps": "COAPs", + "hint": "Se os campos de host ou porta estiverem vazios, o valor padrão do protocolo será utilizado.", + "host": "Host", + "port": "Porta", + "port-pattern": "A porta deve ser um número inteiro positivo.", + "port-range": "A porta deve estar no intervalo de 1 a 65535." + }, + "mail-from": "Remetente do email", + "mail-from-required": "Remetente do email é obrigatório.", "smtp-protocol": "Protocolo SMTP", "smtp-host": "Host SMTP", - "smtp-host-required": "O host SMTP é obrigatório.", + "smtp-host-required": "Host SMTP é obrigatório.", "smtp-port": "Porta SMTP", - "smtp-port-required": "É necessário informar a porta SMPT.", - "smtp-port-invalid": "Esta não parece ser uma porta SMTP válida.", - "timeout-msec": "Tempo limite (ms)", - "timeout-required": "O tempo limite é obrigatório.", - "timeout-invalid": "Este não parece ser um tempo limite válido.", - "enable-tls": "Habilitar TLS", - "tls-version": "Versão de TLS", - "enable-proxy": "Habilitar proxy", - "proxy-host": "Host de proxy", - "proxy-host-required": "O host de proxy é obrigatório.", + "smtp-port-required": "É necessário informar uma porta SMTP.", + "smtp-port-invalid": "Isso não parece uma porta SMTP válida.", + "timeout-msec": "Tempo limite (msec)", + "timeout-required": "Tempo limite é obrigatório.", + "timeout-invalid": "Isso não parece um tempo limite válido.", + "enable-tls": "Ativar TLS", + "tls-version": "Versão TLS", + "enable-proxy": "Ativar proxy", + "proxy-host": "Host do proxy", + "proxy-host-required": "Host do proxy é obrigatório.", "proxy-port": "Porta do proxy", - "proxy-port-required": "A porta do proxy é obrigatória.", - "proxy-port-range": "A porta do proxy deve estar em um intervalo de 1 a 65535.", + "proxy-port-required": "Porta do proxy é obrigatória.", + "proxy-port-range": "A porta do proxy deve estar no intervalo de 1 a 65535.", "proxy-user": "Usuário do proxy", "proxy-password": "Senha do proxy", - "send-test-mail": "Enviar e-mail de teste", - "security-settings": "Configuração de segurança", - "password-policy": "Política de senhas", + "change-password": "Alterar senha", + "send-test-mail": "Enviar email de teste", + "sms-provider": "Provedor de SMS", + "sms-provider-settings": "Configurações do provedor de SMS", + "sms-provider-type": "Tipo de provedor de SMS", + "sms-provider-type-required": "Tipo de provedor de SMS é obrigatório.", + "sms-provider-type-aws-sns": "Amazon SNS", + "sms-provider-type-twilio": "Twilio", + "sms-provider-type-smpp": "SMPP", + "aws-access-key-id": "AWS Access Key ID", + "aws-access-key-id-required": "AWS Access Key ID é obrigatório", + "aws-secret-access-key": "AWS Secret Access Key", + "aws-secret-access-key-required": "AWS Secret Access Key é obrigatório", + "aws-region": "Região AWS", + "aws-region-required": "Região AWS é obrigatória", + "number-from": "Número de telefone remetente", + "number-from-required": "Número de telefone remetente é obrigatório.", + "number-to": "Número de telefone destinatário", + "number-to-required": "Número de telefone destinatário é obrigatório.", + "phone-number-hint": "Número de telefone no formato E.164, ex.: +19995550123", + "phone-number-hint-twilio": "Número de telefone no formato E.164/SID do número de telefone/SID do serviço de mensagens, ex.: +19995550123/PNXXX/MGXXX", + "phone-number-pattern": "Número de telefone inválido. Deve estar no formato E.164, ex.: +19995550123.", + "phone-number-pattern-twilio": "Número de telefone inválido. Deve estar no formato E.164/SID do número de telefone/SID do serviço de mensagens, ex.: +19995550123/PNXXX/MGXXX.", + "sms-message": "Mensagem SMS", + "sms-message-required": "Mensagem SMS é obrigatória.", + "sms-message-max-length": "A mensagem SMS não pode ter mais de 1600 caracteres", + "twilio-account-sid": "Twilio Account SID", + "twilio-account-sid-required": "Twilio Account SID é obrigatório", + "twilio-account-token": "Twilio Account Token", + "twilio-account-token-required": "Twilio Account Token é obrigatório", + "send-test-sms": "Enviar SMS de teste", + "test-sms-sent": "SMS de teste enviado com sucesso!", + "security-settings": "Configurações de segurança", + "password-policy": "Política de senha", "minimum-password-length": "Comprimento mínimo da senha", - "minimum-password-length-required": "O comprimento mínimo da senha é obrigatório", - "minimum-password-length-range": "O comprimento mínimo da senha deve estar em um intervalo de 5 a 50.", + "minimum-password-length-required": "Comprimento mínimo da senha é obrigatório", + "minimum-password-length-range": "O comprimento mínimo da senha deve estar no intervalo de 6 a 50", + "maximum-password-length": "Comprimento máximo da senha", + "maximum-password-length-min": "O comprimento máximo da senha deve ser de pelo menos 6", + "maximum-password-length-less-min": "O comprimento máximo da senha deve ser maior que o comprimento mínimo", "minimum-uppercase-letters": "Número mínimo de letras maiúsculas", "minimum-uppercase-letters-range": "O número mínimo de letras maiúsculas não pode ser negativo", "minimum-lowercase-letters": "Número mínimo de letras minúsculas", @@ -113,36 +197,385 @@ "minimum-digits-range": "O número mínimo de dígitos não pode ser negativo", "minimum-special-characters": "Número mínimo de caracteres especiais", "minimum-special-characters-range": "O número mínimo de caracteres especiais não pode ser negativo", - "password-expiration-period-days": "Período de expiração de senha em dias", - "password-expiration-period-days-range": "O período de expiração de senha não pode ser negativo", + "password-expiration-period-days": "Período de expiração da senha em dias", + "password-expiration-period-days-range": "O período de expiração da senha em dias não pode ser negativo", "password-reuse-frequency-days": "Frequência de reutilização de senha em dias", - "password-reuse-frequency-days-range": "A frequência em dias de reutilização da senha não pode ser negativa", + "password-reuse-frequency-days-range": "A frequência de reutilização de senha em dias não pode ser negativa", + "allow-whitespace": "Permitir espaço em branco", + "force-reset-password-if-no-valid": "Forçar redefinição de senha se não for válida", + "force-reset-password-if-no-valid-hint": "Tenha cuidado ao habilitar este recurso: ele exigirá que usuários com senha inválida redefinam sua senha por email.", "general-policy": "Política geral", - "max-failed-login-attempts": "Número máximo de tentativas de login com falha antes de bloquear a conta", - "minimum-max-failed-login-attempts-range": "O número máximo de tentativas de login com falha não pode ser negativo", - "user-lockout-notification-email": "Em caso de bloqueio de conta do usuário, enviar notificação para o endereço de e-mail" + "max-failed-login-attempts": "Número máximo de tentativas de login falhas antes de bloquear a conta", + "minimum-max-failed-login-attempts-range": "O número máximo de tentativas de login falhas não pode ser negativo", + "user-lockout-notification-email": "Em caso de bloqueio de conta do usuário, enviar notificação por email", + "user-activation-token-ttl": "TTL do link de ativação do usuário em horas", + "user-activation-token-ttl-range": "O TTL do link de ativação do usuário deve estar no intervalo de 1 a 24 horas", + "password-reset-token-ttl": "TTL do link de redefinição de senha em horas", + "password-reset-token-ttl-range": "O TTL do link de redefinição de senha deve estar no intervalo de 1 a 24 horas", + "mobile-secret-key-length": "Comprimento da chave secreta do aplicativo móvel", + "mobile-secret-key-length-range": "O comprimento da chave secreta do aplicativo móvel deve ser positivo", + "domain-name": "Nome de domínio", + "domain-name-unique": "O nome de domínio e o protocolo precisam ser únicos.", + "domain-name-max-length": "O nome de domínio deve ter menos de 256 caracteres", + "error-verification-url": "O nome de domínio não deve conter os símbolos '/' e ':'. Exemplo: thingsboard.io", + "connection-settings": "Configurações de conexão", + "oauth2": { + "access-token-uri": "Access token URI", + "access-token-uri-required": "Access token URI é obrigatório.", + "activate-user": "Ativar usuário", + "add-domain": "Adicionar domínio", + "delete-domain": "Excluir domínio", + "add-provider": "Adicionar provedor", + "delete-provider": "Excluir provedor", + "allow-user-creation": "Permitir criação de usuário", + "always-fullscreen": "Sempre em tela cheia", + "authorization-uri": "Authorization URI", + "authorization-uri-required": "Authorization URI é obrigatório.", + "add-client": "Adicionar cliente OAuth 2.0", + "client-details": "Detalhes do cliente OAuth 2.0", + "client": "Cliente OAuth 2.0", + "clients": "Clientes OAuth 2.0", + "no-oauth2-clients": "Nenhum cliente OAuth 2.0 encontrado", + "search-oauth2-clients": "Pesquisar clientes OAuth 2.0", + "delete-client-title": "Tem certeza de que deseja excluir o cliente OAuth 2.0 '{{clientName}}'?", + "delete-client-text": "Atenção: após a confirmação, o cliente e todos os dados relacionados serão irrecuperáveis.", + "delete-mobile-app-title": "Tem certeza de que deseja excluir o aplicativo móvel '{{applicationName}}'?", + "delete-mobile-app-text": "Atenção: após a confirmação, o aplicativo móvel e todos os dados relacionados serão irrecuperáveis.", + "title": "Título", + "client-title-required": "Título é obrigatório", + "client-title-max-length": "O título deve ter menos de 100 caracteres", + "advanced-settings": "Configurações avançadas", + "domain-details": "Detalhes do domínio", + "no-domains": "Nenhum domínio encontrado", + "search-domains": "Pesquisar domínios", + "mobile-app-details": "Detalhes do aplicativo móvel", + "add-mobile-app": "Adicionar aplicativo móvel", + "no-mobile-apps": "Nenhum aplicativo móvel encontrado", + "search-mobile-apps": "Pesquisar aplicativos móveis", + "send-token": "Enviar token", + "create-new": "Criar novo", + "client-authentication-method": "Método de autenticação do cliente", + "client-id": "Client ID", + "client-id-required": "Client ID é obrigatório.", + "client-id-max-length": "O Client ID deve ter menos de 256 caracteres", + "client-secret": "Client secret", + "client-secret-required": "Client secret é obrigatório.", + "client-secret-max-length": "O Client secret deve ter menos de 2049 caracteres", + "custom-setting": "Configurações personalizadas", + "customer-name-pattern": "Padrão de nome do cliente", + "customer-name-pattern-max-length": "O padrão de nome do cliente deve ter menos de 256 caracteres", + "default-dashboard-name": "Nome do Dashboard padrão", + "default-dashboard-name-max-length": "O nome do Dashboard padrão deve ter menos de 256 caracteres", + "delete-domain-text": "Atenção: após a confirmação, o domínio e todos os dados do provedor ficarão indisponíveis.", + "delete-domain-title": "Tem certeza de que deseja excluir o domínio '{{domainName}}'?", + "delete-registration-text": "Atenção: após a confirmação, os dados do provedor ficarão indisponíveis.", + "delete-registration-title": "Tem certeza de que deseja excluir o provedor '{{name}}'?", + "email-attribute-key": "Chave de atributo de email", + "email-attribute-key-required": "Chave de atributo de email é obrigatória.", + "email-attribute-key-max-length": "A chave de atributo de email deve ter menos de 32 caracteres", + "first-name-attribute-key": "Chave de atributo de nome", + "first-name-attribute-key-max-length": "A chave de atributo de nome deve ter menos de 32 caracteres", + "general": "Geral", + "jwk-set-uri": "JSON Web Key URI", + "last-name-attribute-key": "Chave de atributo de sobrenome", + "last-name-attribute-key-max-length": "A chave de atributo de sobrenome deve ter menos de 32 caracteres", + "login-button-icon": "Ícone do botão de login", + "login-button-label": "Rótulo do provedor", + "login-button-label-placeholder": "Login with $(Provider label)", + "login-button-label-required": "Rótulo é obrigatório.", + "login-provider": "Provedor de login", + "mapper": "Mapeador", + "new-domain": "Novo domínio", + "oauth2": "OAuth 2.0", + "password-max-length": "A senha deve ter menos de 256 caracteres", + "redirect-uri-template": "Redirect URI template", + "copy-redirect-uri": "Copiar Redirect URI", + "registration-id": "ID de registro", + "registration-id-required": "ID de registro é obrigatório.", + "registration-id-unique": "O ID de registro precisa ser único no sistema.", + "scope": "Scope", + "scope-required": "Scope é obrigatório.", + "tenant-name-pattern": "Padrão de nome do tenant", + "tenant-name-pattern-required": "Padrão de nome do tenant é obrigatório.", + "tenant-name-pattern-max-length": "O padrão de nome do tenant deve ter menos de 256 caracteres", + "tenant-name-strategy": "Estratégia de nome do tenant", + "type": "Tipo de mapeador", + "uri-pattern-error": "Formato de URI inválido.", + "url": "URL", + "url-pattern": "Formato de URL inválido.", + "url-required": "URL é obrigatória.", + "url-max-length": "A URL deve ter menos de 256 caracteres", + "user-info-uri": "URI de informações do usuário", + "user-info-uri-required": "URI de informações do usuário é obrigatório.", + "username-max-length": "O nome de usuário deve ter menos de 256 caracteres", + "user-name-attribute-name": "Chave de atributo do nome de usuário", + "user-name-attribute-name-required": "Chave de atributo do nome de usuário é obrigatória", + "protocol": "Protocolo", + "domain-schema-http": "HTTP", + "domain-schema-https": "HTTPS", + "domain-schema-mixed": "HTTP+HTTPS", + "enable": "Ativar configurações OAuth 2.0", + "disable": "Desativar configurações OAuth 2.0", + "edge": "Propagar para Edge", + "edge-enable": "Ativar propagação para Edge", + "edge-disable": "Desativar propagação para Edge", + "domains": "Domínios", + "mobile-apps": "Aplicativos móveis", + "mobile-package": "Pacote do aplicativo", + "mobile-package-placeholder": "Ex.: my.example.app", + "mobile-package-hint": "Para Android: seu ID de aplicativo único. Para iOS: identificador do bundle do produto.", + "mobile-package-unique": "O pacote do aplicativo deve ser único.", + "mobile-package-required": "Pacote do aplicativo é obrigatório.", + "mobile-package-max-length": "O pacote do aplicativo deve ter menos de 256 caracteres", + "mobile-package-spaces": "O pacote do aplicativo não deve conter espaços", + "mobile-app-secret": "Application secret", + "mobile-app-secret-hint": "String codificada em Base64 representando pelo menos 512 bits de dados.", + "mobile-app-secret-required": "Application secret é obrigatório.", + "mobile-app-secret-min-length": "Application secret deve conter pelo menos 512 bits de dados.", + "mobile-app-secret-base64": "Application secret deve estar no formato base64.", + "invalid-mobile-app-secret": "Application secret deve conter apenas caracteres alfanuméricos e ter entre 16 e 2048 caracteres.", + "copy-mobile-app-secret": "Copiar application secret", + "delete-mobile-app": "Excluir informações do aplicativo", + "providers": "Provedores", + "platform-web": "Web", + "platform-android": "Android", + "platform-ios": "iOS", + "all-platforms": "Todas as plataformas", + "smtp-provider": "Provedor SMTP", + "allowed-platforms": "Plataformas permitidas", + "authentication": "Autenticação", + "basic": "Básico", + "provider": "Provedor", + "redirect-url": "Redirect URI", + "domain-name": "Nome de domínio", + "domain-name-required": "Nome de domínio é obrigatório", + "redirect-url-template": "Redirect URI template", + "microsoft-tenant-id": "ID do diretório (tenant)", + "microsoft-tenant-id-required": "ID do diretório (tenant) é obrigatório", + "token-uri": "Token URI", + "token-uri-required": "Token URI é obrigatório", + "redirect-uri": "Redirect URI", + "google-provider": "Google", + "microsoft-provider": "Office 365", + "sendgrid-provider": "Sendgrid", + "custom-provider": "Personalizado", + "generate-access-token": "Gerar access token", + "update-access-token": "Atualizar access token", + "access-token-status": "Status do access token:", + "token-status-generated": "gerado", + "token-status-not-generated": "não gerado" + }, + "smpp-provider": { + "smpp-version": "Versão SMPP", + "smpp-host": "Host SMPP", + "smpp-host-required": "Host SMPP é obrigatório", + "smpp-port": "Porta SMPP", + "smpp-port-required": "Porta SMPP é obrigatória", + "system-id": "ID do sistema", + "system-id-required": "ID do sistema é obrigatório", + "password": "Senha", + "password-required": "Senha é obrigatória", + "type-settings": "Configurações de tipo", + "source-settings": "Configurações de origem", + "destination-settings": "Configurações de destino", + "additional-settings": "Configurações adicionais", + "system-type": "Tipo de sistema", + "bind-type": "Tipo de bind", + "service-type": "Tipo de serviço", + "source-address": "Endereço de origem", + "source-ton": "TON de origem", + "source-npi": "NPI de origem", + "destination-ton": "TON de destino (Type of Number)", + "destination-npi": "NPI de destino (Numbering Plan Identification)", + "address-range": "Intervalo de endereços", + "coding-scheme": "Esquema de codificação", + "bind-type-tx": "Transmissor", + "bind-type-rx": "Receptor", + "bind-type-trx": "Transceptor", + "ton-unknown": "Desconhecido", + "ton-international": "Internacional", + "ton-national": "Nacional", + "ton-network-specific": "Específico de rede", + "ton-subscriber-number": "Número do assinante", + "ton-alphanumeric": "Alfanumérico", + "ton-abbreviated": "Abreviado", + "npi-unknown": "0 - Desconhecido", + "npi-isdn": "1 - Plano de numeração ISDN/telefônico (E163/E164)", + "npi-data-numbering-plan": "3 - Plano de numeração de dados (X.121)", + "npi-telex-numbering-plan": "4 - Plano de numeração de telex (F.69)", + "npi-land-mobile": "6 - Móvel terrestre (E.212)", + "npi-national-numbering-plan": "8 - Plano de numeração nacional", + "npi-private-numbering-plan": "9 - Plano de numeração privado", + "npi-ermes-numbering-plan": "10 - Plano de numeração ERMES (ETSI DE/PS 3 01-3)", + "npi-internet": "13 - Internet (IP)", + "npi-wap-client-id": "18 - WAP Client Id (a ser definido pelo WAP Forum)", + "scheme-smsc": "0 - Alfabeto padrão SMSC (ASCII para código curto e longo e GSM para tarifa gratuita)", + "scheme-ia5": "1 - IA5 (ASCII para código curto e longo, Latin 9 para tarifa gratuita (ISO-8859-9))", + "scheme-octet-unspecified-2": "2 - Octet não especificado (binário de 8 bits)", + "scheme-latin-1": "3 - Latin 1 (ISO-8859-1)", + "scheme-octet-unspecified-4": "4 - Octet não especificado (binário de 8 bits)", + "scheme-jis": "5 - JIS (X 0208-1990)", + "scheme-cyrillic": "6 - Cirílico (ISO-8859-5)", + "scheme-latin-hebrew": "7 - Latino/Hebraico (ISO-8859-8)", + "scheme-ucs-utf": "8 - UCS2/UTF-16 (ISO/IEC-10646)", + "scheme-pictogram-encoding": "9 - Codificação pictográfica", + "scheme-music-codes": "10 - Códigos musicais (ISO-2022-JP)", + "scheme-extended-kanji-jis": "13 - Kanji JIS estendido (X 0212-1990)", + "scheme-korean-graphic-character-set": "14 - Conjunto de caracteres gráficos coreanos (KS C 5601/KS X 1001)" + }, + "queue-select-name": "Selecionar nome da fila", + "queue-name": "Nome", + "queue-name-required": "Nome da fila é obrigatório!", + "queues": "Filas", + "queue-partitions": "Partições", + "queue-submit-strategy": "Estratégia de envio", + "queue-processing-strategy": "Estratégia de processamento", + "queue-configuration": "Configuração da fila", + "repository-settings": "Configurações do repositório", + "repository": "Repositório", + "repository-url": "URL do repositório", + "repository-url-required": "URL do repositório é obrigatória.", + "default-branch": "Nome do branch padrão", + "repository-read-only": "Somente leitura", + "show-merge-commits": "Mostrar commits de merge", + "authentication-settings": "Configurações de autenticação", + "auth-method": "Método de autenticação", + "auth-method-username-password": "Senha / token de acesso", + "auth-method-username-password-hint": "Usuários do GitHub devem usar tokens de acesso com permissões de gravação no repositório.", + "auth-method-private-key": "Chave privada", + "password-access-token": "Senha / token de acesso", + "change-password-access-token": "Alterar senha / token de acesso", + "private-key": "Chave privada", + "drop-private-key-file-or": "Arraste e solte um arquivo de chave privada ou", + "passphrase": "Frase secreta", + "enter-passphrase": "Inserir frase secreta", + "change-passphrase": "Alterar frase secreta", + "check-access": "Verificar acesso", + "check-repository-access-success": "Acesso ao repositório verificado com sucesso!", + "delete-repository-settings-title": "Tem certeza de que deseja excluir as configurações do repositório?", + "delete-repository-settings-text": "Atenção: após a confirmação, as configurações do repositório serão removidas e o recurso de controle de versão ficará indisponível.", + "auto-commit-settings": "Configurações de auto-commit", + "auto-commit": "Auto-commit", + "auto-commit-entities": "Entidades com auto-commit", + "no-auto-commit-entities-prompt": "Nenhuma entidade configurada para auto-commit", + "delete-auto-commit-settings-title": "Tem certeza de que deseja excluir as configurações de auto-commit?", + "delete-auto-commit-settings-text": "Atenção: após a confirmação, as configurações de auto-commit serão removidas e o auto-commit ficará desativado para todas as entidades.", + "mobile-app": { + "mobile-app": "Aplicativo móvel", + "mobile-app-qr-code-widget-settings": "Configurações do widget de QR code do aplicativo móvel", + "applications": "Aplicativos", + "default": "Padrão", + "custom": "Personalizado", + "android": "Android", + "ios": "iOS", + "appearance": "Aparência", + "appearance-on-home-page": "Aparência na página inicial", + "enabled": "Habilitado", + "disabled": "Desabilitado", + "badges": "Selos", + "label": "Rótulo", + "label-required": "Rótulo é obrigatório", + "label-max-length": "O rótulo deve ter no máximo 50 caracteres", + "right": "Direita", + "left": "Esquerda", + "set": "Definir", + "preview": "Pré-visualização", + "connect-mobile-app": "Conectar aplicativo móvel", + "use-system-settings": "Usar configurações do sistema" + }, + "2fa": { + "2fa": "Autenticação de dois fatores", + "available-providers": "Provedores disponíveis", + "available-providers-required": "Pelo menos um provedor 2FA deve ser configurado.", + "issuer-name": "Nome do emissor", + "issuer-name-required": "Nome do emissor é obrigatório.", + "max-verification-failures-before-user-lockout": "Máximo de falhas de verificação antes do bloqueio do usuário", + "max-verification-failures-before-user-lockout-pattern": "O máximo de falhas de verificação deve ser um número inteiro positivo.", + "number-of-checking-attempts": "Número de tentativas de verificação", + "number-of-checking-attempts-pattern": "O número de tentativas de verificação deve ser um número inteiro positivo.", + "number-of-checking-attempts-required": "Número de tentativas de verificação é obrigatório.", + "number-of-codes": "Número de códigos", + "number-of-codes-pattern": "O número de códigos deve ser um número inteiro positivo.", + "number-of-codes-required": "Número de códigos é obrigatório.", + "provider": "Provedor", + "retry-verification-code-period": "Período de reenvio do código de verificação", + "retry-verification-code-period-pattern": "O período mínimo é de 5 seg", + "retry-verification-code-period-required": "Período de reenvio do código de verificação é obrigatório.", + "total-allowed-time-for-verification": "Tempo total permitido para verificação", + "total-allowed-time-for-verification-pattern": "O tempo total mínimo permitido é de 60 seg", + "total-allowed-time-for-verification-required": "Tempo total permitido é obrigatório.", + "use-system-two-factor-auth-settings": "Usar configurações de autenticação de dois fatores do sistema", + "verification-code-check-rate-limit": "Limite de taxa de verificação do código", + "verification-code-lifetime": "Tempo de vida do código de verificação", + "verification-code-lifetime-pattern": "O tempo de vida do código de verificação deve ser um número inteiro positivo.", + "verification-code-lifetime-required": "Tempo de vida do código de verificação é obrigatório.", + "verification-message-template": "Modelo de mensagem de verificação", + "verification-limitations": "Limitações de verificação", + "verification-message-template-pattern": "A mensagem de verificação precisa conter o padrão: ${code}", + "verification-message-template-required": "Modelo de mensagem de verificação é obrigatório.", + "within-time": "Dentro do tempo", + "within-time-pattern": "O tempo deve ser um número inteiro positivo.", + "within-time-required": "Tempo é obrigatório.", + "force-2fa": "Impor autenticação de dois fatores", + "enforce-for": "Impor para" + }, + "jwt": { + "security-settings": "Configurações de segurança JWT", + "issuer-name": "Nome do emissor", + "issuer-name-required": "Nome do emissor é obrigatório.", + "signings-key": "Chave de assinatura", + "signings-key-hint": "String codificada em Base64 representando pelo menos 512 bits de dados.", + "signings-key-required": "Chave de assinatura é obrigatória.", + "signings-key-min-length": "A chave de assinatura deve conter pelo menos 512 bits de dados.", + "signings-key-base64": "A chave de assinatura deve estar no formato base64.", + "expiration-time": "Tempo de expiração do token (seg)", + "expiration-time-required": "Tempo de expiração do token é obrigatório.", + "expiration-time-max": "O tempo máximo permitido é de 2147483647 segundos (68 anos).", + "expiration-time-min": "O tempo mínimo é de 60 segundos (1 minuto).", + "refresh-expiration-time": "Tempo de expiração do token de atualização (seg)", + "refresh-expiration-time-required": "Tempo de expiração do token de atualização é obrigatório.", + "refresh-expiration-time-max": "O tempo máximo permitido é de 2147483647 segundos (68 anos).", + "refresh-expiration-time-min": "O tempo mínimo é de 900 segundos (15 minutos).", + "refresh-expiration-time-less-token": "O tempo do token de atualização deve ser maior que o tempo do token.", + "generate-key": "Gerar chave", + "info-header": "Todos os usuários precisarão fazer login novamente", + "info-message": "A alteração da chave de assinatura JWT fará com que todos os tokens emitidos se tornem inválidos. Todos os usuários precisarão fazer login novamente. Isso também afetará scripts que utilizam a API REST/Websockets." + }, + "resources": "Recursos", + "notifications": "Notificações", + "notifications-settings": "Configurações de notificações", + "slack-api-token": "Token de API do Slack", + "slack": "Slack", + "slack-settings": "Configurações do Slack", + "mobile-settings": "Configurações móveis", + "firebase-service-account-file": "Arquivo JSON de credenciais da conta de serviço do Firebase", + "select-firebase-service-account-file": "Arraste e solte o arquivo de credenciais da conta de serviço do Firebase ou " }, "alarm": { "alarm": "Alarme", + "alarm-list": "Lista de alarmes", "alarms": "Alarmes", + "all-alarms": "Todos os alarmes", "select-alarm": "Selecionar alarme", - "no-alarms-matching": "Nenhum alarme encontrado que coincida com '{{entity}}'.", - "alarm-required": "O alarme é obrigatório", + "no-alarms-matching": "Nenhum alarme correspondente a '{{entity}}' foi encontrado.", + "alarm-required": "Alarme é obrigatório", + "alarm-filter": "Filtro de alarme", + "filter": "Filtro", "alarm-status": "Status do alarme", - "alarm-status-list": "Lista de status de alarmes", + "alarm-status-list": "Lista de status de alarme", "any-status": "Qualquer status", "search-status": { "ANY": "Qualquer", "ACTIVE": "Ativo", "CLEARED": "Limpo", - "ACK": "Confirmado", - "UNACK": "Não confirmado" + "ACK": "Reconhecido", + "UNACK": "Não reconhecido" }, "display-status": { - "ACTIVE_UNACK": "Não confirmado ativo", - "ACTIVE_ACK": "Confirmado ativo", - "CLEARED_UNACK": "Não confirmado limpo", - "CLEARED_ACK": "Confirmado limpo" + "ACTIVE_UNACK": "Ativo não reconhecido", + "ACTIVE_ACK": "Ativo reconhecido", + "CLEARED_UNACK": "Limpo não reconhecido", + "CLEARED_ACK": "Limpo reconhecido" }, "no-alarms-prompt": "Nenhum alarme encontrado", "created-time": "Hora de criação", @@ -151,46 +584,102 @@ "originator": "Originador", "originator-type": "Tipo de originador", "details": "Detalhes", + "originator-label": "Rótulo do originador", + "assign": "Atribuir", + "assignments": "Atribuições", + "assignee": "Responsável", + "assignee-id": "Id do responsável", + "assignee-first-name": "Nome do responsável", + "assignee-last-name": "Sobrenome do responsável", + "assignee-email": "Email do responsável", + "unassigned": "Não atribuído", + "user-deleted": "Usuário excluído", + "assignee-not-set": "Todos", "status": "Status", "alarm-details": "Detalhes do alarme", "start-time": "Hora de início", + "assign-time": "Hora de atribuição", "end-time": "Hora de término", - "ack-time": "Horário de confirmação", - "clear-time": "Horário de limpeza", - "alarm-severity-list": "Lista de severidade de alarmes", + "ack-time": "Hora de reconhecimento", + "clear-time": "Hora de limpeza", + "duration": "Duração", + "alarm-severity": "Severidade do alarme", + "alarm-severity-list": "Lista de severidades de alarme", "any-severity": "Qualquer severidade", - "severity-critical": "Crítica", - "severity-major": "Principal", + "severity-critical": "Crítico", + "severity-major": "Maior", "severity-minor": "Menor", "severity-warning": "Aviso", "severity-indeterminate": "Indeterminado", - "acknowledge": "Confirmar", + "acknowledge": "Reconhecer", "clear": "Limpar", + "delete": "Excluir", "search": "Pesquisar alarmes", - "selected-alarms": "{ count, plural, =1 {1 alarm} other {# alarms} } selecionado(s)", - "no-data": "Nenhum dado para exibição", - "polling-interval": "Intervalo seletivo de alarmes (s)", - "polling-interval-required": "O intervalo de chamada seletiva de alarmes é obrigatório.", - "min-polling-interval-message": "É permitido no mínimo 1 segundo de intervalo de chamada seletiva.", - "aknowledge-alarms-title": "Confirmar { count, plural, =1 {1 alarm} other {# alarms} }", - "aknowledge-alarms-text": "Tem certeza de que deseja confirmar { count, plural, =1 {1 alarm} other {# alarms} }?", - "aknowledge-alarm-title": "Confirmar alarme", - "aknowledge-alarm-text": "Tem certeza de que deseja confirmar o alarme?", - "clear-alarms-title": "Limpar { count, plural, =1 {1 alarm} other {# alarms} }", - "clear-alarms-text": "Tem certeza de que deseja limpar { count, plural, =1 {1 alarm} other {# alarms} }?", + "selected-alarms": "{ count, plural, =1 {1 alarme} other {# alarmes} } selecionado(s)", + "no-data": "Sem dados para exibir", + "polling-interval": "Intervalo de consulta de alarmes (seg)", + "polling-interval-required": "O intervalo de consulta de alarmes é obrigatório.", + "min-polling-interval-message": "É permitido no mínimo 1 seg de intervalo de consulta.", + "aknowledge-alarms-title": "Reconhecer { count, plural, =1 {1 alarme} other {# alarmes} }", + "aknowledge-alarms-text": "Tem certeza de que deseja reconhecer { count, plural, =1 {1 alarme} other {# alarmes} }?", + "aknowledge-alarm-title": "Reconhecer alarme", + "aknowledge-alarm-text": "Tem certeza de que deseja reconhecer o alarme?", + "selected-alarms-are-acknowledged": "Os alarmes selecionados já estão reconhecidos", + "clear-alarms-title": "Limpar { count, plural, =1 {1 alarme} other {# alarmes} }", + "clear-alarms-text": "Tem certeza de que deseja limpar { count, plural, =1 {1 alarme} other {# alarmes} }?", "clear-alarm-title": "Limpar alarme", - "clear-alarm-text": "Tem certeza de que deseja limpar alarme?", - "alarm-status-filter": "Filtro de status de alarmes", - "alarm-filter": "Filtro de alarmes", - "max-count-load": "Número máximo de alarmes a serem carregados (0 - ilimitado)", - "max-count-load-required": "O número máximo de alarmes é obrigatório.", + "clear-alarm-text": "Tem certeza de que deseja limpar o alarme?", + "delete-alarms-title": "Excluir { count, plural, =1 {1 alarme} other {# alarmes} }", + "delete-alarms-text": "Tem certeza de que deseja excluir { count, plural, =1 {1 alarme} other {# alarmes} }?", + "selected-alarms-are-cleared": "Os alarmes selecionados já estão limpos", + "alarm-status-filter": "Filtro de status de alarme", + "alarm-filter-title": "Filtro de alarme", + "assigned": "Atribuído", + "filter-title": "Filtro", + "max-count-load": "Número máximo de alarmes a carregar (0 - ilimitado)", + "max-count-load-required": "O número máximo de alarmes a carregar é obrigatório.", "max-count-load-error-min": "O valor mínimo é 0.", - "fetch-size": "Tamanho da busca", - "fetch-size-required": "O tamanho da busca é obrigatório.", + "fetch-size": "Tamanho de busca", + "fetch-size-required": "O tamanho de busca é obrigatório.", "fetch-size-error-min": "O valor mínimo é 10.", - "alarm-type-list": "Lista de tipos de alarmes", + "alarm-types": "Tipos de alarme", + "alarm-type-list": "Lista de tipos de alarme", "any-type": "Qualquer tipo", - "search-propagated-alarms": "Pesquisar alarmes propagados" + "assigned-to-current-user": "Atribuído ao usuário atual", + "assigned-to-me": "Atribuído a mim", + "search-propagated-alarms": "Pesquisar alarmes propagados", + "comments": "Comentários de alarme", + "show-more": "Mostrar mais", + "additional-info": "Informações adicionais", + "alarm-type": "Tipo de alarme", + "enter-alarm-type": "Inserir tipo de alarme", + "no-alarm-types-matching": "Nenhum tipo de alarme correspondente a '{{entitySubtype}}' foi encontrado.", + "alarm-type-list-empty": "Nenhum tipo de alarme selecionado.", + "system-comments": { + "acked-by-user": "O alarme foi reconhecido pelo usuário {{userName}}", + "cleared-by-user": "O alarme foi limpo pelo usuário {{userName}}", + "assigned-to-user": "O alarme foi atribuído pelo usuário {{userName}} ao usuário {{assigneeName}}", + "unassigned-to-user": "O alarme foi desatribuído pelo usuário {{userName}}", + "unassigned-from-deleted-user": "O alarme foi desatribuído porque o usuário {{userName}} - foi excluído", + "comment-deleted": "O usuário {{userName}} excluiu seu comentário", + "severity-changed": "A severidade do alarme foi atualizada de {{oldSeverity}} para {{newSeverity}}" + } + }, + "alarm-activity": { + "add": "Adicionar um comentário...", + "alarm-comment": "Comentário de alarme", + "comments": "Comentários", + "delete-alarm-comment": "Deseja excluir este comentário?", + "refresh": "Atualizar", + "oldest-first": "Mais antigos primeiro", + "newest-first": "Mais recentes primeiro", + "activity": "Atividade", + "export": "Exportar para CSV", + "author": "Autor", + "created-date": "Data de criação", + "edited-date": "Data de edição", + "text": "Texto", + "system": "Sistema" }, "alias": { "add": "Adicionar alias", @@ -198,43 +687,52 @@ "name": "Nome do alias", "name-required": "O nome do alias é obrigatório", "duplicate-alias": "Já existe um alias com o mesmo nome.", - "filter-type-single-entity": "Entidade individual", + "filter-type-single-entity": "Entidade única", "filter-type-entity-list": "Lista de entidades", "filter-type-entity-name": "Nome da entidade", + "filter-type-entity-type": "Tipo de entidade", "filter-type-state-entity": "Entidade do estado do dashboard", "filter-type-state-entity-description": "Entidade obtida dos parâmetros de estado do dashboard", "filter-type-asset-type": "Tipo de ativo", "filter-type-asset-type-description": "Ativos do tipo '{{assetTypes}}'", - "filter-type-asset-type-and-name-description": "Ativos do tipo '{{assetTypes}}' cujo nome começa com '{{prefix}}'", + "filter-type-asset-type-and-name-description": "Ativos do tipo '{{assetTypes}}' e com nome começando com '{{prefix}}'", "filter-type-device-type": "Tipo de dispositivo", "filter-type-device-type-description": "Dispositivos do tipo '{{deviceTypes}}'", - "filter-type-device-type-and-name-description": "Dispositivos do tipo '{{deviceTypes}}' cujo nome começa com '{{prefix}}'", - "filter-type-entity-view-type": "Tipo de exibições de entidades", - "filter-type-entity-view-type-description": "Exibições de entidades do tipo '{{entityViewTypes}}'", - "filter-type-entity-view-type-and-name-description": "Exibições de entidades do tipo '{{entityViewTypes}}' cujo nome começa com '{{prefix}}'", + "filter-type-device-type-and-name-description": "Dispositivos do tipo '{{deviceTypes}}' e com nome começando com '{{prefix}}'", + "filter-type-entity-view-type": "Tipo de visualização de entidade", + "filter-type-entity-view-type-description": "Visualizações de entidade do tipo '{{entityViewTypes}}'", + "filter-type-entity-view-type-and-name-description": "Visualizações de entidade do tipo '{{entityViewTypes}}' e com nome começando com '{{prefix}}'", + "filter-type-edge-type": "Tipo de edge", + "filter-type-edge-type-description": "Edges do tipo '{{edgeTypes}}'", + "filter-type-edge-type-and-name-description": "Edges do tipo '{{edgeTypes}}' e com nome começando com '{{prefix}}'", "filter-type-relations-query": "Consulta de relações", - "filter-type-relations-query-description": "{{entities}} que tem relação de {{relationType}} {{direction}} {{rootEntity}}", + "filter-type-relations-query-description": "{{entities}} que têm relação {{relationType}} {{direction}} {{rootEntity}}", + "filter-type-edge-search-query": "Consulta de pesquisa de edge", + "filter-type-edge-search-query-description": "Edges com tipos {{edgeTypes}} que têm relação {{relationType}} {{direction}} {{rootEntity}}", "filter-type-asset-search-query": "Consulta de pesquisa de ativo", - "filter-type-asset-search-query-description": "Ativos dos tipos {{assetTypes}} que têm relação de {{relationType}} {{direction}} {{rootEntity}}", + "filter-type-asset-search-query-description": "Ativos com tipos {{assetTypes}} que têm relação {{relationType}} {{direction}} {{rootEntity}}", "filter-type-device-search-query": "Consulta de pesquisa de dispositivo", - "filter-type-device-search-query-description": "Dispositivos dos tipos {{deviceTypes}} que têm relação de {{relationType}} {{direction}} {{rootEntity}}", - "filter-type-entity-view-search-query": "Consulta de pesquisa de exibição de entidade", - "filter-type-entity-view-search-query-description": "Exibições de entidades dos tipos {{entityViewTypes}} que têm relação de {{relationType}} {{direction}} {{rootEntity}}", - "entity-filter": "Filtro de entidades", - "resolve-multiple": "Resolver como entidades múltiplas", + "filter-type-device-search-query-description": "Dispositivos com tipos {{deviceTypes}} que têm relação {{relationType}} {{direction}} {{rootEntity}}", + "filter-type-entity-view-search-query": "Consulta de pesquisa de visualização de entidade", + "filter-type-entity-view-search-query-description": "Visualizações de entidade com tipos {{entityViewTypes}} que têm relação {{relationType}} {{direction}} {{rootEntity}}", + "filter-type-apiUsageState": "Estado de uso de API", + "entity-filter": "Filtro de entidade", + "resolve-multiple": "Resolver como múltiplas entidades", + "resolve-multiple-hint": "Ativar para renderizar dados de todas as entidades filtradas simultaneamente. \nSe desativado, o widget exibe dados somente da entidade selecionada.", "filter-type": "Tipo de filtro", "filter-type-required": "O tipo de filtro é obrigatório.", - "entity-filter-no-entity-matched": "Nenhuma entidade encontrada que coincida com o filtro especificado.", + "entity-filter-no-entity-matched": "Nenhuma entidade correspondente ao filtro especificado foi encontrada.", "no-entity-filter-specified": "Nenhum filtro de entidade especificado", - "root-state-entity": "Usar entidade de estado do dashboard como raiz", - "last-level-relation": "Procurar apenas último nível de relação", + "root-state-entity": "Usar entidade do estado do dashboard como raiz", + "last-level-relation": "Buscar somente relação do último nível", "root-entity": "Entidade raiz", - "state-entity-parameter-name": "Nome do parâmetro de entidade de estado", + "state-entity-parameter-name": "Nome do parâmetro da entidade de estado", "default-state-entity": "Entidade de estado padrão", - "default-entity-parameter-name": "Predefinido", - "max-relation-level": "Nível máx. de relação", + "default-entity-parameter-name": "Por padrão", + "query-options": "Opções de consulta", + "max-relation-level": "Nível máximo de relação", "unlimited-level": "Nível ilimitado", - "state-entity": "Entidade de estado do dashboard", + "state-entity": "Entidade do estado do dashboard", "all-entities": "Todas as entidades", "any-relation": "qualquer" }, @@ -244,29 +742,33 @@ "management": "Gerenciamento de ativos", "view-assets": "Visualizar ativos", "add": "Adicionar ativo", - "assign-to-customer": "Atribuir a cliente", - "assign-asset-to-customer": "Atribuir ativo(s) a cliente", + "asset-type-max-length": "O tipo de ativo deve ter menos de 256 caracteres", + "assign-to-customer": "Atribuir ao cliente", + "assign-asset-to-customer": "Atribuir ativo(s) ao cliente", "assign-asset-to-customer-text": "Selecione os ativos a serem atribuídos ao cliente", "no-assets-text": "Nenhum ativo encontrado", - "assign-to-customer-text": "Selecione o cliente para atribuir o(s) ativo(s)", + "assign-to-customer-text": "Selecione o cliente ao qual atribuir o(s) ativo(s)", "public": "Público", "assignedToCustomer": "Atribuído ao cliente", "make-public": "Tornar ativo público", "make-private": "Tornar ativo privado", - "unassign-from-customer": "Remover atribuição a cliente", + "unassign-from-customer": "Desatribuir do cliente", "delete": "Excluir ativo", "asset-public": "Ativo é público", "asset-type": "Tipo de ativo", "asset-type-required": "O tipo de ativo é obrigatório.", "select-asset-type": "Selecionar tipo de ativo", - "enter-asset-type": "Inserir tipo de ativo", + "enter-asset-type": "Inserir perfil do ativo", "any-asset": "Qualquer ativo", - "no-asset-types-matching": "Nenhum tipo de ativo encontrado que coincida com '{{entitySubtype}}'.", + "no-asset-types-matching": "Nenhum tipo de ativo correspondente a '{{entitySubtype}}' foi encontrado.", "asset-type-list-empty": "Nenhum tipo de ativo selecionado.", - "asset-types": "Tipos de ativos", + "asset-types": "Tipos de ativo", "name": "Nome", "name-required": "O nome é obrigatório.", + "name-max-length": "O nome deve ter menos de 256 caracteres", + "label-max-length": "O rótulo deve ter menos de 256 caracteres", "description": "Descrição", + "description-required": "A descrição é obrigatória.", "type": "Tipo", "type-required": "O tipo é obrigatório.", "details": "Detalhes", @@ -274,54 +776,72 @@ "add-asset-text": "Adicionar novo ativo", "asset-details": "Detalhes do ativo", "assign-assets": "Atribuir ativos", - "assign-assets-text": "Atribuir { count, plural, =1 {1 asset} other {# assets} } a cliente", + "assign-assets-text": "Atribuir { count, plural, =1 {1 ativo} other {# ativos} } ao cliente", + "assign-asset-to-edge-title": "Atribuir ativo(s) ao Edge", + "assign-asset-to-edge-text": "Selecione os ativos a serem atribuídos ao Edge", "delete-assets": "Excluir ativos", - "unassign-assets": "Remover atribuição de ativos", - "unassign-assets-action-title": "Remover atribuição de { count, plural, =1 {1 asset} other {# assets} } a cliente", + "unassign-assets": "Desatribuir ativos", + "unassign-assets-action-title": "Desatribuir { count, plural, =1 {1 ativo} other {# ativos} } do cliente", "assign-new-asset": "Atribuir novo ativo", "delete-asset-title": "Tem certeza de que deseja excluir o ativo '{{assetName}}'?", - "delete-asset-text": "Cuidado, após confirmar, não será possível recuperar o ativo e nenhum dado associado.", - "delete-assets-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 asset} other {# assets} }?", - "delete-assets-action-title": "Excluir { count, plural, =1 {1 asset} other {# assets} }", - "delete-assets-text": "Cuidado, após confirmar, todos os ativos selecionados serão removidos e não será possível recuperar nenhum dado associado.", + "delete-asset-text": "Atenção: após a confirmação, o ativo e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-assets-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 ativo} other {# ativos} }?", + "delete-assets-action-title": "Excluir { count, plural, =1 {1 ativo} other {# ativos} }", + "delete-assets-text": "Atenção: após a confirmação, todos os ativos selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", "make-public-asset-title": "Tem certeza de que deseja tornar o ativo '{{assetName}}' público?", - "make-public-asset-text": "Após confirmar, o ativo e todos os dados associados a ele se tornarão públicos e poderão ser acessados por outros.", + "make-public-asset-text": "Após a confirmação, o ativo e todos os seus dados serão tornados públicos e acessíveis por outros.", "make-private-asset-title": "Tem certeza de que deseja tornar o ativo '{{assetName}}' privado?", - "make-private-asset-text": "Após confirmar, o ativo e todos os dados associados a ele se tornarão privados e não poderão ser acessados por outros.", - "unassign-asset-title": "Tem certeza de que deseja remover a atribuição do ativo '{{assetName}}'?", - "unassign-asset-text": "Após confirmar, a atribuição do ativo será removida e ele não poderá ser acessado pelo cliente.", - "unassign-asset": "Remover atribuição de ativo", - "unassign-assets-title": "Tem certeza de que deseja remover a atribuição de { count, plural, =1 {1 asset} other {# assets} }?", - "unassign-assets-text": "Após confirmar, a atribuição de todos os ativos selecionados será removida e eles não poderão ser acessados pelo cliente.", + "make-private-asset-text": "Após a confirmação, o ativo e todos os seus dados serão tornados privados e não estarão acessíveis por outros.", + "unassign-asset-title": "Tem certeza de que deseja desatribuir o ativo '{{assetName}}'?", + "unassign-asset-text": "Após a confirmação, o ativo será desatribuído e não estará acessível pelo cliente.", + "unassign-asset": "Desatribuir ativo", + "unassign-assets-title": "Tem certeza de que deseja desatribuir { count, plural, =1 {1 ativo} other {# ativos} }?", + "unassign-assets-text": "Após a confirmação, todos os ativos selecionados serão desatribuídos e não estarão acessíveis pelo cliente.", "copyId": "Copiar ID do ativo", "idCopiedMessage": "O ID do ativo foi copiado para a área de transferência", "select-asset": "Selecionar ativo", - "no-assets-matching": "Nenhum ativo encontrado que coincida com '{{entity}}'.", - "asset-required": "O ativo é obrigatório", - "name-starts-with": "O nome do ativo começa com", + "no-assets-matching": "Nenhum ativo correspondente a '{{entity}}' foi encontrado.", + "asset-required": "O ativo é obrigatório.", + "name-starts-with": "Expressão do nome do ativo", + "help-text": "Use '%' conforme necessário: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", + "search": "Pesquisar ativos", "import": "Importar ativos", - "asset-file": "Arquivo de ativos", - "search": "Pesquisar ativo", - "selected-assets": "{ count, plural, =1 {1 asset} other {# assets} } selecionado(s)", - "label": "Etiqueta" + "asset-file": "Arquivo de ativo", + "label": "Rótulo", + "assign-asset-to-edge": "Atribuir ativo(s) ao edge", + "unassign-asset-from-edge": "Desatribuir ativo", + "unassign-asset-from-edge-title": "Tem certeza de que deseja desatribuir o ativo '{{assetName}}'?", + "unassign-asset-from-edge-text": "Após a confirmação, o ativo será desatribuído e não estará acessível pelo edge.", + "unassign-assets-from-edge-title": "Tem certeza de que deseja desatribuir { count, plural, =1 {1 ativo} other {# ativos} }?", + "unassign-assets-from-edge-text": "Após a confirmação, todos os ativos selecionados serão desatribuídos e não estarão acessíveis pelo edge.", + "selected-assets": "{ count, plural, =1 {1 ativo} other {# ativos} } selecionado(s)" }, "attribute": { "attributes": "Atributos", - "latest-telemetry": "Última telemetria", - "attributes-scope": "Escopo de atributos de entidade", + "latest-telemetry": "Telemetria mais recente", + "no-latest-telemetry": "Sem telemetria mais recente", + "attributes-scope": "Escopo de atributos da entidade", "scope-telemetry": "Telemetria", - "scope-latest-telemetry": "Última telemetria", + "scope-latest-telemetry": "Telemetria mais recente", "scope-client": "Atributos do cliente", "scope-server": "Atributos do servidor", "scope-shared": "Atributos compartilhados", + "scope-client-short": "Cliente", + "scope-server-short": "Servidor", + "scope-shared-short": "Compartilhado", + "scope-latest-short": "Mais recente", + "scope-any": "Qualquer", "add": "Adicionar atributo", "key": "Chave", - "last-update-time": "Horário da última atualização", - "key-required": "A chave de atributo é obrigatória.", + "key-max-length": "A chave deve ter menos de 256 caracteres", + "last-update-time": "Hora da última atualização", + "key-required": "A chave do atributo é obrigatória.", "value": "Valor", "value-required": "O valor do atributo é obrigatório.", - "delete-attributes-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 attribute} other {# attributes} }?", - "delete-attributes-text": "Cuidado, após confirmar, todos os atributos selecionados serão removidos.", + "telemetry-key-required": "A chave de telemetria é obrigatória", + "telemetry-value-required": "O valor de telemetria é obrigatório", + "delete-attributes-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 atributo} other {# atributos} }?", + "delete-attributes-text": "Atenção: após a confirmação, todos os atributos selecionados serão removidos.", "delete-attributes": "Excluir atributos", "enter-attribute-value": "Inserir valor do atributo", "show-on-widget": "Mostrar no widget", @@ -330,15 +850,180 @@ "prev-widget": "Widget anterior", "add-to-dashboard": "Adicionar ao dashboard", "add-widget-to-dashboard": "Adicionar widget ao dashboard", - "selected-attributes": "{ count, plural, =1 {1 attribute} other {# attributes} } selecionado(s)", - "selected-telemetry": "{ count, plural, =1 {1 telemetry unit} other {# telemetry units} } selecionado(s)", + "selected-attributes": "{ count, plural, =1 {1 atributo} other {# atributos} } selecionado(s)", + "selected-telemetry": "{ count, plural, =1 {1 unidade de telemetria} other {# unidades de telemetria} } selecionada(s)", "no-attributes-text": "Nenhum atributo encontrado", - "no-telemetry-text": "Nenhuma telemetria encontrada" + "no-telemetry-text": "Nenhuma telemetria encontrada", + "copy-key": "Copiar chave", + "add-telemetry": "Adicionar telemetria", + "copy-value": "Copiar valor", + "delete-timeseries": { + "start-time": "Hora de início", + "ends-on": "Termina em", + "strategy": "Estratégia", + "delete-strategy": "Estratégia de exclusão", + "all-data": "Excluir todos os dados", + "all-data-except-latest-value": "Excluir todos os dados exceto o valor mais recente", + "latest-value": "Excluir o valor mais recente", + "all-data-for-time-period": "Excluir todos os dados do período", + "rewrite-latest-value": "Reescrever o valor mais recente" + } + }, + "api-usage": { + "api-features": "Funcionalidades de API", + "api-usage": "Uso de API", + "alarm": "Alarme", + "alarms-created": "Alarmes criados", + "queue-stats": "Estatísticas de fila", + "processing-failures-and-timeouts": "Falhas de processamento e tempos limite", + "exceptions": "Exceções", + "alarms-created-daily-activity": "Atividade diária de alarmes criados", + "alarms-created-hourly-activity": "Atividade horária de alarmes criados", + "alarms-created-monthly-activity": "Atividade mensal de alarmes criados", + "data-points": "Pontos de dados", + "data-points-storage-days": "Dias de armazenamento de pontos de dados", + "data-points-storage-days-hourly-activity": "Atividade horária de dias de armazenamento de pontos de dados", + "data-points-storage-days-daily-activity": "Atividade diária de dias de armazenamento de pontos de dados", + "data-points-storage-days-monthly-activity": "Atividade mensal de dias de armazenamento de pontos de dados", + "device-api": "API do dispositivo", + "email": "Email", + "email-messages": "Mensagens de email", + "email-messages-daily-activity": "Atividade diária de mensagens de email", + "email-messages-monthly-activity": "Atividade mensal de mensagens de email", + "executions": "Execuções", + "scripts": "Scripts", + "scripts-hourly-activity": "Atividade horária de scripts", + "scripts-daily-activity": "Atividade diária de scripts", + "scripts-monthly-activity": "Atividade mensal de scripts", + "javascript": "JavaScript", + "javascript-executions": "Execuções de JavaScript", + "tbel": "TBEL", + "tbel-executions": "Execuções de TBEL", + "latest-error": "Último erro", + "messages": "Mensagens", + "notifications": "Notificações", + "notifications-email-sms": "Notificações (Email/SMS)", + "notifications-hourly-activity": "Atividade horária de notificações", + "permanent-failures": "${entityName} Falhas permanentes", + "permanent-timeouts": "${entityName} Tempos Limite permanentes", + "processing-failures": "${entityName} Falhas de processamento", + "processing-timeouts": "${entityName} Tempos Limite de processamento", + "rule-chain": "Cadeia de regras", + "rule-engine": "Motor de regras", + "rule-engine-executions": "Execuções do motor de regras", + "rule-engine-hourly-activity": "Atividade horária do motor de regras", + "rule-engine-daily-activity": "Atividade diária do motor de regras", + "rule-engine-monthly-activity": "Atividade mensal do motor de regras", + "rule-engine-statistics": "Estatísticas do motor de regras", + "rule-node": "Nó de regra", + "sms": "SMS", + "sms-messages": "Mensagens SMS", + "sms-messages-hourly-activity": "Atividade horária de mensagens SMS", + "sms-messages-daily-activity": "Atividade diária de mensagens SMS", + "sms-messages-monthly-activity": "Atividade mensal de mensagens SMS", + "successful": "${entityName} Bem-sucedido", + "telemetry": "Telemetria", + "telemetry-persistence": "Persistência de telemetria", + "telemetry-persistence-daily-activity": "Atividade diária de persistência de telemetria", + "telemetry-persistence-hourly-activity": "Atividade horária de persistência de telemetria", + "telemetry-persistence-monthly-activity": "Atividade mensal de persistência de telemetria", + "transport": "Transporte", + "transport-msg-hourly-activity": "Atividade horária de mensagens de transporte", + "transport-msg-daily-activity": "Atividade diária de mensagens de transporte", + "transport-msg-monthly-activity": "Atividade mensal de mensagens de transporte", + "transport-daily-activity": "Atividade diária de transporte", + "transport-data-points": "Pontos de dados de transporte", + "transport-data-points-hourly-activity": "Atividade horária de pontos de dados de transporte", + "transport-data-points-daily-activity": "Atividade diária de pontos de dados de transporte", + "transport-data-points-monthly-activity": "Atividade mensal de pontos de dados de transporte", + "view-details": "Visualizar detalhes", + "view-statistics": "Visualizar estatísticas", + "transport-messages": "Mensagens de transporte", + "transport-messages-hourly-activity": "Atividade horária de mensagens de transporte", + "transport-data-point-hourly-activity": "Atividade horária de ponto de dados de transporte", + "javascript-function-executions": "Execuções de funções JavaScript", + "javascript-function-executions-hourly-activity": "Atividade horária de execuções de funções JavaScript", + "javascript-function-executions-daily-activity": "Atividade diária de execuções de funções JavaScript", + "javascript-function-executions-monthly-activity": "Atividade mensal de execuções de funções JavaScript", + "tbel-function-executions": "Execuções de funções TBEL", + "tbel-function-executions-hourly-activity": "Atividade horária de execuções de funções TBEL", + "tbel-function-executions-daily-activity": "Atividade diária de execuções de funções TBEL", + "tbel-function-executions-monthly-activity": "Atividade mensal de execuções de funções TBEL", + "created-reports": "Relatórios criados", + "created-reports-hourly-activity": "Atividade horária de relatórios criados", + "created-reports-daily-activity": "Atividade diária de relatórios criados", + "created-reports-monthly-activity": "Atividade mensal de relatórios criados", + "emails": "Emails", + "emails-hourly-activity": "Atividade horária de emails", + "emails-daily-activity": "Atividade diária de emails", + "emails-monthly-activity": "Atividade mensal de emails", + "status": { + "enabled": "Ativado", + "disabled": "Desativado", + "warning": "Aviso" + } + }, + "api-limit": { + "cassandra-write-queries-core": "Consultas de escrita Cassandra da API Rest", + "cassandra-read-queries-core": "Consultas de leitura Cassandra da API REST e telemetria WS", + "cassandra-write-queries-rule-engine": "Consultas de escrita Cassandra de telemetria do motor de regras", + "cassandra-read-queries-rule-engine": "Consultas de leitura Cassandra de telemetria do motor de regras", + "cassandra-write-queries-monolith": "Consultas de escrita Cassandra de telemetria monolítica", + "cassandra-read-queries-monolith": "Consultas de leitura Cassandra de telemetria monolítica", + "entity-version-creation": "Criação de versão de entidade", + "entity-version-load": "Carregamento de versão de entidade", + "notification-requests": "Requisições de notificação", + "notification-requests-per-rule": "Requisições de notificação por regra", + "rest-api-requests": "Requisições de API REST", + "rest-api-requests-per-customer": "Requisições de API REST por cliente", + "transport-messages": "Mensagens de transporte", + "transport-messages-per-device": "Mensagens de transporte por dispositivo", + "transport-messages-per-gateway": "Mensagens de transporte por gateway", + "transport-messages-per-gateway-device": "Mensagens de transporte por dispositivo de gateway", + "ws-updates-per-session": "Atualizações WS por sessão", + "edge-events": "Eventos de edge", + "edge-events-per-edge": "Eventos de edge por edge", + "edge-uplink-messages": "Mensagens uplink de edge", + "edge-uplink-messages-per-edge": "Mensagens uplink de edge por edge" + }, + "api-key": { + "api-key": "Chave de API", + "api-keys": "Chaves de API", + "delete-api-key-title": "Tem certeza de que deseja excluir a chave de API '{{name}}'?", + "delete-api-key-text": "Atenção: após a confirmação, a chave se tornará irrecuperável.", + "delete-api-keys-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 chave de API} other {# chaves de API} }?", + "delete-api-keys-text": "Atenção: após a confirmação, todas as chaves selecionadas se tornarão irrecuperáveis.", + "expiration-date": "Data de expiração", + "date": "data", + "description": "Descrição", + "disable": "Desativar", + "edit-description": "Editar descrição", + "enable": "Ativar chave de API ", + "expiration-time": "Tempo de expiração", + "expiration-time-never": "Nunca", + "expiration-time-custom": "Personalizado", + "generate": "Gerar", + "generate-title": "Gerar chave de API", + "generate-text": "Nota: A chave de API herda as permissões do usuário para o qual foi criada.", + "generated-api-key-title": "Chave de API gerada. Vamos verificar a conectividade!", + "generated-api-key-copy": "Certifique-se de copiar e salvar sua chave de API agora, pois não será possível visualizá-la novamente.", + "generated-api-key-command": "Use as instruções a seguir para verificar a conectividade. Como resultado, você receberá as informações do usuário atual:", + "generated-api-key-insecure-url": "A execução de comandos por uma conexão HTTP não segura enviará sua chave de API sem criptografia, tornando-a vulnerável à interceptação.", + "list": "{ count, plural, =1 {Uma chave de API} other {Lista de # chaves de API} }", + "manage": "Gerenciar", + "manage-api-keys": "Gerenciar chaves de API", + "no-found": "Nenhuma chave de API encontrada", + "selected-api-keys": "{ count, plural, =1 {1 chave de API} other {# chaves de API} } selecionada(s)", + "search": "Pesquisar chaves de API", + "status": "Status", + "status-active": "Ativo", + "status-inactive": "Inativo", + "status-expired": "Expirado" }, "audit-log": { "audit": "Auditoria", "audit-logs": "Logs de auditoria", - "timestamp": "Carimbo de data/hora", + "timestamp": "Timestamp", "entity-type": "Tipo de entidade", "entity-name": "Nome da entidade", "user": "Usuário", @@ -352,8 +1037,10 @@ "type-attributes-deleted": "Atributos excluídos", "type-rpc-call": "Chamada RPC", "type-credentials-updated": "Credenciais atualizadas", - "type-assigned-to-customer": "Atribuído ao cliente", - "type-unassigned-from-customer": "Atribuição a cliente removida", + "type-assigned-to-customer": "Atribuído ao Cliente", + "type-unassigned-from-customer": "Desatribuído do Cliente", + "type-assigned-to-edge": "Atribuído ao Edge", + "type-unassigned-from-edge": "Desatribuído do Edge", "type-activated": "Ativado", "type-suspended": "Suspenso", "type-credentials-read": "Credenciais lidas", @@ -361,66 +1048,694 @@ "type-relation-add-or-update": "Relação atualizada", "type-relation-delete": "Relação excluída", "type-relations-delete": "Todas as relações excluídas", - "type-alarm-ack": "Confirmado", - "type-alarm-clear": "Limpo", + "type-alarm-ack": "Alarme reconhecido", + "type-alarm-clear": "Alarme limpo", + "type-alarm-delete": "Alarme excluído", + "type-alarm-assign": "Alarme atribuído", + "type-alarm-unassign": "Alarme desatribuído", + "type-added-comment": "Comentário adicionado", + "type-updated-comment": "Comentário atualizado", + "type-deleted-comment": "Comentário excluído", "type-login": "Login", "type-logout": "Logout", "type-lockout": "Bloqueio", - "status-success": "Êxito", + "status-success": "Sucesso", "status-failure": "Falha", - "audit-log-details": "Detalhes da trilha de auditoria", + "audit-log-details": "Detalhes do log de auditoria", "no-audit-logs-prompt": "Nenhum log encontrado", "action-data": "Dados da ação", "failure-details": "Detalhes da falha", "search": "Pesquisar logs de auditoria", "clear-search": "Limpar pesquisa", - "type-assigned-from-tenant": "Atribuído do locatário", - "type-assigned-to-tenant": "Atribuído a locatário" + "type-assigned-from-tenant": "Atribuído do Tenant", + "type-assigned-to-tenant": "Atribuído ao Tenant", + "type-provision-success": "Dispositivo provisionado", + "type-provision-failure": "Falha no provisionamento do dispositivo", + "type-timeseries-updated": "Telemetria atualizada", + "type-timeseries-deleted": "Telemetria excluída", + "type-sms-sent": "SMS enviado", + "any-type": "Qualquer tipo", + "audit-log-filter-title": "Filtro de log de auditoria", + "filter-title": "Filtro", + "filter-types": "Tipos de log de auditoria" + }, + "debug-settings": { + "label": "Configuração de depuração", + "on-failure": "Somente falhas (24/7)", + "all-messages": "Todas as mensagens ({{time}})", + "failures": "Falhas", + "entity": "entidade", + "hint": { + "main-limited": "Não serão registradas mais de {{msg}} mensagens de depuração de {{entity}} a cada {{time}}.", + "on-failure": "Registrar apenas mensagens de erro.", + "all-messages": "Registrar todas as mensagens de depuração." + } + }, + "calculated-fields": { + "expression": "Expressão", + "no-found": "Nenhum campo calculado encontrado", + "list": "{ count, plural, =1 {Um campo calculado} other {Lista de # campos calculados} }", + "selected-fields": "{ count, plural, =1 {1 campo calculado} other {# campos calculados} } selecionado(s)", + "type": { + "simple": "Simples", + "simple-hint": "Cálculo aritmético simples baseado em argumentos de entrada.", + "script": "Script", + "script-hint": "Cálculo sobre argumentos definidos usando um script TBEL.", + "geofencing": "Geofencing", + "geofencing-hint": "Avaliação da posição GPS da entidade e transições em relação aos grupos de zonas de geofencing configurados.", + "propagation": "Propagação", + "propagation-hint": "Propagação de dados para entidades pai ou filho com base na direção e tipo de relação.", + "related-entities-aggregation": "Agregação de entidades relacionadas", + "related-entities-aggregation-hint": "Agregação dos dados mais recentes de entidades relacionadas.", + "time-series-data-aggregation": "Agregação de dados de série temporal", + "time-series-data-aggregation-hint": "Agregação de dados históricos de uma entidade atual." + }, + "preview": "Pré-visualização", + "arguments": "Argumentos", + "decimals-by-default": "Casas decimais padrão", + "debugging": "Depuração de campo calculado", + "calculated-field-details": "Detalhes do campo calculado", + "argument-name": "Nome do argumento", + "name": "Nome", + "datasource": "Fonte de dados", + "add-argument": "Adicionar argumento", + "test-script-function": "Testar função do script", + "no-arguments": "É necessário pelo menos um argumento.", + "argument-settings": "Configurações do argumento", + "argument-current": "Entidade atual", + "argument-current-tenant": "Tenant atual", + "argument-device": "Dispositivo", + "argument-asset": "Ativo", + "argument-customer": "Cliente", + "argument-tenant": "Tenant atual", + "argument-owner": "Proprietário atual", + "argument-relation-query": "Entidades relacionadas", + "argument-type": "Tipo de argumento", + "attribute": "Atributo", + "copy-argument-name": "Copiar nome do argumento", + "timeseries-key": "Chave de série temporal", + "device-name": "Nome do dispositivo", + "latest-telemetry": "Telemetria mais recente", + "rolling": "Série temporal deslizante", + "attribute-scope": "Escopo do atributo", + "server-attributes": "Atributos do servidor", + "client-attributes": "Atributos do cliente", + "shared-attributes": "Atributos compartilhados", + "attribute-key": "Chave do atributo", + "default-value": "Valor padrão", + "default-value-required": "O valor padrão é obrigatório.", + "limit": "Máximo de valores", + "time-window": "Janela de tempo", + "customer-name": "Nome do cliente", + "asset-name": "Nome do ativo", + "timeseries": "Série temporal", + "output": "Saída", + "output-hint": "Define como a saída é processada.", + "create": "Criar novo campo calculado", + "file": "Arquivo de campo calculado", + "invalid-file-error": "Formato de arquivo inválido. Certifique-se de que o arquivo é um arquivo JSON válido.", + "import": "Importar campo calculado", + "export": "Exportar campo calculado", + "export-failed-error": "Não foi possível exportar o campo calculado: {{error}}", + "output-type": "Tipo de saída", + "delete-title": "Tem certeza de que deseja excluir o campo calculado '{{title}}'?", + "delete-text": "Atenção: após a confirmação, o campo calculado e todos os dados relacionados serão irrecuperáveis.", + "delete-multiple-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 campo calculado} other {# campos calculados} }?", + "delete-multiple-text": "Atenção: após a confirmação, todos os campos calculados selecionados serão removidos e todos os dados relacionados serão irrecuperáveis.", + "test-with-this-message": "Testar com esta mensagem", + "use-latest-timestamp": "Usar timestamp mais recente", + "entity-coordinates": "Coordenadas da entidade", + "latitude-time-series-key": "Chave de série temporal de latitude", + "latitude-time-series-key-required": "A chave de série temporal de latitude é obrigatória.", + "longitude-time-series-key": "Chave de série temporal de longitude", + "longitude-time-series-key-required": "A chave de série temporal de longitude é obrigatória.", + "geofencing-zone-groups": "Grupos de zonas de geofencing", + "geofencing-zone-groups-settings": "Configurações do grupo de zonas de geofencing", + "target-zone": "Zona alvo", + "perimeter-key": "Chave do perímetro", + "report-strategy": "Estratégia de relatório", + "no-zone-configured": "É necessária pelo menos uma zona.", + "no-zone-configured-required": "Pelo menos um grupo de zonas deve ser configurado.", + "add-zone-group": "Adicionar grupo de zonas", + "report-transition-event-only": "Somente eventos de transição", + "report-presence-status-only": "Somente status de presença", + "report-transition-event-and-presence": "Status de presença e eventos de transição", + "perimeter-attribute-key": "Chave do atributo de perímetro", + "perimeter-attribute-key-required": "A chave do atributo de perímetro é obrigatória.", + "perimeter-attribute-key-pattern": "A chave do atributo de perímetro é inválida.", + "entity-zone-relationship": "Caminho da entidade para as zonas", + "direction": "Direção da relação", + "direction-from": "Da entidade para a zona", + "direction-to": "Da zona para a entidade", + "relation-type": "Tipo de relação", + "create-relation-with-matched-zones": "Criar relações para a entidade de origem com as zonas correspondentes", + "relation-level": "Nível de relação", + "fetch-last-available-level": "Buscar apenas o último nível disponível", + "zone-group-refresh-interval": "Intervalo de atualização dos grupos de zonas", + "copy-zone-group-name": "Copiar nome do grupo de zonas", + "open-details-page": "Abrir página de detalhes da entidade", + "level": "Nível", + "direction-level": "Direção", + "direction-up": "Acima", + "direction-up-parent": "Acima para o pai", + "direction-down": "Abaixo", + "direction-down-child": "Abaixo para o filho", + "add-level": "Adicionar nível", + "delete-level": "Excluir nível", + "no-level": "Nenhum nível configurado", + "levels-required": "Pelo menos um nível deve ser configurado.", + "max-allowed-levels-error": "O nível de relação excede o máximo permitido.", + "propagation-path-related-entities": "Caminho de propagação para entidades relacionadas", + "propagate-type": { + "arguments-only": "Somente argumentos", + "expression-result": "Resultado do cálculo" + }, + "script": "Script", + "data-propagate": "Dados a propagar", + "output-key": "Chave de saída", + "copy-output-key": "Copiar chave de saída", + "aggregation-path-related-entities": "Caminho de agregação para entidades relacionadas", + "deduplication-interval": "Intervalo de deduplicação", + "deduplication-interval-min": "O intervalo de deduplicação deve ser de pelo menos {{ sec }} segundos.", + "deduplication-interval-hint": "Tempo mínimo entre agregações de telemetria.", + "deduplication-interval-required": "O intervalo de deduplicação é obrigatório.", + "calculated-field-filter-title": "Filtro de campo calculado", + "filter-title": "Filtro", + "calculated-field-types": "Tipos de campo calculado", + "events": "Eventos", + "any-type": "Qualquer tipo", + "metrics": { + "metrics": "Métricas", + "metrics-empty": "Pelo menos uma métrica deve ser configurada.", + "metric-name": "Nome da métrica", + "metric-name-required": "O nome da métrica é obrigatório.", + "metric-name-pattern": "O nome da métrica é inválido.", + "metric-name-duplicate": "Já existe uma métrica com esse nome.", + "metric-name-max-length": "O nome da métrica deve ter menos de 256 caracteres.", + "metric-name-forbidden": "O nome da métrica é reservado e não pode ser usado.", + "copy-metric-name": "Copiar nome da métrica", + "argument-name": "Nome do argumento", + "aggregation": "Agregação", + "aggregation-type": { + "avg": "Média", + "min": "Mínimo", + "max": "Máximo", + "sum": "Soma", + "count": "Contagem", + "count-unique": "Contagem única" + }, + "filtered": "Filtrado", + "value-source": "Fonte do valor", + "value-source-hint": "Define como o valor para agregação é obtido.", + "value-source-type": { + "key": "Chave", + "function": "Função" + }, + "no-metrics-configured": "É necessária pelo menos uma métrica.", + "add-metric": "Adicionar métrica", + "max-metrics": "Número máximo de métricas atingido.", + "metric-settings": "Configurações da métrica", + "filter": "Filtro", + "filter-hint": "Habilita a filtragem de entidades durante a agregação. A função de filtro deve retornar um valor booleano e pode usar todos os argumentos configurados." + }, + "output-strategy": { + "strategy": "Estratégia", + "process-right-away": "Processar imediatamente", + "process-rule-chains": "Processar via Cadeias de regras", + "save-time-series": "Salvar em série temporal", + "save-database": "Salvar no banco de dados", + "save-latest-values": "Salvar nos valores mais recentes", + "send-web-sockets": "Enviar para WebSockets", + "save-calculated-fields": "Enviar para Campos calculados", + "update-attribute-only-on-value-change": "Atualizar atributo somente na mudança de valor", + "send-attributes-updated-notification": "Enviar notificação de atributos atualizados", + "ttl": "TTL personalizado", + "ttl-required": "O TTL é obrigatório", + "ttl-min": "Somente TTL mínimo de 0 é permitido", + "processing-parameters": "Parâmetros de processamento", + "hint": { + "strategy": "Controla se o resultado é processado imediatamente ou enviado a uma cadeia de regras para processamento adicional.", + "processing-options": "Opções de processamento", + "update-attribute-only-on-value-change": "Atualiza o atributo em cada mensagem recebida, independentemente de o valor ter mudado. Isso aumenta o uso da API e reduz o desempenho.", + "update-attribute-only-on-value-change-enabled": "Atualiza o atributo somente quando o valor muda. Se o valor não mudar, os timestamps não são atualizados e as notificações não são enviadas.", + "send-attributes-updated-notification": "Envia um evento de Atributos Atualizados para a cadeia de regras padrão.", + "save-time-series": "Salva os dados de série temporal na tabela ts_kv do banco de dados.", + "save-database": "Salva os dados de atributos no banco de dados.", + "save-latest-values": "Atualiza os dados de série temporal na tabela ts_kv_latest do banco de dados se o novo valor for mais recente.", + "send-web-sockets-attribute": "Notifica as assinaturas WebSocket sobre atualizações nos dados de atributos.", + "send-web-sockets-time-series": "Notifica as assinaturas WebSocket sobre atualizações nos dados de série temporal.", + "save-calculated-fields-attribute": "Notifica os campos calculados sobre atualizações nos dados de atributos.", + "save-calculated-fields-time-series": "Notifica os campos calculados sobre atualizações nos dados de série temporal.", + "ttl": "Define o período de retenção dos dados de série temporal. Se desabilitado, o TTL do Perfil do tenant é usado." + } + }, + "aggregate-interval-type": "Tipo de intervalo de agregação", + "aggregate-interval-value": "Valor do intervalo de agregação", + "aggregate-interval-value-required": "O valor do intervalo de agregação é obrigatório.", + "aggregate-interval-value-min": "O valor do intervalo de agregação deve ser de pelo menos { sec, plural, =0 {0 segundo} =1 {1 segundo} other {# segundos} }.", + "aggregate-interval-value-step-multiple-of": "O valor do intervalo de agregação deve ser divisor ou múltiplo de 1 dia.", + "aggregate-period": { + "hour": "Hora", + "day": "Dia", + "week": "Semana (Seg - Dom)", + "week-sun-sat": "Semana (Dom - Sáb)", + "month": "Mês", + "quarter": "Trimestre", + "year": "Ano", + "custom": "Personalizado" + }, + "aggregate-period-hint-offset": "Seu intervalo de agregação será: {{ interval }}", + "aggregate-period-hint-offset-and-so-on": "Seu intervalo de agregação será: {{ interval }} e assim por diante.", + "entity-aggregation": { + "argument-hint": "Os dados serão buscados da entidade atual.", + "argument-title-hint": "Define os argumentos de entrada usados para agregação.", + "argument-setting-hint": "A telemetria mais recente é o único tipo de argumento disponível para este campo calculado.", + "aggregation-interval": "Intervalo de agregação", + "aggregation-interval-hint": "Define com que frequência a agregação é realizada. Exemplo: a cada 1 hora agrega dados às 00:00, 01:00, 02:00, etc. Os resultados da agregação são armazenados com o timestamp correspondente ao início do intervalo de agregação.", + "apply-offset": "Aplicar deslocamento ao intervalo de agregação", + "apply-offset-hint": "Define quanto deslocar o início de cada período de agregação (ex.: +10 minutos - 00:10, 01:10).", + "offset-value": "Valor do deslocamento", + "offset-value-required": "O valor do deslocamento é obrigatório.", + "offset-value-min": "O valor do deslocamento deve ser um número inteiro positivo.", + "offset-value-max": "O valor do deslocamento deve ser menor que o valor do intervalo de agregação.", + "wait-delay": "Aplicar tempo de espera para telemetria atrasada", + "wait-delay-hint": "Define quanto tempo aguardar pela telemetria atrasada após o término do intervalo. Se tal telemetria chegar, o resultado para aquele intervalo será recalculado.", + "duration": "Duração", + "duration-required": "A duração é obrigatória.", + "duration-min": "A duração deve ser de pelo menos 1 minuto.", + "duration-hint": "Quanto tempo aguardar pelos dados atrasados após o término do intervalo.", + "produce-intermediate-result": "Produzir resultado intermediário", + "produce-intermediate-result-hint": "Calcula métricas durante o intervalo atual para produzir um resultado intermediário. As atualizações ocorrem no máximo uma vez a cada {{ time }}." + }, + "hint": { + "arguments-simple-with-rolling": "O campo calculado do tipo simples não deve conter chaves com tipo de série temporal deslizante.", + "arguments-propagate-arguments-with-rolling": "O tipo 'Série temporal deslizante' é incompatível com a propagação 'Somente argumentos'.", + "arguments-propagate-argument-entity-type": "O tipo de entidade é incompatível com a propagação 'Somente argumentos'.", + "arguments-propagate-argument-must-current-entity": "Pelo menos um argumento deve ser configurado com o tipo de entidade de origem 'Entidade atual'.", + "arguments-empty": "Pelo menos um argumento deve ser especificado.", + "expression-required": "A expressão é obrigatória.", + "expression-invalid": "A expressão é inválida", + "expression-max-length": "O comprimento da expressão deve ter menos de 255 caracteres.", + "argument-name-required": "O nome do argumento é obrigatório.", + "argument-name-pattern": "O nome do argumento é inválido.", + "argument-name-duplicate": "Já existe um argumento com esse nome.", + "argument-name-max-length": "O nome do argumento deve ter menos de 256 caracteres.", + "argument-name-forbidden": "O nome do argumento é reservado e não pode ser usado.", + "output-key-required": "A chave de saída é obrigatória.", + "output-key-pattern": "A chave de saída é inválida.", + "output-key-duplicate": "Já existe uma chave com esse nome.", + "output-key-max-length": "A chave de saída deve ter menos de 256 caracteres.", + "output-key-forbidden": "A chave de saída é reservada e não pode ser usada.", + "entity-type-required": "O tipo de entidade é obrigatório", + "name-required": "O nome é obrigatório.", + "name-pattern": "O nome é inválido.", + "name-duplicate": "Já existe um nome com esse nome.", + "name-max-length": "O nome deve ter menos de 256 caracteres.", + "name-forbidden": "O nome é reservado e não pode ser usado.", + "argument-type-required": "O tipo de argumento é obrigatório.", + "max-args": "Número máximo de argumentos atingido.", + "decimals-range": "As casas decimais padrão devem ser um número entre 0 e 15.", + "expression": "A expressão padrão demonstra como transformar uma temperatura de Fahrenheit para Celsius.", + "arguments-entity-not-found": "Entidade alvo do argumento não encontrada.", + "use-latest-timestamp": "Se habilitado, o valor calculado será persistido usando o timestamp mais recente da telemetria dos argumentos, em vez do horário do servidor.", + "entity-coordinates": "Especifique as chaves de série temporal que fornecem as coordenadas GPS da entidade (latitude e longitude).", + "geofencing-zone-groups": "Defina um ou mais grupos de zonas de geofencing para verificar (ex.: 'allowedZones', 'restrictedZones'). Cada grupo deve ter um nome único, que é usado como prefixo para as chaves de telemetria de saída do campo calculado.", + "perimeter-attribute-key": "Defina a chave do atributo que contém a definição do perímetro da zona de geofencing. O perímetro é sempre obtido dos atributos do lado do servidor da entidade de zona.", + "report-strategy": "O status de presença informa se a entidade está atualmente DENTRO ou FORA do grupo de zonas. Os eventos de transição informam quando a entidade ENTROU ou SAIU do grupo de zonas.", + "create-relation-with-matched-zones": "Criar e manter automaticamente relações entre a entidade e as zonas em que ela está atualmente. As relações são removidas quando a entidade sai de uma zona e criadas quando ela entra em uma nova.", + "relation-type-required": "O tipo de relação é obrigatório.", + "relation-level-required": "O nível de relação é obrigatório.", + "relation-level-min": "O valor mínimo do nível de relação é 1.", + "relation-level-max": "O valor máximo do nível de relação é {{max}}.", + "geofencing-empty": "Pelo menos um grupo de zonas deve ser configurado.", + "geofencing-entity-not-found": "Entidade alvo do geofencing não encontrada.", + "max-geofencing-zone": "Número máximo de zonas de geofencing atingido.", + "zone-group-refresh-interval": "Define com que frequência os grupos de zonas configurados via entidades relacionadas são atualizados.", + "zone-group-refresh-interval-required": "O intervalo de atualização dos grupos de zonas é obrigatório.", + "zone-group-refresh-interval-min": "O intervalo de atualização do grupo de zonas deve ser de pelo menos {{ min }} segundos.", + "propagation-path-related-entities": "Define um caminho direto de nível único para uma entidade relacionada com base na direção selecionada e no tipo de relação. Apenas relações entre entidades de dispositivo, ativo, cliente e tenant são suportadas. O máximo de entidades resolvidas pelo caminho de relação é {{ max }}.", + "data-propagate": "Define os dados a serem propagados a partir dos argumentos configurados abaixo. 'Somente argumentos' usa os dados recuperados diretamente, enquanto 'Resultado do cálculo' calcula um novo valor a partir desses dados.", + "aggregation-path-related-entities": "Define um caminho de agregação de nível único via relações diretas com entidades pai ou filho, com base na direção e no tipo de relação. Apenas relações entre entidades de dispositivo, ativo, cliente e tenant são suportadas. O máximo de entidades resolvidas pelo caminho de relação é {{ max }}.", + "arguments-aggregation": "Define os argumentos de entrada usados para filtragem e agregação.", + "setting-arguments-aggregation": "Os dados serão buscados das entidades relacionadas configuradas no caminho de agregação.", + "metrics": "Define as métricas agregadas com base nos argumentos configurados.", + "entity-aggregation-metrics": "Define as métricas agregadas com base nos argumentos configurados ao longo dos intervalos de tempo especificados.", + "import-invalid-calculated-field-type": "Não foi possível importar o campo calculado: Estrutura de campo calculado inválida.", + "simple-expression-title": "Expressão aritmética que define como o valor calculado é computado.", + "script-title": "Script TBEL que define a lógica de cálculo e os valores de saída.", + "simple-arguments": "Expressão aritmética que define como o valor calculado é computado.", + "script-arguments": "Define os argumentos de entrada disponíveis para o script." + } + }, + "alarm-rule": { + "alarm-rules-tab": "Regras de alarme", + "alarm-rule": "Regra de alarme", + "alarm-rules": "Regras de alarme", + "alarm-rules-old": "Antigas", + "alarm-rules-actual": "Atuais", + "severities": "Severidades", + "cleared": "Condição de limpeza", + "delete-title": "Tem certeza de que deseja excluir a regra de alarme '{{title}}'?", + "delete-text": "Atenção: após a confirmação, a regra de alarme e todos os dados relacionados serão irrecuperáveis.", + "delete-multiple-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 regra de alarme} other {# regras de alarme} }?", + "delete-multiple-text": "Atenção: após a confirmação, todas as regras de alarme selecionadas serão removidas e todos os dados relacionados serão irrecuperáveis.", + "create": "Criar nova regra de alarme", + "add": "Adicionar regra de alarme", + "copy": "Copiar configuração da regra de alarme", + "details": "Detalhes da regra de alarme", + "no-found": "Nenhuma regra de alarme encontrada", + "list": "{ count, plural, =1 {Uma regra de alarme} other {Lista de # regras de alarme} }", + "selected-fields": "{ count, plural, =1 {1 regra de alarme} other {# regras de alarme} } selecionada(s)", + "import": "Importar regra de alarme", + "file": "Arquivo de regra de alarme", + "export": "Exportar regra de alarme", + "export-failed-error": "Não foi possível exportar a regra de alarme: {{error}}", + "entity-type": "Tipo de entidade", + "entity-type-required": "O tipo de entidade é obrigatório.", + "alarm-type": "Tipo de alarme", + "alarm-type-hint": "Identificador único (ex.: HighTempAlarm) no escopo do originador do alarme (Dispositivo, Ativo, etc.) para evitar conflitos.", + "alarm-type-required": "O tipo de alarme é obrigatório.", + "alarm-type-pattern": "O tipo de alarme é inválido.", + "alarm-type-max-length": "O tipo de alarme deve ter menos de 256 caracteres.", + "clear-alarm": "Limpar alarme", + "value-argument": "Argumento", + "value-argument-required": "O argumento é obrigatório.", + "static-settings": "Configurações estáticas", + "configuration": "Configuração", + "static-schedule": "Estático", + "dynamic-schedule": "Dinâmico", + "operation-and": "E", + "operation-or": "OU", + "condition-during": "Durante {{during}}", + "condition-during-dynamic": "Durante \"{{ attribute }}\"", + "condition-repeat-times": "Repete { count, plural, =1 {1 vez} other {# vezes} }", + "condition-repeat-times-dynamic": "Repete \"{{ attribute }}\" vezes", + "filter-preview": "Pré-visualização do filtro", + "condition-settings": "Configurações da condição", + "static": "Estático", + "dynamic": "Dinâmico", + "argument-filters": "Filtros de argumento", + "argument-name": "Nome do argumento", + "value-type": "Tipo de valor", + "general": "Geral", + "filters": "Filtros", + "date-time-hint": "O argumento deve estar em milissegundos epoch. Exemplo: 1698839340000 equivale a 2023-11-01 12:49:00 UTC.", + "operation": "Operação", + "value-source": "Fonte do valor", + "value": "Valor", + "ignore-case": "Ignorar maiúsculas/minúsculas", + "condition": "Condição", + "script": "Script", + "add-filter": "Adicionar filtro de argumento", + "edit-filter": "Filtro de argumento", + "remove-filter": "Remover filtro de argumento", + "no-filter": "É necessário pelo menos um filtro.", + "conditions": { + "simple": "Simples", + "duration": "Duração", + "repeating": "Repetição" + }, + "schedule-title": "Agendamento", + "edit-schedule": "Editar agendamento do alarme", + "schedule-type": "Tipo de agendador", + "schedule-type-required": "O tipo de agendador é obrigatório.", + "schedule": { + "any-time": "Ativo o tempo todo", + "specific-time": "Ativo em um horário específico", + "custom": "Personalizado" + }, + "schedule-day": { + "monday": "Segunda-feira", + "tuesday": "Terça-feira", + "wednesday": "Quarta-feira", + "thursday": "Quinta-feira", + "friday": "Sexta-feira", + "saturday": "Sábado", + "sunday": "Domingo" + }, + "schedule-days": "Dias", + "schedule-time": "Horário", + "schedule-time-from": "De", + "schedule-time-to": "Até", + "schedule-days-of-week-required": "Pelo menos um dia da semana deve ser selecionado.", + "tbel": "TBEL", + "expression-type": { + "simple": "Simples", + "script": "Script" + }, + "operation-type": { + "and": "E", + "or": "Ou" + }, + "filter-predicate-type": { + "string": "String", + "numeric": "Numérico", + "boolean": "Booleano", + "complex": "Complexo" + }, + "alarm-rule-additional-info": "Informações adicionais", + "edit-alarm-rule-additional-info": "Editar informações adicionais", + "alarm-rule-additional-info-placeholder": "Forneça seus comentários e ajustes aqui para exibi-los nos detalhes do Alarme em Informações adicionais", + "alarm-rule-additional-info-hint": "Dica: use ${Argument name} para substituir os valores dos argumentos usados na condição da regra de alarme.", + "alarm-rule-additional-info-icon-hint": "Use o nome do argumento para substituir os valores dos argumentos usados na condição da regra de alarme.", + "alarm-rule-mobile-dashboard": "Dashboard móvel", + "alarm-rule-mobile-dashboard-hint": "Usado pelo aplicativo móvel como dashboard de detalhes do alarme.", + "alarm-rule-no-mobile-dashboard": "Nenhum dashboard selecionado", + "alarm-rule-condition": "Condição da regra de alarme", + "enter-alarm-rule-condition-prompt": "Adicionar condição", + "enter-alarm-rule-clear-condition-prompt": "Adicionar condição de limpeza", + "edit-alarm-rule-condition": "Condição do alarme", + "condition-type": "Tipo de condição", + "condition-type-hint": "As opções \"Duração\" e \"Repetição\" não estão disponíveis quando a operação \"Ausente por\" é usada no filtro.", + "select-alarm-severity": "Selecionar severidade do alarme", + "add-create-alarm-rule-prompt": "É necessária pelo menos uma condição de acionamento.", + "add-create-alarm-rule": "Adicionar condição de acionamento", + "add-clear-alarm-rule": "Adicionar condição de limpeza", + "condition-duration": "Duração da condição", + "condition-duration-value": "Valor da duração", + "condition-duration-time-unit": "Unidade de tempo", + "condition-duration-value-range": "O valor da duração deve estar no intervalo de 1 a 2147483647.", + "condition-duration-value-pattern": "O valor da duração deve ser um número inteiro.", + "condition-duration-value-required": "O valor da duração é obrigatório.", + "condition-duration-time-unit-required": "A unidade de tempo é obrigatória.", + "condition-repeating-value": "Contagem de eventos", + "condition-repeating-value-hint": "A atualização de qualquer argumento da regra de alarme será contada como evento", + "condition-repeating-value-range": "A contagem de eventos deve estar no intervalo de 1 a 2147483647.", + "condition-repeating-value-pattern": "A contagem de eventos deve ser um número inteiro.", + "condition-repeating-value-required": "A contagem de eventos é obrigatória.", + "create-conditions": "Condições de acionamento", + "clear-condition": "Condição de limpeza", + "no-clear-alarm-rule": "Nenhuma condição de limpeza configurada.", + "advanced-settings": "Configurações avançadas", + "propagate-alarm": "Propagar alarme para entidades relacionadas", + "alarm-rule-relation-types-list": "Tipos de relação", + "alarm-rule-relation-types-list-hint": "Define os tipos de relação para filtrar as entidades relacionadas. Se não definido, o alarme será propagado para todas as entidades relacionadas.", + "propagate-alarm-to-owner": "Propagar alarme para o proprietário da entidade (Cliente ou Tenant)", + "propagate-alarm-to-tenant": "Propagar alarme para o Tenant", + "alarm-rule-filter-title": "Filtro de regra de alarme", + "filter-title": "Filtro", + "debugging": "Depuração de regra de alarme", + "any-type": "Qualquer tipo", + "enter-alarm-rule-type": "Inserir tipo de alarme", + "no-alarm-rule-types-matching": "Nenhum tipo de alarme correspondente a '{{entitySubtype}}' foi encontrado.", + "alarm-rule-type-list-empty": "Nenhum tipo de alarme selecionado.", + "alarm-rule-type-list": "Lista de tipos de alarme", + "alarm-rule-entity-list": "Lista de entidades", + "missing-for": "ausente por", + "time-unit": "Unidade", + "mode": "Modo", + "type": "Tipo", + "value-required": "O valor é obrigatório.", + "min-value": "O valor deve ser 1 ou maior.", + "argument-in-use": "O argumento está sendo usado como argumento geral.", + "import-invalid-alarm-rule-type": "Não foi possível importar a regra de alarme: Estrutura de regra de alarme inválida.", + "no-filter-preview": "Nenhum filtro especificado", + "filter-operation": { + "and": "E", + "or": "Ou" + } + }, + "ai-models": { + "ai-models": "Modelos de IA", + "ai-model": "Modelo de IA", + "model": "Modelo", + "name": "Nome", + "ai-provider": "Provedor de IA", + "no-found": "Nenhum modelo de IA encontrado", + "list": "{ count, plural, =1 {Um modelo} other {Lista de # modelos} }", + "selected-fields": "{ count, plural, =1 {1 modelo} other {# modelos} } selecionado(s)", + "add": "Adicionar modelo", + "delete-model-title": "Tem certeza de que deseja excluir o modelo '{{modelName}}'?", + "delete-model-text": "Atenção: após a confirmação, o modelo e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-models-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 modelo} other {# modelos} }?", + "delete-models-text": "Atenção: após a confirmação, todos os modelos selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", + "ai-providers": { + "openai": "OpenAI", + "azure-openai": "Azure OpenAI", + "google-ai-gemini": "Google AI Gemini", + "google-vertex-ai-gemini": "Google Vertex AI Gemini", + "mistral-ai": "Mistral AI", + "anthropic": "Anthropic", + "amazon-bedrock": "Amazon Bedrock", + "github-models": "GitHub Models", + "ollama": "Ollama" + }, + "name-required": "O nome é obrigatório.", + "name-max-length": "O nome deve ter 255 caracteres ou menos.", + "provider": "Provedor", + "api-key": "Chave de API", + "api-key-required": "A chave de API é obrigatória.", + "api-key-open-ai-required": "A chave de API é obrigatória ao usar a API oficial do OpenAI.", + "project-id": "ID do projeto", + "project-id-required": "O ID do projeto é obrigatório", + "location": "Localização", + "location-required": "A localização é obrigatória.", + "service-account-key-file": "Arquivo de chave da conta de serviço", + "service-account-key-file-required": "O arquivo de chave da conta de serviço é obrigatório.", + "no-file": "Nenhum arquivo selecionado.", + "drop-file": "Solte um arquivo ou clique para selecionar um arquivo para upload.", + "personal-access-token": "Token de acesso pessoal", + "personal-access-token-required": "O token de acesso pessoal é obrigatório.", + "configuration": "Configuração", + "model-id": "ID do modelo", + "model-id-required": "O ID do modelo é obrigatório.", + "deployment-name": "Nome do deployment", + "deployment-name-required": "O nome do deployment é obrigatório", + "set": "Definir", + "region": "Região", + "region-required": "A região é obrigatória.", + "access-key-id": "ID da chave de acesso", + "access-key-id-required": "O ID da chave de acesso é obrigatório.", + "secret-access-key": "Chave de acesso secreta", + "secret-access-key-required": "A chave de acesso secreta é obrigatória.", + "temperature": "Temperatura", + "temperature-hint": "Ajusta o nível de aleatoriedade na saída do modelo. Valores mais altos aumentam a aleatoriedade, enquanto valores mais baixos a diminuem.", + "temperature-min": "Deve ser 0 ou maior.", + "top-p": "Top P", + "top-p-hint": "Cria um conjunto dos tokens mais prováveis para o modelo escolher. Valores mais altos criam um conjunto maior e mais diversificado, enquanto valores mais baixos criam um conjunto menor.", + "top-p-min-max": "Deve ser maior que 0 e até 1.", + "top-k": "Top K", + "top-k-hint": "Restringe as escolhas do modelo a um conjunto fixo dos \"K\" tokens mais prováveis.", + "top-k-min": "Deve ser 0 ou maior.", + "presence-penalty": "Penalidade de presença", + "presence-penalty-hint": "Aplica uma penalidade fixa à probabilidade de um token se ele já apareceu no texto.", + "frequency-penalty": "Penalidade de frequência", + "frequency-penalty-hint": "Aplica uma penalidade à probabilidade de um token que aumenta com base na sua frequência no texto.", + "max-output-tokens": "Máximo de tokens de saída", + "max-output-tokens-hint": "Define o número máximo de tokens que o \nmodelo pode gerar em uma única resposta.", + "context-length": "Comprimento do contexto", + "context-length-hint": "Define o tamanho da janela de contexto em tokens. Este valor define o limite total de memória para o modelo, incluindo tanto a entrada do usuário quanto a resposta gerada.", + "endpoint": "Endpoint", + "endpoint-required": "O Endpoint é obrigatório.", + "baseurl": "URL base", + "baseurl-required": "A URL base é obrigatória.", + "service-version": "Versão do serviço", + "check-connectivity": "Verificar conectividade", + "check-connectivity-success": "A solicitação de teste foi bem-sucedida", + "check-connectivity-failed": "A solicitação de teste falhou", + "no-model-matching": "Nenhum modelo correspondente a '{{entity}}' foi encontrado.", + "model-required": "O modelo é obrigatório.", + "no-model-text": "Nenhum modelo encontrado.", + "authentication": "Autenticação", + "authentication-basic-hint": "Usa autenticação HTTP Basic padrão. O nome de usuário e a senha serão combinados, codificados em Base64 e enviados em um cabeçalho \"Authorization\" a cada solicitação ao servidor Ollama.", + "authentication-token-hint": "Usa autenticação por token Bearer. O token fornecido será enviado diretamente em um cabeçalho \"Authorization\" a cada solicitação ao servidor Ollama.", + "authentication-type": { + "none": "Nenhuma", + "basic": "Basic", + "token": "Token" + }, + "username": "Nome de usuário", + "username-required": "O nome de usuário é obrigatório.", + "password": "Senha", + "password-required": "A senha é obrigatória.", + "token": "Token", + "token-required": "O token é obrigatório." }, "confirm-on-exit": { - "message": "Existem alterações sem salvar. Tem certeza de que deseja sair desta página?", - "html-message": "Existem alterações sem salvar.
Tem certeza de que deseja sair desta página?", - "title": "Alterações sem salvar" + "message": "Há alterações não salvas. Tem certeza de que deseja sair desta página?", + "html-message": "Há alterações não salvas.
Tem certeza de que deseja sair desta página?", + "title": "Alterações não salvas" }, "contact": { "country": "País", + "country-required": "O país é obrigatório.", + "country-object-required": "Selecione um país válido da lista.", "city": "Cidade", - "state": "Estado", + "state": "Estado / Província", "postal-code": "CEP / Código postal", - "postal-code-invalid": "Formato de código postal / CEP inválido.", + "postal-code-invalid": "Formato de CEP / Código postal inválido.", "address": "Endereço", "address2": "Endereço 2", "phone": "Telefone", - "email": "E-mail", - "no-address": "Em endereço" + "email": "Email", + "no-address": "Sem endereço", + "no-country-found": "Nenhum país encontrado.", + "no-country-matching": "Nenhum país correspondente a '{{country}}' foi encontrado.", + "state-max-length": "O comprimento do estado deve ser menor que 256", + "phone-max-length": "O número de telefone deve ter menos de 256 caracteres", + "city-max-length": "A cidade especificada deve ter menos de 256 caracteres" }, "common": { + "name": "Nome", + "type": "Tipo", + "general": "Geral", "username": "Nome de usuário", "password": "Senha", + "data": "Dados", + "timestamp": "Timestamp", "enter-username": "Inserir nome de usuário", "enter-password": "Inserir senha", "enter-search": "Inserir pesquisa", "created-time": "Hora de criação", - "loading": "Carregando..." + "disabled": "Desativado", + "loading": "Carregando...", + "proceed": "Prosseguir", + "open-details-page": "Abrir página de detalhes", + "not-found": "Não encontrado", + "value": "Valor", + "documentation": "Documentação", + "time-left": "{{time}} restante", + "output": "Saída", + "sort-asc": "Crescente", + "sort-desc": "Decrescente", + "suffix": { + "s": "s", + "ms": "ms" + }, + "hint": { + "name-required": "O nome é obrigatório.", + "name-pattern": "O nome é inválido.", + "name-max-length": "O nome deve ter menos de 256 caracteres.", + "title-required": "O título é obrigatório.", + "title-pattern": "O título é inválido.", + "title-max-length": "O título deve ter menos de 256 caracteres.", + "key-required": "A chave é obrigatória.", + "key-pattern": "A chave é inválida.", + "key-max-length": "A chave deve ter menos de 256 caracteres." + }, + "required-fields": "Campos obrigatórios ausentes" }, "content-type": { "json": "Json", "text": "Texto", "binary": "Binário (Base64)" }, + "color": { + "color": "Cor" + }, "customer": { "customer": "Cliente", "customers": "Clientes", "management": "Gerenciamento de clientes", - "dashboard": "Dashboard de clientes", - "dashboards": "Dashboards de clientes", + "dashboard": "Dashboard do cliente", + "dashboards": "Dashboards do cliente", "devices": "Dispositivos do cliente", - "entity-views": "Exibições de entidades do cliente", + "entity-views": "Visualizações de entidade do cliente", "assets": "Ativos do cliente", "public-dashboards": "Dashboards públicos", "public-devices": "Dispositivos públicos", "public-assets": "Ativos públicos", - "public-entity-views": "Exibições de entidades públicas", + "public-entity-views": "Visualizações de entidade públicas", "add": "Adicionar cliente", "delete": "Excluir cliente", "manage-customer-users": "Gerenciar usuários do cliente", @@ -429,446 +1744,1467 @@ "manage-public-devices": "Gerenciar dispositivos públicos", "manage-public-dashboards": "Gerenciar dashboards públicos", "manage-customer-assets": "Gerenciar ativos do cliente", + "manage-customer-edges": "Gerenciar edges do cliente", "manage-public-assets": "Gerenciar ativos públicos", "add-customer-text": "Adicionar novo cliente", "no-customers-text": "Nenhum cliente encontrado", "customer-details": "Detalhes do cliente", - "delete-customer-title": "Tem certeza de que deseja excluir o ativo cliente '{{customerTitle}}'?", - "delete-customer-text": "Cuidado, após confirmar, não será possível recuperar o cliente e nenhum dado associado.", - "delete-customers-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 customer} other {# customers} }?", - "delete-customers-action-title": "Excluir { count, plural, =1 {1 customer} other {# customers} }", - "delete-customers-text": "Cuidado, após confirmar, todos os clientes selecionados serão removidos e não será possível recuperar nenhum dado associado.", + "delete-customer-title": "Tem certeza de que deseja excluir o cliente '{{customerTitle}}'?", + "delete-customer-text": "Cuidado, após a confirmação o cliente e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-customers-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 cliente} other {# clientes} }?", + "delete-customers-action-title": "Excluir { count, plural, =1 {1 cliente} other {# clientes} }", + "delete-customers-text": "Cuidado, após a confirmação todos os clientes selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", "manage-users": "Gerenciar usuários", "manage-assets": "Gerenciar ativos", "manage-devices": "Gerenciar dispositivos", "manage-dashboards": "Gerenciar dashboards", "title": "Título", "title-required": "O título é obrigatório.", + "title-max-length": "O título deve ter menos de 256 caracteres", "description": "Descrição", "details": "Detalhes", "events": "Eventos", - "copyId": "Copiar ID de cliente", + "copyId": "Copiar ID do cliente", "idCopiedMessage": "O ID do cliente foi copiado para a área de transferência", "select-customer": "Selecionar cliente", - "no-customers-matching": "Nenhum cliente encontrado que coincida com '{{entity}}'.", - "customer-required": "O cliente é obrigatório", - "select-default-customer": "Selecionar cliente predefinido", - "default-customer": "Cliente predefinido", - "default-customer-required": "O cliente predefinido é necessário para depurar o dashboard no nível de locatário", + "no-customers-matching": "Nenhum cliente correspondente a '{{entity}}' foi encontrado.", + "customer-required": "O cliente é obrigatório.", + "select-default-customer": "Selecionar cliente padrão", + "default-customer": "Cliente padrão", + "default-customer-required": "O cliente padrão é obrigatório para depurar o dashboard no nível do Tenant", "search": "Pesquisar clientes", - "selected-customers": "{ count, plural, =1 {1 customer} other {# customers} } selecionado(s)" + "selected-customers": "{ count, plural, =1 {1 cliente} other {# clientes} } selecionado(s)", + "edges": "Instâncias de edge do cliente", + "manage-edges": "Gerenciar edges" + }, + "css-size": { + "size-value-required": "O valor de tamanho é obrigatório", + "invalid-size-value": "Valor de tamanho inválido" + }, + "date": { + "last-update-n-ago": "Última atualização N atrás", + "last-update-n-ago-text": "Última atualização {{ agoText }}", + "custom-date": "Data personalizada", + "format": "Formato", + "preview": "Visualização", + "auto": "Automático", + "time-granularity-formats": "Formatos de granularidade de tempo", + "unit-year": "Anos", + "unit-month": "Meses", + "unit-day": "Dias", + "unit-hour": "Horas", + "unit-minute": "Minutos", + "unit-second": "Segundos", + "unit-millisecond": "Milissegundos" }, "datetime": { - "date-from": "Data de", - "time-from": "Hora de", - "date-to": "Data até", - "time-to": "Hora até" + "date-from": "Data de início", + "time-from": "Hora de início", + "date-to": "Data de término", + "time-to": "Hora de término", + "from": "De", + "to": "Até" }, "dashboard": { "dashboard": "Dashboard", "dashboards": "Dashboards", "management": "Gerenciamento de dashboards", - "view-dashboards": "Visualizar dashboards", + "view-dashboards": "Visualizar Dashboards", "add": "Adicionar dashboard", - "assign-dashboard-to-customer": "Atribuir dashboard(s) a cliente", + "assign-dashboard-to-customer": "Atribuir Dashboard(s) ao Cliente", "assign-dashboard-to-customer-text": "Selecione os dashboards a serem atribuídos ao cliente", - "assign-to-customer-text": "Selecione o cliente para atribuir o(s) dashboard(s)", - "assign-to-customer": "Atribuir a cliente", - "unassign-from-customer": "Remover atribuição a cliente", - "make-public": "Tornar dashboards público", - "make-private": "Tornar dashboards privado", + "assign-to-customer-text": "Selecione o cliente ao qual atribuir o(s) dashboard(s)", + "assign-to-customer": "Atribuir ao cliente", + "unassign-from-customer": "Cancelar atribuição ao cliente", + "make-public": "Tornar dashboard público", + "make-private": "Tornar dashboard privado", "manage-assigned-customers": "Gerenciar clientes atribuídos", "assigned-customers": "Clientes atribuídos", - "assign-to-customers": "Atribuir Dashboard(s) a Clientes", - "assign-to-customers-text": "Selecione os clientes para atribuir o(s) dashboard(s)", - "unassign-from-customers": "Remover Atribuição de Dashboard(s) a Clientes", - "unassign-from-customers-text": "Selecione os clientes para remover a atribuição do(s) dashboard(s)", + "assign-to-customers": "Atribuir Dashboard(s) aos Clientes", + "assign-to-customers-text": "Selecione os clientes aos quais atribuir o(s) dashboard(s)", + "unassign-from-customers": "Cancelar atribuição de Dashboard(s) dos Clientes", + "unassign-from-customers-text": "Selecione os clientes para cancelar a atribuição do(s) dashboard(s)", "no-dashboards-text": "Nenhum dashboard encontrado", - "no-widgets": "Nenhum widgets configurado", + "no-widgets": "Nenhum widget configurado", "add-widget": "Adicionar novo widget", + "add-widget-button-text": "Adicionar widget", "title": "Título", + "image": "Imagem do dashboard", + "mobile-app-settings": "Configurações do aplicativo móvel", + "mobile-order": "Ordem do dashboard no aplicativo móvel", + "mobile-hide": "Ocultar dashboard no aplicativo móvel", + "update-image": "Atualizar imagem do dashboard", + "update-new-version": "Carregar nova versão", + "upload-file-to-update": "Carregar arquivo para atualizar", + "take-screenshot": "Tirar captura de tela", "select-widget-title": "Selecionar widget", - "select-widget-subtitle": "Lista de tipos de widget disponíveis", + "select-widget-value": "{{title}}: selecionar widget", + "select-widget-subtitle": "Lista de tipos de widgets disponíveis", "delete": "Excluir dashboard", "title-required": "O título é obrigatório.", + "title-max-length": "O título deve ter menos de 256 caracteres", "description": "Descrição", "details": "Detalhes", "dashboard-details": "Detalhes do dashboard", "add-dashboard-text": "Adicionar novo dashboard", "assign-dashboards": "Atribuir dashboards", "assign-new-dashboard": "Atribuir novo dashboard", - "assign-dashboards-text": "Atribuir { count, plural, =1 {1 dashboard} other {# dashboards} } a clientes", - "unassign-dashboards-action-text": "Remover atribuição de { count, plural, =1 {1 dashboard} other {# dashboards} } a clientes", + "assign-dashboards-text": "Atribuir { count, plural, =1 {1 dashboard} other {# dashboards} } aos clientes", + "unassign-dashboards-action-text": "Cancelar atribuição de { count, plural, =1 {1 dashboard} other {# dashboards} } dos clientes", "delete-dashboards": "Excluir dashboards", - "unassign-dashboards": "Remover atribuição de dashboards", - "unassign-dashboards-action-title": "Remover atribuição de { count, plural, =1 {1 dashboard} other {# dashboards} } a cliente", + "unassign-dashboards": "Cancelar atribuição de dashboards", + "unassign-dashboards-action-title": "Cancelar atribuição de { count, plural, =1 {1 dashboard} other {# dashboards} } do cliente", "delete-dashboard-title": "Tem certeza de que deseja excluir o dashboard '{{dashboardTitle}}'?", - "delete-dashboard-text": "Cuidado, após confirmar, não será possível recuperar o dashboard e nenhum dado associado.", + "delete-dashboard-text": "Cuidado, após a confirmação o dashboard e todos os dados relacionados se tornarão irrecuperáveis.", "delete-dashboards-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 dashboard} other {# dashboards} }?", "delete-dashboards-action-title": "Excluir { count, plural, =1 {1 dashboard} other {# dashboards} }", - "delete-dashboards-text": "Cuidado, após confirmar, todos os dashboards selecionados serão removidos e não será possível recuperar nenhum dado associado.", - "unassign-dashboard-title": "Tem certeza de que deseja remover a atribuição do dashboard '{{dashboardTitle}}'?", - "unassign-dashboard-text": "Após confirmar, a atribuição do dashboard será removida e ele não poderá ser acessado pelo cliente.", - "unassign-dashboard": "Remover atribuição de dashboard", - "unassign-dashboards-title": "Tem certeza de que deseja remover a atribuição de { count, plural, =1 {1 dashboard} other {# dashboards} }?", - "unassign-dashboards-text": "Após confirmar, a atribuição de todos os dashboards selecionados será removida e eles não poderão ser acessados pelo cliente.", - "public-dashboard-title": "Agora o dashboard é público", - "public-dashboard-text": "Agora o dashboard {{dashboardTitle}} é público e pode ser acessado pelo próximo link público:", - "public-dashboard-notice": "Observação: Não se esqueça de tornar dispositivos relacionados públicos para poder acessar seus dados.", + "delete-dashboards-text": "Cuidado, após a confirmação todos os dashboards selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", + "unassign-dashboard-title": "Tem certeza de que deseja cancelar a atribuição do dashboard '{{dashboardTitle}}'?", + "unassign-dashboard-text": "Após a confirmação o dashboard terá sua atribuição cancelada e não estará mais acessível pelo cliente.", + "unassign-dashboard": "Cancelar atribuição do dashboard", + "unassign-dashboards-title": "Tem certeza de que deseja cancelar a atribuição de { count, plural, =1 {1 dashboard} other {# dashboards} }?", + "unassign-dashboards-text": "Após a confirmação todos os dashboards selecionados terão suas atribuições canceladas e não estarão mais acessíveis pelo cliente.", + "public-dashboard-title": "O dashboard agora é público", + "public-dashboard-text": "Seu dashboard {{dashboardTitle}} agora é público e acessível via link público:", + "public-dashboard-notice": "Observação: Não se esqueça de tornar os dispositivos relacionados públicos para acessar seus dados.", "make-private-dashboard-title": "Tem certeza de que deseja tornar o dashboard '{{dashboardTitle}}' privado?", - "make-private-dashboard-text": "Após confirmar, o dashboard e todos os dados associados a ele se tornarão privados e não poderão ser acessados por outros.", - "make-private-dashboard": "Tornar dashboards privado", - "socialshare-text": "'{{dashboardTitle}}' da plataforma ThingsBoard", - "socialshare-title": "'{{dashboardTitle}}' da plataforma ThingsBoard", + "make-private-dashboard-text": "Após a confirmação o dashboard será tornado privado e não estará mais acessível por outros.", + "make-private-dashboard": "Tornar dashboard privado", + "socialshare-text": "'{{dashboardTitle}}' desenvolvido com ThingsBoard", + "socialshare-title": "'{{dashboardTitle}}' desenvolvido com ThingsBoard", "select-dashboard": "Selecionar dashboard", - "no-dashboards-matching": "Nenhum dashboard encontrado que coincida com '{{entity}}'.", + "no-dashboards-matching": "Nenhum dashboard correspondente a '{{entity}}' foi encontrado.", "dashboard-required": "O dashboard é obrigatório.", "select-existing": "Selecionar dashboard existente", "create-new": "Criar novo dashboard", - "new-dashboard-title": "Novo título de dashboard", + "new-dashboard-title": "Título do novo dashboard", "open-dashboard": "Abrir dashboard", "set-background": "Definir plano de fundo", "background-color": "Cor de fundo", - "background-image": "Imagem de fundo", - "background-size-mode": "Modo de tamanho de fundo", + "background-image": "Imagem do plano de fundo", + "background-size-mode": "Modo de tamanho do plano de fundo", "no-image": "Nenhuma imagem selecionada", + "empty-image": "Sem imagem", "drop-image": "Solte uma imagem ou clique para selecionar um arquivo para carregar.", + "maximum-upload-file-size": "Tamanho máximo do arquivo para upload: {{ size }}", + "cannot-upload-file": "Não é possível carregar o arquivo", "settings": "Configurações", - "columns-count": "Contagem de colunas", - "columns-count-required": "A contagem de colunas é obrigatória.", - "min-columns-count-message": "Somente é permitida uma contagem de no mínimo 10 colunas.", - "max-columns-count-message": "Somente é permitida uma contagem de no máximo 1000 colunas.", + "move-all-widgets": "Mover todos os widgets", + "move-by": "Mover por", + "cols": "colunas", + "rows": "linhas", + "layout": "Layout", + "layout-type-default": "Padrão", + "layout-type-scada": "SCADA", + "layout-type-divider": "Divisor", + "layout-settings-type": "Configurações de layout: ponto de interrupção {{ type }}", + "columns-count": "Quantidade de colunas", + "columns-count-required": "A quantidade de colunas é obrigatória.", + "min-columns-count-message": "A quantidade mínima permitida de colunas é 10.", + "max-columns-count-message": "A quantidade máxima permitida de colunas é 1000.", + "min-layout-width": "Largura mínima do layout", + "columns-suffix": "colunas", "widgets-margins": "Margem entre widgets", "margin-required": "O valor da margem é obrigatório.", - "min-margin-message": "Somente 0 é permitido como valor mínimo de margem.", - "max-margin-message": "Somente 50 é permitido como valor máximo de margem.", + "min-margin-message": "O valor mínimo permitido para a margem é 0.", + "max-margin-message": "O valor máximo permitido para a margem é 50.", "horizontal-margin": "Margem horizontal", "horizontal-margin-required": "O valor da margem horizontal é obrigatório.", - "min-horizontal-margin-message": "Somente 0 é permitido como valor mínimo de margem horizontal.", - "max-horizontal-margin-message": "Somente 50 é permitido como valor máximo de margem horizontal.", + "min-horizontal-margin-message": "O valor mínimo permitido para a margem horizontal é 0.", + "max-horizontal-margin-message": "O valor máximo permitido para a margem horizontal é 50.", "vertical-margin": "Margem vertical", "vertical-margin-required": "O valor da margem vertical é obrigatório.", - "min-vertical-margin-message": "Somente 0 é permitido como valor mínimo de margem vertical.", - "max-vertical-margin-message": "Somente 50 é permitido como valor máximo de margem vertical.", - "autofill-height": "Altura do layout de preenchimento automático", - "mobile-layout": "Configuração de layout móvel", - "mobile-row-height": "Altura de linha móvel, px", - "mobile-row-height-required": "O valor da altura de linha móvel é obrigatório.", - "min-mobile-row-height-message": "Somente 5 pixels é permitido como valor mínimo da altura de linha móvel.", - "max-mobile-row-height-message": "Somente 200 pixels é permitido como valor máximo da altura de linha móvel.", - "display-title": "Exibir título de dashboard", - "toolbar-always-open": "Manter barra de ferramentas aberto", + "min-vertical-margin-message": "O valor mínimo permitido para a margem vertical é 0.", + "max-vertical-margin-message": "O valor máximo permitido para a margem vertical é 50.", + "apply-outer-margin": "Aplicar margem às bordas do layout", + "autofill-height": "Preencher automaticamente a altura do layout", + "mobile-layout": "Configurações de layout móvel", + "mobile-row-height": "Altura da linha no layout móvel", + "mobile-row-height-required": "O valor da altura da linha no layout móvel é obrigatório.", + "min-mobile-row-height-message": "O valor mínimo permitido para a altura da linha no layout móvel é 5 pixels.", + "max-mobile-row-height-message": "O valor máximo permitido para a altura da linha no layout móvel é 200 pixels.", + "row-height": "Altura da linha", + "row-height-required": "O valor da altura da linha é obrigatório.", + "min-row-height-message": "O valor mínimo permitido para a altura da linha é 5 pixels.", + "max-row-height-message": "O valor máximo permitido para a altura da linha é 200 pixels.", + "display-first-in-mobile-view": "Exibir primeiro na visualização móvel", + "title-settings": "Configurações do título", + "display-title": "Exibir título do dashboard", "title-color": "Cor do título", + "toolbar-settings": "Configurações da barra de ferramentas", + "hide-toolbar": "Ocultar barra de ferramentas", + "toolbar-always-open": "Manter barra de ferramentas aberta", "display-dashboards-selection": "Exibir seleção de dashboards", "display-entities-selection": "Exibir seleção de entidades", "display-filters": "Exibir filtros", - "display-dashboard-timewindow": "Exibir timewindow", + "display-dashboard-timewindow": "Exibir janela de tempo", "display-dashboard-export": "Exibir exportação", + "display-update-dashboard-image": "Exibir atualização de imagem do dashboard", + "dashboard-logo-settings": "Configurações do logotipo do dashboard", + "display-dashboard-logo": "Exibir logotipo no modo de tela cheia do dashboard", + "dashboard-logo-image": "Imagem do logotipo do dashboard", + "advanced-settings": "Configurações avançadas", + "dashboard-css": "CSS do dashboard", "import": "Importar dashboard", "export": "Exportar dashboard", - "export-failed-error": "Impossível exportar dashboard: {{error}}", + "export-failed-error": "Não foi possível exportar o dashboard: {{error}}", + "export-prompt": "Incorporar imagens e recursos do dashboard", "create-new-dashboard": "Criar novo dashboard", - "dashboard-file": "Arquivo de dashboard", - "invalid-dashboard-file-error": "Impossível importar dashboard: Estrutura de dados do dashboard inválida", - "dashboard-import-missing-aliases-title": "Configurar aliases usados por dashboard importado", + "dashboard-file": "Arquivo do dashboard", + "invalid-dashboard-file-error": "Não foi possível importar o dashboard: Estrutura de dados do dashboard inválida.", + "dashboard-import-missing-aliases-title": "Configurar aliases usados pelo dashboard importado", "create-new-widget": "Criar novo widget", "import-widget": "Importar widget", - "widget-file": "Arquivo de widget", - "invalid-widget-file-error": "Impossível importar widget: Estrutura de dados do widget inválida.", - "widget-import-missing-aliases-title": "Configurar aliases usados por widget importado", - "open-toolbar": "Abrir barra de ferramentas de dashboard", + "widget-file": "Arquivo do widget", + "invalid-widget-file-error": "Não foi possível importar o widget: Estrutura de dados do widget inválida.", + "widget-import-missing-aliases-title": "Configurar aliases usados pelo widget importado", + "open-toolbar": "Abrir barra de ferramentas do dashboard", "close-toolbar": "Fechar barra de ferramentas", "configuration-error": "Erro de configuração", - "alias-resolution-error-title": "Erro de configuração de aliases de dashboard", - "invalid-aliases-config": "Impossível encontrar dispositivos que coincidam com algum dos filtros de aliases.
Para resolver esta questão, encontre em contato com seu administrador.", + "alias-resolution-error-title": "Erro de configuração de aliases do dashboard", + "invalid-aliases-config": "Não foi possível encontrar dispositivos correspondentes a alguns dos filtros de aliases.
Entre em contato com o administrador para resolver este problema.", "select-devices": "Selecionar dispositivos", "assignedToCustomer": "Atribuído ao cliente", "assignedToCustomers": "Atribuído aos clientes", "public": "Público", + "copyId": "Copiar ID do dashboard", + "idCopiedMessage": "O ID do dashboard foi copiado para a área de transferência", "public-link": "Link público", "copy-public-link": "Copiar link público", - "public-link-copied-message": "O link público da dashboard foi copiado para a área de transferência", - "manage-states": "Gerenciar estados de dashboards", - "states": "Estados de dashboards", - "search-states": "Pesquisar estados de dashboards", - "selected-states": "{ count, plural, =1 {1 dashboard state} other {# dashboard states} } selecionado(s)", - "edit-state": "Editar estado de dashboard", - "delete-state": "Excluir estado de dashboard", - "add-state": "Adicionar estado de dashboard", + "public-link-copied-message": "O link público do dashboard foi copiado para a área de transferência", + "manage-states": "Gerenciar estados do dashboard", + "states": "Estados do dashboard", + "states-short": "Estados", + "search-states": "Pesquisar estados do dashboard", + "selected-states": "{ count, plural, =1 {1 estado do dashboard} other {# estados do dashboard} } selecionado(s)", + "edit-state": "Editar estado do dashboard", + "delete-state": "Excluir estado do dashboard", + "add-state": "Adicionar estado do dashboard", "no-states-text": "Nenhum estado encontrado", "state": "Estado do dashboard", "state-name": "Nome", "state-name-required": "O nome do estado do dashboard é obrigatório.", "state-id": "ID do estado", "state-id-required": "O ID do estado do dashboard é obrigatório.", - "state-id-exists": "Já existe um estado de dashboard com o mesmo ID.", + "state-id-exists": "Já existe um estado do dashboard com o mesmo ID.", "is-root-state": "Estado raiz", - "delete-state-title": "Excluir estado de dashboard", - "delete-state-text": "Tem certeza de que deseja excluir o estado de dashboard com o nome '{{stateName}}'?", + "delete-state-title": "Excluir estado do dashboard", + "delete-state-text": "Tem certeza de que deseja excluir o estado do dashboard com o nome '{{stateName}}'?", "show-details": "Mostrar detalhes", "hide-details": "Ocultar detalhes", - "select-state": "Selecionar estado alvo", + "select-state": "Selecionar estado de destino", "state-controller": "Controlador de estado", - "search": "Selecionar dashboards", - "selected-dashboards": "{ count, plural, =1 {1 dashboard} other {# dashboards} } selecionado(s)" + "state-controller-default": "estático (obsoleto)", + "search": "Pesquisar dashboards", + "selected-dashboards": "{ count, plural, =1 {1 dashboard} other {# dashboards} } selecionado(s)", + "home-dashboard": "Dashboard inicial", + "home-dashboard-hide-toolbar": "Ocultar barra de ferramentas do dashboard inicial", + "unassign-dashboard-from-edge-text": "Após a confirmação o dashboard terá sua atribuição cancelada e não estará mais acessível pelo edge.", + "unassign-dashboards-from-edge-title": "Tem certeza de que deseja cancelar a atribuição de { count, plural, =1 {1 dashboard} other {# dashboards} }?", + "unassign-dashboards-from-edge-text": "Após a confirmação todos os dashboards selecionados terão suas atribuições canceladas e não estarão mais acessíveis pelo edge.", + "assign-dashboard-to-edge": "Atribuir Dashboard(s) ao Edge", + "assign-dashboard-to-edge-text": "Selecione os dashboards a serem atribuídos ao edge", + "non-existent-dashboard-state-error": "O estado do dashboard com ID \"{{ stateId }}\" não foi encontrado", + "edit-mode": "Modo de edição", + "duplicate-state-action": "Duplicar estado", + "breakpoint-value": "Ponto de interrupção ({{ value }})", + "breakpoints-id": { + "default": "Padrão", + "xs": "Móvel (xs)", + "sm": "Tablet (sm)", + "md": "Laptop (md)", + "lg": "Desktop (lg)", + "xl": "Desktop (xl)" + }, + "view-format-type-grid": "Grade", + "view-format-type-list": "Lista", + "view-format": "Formato de visualização" }, "datakey": { "settings": "Configurações", + "general": "Geral", "advanced": "Avançado", - "label": "Etiqueta", + "key": "Chave", + "keys": "Chaves", + "label": "Rótulo", "color": "Cor", - "units": "Símbolo especial a ser exibido ao lado do valor", - "decimals": "Número de dígitos após ponto de flutuação", + "units": "Símbolo especial para exibir ao lado do valor", + "decimals": "Número de dígitos após o ponto flutuante", "data-generation-func": "Função de geração de dados", "use-data-post-processing-func": "Usar função de pós-processamento de dados", - "configuration": "Configuração de dados-chave", - "timeseries": "Intervalos de tempo", + "configuration": "Configuração da chave de dados", + "timeseries": "Séries temporais", "attributes": "Atributos", - "entity-field": "Campo de entidade", - "alarm": "Campos de alarmes", - "timeseries-required": "Os intervalos de tempo de entidade são obrigatórios.", - "timeseries-or-attributes-required": "Os intervalos de tempo/atributos de entidade são obrigatórios.", - "alarm-fields-timeseries-or-attributes-required": "Os campos de alarmes ou intervalos de tempo/atributos de entidade são obrigatórios.", - "maximum-timeseries-or-attributes": "No máximo { count, plural, =1 {1 timeseries/attribute is allowed.} other {# timeseries/attributes are allowed} }", - "alarm-fields-required": "Os campos de alarmes são obrigatórios.", + "entity-field": "Campo da entidade", + "alarm": "Campos de alarme", + "timeseries-required": "As séries temporais da entidade são obrigatórias.", + "timeseries-or-attributes-required": "Séries temporais/atributos da entidade são obrigatórios.", + "alarm-fields-timeseries-or-attributes-required": "Campos de alarme ou séries temporais/atributos da entidade são obrigatórios.", + "maximum-timeseries-or-attributes": "Máximo { count, plural, =1 {1 série temporal/atributo permitido.} other {# séries temporais/atributos permitidos} }", + "alarm-fields-required": "Os campos de alarme são obrigatórios.", "function-types": "Tipos de função", + "function-type": "Tipo de função", "function-types-required": "Os tipos de função são obrigatórios.", - "maximum-function-types": "No máximo { count, plural, =1 {1 function type is allowed.} other {# function types are allowed} }", - "time-description": "carimbo de data/horário do valor atual;", + "data-keys": "Chaves de dados", + "data-key": "Chave de dados", + "data-keys-required": "As chaves de dados são obrigatórias.", + "data-key-required": "A chave de dados é obrigatória.", + "alarm-keys": "Chaves de dados de alarme", + "alarm-key": "Chave de dados de alarme", + "alarm-key-functions": "Funções de chave de alarme", + "alarm-key-function": "Função de chave de alarme", + "latest-keys": "Chaves de dados mais recentes", + "latest-key": "Chave de dados mais recente", + "latest-key-functions": "Funções de chave mais recente", + "latest-key-function": "Função de chave mais recente", + "timeseries-keys": "Chaves de dados de séries temporais", + "timeseries-key": "Chave de dados de série temporal", + "timeseries-key-functions": "Funções de chave de séries temporais", + "timeseries-key-function": "Função de chave de série temporal", + "maximum-function-types": "Máximo { count, plural, =1 {1 tipo de função permitido.} other {# tipos de função permitidos} }", + "time-description": "timestamp do valor atual;", "value-description": "o valor atual;", "prev-value-description": "resultado da chamada de função anterior;", - "time-prev-description": "carimbo de data/horário do valor anterior;", - "prev-orig-value-description": "valor original anterior;" + "time-prev-description": "timestamp do valor anterior;", + "prev-orig-value-description": "valor anterior original;", + "aggregation": "Agregação", + "aggregation-type-hint-common": "Por motivos de desempenho, o cálculo de valores agregados está disponível apenas para intervalos de tempo fixos como \"dia atual\", \"mês atual\", etc., e não está disponível para intervalos de janela deslizante como 'últimos 30 minutos' ou 'últimas 24 horas'.", + "aggregation-type-none-hint": "Obter o valor mais recente.", + "aggregation-type-min-hint": "Encontrar o valor mínimo entre os pontos de dados dentro de uma janela de tempo selecionada.", + "aggregation-type-max-hint": "Encontrar o valor máximo entre os pontos de dados dentro de uma janela de tempo selecionada.", + "aggregation-type-avg-hint": "Calcular um valor médio entre os pontos de dados dentro de uma janela de tempo selecionada.", + "aggregation-type-sum-hint": "Somar todos os valores dos pontos de dados dentro de uma janela de tempo selecionada.", + "aggregation-type-count-hint": "Número total de pontos de dados dentro de uma janela de tempo selecionada.", + "delta-calculation": "Cálculo delta", + "enable-delta-calculation": "Habilitar cálculo delta", + "enable-delta-calculation-hint": "Quando habilitado, o valor da chave de dados é calculado com base nos valores agregados para uma janela de tempo selecionada e um período de comparação especificado. Por motivos de desempenho, o cálculo delta está disponível apenas para janelas de tempo históricas e não para valores em tempo real. Por exemplo, é possível calcular o delta entre o consumo de energia de ontem comparado ao consumo de energia do dia anterior.", + "delta-calculation-result": "Resultado do cálculo delta", + "delta-calculation-result-previous-value": "Valor anterior", + "delta-calculation-result-delta-absolute": "Delta (absoluto)", + "delta-calculation-result-delta-percent": "Delta (percentual)", + "source": "Fonte", + "latest": "Mais recente", + "latest-value": "Valor mais recente", + "delta": "delta", + "percent": "percentual", + "absolute": "absoluto" }, "datasource": { "type": "Tipo de fonte de dados", "name": "Nome", - "add-datasource-prompt": "Adicione a fonte de dados" + "label": "Rótulo", + "add-datasource-prompt": "Adicione uma fonte de dados" }, "details": { "details": "Detalhes", "edit-mode": "Modo de edição", "edit-json": "Editar JSON", - "toggle-edit-mode": "Alternar o modo de edição" + "toggle-edit-mode": "Alternar modo de edição" }, "device": { "device": "Dispositivo", - "device-required": "O nome do dispositivo é obrigatório.", + "device-required": "O dispositivo é obrigatório.", "devices": "Dispositivos", "management": "Gerenciamento de dispositivos", - "view-devices": "Exibir Dispositivos", + "view-devices": "Visualizar dispositivos", "device-alias": "Alias do dispositivo", + "device-type-max-length": "O tipo de dispositivo deve ter menos de 256 caracteres", "aliases": "Aliases de dispositivos", "no-alias-matching": "'{{alias}}' não encontrado.", "no-aliases-found": "Nenhum alias encontrado.", "no-key-matching": "'{{key}}' não encontrado.", - "no-keys-found": "Nenhuma chave encontrado.", + "no-keys-found": "Nenhuma chave encontrada.", "create-new-alias": "Criar um novo!", "create-new-key": "Criar um novo!", - "duplicate-alias-error": "Alias '{{alias}}' duplicado encontrado.
Os aliases de dispositivos devem ser exclusivos no dashboard.", - "configure-alias": "Configurar alias de '{{alias}}'", - "no-devices-matching": "Nenhum dispositivo encontrado que coincida com '{{entity}}'.", + "duplicate-alias-error": "Alias duplicado encontrado '{{alias}}'.
Os aliases de dispositivos devem ser únicos no dashboard.", + "configure-alias": "Configurar alias '{{alias}}'", + "no-devices-matching": "Nenhum dispositivo correspondente a '{{entity}}' foi encontrado.", "alias": "Alias", "alias-required": "O alias do dispositivo é obrigatório.", "remove-alias": "Remover alias do dispositivo", "add-alias": "Adicionar alias do dispositivo", - "name-starts-with": "O nome do dispositivo começa com", + "name-starts-with": "Expressão de nome do dispositivo", + "help-text": "Use '%' conforme necessário: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Lista de dispositivos", "use-device-name-filter": "Usar filtro", "device-list-empty": "Nenhum dispositivo selecionado.", - "device-name-filter-required": "O filtro do nome do dispositivo é obrigatório.", - "device-name-filter-no-device-matched": "Nenhum dispositivo encontrado que comece com '{{device}}'.", - "add": "Adicionar Dispositivo", - "assign-to-customer": "Atribuir a cliente", - "assign-device-to-customer": "Atribuir Dispositivo(s) a Cliente", + "device-name-filter-required": "O filtro de nome de dispositivo é obrigatório.", + "device-name-filter-no-device-matched": "Nenhum dispositivo iniciando com '{{device}}' foi encontrado.", + "add": "Adicionar dispositivo", + "assign-to-customer": "Atribuir ao cliente", + "assign-device-to-customer": "Atribuir dispositivo(s) ao cliente", "assign-device-to-customer-text": "Selecione os dispositivos a serem atribuídos ao cliente", "make-public": "Tornar dispositivo público", "make-private": "Tornar dispositivo privado", "no-devices-text": "Nenhum dispositivo encontrado", - "assign-to-customer-text": "Selecione cliente para atribuir o(s) dispositivo(s)", + "assign-to-customer-text": "Selecione o cliente ao qual atribuir o(s) dispositivo(s)", "device-details": "Detalhes do dispositivo", "add-device-text": "Adicionar novo dispositivo", "credentials": "Credenciais", "manage-credentials": "Gerenciar credenciais", "delete": "Excluir dispositivo", "assign-devices": "Atribuir dispositivos", - "assign-devices-text": "Atribuir { count, plural, =1 {1 device} other {# devices} } a cliente", + "assign-devices-text": "Atribuir { count, plural, =1 {1 dispositivo} other {# dispositivos} } ao cliente", "delete-devices": "Excluir dispositivos", - "unassign-from-customer": "Remover atribuição a cliente", - "unassign-devices": "Remover atribuição de dispositivos", - "unassign-devices-action-title": "Remover atribuição de { count, plural, =1 {1 device} other {# devices} } a cliente", + "unassign-from-customer": "Cancelar atribuição ao cliente", + "unassign-devices": "Cancelar atribuição de dispositivos", + "unassign-devices-action-title": "Cancelar atribuição de { count, plural, =1 {1 dispositivo} other {# dispositivos} } ao cliente", + "unassign-device-from-edge-title": "Tem certeza de que deseja cancelar a atribuição do dispositivo '{{deviceName}}'?", + "unassign-device-from-edge-text": "Após a confirmação, a atribuição do dispositivo será cancelada e ele não estará acessível pelo edge.", + "unassign-devices-from-edge": "Cancelar atribuição de dispositivos do edge", "assign-new-device": "Atribuir novo dispositivo", "make-public-device-title": "Tem certeza de que deseja tornar o dispositivo '{{deviceName}}' público?", - "make-public-device-text": "Após confirmar, o dispositivo e todos os dados associados a ele se tornarão públicos e poderão ser acessados por outros.", + "make-public-device-text": "Após a confirmação, o dispositivo e todos os seus dados serão tornados públicos e acessíveis por outros.", "make-private-device-title": "Tem certeza de que deseja tornar o dispositivo '{{deviceName}}' privado?", - "make-private-device-text": "Após confirmar, o dispositivo e todos os dados associados a ele se tornarão privados e não poderão ser acessados por outros.", - "view-credentials": "Exibir credenciais", + "make-private-device-text": "Após a confirmação, o dispositivo e todos os seus dados serão tornados privados e não estarão acessíveis por outros.", + "view-credentials": "Visualizar credenciais", "delete-device-title": "Tem certeza de que deseja excluir o dispositivo '{{deviceName}}'?", - "delete-device-text": "Cuidado, após confirmar, não será possível recuperar o dispositivo e nenhum dado associado.", - "delete-devices-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 device} other {# devices} }?", - "delete-devices-action-title": "Excluir { count, plural, =1 {1 device} other {# devices} }", - "delete-devices-text": "Cuidado, após confirmar, todos os dispositivos selecionados serão removidos e não será possível recuperar nenhum dado associado.", - "unassign-device-title": "Tem certeza de que deseja remover a atribuição do dispositivo '{{deviceName}}'?", - "unassign-device-text": "Após confirmar, a atribuição do dispositivo será removida e ele não poderá ser acessado pelo cliente.", - "unassign-device": "Remover atribuição de dispositivo", - "unassign-devices-title": "Tem certeza de que deseja remover a atribuição de { count, plural, =1 {1 device} other {# devices} }?", - "unassign-devices-text": "Após confirmar, a atribuição de todos os dispositivos selecionados será removida e eles não poderão ser acessados pelo cliente.", + "delete-device-text": "Atenção: após a confirmação, o dispositivo e todos os dados relacionados serão irrecuperáveis.", + "delete-devices-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 dispositivo} other {# dispositivos} }?", + "delete-devices-action-title": "Excluir { count, plural, =1 {1 dispositivo} other {# dispositivos} }", + "delete-devices-text": "Atenção: após a confirmação, todos os dispositivos selecionados serão removidos e todos os dados relacionados serão irrecuperáveis.", + "unassign-device-title": "Tem certeza de que deseja cancelar a atribuição do dispositivo '{{deviceName}}'?", + "unassign-device-text": "Após a confirmação, a atribuição do dispositivo será cancelada e ele não estará acessível pelo cliente.", + "unassign-device": "Cancelar atribuição do dispositivo", + "unassign-devices-title": "Tem certeza de que deseja cancelar a atribuição de { count, plural, =1 {1 dispositivo} other {# dispositivos} }?", + "unassign-devices-text": "Após a confirmação, a atribuição de todos os dispositivos selecionados será cancelada e eles não estarão acessíveis pelo cliente.", "device-credentials": "Credenciais do dispositivo", - "credentials-type": "Tipo de credencial", + "loading-device-credentials": "Carregando credenciais do dispositivo...", + "credentials-type": "Tipo de credenciais", "access-token": "Token de acesso", "access-token-required": "O token de acesso é obrigatório.", - "access-token-invalid": "O token de acesso deve ter de 1 a 32 caracteres.", - "secret": "Segredo", - "secret-required": "O segredo é obrigatório.", - "device-type": "Tipo de dispositivo", + "access-token-invalid": "O comprimento do token de acesso deve ser de 1 a 32 caracteres.", + "certificate-pem-format": "Certificado no formato PEM", + "certificate-pem-format-required": "O certificado é obrigatório.", + "copy-access-token": "Copiar token de acesso", + "copy-certificate": "Copiar certificado", + "copy-client-id": "Copiar Client ID", + "copy-user-name": "Copiar nome de usuário", + "copy-password": "Copiar senha", + "generate-client-id": "Gerar Client ID", + "generate-user-name": "Gerar nome de usuário", + "generate-password": "Gerar senha", + "generate-access-token": "Gerar token de acesso", + "lwm2m-security-config": { + "identity": "Identidade do cliente", + "identity-required": "A identidade do cliente é obrigatória.", + "identity-tooltip": "O identificador PSK é um identificador PSK arbitrário de até 128 bytes, conforme descrito no padrão [RFC7925].\nO identificador PSK DEVE ser primeiro convertido em uma string de caracteres e depois codificado em octetos usando UTF-8.", + "client-key": "Chave do cliente", + "client-key-required": "A chave do cliente é obrigatória.", + "client-key-tooltip-prk": "A chave pública ou id RPK deve estar no padrão [RFC7250] e codificada no formato Base64!", + "client-key-tooltip-psk": "A chave PSK deve estar no padrão [RFC4279] e no formato HexDec: 32, 64, 128 caracteres!", + "endpoint": "Nome do Endpoint do cliente", + "endpoint-required": "O nome do Endpoint do cliente é obrigatório.", + "client-public-key": "Chave pública do cliente", + "client-public-key-hint": "Se a chave pública do cliente estiver vazia, o certificado confiável será utilizado", + "client-public-key-tooltip": "A chave pública X509 deve estar no formato X509v3 codificado em DER e suportar exclusivamente o algoritmo EC, e então ser codificada no formato Base64!", + "mode": "Modo de configuração de segurança", + "client-tab": "Configuração de segurança do cliente", + "client-certificate": "Certificado do cliente", + "bootstrap-tab": "Bootstrap do cliente", + "bootstrap-server": "Servidor Bootstrap", + "lwm2m-server": "Servidor LwM2M", + "client-reboot": "Gatilho de atualização de registro", + "bootstrap-reboot": "Gatilho de Bootstrap-Request", + "client-publicKey-or-id": "Chave pública ou Id do cliente", + "client-publicKey-or-id-required": "A chave pública ou Id do cliente é obrigatória.", + "client-publicKey-or-id-tooltip-psk": "O identificador PSK é um identificador PSK arbitrário de até 128 bytes, conforme descrito no padrão [RFC7925].\nO identificador PSK DEVE ser primeiro convertido em uma string de caracteres e depois codificado em octetos usando UTF-8.", + "client-publicKey-or-id-tooltip-rpk": "A chave pública ou id RPK deve estar no padrão [RFC7250] e codificada no formato Base64!", + "client-publicKey-or-id-tooltip-x509": "A chave pública X509 deve estar no formato X509v3 codificado em DER e suportar exclusivamente o algoritmo EC, e então ser codificada no formato Base64", + "client-secret-key": "Chave secreta do cliente", + "client-secret-key-required": "A chave secreta do cliente é obrigatória.", + "client-secret-key-tooltip-psk": "A chave PSK deve estar no padrão [RFC4279] e no formato HexDec: 32, 64, 128 caracteres!", + "client-secret-key-tooltip-prk": "A chave secreta RPK deve estar no formato PKCS_8 (codificação DER, padrão [RFC5958]) e então ser codificada no formato Base64!", + "client-secret-key-tooltip-x509": "A chave secreta X509 deve estar no formato PKCS_8 (codificação DER, padrão [RFC5958]) e então ser codificada no formato Base64!" + }, + "client-id": "Client ID", + "client-id-pattern": "Contém caractere inválido.", + "user-name": "Nome de usuário", + "user-name-required": "O nome de usuário é obrigatório.", + "client-id-or-user-name-necessary": "Client ID e/ou nome de usuário são necessários", + "password": "Senha", + "secret": "Secret", + "secret-required": "O secret é obrigatório.", + "device-type": "Perfil do dispositivo", "device-type-required": "O tipo de dispositivo é obrigatório.", "select-device-type": "Selecionar tipo de dispositivo", - "enter-device-type": "Inserir tipo de dispositivo", + "enter-device-type": "Inserir perfil do dispositivo", "any-device": "Qualquer dispositivo", - "no-device-types-matching": "Nenhum tipo de dispositivo encontrado que coincida com '{{entitySubtype}}'.", - "device-type-list-empty": "Nenhum tipo de dispositivo selecionado.", - "device-types": "Tipos de dispositivos", + "no-device-types-matching": "Nenhum perfil de dispositivo correspondente a '{{entitySubtype}}' foi encontrado.", + "device-type-list-empty": "Nenhum perfil de dispositivo selecionado!", + "device-profile-type-list-empty": "Pelo menos um perfil de dispositivo deve ser selecionado.", + "device-types": "Tipos de dispositivo", "name": "Nome", "name-required": "O nome é obrigatório.", + "name-max-length": "O nome deve ter menos de 256 caracteres", + "label-max-length": "O rótulo deve ter menos de 256 caracteres", "description": "Descrição", - "label": "Etiqueta", + "label": "Rótulo", "events": "Eventos", "details": "Detalhes", - "copyId": "Copiar ID de dispositivo", + "copyId": "Copiar Id do dispositivo", "copyAccessToken": "Copiar token de acesso", - "idCopiedMessage": "O ID do dispositivo foi copiado para a área de transferência", - "accessTokenCopiedMessage": "O token de acesso foi copiado para a área de transferência", + "copy-mqtt-authentication": "Copiar credenciais MQTT", + "idCopiedMessage": "Id do dispositivo foi copiado para a área de transferência", + "accessTokenCopiedMessage": "Token de acesso do dispositivo foi copiado para a área de transferência", + "mqtt-authentication-copied-message": "Autenticação MQTT do dispositivo foi copiada para a área de transferência", "assignedToCustomer": "Atribuído ao cliente", - "unable-delete-device-alias-title": "Impossível excluir alias do dispositivo", - "unable-delete-device-alias-text": "Não é possível excluir o alias do dispositivo '{{deviceAlias}}' porque ele é usado pelo(s) seguinte(s) widget(s):
{{widgetsList}}", + "unable-delete-device-alias-title": "Não é possível excluir o alias do dispositivo", + "unable-delete-device-alias-text": "O alias do dispositivo '{{deviceAlias}}' não pode ser excluído pois é utilizado pelo(s) seguinte(s) widget(s):
{{widgetsList}}", "is-gateway": "É gateway", + "overwrite-activity-time": "Sobrescrever tempo de atividade do dispositivo conectado", + "device-filter-title": "Filtro de dispositivo", + "filter-title": "Filtro", + "device-state": "Estado do dispositivo", + "state": "Estado", + "any": "Qualquer", + "active": "Ativo", + "inactive": "Inativo", "public": "Público", "device-public": "O dispositivo é público", "select-device": "Selecionar dispositivo", "import": "Importar dispositivo", "device-file": "Arquivo de dispositivo", "search": "Pesquisar dispositivos", - "selected-devices": "{ count, plural, =1 {1 device} other {# devices} } selecionado(s)" + "selected-devices": "{ count, plural, =1 {1 dispositivo} other {# dispositivos} } selecionado(s)", + "device-configuration": "Configuração do dispositivo", + "transport-configuration": "Configuração de transporte", + "wizard": { + "device-details": "Detalhes do dispositivo" + }, + "unassign-devices-from-edge-title": "Tem certeza de que deseja cancelar a atribuição de { count, plural, =1 {1 dispositivo} other {# dispositivos} }?", + "unassign-devices-from-edge-text": "Após a confirmação, a atribuição de todos os dispositivos selecionados será cancelada e eles não estarão acessíveis pelo edge.", + "time": "Tempo", + "connectivity": { + "check-connectivity": "Verificar conectividade", + "device-created-check-connectivity": "Dispositivo criado. Vamos verificar a conectividade!", + "loading-check-connectivity-command": "Carregando comandos de verificação de conectividade...", + "use-following-instructions": "Use as instruções a seguir para enviar telemetria em nome do dispositivo usando shell", + "execute-following-command": "Execute o seguinte comando", + "install-curl-windows": "A partir do Windows 10 b17063, o cURL está disponível por padrão", + "install-curl-macos": "A partir do Mac OS X 10.2 6C115 (Jaguar), o cURL está disponível por padrão", + "install-mqtt-windows": "Use as instruções para baixar, instalar, configurar e executar o mosquitto_pub", + "install-coap-client": "Use as instruções para baixar, instalar, configurar e executar o coap-client", + "install-necessary-client-tools": "Instalar as ferramentas de cliente necessárias", + "mqtts-x509-command": "Use a seguinte documentação para conectar o dispositivo via MQTT com autorização X509", + "coaps-x509-command": "Use a seguinte documentação para conectar o dispositivo via CoAP over DTLS com autorização X509", + "snmp-command": "Use a seguinte documentação para conectar o dispositivo por meio do SNMP.", + "sparkplug-command": "Use a seguinte documentação para conectar o dispositivo por meio do MQTT Sparkplug.", + "lwm2m-command": "Use a seguinte documentação para conectar o dispositivo por meio do LWM2M." + } + }, + "dynamic-form": { + "property": { + "properties": "Propriedades", + "property": "Propriedade", + "id": "Id", + "name": "Nome", + "type": "Tipo", + "type-text": "Texto", + "type-password": "Senha", + "type-textarea": "Área de texto", + "type-number": "Número", + "type-switch": "Chave", + "type-select": "Seleção", + "type-radios": "Botões de rádio", + "type-datetime": "Data/Hora", + "type-image": "Imagem", + "type-javascript": "JavaScript", + "type-json": "JSON", + "type-html": "HTML", + "type-css": "CSS", + "type-markdown": "Markdown", + "type-color": "Cor", + "type-color-settings": "Configurações de cor", + "type-font": "Fonte", + "type-units": "Unidades", + "type-icon": "Ícone", + "type-fieldset": "Conjunto de campos", + "type-array": "Array", + "type-html-section": "Seção HTML", + "group-title": "Título do grupo", + "no-properties": "Nenhuma propriedade configurada", + "add-property": "Adicionar propriedade", + "property-settings": "Configurações da propriedade", + "remove-property": "Remover propriedade", + "default-value": "Valor padrão", + "value-required": "Valor obrigatório", + "number-settings": "Configurações de número", + "min": "Mín", + "max": "Máx", + "step": "Passo", + "selected-options-limit": "Limite de opções selecionadas", + "advanced-ui-settings": "Configurações avançadas de interface", + "disable-on-property": "Desabilitar na propriedade", + "disable-on-property-none": "Nenhum (campo sempre habilitado)", + "display-condition-function": "Função de condição de exibição", + "sub-label": "Sub-rótulo", + "vertical-divider-after": "Divisor vertical após", + "input-field-suffix": "Sufixo do campo de entrada", + "property-row-classes": "Classes de linha da propriedade", + "property-field-classes": "Classes de campo da propriedade", + "not-unique-property-ids-error": "Os IDs de propriedade devem ser únicos!", + "enable-multiple-select": "Habilitar seleção múltipla", + "allow-empty-select-option": "Permitir opção vazia", + "select-options": "Opções de seleção", + "not-unique-select-option-value-error": "Os valores das opções de seleção devem ser únicos!", + "value": "Valor", + "label": "Rótulo", + "add-option": "Adicionar opção", + "no-options": "Nenhuma opção configurada", + "remove-option": "Remover opção", + "textarea-rows": "Linhas da área de texto", + "help-id": "Id de ajuda", + "buttons-direction": "Direção dos botões", + "direction-row": "Linha", + "direction-column": "Coluna", + "radio-button-options": "Opções de botão de rádio", + "datetime-type": "Tipo do campo Data/Hora", + "datetime-type-date": "Data", + "datetime-type-time": "Hora", + "datetime-type-datetime": "Data/Hora", + "enable-clear-button": "Habilitar botão de limpar", + "html-section-settings": "Configurações de seção HTML", + "html-section-classes": "Classes de seção HTML", + "html-section-content": "Conteúdo da seção HTML", + "array-item": "Item do array", + "item-type": "Tipo do item", + "item-name": "Nome do item", + "no-items": "Nenhum item", + "support-unit-conversion": "Suportar conversão de unidades" + }, + "clear-form": "Limpar formulário", + "clear-form-prompt": "Tem certeza de que deseja remover todas as propriedades do formulário?", + "import-form": "Importar formulário de JSON", + "export-form": "Exportar formulário para JSON", + "json-file": "Arquivo JSON", + "json-content": "Conteúdo JSON", + "invalid-form-json-file-error": "Não foi possível importar o formulário do JSON: Estrutura de dados JSON do formulário inválida." + }, + "asset-profile": { + "asset-profile": "Perfil do ativo", + "asset-profiles": "Perfis do ativo", + "all-asset-profiles": "Todos", + "add": "Adicionar perfil do ativo", + "edit": "Editar perfil do ativo", + "asset-profile-details": "Detalhes do perfil do ativo", + "no-asset-profiles-text": "Nenhum perfil do ativo encontrado", + "search": "Pesquisar perfis do ativo", + "selected-asset-profiles": "{ count, plural, =1 {1 perfil do ativo} other {# perfis do ativo} } selecionado(s)", + "no-asset-profiles-matching": "Nenhum perfil do ativo correspondente a '{{entity}}' foi encontrado.", + "asset-profile-required": "Perfil do ativo é obrigatório", + "idCopiedMessage": "ID do perfil do ativo copiado para a área de transferência", + "set-default": "Definir perfil do ativo como padrão", + "delete": "Excluir perfil do ativo", + "copyId": "Copiar ID do perfil do ativo", + "name-max-length": "O nome deve ter menos de 256 caracteres", + "new-device-profile-name": "Nome do perfil do ativo", + "new-device-profile-name-required": "O nome do perfil do ativo é obrigatório.", + "name": "Nome", + "name-required": "O nome é obrigatório.", + "image": "Imagem do perfil do ativo", + "description": "Descrição", + "default": "Padrão", + "default-rule-chain": "Cadeia de regras padrão", + "default-edge-rule-chain": "Cadeia de regras padrão do edge", + "default-edge-rule-chain-hint": "Usada no edge como cadeia de regras para processar dados recebidos de ativos deste perfil do ativo", + "mobile-dashboard": "Dashboard móvel", + "mobile-dashboard-hint": "Usado pelo aplicativo móvel como dashboard de detalhes do ativo", + "select-queue-hint": "Selecione em uma lista suspensa.", + "delete-asset-profile-title": "Tem certeza de que deseja excluir o perfil do ativo '{{assetProfileName}}'?", + "delete-asset-profile-text": "Atenção: após a confirmação, o perfil do ativo e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-asset-profiles-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 perfil do ativo} other {# perfis do ativo} }?", + "delete-asset-profiles-text": "Atenção: após a confirmação, todos os perfis do ativo selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", + "set-default-asset-profile-title": "Tem certeza de que deseja definir o perfil do ativo '{{assetProfileName}}' como padrão?", + "set-default-asset-profile-text": "Após a confirmação, o perfil do ativo será marcado como padrão e será usado para novos ativos sem perfil especificado.", + "no-asset-profiles-found": "Nenhum perfil do ativo encontrado.", + "create-new-asset-profile": "Criar um novo!", + "create-asset-profile": "Criar novo perfil do ativo", + "import": "Importar perfil do ativo", + "export": "Exportar perfil do ativo", + "export-failed-error": "Não foi possível exportar o perfil do ativo: {{error}}", + "asset-profile-file": "Arquivo do perfil do ativo", + "invalid-asset-profile-file-error": "Não foi possível importar o perfil do ativo: Estrutura de dados do perfil do ativo inválida." + }, + "device-profile": { + "device-profile": "Perfil do dispositivo", + "device-profiles": "Perfis do dispositivo", + "all-device-profiles": "Todos", + "add": "Adicionar perfil do dispositivo", + "edit": "Editar perfil do dispositivo", + "device-profile-details": "Detalhes do perfil do dispositivo", + "no-device-profiles-text": "Nenhum perfil do dispositivo encontrado", + "search": "Pesquisar perfis do dispositivo", + "selected-device-profiles": "{ count, plural, =1 {1 perfil do dispositivo} other {# perfis do dispositivo} } selecionado(s)", + "no-device-profiles-matching": "Nenhum perfil do dispositivo correspondente a '{{entity}}' foi encontrado.", + "device-profile-required": "Perfil do dispositivo é obrigatório", + "idCopiedMessage": "ID do perfil do dispositivo copiado para a área de transferência", + "set-default": "Definir perfil do dispositivo como padrão", + "delete": "Excluir perfil do dispositivo", + "copyId": "Copiar ID do perfil do dispositivo", + "name-max-length": "O nome deve ter menos de 256 caracteres", + "name": "Nome", + "name-required": "O nome é obrigatório.", + "type": "Tipo de perfil", + "type-required": "O tipo de perfil é obrigatório.", + "type-default": "Padrão", + "image": "Imagem do perfil do dispositivo", + "transport-type": "Tipo de transporte", + "transport-type-required": "O tipo de transporte é obrigatório.", + "transport-type-default": "Padrão", + "transport-type-default-hint": "Suporta transporte básico MQTT, HTTP e CoAP", + "transport-type-mqtt": "MQTT", + "transport-type-mqtt-hint": "Habilita configurações avançadas de transporte MQTT", + "transport-type-coap": "CoAP", + "transport-type-coap-hint": "Habilita configurações avançadas de transporte CoAP", + "transport-type-lwm2m": "LWM2M", + "transport-type-lwm2m-hint": "Tipo de transporte LWM2M", + "transport-type-snmp": "SNMP", + "transport-type-snmp-hint": "Especificar configuração de transporte SNMP", + "transport-type-http": "HTTP", + "description": "Descrição", + "default": "Padrão", + "profile-configuration": "Configuração do perfil", + "transport-configuration": "Configuração de transporte", + "default-rule-chain": "Cadeia de regras padrão", + "default-edge-rule-chain": "Cadeia de regras padrão do edge", + "default-edge-rule-chain-hint": "Usada no edge como cadeia de regras para processar dados recebidos de dispositivos deste perfil do dispositivo", + "mobile-dashboard": "Dashboard móvel", + "mobile-dashboard-hint": "Usado pelo aplicativo móvel como dashboard de detalhes do dispositivo", + "select-queue-hint": "Selecione em uma lista suspensa.", + "delete-device-profile-title": "Tem certeza de que deseja excluir o perfil do dispositivo '{{deviceProfileName}}'?", + "delete-device-profile-text": "Atenção: após a confirmação, o perfil do dispositivo e todos os dados relacionados, incluindo atualizações OTA associadas, se tornarão irrecuperáveis.", + "delete-device-profiles-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 perfil do dispositivo} other {# perfis do dispositivo} }?", + "delete-device-profiles-text": "Atenção: após a confirmação, todos os perfis do dispositivo selecionados serão removidos e todos os dados relacionados, incluindo atualizações OTA associadas, se tornarão irrecuperáveis.", + "set-default-device-profile-title": "Tem certeza de que deseja definir o perfil do dispositivo '{{deviceProfileName}}' como padrão?", + "set-default-device-profile-text": "Após a confirmação, o perfil do dispositivo será marcado como padrão e será usado para novos dispositivos sem perfil especificado.", + "no-device-profiles-found": "Nenhum perfil do dispositivo encontrado.", + "create-new-device-profile": "Criar um novo!", + "mqtt-device-topic-filters": "Filtros de tópico MQTT do dispositivo", + "mqtt-device-topic-filters-unique": "Os filtros de tópico MQTT do dispositivo devem ser únicos.", + "mqtt-device-topic-filters-spark-plug": "Nó MQTT Sparkplug B Edge of Network (EoN).", + "mqtt-device-topic-filters-spark-plug-hint": "Permitir conexões de nós EoN com formato de payload e tópico Sparkplug B.", + "mqtt-device-topic-filters-spark-plug-attribute-metric-names": "Métricas SparkPlug para armazenar como atributos.", + "mqtt-device-topic-filters-spark-plug-attribute-metric-names-hint": "Nomes das métricas SparkPlug que serão armazenadas como atributos do dispositivo. Todas as outras métricas serão armazenadas como telemetria do dispositivo.", + "mqtt-device-payload-type": "Payload MQTT do dispositivo", + "mqtt-device-payload-type-json": "JSON", + "mqtt-device-payload-type-proto": "Protobuf", + "mqtt-enable-compatibility-with-json-payload-format": "Habilitar compatibilidade com outros formatos de payload.", + "mqtt-enable-compatibility-with-json-payload-format-hint": "Quando habilitado, a plataforma usará o formato de payload Protobuf por padrão. Se o parsing falhar, a plataforma tentará usar o formato de payload JSON. Útil para compatibilidade retroativa durante atualizações de firmware. Por exemplo, a versão inicial do firmware usa Json, enquanto a nova versão usa Protobuf. Durante o processo de atualização de firmware de um conjunto de dispositivos, é necessário suportar Protobuf e JSON simultaneamente. O modo de compatibilidade introduz uma leve degradação de desempenho, portanto recomenda-se desabilitar este modo assim que todos os dispositivos estiverem atualizados.", + "mqtt-use-json-format-for-default-downlink-topics": "Usar formato Json para tópicos de downlink padrão", + "mqtt-use-json-format-for-default-downlink-topics-hint": "Quando habilitado, a plataforma usará o formato de payload Json para enviar atributos e RPC pelos seguintes tópicos: v1/devices/me/attributes/response/$request_id, v1/devices/me/attributes, v1/devices/me/rpc/request/$request_id, v1/devices/me/rpc/response/$request_id. Esta configuração não afeta as assinaturas de atributos e rpc enviadas usando os novos tópicos (v2): v2/a/res/$request_id, v2/a, v2/r/req/$request_id, v2/r/res/$request_id. Onde $request_id é um identificador de solicitação inteiro.", + "mqtt-send-ack-on-validation-exception": "Enviar PUBACK em caso de falha de validação de mensagem PUBLISH", + "mqtt-send-ack-on-validation-exception-hint": "Por padrão, a plataforma encerrará a sessão MQTT em caso de falha de validação de mensagem. Quando habilitado, a plataforma enviará confirmação de publicação em vez de encerrar a sessão.", + "mqtt-protocol-version": "Versão do protocolo", + "snmp-add-mapping": "Adicionar mapeamento SNMP", + "snmp-mapping-not-configured": "Nenhum mapeamento de OID para série temporal/telemetria configurado", + "snmp-timseries-or-attribute-name": "Nome da série temporal/atributo para mapeamento", + "snmp-timseries-or-attribute-type": "Tipo da série temporal/atributo para mapeamento", + "snmp-method-pdu-type-get-request": "GetRequest", + "snmp-method-pdu-type-get-next-request": "GetNextRequest", + "snmp-oid": "OID", + "transport-device-payload-type-json": "JSON", + "transport-device-payload-type-proto": "Protobuf", + "mqtt-payload-type-required": "O tipo de payload é obrigatório.", + "coap-device-type": "Tipo de dispositivo CoAP", + "coap-device-payload-type": "Payload do dispositivo CoAP", + "coap-device-type-required": "O tipo de dispositivo CoAP é obrigatório.", + "coap-device-type-default": "Padrão", + "coap-device-type-efento": "Efento NB-IoT", + "support-level-wildcards": "Suporte a curingas de nível único [+] e de múltiplos níveis [#].", + "telemetry-topic-filter": "Filtro de tópico de telemetria", + "telemetry-topic-filter-required": "O filtro de tópico de telemetria é obrigatório.", + "attributes-topic-filter": "Filtro de tópico de publicação de atributos", + "attributes-subscribe-topic-filter": "Filtro de tópico de assinatura de atributos", + "attributes-topic-filter-required": "O filtro de tópico de publicação de atributos é obrigatório.", + "attributes-subscribe-topic-filter-required": "O tópico de assinatura de atributos é obrigatório", + "telemetry-proto-schema": "Schema proto de telemetria", + "telemetry-proto-schema-required": "O schema proto de telemetria é obrigatório.", + "attributes-proto-schema": "Schema proto de atributos", + "attributes-proto-schema-required": "O schema proto de atributos é obrigatório.", + "rpc-response-proto-schema": "Schema proto de resposta RPC", + "rpc-response-proto-schema-required": "O schema proto de resposta RPC é obrigatório.", + "rpc-response-topic-filter": "Filtro de tópico de resposta RPC", + "rpc-response-topic-filter-required": "O filtro de tópico de resposta RPC é obrigatório.", + "rpc-request-proto-schema": "Schema proto de requisição RPC", + "rpc-request-proto-schema-required": "O schema proto de requisição RPC é obrigatório.", + "rpc-request-proto-schema-hint": "A mensagem de requisição RPC deve sempre ter os campos: string method = 1; int32 requestId = 2; e params = 3 de qualquer tipo de dado.", + "not-valid-pattern-topic-filter": "Filtro de tópico padrão inválido", + "not-valid-single-character": "Uso inválido de caractere curinga de nível único", + "not-valid-multi-character": "Uso inválido de caractere curinga de múltiplos níveis", + "single-level-wildcards-hint": "[+] é adequado para qualquer nível de filtro de tópico. Ex.: v1/devices/+/telemetry ou +/devices/+/attributes.", + "multi-level-wildcards-hint": "[#] pode substituir o próprio filtro de tópico e deve ser o último símbolo do tópico. Ex.: # ou v1/devices/me/#.", + "alarm-rules": "Regras de alarme", + "alarm-rules-with-count": "Regras de alarme ({{count}})", + "no-alarm-rules": "Nenhuma regra de alarme configurada", + "add-alarm-rule": "Adicionar regra de alarme", + "edit-alarm-rule": "Editar regra de alarme", + "alarm-type": "Tipo de alarme", + "alarm-type-required": "O tipo de alarme é obrigatório.", + "alarm-type-unique": "O tipo de alarme deve ser único nas regras de alarme do perfil do dispositivo.", + "alarm-type-max-length": "O tipo de alarme deve ter menos de 256 caracteres", + "create-alarm-pattern": "Criar alarme {{alarmType}}", + "create-alarm-rules": "Criar regras de alarme", + "no-create-alarm-rules": "Nenhuma condição de criação configurada", + "add-create-alarm-rule-prompt": "Adicione uma regra de criação de alarme", + "clear-alarm-rule": "Limpar regra de alarme", + "no-clear-alarm-rule": "Nenhuma condição de limpeza configurada", + "add-create-alarm-rule": "Adicionar condição de criação", + "add-clear-alarm-rule": "Adicionar condição de limpeza", + "select-alarm-severity": "Selecionar severidade do alarme", + "alarm-severity-required": "A severidade do alarme é obrigatória.", + "condition-duration": "Duração da condição", + "condition-duration-value": "Valor da duração", + "condition-duration-time-unit": "Unidade de tempo", + "condition-duration-value-range": "O valor da duração deve estar entre 1 e 2147483647.", + "condition-duration-value-pattern": "O valor da duração deve ser um número inteiro.", + "condition-duration-value-required": "O valor da duração é obrigatório.", + "condition-duration-time-unit-required": "A unidade de tempo é obrigatória.", + "advanced-settings": "Configurações avançadas", + "alarm-rule-additional-info": "Informações adicionais", + "edit-alarm-rule-additional-info": "Editar informações adicionais", + "alarm-rule-additional-info-placeholder": "Insira seus comentários e ajustes aqui para exibi-los nos detalhes do Alarme em Informações adicionais", + "alarm-rule-additional-info-hint": "Dica: use ${keyName} para substituir valores dos atributos ou chaves de telemetria usados na condição da regra de alarme.", + "alarm-rule-mobile-dashboard": "Dashboard móvel", + "alarm-rule-mobile-dashboard-hint": "Usado pelo aplicativo móvel como dashboard de detalhes do alarme", + "alarm-rule-no-mobile-dashboard": "Nenhum dashboard selecionado", + "propagate-alarm": "Propagar alarme para entidades relacionadas", + "alarm-rule-relation-types-list": "Tipos de relação", + "alarm-rule-relation-types-list-hint": "Define os tipos de relação para filtrar as entidades relacionadas. Se não definido, o alarme será propagado para todas as entidades relacionadas.", + "propagate-alarm-to-owner": "Propagar alarme para o proprietário da entidade (Cliente ou Tenant)", + "propagate-alarm-to-tenant": "Propagar alarme para o Tenant", + "alarm-rule-condition": "Condição da regra de alarme", + "enter-alarm-rule-condition-prompt": "Adicione uma condição de regra de alarme", + "edit-alarm-rule-condition": "Editar condição da regra de alarme", + "device-provisioning": "Provisionamento de dispositivo", + "provision-strategy": "Estratégia de provisionamento", + "provision-strategy-required": "A estratégia de provisionamento é obrigatória.", + "provision-strategy-disabled": "Desabilitado", + "provision-strategy-created-new": "Permitir criar novos dispositivos", + "provision-strategy-check-pre-provisioned": "Verificar dispositivos pré-provisionados", + "provision-device-key": "Chave de provisionamento do dispositivo", + "provision-device-key-required": "A chave de provisionamento do dispositivo é obrigatória.", + "copy-provision-key": "Copiar chave de provisionamento", + "provision-key-copied-message": "Chave de provisionamento copiada para a área de transferência", + "provision-device-secret": "Segredo de provisionamento do dispositivo", + "provision-device-secret-required": "O segredo de provisionamento do dispositivo é obrigatório.", + "copy-provision-secret": "Copiar segredo de provisionamento", + "provision-secret-copied-message": "Segredo de provisionamento copiado para a área de transferência", + "provision-strategy-x509": { + "certificate-chain": "Cadeia de certificados X509", + "certificate-chain-hint": "A estratégia de certificados X.509 é usada para provisionar dispositivos por certificados de cliente em comunicação TLS bidirecional.", + "allow-create-new-devices": "Criar novos dispositivos", + "allow-create-new-devices-hint": "Se selecionado, novos dispositivos serão criados e o certificado de cliente será usado como credencial do dispositivo.", + "certificate-value": "Certificado em formato PEM", + "certificate-value-required": "O certificado em formato PEM é obrigatório", + "cn-regex-variable": "Variável de expressão regular CN", + "cn-regex-variable-required": "A variável de expressão regular CN é obrigatória", + "cn-regex-variable-hint": "Necessário para obter o nome do dispositivo a partir do nome comum do certificado X509 do dispositivo." + }, + "condition": "Condição", + "condition-type": "Tipo de condição", + "condition-type-simple": "Simples", + "condition-type-duration": "Duração", + "condition-during": "Durante {{during}}", + "condition-during-dynamic": "Durante \"{{ attribute }}\" ({{during}})", + "condition-type-repeating": "Repetição", + "condition-type-required": "O tipo de condição é obrigatório.", + "condition-repeating-value": "Contagem de eventos", + "condition-repeating-value-range": "A contagem de eventos deve estar entre 1 e 2147483647.", + "condition-repeating-value-pattern": "A contagem de eventos deve ser um número inteiro.", + "condition-repeating-value-required": "A contagem de eventos é obrigatória.", + "condition-repeat-times": "Repete { count, plural, =1 {1 vez} other {# vezes} }", + "condition-repeat-times-dynamic": "Repete \"{ attribute }\" ({ count, plural, =1 {1 vez} other {# vezes} })", + "schedule-type": "Tipo de agendador", + "schedule-type-required": "O tipo de agendador é obrigatório.", + "schedule": "Agendamento", + "edit-schedule": "Editar agendamento de alarme", + "schedule-any-time": "Ativo o tempo todo", + "schedule-specific-time": "Ativo em um horário específico", + "schedule-custom": "Personalizado", + "schedule-day": { + "monday": "Segunda-feira", + "tuesday": "Terça-feira", + "wednesday": "Quarta-feira", + "thursday": "Quinta-feira", + "friday": "Sexta-feira", + "saturday": "Sábado", + "sunday": "Domingo" + }, + "schedule-days": "Dias", + "schedule-time": "Hora", + "schedule-time-from": "De", + "schedule-time-to": "Até", + "schedule-days-of-week-required": "Pelo menos um dia da semana deve ser selecionado.", + "create-device-profile": "Criar novo perfil do dispositivo", + "import": "Importar perfil do dispositivo", + "export": "Exportar perfil do dispositivo", + "export-failed-error": "Não foi possível exportar o perfil do dispositivo: {{error}}", + "device-profile-file": "Arquivo do perfil do dispositivo", + "invalid-device-profile-file-error": "Não foi possível importar o perfil do dispositivo: Estrutura de dados do perfil do dispositivo inválida.", + "power-saving-mode": "Modo de economia de energia", + "power-saving-mode-type": { + "default": "Usar modo de economia de energia do perfil do dispositivo", + "psm": "Modo de economia de energia (PSM)", + "drx": "Recepção descontínua (DRX)", + "edrx": "Recepção descontínua estendida (eDRX)" + }, + "edrx-cycle": "Ciclo eDRX", + "edrx-cycle-required": "O ciclo eDRX é obrigatório.", + "edrx-cycle-pattern": "O ciclo eDRX deve ser um número inteiro positivo.", + "edrx-cycle-min": "O número mínimo do ciclo eDRX é {{ min }} segundos.", + "paging-transmission-window": "Janela de transmissão de paginação", + "paging-transmission-window-required": "A janela de transmissão de paginação é obrigatória.", + "paging-transmission-window-pattern": "A janela de transmissão de paginação deve ser um número inteiro positivo.", + "paging-transmission-window-min": "O número mínimo da janela de transmissão de paginação é {{ min }} segundos.", + "psm-activity-timer": "Temporizador de atividade PSM", + "psm-activity-timer-required": "O temporizador de atividade PSM é obrigatório.", + "psm-activity-timer-pattern": "O temporizador de atividade PSM deve ser um número inteiro positivo.", + "psm-activity-timer-min": "O número mínimo do temporizador de atividade PSM é {{ min }} segundos.", + "lwm2m": { + "object-list": "Lista de objetos", + "object-list-empty": "Nenhum objeto selecionado.", + "no-objects-found": "Nenhum objeto encontrado.", + "no-objects-matching": "Nenhum objeto correspondente a '{{object}}' foi encontrado.", + "model-tab": "Modelo LWM2M", + "add-new-instances": "Adicionar novas instâncias", + "instances-list": "Lista de instâncias", + "instances-list-required": "A lista de instâncias é obrigatória.", + "instance-id-pattern": "O ID da instância deve ser um número inteiro positivo.", + "instance-id-max": "Valor máximo do ID da instância: {{max}}.", + "instance": "Instância", + "resource-label": "#ID Nome do recurso", + "observe-label": "Observar", + "attribute-label": "Atributo", + "telemetry-label": "Telemetria", + "edit-observe-select": "Para editar observar, selecione telemetria ou atributo", + "edit-attributes-select": "Para editar atributos, selecione telemetria ou atributo", + "no-attributes-set": "Nenhum atributo definido", + "key-name": "Nome da chave", + "key-name-required": "O nome da chave é obrigatório", + "attribute-name": "Nome do atributo", + "attribute-name-required": "O nome do atributo é obrigatório.", + "attribute-value": "Valor do atributo", + "attribute-value-required": "O valor do atributo é obrigatório.", + "attribute-value-pattern": "O valor do atributo deve ser um número inteiro positivo.", + "edit-attributes": "Editar atributos: {{ name }}", + "view-attributes": "Visualizar atributos: {{ name }}", + "add-attribute": "Adicionar atributo", + "edit-attribute": "Editar atributo", + "view-attribute": "Visualizar atributo", + "remove-attribute": "Remover atributo", + "delete-server-text": "Atenção: após a confirmação, a configuração do servidor se tornará irrecuperável.", + "delete-server-title": "Tem certeza de que deseja excluir o servidor?", + "mode": "Modo de configuração de segurança", + "bootstrap-tab": "Bootstrap", + "bootstrap-server-legend": "Servidor Bootstrap (ShortId...)", + "lwm2m-server-legend": "Servidor LwM2M (ShortId...)", + "server": "Servidor", + "short-id": "ID curto do servidor", + "short-id-tooltip": "ID curto do servidor. Usado como link para associar a instância do objeto servidor.\nEste identificador identifica exclusivamente cada servidor LwM2M configurado para o cliente LwM2M.\nO recurso DEVE ser definido quando o recurso Bootstrap-Server tem o valor 'false'.\nOs valores ID:0 e ID:65535 NÃO DEVEM ser usados para identificar o servidor LwM2M.", + "short-id-tooltip-bootstrap": "ID curto do servidor. Usado como link para associar a instância do objeto servidor.\nEste identificador identifica exclusivamente cada servidor LwM2M configurado para o cliente LwM2M.\nO recurso DEVE ser definido quando o recurso Bootstrap-Server tem o valor 'false'.", + "short-id-required": "O ID curto do servidor é obrigatório.", + "short-id-range": "O ID curto do servidor deve estar entre {{ min }} e {{ max }}.", + "short-id-pattern": "O ID curto do servidor deve ser um número inteiro positivo.", + "short-id-pattern-bs": "O ID curto do servidor deve ser apenas nulo", + "lifetime": "Tempo de vida do registro do cliente", + "lifetime-required": "O tempo de vida do registro do cliente é obrigatório.", + "lifetime-pattern": "O tempo de vida do registro do cliente deve ser um número inteiro positivo.", + "default-min-period": "Período mínimo entre duas notificações (s)", + "default-min-period-tooltip": "O valor padrão que o cliente LwM2M deve usar para o Período Mínimo de uma Observação na ausência deste parâmetro em uma Observação.", + "default-min-period-required": "O período mínimo é obrigatório.", + "default-min-period-pattern": "O período mínimo deve ser um número inteiro positivo.", + "notification-storing": "Armazenamento de notificações quando desabilitado ou offline", + "binding": "Vinculação", + "binding-type": { + "u": "U: O cliente é acessível via vinculação UDP a qualquer momento.", + "m": "M: O cliente é acessível via vinculação MQTT a qualquer momento.", + "h": "H: O cliente é acessível via vinculação HTTP a qualquer momento.", + "t": "T: O cliente é acessível via vinculação TCP a qualquer momento.", + "s": "S: O cliente é acessível via vinculação SMS a qualquer momento.", + "n": "N: O cliente DEVE enviar a resposta a tal solicitação pela vinculação Non-IP (suportado desde LWM2M 1.1).", + "uq": "UQ: Conexão UDP em modo fila (não suportado desde LWM2M 1.1)", + "uqs": "UQS: conexões UDP e SMS ativas; UDP em modo fila, SMS em modo padrão (não suportado desde LWM2M 1.1)", + "tq": "TQ: Conexão TCP em modo fila (não suportado desde LWM2M 1.1)", + "tqs": "TQS: conexões TCP e SMS ativas; TCP em modo fila, SMS em modo padrão (não suportado desde LWM2M 1.1)", + "sq": "SQ: Conexão SMS em modo fila (não suportado desde LWM2M 1.1)" + }, + "binding-tooltip": "Esta é a lista no recurso \"binding\" do objeto de servidor LwM2M - /1/x/7.\nIndica os modos de vinculação suportados no cliente LwM2M.\nEste valor DEVE ser o mesmo que o valor no recurso \"Supported Binding and Modes\" no objeto Device (/3/0/16).\nEmbora múltiplos transportes sejam suportados, apenas uma vinculação de transporte pode ser usada durante toda a Sessão de Transporte.\nComo exemplo, quando UDP e SMS são ambos suportados, o cliente LwM2M e o servidor LwM2M podem optar por se comunicar por UDP ou SMS durante toda a Sessão de Transporte.", + "bootstrap-server": "Servidor Bootstrap", + "lwm2m-server": "Servidor LwM2M", + "include-bootstrap-server": "Incluir atualizações do servidor Bootstrap", + "bootstrap-update-title": "Você já tem um servidor Bootstrap configurado. Tem certeza de que deseja excluir as atualizações?", + "bootstrap-update-text": "Atenção: após a confirmação, os dados de configuração do servidor Bootstrap se tornarão irrecuperáveis.", + "server-host": "Host", + "server-host-required": "O host é obrigatório.", + "server-port": "Porta", + "server-port-required": "A porta é obrigatória.", + "server-port-pattern": "A porta deve ser um número inteiro positivo.", + "server-port-range": "A porta deve estar entre 1 e 65535.", + "server-public-key": "Chave pública do servidor", + "server-public-key-required": "A chave pública do servidor é obrigatória.", + "client-hold-off-time": "Tempo de espera", + "client-hold-off-time-required": "O tempo de espera é obrigatório.", + "client-hold-off-time-pattern": "O tempo de espera deve ser um número inteiro positivo.", + "client-hold-off-time-tooltip": "Tempo de espera do cliente para uso exclusivo com um servidor Bootstrap", + "account-after-timeout": "Conta após o tempo limite", + "account-after-timeout-required": "A conta após o tempo limite é obrigatória.", + "account-after-timeout-pattern": "A conta após o tempo limite deve ser um número inteiro positivo.", + "account-after-timeout-tooltip": "Conta do servidor Bootstrap após o valor de tempo limite fornecido por este recurso.", + "server-type": "Tipo de servidor", + "add-new-server-title": "Adicionar nova configuração de servidor", + "add-server-config": "Adicionar configuração de servidor", + "add-lwm2m-server-config": "Adicionar servidor LwM2M", + "no-config-servers": "Nenhum servidor configurado", + "others-tab": "Outras configurações", + "ota-update": "Atualização OTA", + "use-object-19-for-ota-update": "Usar Objeto 19 para metadados de arquivo OTA (checksum, tamanho, versão, nome)", + "use-object-19-for-ota-update-hint": "Usar Recurso ObjectId = 19 para atualizações OTA: FirmWare → InstanceId = 65534, SoftWare → InstanceId = 65535. O formato de dados é JSON encapsulado em Base64. Este JSON contém metadados do arquivo OTA (informações do arquivo): \"Checksum\" (SHA256). Campos adicionais: \"Title\" (nome OTA), \"Version\" (versão OTA), \"File Name\" (nome do arquivo para armazenar OTA no cliente), \"File Size\" (tamanho OTA em bytes).", + "client-strategy": "Estratégia do cliente ao conectar", + "client-strategy-label": "Estratégia", + "client-strategy-only-observe": "Apenas Observe Request para o cliente após a conexão inicial", + "client-strategy-read-all": "Ler todos os recursos e Observe Request para o cliente após o registro", + "fw-update": "Atualização de firmware", + "fw-update-strategy": "Estratégia de atualização de firmware", + "fw-update-strategy-data": "Enviar atualização de firmware como arquivo binário usando Objeto 19 e Recurso 0 (Data)", + "fw-update-strategy-package": "Enviar atualização de firmware como arquivo binário usando Objeto 5 e Recurso 0 (Package)", + "fw-update-strategy-package-uri": "Gerar automaticamente URL CoAP única para baixar o pacote e enviar atualização de firmware como Objeto 5 e Recurso 1 (Package URI)", + "sw-update": "Atualização de software", + "sw-update-strategy": "Estratégia de atualização de software", + "sw-update-strategy-package": "Enviar arquivo binário usando Objeto 9 e Recurso 2 (Package)", + "sw-update-strategy-package-uri": "Gerar automaticamente URL CoAP única para baixar o pacote e enviar atualização de software usando Objeto 9 e Recurso 3 (Package URI)", + "fw-update-resource": "Recurso CoAP de atualização de firmware", + "fw-update-resource-required": "O recurso CoAP de atualização de firmware é obrigatório.", + "sw-update-resource": "Recurso CoAP de atualização de software", + "sw-update-resource-required": "O recurso CoAP de atualização de software é obrigatório.", + "config-json-tab": "Perfil de dispositivo de configuração Json", + "attributes-name": { + "min-period": "Período mínimo", + "max-period": "Período máximo", + "greater-than": "Maior que", + "less-than": "Menor que", + "step": "Passo", + "min-evaluation-period": "Período mínimo de avaliação", + "max-evaluation-period": "Período máximo de avaliação" + }, + "default-object-id": "Versão padrão do objeto (Atributo)", + "default-object-id-ver": { + "v1-0": "1.0", + "v1-1": "1.1", + "v1-2": "1.2" + }, + "observe-strategy": { + "observe-strategy": "Estratégia de observação", + "single": "Individual", + "single-description": "Uma solicitação Observe por recurso (maior precisão, mais tráfego de rede)", + "composite-all": "Composto total", + "composite-all-description": "Todos os recursos são observados com uma única solicitação Composite Observe (mais eficiente, menos flexível)", + "composite-by-object": "Composto por objetos", + "composite-by-object-description": "Os recursos são agrupados por tipo de objeto e observados usando solicitações Composite Observe separadas (abordagem equilibrada)" + }, + "init-attr-tel-as-obs-strategy": "Inicializar atributos e telemetria usando a estratégia Observe", + "init-attr-tel-as-obs-strategy-hint": "Se falso - atributos e telemetria são inicializados lendo seus valores um por um.\\nSe verdadeiro - atributos e telemetria são inicializados assinando seus valores usando a estratégia Observe." + }, + "snmp": { + "add-communication-config": "Adicionar configuração de comunicação", + "add-mapping": "Adicionar mapeamento", + "authentication-passphrase": "Frase de autenticação", + "authentication-passphrase-required": "A frase de autenticação é obrigatória.", + "authentication-protocol": "Protocolo de autenticação", + "authentication-protocol-required": "O protocolo de autenticação é obrigatório.", + "communication-configs": "Configurações de comunicação", + "community": "String de comunidade", + "community-required": "A string de comunidade é obrigatória.", + "context-name": "Nome do contexto", + "data-key": "Chave de dados", + "data-key-required": "A chave de dados é obrigatória.", + "data-type": "Tipo de dados", + "data-type-required": "O tipo de dados é obrigatório.", + "engine-id": "ID do motor", + "host": "Host", + "host-required": "O host é obrigatório.", + "oid": "OID", + "oid-pattern": "Formato OID inválido.", + "oid-required": "O OID é obrigatório.", + "please-add-communication-config": "Adicione uma configuração de comunicação", + "please-add-mapping-config": "Adicione uma configuração de mapeamento", + "port": "Porta", + "port-format": "Formato de porta inválido.", + "port-required": "A porta é obrigatória.", + "privacy-passphrase": "Frase de privacidade", + "privacy-passphrase-required": "A frase de privacidade é obrigatória.", + "privacy-protocol": "Protocolo de privacidade", + "privacy-protocol-required": "O protocolo de privacidade é obrigatório.", + "protocol-version": "Versão do protocolo", + "protocol-version-required": "A versão do protocolo é obrigatória.", + "querying-frequency": "Frequência de consulta, ms", + "querying-frequency-invalid-format": "A frequência de consulta deve ser um número inteiro positivo.", + "querying-frequency-required": "A frequência de consulta é obrigatória.", + "retries": "Tentativas", + "retries-invalid-format": "O número de tentativas deve ser um número inteiro positivo.", + "retries-required": "O número de tentativas é obrigatório.", + "scope": "Escopo", + "scope-required": "O escopo é obrigatório.", + "security-name": "Nome de segurança", + "security-name-required": "O nome de segurança é obrigatório.", + "timeout-ms": "Tempo limite, ms", + "timeout-ms-invalid-format": "O tempo limite deve ser um número inteiro positivo.", + "timeout-ms-required": "O tempo limite é obrigatório.", + "user-name": "Nome de usuário", + "user-name-required": "O nome de usuário é obrigatório." + } }, "dialog": { - "close": "Fechar diálogo" + "close": "Fechar diálogo", + "error-message-title": "Mensagem de erro:", + "error-details-title": "Detalhes do erro" }, "direction": { "column": "Coluna", "row": "Linha" }, + "edge": { + "edge": "Edge", + "edge-instances": "Instâncias do edge", + "instances": "Instâncias", + "edge-file": "Arquivo do edge", + "name-max-length": "O nome deve ter menos de 256 caracteres", + "label-max-length": "O rótulo deve ter menos de 256 caracteres", + "type-max-length": "O tipo deve ter menos de 256 caracteres", + "management": "Gerenciamento do edge", + "no-edges-matching": "Nenhum edge correspondente a '{{entity}}' foi encontrado.", + "add": "Adicionar edge", + "no-edges-text": "Nenhum edge encontrado", + "edge-details": "Detalhes do edge", + "add-edge-text": "Adicionar novo edge", + "delete": "Excluir edge", + "delete-edge-title": "Tem certeza de que deseja excluir o edge '{{edgeName}}'?", + "delete-edge-text": "Atenção: após a confirmação, o edge e todos os dados relacionados serão irrecuperáveis.", + "delete-edges-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 edge} other {# edges} }?", + "delete-edges-text": "Atenção: após a confirmação, todos os edges selecionados serão removidos e todos os dados relacionados serão irrecuperáveis.", + "name": "Nome", + "name-starts-with": "Nome do edge começa com", + "name-required": "O nome é obrigatório.", + "description": "Descrição", + "details": "Detalhes", + "events": "Eventos", + "copy-id": "Copiar ID do edge", + "id-copied-message": "ID do edge copiado para a área de transferência", + "sync": "Sincronizar edge", + "edge-required": "Edge é obrigatório", + "edge-type": "Tipo do edge", + "edge-type-required": "O tipo do edge é obrigatório.", + "event-action": "Ação do evento", + "entity-id": "ID da entidade", + "select-edge-type": "Selecionar tipo do edge", + "assign-to-customer": "Atribuir ao cliente", + "assign-to-customer-text": "Selecione o cliente ao qual deseja atribuir o(s) edge(s)", + "assign-edge-to-customer": "Atribuir edge(s) ao cliente", + "assign-edge-to-customer-text": "Selecione os edges a serem atribuídos ao cliente", + "assignedToCustomer": "Atribuído ao cliente", + "edge-public": "Edge é público", + "assigned-to-customer": "Atribuído a: {{customerTitle}}", + "unassign-from-customer": "Desatribuir do cliente", + "unassign-edge-title": "Tem certeza de que deseja desatribuir o edge '{{edgeName}}'?", + "unassign-edge-text": "Após a confirmação, o edge será desatribuído e não estará mais acessível pelo cliente.", + "unassign-edges-title": "Tem certeza de que deseja desatribuir { count, plural, =1 {1 edge} other {# edges} }?", + "unassign-edges-text": "Após a confirmação, todos os edges selecionados serão desatribuídos e não estarão mais acessíveis pelo cliente.", + "make-public": "Tornar edge público", + "make-public-edge-title": "Tem certeza de que deseja tornar o edge '{{edgeName}}' público?", + "make-public-edge-text": "Após a confirmação, o edge e todos os seus dados serão tornados públicos e acessíveis por outros.", + "make-private": "Tornar edge privado", + "public": "Público", + "make-private-edge-title": "Tem certeza de que deseja tornar o edge '{{edgeName}}' privado?", + "make-private-edge-text": "Após a confirmação, o edge e todos os seus dados serão tornados privados e não estarão mais acessíveis por outros.", + "import": "Importar edge", + "install-connect-instructions": "Instruções de instalação e conexão", + "install-connect-instructions-edge-created": "Edge criado! Veja as instruções de instalação e conexão", + "loading-edge-instructions": "Carregando instruções do edge...", + "label": "Rótulo", + "load-entity-error": "Falha ao carregar os dados. A entidade foi excluída.", + "assign-new-edge": "Atribuir novo edge", + "unassign-from-edge": "Desatribuir do edge", + "edge-key": "Chave do edge", + "copy-edge-key": "Copiar chave do edge", + "edge-key-copied-message": "Chave do edge copiada para a área de transferência", + "edge-secret": "Segredo do edge", + "copy-edge-secret": "Copiar segredo do edge", + "edge-secret-copied-message": "Segredo do edge copiado para a área de transferência", + "manage-assets": "Gerenciar ativos", + "manage-devices": "Gerenciar dispositivos", + "manage-entity-views": "Gerenciar visualizações de entidade", + "manage-dashboards": "Gerenciar dashboards", + "manage-rulechains": "Gerenciar cadeias de regras", + "assets": "Ativos do edge", + "devices": "Dispositivos do edge", + "entity-views": "Visualizações de entidade do edge", + "dashboard": "Dashboard do edge", + "dashboards": "Dashboards do edge", + "rulechain-templates": "Modelos de cadeia de regras", + "edge-rulechain-templates": "Modelos de cadeia de regras do edge", + "rulechains": "Cadeias de regras do edge", + "search": "Pesquisar edges", + "selected-edges": "{ count, plural, =1 {1 edge} other {# edges} } selecionado(s)", + "any-edge": "Qualquer edge", + "no-edge-types-matching": "Nenhum tipo de edge correspondente a '{{entitySubtype}}' foi encontrado.", + "edge-type-list-empty": "Nenhum tipo de edge selecionado.", + "edge-types": "Tipos de edge", + "enter-edge-type": "Inserir tipo do edge", + "deployed": "Implantado", + "pending": "Pendente", + "downlinks": "Downlinks", + "no-downlinks-prompt": "Nenhum downlink encontrado", + "sync-process-started-successfully": "Processo de sincronização iniciado com sucesso!", + "missing-related-rule-chains-title": "O edge possui cadeia(s) de regras relacionada(s) ausente(s)", + "missing-related-rule-chains-text": "A(s) cadeia(s) de regras atribuída(s) ao edge utiliza(m) nós de regra que encaminham mensagem(s) para cadeia(s) de regras que não estão atribuídas a este edge.

Lista de cadeia(s) de regras ausente(s):
{{missingRuleChains}}", + "widget-datasource-error": "Este widget suporta apenas a fonte de dados da entidade EDGE", + "upgrade-instructions": "Instruções de atualização", + "connected": "Conectado", + "disconnected": "Desconectado" + }, + "edge-event": { + "type-dashboard": "Dashboard", + "type-asset": "Ativo", + "type-device": "Dispositivo", + "type-device-profile": "Perfil do dispositivo", + "type-asset-profile": "Perfil do ativo", + "type-entity-view": "Visualização de entidade", + "type-alarm": "Alarme", + "type-rule-chain": "Cadeia de regras", + "type-rule-chain-metadata": "Metadados da cadeia de regras", + "type-edge": "Edge", + "type-user": "Usuário", + "type-tenant": "Tenant", + "type-tenant-profile": "Perfil do tenant", + "type-customer": "Cliente", + "type-relation": "Relação", + "type-widgets-bundle": "Conjunto de widgets", + "type-widgets-type": "Tipo de widgets", + "type-admin-settings": "Configurações de administração", + "type-ota-package": "Pacote OTA", + "type-queue": "Fila", + "action-type-added": "Adicionado", + "action-type-deleted": "Excluído", + "action-type-updated": "Atualizado", + "action-type-post-attributes": "Publicar atributos", + "action-type-attributes-updated": "Atributos atualizados", + "action-type-attributes-deleted": "Atributos excluídos", + "action-type-timeseries-updated": "Séries temporais atualizadas", + "action-type-credentials-updated": "Credenciais atualizadas", + "action-type-assigned-to-customer": "Atribuído ao cliente", + "action-type-unassigned-from-customer": "Desatribuído do cliente", + "action-type-relation-add-or-update": "Adição ou atualização de relação", + "action-type-relation-deleted": "Relação excluída", + "action-type-rpc-call": "Chamada RPC", + "action-type-alarm-ack": "Confirmação de alarme", + "action-type-alarm-clear": "Limpeza de alarme", + "action-type-alarm-assigned": "Alarme atribuído", + "action-type-alarm-unassigned": "Alarme desatribuído", + "action-type-assigned-to-edge": "Atribuído ao edge", + "action-type-unassigned-from-edge": "Desatribuído do edge", + "action-type-credentials-request": "Solicitação de credenciais", + "action-type-entity-merge-request": "Solicitação de mesclagem de entidade" + }, "error": { - "unable-to-connect": "Impossível conectar ao servidor! Verifique sua conexão à Internet.", - "unhandled-error-code": "Código de erro sem tratamento: {{errorCode}}", + "unable-to-connect": "Não foi possível conectar ao servidor! Verifique sua conexão com a internet.", + "unhandled-error-code": "Código de erro não tratado: {{errorCode}}", "unknown-error": "Erro desconhecido" }, "entity": { "entity": "Entidade", "entities": "Entidades", - "aliases": "Aliases de entidades", + "entities-count": "Contagem de entidades", + "alarms-count": "Contagem de alarmes", + "aliases": "Aliases de entidade", + "aliases-short": "Aliases", "entity-alias": "Alias de entidade", - "unable-delete-entity-alias-title": "Impossível excluir alias de entidade", - "unable-delete-entity-alias-text": "Não é possível excluir o alias de entidade '{{entityAlias}}' porque ele é usado pelo(s) seguinte(s) widget(s):
{{widgetsList}}", - "duplicate-alias-error": "Alias '{{alias}}' duplicado encontrado.
Os aliases de entidades devem ser exclusivos no dashboard.", + "unable-delete-entity-alias-title": "Não é possível excluir o alias de entidade", + "unable-delete-entity-alias-text": "O alias de entidade '{{entityAlias}}' não pode ser excluído pois é utilizado pelo(s) seguinte(s) widget(s):
{{widgetsList}}", + "duplicate-alias-error": "Alias duplicado encontrado '{{alias}}'.
Os aliases de entidade devem ser únicos no dashboard.", "missing-entity-filter-error": "Filtro ausente para o alias '{{alias}}'.", - "configure-alias": "Configurar alias de '{{alias}}'", + "configure-alias": "Configurar alias '{{alias}}'", "alias": "Alias", "alias-required": "O alias de entidade é obrigatório.", "remove-alias": "Remover alias de entidade", "add-alias": "Adicionar alias de entidade", + "edit-alias": "Editar alias de entidade", "entity-list": "Lista de entidades", "entity-type": "Tipo de entidade", - "entity-types": "Tipos de entidades", - "entity-type-list": "Lista de tipos de entidades", + "entity-types": "Tipos de entidade", + "entity-type-list": "Lista de tipos de entidade", "any-entity": "Qualquer entidade", + "add-entity-type": "Adicionar tipo de entidade", "enter-entity-type": "Inserir tipo de entidade", - "no-entities-matching": "Nenhuma entidade encontrada que coincida com '{{entity}}'.", - "no-entity-types-matching": "Nenhum tipo de entidade encontrado que coincida com '{{entityType}}'.", - "name-starts-with": "O nome começa com", + "no-entities-matching": "Nenhuma entidade correspondente a '{{entity}}' foi encontrada.", + "no-entities-text": "Nenhuma entidade encontrada", + "no-entity-types-matching": "Nenhum tipo de entidade correspondente a '{{entityType}}' foi encontrado.", + "name-starts-with": "Expressão de nome", + "help-text": "Use '%' conforme necessário: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Usar filtro", "entity-list-empty": "Nenhuma entidade selecionada.", - "entity-name-filter-required": "O filtro do nome de entidade é obrigatório.", - "entity-name-filter-no-entity-matched": "Nenhuma entidade encontrada que comece com '{{entity}}'.", - "all-subtypes": "Tudo", + "entity-type-list-required": "Pelo menos um tipo de entidade deve ser selecionado.", + "entity-name-filter-required": "O filtro de nome de entidade é obrigatório.", + "entity-name-filter-no-entity-matched": "Nenhuma entidade começando com '{{entity}}' foi encontrada.", + "all-subtypes": "Todos", "select-entities": "Selecionar entidades", "no-aliases-found": "Nenhum alias encontrado.", "no-alias-matching": "'{{alias}}' não encontrado.", - "create-new-alias": "Criar um novo!", + "create-new-alias": "Criar novo!", + "create-new": "Criar novo", "key": "Chave", "key-name": "Nome da chave", - "no-keys-found": "Nenhuma chave encontrado.", + "no-keys-found": "Nenhuma chave encontrada.", "no-key-matching": "'{{key}}' não encontrado.", - "create-new-key": "Criar um novo!", + "create-new-key": "Criar novo!", "type": "Tipo", "type-required": "O tipo de entidade é obrigatório.", "type-device": "Dispositivo", "type-devices": "Dispositivos", - "list-of-devices": "{ count, plural, =1 {One device} other {List of # devices} }", + "list-of-devices": "{ count, plural, =1 {Um dispositivo} other {Lista de # dispositivos} }", "device-name-starts-with": "Dispositivos cujos nomes começam com '{{prefix}}'", + "type-device-profile": "Perfil do dispositivo", + "type-device-profiles": "Perfis do dispositivo", + "clear-selected-profiles": "Limpar perfis selecionados", + "list-of-device-profiles": "{ count, plural, =1 {Um perfil do dispositivo} other {Lista de # perfis do dispositivo} }", + "device-profile-name-starts-with": "Perfis do dispositivo cujos nomes começam com '{{prefix}}'", + "type-asset-profile": "Perfil do ativo", + "type-asset-profiles": "Perfis do ativo", + "list-of-asset-profiles": "{ count, plural, =1 {Um perfil do ativo} other {Lista de # perfis do ativo} }", + "asset-profile-name-starts-with": "Perfis do ativo cujos nomes começam com '{{prefix}}'", "type-asset": "Ativo", "type-assets": "Ativos", - "list-of-assets": "{ count, plural, =1 {One asset} other {List of # assets} }", + "list-of-assets": "{ count, plural, =1 {Um ativo} other {Lista de # ativos} }", "asset-name-starts-with": "Ativos cujos nomes começam com '{{prefix}}'", - "type-entity-view": "Exibição de entidade", - "type-entity-views": "Exibições de entidades", - "list-of-entity-views": "{ count, plural, =1 {One entity view} other {List of # entity views} }", - "entity-view-name-starts-with": "Exibições de entidades cujos nomes começam com '{{prefix}}'", + "type-entity-view": "Visualização de entidade", + "type-entity-views": "Visualizações de entidade", + "list-of-entity-views": "{ count, plural, =1 {Uma visualização de entidade} other {Lista de # visualizações de entidade} }", + "entity-view-name-starts-with": "Visualizações de entidade cujos nomes começam com '{{prefix}}'", "type-rule": "Regra", "type-rules": "Regras", - "list-of-rules": "{ count, plural, =1 {One rule} other {List of # rules} }", + "list-of-rules": "{ count, plural, =1 {Uma regra} other {Lista de # regras} }", "rule-name-starts-with": "Regras cujos nomes começam com '{{prefix}}'", - "type-plugin": "Plug-in", - "type-plugins": "Plug-ins", - "list-of-plugins": "{ count, plural, =1 {One plugin} other {List of # plugins} }", - "plugin-name-starts-with": "Plug-ins cujos nomes começam com '{{prefix}}'", - "type-tenant": "Locatário", - "type-tenants": "Locatários", - "list-of-tenants": "{ count, plural, =1 {One tenant} other {List of # tenants} }", - "tenant-name-starts-with": "Locatários cujos nomes começam com '{{prefix}}'", + "type-plugin": "Plugin", + "type-plugins": "Plugins", + "list-of-plugins": "{ count, plural, =1 {Um plugin} other {Lista de # plugins} }", + "plugin-name-starts-with": "Plugins cujos nomes começam com '{{prefix}}'", + "type-tenant": "Tenant", + "type-tenants": "Tenants", + "list-of-tenants": "{ count, plural, =1 {Um tenant} other {Lista de # tenants} }", + "tenant-name-starts-with": "Tenants cujos nomes começam com '{{prefix}}'", + "type-tenant-profile": "Perfil do tenant", + "type-tenant-profiles": "Perfis do tenant", + "list-of-tenant-profiles": "{ count, plural, =1 {Um perfil do tenant} other {Lista de # perfis do tenant} }", + "tenant-profile-name-starts-with": "Perfis do tenant cujos nomes começam com '{{prefix}}'", "type-customer": "Cliente", "type-customers": "Clientes", - "list-of-customers": "{ count, plural, =1 {One customer} other {List of # customers} }", + "list-of-customers": "{ count, plural, =1 {Um cliente} other {Lista de # clientes} }", "customer-name-starts-with": "Clientes cujos nomes começam com '{{prefix}}'", "type-user": "Usuário", "type-users": "Usuários", - "list-of-users": "{ count, plural, =1 {One user} other {List of # users} }", + "list-of-users": "{ count, plural, =1 {Um usuário} other {Lista de # usuários} }", "user-name-starts-with": "Usuários cujos nomes começam com '{{prefix}}'", "type-dashboard": "Dashboard", "type-dashboards": "Dashboards", - "list-of-dashboards": "{ count, plural, =1 {One dashboard} other {List of # dashboards} }", + "list-of-dashboards": "{ count, plural, =1 {Um dashboard} other {Lista de # dashboards} }", "dashboard-name-starts-with": "Dashboards cujos nomes começam com '{{prefix}}'", "type-alarm": "Alarme", "type-alarms": "Alarmes", - "list-of-alarms": "{ count, plural, =1 {One alarms} other {List of # alarms} }", + "list-of-alarms": "{ count, plural, =1 {Um alarme} other {Lista de # alarmes} }", "alarm-name-starts-with": "Alarmes cujos nomes começam com '{{prefix}}'", "type-rulechain": "Cadeia de regras", "type-rulechains": "Cadeias de regras", - "list-of-rulechains": "{ count, plural, =1 {One rule chain} other {List of # rule chains} }", + "list-of-rulechains": "{ count, plural, =1 {Uma cadeia de regras} other {Lista de # cadeias de regras} }", "rulechain-name-starts-with": "Cadeias de regras cujos nomes começam com '{{prefix}}'", "type-rulenode": "Nó de regra", - "type-rulenodes": "Nós de regras", - "list-of-rulenodes": "{ count, plural, =1 {One rule node} other {List of # rule nodes} }", - "rulenode-name-starts-with": "Nós de regras cujos nomes começam com '{{prefix}}'", + "type-rulenodes": "Nós de regra", + "list-of-rulenodes": "{ count, plural, =1 {Um nó de regra} other {Lista de # nós de regra} }", + "rulenode-name-starts-with": "Nós de regra cujos nomes começam com '{{prefix}}'", + "type-api-key": "Chave de API", + "type-api-keys": "Chaves de API", "type-current-customer": "Cliente atual", - "type-current-tenant": "Locatário atual", + "type-current-tenant": "Tenant atual", "type-current-user": "Usuário atual", - "type-current-user-owner": "Proprietário de usuário atual", + "type-current-user-owner": "Proprietário do usuário atual", + "type-calculated-field": "Campo calculado", + "type-calculated-fields": "Campos calculados", + "type-ai-model": "Modelo de IA", + "type-ai-models": "Modelos de IA", + "type-widgets-bundle": "Conjunto de widgets", + "type-widgets-bundles": "Conjuntos de widgets", + "list-of-widgets-bundles": "{ count, plural, =1 {Um conjunto de widgets} other {Lista de # conjuntos de widgets} }", + "type-widget": "Widget", + "type-widgets": "Widgets", + "list-of-widgets": "{ count, plural, =1 {Um widget} other {Lista de # widgets} }", "search": "Pesquisar entidades", - "selected-entities": "{ count, plural, =1 {1 entity} other {# entities} } selecionado(s)", + "selected-entities": "{ count, plural, =1 {1 entidade} other {# entidades} } selecionada(s)", "entity-name": "Nome da entidade", - "entity-label": "Etiqueta de entidade", - "details": "Detalhes de entidades", + "entity-label": "Rótulo da entidade", + "details": "Detalhes da entidade", "no-entities-prompt": "Nenhuma entidade encontrada", - "no-data": "Nenhum dado para exibição", - "columns-to-display": "Colunas para Exibição" + "no-data": "Nenhum dado para exibir", + "show-all-columns": "Mostrar todos", + "columns-to-display": "Colunas a exibir", + "type-api-usage-state": "Estado de uso da API", + "type-edge": "Edge", + "type-edges": "Edges", + "list-of-edges": "{ count, plural, =1 {Um edge} other {Lista de # edges} }", + "edge-name-starts-with": "Edges cujos nomes começam com '{{prefix}}'", + "version-conflict": { + "message": "Deseja sobrescrever a versão existente ou descartar as alterações e carregar a versão mais recente?", + "link": "Você pode baixar sua versão do {{entityType}} usando este", + "overwrite": "Sobrescrever versão", + "discard": "Descartar alterações" + }, + "type-tb-resource": "Recurso", + "type-tb-resources": "Recursos", + "list-of-tb-resources": "{ count, plural, =1 {Um recurso} other {Lista de # recursos} }", + "type-ota-package": "Pacote OTA", + "type-ota-packages": "Pacotes OTA", + "list-of-ota-packages": "{ count, plural, =1 {Um pacote OTA} other {Lista de # pacotes OTA} }", + "type-rpc": "RPC", + "type-queue": "Fila", + "type-queue-stats": "Estatísticas da fila", + "type-queues-stats": "Estatísticas das filas", + "type-notification": "Notificação", + "type-notification-rule": "Regra de notificação", + "type-notification-rules": "Regras de notificação", + "list-of-notification-rules": "{ count, plural, =1 {Uma regra de notificação} other {Lista de # regras de notificação} }", + "type-notification-target": "Destinatário de notificação", + "type-notification-targets": "Destinatários de notificação", + "list-of-notification-targets": "{ count, plural, =1 {Um destinatário de notificação} other {Lista de # destinatários de notificação} }", + "type-notification-request": "Solicitação de notificação", + "type-notification-template": "Modelo de notificação", + "type-notification-templates": "Modelos de notificação", + "list-of-notification-templates": "{ count, plural, =1 {Um modelo de notificação} other {Lista de # modelos de notificação} }", + "link": "link", + "type-oauth2-client": "Cliente OAuth 2.0", + "type-oauth2-clients": "Clientes OAuth 2.0", + "list-of-oauth2-clients": "{ count, plural, =1 {Um cliente OAuth 2.0} other {Lista de # clientes OAuth 2.0} }", + "type-domain": "Domínio", + "type-domains": "Domínios", + "list-of-domains": "{ count, plural, =1 {Um domínio} other {Lista de # domínios} }", + "type-mobile-app": "Aplicativo móvel", + "type-mobile-apps": "Aplicativos móveis", + "list-of-mobile-apps": "{ count, plural, =1 {Um aplicativo móvel} other {Lista de # aplicativos móveis} }", + "type-mobile-app-bundle": "Pacote móvel", + "type-mobile-app-bundles": "Pacotes móveis", + "list-of-mobile-app-bundles": "{ count, plural, =1 {Um pacote móvel} other {Lista de # pacotes móveis} }", + "limit-reached": "Limite atingido", + "limit-reached-text": "Você atingiu o limite de {{ entities }}. Para adicionar mais, solicite ao Administrador do sistema que aumente o limite de {{ entity }}.", + "request-limit-increase": "Solicitar aumento do limite", + "request-sysadmin-text": "Você é o Administrador do sistema?", + "login-here": "Faça login aqui", + "to-increase-limit": "para aumentar o limite.", + "increase-limit-request-sent-title": "Enviamos uma solicitação automática ao Administrador do sistema para aumentar o limite", + "increase-limit-request-sent-text": "Aguarde enquanto a solicitação é revisada e as configurações são atualizadas. Pode ser necessário atualizar esta página para ver as alterações." }, "entity-field": { - "created-time": "Hora de criação", + "created-time": "Data de criação", "name": "Nome", "type": "Tipo", "first-name": "Nome", "last-name": "Sobrenome", - "email": "E-mail", + "email": "Email", "title": "Título", "country": "País", "state": "Estado", @@ -877,287 +3213,321 @@ "address2": "Endereço 2", "zip": "CEP", "phone": "Telefone", - "label": "Etiqueta" + "label": "Rótulo", + "queue-name": "Nome da fila", + "service-id": "ID do serviço", + "owner-name": "Nome do proprietário", + "owner-type": "Tipo do proprietário" }, "entity-view": { - "entity-view": "Exibição de entidade", - "entity-view-required": "A exibição de entidade é obrigatória.", - "entity-views": "Exibições de entidades", - "management": "Habilitar gerenciamento de exibições", - "view-entity-views": "Visualizar exibições de entidades", - "entity-view-alias": "Alias de exibição de entidade", - "aliases": "Aliases de exibições de entidades", + "entity-view": "Visualização de entidade", + "entity-view-required": "Visualização de entidade é obrigatória.", + "entity-views": "Visualizações de entidade", + "management": "Gerenciamento de visualização de entidade", + "view-entity-views": "Visualizar visualizações de entidade", + "entity-view-alias": "Alias de visualização de entidade", + "aliases": "Aliases de visualização de entidade", "no-alias-matching": "'{{alias}}' não encontrado.", "no-aliases-found": "Nenhum alias encontrado.", "no-key-matching": "'{{key}}' não encontrado.", - "no-keys-found": "Nenhuma chave encontrado.", + "no-keys-found": "Nenhuma chave encontrada.", "create-new-alias": "Criar um novo!", "create-new-key": "Criar um novo!", - "duplicate-alias-error": "Alias '{{alias}}' duplicado encontrado.
Os aliases de exibições de entidades devem ser exclusivos no dashboard.", - "configure-alias": "Configurar alias de '{{alias}}'", - "no-entity-views-matching": "Nenhuma exibição de entidade encontrada que coincida com '{{entity}}'.", + "duplicate-alias-error": "Alias duplicado encontrado '{{alias}}'.
Os aliases de visualização de entidade devem ser únicos no dashboard.", + "configure-alias": "Configurar alias '{{alias}}'", + "no-entity-views-matching": "Nenhuma visualização de entidade correspondente a '{{entity}}' foi encontrada.", "public": "Público", "alias": "Alias", - "alias-required": "O alias de exibição de entidade é obrigatório.", - "remove-alias": "Remover alias de exibição de entidade", - "add-alias": "Adicionar alias de exibição de entidade", - "name-starts-with": "O nome da exibição de entidade começa com", - "entity-view-list": "Lista de exibições de entidades", + "alias-required": "O alias de visualização de entidade é obrigatório.", + "remove-alias": "Remover alias de visualização de entidade", + "add-alias": "Adicionar alias de visualização de entidade", + "name-starts-with": "Expressão de nome de visualização de entidade", + "help-text": "Use '%' conforme necessário: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", + "entity-view-list": "Lista de visualizações de entidade", "use-entity-view-name-filter": "Usar filtro", - "entity-view-list-empty": "Nenhuma exibição de entidade selecionada.", - "entity-view-name-filter-required": "O filtro de nomes de exibições de entidades é obrigatório.", - "entity-view-name-filter-no-entity-view-matched": "Nenhuma exibição de entidade encontrada que comece com '{{entityView}}'.", - "add": "Adicionar exibição de entidade", - "entity-view-public": "A exibição de entidade é pública", - "assign-to-customer": "Atribuir a cliente", - "assign-entity-view-to-customer": "Atribuir Exibição(ões) de entidade(s) a Cliente", - "assign-entity-view-to-customer-text": "Selecione as exibições de entidades a serem atribuídas ao cliente", - "no-entity-views-text": "Nenhuma exibição de entidade encontrada", - "assign-to-customer-text": "Selecione o cliente para atribuir a(s) exibição(ões) de entidade(s)", - "entity-view-details": "Detalhes de exibições de entidades", - "add-entity-view-text": "Adicionar nova exibição de entidade", - "delete": "Excluir exibição de entidade", - "assign-entity-views": "Atribuir exibições de entidades", - "assign-entity-views-text": "Atribuir { count, plural, =1 {1 entity view} other {# entity views} } a cliente", - "delete-entity-views": "Excluir exibições de entidades", - "unassign-from-customer": "Remover atribuição a cliente", - "unassign-entity-views": "Remover atribuição de exibições de entidades", - "unassign-entity-views-action-title": "Remover atribuição de { count, plural, =1 {1 entity view} other {# entity views} } a cliente", - "assign-new-entity-view": "Atribuir nova exibição de entidade", - "delete-entity-view-title": "Tem certeza de que deseja excluir a exibição de entidade '{{entityViewName}}'?", - "delete-entity-view-text": "Cuidado, após confirmar, não será possível recuperar a exibição de entidade e todos os dados associados.", - "delete-entity-views-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 entity view} other {# entity views} }?", - "delete-entity-views-action-title": "Excluir { count, plural, =1 {1 entity view} other {# entity views} }", - "delete-entity-views-text": "Cuidado, após confirmar, todas as exibições de entidades selecionadas serão removidas e não será possível recuperar nenhum dado associado.", - "unassign-entity-view-title": "Tem certeza de que deseja remover a atribuição da exibição de entidade '{{entityViewName}}'?", - "unassign-entity-view-text": "Após confirmar, a atribuição da exibição de entidade será removida e ela não poderá ser acessada pelo cliente.", - "unassign-entity-view": "Remover atribuição de exibição de entidade", - "unassign-entity-views-title": "Tem certeza de que deseja remover a atribuição de { count, plural, =1 {1 entity view} other {# entity views} }?", - "unassign-entity-views-text": "Após confirmar, a atribuição de todas as exibições de entidade selecionadas será removida e elas não poderão ser acessadas pelo cliente.", - "entity-view-type": "Tipo de exibições de entidades", - "entity-view-type-required": "O tipo de exibição de entidade é obrigatório.", - "select-entity-view-type": "Selecionar tipo de exibição de entidade", - "enter-entity-view-type": "Inserir tipo de exibição de entidade", - "any-entity-view": "Qualquer exibição de entidade", - "no-entity-view-types-matching": "Nenhum tipo de exibição de entidade encontrado que coincida com '{{entitySubtype}}'.", - "entity-view-type-list-empty": "Nenhum tipo de exibição de entidade selecionado.", - "entity-view-types": "Tipos de exibição de entidade", - "created-time": "Hora de criação", + "entity-view-list-empty": "Nenhuma visualização de entidade selecionada.", + "entity-view-name-filter-required": "O filtro de nome de visualização de entidade é obrigatório.", + "entity-view-name-filter-no-entity-view-matched": "Nenhuma visualização de entidade começando com '{{entityView}}' foi encontrada.", + "add": "Adicionar visualização de entidade", + "entity-view-public": "A visualização de entidade é pública", + "assign-to-customer": "Atribuir ao cliente", + "assign-entity-view-to-customer": "Atribuir visualização(ões) de entidade ao cliente", + "assign-entity-view-to-customer-text": "Selecione as visualizações de entidade para atribuir ao cliente", + "no-entity-views-text": "Nenhuma visualização de entidade encontrada", + "assign-to-customer-text": "Selecione o cliente para atribuir a(s) visualização(ões) de entidade", + "entity-view-details": "Detalhes da visualização de entidade", + "add-entity-view-text": "Adicionar nova visualização de entidade", + "delete": "Excluir visualização de entidade", + "assign-entity-views": "Atribuir visualizações de entidade", + "assign-entity-views-text": "Atribuir { count, plural, =1 {1 visualização de entidade} other {# visualizações de entidade} } ao cliente", + "delete-entity-views": "Excluir visualizações de entidade", + "make-public": "Tornar visualização de entidade pública", + "make-private": "Tornar visualização de entidade privada", + "unassign-from-customer": "Desatribuir do cliente", + "unassign-entity-views": "Desatribuir visualizações de entidade", + "unassign-entity-views-action-title": "Desatribuir { count, plural, =1 {1 visualização de entidade} other {# visualizações de entidade} } do cliente", + "assign-new-entity-view": "Atribuir nova visualização de entidade", + "delete-entity-view-title": "Tem certeza de que deseja excluir a visualização de entidade '{{entityViewName}}'?", + "delete-entity-view-text": "Atenção: após a confirmação, a visualização de entidade e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-entity-views-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 visualização de entidade} other {# visualizações de entidade} }?", + "delete-entity-views-action-title": "Excluir { count, plural, =1 {1 visualização de entidade} other {# visualizações de entidade} }", + "delete-entity-views-text": "Atenção: após a confirmação, todas as visualizações de entidade selecionadas serão removidas e todos os dados relacionados se tornarão irrecuperáveis.", + "make-public-entity-view-title": "Tem certeza de que deseja tornar a visualização de entidade '{{entityViewName}}' pública?", + "make-public-entity-view-text": "Após a confirmação, a visualização de entidade e todos os seus dados serão tornados públicos e acessíveis por outros.", + "make-private-entity-view-title": "Tem certeza de que deseja tornar a visualização de entidade '{{entityViewName}}' privada?", + "make-private-entity-view-text": "Após a confirmação, a visualização de entidade e todos os seus dados serão tornados privados e não serão acessíveis por outros.", + "unassign-entity-view-title": "Tem certeza de que deseja desatribuir a visualização de entidade '{{entityViewName}}'?", + "unassign-entity-view-text": "Após a confirmação, a visualização de entidade será desatribuída e não estará acessível ao cliente.", + "unassign-entity-view": "Desatribuir visualização de entidade", + "unassign-entity-views-title": "Tem certeza de que deseja desatribuir { count, plural, =1 {1 visualização de entidade} other {# visualizações de entidade} }?", + "unassign-entity-views-text": "Após a confirmação, todas as visualizações de entidade selecionadas serão desatribuídas e não estarão acessíveis ao cliente.", + "entity-view-type": "Tipo de visualização de entidade", + "entity-view-type-required": "O tipo de visualização de entidade é obrigatório.", + "select-entity-view-type": "Selecionar tipo de visualização de entidade", + "enter-entity-view-type": "Inserir tipo de visualização de entidade", + "any-entity-view": "Qualquer visualização de entidade", + "no-entity-view-types-matching": "Nenhum tipo de visualização de entidade correspondente a '{{entitySubtype}}' foi encontrado.", + "entity-view-type-list-empty": "Nenhum tipo de visualização de entidade selecionado.", + "entity-view-types": "Tipos de visualização de entidade", + "created-time": "Data de criação", "name": "Nome", - "name-required": "O nome é obrigatório.", + "name-required": "Nome é obrigatório.", + "name-max-length": "O nome deve ter menos de 256 caracteres", + "type-max-length": "O tipo de visualização de entidade deve ter menos de 256 caracteres", "description": "Descrição", "events": "Eventos", "details": "Detalhes", - "copyId": "Copiar ID de exibição de entidade", - "idCopiedMessage": "O ID de exibição de entidade foi copiado para a área de transferência", + "copyId": "Copiar Id da visualização de entidade", + "idCopiedMessage": "O Id da visualização de entidade foi copiado para a área de transferência", "assignedToCustomer": "Atribuído ao cliente", - "unable-entity-view-device-alias-title": "Impossível excluir alias de exibição de entidade", - "unable-entity-view-device-alias-text": "Não é possível excluir o alias do dispositivo '{{entityViewAlias}}' porque ele é usado pelo(s) seguinte(s) widget(s):
{{widgetsList}}", - "select-entity-view": "Selecionar exibição de entidade", - "make-public": "Tornar exibição de entidade pública", - "make-private": "Tornar exibição de entidade privada", - "start-date": "Data de início", + "unable-entity-view-device-alias-title": "Não é possível excluir o alias de visualização de entidade", + "unable-entity-view-device-alias-text": "O alias de dispositivo '{{entityViewAlias}}' não pode ser excluído pois é usado pelo(s) seguinte(s) widget(s):
{{widgetsList}}", + "select-entity-view": "Selecionar visualização de entidade", "start-ts": "Hora de início", - "end-date": "Data de término", "end-ts": "Hora de término", - "date-limits": "Limites de datas", + "date-limits": "Limites de data", "client-attributes": "Atributos do cliente", "shared-attributes": "Atributos compartilhados", "server-attributes": "Atributos do servidor", - "timeseries": "Intervalos de tempo", + "timeseries": "Séries temporais", "client-attributes-placeholder": "Atributos do cliente", "shared-attributes-placeholder": "Atributos compartilhados", "server-attributes-placeholder": "Atributos do servidor", - "timeseries-placeholder": "Intervalos de tempo", - "target-entity": "Entidade alvo", + "timeseries-placeholder": "Séries temporais", + "target-entity": "Entidade de destino", "attributes-propagation": "Propagação de atributos", - "attributes-propagation-hint": "A exibição de entidade copiará automaticamente atributos especificados da entidade alvo sempre que essa exibição de entidade for salva ou atualizada. Por questões de desempenho, os atributos da entidade alvo não são propagados para a exibição de entidade em cada alteração de atributo. A propagação automática pode ser habilitada configurando o nó de regra \"copiar para exibição\" na cadeia de regras e vinculando mensagens de \"Pós-Atributos\" e \"Atributos Atualizados\" ao novo nó de regra.", - "timeseries-data": "Dados de intervalos de tempo", - "timeseries-data-hint": "Configurar chaves de dados de intervalos de tempo da entidade alvo que estará acessível para a exibição de entidade. Esses dados de intervalo de tempo são apenas de leitura.", - "make-public-entity-view-title": "Tem certeza de que deseja tornar a exibição de entidade '{{entityViewName}}' pública?", - "make-public-entity-view-text": "Após confirmar, a exibição de entidade e todos os dados associados a ela se tornarão públicos e poderão ser acessados por outros.", - "make-private-entity-view-title": "Tem certeza de que deseja tornar a exibição de entidade '{{entityViewName}}' privada?", - "make-private-entity-view-text": "Após confirmar, a exibição de entidade e todos os dados associados a ela se tornarão privados e não poderão ser acessados por outros.", - "search": "Pesquisar exibições de entidades", - "selected-entity-views": "{ count, plural, =1 {1 entity view} other {# entity views} } selecionado(s)" + "attributes-propagation-hint": "A visualização de entidade copiará automaticamente os atributos especificados da entidade de destino cada vez que você salvar ou atualizar esta visualização de entidade. Por razões de desempenho, os atributos da entidade de destino não são propagados para a visualização de entidade a cada alteração de atributo. Você pode habilitar a propagação automática configurando o nó de regra \"copy to view\" na sua cadeia de regras e vinculando as mensagens \"Post attributes\" e \"Attributes Updated\" ao novo nó de regra.", + "timeseries-data": "Dados de séries temporais", + "timeseries-data-hint": "Configure as chaves de dados de séries temporais da entidade de destino que estarão acessíveis à visualização de entidade. Esses dados de séries temporais são somente leitura.", + "search": "Pesquisar visualizações de entidade", + "selected-entity-views": "{ count, plural, =1 {1 visualização de entidade} other {# visualizações de entidade} } selecionada(s)", + "assign-entity-view-to-edge": "Atribuir visualização(ões) de entidade ao Edge", + "assign-entity-view-to-edge-text": "Selecione as visualizações de entidade para atribuir ao edge", + "unassign-entity-view-from-edge-title": "Tem certeza de que deseja desatribuir a visualização de entidade '{{entityViewName}}'?", + "unassign-entity-view-from-edge-text": "Após a confirmação, a visualização de entidade será desatribuída e não estará acessível ao edge.", + "unassign-entity-views-from-edge-action-title": "Desatribuir { count, plural, =1 {1 visualização de entidade} other {# visualizações de entidade} } do edge", + "unassign-entity-view-from-edge": "Desatribuir visualização de entidade", + "unassign-entity-views-from-edge-title": "Tem certeza de que deseja desatribuir { count, plural, =1 {1 visualização de entidade} other {# visualizações de entidade} }?", + "unassign-entity-views-from-edge-text": "Após a confirmação, todas as visualizações de entidade selecionadas serão desatribuídas e não estarão acessíveis ao edge." }, "event": { "event-type": "Tipo de evento", + "events-filter": "Filtro de eventos", + "clean-events": "Limpar eventos", "type-error": "Erro", "type-lc-event": "Evento de ciclo de vida", "type-stats": "Estatísticas", "type-debug-rule-node": "Depuração", "type-debug-rule-chain": "Depuração", + "type-debug-calculated-field": "Depuração", + "arguments": "Argumentos", + "result": "Resultado", "no-events-prompt": "Nenhum evento encontrado", "error": "Erro", "alarm": "Alarme", - "event-time": "Tempo de evento", + "event-time": "Hora do evento", "server": "Servidor", "body": "Corpo", "method": "Método", "type": "Tipo", - "message-id": "ID de mensagem", - "message-type": "Tipo de Mensagem", - "data-type": "Tipo de Dados", - "relation-type": "Tipo de Relação", "metadata": "Metadados", + "message": "Mensagem", + "message-id": "Id da mensagem", + "copy-message-id": "Copiar Id da mensagem", + "message-type": "Tipo de mensagem", + "data-type": "Tipo de dados", + "relation-type": "Tipo de relação", "data": "Dados", "event": "Evento", "status": "Status", - "success": "Êxito", + "success": "Sucesso", "failed": "Falhou", "messages-processed": "Mensagens processadas", - "errors-occurred": "Erros", - "all-events": "Tudo", - "entity-type": "Tipo de entidade" + "max-messages-processed": "Máximo de mensagens processadas", + "min-messages-processed": "Mínimo de mensagens processadas", + "errors-occurred": "Erros ocorridos", + "max-errors-occurred": "Máximo de erros ocorridos", + "min-errors-occurred": "Mínimo de erros ocorridos", + "min-value": "O valor mínimo é 0.", + "all-events": "Todos", + "has-error": "Contém erro", + "entity-id": "Id da entidade", + "copy-entity-id": "Copiar Id da entidade", + "entity-type": "Tipo de entidade", + "clear-filter": "Limpar filtro", + "clear-request-title": "Limpar todos os eventos", + "clear-request-text": "Tem certeza de que deseja limpar todos os eventos?", + "started": "Iniciado", + "updated": "Atualizado", + "stopped": "Parado" }, "extension": { "extensions": "Extensões", - "selected-extensions": "{ count, plural, =1 {1 extension} other {# extensions} } selecionado(s)", + "selected-extensions": "{ count, plural, =1 {1 extensão} other {# extensões} } selecionada(s)", "type": "Tipo", "key": "Chave", "value": "Valor", - "id": "ID", - "extension-id": "ID da extensão", + "id": "Id", + "extension-id": "Id da extensão", "extension-type": "Tipo de extensão", "transformer-json": "JSON *", - "unique-id-required": "O ID de extensão atual já existe.", + "unique-id-required": "O id da extensão atual já existe.", "delete": "Excluir extensão", "add": "Adicionar extensão", "edit": "Editar extensão", "delete-extension-title": "Tem certeza de que deseja excluir a extensão '{{extensionId}}'?", - "delete-extension-text": "Cuidado, após confirmar, não será possível recuperar a extensão e nenhum dado associado.", - "delete-extensions-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 extension} other {# extensions} }?", - "delete-extensions-text": "Cuidado, após confirmar, todas as extensões selecionadas serão removidas.", + "delete-extension-text": "Atenção: após a confirmação, a extensão e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-extensions-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 extensão} other {# extensões} }?", + "delete-extensions-text": "Atenção: após a confirmação, todas as extensões selecionadas serão removidas.", "converters": "Conversores", - "converter-id": "ID do conversor", + "converter-id": "Id do conversor", "configuration": "Configuração", - "converter-configurations": "Configurações de conversores", + "converter-configurations": "Configurações do conversor", "token": "Token de segurança", "add-converter": "Adicionar conversor", "add-config": "Adicionar configuração de conversor", - "device-name-expression": "Expressão do nome do dispositivo", - "device-type-expression": "Expressão do tipo de dispositivo", + "device-name-expression": "Expressão de nome do dispositivo", + "device-type-expression": "Expressão de tipo do dispositivo", "custom": "Personalizado", - "to-double": "Duplicar", + "to-double": "Para Double", "transformer": "Transformador", - "json-required": "O json do transformador é obrigatório", - "json-parse": "Impossível analisar json do transformador", + "json-required": "O JSON do transformador é obrigatório.", + "json-parse": "Não foi possível analisar o JSON do transformador.", "attributes": "Atributos", "add-attribute": "Adicionar atributo", "add-map": "Adicionar elemento de mapeamento", - "timeseries": "Intervalos de tempo", - "add-timeseries": "Adicionar intervalos de tempo", - "field-required": "O campo é obrigatório", + "timeseries": "Séries temporais", + "add-timeseries": "Adicionar séries temporais", + "field-required": "Campo é obrigatório", "brokers": "Brokers", "add-broker": "Adicionar broker", "host": "Host", "port": "Porta", - "port-range": "A porta deve estar em um intervalo de 1 a 65535.", + "port-range": "A porta deve estar no intervalo de 1 a 65535.", "ssl": "Ssl", "credentials": "Credenciais", "username": "Nome de usuário", "password": "Senha", - "retry-interval": "Intervalo de repetição em milissegundos", + "retry-interval": "Intervalo de nova tentativa em milissegundos", "anonymous": "Anônimo", "basic": "Básico", "pem": "PEM", - "ca-cert": "Arquivo de certificado da Autoridade de Certificação *", + "ca-cert": "Arquivo de certificado CA *", "private-key": "Arquivo de chave privada *", "cert": "Arquivo de certificado *", "no-file": "Nenhum arquivo selecionado.", - "drop-file": "Solte um arquivo ou clique para selecionar um arquivo para carregar.", + "drop-file": "Arraste um arquivo ou clique para selecionar um arquivo para upload.", "mapping": "Mapeamento", "topic-filter": "Filtro de tópico", "converter-type": "Tipo de conversor", "converter-json": "Json", - "json-name-expression": "Expressão json do nome do dispositivo", - "topic-name-expression": "Expressão de tópico do nome do dispositivo", - "json-type-expression": "Expressão json do tipo de dispositivo", - "topic-type-expression": "Expressão de tópico do tipo de dispositivo", - "attribute-key-expression": "Expressão da chave de atributo", - "attr-json-key-expression": "Expressão json da chave de atributo", - "attr-topic-key-expression": "Expressão de tópico da chave de atributo", - "request-id-expression": "Expressão de ID da solicitação", - "request-id-json-expression": "Expressão json de ID da solicitação", - "request-id-topic-expression": "Expressão de tópico de ID da solicitação", + "json-name-expression": "Expressão JSON de nome do dispositivo", + "topic-name-expression": "Expressão de tópico de nome do dispositivo", + "json-type-expression": "Expressão JSON de tipo do dispositivo", + "topic-type-expression": "Expressão de tópico de tipo do dispositivo", + "attribute-key-expression": "Expressão de chave de atributo", + "attr-json-key-expression": "Expressão JSON de chave de atributo", + "attr-topic-key-expression": "Expressão de tópico de chave de atributo", + "request-id-expression": "Expressão de id de solicitação", + "request-id-json-expression": "Expressão JSON de id de solicitação", + "request-id-topic-expression": "Expressão de tópico de id de solicitação", "response-topic-expression": "Expressão de tópico de resposta", - "value-expression": "Expressão do valor", + "value-expression": "Expressão de valor", "topic": "Tópico", - "timeout": "Tempo limite em milissegundos", - "converter-json-required": "Json do conversor é obrigatório.", - "converter-json-parse": "Impossível analisar json do conversor", - "filter-expression": "Expressão do filtro", + "timeout": "Tempo Limite em milissegundos", + "converter-json-required": "O JSON do conversor é obrigatório.", + "converter-json-parse": "Não foi possível analisar o JSON do conversor.", + "filter-expression": "Expressão de filtro", "connect-requests": "Solicitações de conexão", "add-connect-request": "Adicionar solicitação de conexão", "disconnect-requests": "Solicitações de desconexão", "add-disconnect-request": "Adicionar solicitação de desconexão", "attribute-requests": "Solicitações de atributo", "add-attribute-request": "Adicionar solicitação de atributo", - "attribute-updates": "Atualizações de atributos", + "attribute-updates": "Atualizações de atributo", "add-attribute-update": "Adicionar atualização de atributo", - "server-side-rpc": "RPC no lado do servidor", - "add-server-side-rpc-request": "Adicionar solicitação de RPC no lado do servidor", - "device-name-filter": "Filtro do nome do dispositivo", + "server-side-rpc": "RPC do lado do servidor", + "add-server-side-rpc-request": "Adicionar solicitação RPC do lado do servidor", + "device-name-filter": "Filtro de nome do dispositivo", "attribute-filter": "Filtro de atributo", "method-filter": "Filtro de método", "request-topic-expression": "Expressão de tópico de solicitação", "response-timeout": "Tempo limite de resposta em milissegundos", "topic-expression": "Expressão de tópico", - "client-scope": "Escopo de cliente", + "client-scope": "Escopo do cliente", "add-device": "Adicionar dispositivo", "opc-server": "Servidores", "opc-add-server": "Adicionar servidor", - "opc-add-server-prompt": "Adicione servidor", - "opc-application-name": "Nome do aplicativo", - "opc-application-uri": "Uri do aplicativo", - "opc-scan-period-in-seconds": "Período de digitalização em segundos", + "opc-add-server-prompt": "Adicione um servidor", + "opc-application-name": "Nome da aplicação", + "opc-application-uri": "URI da aplicação", + "opc-scan-period-in-seconds": "Período de varredura em segundos", "opc-security": "Segurança", "opc-identity": "Identidade", "opc-keystore": "Keystore", "opc-type": "Tipo", "opc-keystore-type": "Tipo", - "opc-keystore-location": "Localização*", + "opc-keystore-location": "Localização *", "opc-keystore-password": "Senha", "opc-keystore-alias": "Alias", - "opc-keystore-key-password": "Senha principal", - "opc-device-node-pattern": "Padrão de nó de dispositivo", - "opc-device-name-pattern": "Padrão de nome de dispositivo", - "modbus-server": "Servidores/subordinados", - "modbus-add-server": "Adicionar servidor/subordinado", - "modbus-add-server-prompt": "Adicione servidor/subordinado", + "opc-keystore-key-password": "Senha da chave", + "opc-device-node-pattern": "Padrão de nó do dispositivo", + "opc-device-name-pattern": "Padrão de nome do dispositivo", + "modbus-server": "Servidores/escravos", + "modbus-add-server": "Adicionar servidor/escravo", + "modbus-add-server-prompt": "Adicione um servidor/escravo", "modbus-transport": "Transporte", "modbus-tcp-reconnect": "Reconectar automaticamente", - "modbus-rtu-over-tcp": "RTU sobre TCP", + "modbus-rtu-over-tcp": "RTU over TCP", "modbus-port-name": "Nome da porta serial", "modbus-encoding": "Codificação", "modbus-parity": "Paridade", "modbus-baudrate": "Taxa de transmissão", "modbus-databits": "Bits de dados", "modbus-stopbits": "Bits de parada", - "modbus-databits-range": "Os bits de dados devem estar em um intervalo de 7 a 8.", - "modbus-stopbits-range": "Os bits de parada devem estar em um intervalo de 1 a 2.", + "modbus-databits-range": "Os bits de dados devem estar no intervalo de 7 a 8.", + "modbus-stopbits-range": "Os bits de parada devem estar no intervalo de 1 a 2.", "modbus-unit-id": "ID da unidade", - "modbus-unit-id-range": "O ID da unidade deve estar em um intervalo de 1 a 247.", + "modbus-unit-id-range": "O ID da unidade deve estar no intervalo de 1 a 247.", "modbus-device-name": "Nome do dispositivo", - "modbus-poll-period": "Período de sondagem (ms)", - "modbus-attributes-poll-period": "Atributos do período de sondagem (ms)", - "modbus-timeseries-poll-period": "Intervalos de tempo do período de sondagem (ms)", - "modbus-poll-period-range": "O período de sondagem deve ser um valor positivo.", - "modbus-tag": "Etiqueta", + "modbus-poll-period": "Período de polling (ms)", + "modbus-attributes-poll-period": "Período de polling de atributos (ms)", + "modbus-timeseries-poll-period": "Período de polling de séries temporais (ms)", + "modbus-poll-period-range": "O período de polling deve ser um valor positivo.", + "modbus-tag": "Tag", "modbus-function": "Função", - "modbus-register-address": "Endereço do registro", - "modbus-register-address-range": "O endereço do registro deve estar em um intervalo de 0 a 65535.", - "modbus-register-bit-index": "Índice de bits", - "modbus-register-bit-index-range": "O índice de bits deve estar em um intervalo de 0 a 15.", - "modbus-register-count": "Contagem de registro", - "modbus-register-count-range": "A contagem de registro deve ser um valor positivo.", - "modbus-byte-order": "Ordem de byte", + "modbus-register-address": "Endereço do registrador", + "modbus-register-address-range": "O endereço do registrador deve estar no intervalo de 0 a 65535.", + "modbus-register-bit-index": "Índice de bit", + "modbus-register-bit-index-range": "O índice de bit deve estar no intervalo de 0 a 15.", + "modbus-register-count": "Contagem de registradores", + "modbus-register-count-range": "A contagem de registradores deve ser um valor positivo.", + "modbus-byte-order": "Ordem de bytes", "sync": { "status": "Status", "sync": "Sincronizar", - "not-sync": "Não sincronizar", - "last-sync-time": "Horário da última sincronização", + "not-sync": "Não sincronizado", + "last-sync-time": "Último horário de sincronização", "not-available": "Não disponível" }, "export-extensions-configuration": "Exportar configuração de extensões", @@ -1168,6 +3538,9 @@ "file": "Arquivo de extensões", "invalid-file-error": "Arquivo de extensão inválido" }, + "feature": { + "advanced-features": "Recursos avançados" + }, "filter": { "add": "Adicionar filtro", "edit": "Editar filtro", @@ -1175,16 +3548,20 @@ "name-required": "O nome do filtro é obrigatório.", "duplicate-filter": "Já existe um filtro com o mesmo nome.", "filters": "Filtros", - "unable-delete-filter-title": "Impossível excluir filtro", - "unable-delete-filter-text": "Não é possível excluir o filtro '{{filter}}' porque ele é usado pelo(s) seguinte(s) widget(s):
{{widgetsList}}", - "duplicate-filter-error": "Filtro '{{filter}}' duplicado encontrado.
Os filtros devem ser exclusivos no dashboard.", - "missing-key-filters-error": "Filtros chave ausentes para o filtro '{{filter}}'.", + "unable-delete-filter-title": "Não é possível excluir o filtro", + "unable-delete-filter-text": "O filtro '{{filter}}' não pode ser excluído pois é usado pelo(s) seguinte(s) widget(s):
{{widgetsList}}", + "duplicate-filter-error": "Filtro duplicado encontrado '{{filter}}'.
Os filtros devem ser únicos no dashboard.", + "missing-key-filters-error": "Filtros de chave ausentes para o filtro '{{filter}}'.", "filter": "Filtro", "editable": "Editável", + "editable-hint": "Permitir que o usuário altere o valor do filtro nos dashboards.", "no-filters-found": "Nenhum filtro encontrado.", + "no-filter-text": "Nenhum filtro especificado", + "add-filter-prompt": "Adicione um filtro", "no-filter-matching": "'{{filter}}' não encontrado.", "create-new-filter": "Criar um novo!", - "filter-required": "O filtro é obrigatório.", + "create-new": "Criar novo", + "filter-required": "Filtro é obrigatório.", "operation": { "operation": "Operação", "equal": "igual", @@ -1198,219 +3575,1387 @@ "greater-or-equal": "maior ou igual", "less-or-equal": "menor ou igual", "and": "e", - "or": "ou" + "or": "ou", + "in": "em", + "not-in": "não em" }, - "ignore-case": "Ignorar caixa", + "ignore-case": "ignorar maiúsculas/minúsculas", "value": "Valor", "remove-filter": "Remover filtro", + "duplicate-filter-action": "Duplicar filtro", + "preview": "Pré-visualização do filtro", "no-filters": "Nenhum filtro configurado", "add-filter": "Adicionar filtro", "add-complex-filter": "Adicionar filtro complexo", "add-complex": "Adicionar complexo", "complex-filter": "Filtro complexo", "edit-complex-filter": "Editar filtro complexo", - "edit-filter-user-params": "Editar parâmetros de usuário de predicado de filtro", - "user-parameters": "Parâmetros de usuário", - "display-label": "Etiqueta para exibição", - "order-priority": "Prioridade de ordem de campo", - "key-filter": "Filtro chave", - "key-filters": "Filtros chave", + "edit-filter-user-params": "Editar parâmetros de usuário do predicado do filtro", + "filter-user-params": "Parâmetros de usuário do predicado do filtro", + "user-parameters": "Parâmetros do usuário", + "display-label": "Rótulo de exibição", + "custom-label": "Rótulo personalizado", + "custom-label-hint": "Habilite para definir seu próprio rótulo para o filtro. Quando desabilitado, um rótulo será gerado automaticamente.", + "order-priority": "Ordem de exibição", + "key-filter": "Filtro de chave", + "key-filters": "Filtros de chave", "key-name": "Nome da chave", "key-name-required": "O nome da chave é obrigatório.", "key-type": { "key-type": "Tipo de chave", "attribute": "Atributo", - "timeseries": "Intervalos de tempo", - "entity-field": "Campo de entidade" + "timeseries": "Séries temporais", + "entity-field": "Campo de entidade", + "constant": "Constante", + "client-attribute": "Atributo do cliente", + "server-attribute": "Atributo do servidor", + "shared-attribute": "Atributo compartilhado" }, "value-type": { "value-type": "Tipo de valor", - "string": "Cadeia de caracteres", + "string": "String", "numeric": "Numérico", - "boolean": "Booliano", - "date-time": "Data/Hora" - }, - "value-type-required": "O tipo de valor chave é obrigatório.", - "key-value-type-change-title": "Tem certeza de que deseja alterar o tipo de valor chave?", - "key-value-type-change-message": "Se confirmar o novo tipo de valor, todos os filtros chave inseridos serão removidos.", - "no-key-filters": "Nenhum filtro chave configurado", - "add-key-filter": "Adicionar filtro chave", - "remove-key-filter": "Remover filtro chave", - "edit-key-filter": "Editar filtro chave", + "boolean": "Booleano", + "date-time": "Data e hora" + }, + "value-type-required": "O tipo de valor da chave é obrigatório.", + "key-value-type-change-title": "Tem certeza de que deseja alterar o tipo de valor da chave?", + "key-value-type-change-message": "Se confirmar o novo tipo de valor, todos os filtros de chave inseridos serão removidos.", + "no-key-filters": "Nenhum filtro de chave configurado", + "add-key-filter": "Adicionar filtro de chave", + "remove-key-filter": "Remover filtro de chave", + "edit-key-filter": "Editar filtro de chave", "date": "Data", "time": "Hora", - "current-tenant": "Locatário atual", + "current-tenant": "Tenant atual", "current-customer": "Cliente atual", "current-user": "Usuário atual", + "current-device": "Dispositivo atual", "default-value": "Valor padrão", + "default-comma-separated-values": "Valores padrão separados por vírgula", "dynamic-source-type": "Tipo de fonte dinâmica", - "no-dynamic-value": "Nenhum valor dinâmico", - "source-attribute": "Atributo da fonte", + "dynamic-value": "Valor dinâmico", + "no-dynamic-value": "Sem valor dinâmico", + "source-attribute": "Atributo de origem", "switch-to-dynamic-value": "Alternar para valor dinâmico", - "switch-to-default-value": "Alternar para valor padrão" + "switch-to-default-value": "Alternar para valor padrão", + "inherit-owner": "Herdar do proprietário", + "source-attribute-not-set": "Se o atributo de origem não estiver definido", + "unit": "Unidade" }, "fullscreen": { - "expand": "Expandir para tela inteira", - "exit": "Sair de tela inteira", - "toggle": "Alternar modo de tela inteira", - "fullscreen": "Tela inteira" + "expand": "Expandir para tela cheia", + "exit": "Sair da tela cheia", + "toggle": "Alternar modo de tela cheia", + "fullscreen": "Tela cheia" }, "function": { "function": "Função" }, "gateway": { - "create-new-gateway": "Criar um novo gateway", - "create-new-gateway-text": "Tem certeza de que deseja criar um novo gateway com o nome: '{{gatewayName}}'?", - "gateway": "Gateway", - "gateway-exists": "Já existe um dispositivo com o mesmo nome.", "gateway-name": "Nome do gateway", "gateway-name-required": "O nome do gateway é obrigatório.", - "gateway-saved": "A configuração do gateway foi salva corretamente.", + "gateways": "Gateways", + "create-new-gateway": "Criar um novo gateway", + "create-new-gateway-text": "Tem certeza de que deseja criar um novo gateway com o nome: '{{gatewayName}}'?", + "launch-command": "Comando de inicialização", "no-gateway-found": "Nenhum gateway encontrado.", "no-gateway-matching": " '{{item}}' não encontrado." }, "grid": { "delete-item-title": "Tem certeza de que deseja excluir este item?", - "delete-item-text": "Cuidado, após confirmar, não será possível recuperar este item e nenhum dado associado.", - "delete-items-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 item} other {# items} }?", - "delete-items-action-title": "Excluir { count, plural, =1 {1 item} other {# items} }", - "delete-items-text": "Cuidado, após confirmar, todos os itens selecionados serão removidos e não será possível recuperar nenhum dado associado.", + "delete-item-text": "Atenção: após a confirmação, este item e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-items-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 item} other {# itens} }?", + "delete-items-action-title": "Excluir { count, plural, =1 {1 item} other {# itens} }", + "delete-items-text": "Atenção: após a confirmação, todos os itens selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", "add-item-text": "Adicionar novo item", "no-items-text": "Nenhum item encontrado", "item-details": "Detalhes do item", "delete-item": "Excluir item", "delete-items": "Excluir itens", - "scroll-to-top": "Rolar para o início" + "scroll-to-top": "Rolar para o topo" }, "help": { - "goto-help-page": "Ir para a página de Ajuda" + "goto-help-page": "Ir para a página de ajuda", + "show-help": "Mostrar ajuda" }, "home": { - "home": "Página Inicial", + "home": "Início", "profile": "Perfil", - "logout": "Logout", + "logout": "Sair", "menu": "Menu", "avatar": "Avatar", - "open-user-menu": "Abrir menu de usuário" + "open-user-menu": "Abrir menu do usuário" + }, + "file-input": { + "browse-file": "Procurar arquivo", + "browse-files": "Procurar arquivos" + }, + "image": { + "gallery": "Galeria de imagens", + "search": "Pesquisar imagem", + "selected-images": "{ count, plural, =1 {1 imagem} other {# imagens} } selecionada(s)", + "created-time": "Data de criação", + "name": "Nome", + "name-required": "Nome é obrigatório.", + "resolution": "Resolução", + "size": "Tamanho", + "system": "Sistema", + "download-image": "Baixar imagem", + "export-image": "Exportar imagem para JSON", + "import-image": "Importar imagem de JSON", + "upload-image": "Fazer upload de imagem", + "edit-image": "Editar imagem", + "image-details": "Detalhes da imagem", + "no-images": "Nenhuma imagem encontrada", + "delete-image": "Excluir imagem", + "delete-image-title": "Tem certeza de que deseja excluir a imagem '{{imageTitle}}'?", + "delete-image-text": "Atenção: após a confirmação, a imagem se tornará irrecuperável.", + "delete-images-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 imagem} other {# imagens} }?", + "delete-images-text": "Atenção: após a confirmação, todas as imagens selecionadas serão removidas e todos os dados relacionados se tornarão irrecuperáveis.", + "list-mode": "Visualização em lista", + "grid-mode": "Visualização em grade", + "image-preview": "Pré-visualização da imagem", + "update-image": "Atualizar imagem", + "export-failed-error": "Não foi possível exportar a imagem: {{error}}", + "image-json-file": "Arquivo JSON da imagem", + "invalid-image-json-file-error": "Não foi possível importar a imagem do JSON: Estrutura de dados JSON da imagem inválida.", + "image-is-in-use": "A imagem está sendo usada por outras entidades", + "images-are-in-use": "As imagens estão sendo usadas por outras entidades", + "image-is-in-use-text": "A imagem '{{title}}' não foi excluída porque é usada pelas seguintes entidades:", + "images-are-in-use-text": "Nem todas as imagens foram excluídas porque são usadas por outras entidades.
Você pode visualizar as entidades referenciadas clicando no botão Referências na linha da imagem correspondente.
Se ainda quiser excluir essas imagens, selecione-as na tabela abaixo e clique no botão Excluir selecionadas.", + "delete-image-in-use-text": "Se ainda quiser excluir a imagem, clique no botão Excluir mesmo assim.", + "system-entities": "Entidades do sistema:", + "entities": "entidades:", + "references": "Referências", + "include-system-images": "Incluir imagens do sistema", + "clear-image": "Limpar imagem", + "no-image": "Sem imagem", + "no-image-selected": "Nenhuma imagem selecionada", + "browse-from-gallery": "Procurar na galeria", + "set-link": "Definir link", + "image-link": "Link da imagem", + "link": "Link", + "copy-image-link": "Copiar link da imagem", + "embed-image": "Incorporar imagem", + "embed-to-html": "Incorporar em HTML", + "embed-to-html-hint": "Este recurso tornará o link disponível para qualquer usuário não autenticado.", + "embed-to-html-text": "Usando o seguinte trecho de código, você pode incorporar uma imagem nos componentes baseados em HTML puro.
Esses componentes incluem widgets de cartão HTML, funções de conteúdo de célula, etc.", + "embed-to-angular-template": "Incorporar em template Angular HTML", + "embed-to-angular-template-text": "Usando o seguinte trecho de código, você pode incorporar uma imagem no template Angular HTML que será usado para componentes.
Esses componentes incluem o widget Markdown, seção HTML no editor de widgets, ações personalizadas, etc." + }, + "image-input": { + "drop-images-or": "Arraste e solte imagens ou", + "drag-and-drop": "Arrastar e soltar", + "or": "ou", + "browse": "Procurar", + "no-images": "Nenhuma imagem selecionada", + "images": "imagens" }, "import": { "no-file": "Nenhum arquivo selecionado", - "drop-file": "Solte um arquivo JSON ou clique para selecionar um arquivo para carregar.", - "drop-file-csv": "Solte um arquivo CSV ou clique para selecionar um arquivo para carregar.", + "drop-file": "Solte um arquivo JSON ou clique para selecionar um arquivo para enviar.", + "drop-json-file-or": "Arraste e solte um arquivo JSON ou", + "drop-file-csv": "Solte um arquivo CSV ou clique para selecionar um arquivo para enviar.", + "drop-file-csv-or": "Arraste e solte um arquivo CSV ou", "column-value": "Valor", "column-title": "Título", - "column-example": "Exemplo de dados de valor", + "column-example": "Dados de valor de exemplo", "column-key": "Chave de atributo/telemetria", - "csv-delimiter": "Delimitador de CSV", - "csv-first-line-header": "A primeira linha contém nomes de coluna", + "credentials": "Credenciais", + "csv-delimiter": "Delimitador CSV", + "csv-first-line-header": "A primeira linha contém nomes de colunas", "csv-update-data": "Atualizar atributos/telemetria", - "import-csv-number-columns-error": "Um arquivo deve conter no mínimo duas colunas", + "details": "Detalhes", + "import-csv-number-columns-error": "O arquivo deve conter pelo menos duas colunas", "import-csv-invalid-format-error": "Formato de arquivo inválido. Linha: '{{line}}'", "column-type": { "name": "Nome", "type": "Tipo", - "label": "Etiqueta", + "label": "Rótulo", "column-type": "Tipo de coluna", "client-attribute": "Atributo do cliente", "shared-attribute": "Atributo compartilhado", "server-attribute": "Atributo do servidor", - "timeseries": "Intervalos de tempo", + "timeseries": "Série temporal", "entity-field": "Campo de entidade", "access-token": "Token de acesso", + "x509": "X.509", + "mqtt": { + "client-id": "Client ID MQTT", + "user-name": "Nome de usuário MQTT", + "password": "Senha MQTT" + }, + "lwm2m": { + "client-endpoint": "Nome do cliente do Endpoint LwM2M", + "security-config-mode": "Modo de configuração de segurança LwM2M", + "client-identity": "Identidade do cliente LwM2M", + "client-key": "Chave do cliente LwM2M", + "client-cert": "Chave pública do cliente LwM2M", + "bootstrap-server-security-mode": "Modo de segurança do servidor bootstrap LwM2M", + "bootstrap-server-secret-key": "Chave secreta do servidor bootstrap LwM2M", + "bootstrap-server-public-key-id": "Chave pública ou ID do servidor bootstrap LwM2M", + "lwm2m-server-security-mode": "Modo de segurança do servidor LwM2M", + "lwm2m-server-secret-key": "Chave secreta do servidor LwM2M", + "lwm2m-server-public-key-id": "Chave pública ou ID do servidor LwM2M" + }, + "snmp": { + "host": "Host SNMP", + "port": "Porta SNMP", + "version": "Versão SNMP (v1, v2c ou v3)", + "community-string": "String de comunidade SNMP" + }, "isgateway": "É Gateway", - "description": "Descrição" + "activity-time-from-gateway-device": "Tempo de atividade do dispositivo gateway", + "description": "Descrição", + "routing-key": "Chave do edge", + "secret": "Segredo do edge" }, "stepper-text": { "select-file": "Selecionar um arquivo", - "configuration": "Importar configuração", - "column-type": "Selecionar tipos de colunas", - "creat-entities": "Criar novas entidades" + "configuration": "Configuração de importação", + "column-type": "Selecionar tipo de colunas", + "creat-entities": "Criando novas entidades" }, "message": { - "create-entities": "{{count}} novas entidades foram criadas corretamente.", - "update-entities": "{{count}} novas entidades foram atualizadas corretamente.", + "create-entities": "{{count}} novas entidades foram criadas com sucesso.", + "update-entities": "{{count}} entidades foram atualizadas com sucesso.", "error-entities": "Ocorreu um erro ao criar {{count}} entidades." } }, + "scada": { + "symbols": "Símbolos SCADA", + "search": "Pesquisar símbolo", + "selected-symbols": "{ count, plural, =1 {1 símbolo} other {# símbolos} } selecionado(s)", + "download-symbol": "Baixar símbolo SCADA", + "export-symbol": "Exportar símbolo SCADA para JSON", + "import-symbol": "Importar símbolo SCADA de JSON", + "upload-symbol": "Carregar símbolo SCADA", + "update-symbol": "Atualizar símbolo SCADA", + "edit-symbol": "Editar símbolo SCADA", + "symbol-details": "Detalhes do símbolo SCADA", + "mode-svg": "SVG", + "mode-xml": "XML", + "no-symbols": "Nenhum símbolo encontrado", + "show-hidden-elements": "Mostrar elementos ocultos", + "hide-hidden-elements": "Ocultar elementos ocultos", + "delete-symbol": "Excluir símbolo SCADA", + "delete-symbol-title": "Tem certeza de que deseja excluir o símbolo SCADA '{{imageTitle}}'?", + "delete-symbol-text": "Atenção: após a confirmação, o símbolo SCADA não poderá ser recuperado.", + "delete-symbols-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 símbolo SCADA} other {# símbolos SCADA} }?", + "delete-symbols-text": "Atenção: após a confirmação, todos os símbolos SCADA selecionados serão removidos e todos os dados relacionados não poderão ser recuperados.", + "include-system-symbols": "Incluir símbolos do sistema", + "symbol-preview": "Visualização do símbolo", + "general": "Geral", + "tags": "Tags", + "properties": "Propriedades", + "title": "Título", + "description": "Descrição", + "search-tags": "Pesquisar tags", + "widget-size": "Tamanho do widget", + "cols": "colunas", + "rows": "linhas", + "state-render-function": "Função de renderização de estado", + "preview": "Visualização", + "preview-widget-action-text": "Ação do widget '{{type}}' invocada com sucesso!", + "no-symbol": "Nenhum símbolo SCADA", + "no-symbol-selected": "Nenhum símbolo SCADA selecionado", + "clear-symbol": "Limpar símbolo SCADA", + "browse-symbol-from-gallery": "Procurar símbolo SCADA na galeria", + "zoom-in": "Aproximar", + "zoom-out": "Afastar", + "create-widget": "Criar widget", + "create-widget-from-symbol": "Criar widget a partir do símbolo SCADA", + "hidden": "oculto", + "tag": { + "tag": "Tag", + "on-click-action": "Ação ao clicar", + "no-tags": "Nenhuma tag configurada", + "delete-tag-text": "Tem certeza de que deseja excluir a tag
{{tag}} do elemento {{elementType}}?", + "update-tag": "Atualizar tag", + "enter-tag": "Inserir tag", + "tag-settings": "Configurações de tag", + "remove-tag": "Remover tag", + "add-tag": "Adicionar tag" + }, + "behavior": { + "behavior": "Comportamento", + "id": "Id", + "name": "Nome", + "type": "Tipo", + "no-behaviors": "Nenhum comportamento configurado", + "add-behavior": "Adicionar comportamento", + "type-action": "Ação", + "type-value": "Valor", + "type-widget-action": "Ação do widget", + "behavior-settings": "Configurações de comportamento", + "remove-behavior": "Remover comportamento", + "hint": "Dica", + "group-title": "Título do grupo", + "value-type": "Tipo de valor", + "default-value": "Valor padrão", + "true-label": "Rótulo verdadeiro", + "false-label": "Rótulo falso", + "state-label": "Rótulo de estado", + "default-payload": "Payload padrão", + "not-unique-behavior-ids-error": "Os IDs de comportamento devem ser únicos!", + "default-settings": "Configurações padrão" + }, + "symbol": { + "symbol": "Símbolo SCADA", + "fluid-presence": "Presença de fluido", + "fluid-presence-hint": "Indica se há fluido presente no tubo.", + "fluid-present": "Fluido presente", + "present": "Presente", + "absent": "Ausente", + "flow-presence": "Presença de fluxo", + "flow-presence-hint": "Indica se o fluido está fluindo no tubo.", + "flow-present": "Fluxo presente", + "flow-direction": "Direção do fluxo", + "flow-direction-hint": "Indica a direção do fluxo de fluido.", + "forward": "Avançar", + "reverse": "Reverso", + "flow-animation-speed": "Velocidade de animação do fluxo", + "flow-animation-speed-hint": "Valor decimal que indica a velocidade de animação do fluxo. 1 - velocidade normal, 0 - sem animação, < 1 - animação mais lenta, > 1 - animação mais rápida.", + "leak": "Vazamento", + "leak-hint": "Indica se há vazamento presente no tubo.", + "leak-present": "Vazamento presente", + "fluid-color": "Cor do fluido", + "pipe-color": "Cor do tubo", + "horizontal-pipe": "Tubo horizontal", + "vertical-pipe": "Tubo vertical", + "horizontal-fluid-color": "Cor do fluido horizontal", + "vertical-fluid-color": "Cor do fluido vertical", + "left-pipe": "Tubo esquerdo", + "right-pipe": "Tubo direito", + "top-pipe": "Tubo superior", + "bottom-pipe": "Tubo inferior", + "left-fluid-color": "Cor do fluido esquerdo", + "right-fluid-color": "Cor do fluido direito", + "top-fluid-color": "Cor do fluido superior", + "bottom-fluid-color": "Cor do fluido inferior", + "display": "Exibição", + "display-format": "Formato de exibição", + "value": "Valor", + "decimals": "Decimais", + "units": "Unidades", + "flow-meter-value-hint": "Valor decimal exibido no display do medidor de fluxo", + "value-hint": "Valor decimal que indica o valor atual", + "running": "Em execução", + "running-hint": "Indica se o componente está em estado de execução.", + "warning-state": "Estado de aviso", + "warning": "Aviso", + "warning-click": "Clique de aviso", + "warning-state-hint": "Indica se o componente está em estado de aviso.", + "critical-state": "Estado crítico", + "critical": "Crítico", + "critical-click": "Clique crítico", + "critical-state-hint": "Indica se o componente está em estado crítico.", + "critical-state-animation": "Animação de estado crítico", + "critical-state-animation-hint": "Se deve habilitar a animação piscante quando o componente está em estado crítico.", + "warning-critical-state-animation": "Animação de estado de aviso/crítico", + "warning-critical-state-animation-hint": "Se deve habilitar a animação piscante quando o componente está em estado de aviso ou crítico.", + "animation": "Animação", + "broken": "Com falha", + "broken-hint": "Indica se o componente está com falha.", + "on-display-click": "Ao clicar no display", + "on-display-click-hint": "Ação invocada quando o usuário clica no display.", + "pipe": "Tubo", + "default-border-color": "Cor padrão da borda", + "active-border-color": "Cor da borda ativa", + "warning-border-color": "Cor da borda de aviso", + "critical-border-color": "Cor da borda crítica", + "background-color": "Cor de fundo", + "rotation-animation-speed": "Velocidade de animação de rotação", + "rotation-animation-speed-hint": "Valor decimal que indica a velocidade de animação de rotação. 1 - velocidade normal, 0 - sem animação, < 1 - animação mais lenta, > 1 - animação mais rápida.", + "on-click": "Ao clicar", + "on-click-hint": "Ação invocada quando o usuário clica no componente.", + "connectors-positions": "Posições dos conectores", + "right-connector": "Conector direito", + "right-top-connector": "Conector superior direito", + "right-bottom-connector": "Conector inferior direito", + "left-connector": "Conector esquerdo", + "left-top-connector": "Conector superior esquerdo", + "left-bottom-connector": "Conector inferior esquerdo", + "top-left-connector": "Conector esquerdo superior", + "top-right-connector": "Conector direito superior", + "top-connector": "Conector superior", + "bottom-connector": "Conector inferior", + "running-color": "Cor em execução", + "stopped-color": "Cor parado", + "stopped": "Parado", + "warning-color": "Cor de aviso", + "critical-color": "Cor crítica", + "opened": "Aberto", + "opened-hint": "Indica se o componente está em estado aberto.", + "open": "Abrir", + "open-hint": "Ação invocada quando o usuário clica para abrir o componente.", + "close": "Fechar", + "close-hint": "Ação invocada quando o usuário clica para fechar o componente.", + "close-state-animation": "Animação de estado fechado", + "close-state-animation-hint": "Se deve habilitar a animação piscante quando o componente está em estado fechado.", + "opened-color": "Cor aberto", + "closed-color": "Cor fechado", + "opened-rotation-angle": "Ângulo de rotação aberto", + "closed-rotation-angle": "Ângulo de rotação fechado", + "tank-capacity": "Capacidade do tanque", + "tank-capacity-hint": "Valor decimal que indica a capacidade total do tanque.", + "current-volume": "Volume atual", + "current-volume-hint": "Valor decimal que indica o volume ocupado atualmente.", + "tank-color": "Cor do tanque", + "value-box": "Caixa de valor", + "value-text": "Texto de valor", + "scale": "Escala", + "transparent-mode": "Modo transparente", + "major-ticks": "Marcações principais", + "intervals": "Intervalos", + "major-ticks-color": "Cor das marcações principais", + "normal": "Normal", + "minor-ticks": "Marcações secundárias", + "minor-ticks-color": "Cor das marcações secundárias", + "temperature": "Temperatura", + "temperature-hint": "Valor decimal que indica a temperatura atual.", + "update-temperature": "Atualizar temperatura", + "update-temperature-hint": "Ação invocada quando o usuário clica para alterar a temperatura atual.", + "run": "Executar", + "run-hint": "Ação invocada quando o usuário clica para executar o componente.", + "stop": "Parar", + "stop-hint": "Ação invocada quando o usuário clica para parar o componente.", + "temperature-step": "Incremento de passo de temperatura", + "heat-pump-color": "Cor da bomba de calor", + "power-button-background": "Fundo do botão de energia", + "value-box-background": "Fundo da caixa de valor", + "value-units": "Unidades de valor", + "enable-units-scale": "Habilitar unidades na escala", + "filtration-mode": "Modo de filtração", + "filtration-mode-hint": "Valor inteiro que indica o modo de filtração atual.", + "filtration-mode-update": "Estado de atualização do modo de filtração", + "filtration-mode-update-hint": "Ação invocada quando o usuário clica para alterar o modo de filtração atual.", + "filter-mode": "Filtro", + "waste-mode": "Descarte", + "backwash-mode": "Retrolavagem", + "recirculate-mode": "Recircular", + "rinse-mode": "Enxaguar", + "closed-mode": "Fechado", + "sand-filter-color": "Cor do filtro de areia", + "mode-box-background": "Fundo da caixa de modo", + "border-color": "Cor da borda", + "label-color": "Cor do rótulo", + "water-leak-hint": "Indica se há vazamento.", + "default-color": "Cor padrão", + "leak-color": "Cor de vazamento", + "full-value": "Valor cheio", + "full-value-hint": "Valor decimal que indica o valor cheio.", + "label": "Rótulo", + "icon": "Ícone", + "button-color": "Cor do botão", + "on-label": "Texto do rótulo 'Ligado'", + "off-label": "Texto do rótulo 'Desligado'", + "arrow-presence": "Presença de seta", + "arrow-presence-hint": "Indica se há seta presente no conector.", + "arrow-present": "Seta presente", + "arrow-direction": "Direção do fluxo", + "arrow-direction-hint": "Indica a direção do fluxo.", + "flow-animation": "Presença de fluxo", + "flow-animation-hint": "Indica se o fluido está fluindo no conector.", + "flow": "Fluxo", + "flow-line": "Linha", + "flow-line-style": "Estilo de linha", + "flow-style-hint": "Defina os valores de Traço e Espaço de modo que a soma seja divisível por 100 sem resto para sincronização perfeita da animação.", + "flow-dash-cap": "Cap do traço", + "dash-cap-butt": "Plano", + "dash-cap-round": "Arredondado", + "dash-cap-square": "Quadrado", + "dash": "Traço", + "gap": "Espaço", + "main-line": "Linha principal", + "line": "Linha", + "line-color": "Cor da linha", + "arrow-color": "Cor da seta", + "target-value": "Valor alvo", + "target-value-hint": "Indica o ponto alvo na escala.", + "min-max-value": "Valor mínimo e máximo", + "min-value": "Mín", + "max-value": "Máx", + "progress-bar": "Barra de progresso", + "progress-arrow": "Seta de progresso", + "warning-scale-color": "Cor da escala de aviso", + "critical-scale-color": "Cor da escala crítica", + "scale-color": "Cor da escala", + "target": "Alvo", + "high-warning-state": "Estado de aviso alto", + "show-high-warning-scale": "Mostrar escala de aviso alto", + "high-warning-scale": "Escala de aviso alto", + "high-warning-state-hint": "Valor decimal que indica um intervalo de aviso alto até um valor crítico alto ou máximo.", + "low-warning-state": "Estado de aviso baixo", + "show-low-warning-scale": "Mostrar escala de aviso baixo", + "low-warning-scale": "Escala de aviso baixo", + "low-warning-state-hint": "Valor decimal que indica um intervalo de aviso baixo até um valor crítico baixo ou mínimo.", + "high-critical-state": "Estado crítico alto", + "show-high-critical-scale": "Mostrar escala crítica alta", + "high-critical-scale": "Escala crítica alta", + "high-critical-state-hint": "Valor decimal que indica um intervalo crítico alto até a escala de valor máximo.", + "low-critical-state": "Estado crítico baixo", + "show-low-critical-scale": "Mostrar estado crítico baixo", + "low-critical-scale": "Estado crítico baixo", + "low-critical-state-hint": "Valor decimal que indica um intervalo crítico baixo até a escala de valor mínimo.", + "filter-color": "Cor do filtro", + "colors": "Cores", + "indicator-colors": "Cores do indicador", + "enabled": "Habilitado", + "disabled": "Desabilitado", + "on": "LIGADO", + "off": "DESLIGADO", + "on-off-state": "Estado ligado/desligado", + "on-off-state-hint": "Indica se o componente está no estado Ligado ou Desligado.", + "on-update-state": "Estado de atualização para ligado", + "on-update-state-hint": "Ação invocada quando o usuário clica para atualizar o estado para Ligado.", + "off-update-state": "Estado de atualização para desligado", + "off-update-state-hint": "Ação invocada quando o usuário clica para atualizar o estado para Desligado.", + "voltage": "Tensão", + "input-voltage": "Tensão de entrada", + "input-voltage-hint": "Valor decimal que indica o valor da tensão de entrada.", + "output-voltage": "Tensão de saída", + "output-voltage-hint": "Valor decimal que indica o valor da tensão de saída.", + "first-phase-voltage": "Tensão da primeira fase", + "second-phase-voltage": "Tensão da segunda fase", + "third-phase-voltage": "Tensão da terceira fase", + "phase-voltage-hint": "Valor decimal que indica o valor de tensão para a fase atual", + "voltage-hint": "Valor decimal que indica a tensão atual", + "current-voltage-color": "Cor da tensão atual", + "phase-indicator-color": "Cor do indicador de fase", + "measured": "Medido", + "measured-hint": "Valor decimal que indica o consumo de energia em quilowatt-hora", + "day-rate": "Tarifa diurna", + "night-rate": "Tarifa noturna", + "off-peak-rate": "Tarifa fora de pico", + "peak-rate": "Tarifa de pico", + "export-rate": "Tarifa de exportação", + "operating-mode": "Modo de operação", + "bypass-mode": "Bypass", + "operating-mode-hint": "Valor inteiro que indica o modo de operação atual (0 - DESLIGADO, 1 - LIGADO, 2 - BYPASS)", + "connected": "Conectado", + "connected-hint": "Indica se o componente está em estado conectado.", + "disconnected": "Desconectado", + "indicator": "Indicador", + "operation-mode": "Modo de operação", + "operation-mode-hint": "Indica se o inversor está no modo Rede ou Inversor.", + "operation-mode-indicators-color": "Cor dos indicadores de modo de operação", + "mains-on-mode": "Rede ligada", + "inverter-on-mode": "Inversor ligado", + "charging-mode": "Modo de carregamento", + "charging-mode-hint": "Valor inteiro que indica o modo de carregamento atual (1 - Bulk, 2 - Absorção, 3 - Float)", + "charging-mode-indicators-color": "Cor dos indicadores de modo de carregamento", + "inverter-faults": "Falhas", + "inverter-fault-indicators-color": "Cor dos indicadores de falha", + "overload-fault": "Sobrecarga", + "overload-fault-hint": "Indica se o inversor está em condição de sobrecarga.", + "low-battery-fault": "Bateria fraca", + "low-battery-fault-hint": "Indica se a bateria está excessivamente descarregada.", + "temperature-fault": "Temperatura", + "temperature-fault-hint": "Indica se há alta temperatura no inversor.", + "triangle": "Triângulo", + "socket": "Tomada", + "left-button": "Botão esquerdo", + "right-button": "Botão direito", + "alarm-colors": "Cores de alarme", + "hook-color": "Cor do gancho" + } + }, "item": { "selected": "Selecionado" }, "js-func": { "no-return-error": "A função deve retornar um valor!", "return-type-mismatch": "A função deve retornar um valor do tipo '{{type}}'!", - "tidy": "Tidy", - "mini": "Mini" + "tidy": "Organizar", + "mini": "Mini", + "modules": "Módulos", + "remove-module": "Remover módulo", + "no-modules": "Nenhum módulo configurado", + "add-module": "Adicionar módulo", + "module-alias": "Alias", + "invalid-module-alias-name": "Nome de alias inválido", + "module-resource": "Recurso do módulo JS", + "not-unique-module-aliases-error": "Os aliases de módulo devem ser únicos!", + "show-module-info": "Mostrar informações do módulo", + "show-module-source-code": "Mostrar código-fonte do módulo", + "module-members": "Membros do módulo", + "module-no-members": "O módulo não possui membros exportados", + "module-load-error": "Erro ao carregar módulo", + "source-code": "Código-fonte", + "source-code-load-error": "Erro ao carregar código-fonte", + "no-js-module-text": "Nenhum módulo JS encontrado", + "no-js-module-matching": "Nenhum módulo JS correspondente a '{{module}}' foi encontrado." }, "key-val": { "key": "Chave", "value": "Valor", "remove-entry": "Remover entrada", "add-entry": "Adicionar entrada", - "no-data": "Sem entradas" + "no-data": "Nenhuma entrada" }, "layout": { "layout": "Layout", + "layouts": "Layouts", "manage": "Gerenciar layouts", - "settings": "Configuração de layout", + "settings": "Configurações de layout", "color": "Cor", "main": "Principal", "right": "Direita", - "select": "Selecionar layout alvo" + "left": "Esquerda", + "select": "Selecionar layout de destino", + "percentage-width": "Largura percentual (%)", + "fixed-width": "Largura fixa (px)", + "left-width": "Coluna esquerda (%)", + "right-width": "Coluna direita (%)", + "pick-fixed-side": "Lado fixo: ", + "layout-fixed-width": "Largura fixa (px)", + "value-min-error": "O valor deve ser maior que {{min}}{{unit}}", + "value-max-error": "O valor deve ser menor que {{max}}{{unit}}", + "layout-fixed-width-required": "A largura fixa é obrigatória", + "right-width-percentage-required": "O percentual direito é obrigatório", + "left-width-percentage-required": "O percentual esquerdo é obrigatório", + "divider": "Divisor", + "right-side": "Layout do lado direito", + "left-side": "Layout do lado esquerdo", + "add-new-breakpoint": "Adicionar novo breakpoint", + "breakpoint": "Breakpoint", + "breakpoints": "Breakpoints", + "copy-from": "Copiar de", + "size": "Tamanho", + "delete-breakpoint-title": "Tem certeza de que deseja excluir o breakpoint '{{name}}'?", + "delete-breakpoint-text": "Atenção: após a confirmação, o breakpoint não poderá ser recuperado e as configurações serão revertidas para o breakpoint padrão." }, "legend": { - "direction": "Direção da legenda", - "position": "Posição da legenda", + "direction": "Direção", + "position": "Posição", + "show-values": "Mostrar valores", + "min-option": "Mín", + "max-option": "Máx", + "average-option": "Média", + "total-option": "Total", + "latest-option": "Mais recente", + "sort-legend": "Ordenar chaves de dados na legenda", "show-max": "Mostrar valor máximo", "show-min": "Mostrar valor mínimo", "show-avg": "Mostrar valor médio", "show-total": "Mostrar valor total", - "settings": "Configuração de legenda", - "min": "mín.", - "max": "máx.", - "avg": "méd.", + "show-latest": "Mostrar valor mais recente", + "settings": "Configurações de legenda", + "min": "mín", + "max": "máx", + "avg": "méd", "total": "total", + "latest": "mais recente", + "Min": "Mín", + "Max": "Máx", + "Avg": "Méd", + "Total": "Total", + "Latest": "Mais recente", "comparison-time-ago": { + "previousInterval": "(intervalo anterior)", + "customInterval": "(intervalo personalizado)", "days": "(dia atrás)", "weeks": "(semana atrás)", "months": "(mês atrás)", "years": "(ano atrás)" - } + }, + "column-title": "Título da coluna", + "label": "Rótulo", + "value": "Valor" }, "login": { "login": "Login", "request-password-reset": "Solicitar redefinição de senha", "reset-password": "Redefinir senha", "create-password": "Criar senha", - "passwords-mismatch-error": "As senhas inseridas devem ser idênticas!", - "password-again": "Repetir senha", - "username": "Nome de usuário (e-mail)", - "remember-me": "Lembrar-me", - "forgot-password": "Esqueceu a senha?", - "password-reset": "Redefinir senha", - "expired-password-reset-message": "As credenciais de expiraram! Crie uma nova senha.", + "two-factor-authentication": "Autenticação de dois fatores", + "passwords-mismatch-error": "As senhas inseridas devem ser iguais!", + "password-again": "Confirmar senha", + "sign-in": "Entrar", + "username": "Nome de usuário (email)", + "remember-me": "Lembrar de mim", + "forgot-password": "Esqueceu sua senha?", + "password-reset": "Redefinição de senha", + "expired-password-reset-message": "Sua senha expirou! \nInsira uma nova senha.", "new-password": "Nova senha", - "new-password-again": "Repetir nova senha", - "password-link-sent-message": "O link de redefinição de senha foi enviado corretamente!", - "email": "E-mail", - "login-with": "Login com {{name}}", + "new-password-again": "Confirmar nova senha", + "password-link-sent-message": "Link de redefinição foi enviado", + "email": "Email", + "invalid-email-format": "Formato de email inválido.", + "sign-in-with": "Entrar com {{name}}", + "sign-in-to-your-account": "Entrar na sua conta", "or": "ou", - "error": "Erro de login" + "error": "Erro de login", + "verify-your-identity": "Verificar sua identidade", + "select-way-to-verify": "Selecionar uma forma de verificação", + "resend-code": "Reenviar código", + "resend-code-wait": "Reenviar código em { time, plural, =1 {1 segundo} other {# segundos} }", + "try-another-way": "Tentar outra forma", + "totp-auth-description": "Insira o código de segurança do seu aplicativo autenticador.", + "totp-auth-placeholder": "Código", + "sms-auth-description": "Um código de segurança foi enviado para o seu telefone em {{contact}}.", + "sms-auth-placeholder": "Código SMS", + "email-auth-description": "Um código de segurança foi enviado para o seu endereço de email em {{contact}}.", + "email-auth-placeholder": "Código de email", + "backup-code-auth-description": "Insira um dos seus códigos de backup.", + "backup-code-auth-placeholder": "Código de backup", + "activation-link-expired": "O link de ativação expirou", + "activation-link-expired-message": "O link para ativar seu perfil expirou. Você pode retornar à página de login para receber um novo email.", + "reset-password-link-expired": "O link de redefinição de senha expirou", + "reset-password-link-expired-message": "O link para redefinir sua senha expirou. Você pode retornar à página de login para receber um novo email.", + "two-fa": "Autenticação de dois fatores", + "two-fa-required": "A autenticação de dois fatores é obrigatória", + "set-up-verification-method": "Configurar um método de verificação para continuar", + "set-up-verification-method-login": "Configurar um método de verificação ou fazer login", + "enable-authenticator-app": "Habilitar aplicativo autenticador", + "enable-authenticator-app-description": "Insira o código de segurança do seu aplicativo autenticador", + "enable-authenticator-sms": "Habilitar autenticador SMS", + "enable-authenticator-sms-description": "Insira o código de 6 dígitos que acabamos de enviar para ", + "enable-authenticator-email": "Habilitar autenticador de email", + "enable-authenticator-email-description": "Um código de segurança foi enviado para o seu endereço de email em ", + "enter-key-manually": "ou insira esta chave de 32 dígitos manualmente:", + "continue": "Continuar", + "confirm": "Confirmar", + "authenticator-app-success": "Aplicativo autenticador habilitado com sucesso", + "authenticator-app-success-description": "Na próxima vez que fizer login, será necessário fornecer um código de autenticação de dois fatores", + "authenticator-sms-success": "Autenticador SMS habilitado com sucesso", + "authenticator-sms-success-description": "Na próxima vez que fizer login, será solicitado que insira o código de segurança que será enviado para o número de telefone", + "authenticator-email-success": "Autenticador de email habilitado com sucesso", + "authenticator-email-success-description": "Na próxima vez que fizer login, será solicitado que insira o código de segurança que será enviado para o seu endereço de email", + "authenticator-backup-code-success": "Código de backup habilitado com sucesso", + "authenticator-backup-code-success-description": "Na próxima vez que fizer login, será solicitado que insira o código de segurança ou use um dos códigos de backup.", + "add-verification-method": "Adicionar método de verificação", + "get-backup-code": "Obter código de backup", + "copy-key": "Copiar chave", + "send-code": "Enviar código", + "email-label": "Email", + "email-description": "Insira um email para usar como autenticador.", + "sms-description": "Insira um número de telefone para usar como autenticador.", + "backup-code-description": "Imprima os códigos para tê-los à mão quando precisar usá-los para entrar na sua conta. Cada código de backup pode ser usado uma vez.", + "backup-code-warn": "Após sair desta página, esses códigos não poderão ser exibidos novamente. Armazene-os com segurança usando as opções abaixo.", + "download-txt": "Baixar (txt)", + "print": "Imprimir", + "verification-code": "Código de 6 dígitos", + "verification-code-invalid": "Formato de código de verificação inválido", + "verification-code-incorrect": "O código de verificação está incorreto", + "verification-code-many-request": "Muitas solicitações para verificar o código de verificação", + "scan-qr-code": "Escaneie este código QR com seu aplicativo de verificação", + "phone-input": { + "phone-input-label": "Número de telefone", + "phone-input-required": "O número de telefone é obrigatório", + "phone-input-validation": "O número de telefone é inválido ou não é possível", + "phone-input-pattern": "Número de telefone inválido. Deve estar no formato E.164, ex. {{phoneNumber}}", + "phone-input-hint": "Número de telefone no formato E.164, ex. {{phoneNumber}}" + } + }, + "mobile": { + "add-application": "Adicionar aplicação", + "app-id": "ID de associação do site do aplicativo", + "app-id-required": "O ID de associação do site do aplicativo é obrigatório", + "app-id-pattern": "Formato inválido do ID de associação do site do aplicativo", + "app-store-link": "Link da App Store", + "app-store-link-required": "O link da App Store é obrigatório", + "application-details": "Detalhes da aplicação", + "application-package": "Pacote da aplicação", + "application-secret": "Application Secret", + "application-secret-required": "O Application Secret é obrigatório", + "application": "Aplicação", + "applications": "Aplicações", + "copy-app-id": "Copiar ID do aplicativo", + "copy-app-store-link": "Copiar link da App Store", + "copy-application-package": "Copiar pacote da aplicação", + "copy-application-secret": "Copiar Application Secret", + "copy-google-play-link": "Copiar link do Google Play", + "copy-sha256-certificate-fingerprints": "Copiar impressões digitais do certificado SHA256", + "delete-application": "Excluir aplicação", + "delete-application-button-text": "Entendo as consequências, excluir aplicação", + "delete-application-text": "Esta ação não pode ser desfeita. Isso excluirá permanentemente sua aplicação.
Se não quiser excluí-la permanentemente, você pode suspender a aplicação temporariamente.
Para excluir a aplicação mesmo assim, digite \"{{phrase}}\" para confirmar.", + "delete-application-title-short": "Tem certeza de que deseja excluir a aplicação '{{name}}'?", + "delete-application-text-short": "Tenha cuidado, após a confirmação, as aplicações e todos os dados relacionados serão irrecuperáveis.", + "delete-application-phrase": "excluir aplicação", + "delete-applications-bundle-text": "Tenha cuidado, após a confirmação, o conjunto mobile e todos os dados relacionados serão irrecuperáveis.", + "delete-applications-bundle-title": "Tem certeza de que deseja excluir o conjunto mobile '{{bundleName}}'?", + "generate-application-secret": "Gerar Application Secret", + "google-play-link": "Link do Google Play", + "google-play-link-required": "O link do Google Play é obrigatório", + "latest-version": "Versão mais recente", + "min-version": "Versão mínima", + "invalid-version-pattern": "Formato de versão inválido. Use o formato: major.minor.patch (ex.: 1.0.0).", + "mobile-center": "Central móvel", + "mobile-package": "Pacote da aplicação", + "mobile-package-max-length": "O pacote da aplicação deve ter menos de 256 caracteres", + "mobile-package-required": "O pacote da aplicação é obrigatório.", + "mobile-package-pattern": "Formato inválido do pacote da aplicação", + "mobile-package-title": "Título da aplicação", + "mobile-package-title-max-length": "O título da aplicação deve ter menos de 256 caracteres", + "no-application": "Nenhuma aplicação encontrada", + "no-bundles": "Nenhum conjunto encontrado", + "platform-type": "Tipo de plataforma", + "search-application": "Pesquisar aplicações", + "search-bundles": "Pesquisar conjuntos", + "set": "Definir", + "sha256-certificate-fingerprints": "Impressões digitais do certificado SHA256", + "sha256-certificate-fingerprints-required": "As impressões digitais do certificado SHA256 são obrigatórias", + "sha256-certificate-fingerprints-pattern": "Formato inválido da impressão digital do certificado SHA256", + "show-hidden-pages": "Mostrar páginas ocultas", + "status": "Status", + "status-type": { + "deprecated": "Descontinuado", + "draft": "Rascunho", + "published": "Publicado", + "suspended": "Suspenso" + }, + "store-information": "Informações da loja", + "version-information": "Informações de versão", + "min-version-release-notes": "Notas de versão da versão mínima", + "latest-version-release-notes": "Notas de versão da versão mais recente", + "bundle": "Conjunto", + "bundles": "Conjuntos", + "add-bundle": "Adicionar conjunto", + "title": "Título", + "title-required": "O título é obrigatório", + "title-cannot-contain-only-spaces": "O título não pode conter apenas espaços", + "title-max-length": "O título deve ter menos de 256 caracteres", + "oauth-clients": "Clientes OAuth 2.0", + "android-app": "Aplicativo Android", + "android-application": "Aplicação Android", + "ios-app": "Aplicativo iOS", + "ios-application": "Aplicação iOS", + "invalid-store-link": "Link da loja inválido", + "enable-oauth": "Habilitar OAuth 2.0", + "enable-self-registration": "Habilitar autorregistro", + "edit-bundle": "Editar conjunto", + "description": "Descrição", + "basic-settings": "Configurações básicas", + "no-application-matching": "Nenhuma aplicação correspondente a '{{entity}}' foi encontrada.", + "no-bundle-matching": "Nenhum conjunto correspondente a '{{entity}}' foi encontrado.", + "application-required": "A aplicação é obrigatória.", + "bundle-required": "O conjunto é obrigatório.", + "no-application-text": "Nenhuma aplicação encontrada", + "no-bundle-text": "Nenhum conjunto encontrado", + "layout": "Layout", + "pages": "Páginas", + "hide-all-pages": "Ocultar todas as páginas", + "reset-to-default-pages": "Redefinir para páginas padrão", + "add-specific-page": "Adicionar página específica", + "visible": "Visível", + "hidden": "Oculto", + "reset-to-page-default": "Redefinir página para o padrão", + "mobile-599": "Mobile (máx. 599px)", + "tablet-959": "Tablet (máx. 959px)", + "max-element-number": "Número máximo de elementos", + "page-name": "Nome da página", + "page-name-required": "O nome da página é obrigatório.", + "page-name-cannot-contain-only-spaces": "O nome da página não pode conter apenas espaços.", + "page-name-max-length": "O nome da página deve ter menos de 256 caracteres", + "page-type": "Tipo de página", + "pages-types": { + "dashboard": "Dashboard", + "web-view": "Visualização web", + "custom": "Personalizado" + }, + "url": "URL", + "invalid-url-format": "Formato de URL inválido", + "path": "Caminho", + "invalid-path-format": "Formato de caminho inválido", + "custom-page": "Página personalizada", + "edit-page": "Editar página", + "edit-custom-page": "Editar página personalizada", + "delete-page": "Excluir página", + "qr-code-widget": "Widget de código QR", + "type-here": "Digite aqui", + "configuration-dialog": "Diálogo de configuração", + "configuration-app": "Aplicação de configuração", + "configuration-step": { + "prepare-environment-title": "Preparar ambiente de desenvolvimento", + "prepare-environment-text": "O Flutter ThingsBoard Mobile Application requer o Flutter SDK. Siga as instruções para configurar o Flutter SDK.", + "get-source-code-title": "Obter código-fonte do aplicativo", + "get-source-code-text": "Você pode obter o código-fonte do Flutter ThingsBoard Mobile Application clonando-o do repositório GitHub:", + "configure-app-settings-title": "Configurar as definições do aplicativo", + "configure-app-settings-text": "Baixe o arquivo de configuração e coloque-o no diretório raiz do projeto clonado na etapa anterior.", + "download-file": "Baixar arquivo", + "run-app-title": "Executar o aplicativo", + "run-app-text": "Execute o aplicativo conforme descrito na sua IDE.\nSe estiver usando o terminal, execute o aplicativo com o seguinte comando:", + "more-information": "Informações detalhadas podem ser encontradas na nossa documentação de Primeiros Passos.", + "getting-started": "Primeiros Passos" + } + }, + "notification": { + "action-button": "Botão de ação", + "action-type": "Tipo de ação", + "active": "Ativo", + "add-notification-recipients-group": "Adicionar grupo de destinatários de notificação", + "add-notification-template": "Adicionar modelo de notificação", + "add-recipient": "Adicionar destinatário", + "add-recipients": "Adicionar destinatários", + "add-rule": "Adicionar regra", + "add-stage": "Adicionar etapa", + "add-template": "Adicionar modelo", + "after": "Após", + "alarm-assignment-trigger-settings": "Configurações do gatilho de atribuição de alarme", + "alarm-comment-trigger-settings": "Configurações do gatilho de comentário de alarme", + "alarm-trigger-settings": "Configurações do gatilho de alarme", + "all": "Todos", + "api-feature-hint": "Se o campo estiver vazio, o gatilho será aplicado a todos os recursos de API", + "api-usage-trigger-settings": "Configurações do gatilho de uso de API", + "new-platform-version-trigger-settings": "Configurações do gatilho de nova versão da plataforma", + "rate-limits-trigger-settings": "Configurações do gatilho de limites de taxa excedidos", + "task-processing-failure-trigger-settings": "Configurações do gatilho de falha no processamento de tarefas", + "resources-shortage-trigger-settings": "Configurações do gatilho de escassez de recursos", + "at-least-one-should-be-selected": "Pelo menos um deve ser selecionado", + "basic-settings": "Configurações básicas", + "button-text": "Texto do botão", + "button-text-required": "O texto do botão é obrigatório", + "button-text-max-length": "O texto do botão deve ter no máximo {{ length }} caracteres", + "compose": "Redigir", + "conversation": "Conversa", + "conversation-required": "A conversa é obrigatória", + "copy-notification-template": "Copiar modelo de notificação", + "copy-rule": "Copiar regra", + "copy-template": "Copiar modelo", + "create-new": "Criar novo", + "created": "Criado", + "customize-messages": "Personalizar mensagens", + "cpu-threshold": "Limite de CPU", + "delete-notification-text": "Tenha cuidado, após a confirmação a notificação será irrecuperável.", + "delete-notification-title": "Tem certeza de que deseja excluir a notificação?", + "delete-notifications-text": "Tenha cuidado, após a confirmação as notificações serão irrecuperáveis.", + "delete-notifications-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 notificação} other {# notificações} }?", + "delete-recipient-text": "Tenha cuidado, após a confirmação o destinatário será irrecuperável.", + "delete-recipient-title": "Tem certeza de que deseja excluir o destinatário '{{recipientName}}'?", + "delete-recipients-text": "Tenha cuidado, após a confirmação os destinatários serão irrecuperáveis.", + "delete-recipients-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 destinatário} other {# destinatários} }?", + "delete-request-text": "Tenha cuidado, após a confirmação a solicitação será irrecuperável.", + "delete-request-title": "Tem certeza de que deseja excluir a solicitação?", + "delete-requests-text": "Tenha cuidado, após a confirmação as solicitações serão irrecuperáveis.", + "delete-requests-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 solicitação} other {# solicitações} }?", + "delete-rule-text": "Tenha cuidado, após a confirmação a regra será irrecuperável.", + "delete-rule-title": "Tem certeza de que deseja excluir a regra '{{ruleName}}'?", + "delete-rules-text": "Tenha cuidado, após a confirmação as regras serão irrecuperáveis.", + "delete-rules-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 regra} other {# regras} }?", + "delete-template-text": "Tenha cuidado, após a confirmação o modelo será irrecuperável.", + "delete-template-title": "Tem certeza de que deseja excluir o modelo '{{templateName}}'?", + "delete-templates-text": "Tenha cuidado, após a confirmação os modelos serão irrecuperáveis.", + "delete-templates-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 modelo} other {# modelos} }?", + "deleted": "Excluído", + "delivery-method": { + "delivery-method": "Método de entrega", + "email": "Email", + "email-preview": "Visualização de notificação por Email", + "slack": "Slack", + "slack-preview": "Visualização de notificação do Slack", + "microsoft-teams": "Microsoft Teams", + "microsoft-teams-preview": "Visualização de notificação do Microsoft Teams", + "sms": "SMS", + "sms-preview": "Visualização de notificação por SMS", + "web": "Web", + "web-preview": "Visualização de notificação web", + "mobile-app": "Aplicativo mobile", + "mobile-app-preview": "Visualização de notificação do aplicativo mobile" + }, + "delivery-method-not-configure-click": "O método de entrega não está configurado. Clique para configurar.", + "delivery-method-not-configure-contact": "O método de entrega não está configurado. Entre em contato com o administrador do sistema.", + "delivery-methods": "Métodos de entrega", + "description": "Descrição", + "device-activity-trigger-settings": "Configurações do gatilho de atividade do dispositivo", + "device-list-rule-hint": "Se o campo estiver vazio, o gatilho será aplicado a todos os dispositivos", + "device-profiles-list-rule-hint": "Se o campo estiver vazio, o gatilho será aplicado a todos os perfis de dispositivo", + "disabled": "Desabilitado", + "edge-trigger-settings": "Configurações do gatilho do Edge", + "edge-list-rule-hint": "Se o campo estiver vazio, o gatilho será aplicado a todas as instâncias do Edge", + "edit-notification-recipients-group": "Editar grupo de destinatários de notificação", + "edit-notification-template": "Editar modelo de notificação", + "edit-rule": "Editar regra", + "edit-template": "Editar modelo", + "enabled": "Habilitado", + "entities-limit-trigger-settings": "Configurações do gatilho de limite de entidades", + "entity-action-trigger-settings": "Configurações do gatilho de ação de entidade", + "entity-type": "Tipo de entidade", + "escalation-chain": "Cadeia de escalonamento", + "failed-send": "Falhas de envio", + "fails": "{ count, plural, =1 {1 falha} other {# falhas} }", + "filter": "Filtro", + "first-recipient": "Primeiro destinatário", + "inactive": "Inativo", + "inbox": "Caixa de entrada", + "notification-inbox": "Notificações / Caixa de entrada", + "input-field-support-templatization": "O campo de entrada suporta templatização.", + "input-fields-support-templatization": "Os campos de entrada suportam templatização.", + "link": "Link", + "link-required": "O link é obrigatório", + "link-max-length": "O link deve ter no máximo {{ length }} caracteres", + "link-type": { + "dashboard": "Abrir Dashboard", + "link": "Abrir link URL" + }, + "loading-notifications": "Carregando notificações...", + "management": "Gerenciamento de notificações", + "mark-all-as-read": "Marcar todas como lidas", + "mark-as-read": "Marcar como lida", + "message": "Mensagem", + "message-required": "A mensagem é obrigatória", + "message-max-length": "A mensagem deve ter no máximo {{ length }} caracteres", + "name": "Nome", + "name-required": "O nome é obrigatório", + "new-notification": "Nova notificação", + "no-inbox-notification": "Nenhuma notificação encontrada", + "no-notification-request": "Nenhuma solicitação de notificação", + "no-notification-templates": "Nenhum modelo de notificação encontrado", + "no-notifications-yet": "Nenhuma notificação ainda", + "no-recipients-notification": "Nenhuma notificação de destinatários", + "no-recipients-matching": "Nenhum destinatário correspondente a '{{entity}}' foi encontrado.", + "no-recipients-text": "Nenhum destinatário encontrado", + "no-rule": "Nenhuma regra configurada", + "no-rules-notification": "Nenhuma notificação de regras", + "no-severity-found": "Nenhuma severidade encontrada", + "no-severity-matching": "'{{severity}}' não encontrado.", + "no-template-matching": "Nenhum recurso correspondente a '{{template}}' foi encontrado.", + "create-new-template": "Criar um novo!", + "not-found-slack-recipient": "Destinatário Slack não encontrado", + "notification": "Notificação", + "notification-center": "Central de notificações", + "notification-tap-action": "Ação ao tocar na notificação", + "notification-tap-action-hint": "Se não estiver habilitado, o Dashboard de alarme padrão será usado", + "notify": "notificar", + "notify-again": "Notificar novamente", + "notify-alarm-action": { + "acknowledged": "Alarme reconhecido", + "assigned": "Alarme atribuído", + "cleared": "Alarme resolvido", + "created": "Alarme criado", + "severity-changed": "Severidade do alarme alterada", + "unassigned": "Alarme não atribuído" + }, + "notify-on": "Notificar em", + "notify-on-comment-update": "Notificar na atualização de comentário", + "notify-on-required": "Notificar em é obrigatório", + "notify-on-unassign": "Notificar ao cancelar atribuição", + "notify-only-user-comments": "Notificar apenas comentários de usuários", + "only-rule-chain-lifecycle-failures": "Apenas falhas no ciclo de vida da cadeia de regras", + "only-rule-node-lifecycle-failures": "Apenas falhas no ciclo de vida do nó de regra", + "platform-users": "Usuários da plataforma", + "ram-threshold": "Limite de RAM", + "rate-limits": "Limites de taxa", + "rate-limits-hint": "Se o campo estiver vazio, o gatilho será aplicado a todos os limites de taxa", + "recipient": "Destinatário", + "recipient-group": "Grupo de destinatários", + "recipient-type": { + "affected-tenant-administrators": "Administradores do tenant afetado", + "affected-user": "Usuário afetado", + "all-users": "Todos os usuários", + "customer-users": "Usuários do cliente", + "system-administrators": "Administradores do sistema", + "tenant-administrators": "Administradores do tenant", + "user-filters": "Filtro de usuário", + "user-list": "Lista de usuários", + "users-entity-owner": "Usuários do proprietário da entidade" + }, + "recipients": "Destinatários", + "notification-recipient": "Destinatário da notificação", + "notification-recipient-required": "O destinatário da notificação é obrigatório.", + "notification-recipients": "Notificações / Destinatários", + "recipients-count": "{ count, plural, =1 {1 destinatário} other {# destinatários} }", + "recipients-required": "Os destinatários são obrigatórios", + "refresh-allow-delivery-method": "Atualizar método de entrega permitido", + "request-search": "Pesquisar solicitações", + "request-status": { + "processing": "Processando", + "scheduled": "Agendado", + "sent": "Enviado" + }, + "review": "Revisar", + "rule": "Regra", + "rule-chain-list-rule-hint": "Se o campo estiver vazio, o gatilho será aplicado a todas as cadeias de regras", + "rule-engine-events-trigger-settings": "Configurações do gatilho de eventos do motor de regras", + "rule-engine-filter": "Filtro do motor de regras", + "rule-name": "Nome da regra", + "rule-name-required": "O nome é obrigatório", + "rule-disable": "Desabilitar regra de notificação", + "rule-enable": "Habilitar regra de notificação", + "rule-node-filter": "Filtro de nó de regra", + "rules": "Regras", + "notification-rules": "Notificações / Regras", + "scheduler-later": "Agendar para mais tarde", + "search-notification": "Pesquisar notificações", + "search-recipients": "Pesquisar destinatários", + "search-rules": "Pesquisar regras", + "search-templates": "Pesquisar modelos", + "see-documentation": "Ver documentação", + "selected-notifications": "{ count, plural, =1 {1 notificação} other {# notificações} } selecionada(s)", + "selected-recipients": "{ count, plural, =1 {1 destinatário} other {# destinatários} } selecionado(s)", + "selected-requests": "{ count, plural, =1 {1 solicitação} other {# solicitações} } selecionada(s)", + "selected-rules": "{ count, plural, =1 {1 regra} other {# regras} } selecionada(s)", + "selected-template": "{ count, plural, =1 {1 modelo} other {# modelos} } selecionado(s)", + "send-notification": "Enviar notificação", + "sent": "Enviado", + "setup": "Configurar", + "notification-sent": "Notificações / Enviadas", + "set-entity-from-notification": "Definir entidade da notificação para o estado do Dashboard", + "slack-chanel-type": "Tipo de canal do Slack", + "slack-chanel-types": { + "direct": "Mensagem direta", + "private-channel": "Canal privado", + "public-channel": "Canal público" + }, + "start-from-scratch": "Começar do zero", + "status": "Status", + "stop-escalation-alarm-status-become": "Parar o escalonamento quando o status do alarme se tornar:", + "storage-threshold": "Limite de armazenamento", + "subject": "Assunto", + "subject-required": "O assunto é obrigatório", + "subject-max-length": "O assunto deve ter no máximo {{ length }} caracteres", + "template": "Modelo", + "template-name": "Nome do modelo", + "template-required": "O modelo é obrigatório", + "template-type": { + "alarm": "Alarme", + "alarm-assignment": "Atribuição de alarme", + "alarm-comment": "Comentário de alarme", + "api-usage-limit": "Limite de uso de API", + "device-activity": "Atividade do dispositivo", + "entities-limit": "Limite de entidades", + "entities-limit-increase-request": "Solicitação de aumento do limite de entidades", + "entity-action": "Ação de entidade", + "general": "Geral", + "rule-engine-lifecycle-event": "Evento de ciclo de vida do motor de regras", + "rule-node": "Nó de regra", + "new-platform-version": "Nova versão da plataforma", + "rate-limits": "Limites de taxa excedidos", + "edge-communication-failure": "Falha de comunicação do Edge", + "edge-connection": "Conexão do Edge", + "task-processing-failure": "Falha no processamento de tarefas", + "resources-shortage": "Escassez de recursos" + }, + "templates": "Modelos", + "notification-templates": "Notificações / Modelos", + "tenant-profiles-list-rule-hint": "Se o campo estiver vazio, o gatilho será aplicado a todos os perfis de tenant", + "tenants-list-rule-hint": "Se o campo estiver vazio, o gatilho será aplicado a todos os tenants", + "threshold": "Limite", + "theme-color": "Cor do tema", + "time": "Hora", + "track-rule-node-events": "Rastrear eventos de nó de regra", + "trigger": { + "alarm": "Alarme", + "alarm-assignment": "Atribuição de alarme", + "alarm-comment": "Comentário de alarme", + "api-usage-limit": "Limite de uso de API", + "device-activity": "Atividade do dispositivo", + "entities-limit": "Limite de entidades", + "entity-action": "Ação de entidade", + "rule-engine-lifecycle-event": "Evento de ciclo de vida do motor de regras", + "new-platform-version": "Nova versão da plataforma", + "rate-limits": "Limites de taxa excedidos", + "edge-connection": "Conexão do Edge", + "edge-communication-failure": "Falha de comunicação do Edge", + "task-processing-failure": "Falha no processamento de tarefas", + "resources-shortage": "Escassez de recursos", + "trigger": "Gatilho", + "trigger-required": "O gatilho é obrigatório" + }, + "type": "Tipo", + "unread": "Não lida", + "updated": "Atualizado", + "use-deprecated-webhook-connectors": "Usar conectores Webhook obsoletos", + "use-old-api": "Usar API antiga", + "use-template": "Usar modelo", + "view-all": "Ver todos", + "warning": "Aviso", + "webhook-url": "Webhook URL", + "webhook-url-required": "O Webhook URL é obrigatório", + "workflow-url": "Workflow URL", + "workflow-url-required": "O Workflow URL é obrigatório", + "channel-name": "Nome do canal", + "channel-name-required": "O nome do canal é obrigatório", + "settings": { + "notification-settings": "Configurações de notificação", + "reset-all": "Redefinir todas as configurações", + "reset-all-title": "Tem certeza de que deseja redefinir o formulário?", + "reset-all-text": "Após a confirmação, o formulário de configurações será redefinido para o valor padrão e salvo.", + "type": "Tipo", + "enable-all": "Habilitar todos", + "disable-all": "Desabilitar todos", + "delivery-not-configured": "O método de entrega não está configurado" + } + }, + "ota-update": { + "add": "Adicionar pacote", + "assign-firmware": "Firmware atribuído", + "assign-firmware-required": "O firmware atribuído é obrigatório", + "assign-software": "Software atribuído", + "assign-software-required": "O software atribuído é obrigatório", + "auto-generate-checksum": "Gerar checksum automaticamente", + "checksum": "Checksum", + "checksum-hint": "Se o checksum estiver vazio, será gerado automaticamente", + "checksum-algorithm": "Algoritmo de checksum", + "checksum-copied-message": "O checksum do pacote foi copiado para a área de transferência", + "change-firmware": "A alteração do firmware pode causar a atualização de { count, plural, =1 {1 dispositivo} other {# dispositivos} }.", + "change-software": "A alteração do software pode causar a atualização de { count, plural, =1 {1 dispositivo} other {# dispositivos} }.", + "change-ota-setting-title": "Tem certeza de que deseja alterar as configurações de OTA?", + "chose-compatible-device-profile": "O pacote carregado estará disponível apenas para dispositivos com o perfil escolhido.", + "chose-firmware-distributed-device": "Escolher o firmware que será distribuído aos dispositivos", + "chose-software-distributed-device": "Escolher o software que será distribuído aos dispositivos", + "content-type": "Tipo de conteúdo", + "copy-checksum": "Copiar checksum", + "copy-direct-url": "Copiar URL direta", + "copyId": "Copiar ID do pacote", + "copied": "Copiado!", + "delete": "Excluir pacote", + "delete-ota-update-text": "Tenha cuidado, após a confirmação a atualização OTA será irrecuperável.", + "delete-ota-update-title": "Tem certeza de que deseja excluir a atualização OTA '{{title}}'?", + "delete-ota-updates-text": "Tenha cuidado, após a confirmação todas as atualizações OTA selecionadas serão removidas.", + "delete-ota-updates-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 atualização OTA} other {# atualizações OTA} }?", + "description": "Descrição", + "direct-url": "URL direta", + "direct-url-copied-message": "A URL direta do pacote foi copiada para a área de transferência", + "direct-url-required": "A URL direta é obrigatória", + "download": "Baixar pacote", + "drop-file": "Arraste um arquivo de pacote ou clique para selecionar um arquivo para upload.", + "drop-package-file-or": "Arraste e solte um arquivo de pacote ou", + "file-name": "Nome do arquivo", + "file-size": "Tamanho do arquivo", + "file-size-bytes": "Tamanho do arquivo em bytes", + "idCopiedMessage": "O ID do pacote foi copiado para a área de transferência", + "no-firmware-matching": "Nenhum pacote de atualização OTA de Firmware compatível correspondente a '{{entity}}' foi encontrado.", + "no-firmware-text": "Nenhum pacote de atualização OTA de Firmware compatível provisionado.", + "no-packages-text": "Nenhum pacote encontrado", + "no-software-matching": "Nenhum pacote de atualização OTA de Software compatível correspondente a '{{entity}}' foi encontrado.", + "no-software-text": "Nenhum pacote de atualização OTA de Software compatível provisionado.", + "ota-update": "Atualização OTA", + "ota-update-details": "Detalhes da atualização OTA", + "ota-updates": "Atualizações OTA", + "package-file": "Arquivo de pacote", + "package-type": "Tipo de pacote", + "packages-repository": "Repositório de pacotes", + "search": "Pesquisar pacotes", + "selected-package": "{ count, plural, =1 {1 pacote} other {# pacotes} } selecionado(s)", + "title": "Título", + "title-required": "O título é obrigatório.", + "title-max-length": "O título deve ter menos de 256 caracteres", + "types": { + "firmware": "Firmware", + "software": "Software" + }, + "upload-binary-file": "Fazer upload de arquivo binário", + "use-external-url": "Usar URL externa", + "version": "Versão", + "version-required": "A versão é obrigatória.", + "version-tag": "Tag de versão", + "version-tag-hint": "A tag personalizada deve corresponder à versão do pacote informada pelo seu dispositivo.", + "version-max-length": "A versão deve ter menos de 256 caracteres", + "warning-after-save-no-edit": "Após o upload do pacote, não será possível modificar o título, a versão, o perfil do dispositivo e o tipo de pacote." }, "position": { - "top": "Acima", - "bottom": "Abaixo", + "top": "Superior", + "bottom": "Inferior", "left": "Esquerda", "right": "Direita" }, "profile": { "profile": "Perfil", "last-login-time": "Último login", - "change-password": "Modificar senha", - "current-password": "Senha atual" + "change-password": "Alterar senha", + "current-password": "Senha atual", + "copy-jwt-token": "Copiar token JWT", + "jwt-token": "Token JWT", + "token-valid-till": "Token válido até", + "tokenCopiedSuccessMessage": "Token JWT foi copiado para a área de transferência", + "tokenCopiedWarnMessage": "Token JWT expirou! Por favor, atualize a página." + }, + "profiles": { + "profiles": "Perfis" + }, + "security": { + "security": "Segurança", + "general-settings": "Configurações gerais de segurança", + "access-token": "Token de acesso", + "access-token-required": "Token de acesso é obrigatório", + "clientId": "Client ID", + "clientId-required": "Client ID é obrigatório", + "username": "Nome de usuário", + "username-required": "Nome de usuário é obrigatório", + "ca-cert": "Certificado CA", + "2fa": { + "2fa": "Autenticação de dois fatores", + "2fa-description": "A autenticação de dois fatores protege sua conta contra acesso não autorizado. Basta inserir um código de segurança ao fazer login.", + "authenticate-with": "Você pode autenticar com:", + "disable-2fa-provider-text": "Desativar {{name}} tornará sua conta menos segura", + "disable-2fa-provider-title": "Tem certeza de que deseja desativar {{name}}?", + "get-new-code": "Obter novo código", + "main-2fa-method": "Usar como método principal de autenticação de dois fatores", + "dialog": { + "activation-step-description-email": "Na próxima vez que fizer login, será solicitado que insira o código de segurança que será enviado para seu endereço de email.", + "activation-step-description-sms": "Na próxima vez que fizer login, será solicitado que insira o código de segurança que será enviado para o número de telefone.", + "activation-step-description-totp": "Na próxima vez que fizer login, será necessário fornecer um código de autenticação de dois fatores.", + "activation-step-label": "Ativação", + "backup-code-description": "Imprima os códigos para tê-los à mão quando precisar usá-los para fazer login em sua conta. Você pode usar cada código de backup uma vez.", + "backup-code-warn": "Ao sair desta página, esses códigos não poderão ser exibidos novamente. Armazene-os com segurança usando as opções abaixo.", + "download-txt": "Baixar (txt)", + "email-step-description": "Insira um email para usar como autenticador.", + "email-step-label": "Email", + "enable-email-title": "Ativar autenticador por email", + "enable-sms-title": "Ativar autenticador por SMS", + "enable-totp-title": "Ativar aplicativo autenticador", + "enter-verification-code": "Insira o código de 6 dígitos aqui", + "get-backup-code-title": "Obter código de backup", + "next": "Próximo", + "scan-qr-code": "Escaneie este código QR com seu aplicativo de verificação", + "send-code": "Enviar código", + "sms-step-description": "Insira um número de telefone para usar como autenticador.", + "sms-step-label": "Número de telefone", + "success": "Sucesso!", + "totp-step-description-install": "Você pode instalar aplicativos como Google Authenticator, Authy ou Duo.", + "totp-step-description-open": "Abra o aplicativo autenticador no seu celular.", + "totp-step-label": "Obter aplicativo", + "verification-code": "Código de 6 dígitos", + "verification-code-invalid": "Formato de código de verificação inválido", + "verification-code-incorrect": "Código de verificação incorreto", + "verification-code-many-request": "Muitas solicitações para verificar o código de verificação", + "verification-step-description": "Insira o código de 6 dígitos que acabamos de enviar para {{address}}", + "verification-step-label": "Verificação" + }, + "provider": { + "email": "Email", + "email-description": "Use um código de segurança enviado para seu endereço de email para autenticar.", + "email-hint": "Códigos de autenticação são enviados por email para {{ info }}", + "sms": "SMS", + "sms-description": "Use seu telefone para autenticar. Enviaremos um código de segurança via SMS quando você fizer login.", + "sms-hint": "Códigos de autenticação são enviados por mensagem de texto para {{ info }}", + "totp": "Aplicativo autenticador", + "totp-description": "Use aplicativos como Google Authenticator, Authy ou Duo no seu telefone para autenticar. Será gerado um código de segurança para login.", + "totp-hint": "O aplicativo autenticador está configurado para sua conta", + "backup_code": "Código de backup", + "backup-code-description": "Esses códigos de acesso único imprimíveis permitem que você faça login quando estiver longe do seu telefone, como quando está viajando.", + "backup-code-hint": "{{ info }} códigos de uso único estão ativos no momento" + } + }, + "password-requirement": { + "at-least": "Pelo menos:", + "character": "{ count, plural, =1 {1 caractere} other {# caracteres} }", + "digit": "{ count, plural, =1 {1 dígito} other {# dígitos} }", + "password-tooltip-min-length": "Pelo menos {{minimumLength}} caracteres", + "password-tooltip-max-length": "No máximo {{maximumLength}} caracteres", + "password-tooltip-uppercase": "{{minimumUppercaseLetters}} letra maiúscula", + "password-tooltip-lowercase": "{{minimumLowercaseLetters}} letra minúscula", + "password-tooltip-digit": "{{minimumDigits}} número", + "password-tooltip-special-characters": "{{minimumSpecialCharacters}} caractere especial", + "incorrect-password-try-again": "Senha incorreta. Tente novamente", + "lowercase-letter": "{ count, plural, =1 {1 letra minúscula} other {# letras minúsculas} }", + "new-passwords-not-match": "A nova senha não coincide", + "password-should-not-contain-spaces": "Sua senha não deve conter espaços", + "password-not-meet-requirements": "A senha não atende aos requisitos", + "password-requirements": "Requisitos de senha", + "password-should-difference": "A nova senha deve ser diferente da atual", + "special-character": "{ count, plural, =1 {1 caractere especial} other {# caracteres especiais} }", + "uppercase-letter": "{ count, plural, =1 {1 letra maiúscula} other {# letras maiúsculas} }", + "at-most": "No máximo:" + } }, "relation": { "relations": "Relações", "direction": "Direção", + "clear-relation-type": "Limpar tipo de relação", "search-direction": { "FROM": "De", "TO": "Para" @@ -1421,214 +4966,2182 @@ }, "from-relations": "Relações de saída", "to-relations": "Relações de entrada", - "selected-relations": "{ count, plural, =1 {1 relation} other {# relations} } selecionado(s)", + "selected-relations": "{ count, plural, =1 {1 relação} other {# relações} } selecionada(s)", "type": "Tipo", - "to-entity-type": "Para tipo de entidade", - "to-entity-name": "Para nome de entidade", - "from-entity-type": "De tipo de entidade", - "from-entity-name": "De nome de entidade", - "to-entity": "Para entidade", - "from-entity": "De entidade", + "to-entity-type": "Tipo de entidade destino", + "to-entity-name": "Nome da entidade destino", + "from-entity-type": "Tipo de entidade origem", + "from-entity-name": "Nome da entidade origem", + "to-entity": "Entidade destino", + "from-entity": "Entidade origem", "delete": "Excluir relação", "relation-type": "Tipo de relação", - "relation-type-required": "O tipo de relação é obrigatório.", + "relation-type-required": "Tipo de relação é obrigatório.", + "relation-type-max-length": "Tipo de relação deve ter menos de 256 caracteres", "any-relation-type": "Qualquer tipo", "add": "Adicionar relação", "edit": "Editar relação", "delete-to-relation-title": "Tem certeza de que deseja excluir a relação com a entidade '{{entityName}}'?", - "delete-to-relation-text": "Cuidado, após confirmar, a relação da entidade '{{entityName}}' com a entidade atual será anulada.", - "delete-to-relations-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 relation} other {# relations} }?", - "delete-to-relations-text": "Cuidado, após confirmar, todas as relações serão removidas e a relação das entidades correspondentes com a entidade atual será anulada.", + "delete-to-relation-text": "Atenção: após a confirmação, a entidade '{{entityName}}' ficará sem relação com a entidade atual.", + "delete-to-relations-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 relação} other {# relações} }?", + "delete-to-relations-text": "Atenção: após a confirmação, todas as relações selecionadas serão removidas e as entidades correspondentes ficarão sem relação com a entidade atual.", "delete-from-relation-title": "Tem certeza de que deseja excluir a relação da entidade '{{entityName}}'?", - "delete-from-relation-text": "Cuidado, após confirmar, a relação da entidade atual com a entidade '{{entityName}}' será anulada.", - "delete-from-relations-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 relation} other {# relations} }?", - "delete-from-relations-text": "Cuidado, após confirmar, todas as relações serão removidas e a relação da entidade atual com as entidades correspondentes será anulada.", + "delete-from-relation-text": "Atenção: após a confirmação, a entidade atual ficará sem relação com a entidade '{{entityName}}'.", + "delete-from-relations-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 relação} other {# relações} }?", + "delete-from-relations-text": "Atenção: após a confirmação, todas as relações selecionadas serão removidas e a entidade atual ficará sem relação com as entidades correspondentes.", "remove-relation-filter": "Remover filtro de relação", + "remove-filter": "Remover filtro", "add-relation-filter": "Adicionar filtro de relação", "any-relation": "Qualquer relação", "relation-filters": "Filtros de relação", + "relation-filter": "Filtro de relação", "additional-info": "Informações adicionais (JSON)", - "invalid-additional-info": "Impossível analisar informações adicionais de json", - "no-relations-text": "Nenhuma relação encontrada" + "invalid-additional-info": "Não foi possível analisar o JSON de informações adicionais.", + "no-relations-text": "Nenhuma relação encontrada", + "not": "Não", + "copy-type": "Copiar tipo" + }, + "resource": { + "add": "Adicionar recurso", + "all-types": "Todos", + "copyId": "Copiar ID do recurso", + "delete": "Excluir recurso", + "delete-resource-text": "Atenção: após a confirmação, o recurso se tornará irrecuperável.", + "delete-resource-title": "Tem certeza de que deseja excluir o recurso '{{resourceTitle}}'?", + "delete-resources-action-title": "Excluir { count, plural, =1 {1 recurso} other {# recursos} }", + "delete-resources-text": "Observe que os recursos selecionados, mesmo que estejam sendo usados em perfis de dispositivos, serão excluídos.", + "delete-resources-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 recurso} other {# recursos} }?", + "download": "Baixar recurso", + "drop-file": "Solte um arquivo de recurso ou clique para selecionar um arquivo para enviar.", + "drop-resource-file-or": "Arraste e solte um arquivo de recurso ou", + "empty": "Recurso está vazio", + "file-name": "Nome do arquivo", + "idCopiedMessage": "ID do recurso foi copiado para a área de transferência", + "no-resource-matching": "Nenhum recurso correspondente a '{{widgetsBundle}}' foi encontrado.", + "no-resource-text": "Nenhum recurso encontrado", + "open-widgets-bundle": "Abrir conjunto de widgets", + "resource": "Recurso", + "resource-file": "Arquivo de recurso", + "resource-files": "Arquivos de recurso", + "resource-library-details": "Detalhes do recurso", + "resource-type": "Tipo de recurso", + "resources-library": "Biblioteca de recursos", + "search": "Pesquisar recursos", + "selected-resources": "{ count, plural, =1 {1 recurso} other {# recursos} } selecionado(s)", + "system": "Sistema", + "title": "Título", + "title-required": "Título é obrigatório.", + "title-max-length": "Título deve ter menos de 256 caracteres", + "type": { + "jks": "JKS", + "js-module": "Módulo JS", + "lwm2m-model": "Modelo LWM2M", + "pkcs-12": "PKCS #12", + "general": "Geral" + }, + "resource-sub-type": "Subtipo", + "sub-type": { + "image": "imagem", + "scada-symbol": "Símbolo Scada", + "extension": "Extensão", + "module": "Módulo" + }, + "resource-is-in-use": "Recurso está sendo usado por outras entidades", + "resources-are-in-use": "Recursos estão sendo usados por outras entidades", + "resource-is-in-use-text": "O recurso '{{title}}' não foi excluído porque está sendo usado pelas seguintes entidades:", + "resources-are-in-use-text": "Nem todos os recursos foram excluídos porque estão sendo usados por outras entidades.
Você pode visualizar as entidades referenciadas clicando no botão Referências na linha do recurso correspondente.
Se ainda quiser excluir esses recursos, selecione-os na tabela abaixo e clique no botão Excluir selecionados.", + "delete-resource-in-use-text": "Se ainda quiser excluir o recurso, clique no botão Excluir assim mesmo." + }, + "javascript": { + "add": "Adicionar recurso JavaScript", + "delete": "Excluir recurso JavaScript", + "delete-javascript-resource-text": "Atenção: após a confirmação, o recurso JavaScript se tornará irrecuperável.", + "delete-javascript-resource-title": "Tem certeza de que deseja excluir o recurso JavaScript '{{resourceTitle}}'?", + "delete-javascript-resources-action-title": "Excluir JavaScript { count, plural, =1 {1 recurso} other {# recursos} }", + "delete-javascript-resources-text": "Observe que os recursos JavaScript selecionados, mesmo que estejam sendo usados em funções JavaScript, serão excluídos.", + "delete-javascript-resources-title": "Tem certeza de que deseja excluir JavaScript { count, plural, =1 {1 recurso} other {# recursos} }?", + "delete-javascript-resource-in-use-text": "Se ainda quiser excluir o recurso JavaScript, clique no botão Excluir assim mesmo.", + "download": "Baixar recurso JavaScript", + "upload-from-file": "Enviar JavaScript de arquivo", + "resource-file": "Arquivo de recurso JavaScript", + "drop-file": "Solte um arquivo JavaScript ou clique para selecionar um arquivo para enviar.", + "drop-resource-file-or": "Arraste e solte um arquivo JavaScript ou", + "javascript-library": "Biblioteca JavaScript", + "javascript-type": "Tipo JavaScript", + "javascript-resource-details": "Detalhes do recurso JavaScript", + "javascript-resource-is-in-use": "Recurso JavaScript está sendo usado por outras entidades", + "javascript-resources-are-in-use": "Recursos JavaScript estão sendo usados por outras entidades", + "javascript-resource-is-in-use-text": "O recurso JavaScript '{{title}}' não foi excluído porque está sendo usado pelas seguintes entidades:", + "javascript-resources-are-in-use-text": "Nem todos os recursos JavaScript foram excluídos porque estão sendo usados por outras entidades.
Você pode visualizar as entidades referenciadas clicando no botão Referências na linha do recurso correspondente.
Se ainda quiser excluir esses recursos JavaScript, selecione-os na tabela abaixo e clique no botão Excluir selecionados.", + "search": "Pesquisar recursos JavaScript", + "selected-javascript-resources": "{ count, plural, =1 {1 recurso JavaScript} other {# recursos JavaScript} } selecionado(s)", + "no-javascript-resource-text": "Nenhum recurso JavaScript encontrado", + "all-types": "Todos", + "module-script": "Script de módulo" + }, + "rpc": { + "error": { + "target-device-is-not-set": "Dispositivo de destino não está definido!", + "invalid-target-entity": "Comandos RPC não são suportados pela entidade {{entityType}}.", + "failed-to-resolve-target-device": "Falha ao resolver o dispositivo de destino!", + "request-timeout": "Tempo limite da solicitação", + "rpc-http-error": "Erro: {{status}} - {{statusText}}" + } }, "rulechain": { "rulechain": "Cadeia de regras", + "rulechain-events": "Eventos da cadeia de regras", "rulechains": "Cadeias de regras", "root": "Raiz", "delete": "Excluir cadeia de regras", "name": "Nome", - "name-required": "O nome é obrigatório.", + "name-required": "Nome é obrigatório.", + "name-max-length": "Nome deve ter menos de 256 caracteres", "description": "Descrição", "add": "Adicionar cadeia de regras", - "set-root": "Tornar cadeia de regras em raiz", - "set-root-rulechain-title": "Tem certeza de que deseja tornar a cadeia de regras '{{ruleChainName}}' em raiz?", - "set-root-rulechain-text": "Após confirmar, a cadeia de regras se tornará em raiz e irá tratar todas as mensagens de transporte recebidas.", + "set-root": "Definir cadeia de regras como raiz", + "set-root-rulechain-title": "Tem certeza de que deseja definir a cadeia de regras '{{ruleChainName}}' como raiz?", + "set-root-rulechain-text": "Após a confirmação, a cadeia de regras se tornará raiz e irá processar todas as mensagens de transporte recebidas.", "delete-rulechain-title": "Tem certeza de que deseja excluir a cadeia de regras '{{ruleChainName}}'?", - "delete-rulechain-text": "Cuidado, após confirmar, não será possível recuperar a cadeia de regras e todos os dados associados.", - "delete-rulechains-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 rule chain} other {# rule chains} }?", - "delete-rulechains-action-title": "Excluir { count, plural, =1 {1 rule chain} other {# rule chains} }", - "delete-rulechains-text": "Cuidado, após confirmar, todas as cadeias de regras serão removidas e não será possível recuperar nenhum dado associado.", + "delete-rulechain-text": "Atenção: após a confirmação, a cadeia de regras e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-rulechains-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 cadeia de regras} other {# cadeias de regras} }?", + "delete-rulechains-action-title": "Excluir { count, plural, =1 {1 cadeia de regras} other {# cadeias de regras} }", + "delete-rulechains-text": "Atenção: após a confirmação, todas as cadeias de regras selecionadas serão removidas e todos os dados relacionados se tornarão irrecuperáveis.", "add-rulechain-text": "Adicionar nova cadeia de regras", "no-rulechains-text": "Nenhuma cadeia de regras encontrada", - "rulechain-details": "Detalhes de cadeia de regras", + "rulechain-details": "Detalhes da cadeia de regras", "details": "Detalhes", "events": "Eventos", "system": "Sistema", "import": "Importar cadeia de regras", "export": "Exportar cadeia de regras", - "export-failed-error": "Impossível exportar cadeia de regras: {{error}}", + "export-failed-error": "Não foi possível exportar a cadeia de regras: {{error}}", "create-new-rulechain": "Criar nova cadeia de regras", "rulechain-file": "Arquivo de cadeia de regras", - "invalid-rulechain-file-error": "Impossível importar cadeia de regras: Estrutura de dados de cadeia de regras inválida.", - "copyId": "Copiar ID de cadeia de regras", - "idCopiedMessage": "O ID da cadeia de regras foi copiado para a área de transferência", + "invalid-rulechain-file-error": "Não foi possível importar a cadeia de regras: estrutura de dados da cadeia de regras inválida.", + "copyId": "Copiar ID da cadeia de regras", + "idCopiedMessage": "ID da cadeia de regras foi copiado para a área de transferência", "select-rulechain": "Selecionar cadeia de regras", - "no-rulechains-matching": "Nenhuma cadeia de regras encontrada que coincida com '{{entity}}'.", - "rulechain-required": "A cadeia de regras é obrigatória", + "no-rulechains-matching": "Nenhuma cadeia de regras correspondente a '{{entity}}' foi encontrada.", + "rulechain-required": "Cadeia de regras é obrigatória", "management": "Gerenciamento de regras", "debug-mode": "Modo de depuração", "search": "Pesquisar cadeias de regras", - "selected-rulechains": "{ count, plural, =1 {1 rule chain} other {# rule chains} } selecionada(s)", - "open-rulechain": "Abrir cadeia de regras" + "selected-rulechains": "{ count, plural, =1 {1 cadeia de regras} other {# cadeias de regras} } selecionada(s)", + "open-rulechain": "Abrir cadeia de regras", + "edge-template-root": "Raiz do template", + "assign-to-edge": "Atribuir ao edge", + "edge-rulechain": "Cadeia de regras do edge", + "unassign-rulechain-from-edge-text": "Após a confirmação, a cadeia de regras será desatribuída e não estará acessível pelo edge.", + "unassign-rulechains-from-edge-title": "Tem certeza de que deseja desatribuir { count, plural, =1 {1 cadeia de regras} other {# cadeias de regras} }?", + "unassign-rulechains-from-edge-text": "Após a confirmação, todas as cadeias de regras selecionadas serão desatribuídas e não estarão acessíveis pelo edge.", + "assign-rulechain-to-edge-title": "Atribuir cadeia(s) de regras ao edge", + "assign-rulechain-to-edge-text": "Selecione as cadeias de regras para atribuir ao edge", + "set-edge-template-root-rulechain": "Definir cadeia de regras como raiz do template do edge", + "set-edge-template-root-rulechain-title": "Tem certeza de que deseja definir a cadeia de regras '{{ruleChainName}}' como raiz do template do edge?", + "set-edge-template-root-rulechain-text": "Após a confirmação, a cadeia de regras se tornará a raiz do template do edge e será a cadeia de regras raiz para os edges criados.", + "invalid-rulechain-type-error": "Não foi possível importar a cadeia de regras: tipo de cadeia de regras inválido. O tipo esperado é {{expectedRuleChainType}}.", + "set-auto-assign-to-edge": "Atribuir cadeia de regras ao(s) edge(s) na criação", + "set-auto-assign-to-edge-title": "Tem certeza de que deseja atribuir a cadeia de regras do edge '{{ruleChainName}}' ao(s) edge(s) na criação?", + "set-auto-assign-to-edge-text": "Após a confirmação, a cadeia de regras do edge será automaticamente atribuída ao(s) edge(s) na criação.", + "unset-auto-assign-to-edge": "Não atribuir cadeia de regras ao(s) edge(s) na criação", + "unset-auto-assign-to-edge-title": "Tem certeza de que não deseja atribuir a cadeia de regras do edge '{{ruleChainName}}' ao(s) edge(s) na criação?", + "unset-auto-assign-to-edge-text": "Após a confirmação, a cadeia de regras do edge não será mais automaticamente atribuída ao(s) edge(s) na criação.", + "unassign-rulechain-title": "Tem certeza de que deseja desatribuir a cadeia de regras '{{ruleChainName}}'?", + "unassign-rulechains": "Desatribuir cadeias de regras" }, "rulenode": { + "rule-node-events": "Eventos do nó de regra", "details": "Detalhes", "events": "Eventos", "search": "Pesquisar nós", "open-node-library": "Abrir biblioteca de nós", + "close-node-library": "Fechar biblioteca de nós", "add": "Adicionar nó de regra", "name": "Nome", - "name-required": "O nome é obrigatório.", + "name-required": "Nome é obrigatório.", + "name-max-length": "Nome deve ter menos de 256 caracteres", "type": "Tipo", - "description": "Descrição", - "delete": "Excluir nó de regras", + "rule-node-description": "Descrição do nó de regra", + "delete": "Excluir nó de regra", "select-all-objects": "Selecionar todos os nós e conexões", "deselect-all-objects": "Desmarcar todos os nós e conexões", "delete-selected-objects": "Excluir nós e conexões selecionados", - "delete-selected": "Excluir selecionado", + "delete-selected": "Excluir selecionados", + "create-nested-rulechain": "Criar cadeia de regras aninhada", "select-all": "Selecionar tudo", - "copy-selected": "Copiar selecionado(s)", + "copy-selected": "Copiar selecionados", "deselect-all": "Desmarcar tudo", - "rulenode-details": "Detalhes do nó de regras", + "rulenode-details": "Detalhes do nó de regra", "debug-mode": "Modo de depuração", + "singleton": "Singleton", "configuration": "Configuração", "link": "Link", - "link-details": "Detalhes do link do nó de regras", + "link-details": "Detalhes do link do nó de regra", "add-link": "Adicionar link", - "link-label": "Etiqueta de link", - "link-label-required": "A etiqueta de link é obrigatória.", - "custom-link-label": "Etiqueta de link personalizada", - "custom-link-label-required": "A etiqueta de link personalizada é obrigatória.", - "link-labels": "Etiquetas de links", - "link-labels-required": "As etiquetas de links são obrigatórias.", - "no-link-labels-found": "Nenhuma etiqueta de link encontrada", + "link-label": "Rótulo do link", + "link-label-required": "Rótulo do link é obrigatório.", + "custom-link-label": "Rótulo de link personalizado", + "custom-link-label-required": "Rótulo de link personalizado é obrigatório.", + "link-labels": "Rótulos do link", + "link-labels-required": "Rótulos do link são obrigatórios.", + "no-link-labels-found": "Nenhum rótulo de link encontrado", "no-link-label-matching": "'{{label}}' não encontrado.", "create-new-link-label": "Criar um novo!", - "type-filter": "Filtrar", + "type-filter": "Filtro", "type-filter-details": "Filtrar mensagens recebidas com condições configuradas", "type-enrichment": "Enriquecimento", - "type-enrichment-details": "Adicionar informações adicionais aos Metadados de mensagens", + "type-enrichment-details": "Adicionar informações adicionais nos Metadados da mensagem", "type-transformation": "Transformação", - "type-transformation-details": "Alterar payload e metadados de mensagens", + "type-transformation-details": "Alterar payload e Metadados da mensagem", "type-action": "Ação", "type-action-details": "Executar ação especial", "type-external": "Externo", "type-external-details": "Interage com sistema externo", - "type-rule-chain": "Cadeia de Regras", - "type-rule-chain-details": "Encaminha mensagens recebidas para cadeia de regras especificada", + "type-rule-chain": "Cadeia de regras", + "type-rule-chain-details": "Encaminha mensagens recebidas para a cadeia de regras especificada", + "type-flow": "Fluxo", + "type-flow-details": "Organiza o fluxo de mensagens", "type-input": "Entrada", - "type-input-details": "Entrada lógica de cadeia de regras, encaminha mensagens recebidas para nó de regras associado", + "type-input-details": "Entrada lógica da cadeia de regras, encaminha mensagens recebidas para o próximo nó de regra relacionado", "type-unknown": "Desconhecido", - "type-unknown-details": "Nó de regras não resolvido", - "directive-is-not-loaded": "Diretriz de configuração '{{directiveName}}' definida não está disponível.", - "ui-resources-load-error": "Erro ao carregar configuração de recursos de interface de usuário.", - "invalid-target-rulechain": "Impossível resolver cadeia de regras alvo!", - "test-script-function": "Testar funcionamento de script", + "type-unknown-details": "Nó de regra não resolvido", + "directive-is-not-loaded": "A diretiva de configuração definida '{{directiveName}}' não está disponível.", + "ui-resources-load-error": "Falha ao carregar recursos de interface de configuração.", + "invalid-target-rulechain": "Não foi possível resolver a cadeia de regras de destino!", + "test-script-function": "Testar função de script", + "script-lang-java-script": "JavaScript", + "script-lang-tbel": "TBEL", "message": "Mensagem", "message-type": "Tipo de mensagem", "select-message-type": "Selecionar tipo de mensagem", - "message-type-required": "O tipo de mensagem é obrigatório", + "message-type-required": "Tipo de mensagem é obrigatório", "metadata": "Metadados", - "metadata-required": "As entradas de metadados não podem estar em branco.", + "metadata-required": "As entradas de metadados não podem estar vazias.", "output": "Saída", - "test": "Teste", - "help": "Ajuda" + "test": "Testar", + "help": "Ajuda", + "reset-debug-settings": "Redefinir configurações de depuração em todos os nós", + "test-with-this-message": "{{test}} com esta mensagem", + "queue-hint": "Selecione uma fila para encaminhamento de mensagens para outra fila. A fila 'Main' é usada por padrão.", + "queue-singleton-hint": "Selecione uma fila para encaminhamento de mensagens em ambientes com múltiplas instâncias. A fila 'Main' é usada por padrão." + }, + "rule-node-config": { + "id": "Id", + "additional-info": "Informações adicionais", + "advanced-settings": "Configurações avançadas", + "create-entity-if-not-exists": "Criar nova entidade se não existir", + "create-entity-if-not-exists-hint": "Se habilitado, uma nova entidade com os parâmetros especificados será criada caso ainda não exista. As entidades existentes serão usadas como estão para a relação.", + "select-device-connectivity-event": "Selecionar evento de conectividade do dispositivo", + "entity-name-pattern": "Padrão de nome", + "device-name-pattern": "Nome do dispositivo", + "asset-name-pattern": "Nome do ativo", + "entity-view-name-pattern": "Nome da visualização de entidade", + "customer-title-pattern": "Título do cliente", + "dashboard-name-pattern": "Título do dashboard", + "user-name-pattern": "Email do usuário", + "edge-name-pattern": "Nome do edge", + "entity-name-pattern-required": "O padrão de nome é obrigatório", + "entity-name-pattern-hint": "O campo de padrão de nome suporta templatização. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "copy-message-type": "Copiar tipo de mensagem", + "entity-type-pattern": "Padrão de tipo", + "entity-type-pattern-required": "O padrão de tipo é obrigatório", + "message-type-value": "Valor do tipo de mensagem", + "message-type-value-required": "O valor do tipo de mensagem é obrigatório", + "message-type-value-max-length": "O valor do tipo de mensagem deve ter menos de 256 caracteres", + "output-message-type": "Tipo de mensagem de saída", + "entity-cache-expiration": "Tempo de expiração do cache de entidades (seg)", + "entity-cache-expiration-hint": "Especifica o intervalo de tempo máximo permitido para armazenar os registros de entidades encontrados. O valor 0 significa que os registros nunca expirarão.", + "entity-cache-expiration-required": "O tempo de expiração do cache de entidades é obrigatório.", + "entity-cache-expiration-range": "O tempo de expiração do cache de entidades deve ser maior ou igual a 0.", + "customer-name-pattern": "Título do cliente", + "customer-name-pattern-required": "O título do cliente é obrigatório", + "customer-name-pattern-hint": "Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "create-customer-if-not-exists": "Criar novo cliente se não existir", + "unassign-from-customer": "Desatribuir de cliente específico se o originador for um dashboard", + "unassign-from-customer-tooltip": "Apenas dashboards podem ser atribuídos a múltiplos clientes ao mesmo tempo. \nSe o originador da mensagem for um dashboard, é necessário especificar explicitamente o título do cliente para desatribuir.", + "customer-cache-expiration": "Tempo de expiração do cache de clientes (seg)", + "customer-cache-expiration-hint": "Especifica o intervalo de tempo máximo permitido para armazenar os registros de clientes encontrados. O valor 0 significa que os registros nunca expirarão.", + "customer-cache-expiration-required": "O tempo de expiração do cache de clientes é obrigatório.", + "customer-cache-expiration-range": "O tempo de expiração do cache de clientes deve ser maior ou igual a 0.", + "interval-start": "Início do intervalo", + "interval-end": "Fim do intervalo", + "time-unit": "Unidade de tempo", + "fetch-mode": "Modo de busca", + "order-by-timestamp": "Ordenar por timestamp", + "limit": "Limite", + "limit-hint": "O valor mínimo do limite é 2 e o máximo é 1000. Se desejar buscar uma única entrada, selecione o modo de busca 'Primeiro' ou 'Último'.", + "limit-required": "O limite é obrigatório.", + "limit-range": "O limite deve estar no intervalo de 2 a 1000.", + "time-unit-milliseconds": "Milissegundos", + "time-unit-seconds": "Segundos", + "time-unit-minutes": "Minutos", + "time-unit-hours": "Horas", + "time-unit-days": "Dias", + "time-value-range": "Intervalo permitido de 1 a 2147483647.", + "start-interval-value-required": "O início do intervalo é obrigatório.", + "end-interval-value-required": "O fim do intervalo é obrigatório.", + "filter": "Filtro", + "switch": "Switch", + "math-templatization-tooltip": "Este campo suporta templatização. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "add-message-type": "Adicionar tipo de mensagem", + "select-message-types-required": "Pelo menos um tipo de mensagem deve ser selecionado.", + "select-message-types": "Selecionar tipos de mensagem", + "no-message-types-found": "Nenhum tipo de mensagem encontrado", + "no-message-type-matching": "'{{messageType}}' não encontrado.", + "create-new-message-type": "Criar um novo.", + "message-types-required": "Os tipos de mensagem são obrigatórios.", + "client-attributes": "Atributos do cliente", + "shared-attributes": "Atributos compartilhados", + "server-attributes": "Atributos do servidor", + "attributes-keys": "Chaves de atributos", + "attributes-keys-required": "As chaves de atributos são obrigatórias", + "attributes-scope": "Escopo dos atributos", + "attributes-scope-value": "Valor do escopo dos atributos", + "attributes-scope-value-copy": "Copiar valor do escopo dos atributos", + "attributes-scope-hint": "Use a chave de metadados 'scope' para definir dinamicamente o escopo do atributo por mensagem. Se fornecida, isso substitui o escopo definido na configuração.", + "notify-device": "Forçar notificação ao dispositivo", + "send-attributes-updated-notification": "Enviar notificação de atributos atualizados", + "send-attributes-updated-notification-hint": "Envia notificação sobre atributos atualizados como uma mensagem separada para a fila do motor de regras.", + "send-attributes-deleted-notification": "Enviar notificação de atributos excluídos", + "send-attributes-deleted-notification-hint": "Envia notificação sobre atributos excluídos como uma mensagem separada para a fila do motor de regras.", + "update-attributes-only-on-value-change": "Salvar atributos somente se o valor mudar", + "update-attributes-only-on-value-change-hint": "Atualiza os atributos a cada mensagem recebida independentemente de o valor ter mudado. Aumenta o uso da API e reduz o desempenho.", + "update-attributes-only-on-value-change-hint-enabled": "Atualiza os atributos somente se o valor tiver mudado. Se o valor não for alterado, nenhuma atualização no timestamp do atributo nem notificação de alteração de atributo será enviada.", + "fetch-credentials-to-metadata": "Buscar credenciais para os metadados", + "notify-device-on-update-hint": "Se habilitado, força a notificação ao dispositivo sobre a atualização de atributos compartilhados. Se desabilitado, o comportamento da notificação é controlado pelo parâmetro 'notifyDevice' dos metadados da mensagem recebida. Para desativar a notificação, os metadados da mensagem devem conter o parâmetro 'notifyDevice' definido como 'false'. Em qualquer outro caso, a notificação será enviada ao dispositivo.", + "notify-device-on-delete-hint": "Se habilitado, força a notificação ao dispositivo sobre a remoção de atributos compartilhados. Se desabilitado, o comportamento da notificação é controlado pelo parâmetro 'notifyDevice' dos metadados da mensagem recebida. Para ativar a notificação, os metadados da mensagem devem conter o parâmetro 'notifyDevice' definido como 'true'. Em qualquer outro caso, a notificação não será disparada para o dispositivo.", + "latest-timeseries": "Chaves de dados de séries temporais mais recentes", + "timeseries-keys": "Chaves de séries temporais", + "timeseries-keys-required": "Pelo menos uma chave de série temporal deve ser selecionada.", + "add-timeseries-key": "Adicionar chave de série temporal", + "add-message-field": "Adicionar campo de mensagem", + "relation-search-parameters": "Parâmetros de busca de relação", + "relation-parameters": "Parâmetros de relação", + "add-metadata-field": "Adicionar campo de metadados", + "data-keys": "Nomes dos campos da mensagem", + "copy-from": "Copiar de", + "data-to-metadata": "Dados para metadados", + "metadata-to-data": "Metadados para dados", + "use-regular-expression-hint": "Use expressão regular para copiar chaves por padrão.\n\nDicas e truques:\nPressione 'Enter' para concluir a entrada do nome do campo.\nPressione 'Backspace' para excluir o nome do campo. Múltiplos nomes de campos são suportados.", + "interval": "Intervalo", + "interval-required": "O intervalo é obrigatório", + "interval-hint": "Intervalo de deduplicação em segundos.", + "interval-min-error": "O valor mínimo permitido é 1", + "max-pending-msgs": "Máximo de mensagens pendentes", + "max-pending-msgs-hint": "Número máximo de mensagens armazenadas em memória para cada id de deduplicação único.", + "max-pending-msgs-required": "O máximo de mensagens pendentes é obrigatório", + "max-pending-msgs-max-error": "O valor máximo permitido é 1000", + "max-pending-msgs-min-error": "O valor mínimo permitido é 1", + "max-retries": "Máximo de tentativas", + "max-retries-required": "O máximo de tentativas é obrigatório", + "max-retries-hint": "Número máximo de tentativas para enviar as mensagens deduplicadas para a fila. Um atraso de 10 segundos é utilizado entre as tentativas", + "max-retries-max-error": "O valor máximo permitido é 100", + "max-retries-min-error": "O valor mínimo permitido é 0", + "strategy": "Estratégia", + "strategy-required": "A estratégia é obrigatória", + "strategy-all-hint": "Retorna todas as mensagens recebidas durante o período de deduplicação como uma única mensagem de array JSON. Onde cada elemento representa um objeto com as propriedades internas msg e metadata.", + "strategy-first-hint": "Retorna a primeira mensagem recebida durante o período de deduplicação.", + "strategy-last-hint": "Retorna a última mensagem recebida durante o período de deduplicação.", + "first": "Primeiro", + "last": "Último", + "all": "Todos", + "output-msg-type-hint": "O tipo de mensagem do resultado de deduplicação.", + "queue-name-hint": "O nome da fila onde o resultado de deduplicação será publicado.", + "keys": "Chaves", + "keys-required": "As chaves são obrigatórias", + "rename-keys-in": "Renomear chaves em", + "data": "Dados", + "message": "Mensagem", + "metadata": "Metadados", + "current-key-name": "Nome da chave atual", + "key-name-required": "O nome da chave é obrigatório", + "new-key-name": "Novo nome de chave", + "new-key-name-required": "O novo nome de chave é obrigatório", + "metadata-keys": "Nomes dos campos de metadados", + "json-path-expression": "Expressão de caminho JSON", + "json-path-expression-required": "A expressão de caminho JSON é obrigatória", + "json-path-expression-hint": "O JSONPath especifica um caminho para um elemento ou conjunto de elementos em uma estrutura JSON. '$' representa o objeto ou array raiz.", + "relations-query": "Consulta de relações", + "device-relations-query": "Consulta de relações de dispositivos", + "max-relation-level": "Nível máximo de relação", + "max-relation-level-error": "O valor deve ser maior que 0 ou não especificado.", + "max-relation-level-invalid": "O valor deve ser um número inteiro.", + "relation-type": "Tipo de relação", + "relation-type-pattern": "Padrão de tipo de relação", + "relation-type-pattern-required": "O padrão de tipo de relação é obrigatório", + "relation-types-list": "Tipos de relação a propagar", + "relation-types-list-hint": "Se os tipos de relação a propagar não forem selecionados, os alarmes serão propagados sem filtragem por tipo de relação.", + "unlimited-level": "Nível ilimitado", + "latest-telemetry": "Telemetria mais recente", + "add-telemetry-key": "Adicionar chave de telemetria", + "delete-from": "Excluir de", + "use-regular-expression-delete-hint": "Use expressão regular para excluir chaves por padrão.\n\nDicas e truques:\nPressione 'Enter' para concluir a entrada do nome do campo.\nPressione 'Backspace' para excluir o nome do campo.\nMúltiplos nomes de campos são suportados.", + "fetch-into": "Buscar em", + "attr-mapping": "Mapeamento de atributos:", + "source-attribute": "Chave do atributo de origem", + "source-attribute-required": "A chave do atributo de origem é obrigatória.", + "source-telemetry": "Chave de telemetria de origem", + "source-telemetry-required": "A chave de telemetria de origem é obrigatória.", + "target-key": "Chave de destino", + "target-key-required": "A chave de destino é obrigatória.", + "attr-mapping-required": "Pelo menos uma entrada de mapeamento deve ser especificada.", + "fields-mapping": "Mapeamento de campos", + "fields-mapping-hint": "Se o campo da mensagem for definido como $entityId, o id do originador da mensagem será salvo na coluna da tabela especificada.", + "relations-query-config-direction-suffix": "originador", + "profile-name": "Nome do perfil", + "fetch-circle-parameter-info-from-metadata-hint": "O campo de metadados '{{perimeterKeyName}}' deve ser definido no seguinte formato: {\"latitude\":48.196, \"longitude\":24.6532, \"radius\":100.0, \"radiusUnit\":\"METER\"}", + "fetch-poligon-parameter-info-from-metadata-hint": "O campo de metadados '{{perimeterKeyName}}' deve ser definido no seguinte formato: [[48.19736,24.65235],[48.19800,24.65060],...,[48.19849,24.65420]]", + "short-templatization-tooltip": "Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "fields-mapping-required": "Pelo menos um mapeamento de campo deve ser especificado.", + "at-least-one-field-required": "Pelo menos um campo de entrada deve ter valor(es) fornecido(s).", + "originator-fields-sv-map-hint": "Os campos de chave de destino suportam templatização. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "sv-map-hint": "Apenas os campos de chave de destino suportam templatização. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "source-field": "Campo de origem", + "source-field-required": "O campo de origem é obrigatório.", + "originator-source": "Fonte do originador", + "new-originator": "Novo originador", + "originator-customer": "Cliente", + "originator-tenant": "Tenant", + "originator-related": "Entidade relacionada", + "originator-alarm-originator": "Originador do alarme", + "originator-entity": "Entidade por padrão de nome", + "clone-message": "Clonar mensagem", + "transform": "Transformar", + "default-ttl": "TTL padrão", + "default-ttl-required": "O TTL padrão é obrigatório.", + "default-ttl-hint": "O nó de regra buscará o valor de Time-to-Live (TTL) nos metadados da mensagem. Se nenhum valor estiver presente, o padrão será o TTL especificado na configuração. Se o valor for definido como 0, o TTL da configuração do perfil do tenant será aplicado.", + "default-ttl-zero-hint": "O TTL não será aplicado se seu valor for definido como 0.", + "min-default-ttl-message": "Apenas o TTL mínimo de 0 é permitido.", + "generation-parameters": "Parâmetros de geração", + "message-count": "Limite de mensagens geradas (0 - ilimitado)", + "message-count-required": "O limite de mensagens geradas é obrigatório.", + "min-message-count-message": "Apenas a contagem mínima de mensagens igual a 0 é permitida.", + "period-seconds": "Período em segundos", + "period-seconds-required": "O período é obrigatório.", + "generation-frequency-seconds": "Frequência de geração em segundos", + "generation-frequency-required": "A frequência de geração é obrigatória.", + "min-generation-frequency-message": "O mínimo permitido é 60 segundos.", + "script-lang-tbel": "TBEL", + "script-lang-js": "JS", + "use-metadata-period-in-seconds-patterns": "Usar padrão de período em segundos", + "use-metadata-period-in-seconds-patterns-hint": "Se selecionado, o nó de regra usa o padrão de intervalo de período em segundos dos metadados ou dados da mensagem, assumindo que os intervalos estão em segundos.", + "period-in-seconds-pattern": "Padrão de período em segundos", + "period-in-seconds-pattern-required": "O padrão de período em segundos é obrigatório", + "min-period-seconds-message": "O período mínimo permitido é 60 segundos.", + "originator": "Originador", + "message-body": "Corpo da mensagem", + "message-metadata": "Metadados da mensagem", + "generate": "Gerar", + "current-rule-node": "Nó de regra atual", + "current-tenant": "Tenant atual", + "generator-function": "Função geradora", + "test-generator-function": "Testar função geradora", + "generator": "Gerador", + "test-filter-function": "Testar função de filtro", + "test-switch-function": "Testar função switch", + "test-transformer-function": "Testar função de transformação", + "transformer": "Transformador", + "alarm-create-condition": "Condição de criação de alarme", + "test-condition-function": "Testar função de condição", + "alarm-clear-condition": "Condição de limpeza de alarme", + "alarm-details-builder": "Construtor de detalhes do alarme", + "test-details-function": "Testar função de detalhes", + "alarm-type": "Tipo de alarme", + "select-entity-types": "Selecionar tipos de entidade", + "alarm-type-required": "O tipo de alarme é obrigatório.", + "alarm-severity": "Severidade do alarme", + "alarm-severity-required": "A severidade do alarme é obrigatória", + "alarm-severity-pattern": "Padrão de severidade do alarme", + "alarm-status-filter": "Filtro de status do alarme", + "alarm-status-list-empty": "A lista de status de alarme está vazia", + "no-alarm-status-matching": "Nenhum status de alarme correspondente foi encontrado.", + "propagate": "Propagar alarme para entidades relacionadas", + "propagate-to-owner": "Propagar alarme para o proprietário da entidade (Cliente ou Tenant)", + "propagate-to-tenant": "Propagar alarme para o Tenant", + "condition": "Condição", + "details": "Detalhes", + "to-string": "Para string", + "test-to-string-function": "Testar função para string", + "from-template": "De", + "from-template-required": "O campo De é obrigatório", + "message-to-metadata": "Mensagem para metadados", + "metadata-to-message": "Metadados para mensagem", + "from-message": "Da mensagem", + "from-metadata": "Dos metadados", + "to-template": "Para", + "to-template-required": "O template Para é obrigatório", + "mail-address-list-template-hint": "Lista de endereços separada por vírgula, use ${metadataKey} para valor dos metadados, $[messageKey] para valor do corpo da mensagem", + "cc-template": "Cc", + "bcc-template": "Bcc", + "subject-template": "Assunto", + "subject-template-required": "O template de Assunto é obrigatório", + "body-template": "Corpo", + "body-template-required": "O template de Corpo é obrigatório", + "dynamic-mail-body-type": "Tipo de corpo de email dinâmico", + "mail-body-type": "Tipo de corpo do email", + "body-type-template": "Template de tipo de corpo", + "reply-routing-configuration": "Configuração de roteamento de resposta", + "rpc-reply-routing-configuration-hint": "Estes parâmetros de configuração especificam os nomes das chaves de metadados usados para identificar o serviço, a sessão e a solicitação para o envio de uma resposta.", + "reply-routing-configuration-hint": "Estes parâmetros de configuração especificam os nomes das chaves de metadados usados para identificar o serviço e a solicitação para o envio de uma resposta.", + "request-id-metadata-attribute": "Id da solicitação", + "service-id-metadata-attribute": "Id do serviço", + "session-id-metadata-attribute": "Id da sessão", + "timeout-sec": "Tempo Limite em segundos", + "timeout-required": "O tempo limite é obrigatório", + "min-timeout-message": "Apenas o valor mínimo de tempo limite igual a 0 é permitido.", + "endpoint-url-pattern": "Padrão de URL do Endpoint", + "endpoint-url-pattern-required": "O padrão de URL do Endpoint é obrigatório", + "request-method": "Método da solicitação", + "use-simple-client-http-factory": "Usar factory HTTP de cliente simples", + "ignore-request-body": "Sem corpo de solicitação", + "parse-to-plain-text": "Converter para texto simples", + "parse-to-plain-text-hint": "Se selecionado, o payload da mensagem do corpo da solicitação será transformado de string JSON para texto simples, por exemplo, msg = \"Hello,\\t\"world\"\" será convertido para Hello, \"world\"", + "read-timeout": "Tempo Limite de leitura em milissegundos", + "read-timeout-hint": "O valor 0 significa tempo limite infinito", + "max-parallel-requests-count": "Número máximo de solicitações paralelas", + "max-parallel-requests-count-hint": "O valor 0 especifica sem limite no processamento paralelo", + "max-response-size": "Tamanho máximo de resposta (em KB)", + "max-response-size-hint": "A quantidade máxima de memória alocada para armazenamento em buffer de dados ao decodificar ou codificar mensagens HTTP, como payloads JSON ou XML", + "headers": "Cabeçalhos", + "headers-hint": "Use ${metadataKey} para valor dos metadados, $[messageKey] para valor do corpo da mensagem nos campos de cabeçalho/valor", + "header": "Cabeçalho", + "header-required": "O cabeçalho é obrigatório", + "value": "Valor", + "value-required": "O valor é obrigatório", + "topic-pattern": "Padrão de tópico", + "key-pattern": "Padrão de chave", + "key-pattern-hint": "Opcional. Se um número de partição válido for especificado, ele será usado ao enviar o registro. Se nenhuma partição for especificada, a chave será usada. Se nenhum dos dois for especificado, uma partição será atribuída de forma round-robin.", + "topic-pattern-required": "O padrão de tópico é obrigatório", + "topic": "Tópico", + "topic-required": "O tópico é obrigatório", + "bootstrap-servers": "Servidores de bootstrap", + "bootstrap-servers-required": "O valor dos servidores bootstrap é obrigatório", + "other-properties": "Outras propriedades", + "key": "Chave", + "key-required": "A chave é obrigatória", + "retries": "Número de tentativas automáticas em caso de falha", + "min-retries-message": "Apenas 0 tentativas mínimas é permitido.", + "batch-size-bytes": "Tamanho do lote produzido em bytes", + "min-batch-size-bytes-message": "Apenas 0 como tamanho mínimo de lote é permitido.", + "linger-ms": "Tempo de buffer local (ms)", + "min-linger-ms-message": "Apenas 0 ms como valor mínimo é permitido.", + "buffer-memory-bytes": "Tamanho máximo do buffer do cliente em bytes", + "min-buffer-memory-message": "Apenas 0 como tamanho mínimo de buffer é permitido.", + "memory-buffer-size-range": "O tamanho do buffer de memória deve estar entre 0 e {{max}} KB", + "acks": "Número de confirmações", + "topic-arn-pattern": "Padrão de ARN do tópico", + "topic-arn-pattern-required": "O padrão de ARN do tópico é obrigatório", + "aws-access-key-id": "AWS Access Key ID", + "aws-access-key-id-required": "AWS Access Key ID é obrigatório", + "aws-secret-access-key": "AWS Secret Access Key", + "aws-secret-access-key-required": "AWS Secret Access Key é obrigatório", + "aws-region": "Região AWS", + "aws-region-required": "Região AWS é obrigatória", + "exchange-name-pattern": "Padrão de nome de exchange", + "routing-key-pattern": "Padrão de chave de roteamento", + "message-properties": "Propriedades da mensagem", + "host": "Host", + "host-required": "O host é obrigatório", + "port": "Porta", + "port-required": "A porta é obrigatória", + "port-range": "A porta deve estar no intervalo de 1 a 65535.", + "virtual-host": "Host virtual", + "username": "Nome de usuário", + "password": "Senha", + "automatic-recovery": "Recuperação automática", + "connection-timeout-ms": "Tempo Limite de conexão (ms)", + "min-connection-timeout-ms-message": "Apenas 0 ms como valor mínimo é permitido.", + "handshake-timeout-ms": "Tempo Limite de handshake (ms)", + "min-handshake-timeout-ms-message": "Apenas 0 ms como valor mínimo é permitido.", + "client-properties": "Propriedades do cliente", + "queue-url-pattern": "Padrão de URL da fila", + "queue-url-pattern-required": "O padrão de URL da fila é obrigatório", + "delay-seconds": "Atraso (segundos)", + "min-delay-seconds-message": "Apenas 0 segundos como valor mínimo é permitido.", + "max-delay-seconds-message": "Apenas 900 segundos como valor máximo é permitido.", + "name": "Nome", + "name-required": "O nome é obrigatório", + "queue-type": "Tipo de fila", + "sqs-queue-standard": "Padrão", + "sqs-queue-fifo": "FIFO", + "gcp-project-id": "ID do projeto GCP", + "gcp-project-id-required": "O ID do projeto GCP é obrigatório", + "gcp-service-account-key": "Arquivo de chave de conta de serviço GCP", + "gcp-service-account-key-required": "O arquivo de chave de conta de serviço GCP é obrigatório", + "pubsub-topic-name": "Nome do tópico", + "pubsub-topic-name-required": "O nome do tópico é obrigatório", + "message-attributes": "Atributos da mensagem", + "message-attributes-hint": "Use ${metadataKey} para valor dos metadados, $[messageKey] para valor do corpo da mensagem nos campos de nome/valor", + "connect-timeout": "Tempo limite de conexão (seg)", + "connect-timeout-required": "O tempo limite de conexão é obrigatório.", + "connect-timeout-range": "O tempo limite de conexão deve estar no intervalo de 1 a 200.", + "client-id": "Client ID", + "client-id-hint": "Opcional. Deixe em branco para Client ID gerado automaticamente. Tenha cuidado ao especificar o Client ID. A maioria dos brokers MQTT não permite múltiplas conexões com o mesmo Client ID. Para conectar a esses brokers, seu Client ID MQTT deve ser único. Quando a plataforma está sendo executada no modo de microsserviços, a cópia do nó de regra é iniciada em cada microsserviço. Isso automaticamente levará a múltiplos clientes mqtt com o mesmo ID e pode causar falhas no nó de regra. Para evitar tais falhas, habilite a opção \"Adicionar ID do serviço como sufixo ao Client ID\" abaixo.", + "append-client-id-suffix": "Adicionar ID do serviço como sufixo ao Client ID", + "client-id-suffix-hint": "Opcional. Aplicado quando o \"Client ID\" é especificado explicitamente. Se selecionado, o ID do serviço será adicionado ao Client ID como sufixo. Ajuda a evitar falhas quando a plataforma está sendo executada no modo de microsserviços.", + "device-id": "ID do dispositivo", + "device-id-required": "O ID do dispositivo é obrigatório.", + "clean-session": "Sessão limpa", + "enable-ssl": "Habilitar SSL", + "credentials": "Credenciais", + "credentials-type": "Tipo de credenciais", + "credentials-type-required": "O tipo de credenciais é obrigatório.", + "credentials-anonymous": "Anônimo", + "credentials-basic": "Básico", + "credentials-pem": "PEM", + "credentials-pem-hint": "Pelo menos o arquivo de certificado CA do servidor ou um par de arquivos de certificado do cliente e chave privada do cliente são obrigatórios", + "credentials-sas": "Shared Access Signature", + "sas-key": "Chave SAS", + "sas-key-required": "A chave SAS é obrigatória.", + "hostname": "Nome do host", + "hostname-required": "O nome do host é obrigatório.", + "azure-ca-cert": "Arquivo de certificado CA", + "username-required": "O nome de usuário é obrigatório.", + "password-required": "A senha é obrigatória.", + "ca-cert": "Arquivo de certificado CA do servidor", + "private-key": "Arquivo de chave privada do cliente", + "cert": "Arquivo de certificado do cliente", + "no-file": "Nenhum arquivo selecionado.", + "drop-file": "Arraste um arquivo ou clique para selecionar um arquivo para upload.", + "private-key-password": "Senha da chave privada", + "use-system-smtp-settings": "Usar configurações SMTP do sistema", + "use-metadata-dynamic-interval": "Usar intervalo dinâmico", + "metadata-dynamic-interval-hint": "Os campos de entrada de início e fim do intervalo suportam templatização. O valor do template substituído deve ser definido em milissegundos. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "use-metadata-interval-patterns-hint": "Se selecionado, o nó de regra usa os padrões de intervalo de início e fim dos metadados ou dados da mensagem, assumindo que os intervalos estão em milissegundos.", + "use-message-alarm-data": "Usar dados de alarme da mensagem", + "overwrite-alarm-details": "Sobrescrever detalhes do alarme", + "use-alarm-severity-pattern": "Usar padrão de severidade de alarme", + "check-all-keys": "Verificar se todos os campos especificados estão presentes", + "check-all-keys-hint": "Se selecionado, verifica se todas as chaves especificadas estão presentes nos dados e metadados da mensagem.", + "check-relation-to-specific-entity": "Verificar relação com entidade específica", + "check-relation-to-specific-entity-tooltip": "Se habilitado, verifica a presença de relação com uma entidade específica; caso contrário, verifica a presença de relação com qualquer entidade. Em ambos os casos, a busca de relação é baseada na direção e no tipo configurados.", + "check-relation-hint": "Verifica a existência de relação com uma entidade específica ou com qualquer entidade com base na direção e no tipo de relação.", + "delete-relation-with-specific-entity": "Excluir relação com entidade específica", + "delete-relation-with-specific-entity-hint": "Se habilitado, excluirá a relação com apenas uma entidade específica. Caso contrário, a relação será removida de todas as entidades correspondentes.", + "delete-relation-hint": "Exclui a relação do originador da mensagem recebida para a entidade especificada ou lista de entidades com base na direção e no tipo.", + "remove-current-relations": "Remover relações atuais", + "remove-current-relations-hint": "Remove as relações atuais do originador da mensagem recebida com base na direção e no tipo.", + "change-originator-to-related-entity": "Alterar originador para entidade relacionada", + "change-originator-to-related-entity-hint": "Usado para processar a mensagem enviada como uma mensagem de outra entidade.", + "start-interval": "Início do intervalo", + "end-interval": "Fim do intervalo", + "start-interval-required": "O início do intervalo é obrigatório.", + "end-interval-required": "O fim do intervalo é obrigatório.", + "smtp-protocol": "Protocolo", + "smtp-host": "Host SMTP", + "smtp-host-required": "O host SMTP é obrigatório.", + "smtp-port": "Porta SMTP", + "smtp-port-required": "É necessário fornecer uma porta SMTP.", + "smtp-port-range": "A porta SMTP deve estar no intervalo de 1 a 65535.", + "timeout-msec": "Tempo Limite ms", + "min-timeout-msec-message": "Apenas 0 ms como valor mínimo é permitido.", + "enter-username": "Inserir nome de usuário", + "enter-password": "Inserir senha", + "enable-tls": "Habilitar TLS", + "tls-version": "Versão TLS", + "enable-proxy": "Ativar proxy", + "use-system-proxy-properties": "Usar propriedades de proxy do sistema", + "proxy-host": "Host do proxy", + "proxy-host-required": "O host do proxy é obrigatório.", + "proxy-port": "Porta do proxy", + "proxy-port-required": "A porta do proxy é obrigatória.", + "proxy-port-range": "A porta do proxy deve estar no intervalo de 1 a 65535.", + "proxy-user": "Usuário do proxy", + "proxy-password": "Senha do proxy", + "proxy-scheme": "Esquema do proxy", + "numbers-to-template": "Números de telefone para o template", + "numbers-to-template-required": "Números de telefone para o template são obrigatórios", + "numbers-to-template-hint": "Números de telefone separados por vírgula. Use ${metadataKey} para valor de metadados, $[messageKey] para valor do corpo da mensagem", + "sms-message-template": "Template da mensagem SMS", + "sms-message-template-required": "O template da mensagem SMS é obrigatório", + "use-system-sms-settings": "Usar configurações do provedor SMS do sistema", + "min-period-0-seconds-message": "Somente período mínimo de 0 segundo é permitido.", + "max-pending-messages": "Máximo de mensagens pendentes", + "max-pending-messages-required": "O máximo de mensagens pendentes é obrigatório.", + "max-pending-messages-range": "O máximo de mensagens pendentes deve estar no intervalo de 1 a 100000.", + "originator-types-filter": "Filtro de tipos de originador", + "interval-seconds": "Intervalo em segundos", + "interval-seconds-required": "O intervalo é obrigatório.", + "int-range": "O valor não deve exceder o limite máximo de inteiro (2147483648)", + "min-interval-seconds-message": "Somente intervalo mínimo de 1 segundo é permitido.", + "output-timeseries-key-prefix": "Prefixo da chave de série temporal de saída", + "output-timeseries-key-prefix-required": "O prefixo da chave de série temporal de saída é obrigatório.", + "separator-hint": "Pressione \"Enter\" para concluir a entrada do campo.", + "select-details": "Selecionar detalhes", + "entity-details-id": "Id", + "entity-details-title": "Título", + "entity-details-country": "País", + "entity-details-state": "Estado", + "entity-details-city": "Cidade", + "entity-details-zip": "CEP", + "entity-details-address": "Endereço", + "entity-details-address2": "Endereço2", + "entity-details-additional_info": "Informações adicionais", + "entity-details-phone": "Telefone", + "entity-details-email": "Email", + "email-sender": "Remetente do email", + "fields-to-check": "Campos a verificar", + "add-detail": "Adicionar detalhe", + "check-all-keys-tooltip": "Se habilitado, verifica a presença de todos os campos listados nos nomes de campos da mensagem e dos metadados dentro da mensagem recebida e seus metadados.", + "fields-to-check-hint": "Pressione \"Enter\" para concluir a entrada do nome do campo. Múltiplos nomes de campos são suportados.", + "entity-details-list-empty": "Pelo menos um detalhe deve ser selecionado.", + "alarm-status": "Status do alarme", + "alarm-required": "Pelo menos um status de alarme deve ser selecionado.", + "no-entity-details-matching": "Nenhum detalhe de entidade correspondente foi encontrado.", + "custom-table-name": "Nome da tabela personalizada", + "custom-table-name-required": "O nome da tabela é obrigatório", + "custom-table-hint": "A tabela deve ser criada no seu cluster Cassandra e seu nome deve começar com o prefixo 'cs_tb_' para evitar a inserção de dados nas tabelas comuns do TB. Insira o nome da tabela aqui sem o prefixo 'cs_tb_'.", + "message-field": "Campo da mensagem", + "message-field-required": "O campo da mensagem é obrigatório.", + "table-col": "Coluna da tabela", + "table-col-required": "A coluna da tabela é obrigatória.", + "latitude-field-name": "Nome do campo de latitude", + "longitude-field-name": "Nome do campo de longitude", + "latitude-field-name-required": "O nome do campo de latitude é obrigatório.", + "longitude-field-name-required": "O nome do campo de longitude é obrigatório.", + "fetch-perimeter-info-from-metadata": "Buscar informações de perímetro dos metadados", + "fetch-perimeter-info-from-metadata-tooltip": "Se o tipo de perímetro for definido como 'Polygon', o valor do campo de metadados '{{perimeterKeyName}}' será definido como a definição do perímetro sem análise adicional do valor. Caso contrário, se o tipo de perímetro for definido como 'Circle', o valor do campo de metadados '{{perimeterKeyName}}' será analisado para extrair os campos 'latitude', 'longitude', 'radius', 'radiusUnit' usados para a definição do perímetro circular.", + "perimeter-key-name": "Nome da chave do perímetro", + "perimeter-key-name-hint": "Nome do campo de metadados que inclui as informações do perímetro.", + "perimeter-key-name-required": "O nome da chave do perímetro é obrigatório.", + "perimeter-circle": "Círculo", + "perimeter-polygon": "Polígono", + "perimeter-type": "Tipo de perímetro", + "circle-center-latitude": "Latitude do centro", + "circle-center-latitude-required": "A latitude do centro é obrigatória.", + "circle-center-longitude": "Longitude do centro", + "circle-center-longitude-required": "A longitude do centro é obrigatória.", + "range-unit-meter": "Metro", + "range-unit-kilometer": "Quilômetro", + "range-unit-foot": "Pé", + "range-unit-mile": "Milha", + "range-unit-nautical-mile": "Milha náutica", + "range-units": "Unidades de alcance", + "range-units-required": "As unidades de alcance são obrigatórias.", + "range": "Alcance", + "range-required": "O alcance é obrigatório.", + "polygon-definition": "Definição do polígono", + "polygon-definition-required": "A definição do polígono é obrigatória.", + "polygon-definition-hint": "Use o seguinte formato para a definição manual do polígono: [[lat1,lon1],[lat2,lon2], ... ,[latN,lonN]].", + "min-inside-duration": "Duração mínima interna", + "min-inside-duration-value-required": "A duração mínima interna é obrigatória", + "min-inside-duration-time-unit": "Unidade de tempo da duração mínima interna", + "min-outside-duration": "Duração mínima externa", + "min-outside-duration-value-required": "A duração mínima externa é obrigatória", + "min-outside-duration-time-unit": "Unidade de tempo da duração mínima externa", + "tell-failure-if-absent": "Indicar falha", + "tell-failure-if-absent-hint": "Se pelo menos uma chave selecionada não existir, a mensagem de saída reportará \"Falha\".", + "get-latest-value-with-ts": "Buscar timestamp para os valores de telemetria mais recentes", + "get-latest-value-with-ts-hint": "Se selecionado, os valores de telemetria mais recentes também incluirão o timestamp, ex: \"temp\": \"{\"ts\":1574329385897, \"value\":42}\"", + "ignore-null-strings": "Ignorar strings nulas", + "ignore-null-strings-hint": "Se selecionado, o nó de regra ignorará campos de entidade com valor vazio.", + "add-metadata-key-values-as-kafka-headers": "Adicionar pares chave-valor dos metadados da mensagem aos cabeçalhos do registro Kafka", + "add-metadata-key-values-as-kafka-headers-hint": "Se selecionado, os pares chave-valor dos metadados da mensagem serão adicionados aos cabeçalhos dos registros de saída como arrays de bytes com codificação de charset predefinida.", + "charset-encoding": "Codificação de charset", + "charset-encoding-required": "A codificação de charset é obrigatória.", + "charset-us-ascii": "US-ASCII", + "charset-iso-8859-1": "ISO-8859-1", + "charset-utf-8": "UTF-8", + "charset-utf-16be": "UTF-16BE", + "charset-utf-16le": "UTF-16LE", + "charset-utf-16": "UTF-16", + "select-queue-hint": "O nome da fila pode ser selecionado em uma lista suspensa ou adicionar um nome personalizado.", + "device-profile-node-hint": "Útil se você tiver condições de duração ou de repetição para garantir a continuidade da avaliação do estado do alarme.", + "persist-alarm-rules": "Persistir estado das regras de alarme", + "persist-alarm-rules-hint": "Se habilitado, o nó de regra armazenará o estado do processamento no banco de dados.", + "fetch-alarm-rules": "Buscar estado das regras de alarme", + "fetch-alarm-rules-hint": "Se habilitado, o nó de regra restaurará o estado do processamento na inicialização e garantirá que os alarmes sejam acionados mesmo após reinicializações do servidor. Caso contrário, o estado será restaurado quando a primeira mensagem do dispositivo chegar.", + "input-value-key": "Chave do valor de entrada", + "input-value-key-required": "A chave do valor de entrada é obrigatória.", + "output-value-key": "Chave do valor de saída", + "output-value-key-required": "A chave do valor de saída é obrigatória.", + "number-of-digits-after-floating-point": "Número de dígitos após o ponto flutuante", + "number-of-digits-after-floating-point-range": "O número de dígitos após o ponto flutuante deve estar no intervalo de 0 a 15.", + "failure-if-delta-negative": "Indicar falha se o delta for negativo", + "failure-if-delta-negative-tooltip": "O nó de regra força a falha no processamento da mensagem se o valor delta for negativo.", + "use-caching": "Usar cache", + "use-caching-tooltip": "O nó de regra armazenará em cache o valor de \"{{inputValueKey}}\" que chega da mensagem recebida para melhorar o desempenho. Observe que o cache não será atualizado se você modificar o valor de \"{{inputValueKey}}\" em outro lugar.", + "add-time-difference-between-readings": "Adicionar a diferença de tempo entre leituras de \"{{inputValueKey}}\"", + "add-time-difference-between-readings-tooltip": "Se habilitado, o nó de regra adicionará o \"{{periodValueKey}}\" à mensagem de saída.", + "period-value-key": "Chave do valor de período", + "period-value-key-required": "A chave do valor de período é obrigatória.", + "general-pattern-hint": "Use ${metadataKey} para valor de metadados, $[messageKey] para valor do corpo da mensagem.", + "alarm-severity-pattern-hint": "Use ${metadataKey} para valor de metadados, $[messageKey] para valor do corpo da mensagem. A severidade do alarme deve ser do sistema (CRITICAL, MAJOR etc.)", + "output-node-name-hint": "O nome do nó de regra corresponde ao tipo de relação da mensagem de saída e é usado para encaminhar mensagens para outros nós de regra na cadeia de regras chamadora.", + "use-server-ts": "Usar timestamp do servidor", + "use-server-ts-hint": "Use o timestamp atual do servidor para dados de série temporal que não possuem um timestamp explícito. Isso ajuda a manter a ordenação correta ao processar mensagens de múltiplas fontes ou quando as mensagens chegam fora de sequência.", + "kv-map-pattern-hint": "Todos os campos de entrada suportam templatização. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "kv-map-single-pattern-hint": "O campo de entrada suporta templatização. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "shared-scope": "Escopo compartilhado", + "server-scope": "Escopo do servidor", + "client-scope": "Escopo do cliente", + "attribute-type": "Atributo", + "attribute-type-description": "Buscar valor do atributo do banco de dados", + "attribute-type-result-description": "Armazenar resultado como atributo de entidade no banco de dados", + "constant-type": "Constante", + "constant-type-description": "Definir valor constante", + "time-series-type": "Série temporal", + "time-series-type-description": "Buscar o valor de série temporal mais recente do banco de dados", + "time-series-type-result-description": "Armazenar resultado como série temporal de entidade no banco de dados", + "message-body-type": "Mensagem", + "message-body-type-description": "Buscar valor do argumento da mensagem recebida", + "message-body-type-result-description": "Adicionar resultado à mensagem de saída", + "message-metadata-type": "Metadados", + "message-metadata-type-description": "Buscar valor do argumento dos metadados da mensagem recebida", + "message-metadata-result-description": "Adicionar resultado aos metadados da mensagem de saída", + "argument-tile": "Argumentos", + "no-arguments-prompt": "Nenhum argumento configurado", + "result-title": "Resultado", + "functions-field-input": "Funções", + "no-option-found": "Nenhuma opção encontrada", + "argument-source-field-input": "Fonte", + "argument-source-field-input-required": "A fonte do argumento é obrigatória.", + "argument-key-field-input": "Chave", + "argument-key-field-input-required": "A chave do argumento é obrigatória.", + "constant-value-field-input": "Valor constante", + "constant-value-field-input-required": "O valor constante é obrigatório.", + "attribute-scope-field-input": "Escopo do atributo", + "attribute-scope-field-input-required": "O escopo do atributo é obrigatório.", + "default-value-field-input": "Valor padrão", + "type-field-input": "Tipo", + "type-field-input-required": "O tipo é obrigatório.", + "key-field-input": "Chave", + "add-entity-type": "Adicionar tipo de entidade", + "add-device-profile": "Adicionar perfil do dispositivo", + "key-field-input-required": "A chave é obrigatória.", + "number-floating-point-field-input": "Número de dígitos após o ponto flutuante", + "number-floating-point-field-input-hint": "Use 0 para converter o resultado em inteiro", + "add-to-message-field-input": "Adicionar à mensagem", + "add-to-metadata-field-input": "Adicionar aos metadados", + "custom-expression-field-input": "Expressão matemática", + "custom-expression-field-input-required": "A expressão matemática é obrigatória", + "custom-expression-field-input-hint": "Especifique uma expressão matemática para avaliar. A expressão padrão demonstra como transformar Fahrenheit em Celsius", + "retained-message": "Retida", + "attributes-mapping": "Mapeamento de atributos", + "latest-telemetry-mapping": "Mapeamento de telemetria mais recente", + "add-mapped-attribute-to": "Adicionar atributos mapeados a", + "add-mapped-latest-telemetry-to": "Adicionar telemetria mais recente mapeada a", + "add-mapped-fields-to": "Adicionar campos mapeados a", + "add-selected-details-to": "Adicionar detalhes selecionados a", + "clear-selected-types": "Limpar tipos selecionados", + "clear-selected-details": "Limpar detalhes selecionados", + "clear-selected-fields": "Limpar campos selecionados", + "clear-selected-keys": "Limpar chaves selecionadas", + "geofence-configuration": "Configuração de geofence", + "coordinate-field-names": "Nomes dos campos de coordenadas", + "coordinate-field-hint": "O nó de regra tenta recuperar os campos especificados da mensagem. Se não estiverem presentes, buscará nos metadados.", + "presence-monitoring-strategy": "Estratégia de monitoramento de presença", + "presence-monitoring-strategy-on-first-message": "Na primeira mensagem", + "presence-monitoring-strategy-on-each-message": "A cada mensagem", + "presence-monitoring-strategy-on-first-message-hint": "Reporta o status de presença 'Dentro' ou 'Fora' na primeira mensagem após a duração mínima configurada ter decorrido desde a última atualização do status de presença 'Entrou' ou 'Saiu'.", + "presence-monitoring-strategy-on-each-message-hint": "Reporta o status de presença 'Dentro' ou 'Fora' a cada mensagem após a atualização do status de presença 'Entrou' ou 'Saiu'.", + "fetch-credentials-to": "Buscar credenciais para", + "add-originator-attributes-to": "Adicionar atributos do originador a", + "originator-attributes": "Atributos do originador", + "fetch-latest-telemetry-with-timestamp": "Buscar telemetria mais recente com timestamp", + "fetch-latest-telemetry-with-timestamp-tooltip": "Se selecionado, os valores de telemetria mais recentes serão adicionados aos metadados de saída com o timestamp, ex: \"{{latestTsKeyName}}\": \"{\"ts\":1574329385897, \"value\":42}\"", + "tell-failure": "Indicar falha se algum dos atributos estiver ausente", + "tell-failure-tooltip": "Se pelo menos uma chave selecionada não existir, a mensagem de saída reportará \"Falha\".", + "created-time": "Hora de criação", + "chip-help": "Pressione 'Enter' para concluir a entrada de {{inputName}}. \nPressione 'Backspace' para excluir {{inputName}}. \nMúltiplos valores são suportados.", + "detail": "detalhe", + "field-name": "nome do campo", + "device-profile": "perfil do dispositivo", + "entity-type": "tipo de entidade", + "message-type": "tipo de mensagem", + "timeseries-key": "chave de série temporal", + "type": "Tipo", + "first-name": "Nome", + "last-name": "Sobrenome", + "label": "Rótulo", + "originator-fields-mapping": "Mapeamento de campos do originador", + "add-mapped-originator-fields-to": "Adicionar campos do originador mapeados a", + "fields": "Campos", + "skip-empty-fields": "Ignorar campos vazios", + "skip-empty-fields-tooltip": "Campos com valores vazios não serão adicionados à mensagem de saída/metadados de saída.", + "fetch-interval": "Intervalo de busca", + "fetch-strategy": "Estratégia de busca", + "fetch-timeseries-from-to": "Buscar série temporal de {{startInterval}} {{startIntervalTimeUnit}} atrás até {{endInterval}} {{endIntervalTimeUnit}} atrás.", + "fetch-timeseries-from-to-invalid": "Busca de série temporal inválida (\"Início do intervalo\" deve ser menor que \"Fim do intervalo\").", + "use-metadata-dynamic-interval-tooltip": "Se selecionado, o nó de regra usará intervalo dinâmico de início e fim baseado nos padrões da mensagem e dos metadados.", + "all-mode-hint": "Se o modo de busca \"All\" for selecionado, o nó de regra recuperará a telemetria do intervalo de busca com parâmetros de consulta configuráveis.", + "first-mode-hint": "Se o modo de busca \"First\" for selecionado, o nó de regra recuperará a telemetria mais próxima do início do intervalo de busca.", + "last-mode-hint": "Se o modo de busca \"Last\" for selecionado, o nó de regra recuperará a telemetria mais próxima do fim do intervalo de busca.", + "ascending": "Crescente", + "descending": "Decrescente", + "min": "Mín", + "max": "Máx", + "average": "Média", + "sum": "Soma", + "count": "Contagem", + "none": "Nenhum", + "last-level-relation-tooltip": "Se selecionado, o nó de regra pesquisará entidades relacionadas somente no nível definido no nível máximo de relação.", + "last-level-device-relation-tooltip": "Se selecionado, o nó de regra pesquisará dispositivos relacionados somente no nível definido no nível máximo de relação.", + "data-to-fetch": "Dados a buscar", + "mapping-of-customers": "Mapeamento de clientes", + "map-fields-required": "Todos os campos de mapeamento são obrigatórios.", + "attributes": "Atributos", + "related-device-attributes": "Atributos de dispositivos relacionados", + "add-selected-attributes-to": "Adicionar atributos selecionados a", + "device-profiles": "Perfis do dispositivo", + "mapping-of-tenant": "Mapeamento do tenant", + "add-attribute-key": "Adicionar chave de atributo", + "message-template": "Template da mensagem", + "message-template-required": "O template da mensagem é obrigatório", + "use-system-slack-settings": "Usar configurações do Slack do sistema", + "slack-api-token": "Token da API do Slack", + "slack-api-token-required": "O token da API do Slack é obrigatório", + "keys-mapping": "mapeamento de chaves", + "add-key": "Adicionar chave", + "recipients": "Destinatários", + "message-subject-and-content": "Assunto e conteúdo da mensagem", + "template-rules-hint": "Ambos os campos de entrada suportam templatização. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados da mensagem.", + "originator-customer-desc": "Usar o cliente do originador da mensagem recebida como novo originador.", + "originator-tenant-desc": "Usar o tenant atual como novo originador.", + "originator-related-entity-desc": "Usar entidade relacionada como novo originador. Busca baseada no tipo de relação e direção configurados.", + "originator-alarm-originator-desc": "Usar o originador do alarme como novo originador. Somente se o originador da mensagem recebida for uma entidade de alarme.", + "originator-entity-by-name-pattern-desc": "Usar entidade buscada do banco de dados como novo originador. Busca baseada no tipo de entidade e no padrão de nome especificado.", + "email-from-template-hint": "Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "recipients-block-main-hint": "Lista de endereços separados por vírgula. Todos os campos de entrada suportam templatização. Use $[messageKey] para extrair o valor da mensagem e ${metadataKey} para extrair o valor dos metadados.", + "forward-msg-default-rule-chain": "Encaminhar mensagem para a cadeia de regras padrão do originador", + "forward-msg-default-rule-chain-tooltip": "Se habilitado, a mensagem será encaminhada para a cadeia de regras padrão do originador, ou para a cadeia de regras da configuração, se o originador não tiver cadeia de regras padrão definida no perfil da entidade.", + "exclude-zero-deltas": "Excluir deltas zero da mensagem de saída", + "exclude-zero-deltas-hint": "Se habilitado, a chave de saída \"{{outputValueKey}}\" será adicionada à mensagem de saída somente se seu valor não for zero.", + "exclude-zero-deltas-time-difference-hint": "Se habilitado, as chaves de saída \"{{outputValueKey}}\" e \"{{periodValueKey}}\" serão adicionadas à mensagem de saída somente se o valor de \"{{outputValueKey}}\" não for zero.", + "search-direction-from": "Do originador para a entidade de destino", + "search-direction-to": "Da entidade de destino para o originador", + "del-relation-direction-from": "Do originador", + "del-relation-direction-to": "Para o originador", + "target-entity": "Entidade de destino", + "function-configuration": "Configuração da função", + "function-name": "Nome da função", + "function-name-required": "O nome da função é obrigatório.", + "qualifier": "Qualificador", + "qualifier-hint": "Se o qualificador não for especificado, o qualificador padrão \"$LATEST\" será usado.", + "aws-credentials": "Credenciais AWS", + "connection-timeout": "Tempo Limite de conexão", + "connection-timeout-required": "O tempo limite de conexão é obrigatório.", + "connection-timeout-min": "O tempo limite mínimo de conexão é 0.", + "connection-timeout-hint": "O tempo de espera em segundos ao estabelecer inicialmente uma conexão antes de desistir e expirar. Um valor de 0 significa infinito e não é recomendado.", + "request-timeout": "Tempo Limite de requisição", + "request-timeout-required": "O tempo limite de requisição é obrigatório", + "request-timeout-min": "O tempo limite mínimo de requisição é 0", + "request-timeout-hint": "O tempo de espera em segundos para a requisição ser concluída antes de desistir e expirar. Um valor de 0 significa infinito e não é recomendado.", + "units": "Unidades", + "tell-failure-aws-lambda": "Indicar falha se a execução da função AWS Lambda lançar exceção", + "tell-failure-aws-lambda-hint": "O nó de regra força a falha no processamento da mensagem se a execução da função AWS Lambda lançar exceção.", + "basic-mode": "Básico", + "advanced-mode": "Avançado", + "save-time-series": { + "processing-settings": "Configurações de processamento", + "processing-settings-hint": "Defina como as mensagens recebidas são processadas. As configurações básicas de processamento permitem selecionar estratégias pré-configuradas, enquanto as configurações avançadas permitem selecionar estratégias de processamento individuais para cada ação.", + "advanced-settings-hint": "Tenha cuidado ao configurar estratégias de processamento. Certas combinações podem levar a comportamentos inesperados.", + "strategy": "Estratégia", + "deduplication-interval": "Intervalo de deduplicação", + "deduplication-interval-required": "O intervalo de deduplicação é obrigatório", + "deduplication-interval-min-max-range": "O intervalo de deduplicação deve ser de pelo menos 1 segundo e no máximo 1 dia", + "strategy-type": { + "every-message": "A cada mensagem", + "skip": "Ignorar", + "deduplicate": "Deduplicar", + "web-sockets-only": "Somente WebSockets" + }, + "time-series": "Série temporal", + "latest": "Valores mais recentes", + "web-sockets": "WebSockets", + "calculated-fields-and-alarm-rules": "Campos calculados e regras de alarme" + }, + "save-attribute": { + "processing-settings": "Configurações de processamento", + "processing-settings-hint": "Defina como as mensagens recebidas são processadas. As configurações básicas de processamento permitem selecionar estratégias pré-configuradas, enquanto as configurações avançadas permitem selecionar estratégias de processamento individuais para cada ação.", + "advanced-settings-hint": "Tenha cuidado ao configurar estratégias de processamento. Certas combinações podem levar a comportamentos inesperados.", + "strategy": "Estratégia", + "deduplication-interval": "Intervalo de deduplicação", + "deduplication-interval-required": "O intervalo de deduplicação é obrigatório", + "deduplication-interval-min-max-range": "O intervalo de deduplicação deve ser de pelo menos 1 segundo e no máximo 1 dia", + "scope": "Escopo", + "strategy-type": { + "every-message": "A cada mensagem", + "skip": "Ignorar", + "deduplicate": "Deduplicar", + "web-sockets-only": "Somente WebSockets" + }, + "attributes": "Atributos" + }, + "key-val": { + "key": "Chave", + "value": "Valor", + "see-examples": "Ver exemplos.", + "remove-entry": "Remover entrada", + "remove-mapping-entry": "Remover entrada de mapeamento", + "add-mapping-entry": "Adicionar mapeamento", + "add-entry": "Adicionar entrada", + "copy-key-values-from": "Copiar pares chave-valor de", + "delete-key-values": "Excluir pares chave-valor", + "delete-key-values-from": "Excluir pares chave-valor de", + "at-least-one-key-error": "Pelo menos uma chave deve ser selecionada.", + "unique-key-value-pair-error": "'{{keyText}}' deve ser diferente de '{{valText}}'!" + }, + "mail-body-types": { + "plain-text": "Texto simples", + "html": "HTML", + "dynamic": "Dinâmico", + "use-body-type-template": "Usar template de tipo de corpo", + "plain-text-description": "Texto simples sem formatação especial ou estilização.", + "html-text-description": "Permite usar tags HTML para formatação, links e imagens no corpo do email.", + "dynamic-text-description": "Permite usar o tipo de corpo Texto Simples ou HTML dinamicamente com base no recurso de templatização.", + "after-template-evaluation-hint": "Após a avaliação do template, o valor deve ser true para HTML e false para texto simples." + }, + "ai": { + "ai-model": "Modelo de IA", + "model": "Modelo", + "ai-model-hint": "Selecione o modelo de IA pré-configurado para processar as requisições enviadas por este nó de regra, ou use \"Criar novo\" para configurar um novo.", + "prompt-settings": "Configurações de prompt", + "prompt-settings-hint": "O prompt de sistema opcional define o papel geral e as restrições da IA, enquanto o prompt do usuário define a tarefa específica a ser executada. Ambos os campos também suportam templatização.", + "system-prompt": "Prompt de sistema", + "system-prompt-max-length": "O prompt de sistema deve ter 500000 caracteres ou menos.", + "system-prompt-blank": "O prompt de sistema não deve estar em branco.", + "user-prompt": "Prompt do usuário", + "user-prompt-required": "O prompt do usuário é obrigatório.", + "user-prompt-max-length": "O prompt do usuário deve ter 500000 caracteres ou menos.", + "user-prompt-blank": "O prompt do usuário não deve estar em branco.", + "response-format": "Formato de resposta", + "response-text": "Texto", + "response-json": "JSON", + "response-json-schema": "JSON Schema", + "response-format-hint-TEXT": "Permite que o modelo gere texto arbitrário, que pode ou não ser um objeto JSON válido. Se a saída não for um objeto JSON válido, será automaticamente encapsulada em um objeto JSON sob a chave \"response\".", + "response-format-hint-JSON": "O modelo é obrigado a gerar uma resposta que seja um JSON válido. Se a saída não for um objeto JSON válido, será automaticamente encapsulada em um objeto JSON sob a chave \"response\".", + "response-format-hint-JSON_SCHEMA": "O modelo é obrigado a gerar um JSON que corresponda à estrutura específica e aos tipos de dados definidos no esquema fornecido. Se a saída não for um objeto JSON válido, será automaticamente encapsulada em um objeto JSON sob a chave \"response\".", + "response-json-schema-hint": "Embora qualquer JSON Schema válido possa ser inserido, este nó de regra suporta apenas um subconjunto limitado de seus recursos. Consulte a documentação do nó para obter detalhes.", + "response-json-schema-required": "O JSON Schema é obrigatório", + "advanced-settings": "Configurações avançadas", + "timeout": "Tempo Limite", + "timeout-hint": "Tempo máximo de espera por uma resposta \ndo modelo de IA antes de a requisição ser encerrada.", + "timeout-required": "O tempo limite é obrigatório", + "timeout-validation": "Deve ser de 1 segundo a 10 minutos.", + "force-acknowledgement": "Forçar confirmação", + "force-acknowledgement-hint": "Se habilitado, a mensagem recebida é confirmada imediatamente. A resposta do modelo é então enfileirada como uma nova mensagem separada.", + "ai-resources": "Recursos de IA" + } }, "timezone": { "timezone": "Fuso horário", "select-timezone": "Selecionar fuso horário", - "no-timezones-matching": "Nenhum fuso horário encontrado que coincida com '{{timezone}}'.", - "timezone-required": "O fuso horário é obrigatório." + "no-timezones-matching": "Nenhum fuso horário correspondente a '{{timezone}}' foi encontrado.", + "timezone-required": "Fuso horário é obrigatório.", + "browser-time": "Horário do navegador" }, "queue": { - "select_name": "Selecionar nome de fila", - "name": "Nome de Fila", - "name_required": "O nome de fila é obrigatório!" + "queue-name": "Fila", + "no-queues-found": "Nenhuma fila encontrada.", + "no-queues-matching": "Nenhuma fila correspondente a '{{queue}}' foi encontrada.", + "select-name": "Selecionar nome da fila", + "name": "Nome", + "name-required": "O nome da fila é obrigatório!", + "name-unique": "O nome da fila não é único!", + "name-pattern": "O nome da fila contém um caractere diferente de alfanuméricos ASCII, '.', '_' e '-'!", + "queue-required": "A fila é obrigatória!", + "topic-required": "O tópico da fila é obrigatório!", + "poll-interval-required": "O intervalo de polling é obrigatório!", + "poll-interval-min-value": "O valor do intervalo de polling não pode ser menor que 1", + "partitions-required": "As partições são obrigatórias!", + "partitions-min-value": "O valor das partições não pode ser menor que 1", + "pack-processing-timeout-required": "O tempo limite de processamento é obrigatório", + "pack-processing-timeout-min-value": "O valor do tempo limite de processamento não pode ser menor que 1", + "batch-size-required": "O tamanho do lote é obrigatório!", + "batch-size-min-value": "O valor do tamanho do lote não pode ser menor que 1", + "retries-required": "As tentativas são obrigatórias!", + "retries-min-value": "O valor das tentativas não pode ser negativo", + "failure-percentage-required": "O percentual de falhas é obrigatório!", + "failure-percentage-min-value": "O valor do percentual de falhas não pode ser menor que 0", + "failure-percentage-max-value": "O valor do percentual de falhas não pode ser maior que 100", + "pause-between-retries-required": "A pausa entre tentativas é obrigatória!", + "pause-between-retries-min-value": "O valor da pausa entre tentativas não pode ser menor que 1", + "max-pause-between-retries-required": "A pausa máxima entre tentativas é obrigatória!", + "max-pause-between-retries-min-value": "O valor da pausa máxima entre tentativas não pode ser menor que 1", + "submit-strategy-type-required": "O tipo de estratégia de envio é obrigatório!", + "processing-strategy-type-required": "O tipo de estratégia de processamento é obrigatório!", + "queues": "Filas", + "selected-queues": "{ count, plural, =1 {1 fila} other {# filas} } selecionada(s)", + "delete-queue-title": "Tem certeza de que deseja excluir a fila '{{queueName}}'?", + "delete-queues-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 fila} other {# filas} }?", + "delete-queue-text": "Atenção: após a confirmação, a fila e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-queues-text": "Após a confirmação, todas as filas selecionadas serão excluídas e não estarão mais acessíveis.", + "search": "Pesquisar fila", + "add": "Adicionar fila", + "details": "Detalhes da fila", + "topic": "Tópico", + "submit-settings": "Configurações de envio", + "submit-strategy": "Tipo de estratégia *", + "grouping-parameter": "Parâmetro de agrupamento", + "processing-settings": "Configurações de processamento de tentativas", + "processing-strategy": "Tipo de processamento *", + "retries-settings": "Configurações de tentativas", + "polling-settings": "Configurações de polling", + "batch-processing": "Processamento em lote", + "poll-interval": "Intervalo de polling", + "partitions": "Partições", + "immediate-processing": "Processamento imediato", + "consumer-per-partition": "Enviar polling de mensagens para cada consumidor", + "consumer-per-partition-hint": "Ativar consumidor(es) separado(s) por partição", + "duplicate-msg-to-all-partitions": "Duplicar mensagem para todas as partições", + "processing-timeout": "Processamento em, ms", + "batch-size": "Tamanho do lote", + "retries": "Número de tentativas (0 – ilimitado)", + "failure-percentage": "Mensagens de falha para ignorar tentativas, %", + "pause-between-retries": "Tentar novamente em, seg", + "max-pause-between-retries": "Tentativa adicional em, seg", + "delete": "Excluir fila", + "copyId": "Copiar ID da fila", + "idCopiedMessage": "O ID da fila foi copiado para a área de transferência", + "description": "Descrição", + "description-hint": "Este texto será exibido na descrição da fila em vez da estratégia selecionada", + "alt-description": "Estratégia de envio: {{submitStrategy}}, Estratégia de processamento: {{processingStrategy}}", + "custom-properties": "Propriedades personalizadas", + "custom-properties-hint": "Propriedades personalizadas de criação de fila (tópico), ex.: 'retention.ms:604800000;retention.bytes:1048576000'", + "strategies": { + "sequential-by-originator-label": "Sequencial por originador", + "sequential-by-originator-hint": "A nova mensagem para, por ex., o dispositivo A não é enviada até que a mensagem anterior para o dispositivo A seja confirmada", + "sequential-by-tenant-label": "Sequencial por tenant", + "sequential-by-tenant-hint": "A nova mensagem para, por ex., o tenant A não é enviada até que a mensagem anterior para o tenant A seja confirmada", + "sequential-label": "Sequencial", + "sequential-hint": "A nova mensagem não é enviada até que a mensagem anterior seja confirmada", + "burst-label": "Burst", + "burst-hint": "Todas as mensagens são enviadas para as cadeias de regras na ordem em que chegam", + "batch-label": "Lote", + "batch-hint": "O novo lote não é enviado até que o lote anterior seja confirmado", + "skip-all-failures-label": "Ignorar todas as falhas", + "skip-all-failures-hint": "Ignorar todas as falhas", + "skip-all-failures-and-timeouts-label": "Ignorar todas as falhas e tempos limite", + "skip-all-failures-and-timeouts-hint": "Ignorar todas as falhas e tempos limite", + "retry-all-label": "Tentar novamente todos", + "retry-all-hint": "Tentar novamente todas as mensagens do pacote de processamento", + "retry-failed-label": "Tentar novamente as com falha", + "retry-failed-hint": "Tentar novamente todas as mensagens com falha do pacote de processamento", + "retry-timeout-label": "Tentar novamente as com tempo limite", + "retry-timeout-hint": "Tentar novamente todas as mensagens com tempo limite do pacote de processamento", + "retry-failed-and-timeout-label": "Tentar novamente as com falha e tempo limite", + "retry-failed-and-timeout-hint": "Tentar novamente todas as mensagens com falha e tempo limite do pacote de processamento" + } + }, + "queue-statistics": { + "queue-statistics": "Estatísticas de fila", + "no-queue-statistics-matching": "Nenhuma estatística de fila correspondente a '{{entity}}' foi encontrada.", + "queue-statistics-required": "Estatísticas de fila são obrigatórias.", + "list-of-queue-statistics": "{ count, plural, =1 {Uma estatística de fila} other {Lista de # estatísticas de fila} }", + "selected-queue-statistics": "{ count, plural, =1 {1 estatística de fila} other {# estatísticas de fila} } selecionada(s)", + "no-queue-statistics-text": "Nenhuma estatística de fila encontrada", + "queue-statistics-starts-with": "Estatísticas de fila cujos nomes começam com '{{prefix}}'" + }, + "server-error": { + "general": "Erro geral do servidor", + "authentication": "Erro de autenticação", + "jwt-token-expired": "Token JWT expirado", + "tenant-trial-expired": "Período de avaliação do tenant expirado", + "credentials-expired": "Credenciais expiradas", + "permission-denied": "Permissão negada", + "invalid-arguments": "Argumentos inválidos", + "bad-request-params": "Parâmetros de requisição inválidos", + "item-not-found": "Item não encontrado", + "too-many-requests": "Muitas requisições", + "too-many-updates": "Muitas atualizações", + "entities-limit-exceeded": "Limite de entidades excedido" }, "tenant": { - "tenant": "Locatário", - "tenants": "Locatários", - "management": "Gerenciamento de locatários", - "add": "Adicionar Locatário", + "tenant": "Tenant", + "tenants": "Tenants", + "management": "Gerenciamento de tenants", + "add": "Adicionar tenant", "admins": "Administradores", - "manage-tenant-admins": "Gerenciar administradores de locatários", - "delete": "Excluir locatário", - "add-tenant-text": "Adicionar novo locatário", - "no-tenants-text": "Nenhum locatário encontrado", - "tenant-details": "Detalhes do locatário", - "delete-tenant-title": "Tem certeza de que deseja excluir o locatário '{{tenantTitle}}'?", - "delete-tenant-text": "Cuidado, após confirmar, não será possível recuperar o locatário e nenhum dado associado.", + "manage-tenant-admins": "Gerenciar administradores do tenant", + "delete": "Excluir tenant", + "add-tenant-text": "Adicionar novo tenant", + "no-tenants-text": "Nenhum tenant encontrado", + "tenant-details": "Detalhes do tenant", + "title-max-length": "O título deve ter menos de 256 caracteres", + "delete-tenant-title": "Tem certeza de que deseja excluir o tenant '{{tenantTitle}}'?", + "delete-tenant-text": "Atenção: após a confirmação, o tenant e todos os dados relacionados se tornarão irrecuperáveis.", "delete-tenants-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 tenant} other {# tenants} }?", "delete-tenants-action-title": "Excluir { count, plural, =1 {1 tenant} other {# tenants} }", - "delete-tenants-text": "Cuidado, após confirmar, todos os locatários selecionados serão removidos e não será possível recuperar nenhum dado associado.", + "delete-tenants-text": "Atenção: após a confirmação, todos os tenants selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", "title": "Título", "title-required": "O título é obrigatório.", "description": "Descrição", "details": "Detalhes", "events": "Eventos", - "copyId": "Copiar ID do locatário", - "idCopiedMessage": "O ID do locatário foi copiado para a área de transferência", - "select-tenant": "Selecionar locatário", - "no-tenants-matching": "Nenhum locatário encontrado que coincida com '{{entity}}'.", - "tenant-required": "O locatário é obrigatório", - "search": "Pesquisar locatários", + "copyId": "Copiar ID do tenant", + "idCopiedMessage": "O ID do tenant foi copiado para a área de transferência", + "select-tenant": "Selecionar tenant", + "no-tenants-matching": "Nenhum tenant correspondente a '{{entity}}' foi encontrado.", + "tenant-required": "Tenant é obrigatório", + "search": "Pesquisar tenants", "selected-tenants": "{ count, plural, =1 {1 tenant} other {# tenants} } selecionado(s)", - "isolated-tb-rule-engine": "Processamento em contêiner isolado do ThingsBoard Rule Engine", - "isolated-tb-rule-engine-details": "Exige microsserviço(s) separado(s) para cada locatário isolado" + "isolated-tb-rule-engine": "Usar filas isoladas do ThingsBoard Motor de regras", + "isolated-tb-rule-engine-details": "Cada tenant terá filas dedicadas do Motor de regras" + }, + "tenant-profile": { + "tenant-profile": "Perfil do tenant", + "tenant-profiles": "Perfis do tenant", + "add": "Adicionar perfil do tenant", + "add-profile": "Adicionar perfil", + "debug": "Depuração", + "edit": "Editar perfil do tenant", + "tenant-profile-details": "Detalhes do perfil do tenant", + "no-tenant-profiles-text": "Nenhum perfil do tenant encontrado", + "name-max-length": "O nome deve ter menos de 256 caracteres", + "search": "Pesquisar perfis do tenant", + "selected-tenant-profiles": "{ count, plural, =1 {1 perfil do tenant} other {# perfis do tenant} } selecionado(s)", + "no-tenant-profiles-matching": "Nenhum perfil do tenant correspondente a '{{entity}}' foi encontrado.", + "tenant-profile-required": "Perfil do tenant é obrigatório", + "idCopiedMessage": "O ID do perfil do tenant foi copiado para a área de transferência", + "set-default": "Definir perfil do tenant como padrão", + "delete": "Excluir perfil do tenant", + "copyId": "Copiar ID do perfil do tenant", + "name": "Nome", + "name-required": "O nome é obrigatório.", + "data": "Dados do perfil", + "profile-configuration": "Configuração do perfil", + "description": "Descrição", + "default": "Padrão", + "delete-tenant-profile-title": "Tem certeza de que deseja excluir o perfil do tenant '{{tenantProfileName}}'?", + "delete-tenant-profile-text": "Atenção: após a confirmação, o perfil do tenant e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-tenant-profiles-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 perfil do tenant} other {# perfis do tenant} }?", + "delete-tenant-profiles-text": "Atenção: após a confirmação, todos os perfis do tenant selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", + "set-default-tenant-profile-title": "Tem certeza de que deseja tornar o perfil do tenant '{{tenantProfileName}}' o padrão?", + "set-default-tenant-profile-text": "Após a confirmação, o perfil do tenant será marcado como padrão e será utilizado para novos tenants sem perfil especificado.", + "no-tenant-profiles-found": "Nenhum perfil do tenant encontrado.", + "create-new-tenant-profile": "Criar um novo!", + "create-tenant-profile": "Criar novo perfil do tenant", + "import": "Importar perfil do tenant", + "export": "Exportar perfil do tenant", + "export-failed-error": "Não foi possível exportar o perfil do tenant: {{error}}", + "tenant-profile-file": "Arquivo de perfil do tenant", + "invalid-tenant-profile-file-error": "Não foi possível importar o perfil do tenant: estrutura de dados do perfil do tenant inválida.", + "advanced-settings": "Configurações avançadas", + "entities": "Entidades", + "rule-engine": "Motor de regras", + "time-to-live": "Time-to-live", + "calculated-fields": "Campos calculados", + "alarms-and-notifications": "Alarmes e notificações", + "ota-files-in-bytes": "Arquivos", + "ws-title": "WS", + "unlimited": "(0 - ilimitado)", + "maximum-devices": "Número máximo de dispositivos", + "maximum-devices-required": "O número máximo de dispositivos é obrigatório.", + "maximum-devices-range": "O número máximo de dispositivos não pode ser negativo", + "maximum-assets": "Número máximo de ativos", + "maximum-assets-required": "O número máximo de ativos é obrigatório.", + "maximum-assets-range": "O número máximo de ativos não pode ser negativo", + "maximum-customers": "Número máximo de clientes", + "maximum-customers-required": "O número máximo de clientes é obrigatório.", + "maximum-customers-range": "O número máximo de clientes não pode ser negativo", + "maximum-users": "Número máximo de usuários", + "maximum-users-required": "O número máximo de usuários é obrigatório.", + "maximum-users-range": "O número máximo de usuários não pode ser negativo", + "maximum-dashboards": "Número máximo de dashboards", + "maximum-dashboards-required": "O número máximo de dashboards é obrigatório.", + "maximum-dashboards-range": "O número máximo de dashboards não pode ser negativo", + "maximum-edges": "Número máximo de edges", + "maximum-edges-required": "O número máximo de edges é obrigatório.", + "maximum-edges-range": "O número máximo de edges não pode ser negativo", + "maximum-rule-chains": "Número máximo de cadeias de regras", + "maximum-rule-chains-required": "O número máximo de cadeias de regras é obrigatório.", + "maximum-rule-chains-range": "O número máximo de cadeias de regras não pode ser negativo", + "maximum-resources-sum-data-size": "Tamanho total máximo dos arquivos de recursos (bytes)", + "maximum-resources-sum-data-size-required": "O tamanho total máximo dos arquivos de recursos é obrigatório.", + "maximum-resources-sum-data-size-range": "O tamanho total máximo dos arquivos de recursos não pode ser negativo", + "maximum-resource-size": "Tamanho máximo do arquivo de recurso (bytes)", + "maximum-resource-size-required": "O tamanho máximo do arquivo de recurso é obrigatório", + "maximum-resource-size-range": "O tamanho máximo do arquivo de recurso não pode ser negativo", + "maximum-ota-packages-sum-data-size": "Tamanho total máximo dos arquivos de pacotes OTA (bytes)", + "maximum-ota-package-sum-data-size-required": "O tamanho total máximo dos arquivos de pacotes OTA é obrigatório.", + "maximum-ota-package-sum-data-size-range": "O tamanho total máximo dos arquivos de pacotes OTA não pode ser negativo", + "maximum-debug-duration-min": "Duração máxima de depuração (min)", + "maximum-debug-duration-min-range": "A duração máxima de depuração não pode ser negativa", + "rest-requests-for-tenant": "Requisições REST para tenant", + "transport-tenant-telemetry-msg-rate-limit": "Mensagens de telemetria do tenant de transporte", + "transport-tenant-telemetry-data-points-rate-limit": "Pontos de dados de telemetria do tenant de transporte", + "transport-device-msg-rate-limit": "Mensagens de dispositivo de transporte", + "transport-device-telemetry-msg-rate-limit": "Mensagens de telemetria do dispositivo de transporte", + "transport-device-telemetry-data-points-rate-limit": "Pontos de dados de telemetria do dispositivo de transporte", + "transport-gateway-msg-rate-limit": "Mensagens de gateway de transporte", + "transport-gateway-telemetry-msg-rate-limit": "Mensagens de telemetria do gateway de transporte", + "transport-gateway-telemetry-data-points-rate-limit": "Pontos de dados de telemetria do gateway de transporte", + "transport-gateway-device-msg-rate-limit": "Mensagens de dispositivo do gateway de transporte", + "transport-gateway-device-telemetry-msg-rate-limit": "Mensagens de telemetria do dispositivo do gateway de transporte", + "transport-gateway-device-telemetry-data-points-rate-limit": "Pontos de dados de telemetria do dispositivo do gateway de transporte", + "tenant-entity-export-rate-limit": "Criação de versão de entidade", + "tenant-entity-import-rate-limit": "Carregamento de versão de entidade", + "tenant-notification-request-rate-limit": "Requisições de notificação", + "tenant-notification-requests-per-rule-rate-limit": "Requisições de notificação por regra de notificação", + "max-calculated-fields": "Número máximo de campos calculados por entidade", + "max-calculated-fields-range": "O número máximo de campos calculados por entidade não pode ser negativo", + "max-calculated-fields-required": "O número máximo de campos calculados por entidade é obrigatório", + "max-data-points-per-rolling-arg": "Número máximo de pontos de dados em argumentos de janela deslizante", + "max-data-points-per-rolling-arg-range": "O número máximo de pontos de dados em argumentos de janela deslizante não pode ser negativo", + "max-data-points-per-rolling-arg-required": "O número máximo de pontos de dados em argumentos de janela deslizante é obrigatório", + "max-arguments-per-cf": "Número máximo de argumentos por campo calculado", + "max-arguments-per-cf-range": "O número máximo de argumentos por campo calculado não pode ser negativo", + "max-arguments-per-cf-required": "O número máximo de argumentos por campo calculado é obrigatório", + "max-related-level-per-argument": "Nível máximo de relação por argumento de 'Entidades relacionadas'", + "max-related-level-per-argument-range": "O número máximo de nível de relação por argumento de 'Entidades relacionadas' não pode ser menor que '1'", + "max-related-level-per-argument-required": "O número máximo de nível de relação por argumento de 'Entidades relacionadas' é obrigatório", + "min-allowed-scheduled-update-interval": "Intervalo mínimo permitido de atualização para argumentos de 'Entidades relacionadas' (segundos)", + "min-allowed-scheduled-update-interval-range": "O número mínimo do intervalo mínimo permitido de atualização não pode ser negativo", + "min-allowed-deduplication-interval": "Intervalo mínimo permitido de deduplicação (segundos)", + "min-allowed-deduplication-interval-range": "O valor do intervalo mínimo permitido de deduplicação não pode ser negativo", + "min-allowed-deduplication-interval-required": "O intervalo mínimo permitido de deduplicação é obrigatório", + "intermediate-aggregation-interval": "Intervalo de agregação intermediária (segundos)", + "intermediate-aggregation-interval-range": "O valor do intervalo de agregação intermediária não pode ser menor que '1'", + "intermediate-aggregation-interval-required": "O intervalo de agregação intermediária é obrigatório", + "reevaluation-check-interval": "Intervalo de verificação de reavaliação (segundos)", + "reevaluation-check-interval-range": "O valor do intervalo de verificação de reavaliação não pode ser menor que '1'", + "reevaluation-check-interval-required": "O intervalo de verificação de reavaliação é obrigatório", + "alarms-reevaluation-interval": "Intervalo de reavaliação de alarmes (segundos)", + "alarms-reevaluation-interval-range": "O valor do intervalo de reavaliação de alarmes não pode ser menor que '1'", + "alarms-reevaluation-interval-required": "O intervalo de reavaliação de alarmes é obrigatório", + "min-allowed-aggregation-interval": "Intervalo mínimo permitido de agregação (segundos)", + "min-allowed-aggregation-interval-range": "O valor do intervalo mínimo permitido de agregação não pode ser negativo", + "min-allowed-aggregation-interval-required": "O intervalo mínimo permitido de agregação é obrigatório", + "min-allowed-scheduled-update-interval-required": "O número mínimo do intervalo mínimo permitido de atualização é obrigatório", + "max-state-size": "Tamanho máximo do estado em KB", + "max-state-size-range": "O tamanho máximo do estado em KB não pode ser negativo", + "max-state-size-required": "O tamanho máximo do estado em KB é obrigatório", + "max-value-argument-size": "Tamanho máximo do argumento de valor único em KB", + "max-value-argument-size-range": "O tamanho máximo do argumento de valor único em KB não pode ser negativo", + "max-value-argument-size-required": "O tamanho máximo do argumento de valor único em KB é obrigatório", + "max-transport-messages": "Número máximo de mensagens de transporte", + "max-transport-messages-required": "O número máximo de mensagens de transporte é obrigatório.", + "max-transport-messages-range": "O número máximo de mensagens de transporte não pode ser negativo", + "max-transport-data-points": "Número máximo de pontos de dados de transporte ", + "max-transport-data-points-required": "O número máximo de pontos de dados de transporte é obrigatório.", + "max-transport-data-points-range": "O número máximo de pontos de dados de transporte não pode ser negativo", + "max-r-e-executions": "Número máximo de execuções do Motor de regras", + "max-r-e-executions-required": "O número máximo de execuções do Motor de regras é obrigatório.", + "max-r-e-executions-range": "O número máximo de execuções do Motor de regras não pode ser negativo", + "max-j-s-executions": "Número máximo de execuções JavaScript ", + "max-j-s-executions-required": "O número máximo de execuções JavaScript é obrigatório.", + "max-j-s-executions-range": "O número máximo de execuções JavaScript não pode ser negativo", + "max-tbel-executions": "Número máximo de execuções TBEL ", + "max-tbel-executions-required": "O número máximo de execuções TBEL é obrigatório.", + "max-tbel-executions-range": "O número máximo de execuções TBEL não pode ser negativo", + "max-d-p-storage-days": "Número máximo de dias de armazenamento de pontos de dados", + "max-d-p-storage-days-required": "O número máximo de dias de armazenamento de pontos de dados é obrigatório.", + "max-d-p-storage-days-range": "O número máximo de dias de armazenamento de pontos de dados não pode ser negativo", + "default-storage-ttl-days": "Dias de TTL de armazenamento por padrão", + "default-storage-ttl-days-required": "Os dias de TTL de armazenamento por padrão são obrigatórios.", + "default-storage-ttl-days-range": "Os dias de TTL de armazenamento por padrão não podem ser negativos", + "alarms-ttl-days": "Dias de TTL de alarmes", + "alarms-ttl-days-required": "Os dias de TTL de alarmes são obrigatórios", + "alarms-ttl-days-days-range": "Os dias de TTL de alarmes não podem ser negativos", + "rpc-ttl-days": "Dias de TTL de RPC", + "rpc-ttl-days-required": "Os dias de TTL de RPC são obrigatórios", + "rpc-ttl-days-days-range": "Os dias de TTL de RPC não podem ser negativos", + "queue-stats-ttl-days": "Dias de TTL de estatísticas de fila", + "queue-stats-ttl-days-required": "Os dias de TTL de estatísticas de fila são obrigatórios", + "queue-stats-ttl-days-range": "Os dias de TTL de estatísticas de fila não podem ser negativos", + "rule-engine-exceptions-ttl-days": "Dias de TTL de exceções do Motor de regras", + "rule-engine-exceptions-ttl-days-required": "Os dias de TTL de exceções do Motor de regras são obrigatórios", + "rule-engine-exceptions-ttl-days-range": "Os dias de TTL de exceções do Motor de regras não podem ser negativos", + "max-rule-node-executions-per-message": "Número máximo de execuções de nó de regra por mensagem", + "max-rule-node-executions-per-message-required": "O número máximo de execuções de nó de regra por mensagem é obrigatório.", + "max-rule-node-executions-per-message-range": "O número máximo de execuções de nó de regra por mensagem não pode ser negativo", + "max-emails": "Número máximo de emails enviados", + "max-emails-required": "O número máximo de emails enviados é obrigatório.", + "max-emails-range": "O número máximo de emails enviados não pode ser negativo", + "sms-enabled": "SMS ativado", + "max-sms": "Número máximo de SMS enviados", + "max-sms-required": "O número máximo de SMS enviados é obrigatório.", + "max-sms-range": "O número máximo de SMS enviados não pode ser negativo", + "max-created-alarms": "Número máximo de alarmes criados", + "max-created-alarms-required": "O número máximo de alarmes criados é obrigatório.", + "max-created-alarms-range": "O número máximo de alarmes criados não pode ser negativo", + "no-queue": "Nenhuma fila configurada", + "add-queue": "Adicionar fila", + "queues-with-count": "Filas ({{count}})", + "tenant-rest-limits": "Requisições REST para tenant", + "customer-rest-limits": "Requisições REST para cliente", + "incorrect-pattern-for-rate-limits": "O formato são pares separados por vírgula de capacidade e período (em segundos) com dois-pontos entre eles, ex.: 100:1,2000:60", + "too-small-value-zero": "O valor deve ser maior que 0", + "too-small-value-one": "O valor deve ser maior que 1", + "queue-size-is-limited-by-system-configuration": "O tamanho da fila também é limitado pela configuração do sistema.", + "cassandra-write-tenant-core-limits-configuration": "Consultas de gravação Cassandra da API REST", + "cassandra-read-tenant-core-limits-configuration": "Consultas de leitura Cassandra da API REST e telemetria WS", + "cassandra-write-tenant-rule-engine-limits-configuration": "Consultas de gravação Cassandra de telemetria do Motor de regras", + "cassandra-read-tenant-rule-engine-limits-configuration": "Consultas de leitura Cassandra de telemetria do Motor de regras", + "ws-limit-max-sessions-per-tenant": "Número máximo de sessões por tenant", + "ws-limit-max-sessions-per-customer": "Número máximo de sessões por cliente", + "ws-limit-max-sessions-per-regular-user": "Número máximo de sessões por usuário regular", + "ws-limit-max-sessions-per-public-user": "Número máximo de sessões por usuário público", + "ws-limit-queue-per-session": "Tamanho máximo da fila de mensagens por sessão", + "ws-limit-max-subscriptions-per-tenant": "Número máximo de assinaturas por tenant", + "ws-limit-max-subscriptions-per-customer": "Número máximo de assinaturas por cliente", + "ws-limit-max-subscriptions-per-regular-user": "Número máximo de assinaturas por usuário regular", + "ws-limit-max-subscriptions-per-public-user": "Número máximo de assinaturas por usuário público", + "ws-limit-updates-per-session": "Atualizações WS por sessão", + "relation-search-entity-limit": "Limite de entidades na pesquisa de relações", + "relation-search-entity-limit-hint": "Limita o número de entidades resolvidas no último nível do caminho de relação. Aplica-se aos argumentos de 'Entidades relacionadas' e campos de Propagação.", + "relation-search-entity-limit-required": "Limite de entidades na pesquisa de relações", + "relation-search-entity-limit-range": "O limite de entidades na pesquisa de relações não pode ser menor que '1'", + "rate-limits": { + "add-limit": "Adicionar limite", + "and-also-less-than": "e também menor que", + "advanced-settings": "Configurações avançadas", + "edit-limit": "Editar limite", + "calculated-field-debug-event-rate-limit": "Eventos de depuração do campo calculado", + "edit-calculated-field-debug-event-rate-limit": "Editar limites de taxa de eventos de depuração do campo calculado", + "edit-transport-tenant-msg-title": "Editar limites de taxa de mensagens do tenant de transporte", + "edit-transport-tenant-telemetry-msg-title": "Editar limites de taxa de mensagens de telemetria do tenant de transporte", + "edit-transport-tenant-telemetry-data-points-title": "Editar limites de taxa de pontos de dados de telemetria do tenant de transporte", + "edit-transport-device-msg-title": "Editar limites de taxa de mensagens de dispositivo de transporte", + "edit-transport-device-telemetry-msg-title": "Editar limites de taxa de mensagens de telemetria do dispositivo de transporte", + "edit-transport-device-telemetry-data-points-title": "Editar limites de taxa de pontos de dados de telemetria do dispositivo de transporte", + "edit-transport-gateway-msg-title": "Editar limites de taxa de mensagens de gateway de transporte", + "edit-transport-gateway-telemetry-msg-title": "Editar limites de taxa de mensagens de telemetria do gateway de transporte", + "edit-transport-gateway-telemetry-data-points-title": "Editar limites de taxa de pontos de dados de telemetria do gateway de transporte", + "edit-transport-gateway-device-msg-title": "Editar limites de taxa de mensagens de dispositivo do gateway de transporte", + "edit-transport-gateway-device-telemetry-msg-title": "Editar limites de taxa de mensagens de telemetria do dispositivo do gateway de transporte", + "edit-transport-gateway-device-telemetry-data-points-title": "Editar limites de taxa de pontos de dados de telemetria do dispositivo do gateway de transporte", + "edit-tenant-rest-limits-title": "Editar limites de taxa de requisições REST para tenant", + "edit-customer-rest-limits-title": "Editar limites de taxa de requisições REST para cliente", + "edit-ws-limit-updates-per-session-title": "Editar limites de taxa de atualizações WS por sessão", + "edit-cassandra-write-tenant-core-limits-configuration": "Editar consultas de gravação Cassandra da API REST", + "edit-cassandra-read-tenant-core-limits-configuration": "Editar consultas de leitura Cassandra da API REST e telemetria WS", + "edit-cassandra-write-tenant-rule-engine-limits-configuration": "Editar consultas de gravação Cassandra de telemetria do Motor de regras", + "edit-cassandra-read-tenant-rule-engine-limits-configuration": "Editar consultas de leitura Cassandra de telemetria do Motor de regras", + "edit-tenant-entity-export-rate-limit-title": "Editar limites de taxa de criação de versão de entidade", + "edit-tenant-entity-import-rate-limit-title": "Editar limites de taxa de carregamento de versão de entidade", + "edit-tenant-notification-request-rate-limit-title": "Editar limites de taxa de requisições de notificação", + "edit-tenant-notification-requests-per-rule-rate-limit-title": "Editar limites de taxa de requisições de notificação por regra de notificação", + "edit-edge-events-rate-limit": "Editar limites de taxa de eventos de edge", + "edit-edge-events-per-edge-rate-limit": "Editar limites de taxa de eventos de edge por edge", + "edge-events-rate-limit": "Eventos de edge", + "edge-events-per-edge-rate-limit": "Eventos de edge por edge", + "edit-edge-uplink-messages-rate-limit": "Editar limites de taxa de mensagens uplink de edge", + "edit-edge-uplink-messages-per-edge-rate-limit": "Editar limites de taxa de mensagens uplink de edge por edge", + "edge-uplink-messages-rate-limit": "Mensagens uplink de edge", + "edge-uplink-messages-per-edge-rate-limit": "Mensagens uplink de edge por edge", + "messages-per": "mensagens por", + "not-set": "Não definido", + "number-of-messages": "Número de mensagens", + "number-of-messages-required": "O número de mensagens é obrigatório.", + "number-of-messages-min": "O valor mínimo é 1.", + "preview": "Visualizar", + "per-seconds": "Por segundos", + "per-seconds-required": "A taxa de tempo é obrigatória.", + "per-seconds-min": "O valor mínimo é 1.", + "per-seconds-duplicate": "Taxa de tempo duplicada. Cada intervalo de tempo deve ser único.", + "rate-limits": "Limites de taxa", + "remove-limit": "Remover limite", + "transport-tenant-msg": "Mensagens do tenant de transporte", + "transport-tenant-telemetry-msg": "Mensagens de telemetria do tenant de transporte", + "transport-tenant-telemetry-data-points": "Pontos de dados de telemetria do tenant de transporte", + "transport-device-msg": "Mensagens de dispositivo de transporte", + "transport-device-telemetry-msg": "Mensagens de telemetria do dispositivo de transporte", + "transport-device-telemetry-data-points": "Pontos de dados de telemetria do dispositivo de transporte", + "transport-gateway-msg": "Mensagens de gateway de transporte", + "transport-gateway-telemetry-msg": "Mensagens de telemetria do gateway de transporte", + "transport-gateway-telemetry-data-points": "Pontos de dados de telemetria do gateway de transporte", + "transport-gateway-device-msg": "Mensagens de dispositivo do gateway de transporte", + "transport-gateway-device-telemetry-msg": "Mensagens de telemetria do dispositivo do gateway de transporte", + "transport-gateway-device-telemetry-data-points": "Pontos de dados de telemetria do dispositivo do gateway de transporte", + "sec": "seg" + } }, "timeinterval": { - "seconds-interval": "{ seconds, plural, =1 {1 second} other {# seconds} }", - "minutes-interval": "{ minutes, plural, =1 {1 minute} other {# minutes} }", - "hours-interval": "{ hours, plural, =1 {1 hour} other {# hours} }", - "days-interval": "{ days, plural, =1 {1 day} other {# days} }", + "seconds-interval": "{ seconds, plural, =1 {1 segundo} other {# segundos} }", + "minutes-interval": "{ minutes, plural, =1 {1 minuto} other {# minutos} }", + "hours-interval": "{ hours, plural, =1 {1 hora} other {# horas} }", + "days-interval": "{ days, plural, =1 {1 dia} other {# dias} }", "days": "Dias", "hours": "Horas", "minutes": "Minutos", "seconds": "Segundos", - "advanced": "Avançado" + "advanced": "Avançado", + "custom": "Personalizado", + "predefined": { + "yesterday": "Ontem", + "day-before-yesterday": "Anteontem", + "this-day-last-week": "Este dia na semana passada", + "previous-week": "Semana anterior (Dom - Sáb)", + "previous-week-iso": "Semana anterior (Seg - Dom)", + "previous-month": "Mês anterior", + "previous-quarter": "Trimestre anterior", + "previous-half-year": "Semestre anterior", + "previous-year": "Ano anterior", + "current-hour": "Hora atual", + "current-day": "Dia atual", + "current-day-so-far": "Dia atual até agora", + "current-week": "Semana atual (Dom - Sáb)", + "current-week-iso": "Semana atual (Seg - Dom)", + "current-week-so-far": "Semana atual até agora (Dom - Sáb)", + "current-week-iso-so-far": "Semana atual até agora (Seg - Dom)", + "current-month": "Mês atual", + "current-month-so-far": "Mês atual até agora", + "current-quarter": "Trimestre atual", + "current-quarter-so-far": "Trimestre atual até agora", + "current-half-year": "Semestre atual", + "current-half-year-so-far": "Semestre atual até agora", + "current-year": "Ano atual", + "current-year-so-far": "Ano atual até agora" + }, + "type": { + "week": "Semana (Dom - Sáb)", + "week-iso": "Semana (Seg - Dom)", + "month": "Mês", + "quarter": "Trimestre" + } + }, + "timeunit": { + "milliseconds": "Milissegundos", + "seconds": "Segundos", + "minutes": "Minutos", + "hours": "Horas", + "days": "Dias" }, "timewindow": { - "days": "{ days, plural, =1 { day } other {# days } }", - "hours": "{ hours, plural, =0 { hour } =1 {1 hour } other {# hours } }", - "minutes": "{ minutes, plural, =0 { minute } =1 {1 minute } other {# minutes } }", - "seconds": "{ seconds, plural, =0 { second } =1 {1 second } other {# seconds } }", + "timewindow": "Janela de tempo", + "timewindow-settings": "Configurações da janela de tempo", + "years": "{ years, plural, =1 {1 ano } other {# anos } }", + "years-short": "{{ years }}y", + "months": "{ months, plural, =1 {1 mês } other {# meses } }", + "months-short": "{{ months }}M", + "weeks": "{ weeks, plural, =1 {1 semana } other {# semanas } }", + "weeks-short": "{{ weeks }}w", + "days": "{ days, plural, =1 {1 dia } other {# dias } }", + "days-short": "{{ days }}d", + "hours": "{ hours, plural, =0 { hora } =1 {1 hora } other {# horas } }", + "hr": "{{ hr }} hr", + "hr-short": "{{ hr }}h", + "minutes": "{ minutes, plural, =0 { minuto } =1 {1 minuto } other {# minutos } }", + "min": "{{ min }} min", + "min-short": "{{ min }}m", + "seconds": "{ seconds, plural, =0 { segundo } =1 {1 segundo } other {# segundos } }", + "sec": "{{ sec }} sec", + "sec-short": "{{ sec }}s", + "short": { + "years": "{ years, plural, =1 {1 ano } other {# anos } }", + "days": "{ days, plural, =1 {1 dia } other {# dias } }", + "hours": "{ hours, plural, =1 {1 hora } other {# horas } }", + "minutes": "{{minutes}} min ", + "seconds": "{{seconds}} sec " + }, "realtime": "Tempo real", "history": "Histórico", - "last-prefix": "último", + "last-prefix": "últimos", "period": "de {{ startTime }} até {{ endTime }}", "edit": "Editar janela de tempo", "date-range": "Intervalo de datas", - "last": "Última", + "for-all-time": "Para todo o período", + "last": "Último", "time-period": "Período de tempo", - "hide": "Ocultar" + "hide": "Ocultar", + "interval": "Intervalo", + "just-now": "Agora mesmo", + "just-now-lower": "agora mesmo", + "ago": "atrás", + "style": "Estilo da janela de tempo", + "icon": "Ícone", + "icon-position": "Posição do ícone", + "icon-position-left": "Esquerda", + "icon-position-right": "Direita", + "font": "Fonte", + "color": "Cor", + "displayTypePrefix": "Exibir prefixo Tempo real/Histórico", + "preview": "Pré-visualização", + "relative": "Relativo", + "range": "Intervalo", + "hide-timewindow-section": "Ocultar seção de janela de tempo dos usuários finais", + "hide-last-interval": "Ocultar último intervalo dos usuários finais", + "hide-relative-interval": "Ocultar intervalo relativo dos usuários finais", + "hide-fixed-interval": "Ocultar intervalo fixo dos usuários finais", + "hide-aggregation": "Ocultar agregação dos usuários finais", + "hide-group-interval": "Ocultar intervalo de agrupamento dos usuários finais", + "hide-max-values": "Ocultar valores máximos dos usuários finais", + "hide-timezone": "Ocultar fuso horário dos usuários finais", + "disable-custom-interval": "Desativar seleção de intervalo personalizado", + "edit-aggregation-functions-list": "Editar lista de funções de agregação", + "edit-aggregation-functions-list-hint": "É possível especificar a lista de opções disponíveis.", + "allowed-aggregation-functions": "Funções de agregação permitidas", + "edit-intervals-list": "Editar lista de intervalos", + "allowed-agg-intervals": "Intervalos de agrupamento", + "default-agg-interval": "Intervalo de agrupamento padrão", + "edit-intervals-list-hint": "É possível especificar a lista de opções de intervalo disponíveis.", + "edit-grouping-intervals-list-hint": "É possível configurar a lista de intervalos de agrupamento e o intervalo de agrupamento padrão.", + "all": "Todos", + "save-current-settings-as-default": "Salvar configurações atuais como janela de tempo padrão", + "hide-option-from-end-users": "Ocultar opção dos usuários finais" + }, + "tooltip": { + "trigger": "Acionador", + "trigger-point": "Ponto", + "trigger-axis": "Eixo", + "label": "Rótulo", + "value": "Valor", + "date": "Data", + "show-date-time-interval": "Exibir intervalo de data e hora", + "show-date-time-interval-hint": "Exibir intervalo de data e hora conforme a agregação de dados.", + "hide-zero-tooltip-values": "Ocultar valores zero", + "show-stack-total": "Exibir valor total no modo empilhado", + "background-color": "Cor de fundo", + "background-blur": "Desfoque de fundo" + }, + "unit": { + "set-unit-conversion": "Definir conversão de unidade", + "unit-settings": { + "unit-settings": "Configurações de unidade", + "source-unit": "Unidade de origem", + "source-unit-hint": "Esta é a unidade do valor armazenado. A unidade a partir da qual você está convertendo. Insira o símbolo usado pelos dados de origem (ex.: m, km, ft, in).", + "target-metric-unit": "Unidade métrica de destino", + "target-metric-unit-hint": "Escolha para qual unidade métrica (SI) deseja converter o valor de origem (ex.: cm, mm, km).", + "target-imperial-unit": "Unidade imperial de destino", + "target-imperial-unit-hint": "Escolha para qual unidade imperial deseja converter o valor de origem (ex.: in, ft, yd).", + "target-hybrid-unit": "Unidade híbrida de destino", + "target-hybrid-unit-hint": "Escolha para qual unidade híbrida deseja converter o valor de origem (ex.: cm, in, km). Unidades híbridas combinam unidades métricas ou imperiais.", + "enable-unit-conversion": "Ativar conversão de unidade", + "enable-unit-conversion-hint": "Ative para habilitar a conversão. Quando desativado, o valor de origem será transmitido sem alterações. Desativado se houver apenas uma unidade no grupo de medição correspondente (ex.: fluxo luminoso, AQI)." + }, + "unit-system": "Sistema de unidades", + "unit-system-type": { + "AUTO": "Automático", + "METRIC": "Métrico", + "IMPERIAL": "Imperial", + "HYBRID": "Híbrido" + }, + "measures": { + "absorbed-dose-rate": "Taxa de dose absorvida", + "acceleration": "Aceleração", + "acidity": "Acidez", + "air-quality-index": "Índice de qualidade do ar", + "amount-of-substance": "Quantidade de substância", + "angle": "Ângulo", + "angular-acceleration": "Aceleração angular", + "area": "Área", + "area-density": "Densidade de área", + "capacitance": "Capacitância", + "catalytic-activity": "Atividade catalítica", + "catalytic-concentration": "Concentração catalítica", + "charge": "Carga", + "current-density": "Densidade de corrente", + "data-transfer-rate": "Taxa de transferência de dados", + "density": "Densidade", + "digital": "Digital", + "dimension-ratio": "Razão dimensional", + "dynamic-viscosity": "Viscosidade dinâmica", + "earthquake-magnitude": "Magnitude de terremoto", + "electric-charge-density": "Densidade de carga elétrica", + "electric-current": "Corrente elétrica", + "electric-dipole-moment": "Momento de dipolo elétrico", + "electric-field-strength": "Intensidade do campo elétrico", + "electric-flux": "Fluxo elétrico", + "electric-permittivity": "Permissividade elétrica", + "electric-polarizability": "Polarizabilidade elétrica", + "electrical-conductance": "Condutância elétrica", + "electrical-conductivity": "Condutividade elétrica", + "energy": "Energia", + "energy-density": "Densidade de energia", + "force": "Força", + "frequency": "Frequência", + "fuel-efficiency": "Eficiência de combustível", + "heat-capacity": "Capacidade térmica", + "illuminance": "Iluminância", + "inductance": "Indutância", + "kinematic-viscosity": "Viscosidade cinemática", + "length": "Comprimento", + "light-exposure": "Exposição à luz", + "linear-charge-density": "Densidade linear de carga", + "logarithmic-ratio": "Razão logarítmica", + "luminous-efficacy": "Eficácia luminosa", + "luminous-flux": "Fluxo luminoso", + "luminous-intensity": "Intensidade luminosa", + "magnetic-field-gradient": "Gradiente do campo magnético", + "magnetic-flux": "Fluxo magnético", + "magnetic-flux-density": "Densidade de fluxo magnético", + "magnetic-moment": "Momento magnético", + "magnetic-permeability": "Permeabilidade magnética", + "mass": "Massa", + "mass-fraction": "Fração mássica", + "molar-concentration": "Concentração molar", + "molar-energy": "Energia molar", + "molar-heat-capacity": "Capacidade térmica molar", + "molar-mass": "Massa molar", + "number-concentration": "Concentração numérica", + "parts-per-million": "Partes por milhão", + "power": "Potência", + "power-density": "Densidade de potência", + "pressure": "Pressão", + "radiance": "Radiância", + "radiant-intensity": "Intensidade radiante", + "radiation-dose": "Dose de radiação", + "radioactive-decay": "Decaimento radioativo", + "radioactivity": "Radioatividade", + "radioactivity-concentration": "Concentração de radioatividade", + "reciprocal-length": "Comprimento recíproco", + "resistance": "Resistência", + "reynolds-number": "Número de Reynolds", + "signal-level": "Nível de sinal", + "solid-angle": "Ângulo sólido", + "specific-energy": "Energia específica", + "specific-heat-capacity": "Capacidade térmica específica", + "specific-humidity": "Umidade específica", + "specific-volume": "Volume específico", + "speed": "Velocidade", + "surface-charge-density": "Densidade de carga superficial", + "surface-tension": "Tensão superficial", + "temperature": "Temperatura", + "thermal-conductivity": "Condutividade térmica", + "time": "Tempo", + "torque": "Torque", + "turbidity": "Turbidez", + "voltage": "Tensão", + "volume": "Volume", + "volume-flow": "Vazão volumétrica" + }, + "millimeter": "Milímetro", + "centimeter": "Centímetro", + "decimeter": "Decímetro", + "angstrom": "Angstrom", + "nanometer": "Nanômetro", + "micrometer": "Micrômetro", + "meter": "Metro", + "kilometer": "Quilômetro", + "inch": "Polegada", + "foot": "Pé", + "foot-us": "Pé (levantamento EUA)", + "yard": "Jarda", + "mile": "Milha", + "nautical-mile": "Milha náutica", + "astronomical-unit": "Unidade astronômica", + "reciprocal-metre": "Metro recíproco", + "meter-per-meter": "Metro por metro", + "steradian": "Esterradiano", + "thou": "Thou", + "barleycorn": "Barleycorn", + "hand": "Hand", + "chain": "Chain", + "furlong": "Furlong", + "league": "League", + "fathom": "Fathom", + "cable": "Cable", + "link": "Link", + "rod": "Rod", + "nanogram": "Nanograma", + "microgram": "Micrograma", + "milligram": "Miligrama", + "gram": "Grama", + "kilogram": "Quilograma", + "tonne": "Tonelada", + "ounce": "Onça", + "pound": "Libra", + "stone": "Stone", + "hundredweight-count": "Hundredweight", + "short-tons": "Toneladas curtas", + "dalton": "Dalton", + "grain": "Grão", + "drachm": "Dracma", + "quarter": "Quarter", + "slug": "Slug", + "carat": "Quilate", + "cubic-millimeter": "Milímetro cúbico", + "cubic-centimeter": "Centímetro cúbico", + "cubic-meter": "Metro cúbico", + "cubic-kilometer": "Quilômetro cúbico", + "microliter": "Microlitro", + "milliliter": "Mililitro", + "liter": "Litro", + "hectoliter": "Hectolitro", + "cubic-inch": "Polegada cúbica", + "cubic-foot": "Pé cúbico", + "cubic-yard": "Jarda cúbica", + "fluid-ounce": "Onça fluida", + "fluid-ounce-per-second": "Onça fluida por segundo", + "pint": "Pinta", + "quart": "Quart", + "gallon": "Galão", + "oil-barrels": "Barril de petróleo", + "cubic-meter-per-kilogram": "Metro cúbico por quilograma", + "gill": "Gill", + "hogshead": "Hogshead", + "teaspoon": "Colher de chá", + "tablespoon": "Colher de sopa", + "cup": "Xícara", + "celsius": "Celsius", + "kelvin": "Kelvin", + "rankine": "Rankine", + "fahrenheit": "Fahrenheit", + "percent": "Porcentagem", + "meter-per-second": "Metro por segundo", + "kilometer-per-hour": "Quilômetro por hora", + "foot-per-second": "Pé por segundo", + "foot-per-minute": "Pé por minuto", + "mile-per-hour": "Milha por hora", + "knot": "Nó", + "inch-per-second": "Polegada por segundo", + "inch-per-hour": "Polegada por hora", + "millimeters-per-minute": "Milímetros por minuto", + "meter-per-minute": "Metro por minuto", + "kilometer-per-hour-squared": "Quilômetro por hora ao quadrado", + "foot-per-second-squared": "Pé por segundo ao quadrado", + "pascal": "Pascal", + "kilopascal": "Quilopascal", + "megapascal": "Megapascal", + "gigapascal": "Gigapascal", + "millibar": "Milibar", + "bar": "Bar", + "kilobar": "Quilobar", + "newton": "Newton", + "newton-meter": "Newton-metro", + "foot-pounds": "Pé-libra", + "inch-pounds": "Polegada-libra", + "newton-per-meter": "Newton por metro", + "atmospheres": "Atmosferas", + "pounds-per-square-inch": "Libras por polegada quadrada", + "kilopound-per-square-inch": "Quilolibra por polegada quadrada", + "torr": "Torr", + "inches-of-mercury": "Polegadas de mercúrio", + "pascal-per-square-meter": "Pascal por metro quadrado", + "pound-per-square-inch": "Libra por polegada quadrada", + "newton-per-square-meter": "Newton por metro quadrado", + "kilogram-force-per-square-meter": "Quilograma-força por metro quadrado", + "pascal-per-square-centimeter": "Pascal por centímetro quadrado", + "ton-force-per-square-inch": "Tonelada-força por polegada quadrada", + "kilonewton-per-square-meter": "Quilonewton por metro quadrado", + "newton-per-square-millimeter": "Newton por milímetro quadrado", + "microjoule": "Microjoule", + "millijoule": "Milijoule", + "joule": "Joule", + "kilojoule": "Quilojoule", + "megajoule": "Megajoule", + "gigajoule": "Gigajoule", + "watt-hour": "Watt-hora", + "watt-minute": "Watt-minuto", + "kilowatt-hour": "Quilowatt-hora", + "milliwatt-hour": "Miliwatt-hora", + "megawatt-hour": "Megawatt-hora", + "gigawatt-hour": "Gigawatt-hora", + "electron-volts": "Elétron-volts", + "joules-per-coulomb": "Joules por coulomb", + "british-thermal-unit": "Unidades térmicas britânicas", + "thousand-british-thermal-unit": "Mil unidades térmicas britânicas", + "million-british-thermal-unit": "Milhão de unidades térmicas britânicas", + "foot-pound": "Pé-libra", + "calorie": "Caloria", + "small-calorie": "Caloria pequena", + "kilocalorie": "Quilocaloria", + "joule-per-kelvin": "Joule por kelvin", + "joule-per-kilogram-kelvin": "Joule por quilograma-kelvin", + "joule-per-kilogram": "Joule por quilograma", + "watt-per-meter-kelvin": "Watt por metro-kelvin", + "joule-per-cubic-meter": "Joule por metro cúbico", + "therm": "Therm", + "electric-dipole-moment": "Momento de dipolo elétrico", + "magnetic-dipole-moment": "Momento de dipolo magnético", + "debye": "Debye", + "coulomb-per-square-meter-per-volt": "Coulomb por metro quadrado por volt", + "milliwatt": "Miliwatt", + "microwatt": "Microwatt", + "watt": "Watt", + "kilowatt": "Quilowatt", + "megawatt": "Megawatt", + "gigawatt": "Gigawatt", + "metric-horsepower": "Cavalo-vapor métrico", + "milliwatt-per-square-centimeter": "Miliwatts por centímetro quadrado", + "watt-per-square-centimeter": "Watts por centímetro quadrado", + "kilowatt-per-square-centimeter": "Quilowatts por centímetro quadrado", + "milliwatt-per-square-meter": "Miliwatts por metro quadrado", + "watt-per-square-meter": "Watts por metro quadrado", + "kilowatt-per-square-meter": "Quilowatts por metro quadrado", + "watt-per-square-inch": "Watts por polegada quadrada", + "kilowatt-per-square-inch": "Quilowatts por polegada quadrada", + "horsepower": "Cavalo-vapor", + "btu-per-hour": "Unidades térmicas britânicas por hora", + "btu-per-second": "Unidades térmicas britânicas por segundo", + "btu-per-day": "Unidades térmicas britânicas por dia", + "mbtu-per-hour": "Mil unidades térmicas britânicas por hora", + "mbtu-per-second": "Mil unidades térmicas britânicas por segundo", + "mbtu-per-day": "Mil unidades térmicas britânicas por dia", + "mmbtu-per-hour": "Milhão de unidades térmicas britânicas por hora", + "mmbtu-per-second": "Milhão de unidades térmicas britânicas por segundo", + "mmbtu-per-day": "Milhão de unidades térmicas britânicas por dia", + "foot-pound-per-second": "Pé-libra por segundo", + "coulomb": "Coulomb", + "millicoulomb": "Millicoulombs", + "microcoulomb": "Microcoulomb", + "nanocoulomb": "Nanocoulomb", + "picocoulomb": "Picocoulomb", + "coulomb-per-meter": "Coulomb por metro", + "coulomb-per-cubic-meter": "Coulomb por metro cúbico", + "coulomb-per-square-meter": "Coulomb por metro quadrado", + "square-millimeter": "Milímetro quadrado", + "square-centimeter": "Centímetro quadrado", + "square-meter": "Metro quadrado", + "hectare": "Hectare", + "square-kilometer": "Quilômetro quadrado", + "square-inch": "Polegada quadrada", + "square-foot": "Pé quadrado", + "square-yard": "Jarda quadrada", + "acre": "Acre", + "square-mile": "Milha quadrada", + "are": "Are", + "barn": "Barn", + "circular-inch": "Polegada circular", + "milliampere-hour": "Miliampere-hora", + "ampere-hours": "Ampere-horas", + "kiloampere-hours": "Quiloampere-horas", + "nanoampere": "Nanoampere", + "picoampere": "Picoampere", + "microampere": "Microampere", + "milliampere": "Miliampere", + "ampere": "Ampere", + "kiloampere": "Quiloampere", + "megaampere": "Megaampere", + "gigaampere": "Gigaampere", + "microampere-per-square-centimeter": "Microampere por centímetro quadrado", + "ampere-per-square-meter": "Ampere por metro quadrado", + "ampere-per-meter": "Ampere por metro", + "oersted": "Oersted", + "bohr-magneton": "Magneton de Bohr", + "ampere-meter-squared": "Ampere-metro quadrado", + "nanovolt": "Nanovolt", + "picovolt": "Picovolt", + "millivolt": "Milivolts", + "microvolt": "Microvolts", + "volt": "Volt", + "kilovolt": "Quilovolt", + "megavolt": "Megavolt", + "dbmV": "Decibel-volt", + "dbm": "Decibel-miliwatts", + "volt-meter": "Volt-metro", + "kilovolt-meter": "Quilovolt-metro", + "megavolt-meter": "Megavolt-metro", + "microvolt-meter": "Microvolt-metro", + "millivolt-meter": "Milivolt-metro", + "nanovolt-meter": "Nanovolt-metro", + "ohm": "Ohm", + "microohm": "Micro-ohm", + "milliohm": "Mili-ohm", + "kilohm": "Quilohm", + "megohm": "Megohm", + "gigohm": "Gigohm", + "millihertz": "Milihertz", + "hertz": "Hertz", + "kilohertz": "Quilohertz", + "megahertz": "Megahertz", + "gigahertz": "Gigahertz", + "terahertz": "Terahertz", + "rpm": "Rotações por minuto", + "candela-per-square-meter": "Candela por metro quadrado", + "candela": "Candela", + "lumen": "Lúmen", + "lux": "Lux", + "foot-candle": "Pé-candela", + "lumen-per-square-meter": "Lúmen por metro quadrado", + "lux-second": "Lux-segundo", + "lumen-second": "Lúmen-segundo", + "lumens-per-watt": "Lúmens por watt", + "mole": "Mol", + "nanomole": "Nanomol", + "micromole": "Micromol", + "millimole": "Milimol", + "kilomole": "Quilomol", + "mole-per-cubic-meter": "Mol por metro cúbico", + "rssi": "Indicador de intensidade do sinal recebido", + "ppm": "Partes por milhão", + "ppb": "Partes por bilhão", + "micrograms-per-cubic-meter": "Microgramas por metro cúbico", + "aqi": "Aqi", + "gram-per-cubic-meter": "Grama por metro cúbico", + "gram-per-kilogram": "Umidade específica", + "millimeters-per-second": "Milímetros por segundo", + "neper": "Neper", + "bel": "Bel", + "decibel": "Decibel", + "meters-per-second-squared": "Metros por segundo ao quadrado", + "becquerel": "Becquerel", + "curie": "Curie", + "gray": "Gray", + "sievert": "Sievert", + "roentgen": "Roentgen", + "cps": "Contagens por segundo", + "rad": "Rad", + "rem": "Rem", + "dps": "Desintegrações por segundo", + "rutherford": "Rutherford", + "coulombs-per-kilogram": "Coulombs por quilograma", + "becquerels-per-cubic-meter": "Becquerels por metro cúbico", + "curies-per-liter": "Curies por litro", + "becquerels-per-second": "Becquerels por segundo", + "curies-per-second": "Curies por segundo", + "gy-per-second": "Gray por segundo", + "watt-per-steradian": "Watt por esterradiano", + "watt-per-square-metre-steradian": "Watt por metro quadrado-esterradiano", + "ph-level": "Nível de pH", + "turbidity": "Turbidez", + "mg-per-liter": "Miligramas por litro", + "microsiemens-per-centimeter": "Microsiemens por centímetro", + "millisiemens-per-meter": "Milisiemens por metro", + "siemens-per-meter": "Siemens por metro", + "kilogram-per-cubic-meter": "Quilograma por metro cúbico", + "gram-per-cubic-centimeter": "Grama por centímetro cúbico", + "kilogram-per-square-meter": "Quilograma por metro quadrado", + "milligram-per-milliliter": "Miligrama por mililitro", + "milligram-per-cubic-meter": "Miligrama por metro cúbico", + "pound-per-cubic-foot": "Libra por pé cúbico", + "ounces-per-cubic-inch": "Onças por polegada cúbica", + "tons-per-cubic-yard": "Toneladas por jarda cúbica", + "particle-density": "Densidade de partículas", + "kilometers-per-liter": "Quilômetros por litro", + "miles-per-gallon": "Milhas por galão", + "liters-per-100-km": "Litros por 100 km", + "gallons-per-mile": "Galões por milha", + "liters-per-hour": "Litros por hora", + "gallons-per-hour": "Galões por hora", + "beats-per-minute": "Batimentos por minuto", + "millimeters-of-mercury": "Milímetros de mercúrio", + "milligrams-per-deciliter": "Miligramas por decilitro", + "g-force": "Força g", + "kilonewton": "Quilonewton", + "kilogram-force": "Quilograma-força", + "pound-force": "Libra-força", + "kilopound-force": "Quilolibra-força", + "dyne": "Dina", + "poundal": "Poundal", + "kip": "Kip", + "gal": "Gal", + "gravity": "Gravidade", + "hectopascal": "Hectopascal", + "atmosphere": "Atmosfera", + "millibars": "Milibares", + "inch-of-mercury": "Uma polegada de mercúrio", + "richter-scale": "Escala Richter", + "nanosecond": "Nanossegundo", + "microsecond": "Microssegundo", + "millisecond": "Milissegundo", + "second": "Segundo", + "minute": "Minuto", + "hour": "Hora", + "day": "Dia", + "week": "Semana", + "month": "Mês", + "year": "Ano", + "cubic-foot-per-minute": "Pé cúbico por minuto", + "cubic-meters-per-hour": "Metros cúbicos por hora", + "cubic-meters-per-second": "Metros cúbicos por segundo", + "liter-per-second": "Litro por segundo", + "liter-per-minute": "Litro por minuto", + "gallons-per-minute": "Galões por minuto", + "cubic-foot-per-second": "Pé cúbico por segundo", + "milliliters-per-minute": "Mililitros por minuto", + "cubic-decimeter-per-second": "Decímetro cúbico por segundo", + "bit": "Bit", + "byte": "Byte", + "kilobyte": "Kilobyte", + "megabyte": "Megabyte", + "gigabyte": "Gigabyte", + "terabyte": "Terabyte", + "petabyte": "Petabyte", + "exabyte": "Exabyte", + "zettabyte": "Zettabyte", + "yottabyte": "Yottabyte", + "bit-per-second": "Bit por segundo", + "kilobit-per-second": "Kilobit por segundo", + "megabit-per-second": "Megabit por segundo", + "gigabit-per-second": "Gigabit por segundo", + "terabit-per-second": "Terabit por segundo", + "byte-per-second": "Byte por segundo", + "kilobyte-per-second": "Kilobyte por segundo", + "megabyte-per-second": "Megabyte por segundo", + "gigabyte-per-second": "Gigabyte por segundo", + "degree": "Grau", + "radian": "Radiano", + "gradian": "Gradiano", + "arcminute": "Arcminuto", + "arcsecond": "Arcssegundo", + "milliradian": "Miliradiano", + "revolution": "Revolução", + "siemens": "Siemens", + "millisiemens": "Milisiemens", + "microsiemens": "Microsiemens", + "kilosiemens": "Quilosiemens", + "megasiemens": "Megasiemens", + "gigasiemens": "Gigasiemens", + "farad": "Farad", + "millifarad": "Milifarad", + "microfarad": "Microfarad", + "nanofarad": "Nanofarad", + "picofarad": "Picofarad", + "kilofarad": "Quilofarad", + "megafarad": "Megafarad", + "gigafarad": "Gigafarad", + "terfarad": "Terafarad", + "farad-per-meter": "Farad por metro", + "tesla": "Tesla", + "gauss": "Gauss", + "kilogauss": "Quilogauss", + "millitesla": "Militesla", + "microtesla": "Microtesla", + "nanotesla": "Nanotesla", + "kilotesla": "Quilotesla", + "megatesla": "Megatesla", + "millitesla-square-meters": "Militesla metros quadrados", + "gamma": "Gamma", + "lambda": "Lambda", + "square-meter-per-second": "Metro quadrado por segundo", + "square-centimeter-per-second": "Centímetro quadrado por segundo", + "stoke": "Stoke", + "centistokes": "Centistokes", + "square-foot-per-second": "Pé quadrado por segundo", + "square-inch-per-second": "Polegada quadrada por segundo", + "pascal-second": "Pascal-segundo", + "centipoise": "Centipoise", + "poise": "Poise", + "reynolds": "Reynolds", + "pound-per-foot-hour": "Libra por pé-hora", + "newton-second-per-square-meter": "Newton-segundo por metro quadrado", + "dyne-second-per-square-centimeter": "Dina-segundo por centímetro quadrado", + "kilogram-per-meter-second": "Quilograma por metro-segundo", + "tesla-square-meters": "Tesla metros quadrados", + "maxwell": "Maxwell", + "tesla-per-meter": "Tesla por metro", + "gauss-per-centimeter": "Gauss por centímetro", + "weber": "Weber", + "microweber": "Microweber", + "milliweber": "Miliweber", + "gauss-square-centimeter": "Gauss-centímetro quadrado", + "kilogauss-square-centimeter": "Quilogauss-centímetro quadrado", + "henry": "Henry", + "millihenry": "Milihenry", + "microhenry": "Microhenry", + "nanohenry": "Nanohenry", + "henry-per-meter": "Henry por metro", + "tesla-meter-per-ampere": "Tesla-metro por ampere", + "gauss-per-oersted": "Gauss por oersted", + "kilogram-per-mole": "Quilograma por mol", + "gram-per-mole": "Grama por mol", + "milligram-per-mole": "Miligrama por mol", + "joule-per-mole": "Joule por mol", + "joule-per-mole-kelvin": "Joule por mol-kelvin", + "millivolts-per-meter": "Milivolts por metro", + "volts-per-meter": "Volts por metro", + "kilovolts-per-meter": "Quilovolts por metro", + "radian-per-second": "Radiano por segundo", + "radian-per-second-squared": "Radiano por segundo ao quadrado", + "revolutions-per-minute-per-second": "Aceleração angular", + "deg-per-second": "Graus por segundo", + "rotation-per-minute": "Rotação por minuto", + "degrees-brix": "Graus Brix", + "katal": "Katal", + "katal-per-cubic-metre": "Katal por metro cúbico", + "paris-inch": "Polegada de Paris" }, "user": { "user": "Usuário", "users": "Usuários", "customer-users": "Usuários do cliente", - "tenant-admins": "Administradores de locatários", + "tenant-admins": "Administradores do tenant", "sys-admin": "Administrador do sistema", - "tenant-admin": "Administrador de locatários", + "tenant-admin": "Administrador do tenant", "customer": "Cliente", "anonymous": "Anônimo", "add": "Adicionar usuário", @@ -1637,221 +7150,998 @@ "no-users-text": "Nenhum usuário encontrado", "user-details": "Detalhes do usuário", "delete-user-title": "Tem certeza de que deseja excluir o usuário '{{userEmail}}'?", - "delete-user-text": "Cuidado, após confirmar, não será possível recuperar o usuário e nenhum dado associado.", - "delete-users-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 user} other {# users} }?", - "delete-users-action-title": "Excluir { count, plural, =1 {1 user} other {# users} }", - "delete-users-text": "Cuidado, após confirmar, todos os usuários selecionados serão removidos e não será possível recuperar nenhum dado associado.", - "activation-email-sent-message": "O e-mail de ativação foi enviado corretamente!", + "delete-user-text": "Atenção: após a confirmação, o usuário e todos os dados relacionados serão irrecuperáveis.", + "delete-users-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 usuário} other {# usuários} }?", + "delete-users-action-title": "Excluir { count, plural, =1 {1 usuário} other {# usuários} }", + "delete-users-text": "Atenção: após a confirmação, todos os usuários selecionados serão removidos e todos os dados relacionados serão irrecuperáveis.", + "activation-email-sent-message": "Email de ativação enviado com sucesso!", "resend-activation": "Reenviar ativação", - "email": "E-mail", - "email-required": "O e-mail é obrigatório.", - "invalid-email-format": "Formato de e-mail inválido.", + "email": "Email", + "email-required": "Email é obrigatório.", + "invalid-email-format": "Formato de email inválido.", "first-name": "Nome", "last-name": "Sobrenome", "description": "Descrição", "default-dashboard": "Dashboard padrão", - "always-fullscreen": "Sempre tela inteira", + "always-fullscreen": "Sempre em tela cheia", "select-user": "Selecionar usuário", - "no-users-matching": "Nenhum usuário encontrado que coincida com '{{entity}}'.", - "user-required": "O usuário é obrigatório", + "no-users-matching": "Nenhum usuário correspondente a '{{entity}}' foi encontrado.", + "user-required": "Usuário é obrigatório", "activation-method": "Método de ativação", "display-activation-link": "Exibir link de ativação", - "send-activation-mail": "Enviar e-mail de ativação", - "activation-link": "Link de ativação de usuário", - "activation-link-text": "Para ativar o usuário, utilize o seguinte link de ativação:", + "send-activation-mail": "Enviar email de ativação", + "activation-link": "Link de ativação do usuário", + "activation-link-text": "Para ativar o usuário, utilize o seguinte link de ativação (expira em {{activationLinkTtl}}) :", "copy-activation-link": "Copiar link de ativação", - "activation-link-copied-message": "O link de ativação foi copiado para a área de transferência", + "activation-link-copied-message": "Link de ativação do usuário copiado para a área de transferência", "details": "Detalhes", - "login-as-tenant-admin": "Login como administrador de locatários", - "login-as-customer-user": "Login como usuário do cliente", + "login-as-tenant-admin": "Entrar como administrador do tenant", + "login-as-customer-user": "Entrar como usuário do cliente", "search": "Pesquisar usuários", - "selected-users": "{ count, plural, =1 {1 user} other {# users} } selecionado(s)", - "disable-account": "Desativar conta de usuário", - "enable-account": "Ativar conta de usuário", - "enable-account-message": "A conta de usuário foi ativada corretamente!", - "disable-account-message": "A conta de usuário foi desativada corretamente!" + "selected-users": "{ count, plural, =1 {1 usuário} other {# usuários} } selecionado(s)", + "disable-account": "Desativar conta do usuário", + "enable-account": "Ativar conta do usuário", + "enable-account-message": "Conta do usuário ativada com sucesso!", + "disable-account-message": "Conta do usuário desativada com sucesso!", + "copyId": "Copiar ID do usuário", + "idCopiedMessage": "ID do usuário copiado para a área de transferência", + "user-list": "Lista de usuários", + "user-list-required": "Lista de usuários é obrigatória" }, "value": { "type": "Tipo de valor", - "string": "Cadeia de caracteres", - "string-value": "Valor da cadeia de caracteres", - "string-value-required": "O valor da cadeia de caracteres é obrigatório", - "integer": "Número inteiro", - "integer-value": "Valor do número inteiro", - "integer-value-required": "O valor do número inteiro é obrigatório", - "invalid-integer-value": "Valor de número inteiro inválido", - "double": "Duplo", - "double-value": "Valor duplo", - "double-value-required": "O valor duplo de caracteres é obrigatório", - "boolean": "Booliano", - "boolean-value": "Valor booliano", + "string": "String", + "string-value": "Valor string", + "string-value-required": "Valor string é obrigatório", + "integer": "Inteiro", + "integer-value": "Valor inteiro", + "integer-value-required": "Valor inteiro é obrigatório", + "invalid-integer-value": "Valor inteiro inválido", + "double": "Double", + "double-value": "Valor double", + "double-value-required": "Valor double é obrigatório", + "boolean": "Booleano", + "boolean-value": "Valor booleano", "false": "Falso", "true": "Verdadeiro", - "long": "Longo", + "long": "Long", "json": "JSON", - "json-value": "Valor de JSON", - "json-value-invalid": "O formato do valor de JSON é inválido", - "json-value-required": "O valor de JSON é obrigatório." + "json-value": "Valor JSON", + "json-value-invalid": "O valor JSON possui um formato inválido", + "json-value-required": "Valor JSON é obrigatório." + }, + "version-control": { + "version-control": "Controle de versão", + "management": "Gerenciamento de controle de versão", + "search": "Pesquisar versões", + "branch": "Branch", + "default": "Padrão", + "select-branch": "Selecionar branch", + "branch-required": "Branch é obrigatório", + "create-entity-version": "Criar versão da entidade", + "version-name": "Nome da versão", + "version-name-required": "Nome da versão é obrigatório", + "author": "Autor", + "export-relations": "Exportar relações", + "export-attributes": "Exportar atributos", + "export-credentials": "Exportar credenciais", + "export-calculated-fields": "Exportar campos calculados \ne regras de alarme", + "export-alarm-rules": "Exportar regras de alarme", + "entity-versions": "Versões da entidade", + "versions": "Versões", + "created-time": "Hora de criação", + "version-id": "ID da versão", + "no-entity-versions-text": "Nenhuma versão de entidade encontrada", + "no-versions-text": "Nenhuma versão encontrada", + "copy-full-version-id": "Copiar ID completo da versão", + "create-version": "Criar versão", + "creating-version": "Criando versão... Aguarde", + "nothing-to-commit": "Nenhuma alteração para confirmar", + "restore-version": "Restaurar versão", + "restore-entity-from-version": "Restaurar entidade da versão '{{versionName}}'", + "restoring-entity-version": "Restaurando versão da entidade... Aguarde", + "load-relations": "Carregar relações", + "load-attributes": "Carregar atributos", + "load-credentials": "Carregar credenciais", + "load-calculated-fields": "Carregar campos calculados e regras de alarme", + "load-alarm-rules": "Carregar regras de alarme", + "compare-with-current": "Comparar com o atual", + "diff-entity-with-version": "Diferença com a versão da entidade '{{versionName}}'", + "previous-difference": "Diferença anterior", + "next-difference": "Próxima diferença", + "current": "Atual", + "differences": "{ count, plural, =1 {1 diferença} other {# diferenças} }", + "create-entities-version": "Criar versão das entidades", + "default-sync-strategy": "Estratégia de sincronização padrão", + "sync-strategy-merge": "Mesclar", + "sync-strategy-overwrite": "Sobrescrever", + "entities-to-export": "Entidades para exportar", + "entities-to-restore": "Entidades para restaurar", + "sync-strategy": "Estratégia de sincronização", + "all-entities": "Todas as entidades", + "no-entities-to-export-prompt": "Especifique as entidades a exportar", + "no-entities-to-restore-prompt": "Especifique as entidades a restaurar", + "add-entity-type": "Adicionar tipo de entidade", + "remove-all": "Remover todos", + "version-create-result": "{ added, plural, =0 {Nenhuma entidade} =1 {1 entidade} other {# entidades} } adicionada(s).
{ modified, plural, =0 {Nenhuma entidade} =1 {1 entidade} other {# entidades} } modificada(s).
{ removed, plural, =0 {Nenhuma entidade} =1 {1 entidade} other {# entidades} } removida(s).", + "remove-other-entities": "Remover outras entidades", + "find-existing-entity-by-name": "Localizar entidade existente por nome", + "restore-entities-from-version": "Restaurar entidades da versão '{{versionName}}'", + "restoring-entities-from-version": "Restaurando entidades... Aguarde", + "no-entities-restored": "Nenhuma entidade restaurada", + "created": "{{created}} criado(s)", + "updated": "{{updated}} atualizado(s)", + "deleted": "{{deleted}} excluído(s)", + "remove-other-entities-confirm-text": "Atenção! Isso irá excluir permanentemente todas as entidades atuais
não presentes na versão que deseja restaurar.

Digite \"remove other entities\" para confirmar.", + "auto-commit-to-branch": "auto-commit para o branch {{ branch }}", + "default-create-entity-version-name": "Atualização de {{entityName}}", + "sync-strategy-merge-hint": "Cria ou atualiza as entidades selecionadas no repositório. Todas as demais entidades do repositório não são modificadas.", + "sync-strategy-overwrite-hint": "Cria ou atualiza as entidades selecionadas no repositório. Todas as demais entidades do repositório são excluídas.", + "device-credentials-conflict": "Não foi possível carregar o dispositivo com ID externo {{entityId}}
pois as mesmas credenciais já estão presentes no banco de dados para outro dispositivo.
Considere desativar a configuração carregar credenciais no formulário de restauração.", + "missing-referenced-entity": "Não foi possível carregar o {{sourceEntityTypeName}} com ID externo {{sourceEntityId}}
porque ele faz referência a um {{targetEntityTypeName}} ausente com ID {{targetEntityId}}.", + "runtime-failed": "Falha: {{message}}", + "auto-commit-settings-read-only-hint": "O recurso de auto-commit não funciona com a opção somente leitura habilitada nas configurações do repositório.", + "rollback-on-error": "Reverter em caso de erro", + "rollback-on-error-hint": "Se houver um grande número de entidades para restaurar, considere desativar esta opção para aumentar o desempenho.\n Observe que, se ocorrer um erro durante o carregamento da versão, as entidades já persistidas (com relações, atributos, etc.) permanecerão como estão" }, "widget": { "widget-library": "Biblioteca de widgets", - "widget-bundle": "Pacote de widgets", - "select-widgets-bundle": "Selecionar pacote de widgets", + "widget-bundle": "Conjunto de widgets", + "all-bundles": "Todos os conjuntos", + "select-widgets-bundle": "Selecionar conjunto de widgets", + "widgets": "Widgets", + "all-widgets": "Todos os widgets", + "widget": "Widget", + "select-widget": "Selecionar widget", + "no-widgets-matching": "Nenhum widget correspondente a '{{entity}}' foi encontrado.", + "no-widgets": "Nenhum widget ainda", + "no-widgets-text": "Nenhum widget encontrado", "management": "Gerenciamento de widgets", - "editor": "Editor de widgets", - "widget-type-not-found": "Problema ao carregar configuração de widget.
Provavelmente\n o tipo de widget foi removido.", + "editor": "Editor de widget", + "confirm-to-exit-editor-html": "Você tem configurações de widget não salvas.
Tem certeza de que deseja sair desta página?", + "widget-type-not-found": "Problema ao carregar a configuração do widget.
Provavelmente o tipo de widget\n associado foi removido.", "widget-type-load-error": "O widget não foi carregado devido aos seguintes erros:", "remove": "Remover widget", + "delete": "Excluir widget", "edit": "Editar widget", "remove-widget-title": "Tem certeza de que deseja remover o widget '{{widgetTitle}}'?", - "remove-widget-text": "Após confirmar, não será possível recuperar o widget e nenhum dado associado.", - "timeseries": "Intervalos de tempo", + "remove-widget-text": "Após a confirmação, o widget e todos os dados relacionados se tornarão irrecuperáveis.", + "replace-reference-with-widget-copy": "Substituir referência por cópia do widget", + "timeseries": "Série temporal", "search-data": "Pesquisar dados", "no-data-found": "Nenhum dado encontrado", "latest": "Últimos valores", "rpc": "Widget de controle", "alarm": "Widget de alarme", "static": "Widget estático", + "timeseries-short": "séries", + "latest-short": "últimos", + "rpc-short": "controle", + "alarm-short": "alarme", + "static-short": "estático", "select-widget-type": "Selecionar tipo de widget", - "missing-widget-title-error": "É necessário especificar o título de widget!", + "missing-widget-title-error": "O título do widget deve ser especificado!", "widget-saved": "Widget salvo", - "unable-to-save-widget-error": "Impossível salvar widget! O widget tem erros!", + "unable-to-save-widget-error": "Não foi possível salvar o widget! O widget contém erros!", "save": "Salvar widget", "saveAs": "Salvar widget como", - "save-widget-type-as": "Salvar tipo de widget como", - "save-widget-type-as-text": "Inserir novo título de widget e/ou selecionar pacote de widgets alvo", - "toggle-fullscreen": "Alternar tela inteira", + "move": "Mover widget", + "save-widget-as": "Salvar widget como", + "save-widget-as-text": "Insira o novo título do widget", + "toggle-fullscreen": "Alternar tela cheia", "run": "Executar widget", - "title": "Título de widget", + "widget-title": "Título do widget", + "title": "Título", "title-required": "O título do widget é obrigatório.", + "title-max-length": "O título deve ter menos de 256 caracteres", + "system": "Sistema", "type": "Tipo de widget", "resources": "Recursos", - "resource-url": "URL de JavaScript/CSS", + "resource-url": "URL JavaScript/CSS", + "resource-is-extension": "É extensão", "remove-resource": "Remover recurso", "add-resource": "Adicionar recurso", "html": "HTML", - "tidy": "Tidy", + "tidy": "Organizar", "css": "CSS", - "settings-schema": "Esquema de configuração", - "datakey-settings-schema": "Esquema de configuração de chave de dados", + "settings-form": "Formulário de configurações", + "data-key-settings-form": "Formulário de configurações de chave de dados", + "latest-data-key-settings-form": "Formulário de configurações de chave de dados mais recentes", + "widget-settings": "Configurações do widget", + "description": "Descrição", + "tags": "Tags", + "image-preview": "Pré-visualização de imagem", + "settings-form-selector": "Seletor de formulário de configurações", + "data-key-settings-form-selector": "Seletor de formulário de configurações de chave de dados", + "latest-data-key-settings-form-selector": "Seletor de formulário de configurações de chave de dados mais recentes", + "all": "Todos", + "actual": "Atual", + "scada": "Símbolo SCADA", + "deprecated": "Obsoleto", + "has-basic-mode": "Possui modo básico", + "basic-mode-form-selector": "Seletor de formulário do modo básico", + "basic-mode": "Básico", + "advanced-mode": "Avançado", "javascript": "Javascript", "js": "JS", - "add-widget-type": "Adicionar novo tipo de widget", - "widget-template-load-failed-error": "Erro ao carregar modelo de widget!", + "delete-widget-title": "Tem certeza de que deseja excluir o widget '{{widgetName}}'?", + "delete-widget-text": "Após a confirmação, o widget e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-widgets-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 widget} other {# widgets} }?", + "delete-widgets-text": "Atenção: após a confirmação, todos os widgets selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-widget": "Excluir widget", + "widget-template-load-failed-error": "Falha ao carregar o template do widget!", + "details": "Detalhes", + "widget-details": "Detalhes do widget", "add": "Adicionar widget", - "undo": "Desfazer alterações de widget", + "add-existing-widget": "Adicionar widget existente", + "add-new-widget": "Adicionar novo widget", + "search-widgets": "Pesquisar widgets", + "selected-widgets": "{ count, plural, =1 {1 widget} other {# widgets} } selecionado(s)", + "undo": "Desfazer alterações do widget", "export": "Exportar widget", - "no-data": "Nenhum dado para exibição em widget", - "data-overflow": "O widget exibe {{count}} de um total de {{total}} entidades", - "alarm-data-overflow": "O widget exibe alarmes para (no máximo) {{allowedEntities}} entidades de um total de {{totalEntities}} entidades" + "export-prompt": "Incorporar imagens e recursos do widget", + "export-widgets": "Exportar widgets", + "export-widgets-prompt": "Incorporar imagens e recursos dos widgets", + "import": "Importar widget", + "no-data": "Sem dados para exibir no widget", + "data-overflow": "O widget exibe {{count}} de {{total}} entidades", + "alarm-data-overflow": "O widget exibe alarmes para {{allowedEntities}} (máximo permitido) entidades de {{totalEntities}} entidades", + "search": "Pesquisar widget", + "filter": "Tipo de filtro do widget", + "loading-widgets": "Carregando widgets...", + "widget-template-error": "Template HTML do widget inválido.", + "reference": "Referência" }, "widget-action": { - "header-button": "Botão de cabeçalho de widget", - "open-dashboard-state": "Navegar para novo estado de dashboard", - "update-dashboard-state": "Atualizar estado de dashboard atual", + "header-button": "Botão do cabeçalho do widget", + "do-nothing": "Não fazer nada", + "open-dashboard-state": "Navegar para novo estado do dashboard", + "update-dashboard-state": "Atualizar estado atual do dashboard", "open-dashboard": "Navegar para outro dashboard", - "custom": "Personalizar ação", - "custom-pretty": "Personalizar ação (com modelo de HTML)", - "target-dashboard-state": "Estado de dashboard alvo", - "target-dashboard-state-required": "O estado do dashboard alvo é obrigatório", - "set-entity-from-widget": "Definir entidade em widget", - "target-dashboard": "Dashboard alvo", - "open-right-layout": "Abrir layout do dashboard à direita (exibição móvel)" + "custom": "Ação personalizada", + "custom-pretty": "Ação personalizada (com template HTML)", + "custom-pretty-error-title": "Erro no diálogo personalizado", + "custom-pretty-template-error": "Template do diálogo personalizado inválido.", + "custom-pretty-controller-error": "Ocorreu um erro ao avaliar a função do diálogo personalizado.", + "mobile-action": "Ação mobile", + "target-dashboard-state": "Estado de destino do dashboard", + "target-dashboard-state-required": "O estado de destino do dashboard é obrigatório", + "set-entity-from-widget": "Definir entidade a partir do widget", + "target-dashboard": "Dashboard de destino", + "select-target-dashboard": "Selecionar dashboard de destino", + "target-dashboard-required": "O dashboard de destino é obrigatório.", + "open-right-layout": "Abrir layout direito do dashboard (visualização mobile)", + "state-display-type": "Opção de exibição do estado do dashboard", + "open-normal": "Normal", + "open-in-separate-dialog": "Abrir em diálogo separado", + "open-in-popover": "Abrir em popover", + "dialog-title": "Título do diálogo", + "dialog-hide-dashboard-toolbar": "Ocultar barra de ferramentas do dashboard no diálogo", + "dialog-width": "Largura do diálogo em percentual relativo à largura da viewport", + "dialog-height": "Altura do diálogo em percentual relativo à altura da viewport", + "dialog-size-range-error": "O valor percentual do tamanho do diálogo deve estar entre 1 e 100.", + "popover-preferred-placement": "Posicionamento preferencial do popover", + "popover-placement-top": "Superior", + "popover-placement-topLeft": "Superior esquerdo", + "popover-placement-topRight": "Superior direito", + "popover-placement-right": "Direito", + "popover-placement-rightTop": "Direito superior", + "popover-placement-rightBottom": "Direito inferior", + "popover-placement-bottom": "Inferior", + "popover-placement-bottomLeft": "Inferior esquerdo", + "popover-placement-bottomRight": "Inferior direito", + "popover-placement-left": "Esquerdo", + "popover-placement-leftTop": "Esquerdo superior", + "popover-placement-leftBottom": "Esquerdo inferior", + "popover-hide-on-click-outside": "Ocultar popover ao clicar fora", + "popover-hide-dashboard-toolbar": "Ocultar barra de ferramentas do dashboard no popover", + "popover-width": "Largura do popover", + "popover-height": "Altura do popover", + "popover-style": "Estilo do popover", + "open-new-browser-tab": "Abrir em nova aba do navegador", + "open-URL": "Abrir URL", + "URL": "URL", + "url-required": "URL é obrigatória.", + "mobile": { + "device-provision": "Provisionamento de dispositivo", + "action-type": "Tipo de ação mobile", + "select-action-type": "Selecionar tipo de ação mobile", + "action-type-required": "O tipo de ação mobile é obrigatório", + "take-picture-from-gallery": "Tirar foto da galeria", + "take-photo": "Tirar foto", + "map-direction": "Abrir direções no mapa", + "map-location": "Abrir localização no mapa", + "scan-qr-code": "Escanear QR Code", + "make-phone-call": "Fazer ligação", + "get-location": "Obter localização do telefone", + "take-screenshot": "Tirar screenshot", + "handle-provision-success-function": "Função para tratar sucesso do provisionamento", + "get-location-function": "Função para obter localização", + "process-launch-result-function": "Função para processar resultado de inicialização", + "get-phone-number-function": "Função para obter número de telefone", + "process-image-function": "Função para processar imagem", + "process-qr-code-function": "Função para processar QR code", + "process-location-function": "Função para processar localização", + "handle-empty-result-function": "Função para tratar resultado vazio", + "handle-error-function": "Função para tratar erro", + "handle-non-mobile-fallback-function": "Função de fallback para ambiente não mobile", + "save-to-gallery": "Salvar na galeria", + "provision-type": "Tipo de provisionamento", + "auto": "Automático", + "wi-fi": "Wi-Fi", + "ble": "BLE", + "soft-ap": "Soft AP" + }, + "custom-action-function": "Função de ação personalizada", + "custom-pretty-function": "Função de ação personalizada (com template HTML)", + "map-item-type": "Tipo de item do mapa", + "map-item": { + "marker": "Marcador", + "polygon": "Polígono", + "rectangle": "Retângulo", + "circle": "Círculo", + "polyline": "Polilinha" + }, + "place-map-item": "Posicionar item no mapa", + "map-item-tooltip": { + "customize-map-item-tooltips": "Personalizar tooltips de itens do mapa", + "place-marker": "Posicionar marcador", + "start-draw-rectangle": "Iniciar desenho de retângulo", + "finish-draw-rectangle": "Finalizar desenho de retângulo", + "start-draw-polygon": "Iniciar desenho de polígono", + "continue-draw-polygon": "Continuar desenho de polígono", + "finish-draw-polygon": "Finalizar desenho de polígono", + "start-draw-circle": "Iniciar desenho de círculo", + "finish-draw-circle": "Finalizar desenho de círculo", + "start-draw-polyline": "Iniciar desenho de polilinha", + "finish-draw-polyline": "Finalizar desenho de polilinha" + } }, "widgets-bundle": { - "current": "Pacote atual", - "widgets-bundles": "Pacotes de widgets", - "add": "Adicionar pacote de widgets", - "delete": "Excluir pacote de widgets", + "current": "Conjunto atual", + "widgets-bundles": "Conjuntos de widgets", + "widgets-bundle-widgets": "Widgets do conjunto de widgets", + "add": "Adicionar conjunto de widgets", + "delete": "Excluir conjunto de widgets", "title": "Título", "title-required": "O título é obrigatório.", - "add-widgets-bundle-text": "Adicionar novo pacote de widgets", - "no-widgets-bundles-text": "Nenhum pacote de widgets encontrado", - "empty": "O pacote de widgets está vazio", + "title-max-length": "O título deve ter menos de 256 caracteres", + "description": "Descrição", + "image-preview": "Pré-visualização de imagem", + "scada": "Conjunto de widgets SCADA", + "order": "Ordem", + "add-widgets-bundle-text": "Adicionar novo conjunto de widgets", + "no-widgets-bundles-text": "Nenhum conjunto de widgets encontrado", + "empty": "O conjunto de widgets está vazio", "details": "Detalhes", - "widgets-bundle-details": "Detalhes do pacote de widgets", - "delete-widgets-bundle-title": "Tem certeza de que deseja excluir o pacote de widgets '{{widgetsBundleTitle}}'?", - "delete-widgets-bundle-text": "Cuidado, após confirmar, não será possível recuperar o pacote de widgets e nenhum dado associado.", - "delete-widgets-bundles-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 widgets bundle} other {# widgets bundles} }?", - "delete-widgets-bundles-action-title": "Excluir { count, plural, =1 {1 widgets bundle} other {# widgets bundles} }", - "delete-widgets-bundles-text": "Cuidado, após confirmar, todos os pacotes de widgets selecionados serão removidos e não será possível recuperar nenhum dado associado.", - "no-widgets-bundles-matching": "Nenhum conversor de pacotes de widgets encontrado que coincida com '{{widgetsBundle}}'.", - "widgets-bundle-required": "O pacote de widgets é obrigatório.", + "widgets-bundle-details": "Detalhes do conjunto de widgets", + "delete-widgets-bundle-title": "Tem certeza de que deseja excluir o conjunto de widgets '{{widgetsBundleTitle}}'?", + "delete-widgets-bundle-text": "Atenção: após a confirmação, o conjunto de widgets e todos os dados relacionados se tornarão irrecuperáveis.", + "delete-widgets-bundles-title": "Tem certeza de que deseja excluir { count, plural, =1 {1 conjunto de widgets} other {# conjuntos de widgets} }?", + "delete-widgets-bundles-action-title": "Excluir { count, plural, =1 {1 conjunto de widgets} other {# conjuntos de widgets} }", + "delete-widgets-bundles-text": "Atenção: após a confirmação, todos os conjuntos de widgets selecionados serão removidos e todos os dados relacionados se tornarão irrecuperáveis.", + "no-widgets-bundles-matching": "Nenhum conjunto de widgets correspondente a '{{widgetsBundle}}' foi encontrado.", + "widgets-bundle-required": "O conjunto de widgets é obrigatório.", "system": "Sistema", - "import": "Importar pacote de widgets", - "export": "Exportar pacote de widgets", - "export-failed-error": "Impossível exportar pacote de widgets: {{error}}", - "create-new-widgets-bundle": "Criar novo pacote de widgets", - "widgets-bundle-file": "Arquivo de pacote de widgets", - "invalid-widgets-bundle-file-error": "Impossível importar pacote de widgets: Estrutura de dados de pacote de widgets inválida.", - "search": "Pesquisar pacotes de widgets", - "selected-widgets-bundles": "{ count, plural, =1 {1 widgets bundle} other {# widgets bundles} } selecionado(s)", - "open-widgets-bundle": "Abrir pacote de widgets" + "import": "Importar conjunto de widgets", + "export": "Exportar conjunto de widgets", + "export-widgets-bundle-widgets-prompt": "Incluir widgets do conjunto nos dados exportados (caso contrário, apenas os FQNs dos widgets referenciados serão exportados)", + "export-failed-error": "Não foi possível exportar o conjunto de widgets: {{error}}", + "create-new-widgets-bundle": "Criar novo conjunto de widgets", + "widgets-bundle-file": "Arquivo do conjunto de widgets", + "invalid-widgets-bundle-file-error": "Não foi possível importar o conjunto de widgets: estrutura de dados do conjunto de widgets inválida.", + "search": "Pesquisar conjuntos de widgets", + "selected-widgets-bundles": "{ count, plural, =1 {1 conjunto de widgets} other {# conjuntos de widgets} } selecionado(s)", + "open-widgets-bundle": "Abrir conjunto de widgets", + "loading-widgets-bundles": "Carregando conjuntos de widgets...", + "create-new": "Criar novo conjunto de widgets" }, "widget-config": { "data": "Dados", "settings": "Configurações", "advanced": "Avançado", + "appearance": "Aparência", + "widget-card": "Card do widget", + "mobile": "Mobile", "title": "Título", - "title-tooltip": "Título da dica de ferramenta", - "general-settings": "Configuração geral", - "display-title": "Exibir título", - "drop-shadow": "Sombra projetada", - "enable-fullscreen": "Habilitar tela inteira", + "title-tooltip": "Tooltip do título", + "general-settings": "Configurações gerais", + "display-title": "Exibir título do widget", + "card-title": "Título do card", + "drop-shadow": "Sombra", + "enable-fullscreen": "Habilitar tela cheia", "background-color": "Cor de fundo", - "text-color": "Cor de texto", - "padding": "Preenchimento", + "text-color": "Cor do texto", + "border-radius": "Raio da borda", + "padding": "Espaçamento interno", "margin": "Margem", - "widget-style": "Estilo de widget", + "widget-style": "Estilo do widget", + "widget-css": "CSS do widget", "title-style": "Estilo do título", - "mobile-mode-settings": "Configuração do modo móvel", + "mobile-mode-settings": "Modo mobile", "order": "Ordem", "height": "Altura", + "mobile-hide": "Ocultar widget no modo mobile", + "desktop-hide": "Ocultar widget no modo desktop", "units": "Símbolo especial a ser exibido ao lado do valor", - "decimals": "Número de dígitos após ponto de flutuação", + "units-by-default": "Unidades padrão", + "decimals": "Número de dígitos após o ponto flutuante", + "decimals-by-default": "Decimais padrão", + "default-data-key-parameter-hint": "Este parâmetro se aplica a todos os valores do widget, a menos que seja substituído pela configuração da chave de dados", + "units-short": "Unidades", + "decimals-short": "Decimais", + "decimals-suffix": "decimais", + "digits-suffix": "dígitos", "timewindow": "Janela de tempo", "use-dashboard-timewindow": "Usar janela de tempo do dashboard", - "display-timewindow": "Exibir timewindow", + "use-widget-timewindow": "Usar janela de tempo do widget", + "display-timewindow": "Exibir janela de tempo", + "legend": "Legenda", "display-legend": "Exibir legenda", "datasources": "Fontes de dados", - "maximum-datasources": "No máximo { count, plural, =1 {1 datasource is allowed.} other {# datasources are allowed} }", + "datasource": "Fonte de dados", + "maximum-datasources": "Máximo de { count, plural, =1 {1 fonte de dados permitida.} other {# fontes de dados permitidas} }", + "timeseries-key-error": "Pelo menos uma chave de dados de série temporal deve ser especificada", "datasource-type": "Tipo", "datasource-parameters": "Parâmetros", "remove-datasource": "Remover fonte de dados", "add-datasource": "Adicionar fonte de dados", - "target-device": "Dispositivo alvo", - "alarm-source": "Fonte do alarme", + "target-device": "Dispositivo de destino", + "alarm-source": "Fonte de alarme", "actions": "Ações", "action": "Ação", "add-action": "Adicionar ação", "search-actions": "Pesquisar ações", "no-actions-text": "Nenhuma ação encontrada", "action-source": "Fonte da ação", + "select-action-source": "Selecionar fonte da ação", "action-source-required": "A fonte da ação é obrigatória.", + "column-index": "Índice da coluna", + "select-column-index": "Selecionar índice da coluna", + "column-index-required": "O índice da coluna é obrigatório.", + "not-set": "Não definido", "action-name": "Nome", - "action-name-required": "O nome da ação é obrigatório!", - "action-name-not-unique": "Já existe outra ação com o mesmo nome.\nO nome da ação na mesma fonte de ação deve ser exclusivo.", + "action-name-required": "O nome da ação é obrigatório.", + "action-name-not-unique": "Já existe outra ação com o mesmo nome.\nO nome da ação deve ser único dentro da mesma fonte de ação.", "action-icon": "Ícone", + "header-button": { + "button-settings": "Configurações do botão", + "button-type": "Tipo de botão", + "button-type-basic": "Básico", + "button-type-raised": "Elevado", + "button-type-stroked": "Contornado", + "button-type-flat": "Plano", + "button-type-icon": "Ícone", + "button-type-mini-fab": "FAB", + "colors": "Cores", + "color": "Cor", + "background": "Plano de fundo", + "border": "Borda", + "advanced-button-style": "Estilo avançado do botão", + "button-style": "Estilo do botão" + }, + "show-hide-action-using-function": "Mostrar/ocultar ação usando função", + "show-action-function": "Função para exibir ação", "action-type": "Tipo", "action-type-required": "O tipo de ação é obrigatório.", "edit-action": "Editar ação", "delete-action": "Excluir ação", - "delete-action-title": "Excluir ação de widget", - "delete-action-text": "Tem certeza de que deseja excluir a ação de widget com o nome '{{actionName}}'?", - "display-icon": "Exibir ícone de título", + "delete-action-title": "Excluir ação do widget", + "delete-action-text": "Tem certeza de que deseja excluir a ação do widget com o nome '{{actionName}}'?", + "title-icon": "Ícone do título", + "display-icon": "Exibir ícone do título", + "card-icon": "Ícone do card", + "icon": "Ícone", "icon-color": "Cor do ícone", - "icon-size": "Tamanho do ícone" + "icon-size": "Tamanho do ícone", + "advanced-settings": "Configurações avançadas", + "data-settings": "Configurações de dados", + "limits": "Limites", + "no-data-display-message": "Mensagem alternativa para \"Sem dados para exibir\"", + "data-page-size": "Máximo de entidades por fonte de dados", + "settings-component-not-found": "Componente de formulário de configurações não encontrado para o seletor '{{selector}}'", + "preview": "Pré-visualização", + "set": "Definir", + "set-message": "Definir mensagem", + "advanced-title-style": "Estilo avançado do título", + "card-style": "Estilo do card", + "text": "Texto", + "background": "Plano de fundo", + "advanced-widget-style": "Estilo avançado do widget", + "card-buttons": "Botões do card", + "show-card-buttons": "Exibir botões do card", + "card-border-radius": "Raio da borda do card", + "card-padding": "Espaçamento interno do card", + "card-appearance": "Aparência do card", + "color": "Cor", + "tooltip": "Tooltip", + "units-required": "A unidade é obrigatória.", + "list-layout": "Layout de lista", + "layout": "Layout", + "resize-options": "Opções de redimensionamento", + "resizable": "Redimensionável", + "preserve-aspect-ratio": "Preservar proporção de aspecto" }, "widget-type": { "import": "Importar tipo de widget", "export": "Exportar tipo de widget", - "export-failed-error": "Impossível exportar tipo de widget: {{error}}", - "create-new-widget-type": "Criar novo tipo de widget", - "widget-type-file": "Arquivo de tipo de widget", - "invalid-widget-type-file-error": "Impossível importar tipo de widget: Estrutura de dados de tipo de widget inválida." + "export-failed-error": "Não foi possível exportar o widget: {{error}}", + "widget-file": "Arquivo do widget", + "invalid-widget-file-error": "Não foi possível importar o widget: estrutura de dados do widget inválida." + }, + "markdown": { + "edit": "Editar", + "preview": "Visualizar", + "copy-code": "Clique para copiar", + "copied": "Copiado!" }, "widgets": { + "mobile-app-qr-code": { + "configuration-hint": "A configuração depende do widget de QR code do aplicativo móvel nas configurações principais da plataforma", + "get-it-on-google-play": "Disponível no Google Play", + "download-on-the-app-store": "Baixar na App Store" + }, + "action-button": { + "behavior": "Comportamento", + "on-click": "Ao clicar", + "on-click-hint": "Ação acionada quando o botão é clicado", + "first-button-click": "Clique no primeiro botão", + "first-button-click-hint": "Ação ao pressionar o primeiro botão.", + "second-button-click": "Clique no segundo botão", + "second-button-click-hint": "Ação ao pressionar o segundo botão.", + "button-click-hint": "Ação ao pressionar o widget." + }, + "command-button": { + "behavior": "Comportamento", + "on-click": "Ao clicar", + "on-click-hint": "Ação executada quando o botão é clicado." + }, + "power-button": { + "behavior": "Comportamento", + "power-on": "Ligar 'On'", + "power-on-hint": "Ação executada para ligar o componente.", + "power-off": "Desligar 'Off'", + "power-off-hint": "Ação executada para desligar o componente.", + "on-label": "On", + "off-label": "Off", + "layout": "Layout", + "layout-default": "Padrão", + "layout-simplified": "Simplificado", + "layout-outlined": "Contornado", + "layout-default-volume": "Padrão.Volume", + "layout-simplified-volume": "Simplificado.Volume", + "layout-outlined-volume": "Contornado.Volume", + "layout-default-icon": "Padrão.Ícone", + "layout-simplified-icon": "Simplificado.Ícone", + "layout-outlined-icon": "Contornado.Ícone", + "main": "Principal", + "background": "Plano de fundo", + "button-icon-on": "Ícone do botão 'On'", + "button-icon-off": "Ícone do botão 'Off'", + "power-on-colors": "Cores 'On'", + "power-off-colors": "Cores 'Off'", + "disabled-colors": "Cores desabilitadas", + "button": "Botão" + }, + "toggle-button": { + "behavior": "Comportamento", + "checked": "Marcado", + "unchecked": "Desmarcado", + "check": "Marcar", + "check-hint": "Ação executada para marcar o componente.", + "uncheck": "Desmarcar", + "uncheck-hint": "Ação executada para desmarcar o componente.", + "auto-scale": "Escala automática", + "horizontal-fill": "Preenchimento horizontal", + "vertical-fill": "Preenchimento vertical", + "button-appearance": "Aparência do botão" + }, + "segmented-button": { + "layout": "Layout", + "layout-squared": "Quadrado", + "layout-rounded": "Arredondado", + "card-border": "Borda do cartão", + "button-appearance": "Aparência do botão", + "first": "Primeiro", + "second": "Segundo", + "color-styles": "Estilos de cor", + "selected": "Selecionado", + "unselected": "Não selecionado" + }, + "button": { + "layout": "Layout", + "outlined": "Contornado", + "filled": "Preenchido", + "underlined": "Sublinhado", + "basic": "Básico", + "auto-scale": "Escala automática", + "label": "Rótulo", + "icon": "Ícone", + "border-radius": "Raio da borda", + "color-palette": "Paleta de cores", + "main": "Principal", + "background": "Plano de fundo", + "border": "Borda", + "custom-styles": "Estilos personalizados", + "clear-style": "Limpar estilo", + "shadow": "Sombra", + "enabled": "Habilitado", + "disabled": "Desabilitado", + "preview": "Visualização", + "copy-style-from": "Copiar estilo de" + }, + "value-stepper": { + "behavior": "Comportamento", + "simplified": "Simplificado", + "filled": "Preenchido", + "outlined": "Contornado", + "volume": "Volume", + "initial-state": "Estado inicial", + "initial-state-hint": "Ação para obter o valor inicial.", + "disabled-state": "Estado desabilitado", + "disabled-state-hint": "Configure a condição sob a qual o componente é desabilitado.", + "right-button-click": "Clique no botão direito", + "right-button-click-hint": "Ação ao pressionar o botão direito.", + "left-button-click": "Clique no botão esquerdo", + "left-button-click-hint": "Ação ao pressionar o botão esquerdo.", + "auto-scale": "Escala automática", + "value-range": "Intervalo", + "min-range": "Mín", + "max-range": "Máx", + "value-increment-decrement-step": "Passo de incremento/decremento do valor", + "value": "Valor", + "value-box-background": "Plano de fundo da caixa de valor", + "border": "Borda", + "button-appearance": "Aparência do botão", + "left": "Esquerdo", + "right": "Direito", + "left-button": "Botão esquerdo", + "right-button": "Botão direito", + "icon": "Ícone", + "color-palette": "Paleta de cores", + "main": "Principal", + "background": "Plano de fundo", + "button-icon-on": "Ícone do botão 'On'", + "button-on-colors": "Cores 'On'", + "disabled-colors": "Cores desabilitadas" + }, + "button-state": { + "activated-state": "Estado ativado", + "activated-state-hint": "Configure a condição sob a qual o botão está ativo.", + "disabled-state": "Estado desabilitado", + "disabled-state-hint": "Configure a condição sob a qual o botão está desabilitado.", + "selected-state": "Selecionar botão", + "selected-state-hint": "Configure a condição sob a qual o botão está selecionado.", + "enabled": "Habilitado", + "hovered": "Com cursor", + "pressed": "Pressionado", + "activated": "Ativado", + "disabled": "Desabilitado", + "initial": "Primeiro botão", + "first": "Primeiro", + "second": "Segundo" + }, + "background": { + "background": "Plano de fundo", + "background-settings": "Configurações de plano de fundo", + "background-type-image": "Imagem", + "background-type-color": "Cor", + "image-url": "URL da imagem", + "overlay": "Sobreposição", + "enable-overlay": "Habilitar sobreposição", + "blur": "Desfoque", + "preview": "Pré-visualização" + }, + "bar-chart": { + "bar-appearance": "Aparência da barra", + "label-on-bar": "Rótulo na barra", + "value-on-bar": "Valor na barra", + "bar-chart-style": "Estilo do gráfico de barras", + "bar-axis": "Eixo da barra" + }, + "polar-area-chart": { + "polar-axis": "Eixo polar", + "start-angle": "Ângulo inicial", + "polar-area-chart-style": "Estilo do gráfico de área polar" + }, + "battery-level": { + "layout": "Layout", + "layout-vertical-solid": "Vertical. Sólido", + "layout-horizontal-solid": "Horizontal. Sólido", + "layout-vertical-divided": "Vertical. Dividido", + "layout-horizontal-divided": "Horizontal. Dividido", + "icon": "Ícone", + "value": "Valor", + "auto-scale": "Escala automática", + "battery-level-color": "Cor do nível da bateria", + "battery-shape-color": "Cor do formato da bateria", + "battery-level-card-style": "Estilo do cartão de nível da bateria", + "sections-count": "Quantidade de seções" + }, + "signal-strength": { + "value": "Valor", + "last-update": "Última atualização", + "no-signal": "Sem sinal", + "layout": "Layout", + "layout-wifi": "Wi-Fi", + "layout-cellular-bar": "Barra celular", + "icon": "Ícone", + "date": "Data", + "active-bars-color": "Cor das barras de sinal ativas", + "inactive-bars-color": "Cor das barras de sinal inativas", + "signal-strength-card-style": "Estilo do cartão de intensidade de sinal", + "no-signal-rssi-value": "Valor rssi \"Sem sinal\"" + }, + "status-widget": { + "behavior": "Comportamento", + "layout": "Layout", + "layout-default": "Padrão", + "layout-center": "Centro", + "layout-icon": "Ícone", + "on": "On", + "off": "Off", + "label": "Rótulo", + "status": "Status", + "icon": "Ícone", + "color-palette": "Paleta de cores", + "disabled-color-palette": "Paleta de cores desabilitada", + "primary": "Primário", + "primary-color-hint": "Cor do ícone e rótulo", + "secondary": "Secundário", + "secondary-color-hint": "Cor do status", + "background": "Plano de fundo" + }, + "chart": { + "common-settings": "Configurações comuns", + "enable-stacking-mode": "Habilitar modo de empilhamento", + "selection": "Seleção de intervalo de tempo", + "enable-selection-mode": "Habilitar modo de seleção", + "line-shadow-size": "Tamanho da sombra da linha", + "display-smooth-lines": "Exibir linhas suaves (curvas)", + "default-bar-width": "Largura padrão da barra para dados não agregados (milissegundos)", + "bar-alignment": "Alinhamento da barra", + "bar-alignment-left": "Esquerda", + "bar-alignment-right": "Direita", + "bar-alignment-center": "Centro", + "default-font": "Fonte padrão", + "default-font-size": "Tamanho da fonte padrão", + "default-font-color": "Cor da fonte padrão", + "thresholds-line-width": "Largura de linha padrão para todos os limites", + "tooltip-settings": "Configurações de tooltip", + "tooltip": "Tooltip", + "show-tooltip": "Exibir tooltip", + "hover-individual-points": "Passar o cursor sobre pontos individuais", + "show-cumulative-values": "Exibir valores cumulativos no modo de empilhamento", + "hide-zero-false-values": "Ocultar valores zero/falso do tooltip", + "tooltip-value-format-function": "Função de formatação do valor do tooltip", + "grid-settings": "Configurações de grade", + "show-vertical-lines": "Exibir linhas verticais", + "show-horizontal-lines": "Exibir linhas horizontais", + "grid-outline-border-width": "Largura do contorno/borda da grade (px)", + "primary-color": "Cor primária", + "background-color": "Cor de fundo", + "ticks-color": "Cor dos marcadores", + "xaxis-settings": "Configurações do eixo X", + "axis-title": "Título do eixo", + "xaxis-tick-labels-settings": "Configurações dos rótulos de marcadores do eixo X", + "show-tick-labels": "Exibir rótulos de marcadores do eixo", + "yaxis-settings": "Configurações do eixo Y", + "min-scale-value": "Valor mínimo na escala", + "max-scale-value": "Valor máximo na escala", + "yaxis-tick-labels-settings": "Configurações dos rótulos de marcadores do eixo Y", + "tick-step-size": "Tamanho do passo entre marcadores", + "number-of-decimals": "Quantidade de casas decimais a exibir", + "ticks-formatter-function": "Função de formatação dos marcadores", + "comparison-settings": "Configurações de comparação", + "enable-comparison": "Habilitar comparação", + "time-for-comparison": "Período de comparação", + "time-for-comparison-previous-interval": "Intervalo anterior (padrão)", + "time-for-comparison-days": "Dia atrás", + "time-for-comparison-weeks": "Semana atrás", + "time-for-comparison-months": "Mês atrás", + "time-for-comparison-years": "Ano atrás", + "time-for-comparison-custom-interval": "Intervalo personalizado", + "custom-interval-value": "Valor do intervalo personalizado (ms)", + "comparison-x-axis-settings": "Configurações do eixo X de comparação", + "axis-position": "Posição do eixo", + "axis-position-top": "Superior (padrão)", + "axis-position-bottom": "Inferior", + "custom-legend-settings": "Configurações de legenda personalizada", + "enable-custom-legend": "Habilitar legenda personalizada (permite usar valores de atributo/série temporal nos rótulos de chave)", + "key-name": "Nome da chave", + "key-name-required": "Nome da chave é obrigatório", + "key-type": "Tipo de chave", + "key-type-attribute": "Atributo", + "key-type-timeseries": "Série temporal", + "label-keys-list": "Lista de chaves para usar nos rótulos", + "no-label-keys": "Nenhuma chave configurada", + "add-label-key": "Adicionar nova chave", + "line-width": "Largura da linha", + "color": "Cor", + "data-is-hidden-by-default": "Dados ocultos por padrão", + "disable-data-hiding": "Desabilitar ocultação de dados", + "remove-from-legend": "Remover chave de dados da legenda", + "exclude-from-stacking": "Excluir do empilhamento (disponível no modo \"Empilhamento\")", + "line-settings": "Configurações de linha", + "show-line": "Exibir linha", + "fill-line": "Preencher linha", + "fill-line-opacity": "Opacidade do preenchimento", + "points-settings": "Configurações de pontos", + "show-points": "Exibir pontos", + "points-line-width": "Largura da linha dos pontos", + "points-radius": "Raio dos pontos", + "point-shape": "Forma do ponto", + "point-shape-circle": "Círculo", + "point-shape-cross": "Cruz", + "point-shape-diamond": "Diamante", + "point-shape-square": "Quadrado", + "point-shape-triangle": "Triângulo", + "point-shape-custom": "Função personalizada", + "point-shape-draw-function": "Função de desenho da forma do ponto", + "show-separate-axis": "Exibir eixo separado", + "axis-position-left": "Esquerda", + "axis-position-right": "Direita", + "thresholds": "Limites", + "no-thresholds": "Nenhum limite configurado", + "add-threshold": "Adicionar limite", + "show-values-for-comparison": "Exibir valores históricos para comparação", + "comparison-values-label": "Rótulo dos valores históricos", + "comparison-line-color": "Cor da linha de comparação", + "threshold-settings": "Configurações de limite", + "use-as-threshold": "Usar valor da chave como limite", + "threshold-line-width": "Largura da linha do limite", + "threshold-color": "Cor do limite", + "common-pie-settings": "Configurações comuns do gráfico de pizza", + "radius": "Raio", + "inner-radius": "Raio interno", + "tilt": "Inclinação", + "common-pie-settings-range-error": "O valor deve estar no intervalo de 0 a 1", + "stroke-settings": "Configurações de traço", + "width-pixels": "Largura (pixels)", + "show-labels": "Exibir rótulos", + "animation-settings": "Configurações de animação", + "animated-pie": "Habilitar animação de pizza (experimental)", + "border-settings": "Configurações de borda", + "border-width": "Largura da borda", + "border-color": "Cor da borda", + "legend-settings": "Configurações de legenda", + "display-legend": "Exibir legenda", + "labels-font-color": "Cor da fonte dos rótulos", + "series": "Séries", + "add-series": "Adicionar série", + "series-settings": "Configurações de séries", + "remove-series": "Remover série", + "no-series": "Nenhuma série configurada", + "no-series-error": "Pelo menos uma série deve ser especificada", + "chart-appearance": "Aparência do gráfico", + "vertical-grid-lines": "Linhas de grade verticais", + "horizontal-grid-lines": "Linhas de grade horizontais", + "chart-background": "Plano de fundo do gráfico", + "grid-lines-color": "Cor das linhas de grade", + "border": "Borda", + "axis": "Eixo", + "vertical-axis": "Eixo vertical", + "ticks": "Marcadores", + "horizontal-axis": "Eixo horizontal", + "shape-empty-circle": "Círculo vazio", + "shape-circle": "Círculo", + "shape-rect": "Retângulo", + "shape-round-rect": "Retângulo arredondado", + "shape-triangle": "Triângulo", + "shape-diamond": "Diamante", + "shape-pin": "Pino", + "shape-arrow": "Seta", + "shape-none": "Nenhum", + "line-type-solid": "Sólido", + "line-type-dashed": "Tracejado", + "line-type-dotted": "Pontilhado", + "label-position-top": "Superior", + "label-position-bottom": "Inferior", + "label-position-outside": "Fora", + "label-position-inside": "Dentro", + "fill": "Preenchimento", + "fill-type-none": "Nenhum", + "fill-type-solid": "Sólido", + "fill-type-opacity": "Opacidade", + "fill-type-gradient": "Gradiente", + "background": "Plano de fundo", + "opacity": "Opacidade", + "gradient-stops": "Paradas de gradiente", + "gradient-start": "início", + "gradient-end": "fim", + "animation": { + "animation": "Animação", + "animation-threshold": "Limite de animação", + "animation-duration": "Duração da animação", + "animation-easing": "Suavização da animação", + "animation-delay": "Atraso da animação", + "update-animation-duration": "Duração da animação de atualização", + "update-animation-easing": "Suavização da animação de atualização", + "update-animation-delay": "Atraso da animação de atualização" + }, + "chart-axis": { + "limit": "Limite", + "source": "Fonte", + "key-value": "Chave / Valor", + "value-required": "Valor é obrigatório.", + "entity-key-required": "Chave de entidade é obrigatória.", + "key-required": "Chave é obrigatória.", + "scale-limits": "Limites de escala", + "scale-appearance": "Aparência da escala", + "scale": "Escala", + "scale-min": "mín", + "scale-max": "máx", + "scale-auto": "Automático" + }, + "bar": { + "show-border": "Exibir borda", + "border-width": "Largura da borda", + "border-radius": "Raio da borda", + "bar-width": "Largura da barra", + "label": "Rótulo", + "label-hint": "Exibir rótulo acima da barra.", + "series-label-hint": "Exibir rótulo com valor acima da barra.", + "label-background": "Plano de fundo do rótulo" + } + }, + "color": { + "color-settings": "Configurações de cor", + "color-type-constant": "Constante", + "color-type-gradient": "Gradiente", + "color-type-range": "Intervalo", + "color-type-function": "Função", + "color": "Cor", + "value-range": "Intervalo de valores", + "from": "De", + "to": "Até", + "color-function": "Função de cor", + "copy-color-settings-from": "Copiar configurações de cor de", + "copy-from": "Copiar de", + "settings-type": "Tipo de configurações", + "basic-mode": "Básico", + "advanced-mode": "Avançado", + "entity-alias": "Alias de entidade", + "entity-attribute": "Atributo de entidade", + "gradient-color": "Cor do gradiente", + "gradient-color-min": "Cor", + "gradient-start": "Cor inicial do gradiente", + "gradient-start-min": "Início", + "gradient-end": "Cor final do gradiente", + "gradient-end-min": "Fim", + "start-value": "Valor inicial", + "end-value": "Valor final", + "gradient-type": "Tipo de gradiente" + }, + "dashboard-state": { + "dashboard-state-settings": "Configurações de estado do Dashboard", + "dashboard-state": "ID do estado do Dashboard", + "autofill-state-layout": "Preenchimento automático da altura do layout do estado por padrão", + "default-margin": "Margem padrão dos widgets", + "default-background-color": "Cor de fundo padrão", + "sync-parent-state-params": "Sincronizar parâmetros de estado com o Dashboard pai" + }, "date-range-navigator": { + "date-range-picker-settings": "Configurações do seletor de intervalo de datas", + "hide-date-range-picker": "Ocultar seletor de intervalo de datas", + "picker-one-panel": "Seletor de intervalo de datas em painel único", + "picker-auto-confirm": "Confirmação automática do seletor de intervalo de datas", + "picker-show-template": "Exibir modelo no seletor de intervalo de datas", + "first-day-of-week": "Primeiro dia da semana", + "interval-settings": "Configurações de intervalo", + "hide-interval": "Ocultar intervalo", + "initial-interval": "Intervalo inicial", + "interval-hour": "Hora", + "interval-day": "Dia", + "interval-week": "Semana", + "interval-two-weeks": "2 semanas", + "interval-month": "Mês", + "interval-three-months": "3 meses", + "interval-six-months": "6 meses", + "step-settings": "Configurações de passo", + "hide-step-size": "Ocultar tamanho do passo", + "initial-step-size": "Tamanho do passo inicial", + "hide-labels": "Ocultar rótulos", + "use-session-storage": "Usar armazenamento de sessão", "localizationMap": { "Sun": "Dom", "Mon": "Seg", @@ -1864,7 +8154,7 @@ "Feb": "Fev", "Mar": "Mar", "Apr": "Abr", - "May": "Maio", + "May": "Mai", "Jun": "Jun", "Jul": "Jul", "Aug": "Ago", @@ -1883,7 +8173,7 @@ "October": "Outubro", "November": "Novembro", "December": "Dezembro", - "Custom Date Range": "Personalizar intervalo de datas", + "Custom Date Range": "Intervalo de datas personalizado", "Date Range Template": "Modelo de intervalo de datas", "Today": "Hoje", "Yesterday": "Ontem", @@ -1898,77 +8188,2005 @@ "Hour": "Hora", "Day": "Dia", "Week": "Semana", - "2 weeks": "2 semanas", + "2 weeks": "2 Semanas", "Month": "Mês", - "3 months": "3 meses", - "6 months": "6 meses", + "3 months": "3 Meses", + "6 months": "6 Meses", "Custom interval": "Intervalo personalizado", "Interval": "Intervalo", - "Step size": "Tamanho da etapa", - "Ok": "OK" + "Step size": "Tamanho do passo", + "Ok": "Ok" } }, + "doughnut": { + "doughnut-appearance": "Aparência do gráfico de rosca", + "layout": "Layout", + "layout-default": "Padrão", + "layout-with-total": "Com total", + "central-total-value": "Valor total central", + "doughnut-card-style": "Estilo do cartão de rosca" + }, + "entities-hierarchy": { + "hierarchy-data-settings": "Configurações de dados da hierarquia", + "relations-query-function": "Função de consulta de relações do nó", + "has-children-function": "Função de verificação de filhos do nó", + "node-state-settings": "Configurações de estado do nó", + "node-opened-function": "Função padrão de nó aberto", + "node-disabled-function": "Função de nó desabilitado", + "display-settings": "Configurações de exibição", + "node-icon-function": "Função de ícone do nó", + "node-text-function": "Função de texto do nó", + "sort-settings": "Configurações de ordenação", + "nodes-sort-function": "Função de ordenação dos nós" + }, + "edge": { + "display-default-title": "Exibir título padrão" + }, + "gateway": { + "general-settings": "Configurações gerais", + "widget-title": "Título do widget", + "default-archive-file-name": "Nome padrão do arquivo de arquivamento", + "device-type-for-new-gateway": "Tipo de dispositivo para novo gateway", + "messages-settings": "Configurações de mensagens", + "save-config-success-message": "Mensagem de texto sobre configuração do gateway salva com sucesso", + "device-name-exists-message": "Mensagem de texto quando dispositivo com o nome informado já existe", + "gateway-title": "Formulário do gateway", + "read-only": "Somente leitura", + "events-title": "Título do formulário de eventos do gateway", + "events-filter": "Filtro de eventos", + "event-key-contains": "Chave do evento contém...", + "show-connector": "Exibir para o conector", + "connector-state-param-key": "Chave do parâmetro de estado do conector", + "message": "Mensagem", + "level": "Nível", + "created-time": "Hora de criação" + }, + "gauge": { + "default-color": "Cor padrão", + "radial-gauge-settings": "Configurações do medidor radial", + "ticks-settings": "Configurações de marcadores", + "min-value": "Valor mínimo", + "max-value": "Valor máximo", + "min-value-short": "mín", + "max-value-short": "máx", + "start-ticks-angle": "Ângulo inicial dos marcadores", + "ticks-angle": "Ângulo dos marcadores", + "major-ticks": "Marcadores principais", + "major-ticks-count": "Quantidade de marcadores principais", + "major-ticks-color": "Cor dos marcadores principais", + "minor-ticks": "Marcadores secundários", + "minor-ticks-count": "Quantidade de marcadores secundários", + "minor-ticks-color": "Cor dos marcadores secundários", + "tick-numbers-font": "Fonte dos números dos marcadores", + "unit-title-settings": "Configurações do título da unidade", + "show-unit-title": "Título das unidades", + "unit-title": "Título da unidade", + "title-font": "Fonte do texto do título", + "units-settings": "Configurações de unidades", + "units-font": "Fonte do texto das unidades", + "value-box-settings": "Configurações da caixa de valor", + "show-value-box": "Exibir caixa de valor", + "value-box": "Caixa de valor", + "value-int": "Quantidade de dígitos para a parte inteira do valor", + "value-text": "Texto do valor", + "value-text-shadow": "Sombra do texto do valor", + "value-font": "Fonte do texto do valor", + "rect-stroke-color-start": "Cor do traço do retângulo - gradiente inicial", + "rect-stroke-color-end": "Cor do traço do retângulo - gradiente final", + "background-color": "Cor de fundo", + "shadow-color": "Cor da sombra", + "value-box-rect-stroke-color": "Cor do traço do retângulo da caixa de valor", + "value-box-rect-stroke-color-end": "Cor do traço do retângulo da caixa de valor - gradiente final", + "value-box-background-color": "Cor de fundo da caixa de valor", + "value-box-shadow-color": "Cor da sombra da caixa de valor", + "plate-settings": "Configurações do mostrador", + "show-plate-border": "Borda do mostrador", + "plate-color": "Cor do mostrador", + "needle-settings": "Configurações do ponteiro", + "needle-circle-size": "Tamanho do círculo do ponteiro", + "needle-color": "Cor do ponteiro", + "needle-color-start": "Cor do ponteiro - gradiente inicial", + "needle-color-end": "Cor do ponteiro - gradiente final", + "needle-color-shadow-up": "Cor da sombra da metade superior do ponteiro", + "needle-color-shadow-down": "Sombra projetada", + "highlights-settings": "Configurações de destaques", + "highlights-width": "Largura dos destaques", + "highlights": "Destaques", + "highlight-from": "De", + "highlight-to": "Até", + "highlight-color": "Cor", + "no-highlights": "Nenhum destaque configurado", + "add-highlight": "Adicionar destaque", + "animation-settings": "Configurações de animação", + "enable-animation": "Animação", + "animation-duration-rule": "Duração e regra de animação", + "animation-duration": "Duração da animação", + "animation-rule": "Regra de animação", + "animation-linear": "Linear", + "animation-quad": "Quad", + "animation-quint": "Quint", + "animation-cycle": "Cycle", + "animation-bounce": "Bounce", + "animation-elastic": "Elastic", + "animation-dequad": "Dequad", + "animation-dequint": "Dequint", + "animation-decycle": "Decycle", + "animation-debounce": "Debounce", + "animation-delastic": "Delastic", + "linear-gauge-settings": "Configurações do medidor linear", + "bar-stroke": "Traço da barra", + "bar-stroke-width": "Largura do traço da barra", + "bar-stroke-color": "Cor do traço da barra", + "bar-background-color": "Cor de fundo da barra - gradiente inicial", + "bar-background-color-end": "Cor de fundo da barra - gradiente final", + "progress-bar-color": "Cor da barra de progresso", + "progress-bar": "Barra de progresso", + "progress-bar-color-start": "Cor da barra de progresso - gradiente inicial", + "progress-bar-color-end": "Cor da barra de progresso - gradiente final", + "major-ticks-names": "Nomes dos marcadores principais", + "show-stroke-ticks": "Exibir traço dos marcadores", + "major-ticks-font": "Fonte dos marcadores principais", + "border-color": "Cor da borda", + "border-width": "Largura da borda", + "needle-circle": "Círculo do ponteiro", + "needle-circle-color": "Cor do círculo do ponteiro", + "animation-target": "Alvo da animação", + "animation-target-needle": "Ponteiro", + "animation-target-plate": "Mostrador", + "common-settings": "Configurações comuns do medidor", + "gauge-type": "Tipo de medidor", + "gauge-type-arc": "Arco", + "gauge-type-donut": "Rosca", + "gauge-type-horizontal-bar": "Barra horizontal", + "gauge-type-vertical-bar": "Barra vertical", + "donut-start-angle": "Ângulo inicial (graus)", + "bar-settings": "Configurações da barra do medidor", + "relative-bar-width": "Largura relativa da barra", + "neon-glow-brightness": "Brilho do efeito de brilho neon (0-100)", + "neon-glow-brightness-hint": "0 - desabilitar efeito ", + "stripes-thickness": "Espessura das listras", + "stripes-thickness-hint": "0 - sem listras", + "rounded-line-cap": "Tampa de linha arredondada", + "bar-color-settings": "Configurações de cor da barra", + "use-precise-level-color-values": "Usar níveis de cor precisos", + "bar-colors": "Cores da barra, da inferior para a superior", + "color": "Cor", + "no-bar-colors": "Nenhuma cor de barra configurada", + "add-bar-color": "Adicionar cor de barra", + "from": "De", + "to": "Até", + "fixed-level-colors": "Cores da barra usando valores de limite", + "gauge-title-settings": "Configurações do título do medidor", + "show-gauge-title": "Exibir título do medidor", + "gauge-title": "Título do medidor", + "gauge-title-font": "Fonte do título do medidor", + "unit-title-and-timestamp-settings": "Configurações do título de unidades e timestamp", + "show-timestamp": "Timestamp", + "timestamp-format": "Formato do timestamp", + "label-font": "Fonte do rótulo exibido abaixo do valor", + "value-settings": "Configurações de valor", + "show-value": "Exibir texto do valor", + "min-max-settings": "Configurações dos rótulos mínimo/máximo", + "show-min-max": "Exibir valores mínimo e máximo", + "min-max-font": "Fonte dos rótulos mínimo e máximo", + "show-ticks": "Exibir marcadores", + "tick-width": "Largura do marcador", + "tick-color": "Cor do marcador", + "tick-values": "Valores dos marcadores", + "no-tick-values": "Nenhum valor de marcador configurado", + "add-tick-value": "Adicionar valor de marcador", + "gauge-appearance": "Aparência do medidor", + "units-title": "Título das unidades", + "value": "Valor", + "ticks": "Marcadores", + "arrow-and-scale-color": "Cor padrão da seta e da escala", + "scale-settings": "Configurações de escala", + "scale": "Escala", + "scale-color": "Cores da escala", + "compass-appearance": "Aparência da bússola", + "label": "Rótulo", + "labels": "Rótulos", + "label-style": "Estilo do rótulo", + "simple-gauge-type": "Tipo", + "gauge-bar-background": "Plano de fundo da barra do medidor", + "bar-color": "Cor da barra", + "min-and-max-value": "Valor mínimo e máximo", + "min-and-max-label": "Rótulo mínimo e máximo", + "font": "Fonte", + "tick-width-and-color": "Largura e cor do marcador", + "min-max-validation-text": "O valor máximo deve ser maior que o valor mínimo" + }, + "gpio": { + "pin": "Pino", + "label": "Rótulo", + "row": "Linha", + "column": "Coluna", + "color": "Cor", + "panel-settings": "Configurações do painel", + "background-color": "Cor de fundo", + "gpio-switches": "Chaves GPIO", + "no-gpio-switches": "Nenhuma chave GPIO configurada", + "add-gpio-switch": "Adicionar chave GPIO", + "gpio-status-request": "Solicitação de status GPIO", + "method-name": "Nome do método", + "method-body": "Corpo do método", + "gpio-status-change-request": "Solicitação de mudança de status GPIO", + "parse-gpio-status-function": "Função de análise do status gpio", + "gpio-leds": "LEDs GPIO", + "no-gpio-leds": "Nenhum LED GPIO configurado", + "add-gpio-led": "Adicionar LED GPIO" + }, + "html-card": { + "html": "HTML", + "css": "CSS" + }, "input-widgets": { "attribute-not-allowed": "O parâmetro de atributo não pode ser usado neste widget", "blocked-location": "A geolocalização está bloqueada no seu navegador", - "claim-device": "Obter dispositivo", - "claim-failed": "Erro ao obter dispositivo!", + "claim-device": "Reivindicar dispositivo", + "claim-failed": "Falha ao reivindicar o dispositivo!", "claim-not-found": "Dispositivo não encontrado!", - "claim-successful": "O dispositivo foi obtido corretamente!", + "claim-successful": "Dispositivo reivindicado com sucesso!", "date": "Data", "device-name": "Nome do dispositivo", - "device-name-required": "O nome do dispositivo é obrigatório", + "device-name-required": "Nome do dispositivo é obrigatório", "discard-changes": "Descartar alterações", - "entity-attribute-required": "O atributo da entidade é obrigatório", - "entity-coordinate-required": "Os dois campos, latitude e longitude, são obrigatórios", - "entity-timeseries-required": "Os intervalos de tempo de entidade são obrigatórios", + "entity-attribute-required": "Atributo de entidade é obrigatório", + "entity-coordinate-required": "Ambos os campos, latitude e longitude, são obrigatórios", + "entity-timeseries-required": "Série temporal de entidade é obrigatória", "get-location": "Obter localização atual", + "invalid-date": "Data inválida", "latitude": "Latitude", "longitude": "Longitude", + "min-value-error": "Valor mínimo é {{value}}", + "max-value-error": "Valor máximo é {{value}}", "not-allowed-entity": "A entidade selecionada não pode ter atributos compartilhados", "no-attribute-selected": "Nenhum atributo selecionado", "no-datakey-selected": "Nenhuma chave de dados selecionada", - "no-coordinate-specified": "Chave de dados de latitude/longitude não especificada", + "no-coordinate-specified": "Chave de dados para latitude/longitude não especificada", "no-entity-selected": "Nenhuma entidade selecionada", "no-image": "Sem imagem", - "no-support-geolocation": "Seu navegador não é compatível com geolocalização", - "no-support-web-camera": "Nenhuma câmera Web compatível", - "no-timeseries-selected": "Nenhum intervalo de tempo selecionado", - "secret-key": "Chave de segredo", - "secret-key-required": "A chave de segredo é obrigatória", - "switch-attribute-value": "Alternar valor de atributo da entidade", + "no-support-geolocation": "Seu navegador não suporta geolocalização", + "no-support-web-camera": "Seu navegador não suporta câmeras", + "enable-https-use-widget": "Habilite HTTPS para usar este widget", + "no-found-your-camera": "Não foi possível encontrar sua câmera", + "no-permission-camera": "Permissão negada pelo usuário / Este site não tem permissão para usar a câmera", + "no-timeseries-selected": "Nenhuma série temporal selecionada", + "secret-key": "Chave secreta", + "secret-key-required": "Chave secreta é obrigatória", + "switch-attribute-value": "Alternar valor do atributo da entidade", "switch-camera": "Alternar câmera", - "switch-timeseries-value": "Alternar valor de intervalo de tempo da entidade", + "switch-timeseries-value": "Alternar valor da série temporal da entidade", "take-photo": "Tirar foto", "time": "Hora", - "timeseries-not-allowed": "O parâmetro de intervalo de série não pode ser usado neste widget", + "timeseries-not-allowed": "O parâmetro de série temporal não pode ser usado neste widget", "update-failed": "Atualização falhou", "update-successful": "Atualização bem-sucedida", "update-attribute": "Atualizar atributo", - "update-timeseries": "Atualizar intervalos de tempo", - "value": "Valor" + "update-timeseries": "Atualizar série temporal", + "value": "Valor", + "general-settings": "Configurações gerais", + "widget-title": "Título do widget", + "claim-button-label": "Rótulo do botão de reivindicação", + "show-secret-key-field": "Exibir campo de entrada 'Chave secreta'", + "labels-settings": "Configurações de rótulos", + "show-labels": "Exibir rótulos", + "device-name-label": "Rótulo para o campo de entrada do nome do dispositivo", + "secret-key-label": "Rótulo para o campo de entrada da chave secreta", + "messages-settings": "Configurações de mensagens", + "claim-device-success-message": "Mensagem de texto de reivindicação de dispositivo bem-sucedida", + "claim-device-not-found-message": "Mensagem de texto quando o dispositivo não é encontrado", + "claim-device-failed-message": "Mensagem de texto de falha na reivindicação do dispositivo", + "claim-device-name-required-message": "Mensagem de erro 'Nome do dispositivo obrigatório'", + "claim-device-secret-key-required-message": "Mensagem de erro 'Chave secreta obrigatória'", + "show-label": "Exibir rótulo", + "label": "Rótulo", + "required": "Obrigatório", + "required-error-message": "Mensagem de erro 'Obrigatório'", + "show-result-message": "Exibir mensagem de resultado", + "integer-field-settings": "Configurações de campo inteiro", + "min-value": "Valor mínimo", + "max-value": "Valor máximo", + "double-field-settings": "Configurações de campo decimal", + "text-field-settings": "Configurações de campo de texto", + "min-length": "Comprimento mínimo", + "max-length": "Comprimento máximo", + "checkbox-settings": "Configurações de caixa de seleção", + "true-label": "Rótulo marcado", + "false-label": "Rótulo desmarcado", + "image-input-settings": "Configurações de entrada de imagem", + "display-preview": "Exibir visualização", + "display-clear-button": "Exibir botão limpar", + "display-apply-button": "Exibir botão aplicar", + "display-discard-button": "Exibir botão descartar", + "datetime-field-settings": "Configurações de campo de data/hora", + "display-time-input": "Exibir entrada de hora", + "latitude-key-name": "Nome da chave de latitude", + "longitude-key-name": "Nome da chave de longitude", + "show-get-location-button": "Exibir botão 'Obter localização atual'", + "use-high-accuracy": "Usar alta precisão", + "location-fields-settings": "Configurações de campos de localização", + "latitude-label": "Rótulo para latitude", + "longitude-label": "Rótulo para longitude", + "input-fields-alignment": "Alinhamento dos campos de entrada", + "input-fields-alignment-column": "Coluna (padrão)", + "input-fields-alignment-row": "Linha", + "layout": "Layout", + "row-gap": "Espaçamento entre linhas em pixels", + "column-gap": "Espaçamento entre colunas em pixels", + "latitude-field-required": "Campo de latitude obrigatório", + "longitude-field-required": "Campo de longitude obrigatório", + "attribute-settings": "Configurações de atributo", + "widget-mode": "Modo do widget", + "widget-mode-update-attribute": "Atualizar atributo", + "widget-mode-update-timeseries": "Atualizar série temporal", + "attribute-scope": "Escopo do atributo", + "attribute-scope-server": "Atributo do servidor", + "attribute-scope-shared": "Atributo compartilhado", + "value-required": "Valor obrigatório", + "image-settings": "Configurações de saída de imagem", + "image-format": "Formato de imagem", + "image-format-jpeg": "JPEG", + "image-format-png": "PNG", + "image-format-webp": "WEBP", + "image-quality": "Qualidade da imagem", + "max-image-width": "Largura máxima", + "max-image-height": "Altura máxima", + "action-buttons": "Botões de ação", + "show-action-buttons": "Exibir botões de ação", + "update-all-values": "Atualizar todos os valores, não apenas os modificados", + "save-button-label": "Rótulo do botão 'SALVAR'", + "reset-button-label": "Rótulo do botão 'DESFAZER'", + "group-settings": "Configurações de grupo", + "show-group-title": "Exibir título para grupo de campos relacionados a diferentes entidades", + "group-title": "Título do grupo", + "fields-alignment": "Alinhamento dos campos", + "fields-alignment-row": "Linha (padrão)", + "fields-alignment-column": "Coluna", + "fields-in-row": "Número de campos na linha", + "option-value": "Valor (escreva 'null' para criar opção vazia)", + "option-label": "Rótulo", + "hide-input-field": "Ocultar campo de entrada", + "datakey-type": "Tipo de chave de dados", + "datakey-type-server": "Atributo do servidor (padrão)", + "datakey-type-shared": "Atributo compartilhado", + "datakey-type-timeseries": "Série temporal", + "datakey-value-type": "Tipo de valor da chave de dados", + "datakey-value-type-string": "String", + "datakey-value-type-double": "Double", + "datakey-value-type-integer": "Inteiro", + "datakey-value-type-json": "JSON", + "datakey-value-type-boolean-checkbox": "Booleano (Caixa de seleção)", + "datakey-value-type-boolean-switch": "Booleano (Alternância)", + "datakey-value-type-date-time": "Data e Hora", + "datakey-value-type-date": "Data", + "datakey-value-type-time": "Hora", + "datakey-value-type-select": "Seleção", + "datakey-value-type-radio": "Rádio", + "datakey-value-type-color": "Cor", + "value-is-required": "Valor é obrigatório", + "ability-to-edit-attribute": "Capacidade de editar atributo", + "ability-to-edit-attribute-editable": "Editável (padrão)", + "ability-to-edit-attribute-disabled": "Desabilitado", + "ability-to-edit-attribute-readonly": "Somente leitura", + "disable-on-datakey-name": "Desabilitar quando o valor falso de outra chave de dados (especifique o nome da chave de dados)", + "field-appearance": "Aparência do campo", + "appearance-fill": "Preenchido", + "appearance-outline": "Contornado", + "subscript-sizing": "Dimensionamento de subscrito", + "subscript-sizing-fixed": "Fixo", + "subscript-sizing-dynamic": "Dinâmico", + "slide-toggle-settings": "Configurações de alternância deslizante", + "slide-toggle-label-position": "Posição do rótulo da alternância deslizante", + "slide-toggle-label-position-after": "Depois", + "slide-toggle-label-position-before": "Antes", + "select-options": "Opções de seleção", + "no-select-options": "Nenhuma opção de seleção configurada", + "add-select-option": "Adicionar opção de seleção", + "numeric-field-settings": "Configurações de campo numérico", + "step-interval": "Intervalo de passo entre valores", + "error-messages": "Mensagens de erro", + "min-value-error-message": "Mensagem de erro 'Valor mínimo'", + "max-value-error-message": "Mensagem de erro 'Valor máximo'", + "invalid-date-error-message": "Mensagem de erro 'Data inválida'", + "invalid-JSON-error-message": "Mensagem de erro 'JSON inválido'", + "icon-settings": "Configurações de ícone", + "dialog-editor-settings": "Configurações do editor de diálogo", + "use-custom-icon": "Usar ícone personalizado", + "input-cell-icon": "Ícone a exibir antes da célula de entrada", + "value-conversion-settings": "Configurações de conversão de valor", + "get-value-settings": "Configurações de obtenção de valor", + "use-get-value-function": "Usar função getValue", + "get-value-function": "Função getValue", + "set-value-settings": "Configurações de definição de valor", + "use-set-value-function": "Usar função setValue", + "set-value-function": "Função setValue", + "json-invalid": "O valor JSON tem formato inválido", + "title": "Título", + "cancel-button-label": "Rótulo do botão 'Cancelar'", + "radio-button-settings": "Configurações de botão de rádio", + "color": "Cor", + "columns": "Colunas", + "radio-options": "Opções de rádio", + "no-radio-options": "Nenhuma opção de rádio configurada", + "add-radio-option": "Adicionar opção de rádio", + "radio-label-position": "Posição do rótulo", + "radio-label-position-before": "Antes", + "radio-label-position-after": "Depois", + "save-image": "Salvar imagem", + "save-to-gallery": "Armazenar automaticamente imagens capturadas na Galeria de Imagens", + "public-image": "Torna a imagem disponível para qualquer usuário não autenticado" + }, + "invalid-qr-code-text": "Texto de entrada inválido para o código QR. A entrada deve ser do tipo string", + "qr-code": { + "use-qr-code-text-function": "Usar função de texto do código QR", + "qr-code-text-pattern": "Padrão de texto do código QR (ex.: '${entityName} | ${keyName} - algum texto.')", + "qr-code-text-pattern-hint": "O padrão de texto do código QR usa o valor da primeira chave encontrada nas entidades no alias de entidade.", + "qr-code-text-pattern-required": "O padrão de texto do código QR é obrigatório.", + "qr-code-text-function": "Função de texto do código QR" + }, + "label-widget": { + "label-pattern": "Padrão", + "label-pattern-hint": "Dica: ex.: 'Texto ${keyName} unidades.' ou ${#<key index>} unidades'", + "label-pattern-required": "O padrão é obrigatório", + "label-position": "Posição (Porcentagem relativa ao fundo)", + "x-pos": "X", + "y-pos": "Y", + "background-color": "Cor de fundo", + "font-settings": "Configurações de fonte", + "background-image": "Imagem do plano de fundo", + "labels": "Rótulos", + "no-labels": "Nenhum rótulo configurado", + "add-label": "Adicionar rótulo" + }, + "navigation": { + "title": "Título", + "navigation-path": "Caminho de navegação", + "filter-type": "Tipo de filtro", + "filter-type-all": "Todos os itens", + "filter-type-include": "Incluir itens", + "filter-type-exclude": "Excluir itens", + "items": "Itens", + "enter-urls-to-filter": "Insira URLs para filtrar..." + }, + "persistent-table": { + "rpc-id": "RPC ID", + "message-type": "Tipo de mensagem", + "method": "Método", + "params": "Parâmetros", + "created-time": "Hora de criação", + "expiration-time": "Hora de expiração", + "retries": "Tentativas", + "status": "Status", + "filter": "Filtro", + "refresh": "Atualizar", + "add": "Adicionar solicitação RPC", + "details": "Detalhes", + "delete": "Excluir", + "delete-request-title": "Excluir solicitação RPC persistente", + "delete-request-text": "Tem certeza de que deseja excluir a solicitação?", + "details-title": "Detalhes RPC ID: ", + "additional-info": "Informações adicionais", + "response": "Resposta", + "any-status": "Qualquer status", + "rpc-status-list": "Lista de status RPC", + "no-request-prompt": "Nenhuma solicitação para exibir", + "send-request": "Enviar solicitação", + "add-title": "Criar solicitação RPC persistente", + "method-error": "O método é obrigatório.", + "timeout-error": "O valor mínimo de tempo limite é 5000 (5 segundos).", + "white-space-error": "Espaço em branco não é permitido.", + "rpc-status": { + "QUEUED": "QUEUED", + "SENT": "SENT", + "DELIVERED": "DELIVERED", + "SUCCESSFUL": "SUCCESSFUL", + "TIMEOUT": "TEMPO LIMITE", + "EXPIRED": "EXPIRED", + "FAILED": "FAILED" + }, + "rpc-search-status-all": "ALL", + "message-types": { + "false": "Bidirecional", + "true": "Unidirecional" + }, + "general-settings": "Configurações gerais", + "enable-filter": "Ativar filtro", + "enable-sticky-header": "Exibir cabeçalho durante a rolagem", + "enable-sticky-action": "Exibir coluna de ações durante a rolagem", + "display-request-details": "Exibir detalhes da solicitação", + "allow-send-request": "Permitir enviar solicitação RPC", + "allow-delete-request": "Permitir excluir solicitação", + "columns-settings": "Configurações de colunas", + "display-columns": "Colunas para exibir", + "column": "Coluna", + "no-columns-found": "Nenhuma coluna encontrada", + "no-columns-matching": "'{{column}}' não encontrado." + }, + "range-chart": { + "chart": "Gráfico", + "data-zoom": "Zoom de dados", + "range-chart-appearance": "Aparência do gráfico de intervalo", + "range-colors": "Cores do intervalo", + "out-of-range-color": "Cor fora do intervalo", + "show-range-thresholds": "Exibir limites do intervalo", + "range-thresholds-settings": "Configurações de limites do intervalo", + "fill-area": "Preencher área", + "fill-area-opacity": "Opacidade do preenchimento da área", + "range-chart-style": "Estilo do gráfico de intervalo" + }, + "knob": { + "behavior": "Comportamento", + "initial-value": "Valor inicial", + "initial-value-hint": "Ação para obter o valor inicial do knob.", + "on-value-change": "Ao alterar o valor", + "on-value-change-hint": "Ação acionada quando o valor do knob é alterado.", + "range": "Intervalo", + "min": "mín", + "max": "máx", + "value": "Valor", + "fallback-initial-value": "Valor inicial de fallback" + }, + "rpc": { + "value-settings": "Configurações de valor", + "initial-value": "Valor inicial", + "retrieve-value-settings": "Configurações de recuperação do valor ligado/desligado", + "retrieve-value-method": "Recuperar valor usando método", + "retrieve-value-method-none": "Não recuperar", + "retrieve-value-method-rpc": "Chamar método RPC de obtenção de valor", + "retrieve-value-method-attribute": "Assinar atributo", + "retrieve-value-method-timeseries": "Assinar série temporal", + "attribute-value-key": "Chave do atributo", + "timeseries-value-key": "Chave da série temporal", + "get-value-method": "Método RPC de obtenção de valor", + "parse-value-function": "Função de análise de valor", + "update-value-settings": "Configurações de atualização de valor", + "set-value-method": "Método RPC de definição de valor", + "convert-value-function": "Função de conversão de valor", + "rpc-settings": "Configurações de RPC", + "request-timeout": "Tempo Limite da requisição RPC (ms)", + "persistent-rpc-settings": "Configurações RPC persistente", + "request-persistent": "Requisição RPC persistente", + "persistent-polling-interval": "Intervalo de polling (ms) para obter resposta do comando RPC persistente", + "common-settings": "Configurações comuns", + "switch-title": "Título do switch", + "show-on-off-labels": "Exibir rótulos ligado/desligado", + "slide-toggle-label": "Rótulo do botão deslizante", + "label-position": "Posição do rótulo", + "label-position-before": "Antes", + "label-position-after": "Depois", + "slider-color": "Cor do slider", + "slider-color-primary": "Primária", + "slider-color-accent": "Destaque", + "slider-color-warn": "Aviso", + "button-style": "Estilo do botão", + "button-raised": "Botão elevado", + "button-primary": "Cor primária", + "button-background-color": "Cor de fundo do botão", + "button-text-color": "Cor do texto do botão", + "widget-title": "Título do widget", + "button-label": "Rótulo do botão", + "device-attribute-scope": "Escopo do atributo do dispositivo", + "server-attribute": "Atributo do servidor", + "shared-attribute": "Atributo compartilhado", + "device-attribute-parameters": "Parâmetros do atributo do dispositivo", + "is-one-way-command": "É comando unidirecional", + "rpc-method": "Método RPC", + "rpc-method-params": "Parâmetros do método RPC", + "show-rpc-error": "Exibir erro de execução do comando RPC", + "led-title": "Título do LED", + "led-color": "Cor do LED", + "check-status-settings": "Configurações de verificação de status", + "perform-rpc-status-check": "Realizar verificação de status do dispositivo via RPC", + "retrieve-led-status-value-method": "Recuperar valor de status do LED usando método", + "led-status-value-attribute": "Atributo do dispositivo contendo o valor de status do LED", + "led-status-value-timeseries": "Série temporal do dispositivo contendo o valor de status do LED", + "check-status-method": "Método RPC de verificação de status do dispositivo", + "parse-led-status-value-function": "Função de análise do valor de status do LED", + "knob-title": "Título do knob" + }, + "maps": { + "map-type": { + "type": "Tipo de mapa", + "map": "Mapa", + "image": "Imagem" + }, + "image": { + "image-source": "Fonte da imagem", + "image-source-image": "Imagem", + "image-source-entity-key": "Chave de entidade", + "source-entity-alias": "Alias de entidade de origem", + "image-url-key": "Chave de URL da imagem", + "image-url-key-required": "A chave de URL da imagem é obrigatória" + }, + "control": { + "map-controls": "Controles do mapa", + "position": "Posição", + "position-topleft": "Superior esquerdo", + "position-topright": "Superior direito", + "position-bottomleft": "Inferior esquerdo", + "position-bottomright": "Inferior direito", + "zoom-actions": "Ações de zoom", + "zoom-scroll": "Rolagem", + "zoom-double-click": "Duplo clique", + "zoom-control-buttons": "Botões de controle", + "scale": "Escala", + "scale-metric": "Métrico", + "scale-imperial": "Imperial", + "switch-to-drag-mode-using-button": "Alternar para modo arrastar usando botão" + }, + "timeline": { + "control-panel": "Painel de controle da linha do tempo", + "time-step": "Passo de tempo", + "speed-options": "Opções de velocidade", + "timestamp": "Timestamp", + "snap-to-real-location": "Ajustar à localização real", + "location-snap-filter-function": "Função de filtro de ajuste de localização", + "no-trips-data-available": "Nenhum dado de viagem disponível" + }, + "map-action": { + "map-action-buttons": "Botões de ação do mapa", + "label": "Rótulo", + "icon": "Ícone", + "color": "Cor", + "action": "Ação", + "add-button": "Adicionar botão", + "no-action-buttons-configured": "Nenhum botão de ação configurado", + "remove-action-button": "Remover botão de ação", + "map-action-button": "Botão de ação do mapa", + "button-requires": "O botão requer rótulo ou ícone" + }, + "common": { + "common-map-settings": "Configurações comuns do mapa", + "fit-map-bounds": "Ajustar limites do mapa para cobrir todos os marcadores", + "default-map-center-position": "Posição central padrão do mapa", + "default-map-zoom-level": "Nível de zoom padrão do mapa", + "entities-limit": "Limite de entidades a carregar" + }, + "layer": { + "label": "Rótulo", + "layer": "Camada", + "layers": "Camadas", + "map-layers": "Camadas do mapa", + "add-layer": "Adicionar camada", + "layer-settings": "Configurações da camada", + "remove-layer": "Remover camada", + "no-layers": "Nenhuma camada configurada", + "roadmap": "Mapa de ruas", + "satellite": "Satélite", + "hybrid": "Híbrido", + "reference": { + "reference-layer": "Camada de referência", + "no-layer": "Sem camada", + "openstreetmap-hybrid": "OpenStreetMap Hybrid", + "world-edition-hybrid": "World Edition Hybrid", + "enhanced-contrast-hybrid": "Enhanced Contrast Hybrid" + }, + "provider": { + "provider": "Provedor", + "openstreet": { + "title": "OpenStreet", + "mapnik": "Mapnik", + "hot": "HOT", + "esri-street": "WorldStreetMap", + "esri-topo": "WorldTopoMap", + "esri-imagery": "WorldImagery", + "cartodb-positron": "Positron", + "cartodb-dark-matter": "DarkMatter" + }, + "google": { + "title": "Google", + "roadmap": "Mapa de ruas", + "satellite": "Satélite", + "hybrid": "Híbrido", + "terrain": "Terreno" + }, + "here": { + "title": "HERE", + "normal-day": "Dia normal", + "normal-night": "Noite normal", + "hybrid-day": "Dia híbrido", + "terrain-day": "Dia de terreno" + }, + "tencent": { + "title": "Tencent", + "normal": "Normal", + "satellite": "Satélite", + "terrain": "Terreno" + }, + "custom": { + "title": "Personalizado", + "tile-url": "URL de tile" + } + }, + "credentials": { + "credentials": "Credenciais", + "api-key": "Chave de API" + } + }, + "overlays": { + "overlays": "Sobreposições", + "overlays-hint": "Configure fontes de dados, aparência, comportamento, opções de edição e agrupamento para entidades do mapa", + "trips": "Viagens", + "markers": "Marcadores", + "polygons": "Polígonos", + "circles": "Círculos", + "polylines": "Polilinhas" + }, + "data-layer": { + "source": "Fonte", + "filter": "Filtro", + "additional-data-keys": "Chaves de dados adicionais", + "additional-datasources": "Fontes de dados adicionais", + "additional-datasources-hint": "Fonte de dados para acessar atributos ou telemetria de entidades não exibidas no mapa, utilizável em funções de sobreposição do mapa.", + "more-datasources": "Mais fontes de dados", + "data-keys": "Chaves de dados", + "add-datasource": "Adicionar fonte de dados", + "no-datasources": "Nenhuma fonte de dados configurada", + "remove-datasource": "Remover fonte de dados", + "behavior": "Comportamento", + "on-click": "Ao clicar", + "on-click-hint": "Ação invocada quando o usuário clica no item do mapa.", + "groups": "Grupos", + "groups-hint": "Lista de nomes de grupos atribuídos à sobreposição, usada para alternar sua visibilidade no mapa.", + "color": "Cor", + "color-settings": "Configurações de cor", + "color-type-constant": "Constante", + "color-type-range": "Intervalo", + "color-type-function": "Função", + "color-range-source-key": "Chave de origem do intervalo de cores", + "color-range-source-key-required": "A chave de origem do intervalo de cores é obrigatória", + "color-range": "Intervalo de cores", + "color-function": "Função de cor", + "label": "Rótulo", + "tooltip": "Tooltip", + "pattern-type-pattern": "Padrão", + "pattern-type-function": "Função", + "label-pattern": "Rótulo (exemplos de padrão: '${entityName}', '${entityName}: (Texto ${keyName} unidades.)' )", + "label-function": "Função de rótulo", + "tooltip-pattern": "Tooltip (ex.: 'Texto ${keyName} unidades.' ou Texto do link)", + "tooltip-function": "Função de tooltip", + "tooltip-trigger": "Acionador do tooltip", + "tooltip-trigger-click": "Exibir tooltip ao clicar", + "tooltip-trigger-hover": "Exibir tooltip ao passar o mouse", + "auto-close-tooltips": "Fechar tooltips automaticamente", + "tooltip-offset": "Deslocamento do tooltip", + "tooltip-offset-horizontal": "Horizontal", + "tooltip-offset-vertical": "Vertical", + "tooltip-tag-actions": "Ações de tag", + "add-tooltip-tag-action": "Adicionar ação de tag", + "edit-tooltip-tag-action": "Editar ação de tag", + "remove-tooltip-tag-action": "Remover ação de tag", + "action-add": "Adicionar", + "action-edit": "Editar", + "action-move": "Mover", + "action-remove": "Remover", + "edit-instruments": "Instrumentos", + "persist-location-attribute-scope": "Escopo do atributo para persistir localização", + "enable-snapping": "Ativar ajuste a outros vértices para desenho preciso", + "enable-snapping-hint": "Alinha automaticamente novos pontos com formas existentes para facilitar e tornar o desenho mais preciso.", + "drag-drop-mode": "Modo arrastar e soltar", + "trip": { + "no-trips": "Nenhuma viagem configurada", + "add-trip": "Adicionar viagem", + "trip-configuration": "Configuração de viagem", + "remove-trip": "Remover viagem" + }, + "marker": { + "marker": "Marcador", + "latitude-key": "Chave de latitude", + "longitude-key": "Chave de longitude", + "x-pos-key": "Chave de posição X", + "y-pos-key": "Chave de posição Y", + "latitude-key-required": "Chave de latitude obrigatória", + "longitude-key-required": "Chave de longitude obrigatória", + "x-pos-key-required": "Chave de posição X obrigatória", + "y-pos-key-required": "Chave de posição Y obrigatória", + "no-markers": "Nenhum marcador configurado", + "add-marker": "Adicionar marcador", + "marker-configuration": "Configuração de marcador", + "remove-marker": "Remover marcador", + "marker-type": "Tipo de marcador", + "marker-type-shape": "Forma", + "marker-type-icon": "Ícone", + "marker-type-image": "Imagem", + "shape": "Forma", + "icon": "Ícone", + "image": "Imagem", + "marker-shapes": "Formas de marcador", + "marker-icon": "Ícone do marcador", + "marker-appearance": "Aparência do marcador", + "marker-image": "Imagem do marcador", + "marker-image-type-image": "Imagem", + "marker-image-type-function": "Função", + "custom-marker-image-size": "Tamanho personalizado da imagem do marcador", + "marker-image-function": "Função de imagem do marcador", + "marker-images": "Imagens do marcador", + "marker-offset": "Deslocamento do marcador", + "offset-horizontal": "Horizontal", + "offset-vertical": "Vertical", + "rotate-marker": "Girar marcador", + "offset-angle": "Ângulo de deslocamento", + "position-conversion": "Conversão de posição", + "position-conversion-function": "Função de conversão de posição, deve retornar coordenadas x,y como double de 0 a 1 cada", + "clustering": { + "use-map-markers-clustering": "Usar agrupamento de marcadores do mapa", + "zoom-on-cluster-click": "Aplicar zoom ao clicar em um cluster", + "max-zoom": "O nível máximo de zoom em que um marcador pode fazer parte de um cluster (0 - 18)", + "max-radius": "Raio máximo que um cluster cobrirá", + "zoom-animation": "Animação nos marcadores ao aplicar zoom", + "bounds-on-cluster-mouse-over": "Limites dos marcadores ao passar o mouse sobre um cluster", + "spiderfy-max-zoom-level": "Spiderfy no nível máximo de zoom (para ver todos os marcadores do cluster)", + "load-optimization": "Otimização de carregamento", + "chunked-load": "Usar blocos para adicionar marcadores de forma que a página não congele", + "lazy-load": "Usar carregamento lazy para adicionar marcadores", + "use-cluster-marker-color-function": "Usar função de cor dos marcadores do cluster", + "marker-color-function": "Função de cor do marcador" + }, + "edit": "Editar marcador", + "remove-marker-for": "Remover marcador para '{{entityName}}'", + "place-marker": "Posicionar marcador", + "place-marker-hint": "Clique para posicionar o marcador", + "place-marker-hint-with-entity": "Clique para posicionar a entidade '{{entityName}}'" + }, + "path": { + "path": "Caminho", + "path-decorator": "Decorador de caminho", + "decorator-symbol": "Símbolo do decorador", + "decorator-symbol-arrow-head": "Seta", + "decorator-symbol-dash": "Traço", + "decorator-arrangement": "Disposição do decorador", + "decorator-offset": "Início", + "decorator-end-offset": "Fim", + "decorator-repeat": "Repetir" + }, + "points": { + "points": "Pontos", + "point-tooltip": "Tooltip do ponto" + }, + "shape": { + "fill": "Preenchimento", + "fill-type-color": "Cor", + "fill-type-stripe": "Listras", + "fill-type-image": "Imagem", + "color": "Cor", + "stripe": "Listras", + "image": "Imagem", + "stroke": "Contorno", + "fill-image": "Imagem de preenchimento", + "fill-image-type-image": "Imagem", + "fill-image-type-function": "Função", + "preserve-aspect-ratio": "Preservar proporção", + "opacity": "Opacidade", + "angle": "Ângulo de rotação", + "scale": "Escala", + "fill-image-function": "Função de imagem de preenchimento da forma", + "fill-images": "Imagens de preenchimento da forma", + "stripe-pattern": "Padrão de listras", + "first-stripe": "Primeira listra", + "second-stripe": "Segunda listra" + }, + "polygon": { + "polygon-key": "Chave do polígono", + "polygon-key-required": "Chave do polígono obrigatória", + "no-polygons": "Nenhum polígono configurado", + "add-polygon": "Adicionar polígono", + "polygon-configuration": "Configuração de polígono", + "remove-polygon": "Remover polígono", + "edit": "Editar polígono", + "remove-polygon-for": "Remover polígono para '{{entityName}}'", + "cut": "Recortar área do polígono", + "rotate": "Girar polígono", + "draw-rectangle": "Desenhar retângulo", + "draw-polygon": "Desenhar polígono", + "polygon-place-first-point-cut-hint": "Clique para posicionar o primeiro ponto", + "continue-polygon-cut-hint": "Clique para continuar desenhando", + "finish-polygon-cut-hint": "Clique no primeiro marcador para concluir e salvar", + "polygon-place-first-point-hint": "Polígono: clique para posicionar o primeiro ponto", + "polygon-place-first-point-hint-with-entity": "Polígono para '{{entityName}}': clique para posicionar o primeiro ponto", + "continue-polygon-hint": "Polígono: clique para continuar desenhando", + "continue-polygon-hint-with-entity": "Polígono para '{{entityName}}': clique para continuar desenhando", + "finish-polygon-hint": "Polígono: clique no primeiro marcador para concluir o desenho", + "finish-polygon-hint-with-entity": "Polígono para '{{entityName}}': clique no primeiro marcador para concluir e salvar", + "rectangle-place-first-point-hint": "Retângulo: clique para posicionar o primeiro ponto", + "rectangle-place-first-point-hint-with-entity": "Retângulo para '{{entityName}}': clique para posicionar o primeiro ponto", + "finish-rectangle-hint": "Retângulo: clique para concluir o desenho", + "finish-rectangle-hint-with-entity": "Retângulo para '{{entityName}}': clique para concluir e salvar" + }, + "circle": { + "circle-key": "Chave do círculo", + "circle-key-required": "Chave do círculo obrigatória", + "no-circles": "Nenhum círculo configurado", + "add-circle": "Adicionar círculo", + "circle-configuration": "Configuração de círculo", + "remove-circle": "Remover círculo", + "edit": "Editar círculo", + "remove-circle-for": "Remover círculo para '{{entityName}}'", + "draw-circle": "Desenhar círculo", + "place-circle-center-hint-with-entity": "Círculo para '{{entityName}}': clique para posicionar o centro do círculo", + "place-circle-center-hint": "Círculo: clique para posicionar o centro do círculo", + "finish-circle-hint-with-entity": "Círculo para '{{entityName}}': clique para concluir e salvar o círculo", + "finish-circle-hint": "Círculo: clique para concluir o desenho" + }, + "polyline": { + "polyline-key": "Chave da polilinha", + "polyline-key-required": "Chave da polilinha obrigatória", + "no-polylines": "Nenhuma polilinha configurada", + "add-polylines": "Adicionar polilinha", + "polyline-configuration": "Configuração de polilinha", + "remove-polyline": "Remover polilinha", + "edit": "Editar polilinha", + "cut": "Recortar área da polilinha", + "rotate": "Girar polilinha", + "remove-polyline-for": "Remover polilinha para '{{entityName}}'", + "draw-polyline": "Desenhar polilinha", + "polyline-place-first-point-hint-with-entity": "Polilinha para '{{entityName}}': clique para posicionar o primeiro ponto", + "polyline-place-first-point-hint": "Polilinha: clique para posicionar o primeiro ponto", + "finish-polyline-hint-with-entity": "Polilinha para '{{entityName}}': clique para concluir o desenho", + "finish-polyline-hint": "Polilinha: clique para concluir o desenho", + "polyline-place-first-point-cut-hint": "Clique para posicionar o primeiro ponto", + "finish-polyline-cut-hint": "Clique no primeiro marcador para concluir e salvar" + }, + "select-entity": "Selecionar entidade", + "select-entity-hint": "Dica: após a seleção, clique no mapa para definir a posição" + }, + "select-entity": "Selecionar entidade", + "select-entity-hint": "Dica: após a seleção, clique no mapa para definir a posição", + "tooltips": { + "placeMarker": "Clique para posicionar a entidade '{{entityName}}'", + "firstVertex": "Polígono para '{{entityName}}': clique para posicionar o primeiro ponto", + "firstVertex-cut": "Clique para posicionar o primeiro ponto", + "continueLine": "Polígono para '{{entityName}}': clique para continuar desenhando", + "continueLine-cut": "Clique para continuar desenhando", + "finishLine": "Clique em qualquer marcador existente para concluir", + "finishPoly": "Polígono para '{{entityName}}': clique no primeiro marcador para concluir e salvar", + "finishPoly-cut": "Clique no primeiro marcador para concluir e salvar", + "finishRect": "Polígono para '{{entityName}}': clique para concluir e salvar", + "startCircle": "Círculo para '{{entityName}}': clique para posicionar o centro do círculo", + "finishCircle": "Círculo para '{{entityName}}': clique para concluir o círculo", + "placeCircleMarker": "Clique para posicionar o marcador de círculo" + }, + "actions": { + "finish": "Concluir", + "cancel": "Cancelar", + "removeLastVertex": "Remover último ponto" + }, + "buttonTitles": { + "drawMarkerButton": "Posicionar entidade", + "drawPolyButton": "Criar polígono", + "drawLineButton": "Criar polilinha", + "drawCircleButton": "Criar círculo", + "drawRectButton": "Criar retângulo", + "editButton": "Modo de edição", + "dragButton": "Modo arrastar e soltar", + "cutButton": "Recortar área do polígono", + "deleteButton": "Remover", + "drawCircleMarkerButton": "Criar marcador de círculo", + "rotateButton": "Girar polígono" + }, + "map-provider-settings": "Configurações do provedor de mapa", + "map-provider": "Provedor de mapa", + "map-provider-google": "Google Maps", + "map-provider-openstreet": "OpenStreet Maps", + "map-provider-here": "HERE Maps", + "map-provider-image": "Mapa de imagem", + "map-provider-tencent": "Tencent Maps", + "openstreet-provider": "Provedor de mapa OpenStreet", + "openstreet-provider-mapnik": "OpenStreetMap.Mapnik (Padrão)", + "openstreet-provider-hot": "OpenStreetMap.HOT", + "openstreet-provider-esri-street": "Esri.WorldStreetMap", + "openstreet-provider-esri-topo": "Esri.WorldTopoMap", + "openstreet-provider-esri-imagery": "Esri.WorldImagery", + "openstreet-provider-cartodb-positron": "CartoDB.Positron", + "openstreet-provider-cartodb-dark-matter": "CartoDB.DarkMatter", + "use-custom-provider": "Usar provedor personalizado", + "custom-provider-tile-url": "URL de tile do provedor personalizado", + "google-maps-api-key": "Chave de API do Google Maps", + "default-map-type": "Tipo de mapa padrão", + "google-map-type-roadmap": "Mapa de ruas", + "google-map-type-satelite": "Satélite", + "google-map-type-hybrid": "Híbrido", + "google-map-type-terrain": "Terreno", + "map-layer": "Camada do mapa", + "here-map-normal-day": "HERE.normalDay (Padrão)", + "here-map-normal-night": "HERE.normalNight", + "here-map-hybrid-day": "HERE.hybridDay", + "here-map-terrain-day": "HERE.terrainDay", + "credentials": "Credenciais", + "here-app-id": "ID do app HERE", + "here-app-code": "Código do app HERE", + "here-api-key": "Chave de API HERE", + "here-use-new-version-api-3": "Usar versão 3 da API", + "tencent-maps-api-key": "Chave de API do Tencent Maps", + "tencent-map-type-roadmap": "Mapa de ruas", + "tencent-map-type-satelite": "Satélite", + "tencent-map-type-hybrid": "Híbrido", + "image-map-background": "Fundo do mapa de imagem", + "image-map-background-from-entity-attribute": "Obter fundo do mapa de imagem do atributo de entidade", + "image-url-source-entity-alias": "Alias de entidade de origem da URL da imagem", + "image-url-source-entity-attribute": "Atributo de entidade de origem da URL da imagem", + "common-map-settings": "Configurações comuns do mapa", + "x-pos-key-name": "Nome da chave de posição X", + "y-pos-key-name": "Nome da chave de posição Y", + "latitude-key-name": "Nome da chave de latitude", + "longitude-key-name": "Nome da chave de longitude", + "default-map-zoom-level": "Nível de zoom padrão do mapa (0 - 20)", + "default-map-center-position": "Posição central padrão do mapa (0,0)", + "disable-scroll-zooming": "Desativar zoom por rolagem", + "disable-double-click-zooming": "Desativar zoom por duplo clique", + "disable-zoom-control-buttons": "Desativar botões de controle de zoom", + "fit-map-bounds": "Ajustar limites do mapa para cobrir todos os marcadores", + "use-default-map-center-position": "Usar posição central padrão do mapa", + "entities-limit": "Limite de entidades a carregar", + "markers-settings": "Configurações de marcadores", + "marker-offset-x": "Deslocamento X do marcador relativo à posição multiplicado pela largura do marcador", + "marker-offset-y": "Deslocamento Y do marcador relativo à posição multiplicado pela altura do marcador", + "position-function": "Função de conversão de posição, deve retornar coordenadas x,y como double de 0 a 1 cada", + "draggable-marker": "Marcador arrastável", + "label": "Rótulo", + "show-label": "Exibir rótulo", + "use-label-function": "Usar função de rótulo", + "label-pattern": "Rótulo (exemplos de padrão: '${entityName}', '${entityName}: (Texto ${keyName} unidades.)' )", + "label-function": "Função de rótulo", + "tooltip": "Tooltip", + "show-tooltip": "Exibir tooltip", + "show-tooltip-action": "Ação para exibir o tooltip", + "show-tooltip-action-click": "Exibir tooltip ao clicar (Padrão)", + "show-tooltip-action-hover": "Exibir tooltip ao passar o mouse", + "auto-close-tooltips": "Fechar tooltips automaticamente", + "use-tooltip-function": "Usar função de tooltip", + "tooltip-pattern": "Tooltip (ex.: 'Texto ${keyName} unidades.' ou Texto do link')", + "tooltip-function": "Função de tooltip", + "tooltip-offset-x": "Deslocamento X do tooltip relativo à âncora do marcador multiplicado pela largura do marcador", + "tooltip-offset-y": "Deslocamento Y do tooltip relativo à âncora do marcador multiplicado pela altura do marcador", + "color": "Cor", + "use-color-function": "Usar função de cor", + "color-function": "Função de cor", + "marker-image": "Imagem do marcador", + "use-marker-image-function": "Usar função de imagem do marcador", + "custom-marker-image": "Imagem personalizada do marcador", + "custom-marker-image-size": "Tamanho da imagem personalizada do marcador (px)", + "marker-image-function": "Função de imagem do marcador", + "marker-images": "Imagens do marcador", + "polygon-settings": "Configurações de polígono", + "show-polygon": "Exibir polígono", + "polygon-key-name": "Nome da chave do polígono", + "enable-polygon-edit": "Ativar edição de polígono", + "polygon-label": "Rótulo do polígono", + "show-polygon-label": "Exibir rótulo do polígono", + "use-polygon-label-function": "Usar função de rótulo do polígono", + "polygon-label-pattern": "Rótulo do polígono (exemplos de padrão: '${entityName}', '${entityName}: (Texto ${keyName} unidades.)' )", + "polygon-label-function": "Função de rótulo do polígono", + "polygon-tooltip": "Tooltip do polígono", + "show-polygon-tooltip": "Exibir tooltip do polígono", + "auto-close-polygon-tooltips": "Fechar tooltips do polígono automaticamente", + "use-polygon-tooltip-function": "Usar função de tooltip do polígono", + "polygon-tooltip-pattern": "Tooltip (ex.: 'Texto ${keyName} unidades.' ou Texto do link')", + "polygon-tooltip-function": "Função de tooltip do polígono", + "polygon-color": "Cor do polígono", + "polygon-opacity": "Opacidade do polígono", + "use-polygon-color-function": "Usar função de cor do polígono", + "polygon-color-function": "Função de cor do polígono", + "polygon-stroke": "Contorno do polígono", + "stroke-color": "Cor do contorno", + "stroke-opacity": "Opacidade do contorno", + "stroke-weight": "Espessura do contorno", + "use-polygon-stroke-color-function": "Usar função de cor do contorno do polígono", + "polygon-stroke-color-function": "Função de cor do contorno do polígono", + "circle-settings": "Configurações de círculo", + "show-circle": "Exibir círculo", + "circle-key-name": "Nome da chave do círculo", + "enable-circle-edit": "Ativar edição de círculo", + "circle-label": "Rótulo do círculo", + "show-circle-label": "Exibir rótulo do círculo", + "use-circle-label-function": "Usar função de rótulo do círculo", + "circle-label-pattern": "Rótulo do círculo (exemplos de padrão: '${entityName}', '${entityName}: (Texto ${keyName} unidades.)' )", + "circle-label-function": "Função de rótulo do círculo", + "circle-tooltip": "Tooltip do círculo", + "show-circle-tooltip": "Exibir tooltip do círculo", + "auto-close-circle-tooltips": "Fechar tooltips do círculo automaticamente", + "use-circle-tooltip-function": "Usar função de tooltip do círculo", + "circle-tooltip-pattern": "Tooltip (ex.: 'Texto ${keyName} unidades.' ou Texto do link')", + "circle-tooltip-function": "Função de tooltip do círculo", + "circle-fill-color": "Cor de preenchimento do círculo", + "circle-fill-color-opacity": "Opacidade da cor de preenchimento do círculo", + "use-circle-fill-color-function": "Usar função de cor de preenchimento do círculo", + "circle-fill-color-function": "Função de cor de preenchimento do círculo", + "circle-stroke": "Contorno do círculo", + "use-circle-stroke-color-function": "Usar função de cor do contorno do círculo", + "circle-stroke-color-function": "Função de cor do contorno do círculo", + "markers-clustering-settings": "Configurações de agrupamento de marcadores", + "use-map-markers-clustering": "Usar agrupamento de marcadores do mapa", + "zoom-on-cluster-click": "Aplicar zoom ao clicar em um cluster", + "max-cluster-zoom": "O nível máximo de zoom em que um marcador pode fazer parte de um cluster (0 - 18)", + "max-cluster-radius-pixels": "Raio máximo que um cluster cobrirá em pixels", + "cluster-zoom-animation": "Exibir animação nos marcadores ao aplicar zoom", + "show-markers-bounds-on-cluster-mouse-over": "Exibir os limites dos marcadores ao passar o mouse sobre um cluster", + "spiderfy-max-zoom-level": "Spiderfy no nível máximo de zoom (para ver todos os marcadores do cluster)", + "load-optimization": "Otimização de carregamento", + "cluster-chunked-loading": "Usar blocos para adicionar marcadores de forma que a página não congele", + "cluster-markers-lazy-load": "Usar carregamento lazy para adicionar marcadores", + "editor-settings": "Configurações do editor", + "enable-snapping": "Ativar ajuste a outros vértices para desenho preciso", + "init-draggable-mode": "Inicializar o mapa em modo arrastável", + "hide-all-edit-buttons": "Ocultar todos os botões de controle de edição", + "hide-draw-buttons": "Ocultar botões de desenho", + "hide-edit-buttons": "Ocultar botões de edição", + "hide-remove-button": "Ocultar botão de remoção", + "route-map-settings": "Configurações do mapa de rotas", + "trip-animation-settings": "Configurações de animação de viagem", + "normalization-step": "Passo de normalização de dados (ms)", + "tooltip-background-color": "Cor de fundo do tooltip", + "tooltip-font-color": "Cor da fonte do tooltip", + "tooltip-opacity": "Opacidade do tooltip (0-1)", + "auto-close-tooltip": "Fechar tooltip automaticamente", + "rotation-angle": "Definir ângulo de rotação adicional para o marcador (graus)", + "path-settings": "Configurações de caminho", + "path-color": "Cor do caminho", + "use-path-color-function": "Usar função de cor do caminho", + "path-color-function": "Função de cor do caminho", + "path-decorator": "Decorador de caminho", + "use-path-decorator": "Usar decorador de caminho", + "decorator-symbol": "Símbolo do decorador", + "decorator-symbol-arrow-head": "Seta", + "decorator-symbol-dash": "Traço", + "decorator-symbol-size": "Tamanho do símbolo do decorador (px)", + "use-path-decorator-custom-color": "Usar cor personalizada do decorador de caminho", + "decorator-custom-color": "Cor personalizada do decorador", + "decorator-offset": "Deslocamento do decorador", + "end-decorator-offset": "Deslocamento final do decorador", + "decorator-repeat": "Repetição do decorador", + "points-settings": "Configurações de pontos", + "show-points": "Exibir pontos", + "point-color": "Cor do ponto", + "point-size": "Tamanho do ponto (px)", + "use-point-color-function": "Usar função de cor do ponto", + "point-color-function": "Função de cor do ponto", + "use-point-as-anchor": "Usar ponto como âncora", + "point-as-anchor-function": "Função de ponto como âncora", + "independent-point-tooltip": "Tooltip de ponto independente", + "clustering-markers": "Agrupamento de marcadores", + "use-icon-create-function": "Usar função de cor dos marcadores", + "marker-color-function": "Função de cor do marcador" + }, + "markdown": { + "use-markdown-text-function": "Usar função de valor Markdown/HTML", + "markdown-text-function": "Função de valor Markdown/HTML", + "markdown-text-pattern": "Padrão Markdown/HTML (markdown ou HTML com variáveis, ex.: '${entityName} ou ${keyName} - algum texto.')", + "apply-default-markdown-style": "Aplicar estilo Markdown padrão", + "markdown-css": "CSS Markdown/HTML" + }, + "simple-card": { + "label": "Rótulo", + "label-position": "Posição do rótulo", + "label-position-left": "Esquerda", + "label-position-top": "Superior" + }, + "single-switch": { + "behavior": "Comportamento", + "layout": "Layout", + "layout-right": "Direita", + "layout-left": "Esquerda", + "layout-centered": "Centralizado", + "auto-scale": "Escala automática", + "label": "Rótulo", + "icon": "Ícone", + "switch-color": "Cor do switch", + "on": "On", + "off": "Off", + "disabled": "Desabilitado", + "tumbler-color": "Cor do botão", + "on-label": "Rótulo ligado", + "off-label": "Rótulo desligado", + "switch": "Switch" + }, + "slider": { + "behavior": "Comportamento", + "initial-value": "Valor inicial", + "initial-value-hint": "Ação para obter o valor inicial do slider.", + "on-value-change": "Ao alterar o valor", + "on-value-change-hint": "Ação acionada quando o valor do slider é alterado.", + "layout": "Layout", + "layout-default": "Padrão", + "layout-extended": "Estendido", + "layout-simplified": "Simplificado", + "auto-scale": "Escala automática", + "icon": "Ícone", + "value": "Valor", + "range": "Intervalo", + "min": "mín", + "max": "máx", + "range-ticks": "Marcações do intervalo", + "tick-marks": "Marcas de graduação", + "colors": "Cores", + "main": "Principal", + "background": "Plano de fundo", + "left-icon": "Ícone esquerdo", + "right-icon": "Ícone direito", + "slider": "Slider" + }, + "value-card": { + "layout": "Layout", + "layout-square": "Quadrado", + "layout-vertical": "Vertical", + "layout-centered": "Centralizado", + "layout-simplified": "Simplificado", + "layout-horizontal": "Horizontal", + "layout-horizontal-reversed": "Horizontal invertido", + "label": "Rótulo", + "icon": "Ícone", + "value": "Valor", + "date": "Data", + "value-card-style": "Estilo do cartão de valor", + "auto-scale": "Escala automática" + }, + "label-card": { + "auto-scale": "Escala automática", + "label": "Rótulo", + "icon": "Ícone", + "label-card-style": "Estilo do cartão de rótulo" + }, + "label-value-card": { + "value": "Valor", + "label-value-card-style": "Estilo do cartão de rótulo e valor" + }, + "liquid-level-card": { + "layout-simple": "Simples", + "layout-percentage": "Porcentagem", + "layout-absolute": "Absoluto", + "layout": "Layout", + "background-overlay": "Sobreposição de fundo do valor", + "total-volume": "Volume total", + "total-volume-units": "Unidades de volume total", + "tank": "Tanque", + "shape": "Forma", + "datasource-units": "Unidades da fonte", + "widget-units": "Unidades do widget", + "decimals": "Casas decimais", + "liquid": "Líquido", + "liquid-color": "Cor do líquido", + "value": "Valor", + "value-font": "Fonte do valor", + "level": "Nível", + "last-update": "Última atualização", + "shape-by-attribute": "Definir forma do tanque por nome de atributo", + "tooltip-background": "Cor de fundo", + "background-blur": "Desfoque de fundo", + "tank-color": "Cor do tanque", + "static": "Estático", + "see-examples": "Ver exemplos", + "attribute": "Atributo", + "shape-type": "Tipo", + "v-oval": "Oval vertical", + "v-cylinder": "Cilindro vertical", + "v-capsule": "Cápsula vertical", + "rectangle": "Retângulo", + "h-oval": "Oval horizontal", + "h-ellipse": "Elipse horizontal", + "h-dish-ends": "Extremidades de prato horizontal", + "h-cylinder": "Cilindro horizontal", + "h-capsule": "Cápsula horizontal", + "h-elliptical_2_1": "Elíptico horizontal 2:1", + "icon": "Ícone do card", + "title": "Título do card", + "units": "Unidades", + "color-and-font": "Cor e fonte", + "shape-attribute-name": "Nome do atributo", + "total-volume-required": "O volume total é obrigatório.", + "attribute-name-required": "O nome do atributo é obrigatório.", + "attribute-key-not-set": "Chave do atributo '{{attributeName}}' não definida", + "attribute-key-invalid": "Chave do atributo '{{attributeName}}' é inválida" + }, + "aggregated-value-card": { + "subtitle": "Subtítulo", + "chart": "Gráfico", + "values": "Valores", + "value-appearance": "Aparência do valor", + "position": "Posição", + "position-center": "Centro", + "position-right-top": "Direito superior", + "position-right-bottom": "Direito inferior", + "position-left-top": "Esquerdo superior", + "position-left-bottom": "Esquerdo inferior", + "font": "Fonte", + "color": "Cor", + "arrow": "Seta", + "display-up-down-arrow": "Exibir seta para cima/baixo", + "add-value": "Adicionar valor", + "remove-value": "Remover valor", + "no-values": "Nenhum valor configurado", + "aggregation": "Agregação", + "aggregated-value-card-style": "Estilo do cartão de valor agregado", + "auto-scale": "Escala automática" + }, + "value-chart-card": { + "layout": "Layout", + "layout-left": "Esquerda", + "layout-right": "Direita", + "auto-scale": "Escala automática", + "icon": "Ícone", + "value": "Valor", + "chart": "Gráfico", + "value-chart-card-style": "Estilo do cartão de gráfico de valor" + }, + "progress-bar": { + "layout": "Layout", + "layout-default": "Padrão", + "layout-simplified": "Simplificado", + "auto-scale": "Escala automática", + "icon": "Ícone", + "value": "Valor", + "range": "Intervalo", + "min": "mín", + "max": "máx", + "range-ticks": "Marcações do intervalo", + "bar": "Barra", + "bar-color": "Cor da barra", + "bar-background": "Fundo da barra", + "progress-bar-card-style": "Estilo do cartão de barra de progresso" + }, + "notification": { + "max-notification-display": "Máximo de notificações a exibir", + "counter": "Contador", + "counter-hint": "O contador será exibido se \"Título do widget\" estiver ativado", + "icon": "Ícone", + "counter-value": "Valor", + "counter-color": "Cor", + "notification-button": "Botões de notificação", + "button-view-all": "Ver todos", + "button-filter": "Filtro", + "type-filter": "Filtro de tipo", + "button-mark-read": "Marcar todos como lidos", + "notification-types": "Tipos de notificação", + "notification-type": "Tipo de notificação", + "search-type": "Tipo de pesquisa", + "any-type": "Qualquer tipo" + }, + "alarm-count": { + "alarm-count-card-style": "Estilo do cartão de contagem de alarmes" + }, + "entity-count": { + "entity-count-card-style": "Estilo do cartão de contagem de entidades" + }, + "count": { + "layout": "Layout", + "layout-column": "Coluna", + "layout-row": "Linha", + "label": "Rótulo", + "icon": "Ícone", + "icon-background": "Fundo do ícone", + "value": "Valor", + "chevron": "Divisa", + "auto-scale": "Escala automática" + }, + "table": { + "common-table-settings": "Configurações comuns da tabela", + "enable-search": "Ativar pesquisa", + "enable-sticky-header": "Sempre exibir cabeçalho", + "enable-sticky-action": "Sempre exibir coluna de ações", + "hidden-cell-button-display-mode": "Modo de exibição das ações de botão de célula oculta", + "show-empty-space-hidden-action": "Exibir espaço vazio em vez da ação de botão de célula oculta", + "dont-reserve-space-hidden-action": "Não reservar espaço para botões de ação ocultos", + "display-timestamp": "Timestamp", + "timestamp-column-name": "Timestamp", + "display-pagination": "Exibir paginação", + "default-page-size": "Tamanho padrão da página", + "page-step-settings": "Configurações de passo de página", + "page-step-count": "Número de passos", + "page-step-increment": "Incremento do passo", + "page-step-count-format-message": "Deve ser um valor inteiro no intervalo de 1 a 100.", + "page-step-increment-format-message": "Deve ser um valor inteiro maior ou igual a 1.", + "use-entity-label-tab-name": "Usar rótulo de entidade no nome da aba", + "hide-empty-lines": "Ocultar linhas vazias", + "row-style": "Estilo da linha", + "use-row-style-function": "Usar função de estilo de linha", + "row-style-function": "Função de estilo de linha", + "cell-style": "Estilo da célula", + "use-cell-style-function": "Usar função de estilo de célula", + "cell-style-function": "Função de estilo de célula", + "cell-content": "Conteúdo da célula", + "use-cell-content-function": "Usar função de conteúdo de célula", + "cell-content-function": "Função de conteúdo de célula", + "show-latest-data-column": "Exibir coluna de dados mais recentes", + "latest-data-column-order": "Ordem da coluna de dados mais recentes", + "entities-table-title": "Título da tabela de entidades", + "enable-select-column-display": "Ativar seleção de colunas a exibir", + "display-entity-name": "Exibir coluna de nome da entidade", + "entity-name-column-title": "Título da coluna de nome da entidade", + "display-entity-label": "Exibir coluna de rótulo da entidade", + "entity-label-column-title": "Título da coluna de rótulo da entidade", + "display-entity-type": "Exibir coluna de tipo de entidade", + "default-sort-order": "Ordem de classificação padrão", + "custom-title": "Título personalizado do cabeçalho", + "column-width": "Largura da coluna (px ou %)", + "default-column-visibility": "Visibilidade padrão da coluna", + "column-visibility-visible": "Visível", + "column-visibility-hidden": "Oculto", + "column-visibility-hidden-mobile": "Oculto no modo móvel", + "column-selection-to-display": "Seleção de coluna em 'Colunas para exibir'", + "column-selection-to-display-enabled": "Ativado", + "column-selection-to-display-disabled": "Desativado", + "alarms-table-title": "Título da tabela de alarmes", + "enable-alarms-selection": "Ativar seleção de alarmes", + "enable-alarms-search": "Ativar pesquisa de alarmes", + "enable-alarm-filter": "Ativar filtro de alarme", + "display-alarm-details": "Exibir detalhes do alarme", + "allow-alarms-ack": "Permitir confirmação de alarmes", + "allow-alarms-clear": "Permitir limpar alarmes", + "display-alarm-activity": "Exibir atividade do alarme", + "allow-alarms-assign": "Permitir atribuição de alarmes", + "columns": "Colunas", + "column-settings": "Configurações da coluna", + "remove-column": "Remover coluna", + "add-column": "Adicionar coluna", + "no-columns": "Nenhuma coluna configurada", + "columns-to-display": "Colunas para exibir", + "table-header": "Cabeçalho da tabela", + "header-buttons": "Botões do cabeçalho", + "table-buttons": "Botões da tabela", + "pagination": "Paginação", + "rows": "Linhas", + "timeseries-column-error": "Pelo menos uma coluna de série temporal deve ser especificada", + "alarm-column-error": "Pelo menos uma coluna de alarme deve ser especificada", + "table-tabs": "Abas da tabela", + "show-cell-actions-menu-mobile": "Exibir menu suspenso de ações de célula no modo móvel", + "disable-sorting": "Desativar classificação", + "sort-by": "Classificar abas por", + "sort-timestamp-option": "Hora de criação" + }, + "latest-chart": { + "total": "Total", + "auto-scale": "Escala automática", + "clockwise-layout": "Layout no sentido horário", + "sort-series": "Ordenar séries por rótulo", + "tooltip-value-type-absolute": "Absoluto", + "tooltip-value-type-percentage": "Porcentagem" + }, + "pie-chart": { + "pie-chart-appearance": "Aparência do gráfico de pizza", + "label": "Rótulo", + "border": "Borda", + "radius": "Raio", + "pie-chart-card-style": "Estilo do cartão de gráfico de pizza" + }, + "radar-chart": { + "radar-appearance": "Aparência do radar", + "shape": "Forma", + "shape-polygon": "Polígono", + "shape-circle": "Círculo", + "color": "Cor", + "line": "Linha", + "points": "Pontos", + "points-label": "Rótulo dos pontos", + "radar-axis": "Eixo do radar", + "axis-label": "Rótulo do eixo", + "ticks-label": "Rótulo das marcações", + "radar-chart-style": "Estilo do gráfico de radar", + "max-axes-scaling": "Escala máxima dos eixos", + "max-axes-scaling-hint": "Escolha se cada eixo do radar tem seu próprio valor máximo (Separado) ou compartilha o maior valor entre todos os eixos com base no conjunto de dados do widget (Comum).", + "separate": "Separado", + "common": "Comum" + }, + "time-series-chart": { + "chart": "Gráfico", + "chart-style": "Estilo do gráfico", + "data-zoom": "Zoom de dados", + "stack-mode": "Modo de empilhamento", + "stack-mode-hint": "Empilha séries no gráfico. As séries com a mesma unidade serão sobrepostas.", + "axes": "Eixos", + "y-axes": "Eixos Y", + "line-type": "Tipo de linha", + "line-width": "Largura da linha", + "type-line": "Linha", + "type-bar": "Barra", + "type-point": "Ponto", + "no-aggregation-bar-width-strategy": "Estratégia de largura de barra para dados não agregados", + "no-aggregation-bar-width-strategy-group": "Grupo", + "no-aggregation-bar-width-strategy-separate": "Separado", + "bar-group-width": "Largura do grupo de barras", + "bar-width": "Largura da barra", + "bar-width-relative": "Percentual da janela de tempo", + "bar-width-absolute": "Absoluto (ms)", + "comparison": { + "comparison": "Comparação", + "comparison-hint": "A comparação funciona apenas com dados históricos!", + "show": "Exibir", + "settings": "Configurações de comparação", + "show-values-for-comparison": "Exibir dados históricos para comparação", + "comparison-values-label": "Rótulo da chave de comparação", + "comparison-values-label-auto": "Automático", + "comparison-data-color": "Cor dos dados de comparação" + }, + "threshold": { + "thresholds": "Limites", + "source": "Fonte", + "key-value": "Chave / Valor", + "no-thresholds": "Nenhum limite configurado", + "add-threshold": "Adicionar limite", + "type-constant": "Constante", + "type-latest-key": "Chave", + "type-entity": "Entidade", + "threshold-settings": "Configurações de limite", + "remove-threshold": "Remover limite", + "threshold-value-required": "O valor do limite é obrigatório.", + "key-required": "A chave é obrigatória.", + "entity-key-required": "A chave da entidade é obrigatória.", + "line-appearance": "Aparência da linha", + "line-color": "Cor da linha", + "start-symbol": "Símbolo inicial", + "end-symbol": "Símbolo final", + "symbol-size": "tamanho", + "label": "Rótulo", + "label-position-start": "Início", + "label-position-middle": "Meio", + "label-position-end": "Fim", + "label-position-inside-start": "Início interno", + "label-position-inside-start-top": "Início interno superior", + "label-position-inside-start-bottom": "Início interno inferior", + "label-position-inside-middle": "Meio interno", + "label-position-inside-middle-top": "Meio interno superior", + "label-position-inside-middle-bottom": "Meio interno inferior", + "label-position-inside-end": "Fim interno", + "label-position-inside-end-top": "Fim interno superior", + "label-position-inside-end-bottom": "Fim interno inferior", + "label-background": "Plano de fundo do rótulo" + }, + "state": { + "states": "Estados", + "label": "Rótulo", + "ticks-value": "Valor das marcações", + "source": "Fonte", + "value-range": "Valor / Intervalo", + "no-states": "Nenhum estado configurado", + "add-state": "Adicionar estado", + "type-constant": "Constante", + "type-range": "Intervalo", + "from": "De", + "to": "Até", + "remove-state": "Remover estado" + }, + "grid": { + "grid": "Grade", + "background-color": "Cor do plano de fundo", + "border": "Borda" + }, + "axis": { + "axes": "Eixos", + "x-axis": "Eixo X", + "y-axis": "Eixo Y", + "y-axis-settings": "Configurações do eixo Y", + "comparison-x-axis-settings": "Configurações do eixo X de comparação", + "remove-y-axis": "Remover eixo Y", + "id": "Id", + "label": "Rótulo", + "position": "Posição", + "position-left": "Esquerda", + "position-right": "Direita", + "position-top": "Superior", + "position-bottom": "Inferior", + "tick-labels": "Rótulos das marcações", + "ticks-formatter-function": "Função de formatação de marcações", + "ticks-generator-function": "Função geradora de marcações", + "show-ticks": "Exibir marcações", + "show-line": "Exibir linha", + "show-split-lines": "Exibir linhas de divisão", + "show-split-lines-x-axis-hint": "Se habilitado, as linhas verticais no gráfico serão exibidas.", + "show-split-lines-y-axis-hint": "Se habilitado, as linhas horizontais no gráfico serão exibidas.", + "ticks-interval": "Intervalo das marcações", + "ticks-interval-hint": "Define obrigatoriamente o intervalo de segmentação para o eixo.", + "split-number": "Número de divisões", + "split-number-hint": "Número de segmentos em que o eixo é dividido.", + "min": "Mín", + "max": "Máx", + "show": "Exibir", + "add-y-axis": "Adicionar eixo Y" + }, + "series": { + "legend-settings": "Configurações da legenda", + "show-in-legend": "Exibir na legenda", + "show-in-legend-hint": "Exibe o nome da série e os dados na legenda.", + "hidden-by-default": "Oculto por padrão", + "hidden-by-default-hint": "Oculta a série na legenda por padrão.", + "series-type": "Tipo de série", + "type": "Tipo", + "type-line": "Linha", + "type-bar": "Barra", + "line": { + "line": "Linha", + "show-line": "Exibir linha", + "step-line": "Linha em degrau", + "step-type-start": "Início", + "step-type-middle": "Meio", + "step-type-end": "Fim", + "smooth-line": "Linha suavizada" + }, + "point": { + "points": "Pontos", + "show-points": "Exibir pontos", + "point-label": "Rótulo do ponto", + "point-label-hint": "Exibe rótulo com valor sobre o ponto da série.", + "point-label-background": "Plano de fundo do rótulo do ponto", + "point-shape": "Forma do ponto", + "point-size": "Tamanho do ponto" + } + } + }, + "wind-speed-direction": { + "layout": "Layout", + "layout-default": "Padrão", + "layout-advanced": "Avançado", + "layout-simplified": "Simplificado", + "values": "Valores", + "wind-direction": "Direção do vento", + "center-value": "Valor central", + "icon": "Ícone", + "arrow": "Seta", + "ticks": "Marcações", + "labels-type": "Tipo de rótulos", + "directional-names": "Nomes direcionais", + "degrees": "Graus", + "major-ticks": "Marcações principais", + "minor-ticks": "Marcações secundárias", + "wind-speed-direction-card-style": "Estilo do cartão de velocidade e direção do vento", + "ticks-color": "Cor das marcações", + "ticks-labels-type": "Tipo de rótulos das marcações", + "arrow-color": "Cor da seta" + }, + "value-source": { + "value-source": "Fonte do valor", + "predefined-value": "Constante", + "entity-attribute": "Atributo da entidade", + "value": "Valor", + "value-required": "O valor é obrigatório.", + "key-required": "A chave é obrigatória.", + "entity-key-required": "A chave da entidade é obrigatória.", + "source-entity-alias": "Alias da entidade de origem", + "source-entity-attribute": "Atributo da entidade de origem", + "type-constant": "Constante", + "type-latest-key": "Chave", + "type-entity": "Entidade" + }, + "rpc-state": { + "initial-state": "Estado inicial", + "initial-state-hint": "Ação para obter o estado inicial (Ligado/Desligado) do componente.", + "disabled-state": "Estado desabilitado", + "disabled-state-hint": "Configura a condição sob a qual o componente é desabilitado.", + "turn-on": "Ligar 'On'", + "turn-on-hint": "Ação acionada quando o controle deslizante é alternado para 'On'", + "turn-off": "Desligar 'Off'", + "turn-off-hint": "Ação acionada quando o controle deslizante é alternado para 'Off'", + "on": "On", + "off": "Off", + "disabled": "Desabilitado" + }, + "value-action": { + "do-nothing": "Não fazer nada", + "execute-rpc": "Executar RPC", + "get-attribute": "Obter atributo", + "set-attribute": "Definir atributo", + "get-time-series": "Obter série temporal", + "get-alarm-status": "Obter status do alarme", + "get-dashboard-state": "Obter id do estado do Dashboard", + "get-dashboard-state-object": "Obter objeto de estado do Dashboard", + "add-time-series": "Adicionar série temporal", + "execute-rpc-text": "Executar método RPC '{{methodName}}'", + "get-time-series-text": "Usar série temporal '{{key}}'", + "get-attribute-text": "Usar atributo '{{key}}'", + "get-alarm-status-text": "Usar status do alarme", + "get-dashboard-state-text": "Usar estado do Dashboard", + "get-dashboard-state-object-text": "Usar objeto de estado do Dashboard", + "when-dashboard-state-is-text": "Quando o id do estado do Dashboard for '{{state}}'", + "when-dashboard-state-function-is-text": "Quando f(id do estado do Dashboard) for '{{state}}'", + "when-dashboard-state-object-function-is-text": "Quando f(objeto de estado do Dashboard) for '{{state}}'", + "set-attribute-to-value-text": "Definir atributo '{{key}}' como: {{value}}", + "add-time-series-value-text": "Adicionar valor da série temporal '{{key}}': {{value}}", + "set-attribute-text": "Definir atributo '{{key}}'", + "add-time-series-text": "Adicionar série temporal '{{key}}'", + "action": "Ação", + "value": "Valor", + "init-value-hint": "Valor que será definido até que o dispositivo envie dados.", + "method": "Método", + "method-name-required": "O nome do método é obrigatório.", + "request-timeout-ms": "Tempo Limite da requisição RPC (ms)", + "request-timeout-required": "O tempo limite da requisição é obrigatório.", + "min-request-timeout-error": "O valor do tempo limite da requisição deve ser maior ou igual a 5000 ms (5 segundos).", + "request-persistent": "Requisição RPC persistente", + "persistent-polling-interval": "Intervalo de polling persistente (ms)", + "persistent-polling-interval-hint": "Intervalo de polling (ms) para obter a resposta do comando RPC persistente", + "persistent-polling-interval-required": "O intervalo de polling persistente é obrigatório.", + "min-persistent-polling-interval-error": "O valor do intervalo de polling persistente deve ser maior ou igual a 1000 ms (1 segundo).", + "attribute-scope": "Escopo do atributo", + "attribute-key": "Chave do atributo", + "attribute-key-required": "A chave do atributo é obrigatória.", + "time-series-key": "Chave da série temporal", + "time-series-key-required": "A chave da série temporal é obrigatória.", + "action-result-converter": "Conversor de resultado de ação", + "converter-none": "Nenhum", + "converter-function": "Função", + "converter-constant": "Constante", + "converter-value": "Valor", + "parse-value-function": "Função de análise de valor", + "state-when-result-is": "'{{state}}' quando o resultado for", + "parameters": "Parâmetros", + "convert-value-function": "Função de conversão de valor", + "error": { + "target-entity-is-not-set": "A entidade de destino não está definida!", + "failed-to-perform-action": "Falha ao executar a ação {{ actionLabel }}.", + "invalid-attribute-scope": "O escopo de atributo {{scope}} não é suportado pela entidade {{entityType}}." + } + }, + "widget-font": { + "font-settings": "Configurações de fonte", + "font-family": "Família da fonte", + "size": "Tamanho", + "relative-font-size": "Tamanho de fonte relativo (porcentagem)", + "font-style": "Estilo", + "font-style-normal": "Normal", + "font-style-italic": "Itálico", + "font-style-oblique": "Oblíquo", + "font-weight": "Peso", + "font-weight-normal": "Normal", + "font-weight-bold": "Negrito", + "font-weight-bolder": "Mais negrito", + "font-weight-lighter": "Mais leve", + "color": "Cor", + "shadow-color": "Cor da sombra", + "preview": "Visualização", + "line-height": "Altura da linha", + "auto": "Automático" + }, + "home": { + "no-data-available": "Nenhum dado disponível" + }, + "system-info": { + "cpu": "CPU", + "ram": "RAM", + "disk": "Disco", + "cpu-warning-text": "Uso elevado de CPU. Para evitar falha no sistema, otimize o desempenho do sistema.", + "cpu-critical-text": "Uso de CPU criticamente alto. Para evitar falha no sistema, otimize o desempenho do sistema.", + "ram-warning-text": "Reserva de RAM baixa. Para evitar falha no sistema, otimize o desempenho do sistema ou aumente o tamanho da RAM.", + "ram-critical-text": "Reserva de RAM criticamente baixa. Para evitar falha no sistema, otimize o desempenho do sistema ou aumente o tamanho da RAM.", + "disk-warning-text": "Pouco espaço em disco. Para evitar perda de dados, libere ou expanda o espaço em disco.", + "disk-critical-text": "Espaço em disco criticamente baixo. Para evitar perda de dados, libere ou expanda o espaço em disco." + }, + "cluster-info": { + "service-id": "Id do serviço", + "service-type": "Tipo de serviço", + "no-data": "Sem dados" + }, + "transport-messages": { + "title": "Mensagens de transporte", + "info": "Todas as mensagens recebidas dos dispositivos" + }, + "activity": { + "title": "Atividade" + }, + "documentation": { + "title": "Documentação", + "add-link": "Adicionar link", + "add-link-title": "Adicionar link de documentação", + "name": "Nome", + "name-required": "O nome é obrigatório.", + "link": "Link", + "link-required": "O link é obrigatório.", + "columns": "Colunas" + }, + "quick-links": { + "title": "Links rápidos", + "add-link": "Adicionar link", + "add-link-title": "Adicionar link rápido", + "quick-link": "Link rápido", + "quick-link-required": "O link rápido é obrigatório.", + "no-links-matching": "Nenhum link correspondente a '{{name}}' foi encontrado.", + "columns": "Colunas" + }, + "recent-dashboards": { + "title": "Dashboards", + "last": "Últimos visualizados", + "starred": "Marcados com estrela", + "name": "Nome", + "last-viewed": "Último visualizado", + "no-last-viewed-dashboards": "Nenhum Dashboard visualizado recentemente" + }, + "configured-features": { + "title": "Recursos configurados", + "info": "Status dos recursos que requerem configuração", + "email-feature": "Email", + "sms-feature": "SMS", + "slack-feature": "Slack", + "oauth2-feature": "OAuth 2", + "2fa-feature": "2FA", + "feature-configured": "Recurso está configurado.\nClique para configurar", + "feature-not-configured": "Recurso não está configurado.\nClique para configurar" + }, + "version-info": { + "title": "Versão", + "contact-us": "Fale conosco", + "current-version": "Versão atual", + "current": "Atual", + "available-version": "Versão disponível", + "available": "Disponível", + "upgrade": "Atualizar", + "version-is-up-to-date": "Versão está atualizada" + }, + "usage-info": { + "title": "Uso", + "entities": "Entidades", + "api-calls": "Chamadas de API" + }, + "functions": { + "title": "Funções", + "pe-feature-tooltip": "Disponível apenas no ThingsBoard\nProfessional Edition", + "switch-to-pe": "Migrar para PE", + "alarms": "Alarmes", + "dashboards": "Dashboards", + "entities-and-relations": "Entidades & Relações", + "profiles": "Perfis", + "advanced-features": "Recursos avançados", + "notification-center": "Central de notificações", + "api-usage": "Uso de API", + "customers": "Clientes", + "customers-hierarchy": "Hierarquia de clientes", + "roles-and-permissions": "Funções & Permissões", + "groups": "Grupos", + "integrations": "Integrações", + "solution-templates": "Modelos de solução", + "scheduler": "Agendador", + "white-labeling": "Personalização de marca" + }, + "devices": { + "view-docs": "Ver documentação", + "inactive": "Inativo", + "active": "Ativo", + "total": "Total" + }, + "alarms": { + "critical": "Crítico", + "assigned-to-me": "Atribuído a mim", + "total": "Total" + }, + "getting-started": { + "get-started": "Começar", + "finish": "Concluir", + "done-welcome-title": "Bem-vindo a bordo", + "done-welcome-text": "Você se saiu muito bem!", + "sys-admin": { + "step1": { + "title": "Criar Tenant e Administrador do Tenant", + "content": "

Um tenant é um indivíduo ou organização que possui ou produz dispositivos e ativos. O tenant pode ter múltiplos usuários administradores de tenant, clientes, dispositivos e ativos.

O Administrador do Tenant pode criar e gerenciar dispositivos, ativos, clientes e dashboards dentro da conta do tenant.

Siga a documentação sobre como fazer isso:

", + "how-to-create-tenant": "Como criar Tenant e Administrador do Tenant" + }, + "step2": { + "title": "Configurar recurso: Servidor de email", + "content": "

A configuração do servidor de email é essencial para ativação de usuários, recuperação de senha e entrega de notificações de alarme.

Siga a documentação sobre como fazer isso:

", + "how-to-configure-mail-server": "Como configurar o servidor de email" + }, + "step3": { + "title": "Configurar recurso: Provedor de SMS", + "content": "

Configure provedores de SMS para notificar os clientes sobre alarmes via SMS.

Siga a documentação sobre como fazer isso:

", + "how-to-configure-sms-provider": "Como configurar o provedor de SMS" + }, + "step4": { + "title": "Configurar recurso: Personalização de marca", + "content": "

Personalize facilmente o logotipo e o esquema de cores da sua empresa ou produto sem programação e sem reiniciar o serviço.

Siga a documentação sobre como fazer isso:

" + }, + "step5": { + "title": "Configurar recurso: 2FA", + "content": "

Melhore a segurança das contas da plataforma com autenticação de dois fatores.

Siga a documentação sobre como fazer isso:

" + }, + "step6": { + "title": "Configurar recurso: OAuth 2", + "content": "

Simplifique o login para usuários de tenant e clientes com a funcionalidade de Single Sign-On via OAuth 2.0.

Siga a documentação sobre como fazer isso:

" + } + }, + "tenant-admin": { + "step1": { + "title": "Criar dispositivo", + "content": "

Vamos provisionar seu primeiro dispositivo na plataforma via UI. Siga a documentação sobre como fazer isso:

", + "how-to-create-device": "Como criar Dispositivo" + }, + "step2": { + "title": "Conectar dispositivo", + "content-before": "

Para conectar o dispositivo, é necessário obter as credenciais do dispositivo. Recomendamos usar as credenciais padrão geradas automaticamente, que é o token de acesso para este guia.

Use comandos simples para publicar dados via HTTP. Não se esqueça de substituir $ACCESS_TOKEN pelo token de acesso do seu dispositivo:

", + "ubuntu": { + "install-curl": "Instalar cURL para Ubuntu:" + }, + "macos": { + "install-curl": "Instalar cURL para MacOS:" + }, + "windows": { + "install-curl": "A partir do Windows 10 b17063, o cURL está disponível por padrão." + }, + "replace-access-token": "Substitua $ACCESS_TOKEN pelo token do seu dispositivo:", + "content-after": "

Você também pode usar outros protocolos como MQTT, CoAP, etc.

Siga a documentação sobre como fazer isso:

", + "how-to-connect-device": "Como conectar Dispositivo" + }, + "step3": { + "title": "Criar dashboard", + "content": "

Crie um dashboard para visualizar dados de entidades como ativos, dispositivos, etc.

Siga a documentação sobre como fazer isso:

", + "how-to-create-dashboard": "Como criar Dashboard" + }, + "step4": { + "title": "Configurar regras de alarme", + "alarm-rules": "Regras de alarme", + "content": "

Vamos disparar um alarme quando a temperatura atingir 25°C. Siga a documentação sobre como fazer isso:

", + "how-to-configure-alarm-rules": "Como configurar Regras de alarme" + }, + "step5": { + "title": "Criar alarme", + "content-before": "

Para acionar o alarme, envie um novo valor de telemetria de 26°C ou superior.

", + "replace-access-token": "Substitua $ACCESS_TOKEN pelo token do seu dispositivo:", + "content-after": "

Siga a documentação sobre como fazer isso:

", + "how-to-create-alarm": "Como criar Alarme" + }, + "step6": { + "title": "Criar cliente e compartilhar dashboard", + "content": "

Ao criar dashboards para usuários finais, um usuário cliente pode ver apenas seus próprios dispositivos, e os dados de outro cliente serão ocultados.

Siga a documentação sobre como fazer isso:

" + } + } + }, + "api-usage": { + "api-usage": "Uso de API", + "label": "Rótulo", + "state-name": "Nome do estado", + "status": "Status", + "status-required": "O status é obrigatório.", + "limit": "Limite máximo", + "limit-required": "O limite máximo é obrigatório.", + "current-number": "Número atual", + "current-number-required": "O número atual é obrigatório.", + "add-key": "Adicionar chave", + "no-key": "Sem chave", + "delete-key": "Excluir chave", + "target-dashboard-state": "Estado do Dashboard de destino", + "go-to-main-state": "Ir para a visualização padrão" } }, "icon": { "icon": "Ícone", + "icons": "Ícones", + "custom": "Personalizado", "select-icon": "Selecionar ícone", - "material-icons": "Ícones de materiais", - "show-all": "Mostrar todos os ícones" + "material-icons": "Material icons", + "show-all": "Mostrar todos os ícones", + "search-icon": "Pesquisar ícone", + "no-icons-found": "Nenhum ícone encontrado para '{{iconSearch}}'" + }, + "phone-input": { + "phone-input-label": "Número de telefone", + "phone-input-required": "O número de telefone é obrigatório", + "phone-input-validation": "O número de telefone é inválido ou não é possível", + "phone-input-pattern": "Número de telefone inválido. Deve estar no formato E.164, ex. {{phoneNumber}}", + "phone-input-hint": "Número de telefone no formato E.164, ex. {{phoneNumber}}" }, "custom": { "widget-action": { - "action-cell-button": "Botão da célula de ação", - "row-click": "Clicar em linha", - "polygon-click": "Clique no polígono", - "marker-click": "Clique no marcador", - "tooltip-tag-action": "Ação do rótulo de dica de ferramenta", - "node-selected": "Selecionado no nó", - "element-click": "Clique em elemento de HTML", - "pie-slice-click": "Clique na fatia", - "row-double-click": "Dois clique na fila" + "action-cell-button": "Botão de ação da célula", + "row-click": "Ao clicar na linha", + "cell-click": "Ao clicar na célula", + "polygon-click": "Ao clicar no polígono", + "marker-click": "Ao clicar no marcador", + "circle-click": "Ao clicar no círculo", + "tooltip-tag-action": "Ação da tag de tooltip", + "node-selected": "Ao selecionar o nó", + "element-click": "Ao clicar no elemento HTML", + "pie-slice-click": "Ao clicar na fatia", + "row-double-click": "Ao clicar duas vezes na linha", + "cell-double-click": "Ao clicar duas vezes na célula", + "card-click": "Ao clicar no card", + "click": "Ao clicar" } }, + "paginator": { + "items-per-page": "Itens por página:", + "first-page-label": "Primeira página", + "last-page-label": "Última página", + "next-page-label": "Próxima página", + "previous-page-label": "Página anterior", + "items-per-page-separator": "de" + }, "language": { + "auto": "Automático", "language": "Idioma" } -} +} \ No newline at end of file diff --git a/ui-ngx/src/assets/locale/locale.constant-tr_TR.json b/ui-ngx/src/assets/locale/locale.constant-tr_TR.json index b7f6e8d8f0..e6330ad5e6 100644 --- a/ui-ngx/src/assets/locale/locale.constant-tr_TR.json +++ b/ui-ngx/src/assets/locale/locale.constant-tr_TR.json @@ -803,7 +803,7 @@ "no-assets-matching": "'{{entity}}' ile eşleşen varlık bulunamadı.", "asset-required": "Varlık gereklidir", "name-starts-with": "Varlık adı ifadesi", - "help-text": "İhtiyaca göre '%' kullanın: '%varlık_adı_içerir%', '%varlık_adı_biter', 'varlık_adı_başlar'.", + "help-text": "'%' işaretini ihtiyaca göre kullanın: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Varlıklarda ara", "import": "Varlıkları içe aktar", "asset-file": "Varlık dosyası", @@ -910,9 +910,9 @@ "processing-timeouts": "${entityName} İşleme Zaman Aşımları", "rule-chain": "Kural Zinciri", "rule-engine": "Kural Motoru", - "rule-engine-daily-activity": "Kural Motoru günlük etkinliği", "rule-engine-executions": "Kural Motoru çalıştırmaları", "rule-engine-hourly-activity": "Kural Motoru saatlik etkinliği", + "rule-engine-daily-activity": "Kural Motoru günlük etkinliği", "rule-engine-monthly-activity": "Kural Motoru aylık etkinliği", "rule-engine-statistics": "Kural Motoru İstatistikleri", "rule-node": "Kural Düğümü", @@ -2124,7 +2124,7 @@ "remove-alias": "Cihaz takma adını kaldır", "add-alias": "Cihaz takma adı ekle", "name-starts-with": "Cihaz adı ifadesi", - "help-text": "İhtiyaca göre '%' kullanın: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "'%' işaretini ihtiyaca göre kullanın: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Cihaz listesi", "use-device-name-filter": "Filtre kullan", "device-list-empty": "Hiçbir cihaz seçilmedi.", @@ -3039,7 +3039,7 @@ "no-entities-text": "Varlık bulunamadı", "no-entity-types-matching": "'{{entityType}}' ile eşleşen varlık türü bulunamadı.", "name-starts-with": "İsim ifadesi", - "help-text": "İhtiyaca göre '%' kullanın: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'.", + "help-text": "'%' işaretini ihtiyaca göre kullanın: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Filtre kullan", "entity-list-empty": "Seçilen varlık yok.", "entity-type-list-required": "En az bir varlık türü seçilmelidir.", @@ -3242,7 +3242,7 @@ "remove-alias": "Varlık görünümü takma adını kaldır", "add-alias": "Varlık görünümü takma adı ekle", "name-starts-with": "Varlık Görünümü ad ifadesi", - "help-text": "İhtiyaca göre '%' kullanın: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "'%' işaretini ihtiyaca göre kullanın: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Varlık Görünümü listesi", "use-entity-view-name-filter": "Filtre kullan", "entity-view-list-empty": "Seçili varlık görünümü yok.", diff --git a/ui-ngx/src/assets/locale/locale.constant-uk_UA.json b/ui-ngx/src/assets/locale/locale.constant-uk_UA.json index 94a980d40e..d06fe89631 100644 --- a/ui-ngx/src/assets/locale/locale.constant-uk_UA.json +++ b/ui-ngx/src/assets/locale/locale.constant-uk_UA.json @@ -803,7 +803,7 @@ "no-assets-matching": "Не знайдено активів, що відповідають '{{entity}}'.", "asset-required": "Потрібно вказати актив.", "name-starts-with": "Вираз назви активу", - "help-text": "Використовуйте '%' за потреби: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with'.", + "help-text": "Використовуйте '%' за потребою: '%asset_name_contains%', '%asset_name_ends', 'asset_starts_with%'.", "search": "Пошук активів", "import": "Імпортувати активи", "asset-file": "Файл активів", @@ -2124,7 +2124,7 @@ "remove-alias": "Видалити псевдонім пристрою", "add-alias": "Додати псевдонім пристрою", "name-starts-with": "Вираз імені пристрою", - "help-text": "Використовуйте '%' за потребою: '%device_name_contains%', '%device_name_ends', 'device_starts_with'.", + "help-text": "Використовуйте '%' за потребою: '%device_name_contains%', '%device_name_ends', 'device_starts_with%'.", "device-list": "Список пристроїв", "use-device-name-filter": "Використовувати фільтр", "device-list-empty": "Не вибрано жодного пристрою.", @@ -3039,7 +3039,7 @@ "no-entities-text": "Сутностей не знайдено", "no-entity-types-matching": "Не знайдено типів сутностей, що відповідають '{{entityType}}'.", "name-starts-with": "Вираз для назви", - "help-text": "Використовуйте '%' за потребою: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'.", + "help-text": "Використовуйте '%' за потребою: '%entity_name_contains%', '%entity_name_ends', 'entity_starts_with%'.", "use-entity-name-filter": "Використовувати фільтр", "entity-list-empty": "Не вибрано сутностей.", "entity-type-list-required": "Потрібно вибрати хоча б один тип сутності.", @@ -3242,7 +3242,7 @@ "remove-alias": "Видалити псевдонім фрагмента сутності", "add-alias": "Додати псевдонім для фрагмента сутності", "name-starts-with": "Вираз для назви фрагмента сутності", - "help-text": "Використовуйте '%' за потребою: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'.", + "help-text": "Використовуйте '%' за потребою: '%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with%'.", "entity-view-list": "Список фрагментів сутностей", "use-entity-view-name-filter": "Використовувати фільтр", "entity-view-list-empty": "Фрагменти сутностей не вибрано.", diff --git a/ui-ngx/src/assets/locale/locale.constant-zh_CN.json b/ui-ngx/src/assets/locale/locale.constant-zh_CN.json index 2e308570f2..68b08996e3 100644 --- a/ui-ngx/src/assets/locale/locale.constant-zh_CN.json +++ b/ui-ngx/src/assets/locale/locale.constant-zh_CN.json @@ -1,7834 +1,10192 @@ { - "access": { - "unauthorized": "未授权", - "unauthorized-access": "未授权访问", - "unauthorized-access-text": "您需要登陆才能访问这个资源!", - "access-forbidden": "禁止访问", - "access-forbidden-text": "您没有访问此位置的权限
如果您仍希望访问此位置,请尝试使用其他用户登录。", - "refresh-token-expired": "会话已过期", - "refresh-token-failed": "无法刷新会话", - "permission-denied": "权限被拒绝", - "permission-denied-text": "您没有执行此操作的权限!" - }, - "account": { - "account": "账号", - "notification-settings": "通知设置" - }, - "action": { - "activate": "激活", - "suspend": "暂停", - "save": "保存", - "saveAs": "另存为", - "move": "移动", - "cancel": "取消", - "ok": "确定", - "delete": "删除", - "add": "添加", - "yes": "是", - "no": "否", - "update": "更新", - "remove": "移除", - "select": "选择", - "search": "查询", - "clear-search": "清除查询", - "assign": "分配", - "unassign": "取消分配", - "share": "分享", - "make-private": "私有", - "apply": "应用", - "apply-changes": "应用更改", - "edit-mode": "编辑模式", - "enter-edit-mode": "进入编辑模式", - "decline-changes": "撤销更改", - "decline": "撤销", - "close": "关闭", - "back": "后退", - "run": "运行", - "sign-in": "登录!", - "edit": "编辑", - "view": "查看", - "create": "创建", - "drag": "拖拽", - "refresh": "刷新", - "undo": "撤销", - "copy": "复制", - "paste": "粘贴", - "copy-reference": "复制引用", - "paste-reference": "粘贴引用", - "import": "导入", - "export": "导出", - "share-via": "通过{{provider}}分享", - "continue": "继续", - "discard-changes": "放弃更改", - "download": "下载", - "next": "下一个", - "next-with-label": "下一个:{{label}}", - "read-more": "阅读更多", - "hide": "隐藏", - "done": "完成", - "print": "打印", - "restore": "恢复", - "confirm": "确定", - "more": "更多", - "less": "更少", - "skip": "跳过", - "send": "发送", - "reset": "重置", - "show-more": "显示更多", - "dont-show-again": "不再显示", - "see-documentation": "查看文档", - "clear": "清除", - "upload": "上传", - "delete-anyway": "仍要删除", - "delete-selected": "删除所选", - "set": "设置" - }, - "aggregation": { - "aggregation": "聚合", - "function": "聚合功能", - "limit": "限制数", - "group-interval": "间隔", + "access": { + "unauthorized": "未授权", + "unauthorized-access": "未授权访问", + "unauthorized-access-text": "您需要登录才能访问此资源!", + "access-forbidden": "禁止访问", + "access-forbidden-text": "您没有权限访问此位置!
如果您仍希望访问此位置,请尝试使用其他用户登录。", + "refresh-token-expired": "会话已过期", + "refresh-token-failed": "无法刷新会话", + "permission-denied": "权限被拒绝", + "permission-denied-text": "您没有权限执行此操作!" + }, + "account": { + "account": "账户", + "notification-settings": "通知设置" + }, + "action": { + "activate": "激活", + "suspend": "停用", + "save": "保存", + "saveAs": "另存为", + "move": "移动", + "cancel": "取消", + "ok": "确定", + "delete": "删除", + "add": "添加", + "yes": "是", + "no": "否", + "update": "更新", + "remove": "移除", + "search": "搜索", + "clear-search": "清除搜索", + "assign": "分配", + "unassign": "取消分配", + "share": "共享", + "make-private": "设为私有", + "apply": "应用", + "apply-changes": "应用更改", + "edit-mode": "编辑模式", + "enter-edit-mode": "进入编辑模式", + "decline-changes": "放弃更改", + "decline": "拒绝", + "close": "关闭", + "back": "返回", + "run": "运行", + "sign-in": "登录!", + "edit": "编辑", + "view": "查看", + "create": "创建", + "drag": "拖拽", + "refresh": "刷新", + "undo": "撤销", + "copy": "复制", + "paste": "粘贴", + "copy-reference": "复制引用", + "paste-reference": "粘贴引用", + "import": "导入", + "export": "导出", + "share-via": "通过 {{provider}} 共享", + "select": "选择", + "continue": "继续", + "discard-changes": "放弃更改", + "download": "下载", + "next": "下一步", + "next-with-label": "下一步:{{label}}", + "read-more": "阅读更多", + "hide": "隐藏", + "test": "测试", + "done": "完成", + "print": "打印", + "restore": "恢复", + "confirm": "确认", + "more": "更多", + "less": "收起", + "skip": "跳过", + "send": "发送", + "reset": "重置", + "show-more": "显示更多", + "dont-show-again": "不再显示", + "see-documentation": "查看文档", + "see-debug-events": "查看调试事件", + "clear": "清除", + "upload": "上传", + "delete-anyway": "仍然删除", + "delete-selected": "删除所选", + "set": "设置" + }, + "aggregation": { + "aggregation": "聚合", + "function": "数据聚合函数", + "limit": "最大值数量", + "group-interval": "分组间隔", + "min": "最小值", + "max": "最大值", + "avg": "平均值", + "sum": "总和", + "count": "计数", + "none": "无" + }, + "admin": { + "settings": "设置", + "general": "常规", + "general-settings": "常规设置", + "home-settings": "首页设置", + "home": "首页", + "outgoing-mail": "邮件服务器", + "outgoing-mail-settings": "发件邮件服务器设置", + "system-settings": "系统设置", + "test-mail-sent": "测试邮件发送成功!", + "base-url": "基础 URL", + "base-url-required": "基础 URL 为必填项。", + "prohibit-different-url": "禁止使用来自客户端请求头的主机名", + "prohibit-different-url-hint": "此设置应在生产环境中启用。禁用时可能导致安全问题", + "device-connectivity": { + "device-connectivity": "设备连接", + "http-s": "HTTP(s)", + "mqtt-s": "MQTT(s)", + "coap-s": "COAP(s)", + "http": "HTTP", + "https": "HTTPs", + "mqtt": "MQTT", + "mqtts": "MQTTs", + "coap": "COAP", + "coaps": "COAPs", + "hint": "如果主机或端口字段为空,将使用默认协议值。", + "host": "主机", + "port": "端口", + "port-pattern": "端口必须为正整数。", + "port-range": "端口应在 1 到 65535 的范围内。" + }, + "mail-from": "发件人", + "mail-from-required": "发件人为必填项。", + "smtp-protocol": "SMTP 协议", + "smtp-host": "SMTP 主机", + "smtp-host-required": "SMTP 主机为必填项。", + "smtp-port": "SMTP 端口", + "smtp-port-required": "SMTP 端口为必填项。", + "smtp-port-invalid": "SMTP 端口格式无效。", + "timeout-msec": "超时(毫秒)", + "timeout-required": "超时为必填项。", + "timeout-invalid": "超时格式无效。", + "enable-tls": "启用 TLS", + "tls-version": "TLS 版本", + "enable-proxy": "启用代理", + "proxy-host": "代理主机", + "proxy-host-required": "代理主机为必填项。", + "proxy-port": "代理端口", + "proxy-port-required": "代理端口为必填项。", + "proxy-port-range": "代理端口应在 1 到 65535 的范围内。", + "proxy-user": "代理用户", + "proxy-password": "代理密码", + "change-password": "修改密码", + "send-test-mail": "发送测试邮件", + "sms-provider": "短信提供商", + "sms-provider-settings": "短信提供商设置", + "sms-provider-type": "短信提供商类型", + "sms-provider-type-required": "短信提供商类型为必填项。", + "sms-provider-type-aws-sns": "Amazon SNS", + "sms-provider-type-twilio": "Twilio", + "sms-provider-type-smpp": "SMPP", + "aws-access-key-id": "AWS Access Key ID", + "aws-access-key-id-required": "AWS Access Key ID 为必填项", + "aws-secret-access-key": "AWS Secret Access Key", + "aws-secret-access-key-required": "AWS Secret Access Key 为必填项", + "aws-region": "AWS Region", + "aws-region-required": "AWS Region 为必填项", + "number-from": "发送方电话号码", + "number-from-required": "发送方电话号码为必填项。", + "number-to": "接收方电话号码", + "number-to-required": "接收方电话号码为必填项。", + "phone-number-hint": "电话号码需使用 E.164 格式,例如 +19995550123", + "phone-number-hint-twilio": "电话号码需使用 E.164 格式/Phone Number's SID/Messaging Service SID,例如 +19995550123/PNXXX/MGXXX", + "phone-number-pattern": "电话号码无效。应使用 E.164 格式,例如 +19995550123。", + "phone-number-pattern-twilio": "电话号码无效。应使用 E.164 格式/Phone Number's SID/Messaging Service SID,例如 +19995550123/PNXXX/MGXXX。", + "sms-message": "短信消息", + "sms-message-required": "短信消息为必填项。", + "sms-message-max-length": "短信消息不能超过 1600 个字符", + "twilio-account-sid": "Twilio Account SID", + "twilio-account-sid-required": "Twilio Account SID 为必填项", + "twilio-account-token": "Twilio Account Token", + "twilio-account-token-required": "Twilio Account Token 为必填项", + "send-test-sms": "发送测试短信", + "test-sms-sent": "测试短信发送成功!", + "security-settings": "安全设置", + "password-policy": "密码策略", + "minimum-password-length": "最小密码长度", + "minimum-password-length-required": "最小密码长度为必填项", + "minimum-password-length-range": "最小密码长度应在 6 到 50 的范围内", + "maximum-password-length": "最大密码长度", + "maximum-password-length-min": "最大密码长度至少为 6", + "maximum-password-length-less-min": "最大密码长度应大于最小长度", + "minimum-uppercase-letters": "最少大写字母数量", + "minimum-uppercase-letters-range": "最少大写字母数量不能为负数", + "minimum-lowercase-letters": "最少小写字母数量", + "minimum-lowercase-letters-range": "最少小写字母数量不能为负数", + "minimum-digits": "最少数字数量", + "minimum-digits-range": "最少数字数量不能为负数", + "minimum-special-characters": "最少特殊字符数量", + "minimum-special-characters-range": "最少特殊字符数量不能为负数", + "password-expiration-period-days": "密码过期周期(天)", + "password-expiration-period-days-range": "密码过期周期(天)不能为负数", + "password-reuse-frequency-days": "密码重用频率(天)", + "password-reuse-frequency-days-range": "密码重用频率(天)不能为负数", + "allow-whitespace": "允许空格", + "force-reset-password-if-no-valid": "密码无效时强制重置", + "force-reset-password-if-no-valid-hint": "启用此功能时请谨慎:这将要求密码无效的用户通过 email 重置密码。", + "general-policy": "通用策略", + "max-failed-login-attempts": "账户锁定前允许的最大登录失败次数", + "minimum-max-failed-login-attempts-range": "最大登录失败次数不能为负数", + "user-lockout-notification-email": "用户账户锁定时,发送通知到 email", + "user-activation-token-ttl": "用户激活链接 TTL(小时)", + "user-activation-token-ttl-range": "用户激活链接 TTL 必须在 1 到 24 小时范围内", + "password-reset-token-ttl": "密码重置链接 TTL(小时)", + "password-reset-token-ttl-range": "密码重置链接 TTL 必须在 1 到 24 小时范围内", + "mobile-secret-key-length": "移动端密钥长度", + "mobile-secret-key-length-range": "移动端密钥长度必须为正数", + "domain-name": "域名", + "domain-name-unique": "域名和协议需要唯一。", + "domain-name-max-length": "域名应少于 256 个字符", + "error-verification-url": "域名不应包含符号“/”和“:”。例如:thingsboard.io", + "connection-settings": "连接设置", + "oauth2": { + "access-token-uri": "Access token URI", + "access-token-uri-required": "Access token URI 为必填项。", + "activate-user": "激活用户", + "add-domain": "添加域名", + "delete-domain": "删除域名", + "add-provider": "添加提供商", + "delete-provider": "删除提供商", + "allow-user-creation": "允许创建用户", + "always-fullscreen": "始终全屏", + "authorization-uri": "Authorization URI", + "authorization-uri-required": "Authorization URI 为必填项。", + "add-client": "添加 OAuth 2.0 客户端", + "client-details": "OAuth 2.0 客户端详情", + "client": "OAuth 2.0 客户端", + "clients": "OAuth 2.0 客户端", + "no-oauth2-clients": "未找到 OAuth 2.0 客户端", + "search-oauth2-clients": "搜索 OAuth 2.0 客户端", + "delete-client-title": "确定要删除 OAuth 2.0 客户端“{{clientName}}”吗?", + "delete-client-text": "请注意,确认后该客户端及所有相关数据将无法恢复。", + "delete-mobile-app-title": "确定要删除移动应用“{{applicationName}}”吗?", + "delete-mobile-app-text": "请注意,确认后该移动应用及所有相关数据将无法恢复。", + "title": "标题", + "client-title-required": "标题为必填项", + "client-title-max-length": "标题应少于 100 个字符", + "advanced-settings": "高级设置", + "domain-details": "域名详情", + "no-domains": "未找到域名", + "search-domains": "搜索域名", + "mobile-app-details": "移动应用详情", + "add-mobile-app": "添加移动应用", + "no-mobile-apps": "未找到移动应用", + "search-mobile-apps": "搜索移动应用", + "send-token": "发送 Token", + "create-new": "新建", + "client-authentication-method": "客户端认证方法", + "client-id": "Client ID", + "client-id-required": "Client ID 为必填项。", + "client-id-max-length": "Client ID 应少于 256 个字符", + "client-secret": "Client secret", + "client-secret-required": "Client secret 为必填项。", + "client-secret-max-length": "Client secret 应少于 2049 个字符", + "custom-setting": "自定义设置", + "customer-name-pattern": "客户名称模式", + "customer-name-pattern-max-length": "客户名称模式应少于 256 个字符", + "default-dashboard-name": "默认仪表板名称", + "default-dashboard-name-max-length": "默认仪表板名称应少于 256 个字符", + "delete-domain-text": "请注意,确认后该域名及所有提供商数据将不可用。", + "delete-domain-title": "确定要删除域名“{{domainName}}”吗?", + "delete-registration-text": "请注意,确认后提供商数据将不可用。", + "delete-registration-title": "确定要删除提供商“{{name}}”吗?", + "email-attribute-key": "Email 属性键", + "email-attribute-key-required": "Email 属性键为必填项。", + "email-attribute-key-max-length": "Email 属性键应少于 32 个字符", + "first-name-attribute-key": "名字属性键", + "first-name-attribute-key-max-length": "名字属性键应少于 32 个字符", + "general": "常规", + "jwk-set-uri": "JSON Web Key URI", + "last-name-attribute-key": "姓氏属性键", + "last-name-attribute-key-max-length": "姓氏属性键应少于 32 个字符", + "login-button-icon": "登录按钮图标", + "login-button-label": "提供商标签", + "login-button-label-placeholder": "Login with $(Provider label)", + "login-button-label-required": "标签为必填项。", + "login-provider": "登录提供商", + "mapper": "映射器", + "new-domain": "新域名", + "oauth2": "OAuth 2.0", + "password-max-length": "密码应少于 256 个字符", + "redirect-uri-template": "Redirect URI 模板", + "copy-redirect-uri": "复制 Redirect URI", + "registration-id": "注册 ID", + "registration-id-required": "注册 ID 为必填项。", + "registration-id-unique": "注册 ID 在系统中必须唯一。", + "scope": "Scope", + "scope-required": "Scope 为必填项。", + "tenant-name-pattern": "租户名称模式", + "tenant-name-pattern-required": "租户名称模式为必填项。", + "tenant-name-pattern-max-length": "租户名称模式应少于 256 个字符", + "tenant-name-strategy": "租户名称策略", + "type": "映射器类型", + "uri-pattern-error": "URI 格式无效。", + "url": "URL", + "url-pattern": "URL 格式无效。", + "url-required": "URL 为必填项。", + "url-max-length": "URL 应少于 256 个字符", + "user-info-uri": "User info URI", + "user-info-uri-required": "User info URI 为必填项。", + "username-max-length": "用户名应少于 256 个字符", + "user-name-attribute-name": "用户名属性键", + "user-name-attribute-name-required": "用户名属性键为必填项", + "protocol": "协议", + "domain-schema-http": "HTTP", + "domain-schema-https": "HTTPS", + "domain-schema-mixed": "HTTP+HTTPS", + "enable": "启用 OAuth 2.0 设置", + "disable": "禁用 OAuth 2.0 设置", + "edge": "传播到 Edge", + "edge-enable": "启用传播到 Edge", + "edge-disable": "禁用传播到 Edge", + "domains": "域名", + "mobile-apps": "移动应用", + "mobile-package": "应用包", + "mobile-package-placeholder": "例如:my.example.app", + "mobile-package-hint": "Android:您自己的唯一 Application ID。iOS:Product bundle identifier。", + "mobile-package-unique": "应用包必须唯一。", + "mobile-package-required": "应用包为必填项。", + "mobile-package-max-length": "应用包应少于 256 个字符", + "mobile-package-spaces": "应用包不应包含空格", + "mobile-app-secret": "Application secret", + "mobile-app-secret-hint": "Base64 编码的字符串,至少表示 512 位数据。", + "mobile-app-secret-required": "Application secret 为必填项。", + "mobile-app-secret-min-length": "Application secret 必须至少为 512 位数据。", + "mobile-app-secret-base64": "Application secret 必须为 base64 格式。", + "invalid-mobile-app-secret": "Application secret 只能包含字母和数字字符,长度必须在 16 到 2048 个字符之间。", + "copy-mobile-app-secret": "复制 Application secret", + "delete-mobile-app": "删除应用信息", + "providers": "提供商", + "platform-web": "Web", + "platform-android": "Android", + "platform-ios": "iOS", + "all-platforms": "所有平台", + "smtp-provider": "SMTP 提供商", + "allowed-platforms": "允许的平台", + "authentication": "认证", + "basic": "基本", + "provider": "提供商", + "redirect-url": "Redirect URI", + "domain-name": "域名", + "domain-name-required": "域名为必填项", + "redirect-url-template": "Redirect URI 模板", + "microsoft-tenant-id": "Directory (tenant) Id", + "microsoft-tenant-id-required": "Directory (tenant) Id 为必填项", + "token-uri": "Token URI", + "token-uri-required": "Token URI 为必填项", + "redirect-uri": "Redirect URI", + "google-provider": "Google", + "microsoft-provider": "Office 365", + "sendgrid-provider": "Sendgrid", + "custom-provider": "自定义", + "generate-access-token": "生成访问 Token", + "update-access-token": "更新访问 Token", + "access-token-status": "访问 Token 状态:", + "token-status-generated": "已生成", + "token-status-not-generated": "未生成" + }, + "smpp-provider": { + "smpp-version": "SMPP 版本", + "smpp-host": "SMPP 主机", + "smpp-host-required": "SMPP 主机为必填项", + "smpp-port": "SMPP 端口", + "smpp-port-required": "SMPP 端口为必填项", + "system-id": "System ID", + "system-id-required": "System ID 为必填项", + "password": "密码", + "password-required": "密码为必填项", + "type-settings": "类型设置", + "source-settings": "源设置", + "destination-settings": "目标设置", + "additional-settings": "附加设置", + "system-type": "系统类型", + "bind-type": "绑定类型", + "service-type": "服务类型", + "source-address": "源地址", + "source-ton": "源 TON", + "source-npi": "源 NPI", + "destination-ton": "目标 TON(号码类型)", + "destination-npi": "目标 NPI(编号计划标识)", + "address-range": "地址范围", + "coding-scheme": "编码方案", + "bind-type-tx": "发送器", + "bind-type-rx": "接收器", + "bind-type-trx": "收发器", + "ton-unknown": "未知", + "ton-international": "国际", + "ton-national": "国内", + "ton-network-specific": "特定网络", + "ton-subscriber-number": "用户号码", + "ton-alphanumeric": "字母数字", + "ton-abbreviated": "缩写", + "npi-unknown": "0 - 未知", + "npi-isdn": "1 - ISDN/电话编号计划 (E163/E164)", + "npi-data-numbering-plan": "3 - 数据编号计划 (X.121)", + "npi-telex-numbering-plan": "4 - 电传编号计划 (F.69)", + "npi-land-mobile": "6 - 陆地移动 (E.212)", + "npi-national-numbering-plan": "8 - 国家编号计划", + "npi-private-numbering-plan": "9 - 专用编号计划", + "npi-ermes-numbering-plan": "10 - ERMES 编号计划 (ETSI DE/PS 3 01-3)", + "npi-internet": "13 - 互联网 (IP)", + "npi-wap-client-id": "18 - WAP Client Id(由 WAP Forum 定义)", + "scheme-smsc": "0 - SMSC 默认字母表(短代码和长代码为 ASCII,免费号码为 GSM)", + "scheme-ia5": "1 - IA5(短代码和长代码为 ASCII,免费号码为 Latin 9 (ISO-8859-9))", + "scheme-octet-unspecified-2": "2 - 未指定八位字节(8 位二进制)", + "scheme-latin-1": "3 - Latin 1 (ISO-8859-1)", + "scheme-octet-unspecified-4": "4 - 未指定八位字节(8 位二进制)", + "scheme-jis": "5 - JIS (X 0208-1990)", + "scheme-cyrillic": "6 - 西里尔文 (ISO-8859-5)", + "scheme-latin-hebrew": "7 - Latin/Hebrew (ISO-8859-8)", + "scheme-ucs-utf": "8 - UCS2/UTF-16 (ISO/IEC-10646)", + "scheme-pictogram-encoding": "9 - 象形文字编码", + "scheme-music-codes": "10 - 音乐代码 (ISO-2022-JP)", + "scheme-extended-kanji-jis": "13 - 扩展汉字 JIS (X 0212-1990)", + "scheme-korean-graphic-character-set": "14 - 韩文图形字符集 (KS C 5601/KS X 1001)" + }, + "queue-select-name": "选择队列名称", + "queue-name": "名称", + "queue-name-required": "队列名称为必填项!", + "queues": "队列", + "queue-partitions": "分区", + "queue-submit-strategy": "提交策略", + "queue-processing-strategy": "处理策略", + "queue-configuration": "队列配置", + "repository-settings": "仓库设置", + "repository": "仓库", + "repository-url": "仓库 URL", + "repository-url-required": "仓库 URL 为必填项。", + "default-branch": "默认分支名称", + "repository-read-only": "只读", + "show-merge-commits": "显示合并提交", + "authentication-settings": "认证设置", + "auth-method": "认证方法", + "auth-method-username-password": "密码/访问 Token", + "auth-method-username-password-hint": "GitHub 用户必须使用具有仓库写权限的访问 Token。", + "auth-method-private-key": "私钥", + "password-access-token": "密码/访问 Token", + "change-password-access-token": "修改密码/访问 Token", + "private-key": "私钥", + "drop-private-key-file-or": "拖放私钥文件或", + "passphrase": "密码短语", + "enter-passphrase": "输入密码短语", + "change-passphrase": "修改密码短语", + "check-access": "检查访问权限", + "check-repository-access-success": "仓库访问验证成功!", + "delete-repository-settings-title": "确定要删除仓库设置吗?", + "delete-repository-settings-text": "请注意,确认后仓库设置将被移除,版本控制功能将不可用。", + "auto-commit-settings": "自动提交设置", + "auto-commit": "自动提交", + "auto-commit-entities": "自动提交实体", + "no-auto-commit-entities-prompt": "未配置自动提交的实体", + "delete-auto-commit-settings-title": "确定要删除自动提交设置吗?", + "delete-auto-commit-settings-text": "请注意,确认后自动提交设置将被移除,所有实体的自动提交将被禁用。", + "mobile-app": { + "mobile-app": "移动应用", + "mobile-app-qr-code-widget-settings": "移动应用二维码部件设置", + "applications": "应用", + "default": "默认", + "custom": "自定义", + "android": "Android", + "ios": "iOS", + "appearance": "外观", + "appearance-on-home-page": "首页外观", + "enabled": "已启用", + "disabled": "已禁用", + "badges": "徽章", + "label": "标签", + "label-required": "标签为必填项", + "label-max-length": "标签应不超过 50 个字符", + "right": "右", + "left": "左", + "set": "设置", + "preview": "预览", + "connect-mobile-app": "连接移动应用", + "use-system-settings": "使用系统设置" + }, + "2fa": { + "2fa": "双因素认证", + "available-providers": "可用提供商", + "available-providers-required": "至少需要配置一个双因素认证提供商。", + "issuer-name": "签发者名称", + "issuer-name-required": "签发者名称为必填项。", + "max-verification-failures-before-user-lockout": "用户锁定前最大验证失败次数", + "max-verification-failures-before-user-lockout-pattern": "最大验证失败次数必须为正整数。", + "number-of-checking-attempts": "检查尝试次数", + "number-of-checking-attempts-pattern": "检查尝试次数必须为正整数。", + "number-of-checking-attempts-required": "检查尝试次数为必填项。", + "number-of-codes": "验证码数量", + "number-of-codes-pattern": "验证码数量必须为正整数。", + "number-of-codes-required": "验证码数量为必填项。", + "provider": "提供商", + "retry-verification-code-period": "重试验证码周期", + "retry-verification-code-period-pattern": "最小周期时间为 5 秒", + "retry-verification-code-period-required": "重试验证码周期为必填项。", + "total-allowed-time-for-verification": "验证允许的总时间", + "total-allowed-time-for-verification-pattern": "最小允许总时间为 60 秒", + "total-allowed-time-for-verification-required": "允许的总时间为必填项。", + "use-system-two-factor-auth-settings": "使用系统双因素认证设置", + "verification-code-check-rate-limit": "验证码检查频率限制", + "verification-code-lifetime": "验证码有效期", + "verification-code-lifetime-pattern": "验证码有效期必须为正整数。", + "verification-code-lifetime-required": "验证码有效期为必填项。", + "verification-message-template": "验证消息模板", + "verification-limitations": "验证限制", + "verification-message-template-pattern": "验证消息需要包含模式:${code}", + "verification-message-template-required": "验证消息模板为必填项。", + "within-time": "时间范围", + "within-time-pattern": "时间必须为正整数。", + "within-time-required": "时间为必填项。", + "force-2fa": "强制双因素认证", + "enforce-for": "强制对象" + }, + "jwt": { + "security-settings": "JWT 安全设置", + "issuer-name": "签发者名称", + "issuer-name-required": "签发者名称为必填项。", + "signings-key": "签名密钥", + "signings-key-hint": "Base64 编码的字符串,至少表示 512 位数据。", + "signings-key-required": "签名密钥为必填项。", + "signings-key-min-length": "签名密钥必须至少为 512 位数据。", + "signings-key-base64": "签名密钥必须为 base64 格式。", + "expiration-time": "Token 过期时间(秒)", + "expiration-time-required": "Token 过期时间为必填项。", + "expiration-time-max": "最大允许时间为 2147483647 秒(68 年)。", + "expiration-time-min": "最小时间为 60 秒(1 分钟)。", + "refresh-expiration-time": "刷新 Token 过期时间(秒)", + "refresh-expiration-time-required": "刷新 Token 过期时间为必填项。", + "refresh-expiration-time-max": "最大允许时间为 2147483647 秒(68 年)。", + "refresh-expiration-time-min": "最小时间为 900 秒(15 分钟)。", + "refresh-expiration-time-less-token": "刷新 Token 时间必须大于 Token 时间。", + "generate-key": "生成密钥", + "info-header": "所有用户将需要重新登录", + "info-message": "更改 JWT 签名密钥将导致所有已签发的 Token 失效。所有用户都需要重新登录。这也将影响使用 Rest API/Websockets 的脚本。" + }, + "resources": "资源", + "notifications": "通知", + "notifications-settings": "通知设置", + "slack-api-token": "Slack API Token", + "slack": "Slack", + "slack-settings": "Slack 设置", + "mobile-settings": "移动端设置", + "firebase-service-account-file": "Firebase 服务账户凭证 JSON 文件", + "select-firebase-service-account-file": "拖放您的 Firebase 服务账户凭证文件或" + }, + "alarm": { + "alarm": "告警", + "alarm-list": "告警列表", + "alarms": "告警", + "all-alarms": "所有告警", + "select-alarm": "选择告警", + "no-alarms-matching": "未找到匹配“{{entity}}”的告警。", + "alarm-required": "告警为必填项", + "alarm-filter": "告警过滤器", + "filter": "过滤器", + "alarm-status": "告警状态", + "alarm-status-list": "告警状态列表", + "any-status": "任意状态", + "search-status": { + "ANY": "任意", + "ACTIVE": "活动", + "CLEARED": "已清除", + "ACK": "已确认", + "UNACK": "未确认" + }, + "display-status": { + "ACTIVE_UNACK": "活动未确认", + "ACTIVE_ACK": "活动已确认", + "CLEARED_UNACK": "已清除未确认", + "CLEARED_ACK": "已清除已确认" + }, + "no-alarms-prompt": "未找到告警", + "created-time": "创建时间", + "type": "类型", + "severity": "严重程度", + "originator": "发起者", + "originator-type": "发起者类型", + "details": "详情", + "originator-label": "发起者标签", + "assign": "分配", + "assignments": "分配记录", + "assignee": "受理人", + "assignee-id": "受理人 ID", + "assignee-first-name": "受理人名字", + "assignee-last-name": "受理人姓氏", + "assignee-email": "受理人 email", + "unassigned": "未分配", + "user-deleted": "用户已删除", + "assignee-not-set": "全部", + "status": "状态", + "alarm-details": "告警详情", + "start-time": "开始时间", + "assign-time": "分配时间", + "end-time": "结束时间", + "ack-time": "确认时间", + "clear-time": "清除时间", + "duration": "持续时间", + "alarm-severity": "告警严重程度", + "alarm-severity-list": "告警严重程度列表", + "any-severity": "任意严重程度", + "severity-critical": "严重", + "severity-major": "重要", + "severity-minor": "次要", + "severity-warning": "警告", + "severity-indeterminate": "不确定", + "acknowledge": "确认", + "clear": "清除", + "delete": "删除", + "search": "搜索告警", + "selected-alarms": "{ count, plural, =1 {1 个告警} other {# 个告警} }已选择", + "no-data": "无数据可显示", + "polling-interval": "告警轮询间隔(秒)", + "polling-interval-required": "告警轮询间隔为必填项。", + "min-polling-interval-message": "允许的最小轮询间隔为 1 秒。", + "aknowledge-alarms-title": "确认 { count, plural, =1 {1 个告警} other {# 个告警} }", + "aknowledge-alarms-text": "确定要确认 { count, plural, =1 {1 个告警} other {# 个告警} }吗?", + "aknowledge-alarm-title": "确认告警", + "aknowledge-alarm-text": "确定要确认告警吗?", + "selected-alarms-are-acknowledged": "所选告警已被确认", + "clear-alarms-title": "清除 { count, plural, =1 {1 个告警} other {# 个告警} }", + "clear-alarms-text": "确定要清除 { count, plural, =1 {1 个告警} other {# 个告警} }吗?", + "clear-alarm-title": "清除告警", + "clear-alarm-text": "确定要清除告警吗?", + "delete-alarms-title": "删除 { count, plural, =1 {1 个告警} other {# 个告警} }", + "delete-alarms-text": "确定要删除 { count, plural, =1 {1 个告警} other {# 个告警} }吗?", + "selected-alarms-are-cleared": "所选告警已被清除", + "alarm-status-filter": "告警状态过滤器", + "alarm-filter-title": "告警过滤器", + "assigned": "已分配", + "filter-title": "过滤器", + "max-count-load": "最大加载告警数量(0 表示无限制)", + "max-count-load-required": "最大加载告警数量为必填项。", + "max-count-load-error-min": "最小值为 0。", + "fetch-size": "获取数量", + "fetch-size-required": "获取数量为必填项。", + "fetch-size-error-min": "最小值为 10。", + "alarm-types": "告警类型", + "alarm-type-list": "告警类型列表", + "any-type": "任意类型", + "assigned-to-current-user": "已分配给当前用户", + "assigned-to-me": "分配给我", + "search-propagated-alarms": "搜索传播的告警", + "comments": "告警评论", + "show-more": "显示更多", + "additional-info": "附加信息", + "alarm-type": "告警类型", + "enter-alarm-type": "输入告警类型", + "no-alarm-types-matching": "未找到匹配“{{entitySubtype}}”的告警类型。", + "alarm-type-list-empty": "未选择告警类型。", + "system-comments": { + "acked-by-user": "告警已由用户 {{userName}} 确认", + "cleared-by-user": "告警已由用户 {{userName}} 清除", + "assigned-to-user": "告警已由用户 {{userName}} 分配给用户 {{assigneeName}}", + "unassigned-to-user": "告警已由用户 {{userName}} 取消分配", + "unassigned-from-deleted-user": "告警已取消分配,因为用户 {{userName}} 已被删除", + "comment-deleted": "用户 {{userName}} 删除了评论", + "severity-changed": "告警严重程度已从 {{oldSeverity}} 更新为 {{newSeverity}}" + } + }, + "alarm-activity": { + "add": "添加评论...", + "alarm-comment": "告警评论", + "comments": "评论", + "delete-alarm-comment": "确定要删除此评论吗?", + "refresh": "刷新", + "oldest-first": "最早优先", + "newest-first": "最新优先", + "activity": "活动", + "export": "导出为 CSV", + "author": "作者", + "created-date": "创建日期", + "edited-date": "编辑日期", + "text": "文本", + "system": "系统" + }, + "alias": { + "add": "添加别名", + "edit": "编辑别名", + "name": "别名名称", + "name-required": "别名名称为必填项", + "duplicate-alias": "同名别名已存在。", + "filter-type-single-entity": "单个实体", + "filter-type-entity-list": "实体列表", + "filter-type-entity-name": "实体名称", + "filter-type-entity-type": "实体类型", + "filter-type-state-entity": "来自仪表板状态的实体", + "filter-type-state-entity-description": "从仪表板状态参数获取的实体", + "filter-type-asset-type": "资产类型", + "filter-type-asset-type-description": "类型为“{{assetTypes}}”的资产", + "filter-type-asset-type-and-name-description": "类型为“{{assetTypes}}”且名称以“{{prefix}}”开头的资产", + "filter-type-device-type": "设备类型", + "filter-type-device-type-description": "类型为“{{deviceTypes}}”的设备", + "filter-type-device-type-and-name-description": "类型为“{{deviceTypes}}”且名称以“{{prefix}}”开头的设备", + "filter-type-entity-view-type": "实体视图类型", + "filter-type-entity-view-type-description": "类型为“{{entityViewTypes}}”的实体视图", + "filter-type-entity-view-type-and-name-description": "类型为“{{entityViewTypes}}”且名称以“{{prefix}}”开头的实体视图", + "filter-type-edge-type": "Edge 类型", + "filter-type-edge-type-description": "类型为“{{edgeTypes}}”的 Edge", + "filter-type-edge-type-and-name-description": "类型为“{{edgeTypes}}”且名称以“{{prefix}}”开头的 Edge", + "filter-type-relations-query": "关联查询", + "filter-type-relations-query-description": "与 {{rootEntity}} 具有 {{relationType}} 关联(方向:{{direction}})的 {{entities}}", + "filter-type-edge-search-query": "Edge 搜索查询", + "filter-type-edge-search-query-description": "类型为 {{edgeTypes}} 且与 {{rootEntity}} 具有 {{relationType}} 关联(方向:{{direction}})的 Edge", + "filter-type-asset-search-query": "资产搜索查询", + "filter-type-asset-search-query-description": "类型为 {{assetTypes}} 且与 {{rootEntity}} 具有 {{relationType}} 关联(方向:{{direction}})的资产", + "filter-type-device-search-query": "设备搜索查询", + "filter-type-device-search-query-description": "类型为 {{deviceTypes}} 且与 {{rootEntity}} 具有 {{relationType}} 关联(方向:{{direction}})的设备", + "filter-type-entity-view-search-query": "实体视图搜索查询", + "filter-type-entity-view-search-query-description": "类型为 {{entityViewTypes}} 且与 {{rootEntity}} 具有 {{relationType}} 关联(方向:{{direction}})的实体视图", + "filter-type-apiUsageState": "API 使用状态", + "entity-filter": "实体过滤器", + "resolve-multiple": "解析为多个实体", + "resolve-multiple-hint": "启用后可同时显示所有过滤实体的数据。\n禁用后,部件仅显示所选实体的数据。", + "filter-type": "过滤器类型", + "filter-type-required": "过滤器类型为必填项。", + "entity-filter-no-entity-matched": "未找到匹配指定过滤器的实体。", + "no-entity-filter-specified": "未指定实体过滤器", + "root-state-entity": "使用仪表板状态实体作为根", + "last-level-relation": "仅获取最后一级关联", + "root-entity": "根实体", + "state-entity-parameter-name": "状态实体参数名称", + "default-state-entity": "默认状态实体", + "default-entity-parameter-name": "默认", + "query-options": "查询选项", + "max-relation-level": "最大关联层级", + "unlimited-level": "无限层级", + "state-entity": "仪表板状态实体", + "all-entities": "所有实体", + "any-relation": "任意" + }, + "asset": { + "asset": "资产", + "assets": "资产", + "management": "资产管理", + "view-assets": "查看资产", + "add": "添加资产", + "asset-type-max-length": "资产类型应少于 256 个字符", + "assign-to-customer": "分配给客户", + "assign-asset-to-customer": "将资产分配给客户", + "assign-asset-to-customer-text": "请选择要分配给客户的资产", + "no-assets-text": "未找到资产", + "assign-to-customer-text": "请选择要分配资产的客户", + "public": "公开", + "assignedToCustomer": "已分配给客户", + "make-public": "将资产设为公开", + "make-private": "将资产设为私有", + "unassign-from-customer": "从客户取消分配", + "delete": "删除资产", + "asset-public": "资产为公开状态", + "asset-type": "资产类型", + "asset-type-required": "资产类型为必填项。", + "select-asset-type": "选择资产类型", + "enter-asset-type": "输入资产配置", + "any-asset": "任意资产", + "no-asset-types-matching": "未找到匹配“{{entitySubtype}}”的资产类型。", + "asset-type-list-empty": "未选择资产类型。", + "asset-types": "资产类型", + "name": "名称", + "name-required": "名称为必填项。", + "name-max-length": "名称应少于 256 个字符", + "label-max-length": "标签应少于 256 个字符", + "description": "描述", + "description-required": "描述为必填项。", + "type": "类型", + "type-required": "类型为必填项。", + "details": "详情", + "events": "事件", + "add-asset-text": "添加新资产", + "asset-details": "资产详情", + "assign-assets": "分配资产", + "assign-assets-text": "将 { count, plural, =1 {1 个资产} other {# 个资产} }分配给客户", + "assign-asset-to-edge-title": "将资产分配给 Edge", + "assign-asset-to-edge-text": "请选择要分配给 Edge 的资产", + "delete-assets": "删除资产", + "unassign-assets": "取消分配资产", + "unassign-assets-action-title": "从客户取消分配 { count, plural, =1 {1 个资产} other {# 个资产} }", + "assign-new-asset": "分配新资产", + "delete-asset-title": "确定要删除资产“{{assetName}}”吗?", + "delete-asset-text": "请注意,确认后该资产及所有相关数据将无法恢复。", + "delete-assets-title": "确定要删除 { count, plural, =1 {1 个资产} other {# 个资产} }吗?", + "delete-assets-action-title": "删除 { count, plural, =1 {1 个资产} other {# 个资产} }", + "delete-assets-text": "请注意,确认后所有选中的资产将被移除,所有相关数据将无法恢复。", + "make-public-asset-title": "确定要将资产“{{assetName}}”设为公开吗?", + "make-public-asset-text": "确认后,该资产及其所有数据将被设为公开,可被其他人访问。", + "make-private-asset-title": "确定要将资产“{{assetName}}”设为私有吗?", + "make-private-asset-text": "确认后,该资产及其所有数据将被设为私有,其他人将无法访问。", + "unassign-asset-title": "确定要取消分配资产“{{assetName}}”吗?", + "unassign-asset-text": "确认后,该资产将被取消分配,客户将无法访问。", + "unassign-asset": "取消分配资产", + "unassign-assets-title": "确定要取消分配 { count, plural, =1 {1 个资产} other {# 个资产} }吗?", + "unassign-assets-text": "确认后,所有选中的资产将被取消分配,客户将无法访问。", + "copyId": "复制资产 ID", + "idCopiedMessage": "资产 ID 已复制到剪贴板", + "select-asset": "选择资产", + "no-assets-matching": "未找到匹配“{{entity}}”的资产。", + "asset-required": "资产为必填项。", + "name-starts-with": "资产名称表达式", + "help-text": "根据需要使用“%”:“%asset_name_contains%”、“%asset_name_ends”、“asset_starts_with%”。", + "search": "搜索资产", + "import": "导入资产", + "asset-file": "资产文件", + "label": "标签", + "assign-asset-to-edge": "将资产分配给 Edge", + "unassign-asset-from-edge": "取消分配资产", + "unassign-asset-from-edge-title": "确定要取消分配资产“{{assetName}}”吗?", + "unassign-asset-from-edge-text": "确认后,该资产将被取消分配,Edge 将无法访问。", + "unassign-assets-from-edge-title": "确定要取消分配 { count, plural, =1 {1 个资产} other {# 个资产} }吗?", + "unassign-assets-from-edge-text": "确认后,所有选中的资产将被取消分配,Edge 将无法访问。", + "selected-assets": "{ count, plural, =1 {1 个资产} other {# 个资产} }已选择" + }, + "attribute": { + "attributes": "属性", + "latest-telemetry": "最新遥测", + "no-latest-telemetry": "无最新遥测", + "attributes-scope": "实体属性范围", + "scope-telemetry": "遥测", + "scope-latest-telemetry": "最新遥测", + "scope-client": "客户端属性", + "scope-server": "服务端属性", + "scope-shared": "共享属性", + "scope-client-short": "客户端", + "scope-server-short": "服务端", + "scope-shared-short": "共享", + "scope-latest-short": "最新", + "scope-any": "任意", + "add": "添加属性", + "key": "键", + "key-max-length": "键应少于 256 个字符", + "last-update-time": "最后更新时间", + "key-required": "属性键为必填项。", + "value": "值", + "value-required": "属性值为必填项。", + "telemetry-key-required": "遥测键为必填项", + "telemetry-value-required": "遥测值为必填项", + "delete-attributes-title": "确定要删除 { count, plural, =1 {1 个属性} other {# 个属性} }吗?", + "delete-attributes-text": "请注意,确认后所有选中的属性将被移除。", + "delete-attributes": "删除属性", + "enter-attribute-value": "输入属性值", + "show-on-widget": "在部件中显示", + "widget-mode": "部件模式", + "next-widget": "下一个部件", + "prev-widget": "上一个部件", + "add-to-dashboard": "添加到仪表板", + "add-widget-to-dashboard": "将部件添加到仪表板", + "selected-attributes": "{ count, plural, =1 {1 个属性} other {# 个属性} }已选择", + "selected-telemetry": "{ count, plural, =1 {1 个遥测单元} other {# 个遥测单元} }已选择", + "no-attributes-text": "未找到属性", + "no-telemetry-text": "未找到遥测", + "copy-key": "复制键", + "add-telemetry": "添加遥测", + "copy-value": "复制值", + "delete-timeseries": { + "start-time": "开始时间", + "ends-on": "结束于", + "strategy": "策略", + "delete-strategy": "删除策略", + "all-data": "删除所有数据", + "all-data-except-latest-value": "删除除最新值外的所有数据", + "latest-value": "删除最新值", + "all-data-for-time-period": "删除指定时间段的所有数据", + "rewrite-latest-value": "重写最新值" + } + }, + "api-usage": { + "api-features": "API 功能", + "api-usage": "API 使用量", + "alarm": "告警", + "alarms-created": "已创建的告警", + "queue-stats": "队列统计", + "processing-failures-and-timeouts": "处理失败和超时", + "exceptions": "异常", + "alarms-created-daily-activity": "已创建告警每日活动", + "alarms-created-hourly-activity": "已创建告警每小时活动", + "alarms-created-monthly-activity": "已创建告警每月活动", + "data-points": "数据点", + "data-points-storage-days": "数据点存储天数", + "data-points-storage-days-hourly-activity": "数据点存储天数每小时活动", + "data-points-storage-days-daily-activity": "数据点存储天数每日活动", + "data-points-storage-days-monthly-activity": "数据点存储天数每月活动", + "device-api": "设备 API", + "email": "Email", + "email-messages": "Email 消息", + "email-messages-daily-activity": "Email 消息每日活动", + "email-messages-monthly-activity": "Email 消息每月活动", + "executions": "执行次数", + "scripts": "脚本", + "scripts-hourly-activity": "脚本每小时活动", + "scripts-daily-activity": "脚本每日活动", + "scripts-monthly-activity": "脚本每月活动", + "javascript": "JavaScript", + "javascript-executions": "JavaScript 执行次数", + "tbel": "TBEL", + "tbel-executions": "TBEL 执行次数", + "latest-error": "最新错误", + "messages": "消息", + "notifications": "通知", + "notifications-email-sms": "通知(Email/SMS)", + "notifications-hourly-activity": "通知每小时活动", + "permanent-failures": "${entityName} 永久失败", + "permanent-timeouts": "${entityName} 永久超时", + "processing-failures": "${entityName} 处理失败", + "processing-timeouts": "${entityName} 处理超时", + "rule-chain": "规则链", + "rule-engine": "规则引擎", + "rule-engine-executions": "规则引擎执行次数", + "rule-engine-hourly-activity": "规则引擎每小时活动", + "rule-engine-daily-activity": "规则引擎每日活动", + "rule-engine-monthly-activity": "规则引擎每月活动", + "rule-engine-statistics": "规则引擎统计", + "rule-node": "规则节点", + "sms": "SMS", + "sms-messages": "SMS 消息", + "sms-messages-hourly-activity": "SMS 消息每小时活动", + "sms-messages-daily-activity": "SMS 消息每日活动", + "sms-messages-monthly-activity": "SMS 消息每月活动", + "successful": "${entityName} 成功", + "telemetry": "遥测", + "telemetry-persistence": "遥测持久化", + "telemetry-persistence-daily-activity": "遥测持久化每日活动", + "telemetry-persistence-hourly-activity": "遥测持久化每小时活动", + "telemetry-persistence-monthly-activity": "遥测持久化每月活动", + "transport": "传输", + "transport-msg-hourly-activity": "传输消息每小时活动", + "transport-msg-daily-activity": "传输消息每日活动", + "transport-msg-monthly-activity": "传输消息每月活动", + "transport-daily-activity": "传输每日活动", + "transport-data-points": "传输数据点", + "transport-data-points-hourly-activity": "传输数据点每小时活动", + "transport-data-points-daily-activity": "传输数据点每日活动", + "transport-data-points-monthly-activity": "传输数据点每月活动", + "view-details": "查看详情", + "view-statistics": "查看统计", + "transport-messages": "传输消息", + "transport-messages-hourly-activity": "传输消息每小时活动", + "transport-data-point-hourly-activity": "传输数据点每小时活动", + "javascript-function-executions": "JavaScript 函数执行次数", + "javascript-function-executions-hourly-activity": "JavaScript 函数执行每小时活动", + "javascript-function-executions-daily-activity": "JavaScript 函数执行每日活动", + "javascript-function-executions-monthly-activity": "JavaScript 函数执行每月活动", + "tbel-function-executions": "TBEL 函数执行次数", + "tbel-function-executions-hourly-activity": "TBEL 函数执行每小时活动", + "tbel-function-executions-daily-activity": "TBEL 函数执行每日活动", + "tbel-function-executions-monthly-activity": "TBEL 函数执行每月活动", + "created-reports": "已创建的报表", + "created-reports-hourly-activity": "已创建报表每小时活动", + "created-reports-daily-activity": "已创建报表每日活动", + "created-reports-monthly-activity": "已创建报表每月活动", + "emails": "Emails", + "emails-hourly-activity": "Emails 每小时活动", + "emails-daily-activity": "Emails 每日活动", + "emails-monthly-activity": "Emails 每月活动", + "status": { + "enabled": "已启用", + "disabled": "已禁用", + "warning": "警告" + } + }, + "api-limit": { + "cassandra-write-queries-core": "Rest API Cassandra 写入查询", + "cassandra-read-queries-core": "Rest API 和 WS 遥测 Cassandra 读取查询", + "cassandra-write-queries-rule-engine": "规则引擎遥测 Cassandra 写入查询", + "cassandra-read-queries-rule-engine": "规则引擎遥测 Cassandra 读取查询", + "cassandra-write-queries-monolith": "单体遥测 Cassandra 写入查询", + "cassandra-read-queries-monolith": "单体遥测 Cassandra 读取查询", + "entity-version-creation": "实体版本创建", + "entity-version-load": "实体版本加载", + "notification-requests": "通知请求", + "notification-requests-per-rule": "每规则通知请求", + "rest-api-requests": "REST API 请求", + "rest-api-requests-per-customer": "每客户 REST API 请求", + "transport-messages": "传输消息", + "transport-messages-per-device": "每设备传输消息", + "transport-messages-per-gateway": "每 Gateway 传输消息", + "transport-messages-per-gateway-device": "每 Gateway 设备传输消息", + "ws-updates-per-session": "每会话 WS 更新", + "edge-events": "Edge 事件", + "edge-events-per-edge": "每 Edge 事件", + "edge-uplink-messages": "Edge 上行消息", + "edge-uplink-messages-per-edge": "每 Edge 上行消息" + }, + "api-key": { + "api-key": "API 密钥", + "api-keys": "API 密钥", + "delete-api-key-title": "确定要删除 API 密钥“{{name}}”吗?", + "delete-api-key-text": "请注意,确认后密钥将无法恢复。", + "delete-api-keys-title": "确定要删除 { count, plural, =1 {1 个 API 密钥} other {# 个 API 密钥} }吗?", + "delete-api-keys-text": "请注意,确认后所有选中的密钥将无法恢复。", + "expiration-date": "过期日期", + "date": "日期", + "description": "描述", + "disable": "禁用", + "edit-description": "编辑描述", + "enable": "启用 API 密钥 ", + "expiration-time": "过期时间", + "expiration-time-never": "永不", + "expiration-time-custom": "自定义", + "generate": "生成", + "generate-title": "生成 API 密钥", + "generate-text": "注意:API 密钥继承创建它的用户的权限。", + "generated-api-key-title": "API 密钥已生成。请检查连接!", + "generated-api-key-copy": "请确保立即复制并保存您的 API 密钥,因为之后将无法再次查看。", + "generated-api-key-command": "使用以下说明检查连接。结果应返回当前用户信息:", + "generated-api-key-insecure-url": "通过不安全的 HTTP 连接执行命令将以未加密的方式发送您的 API 密钥,使其容易被拦截。", + "list": "{ count, plural, =1 {一个 API 密钥} other {# 个 API 密钥列表} }", + "manage": "管理", + "manage-api-keys": "管理 API 密钥", + "no-found": "未找到 API 密钥", + "selected-api-keys": "{ count, plural, =1 {1 个 API 密钥} other {# 个 API 密钥} }已选择", + "search": "搜索 API 密钥", + "status": "状态", + "status-active": "活动", + "status-inactive": "未激活", + "status-expired": "已过期" + }, + "audit-log": { + "audit": "审计", + "audit-logs": "审计日志", + "timestamp": "时间戳", + "entity-type": "实体类型", + "entity-name": "实体名称", + "user": "用户", + "type": "类型", + "status": "状态", + "details": "详情", + "type-added": "已添加", + "type-deleted": "已删除", + "type-updated": "已更新", + "type-attributes-updated": "属性已更新", + "type-attributes-deleted": "属性已删除", + "type-rpc-call": "RPC 调用", + "type-credentials-updated": "凭证已更新", + "type-assigned-to-customer": "已分配给客户", + "type-unassigned-from-customer": "已从客户取消分配", + "type-assigned-to-edge": "已分配给 Edge", + "type-unassigned-from-edge": "已从 Edge 取消分配", + "type-activated": "已激活", + "type-suspended": "已停用", + "type-credentials-read": "凭证已读取", + "type-attributes-read": "属性已读取", + "type-relation-add-or-update": "关联已更新", + "type-relation-delete": "关联已删除", + "type-relations-delete": "所有关联已删除", + "type-alarm-ack": "告警已确认", + "type-alarm-clear": "告警已清除", + "type-alarm-delete": "告警已删除", + "type-alarm-assign": "告警已分配", + "type-alarm-unassign": "告警已取消分配", + "type-added-comment": "已添加评论", + "type-updated-comment": "已更新评论", + "type-deleted-comment": "已删除评论", + "type-login": "登录", + "type-logout": "登出", + "type-lockout": "锁定", + "status-success": "成功", + "status-failure": "失败", + "audit-log-details": "审计日志详情", + "no-audit-logs-prompt": "未找到日志", + "action-data": "操作数据", + "failure-details": "失败详情", + "search": "搜索审计日志", + "clear-search": "清除搜索", + "type-assigned-from-tenant": "已从租户分配", + "type-assigned-to-tenant": "已分配给租户", + "type-provision-success": "设备已配置", + "type-provision-failure": "设备配置失败", + "type-timeseries-updated": "遥测已更新", + "type-timeseries-deleted": "遥测已删除", + "type-sms-sent": "SMS 已发送", + "any-type": "任意类型", + "audit-log-filter-title": "审计日志过滤器", + "filter-title": "过滤器", + "filter-types": "审计日志类型" + }, + "debug-settings": { + "label": "调试配置", + "on-failure": "仅失败(24/7)", + "all-messages": "所有消息({{time}})", + "failures": "失败", + "entity": "实体", + "hint": { + "main-limited": "每 {{time}} 将记录不超过 {{msg}} 条{{entity}}调试消息。", + "on-failure": "仅记录错误消息。", + "all-messages": "记录所有调试消息。" + } + }, + "calculated-fields": { + "expression": "表达式", + "no-found": "未找到计算字段", + "list": "{ count, plural, =1 {一个计算字段} other {# 个计算字段列表} }", + "selected-fields": "{ count, plural, =1 {1 个计算字段} other {# 个计算字段} }已选择", + "type": { + "simple": "简单", + "simple-hint": "基于输入参数的简单算术计算。", + "script": "脚本", + "script-hint": "使用 TBEL 脚本对定义的参数进行计算。", + "geofencing": "地理围栏", + "geofencing-hint": "评估实体 GPS 位置以及与配置的地理围栏区域组的转换关系。", + "propagation": "传播", + "propagation-hint": "根据关联方向和类型将数据传播到父级或子级实体。", + "related-entities-aggregation": "关联实体聚合", + "related-entities-aggregation-hint": "聚合来自关联实体的最新数据。", + "time-series-data-aggregation": "时间序列数据聚合", + "time-series-data-aggregation-hint": "聚合来自当前实体的历史数据。" + }, + "preview": "预览", + "arguments": "参数", + "decimals-by-default": "默认小数位数", + "debugging": "计算字段调试", + "calculated-field-details": "计算字段详情", + "argument-name": "参数名称", + "name": "名称", + "datasource": "数据源", + "add-argument": "添加参数", + "test-script-function": "测试脚本函数", + "no-arguments": "至少需要一个参数。", + "argument-settings": "参数设置", + "argument-current": "当前实体", + "argument-current-tenant": "当前租户", + "argument-device": "设备", + "argument-asset": "资产", + "argument-customer": "客户", + "argument-tenant": "当前租户", + "argument-owner": "当前所有者", + "argument-relation-query": "关联实体", + "argument-type": "参数类型", + "attribute": "属性", + "copy-argument-name": "复制参数名称", + "timeseries-key": "时间序列键", + "device-name": "设备名称", + "latest-telemetry": "最新遥测", + "rolling": "时间序列滚动", + "attribute-scope": "属性范围", + "server-attributes": "服务端属性", + "client-attributes": "客户端属性", + "shared-attributes": "共享属性", + "attribute-key": "属性键", + "default-value": "默认值", + "default-value-required": "默认值为必填项。", + "limit": "最大值数量", + "time-window": "时间窗口", + "customer-name": "客户名称", + "asset-name": "资产名称", + "timeseries": "时间序列", + "output": "输出", + "output-hint": "定义输出的处理方式。", + "create": "创建新的计算字段", + "file": "计算字段文件", + "invalid-file-error": "文件格式无效。请确保文件为有效的 JSON 文件。", + "import": "导入计算字段", + "export": "导出计算字段", + "export-failed-error": "无法导出计算字段:{{error}}", + "output-type": "输出类型", + "delete-title": "确定要删除计算字段“{{title}}”吗?", + "delete-text": "请注意,确认后该计算字段及所有相关数据将无法恢复。", + "delete-multiple-title": "确定要删除 { count, plural, =1 {1 个计算字段} other {# 个计算字段} }吗?", + "delete-multiple-text": "请注意,确认后所有选中的计算字段将被移除,所有相关数据将无法恢复。", + "test-with-this-message": "使用此消息测试", + "use-latest-timestamp": "使用最新时间戳", + "entity-coordinates": "实体坐标", + "latitude-time-series-key": "纬度时间序列键", + "latitude-time-series-key-required": "纬度时间序列键为必填项。", + "longitude-time-series-key": "经度时间序列键", + "longitude-time-series-key-required": "经度时间序列键为必填项。", + "geofencing-zone-groups": "地理围栏区域组", + "geofencing-zone-groups-settings": "地理围栏区域组设置", + "target-zone": "目标区域", + "perimeter-key": "周界键", + "report-strategy": "报告策略", + "no-zone-configured": "至少需要一个区域。", + "no-zone-configured-required": "至少需要配置一个区域组。", + "add-zone-group": "添加区域组", + "report-transition-event-only": "仅转换事件", + "report-presence-status-only": "仅存在状态", + "report-transition-event-and-presence": "存在状态和转换事件", + "perimeter-attribute-key": "周界属性键", + "perimeter-attribute-key-required": "周界属性键为必填项。", + "perimeter-attribute-key-pattern": "周界属性键无效。", + "entity-zone-relationship": "从实体到区域的路径", + "direction": "关联方向", + "direction-from": "从实体到区域", + "direction-to": "从区域到实体", + "relation-type": "关联类型", + "create-relation-with-matched-zones": "为源实体与匹配的区域创建关联", + "relation-level": "关联层级", + "fetch-last-available-level": "仅获取最后可用层级", + "zone-group-refresh-interval": "区域组刷新间隔", + "copy-zone-group-name": "复制区域组名称", + "open-details-page": "打开实体详情页", + "level": "层级", + "direction-level": "方向", + "direction-up": "向上", + "direction-up-parent": "向上到父级", + "direction-down": "向下", + "direction-down-child": "向下到子级", + "add-level": "添加层级", + "delete-level": "删除层级", + "no-level": "未配置层级", + "levels-required": "至少需要配置一个层级。", + "max-allowed-levels-error": "关联层级超过允许的最大值。", + "propagation-path-related-entities": "到关联实体的传播路径", + "propagate-type": { + "arguments-only": "仅参数", + "expression-result": "计算结果" + }, + "script": "脚本", + "data-propagate": "要传播的数据", + "output-key": "输出键", + "copy-output-key": "复制输出键", + "aggregation-path-related-entities": "到关联实体的聚合路径", + "deduplication-interval": "去重间隔", + "deduplication-interval-min": "去重间隔至少应为 {{ sec }} 秒。", + "deduplication-interval-hint": "遥测聚合之间的最小时间。", + "deduplication-interval-required": "去重间隔为必填项。", + "calculated-field-filter-title": "计算字段过滤器", + "filter-title": "过滤器", + "calculated-field-types": "计算字段类型", + "events": "事件", + "any-type": "任意类型", + "metrics": { + "metrics": "指标", + "metrics-empty": "至少需要配置一个指标。", + "metric-name": "指标名称", + "metric-name-required": "指标名称为必填项。", + "metric-name-pattern": "指标名称无效。", + "metric-name-duplicate": "同名指标已存在。", + "metric-name-max-length": "指标名称应少于 256 个字符。", + "metric-name-forbidden": "指标名称为保留名称,无法使用。", + "copy-metric-name": "复制指标名称", + "argument-name": "参数名称", + "aggregation": "聚合", + "aggregation-type": { + "avg": "平均值", "min": "最小值", "max": "最大值", - "avg": "平均值", - "sum": "求和", + "sum": "总和", "count": "计数", - "none": "无" - }, - "admin": { - "settings": "设置", - "general": "基本设置", - "general-settings": "基本设置", - "home-settings": "首页设置", - "home": "首页", - "outgoing-mail": "发送邮件", - "outgoing-mail-settings": "发送邮件设置", - "system-settings": "系统设置", - "test-mail-sent": "测试邮件发送成功!", - "base-url": "基本URL", - "base-url-required": "基本URL必填。", - "prohibit-different-url": "禁止从客户端请求头中使用主机名", - "prohibit-different-url-hint": "应为生产环境启用此设置。禁用时可能会导致安全问题", - "device-connectivity": { - "device-connectivity": "设备连接", - "http-s": "HTTP(s)", - "mqtt-s": "MQTT(s)", - "coap-s": "COAP(s)", - "http": "HTTP", - "https": "HTTPs", - "mqtt": "MQTT", - "mqtts": "MQTTs", - "coap": "COAP", - "coaps": "COAPs", - "hint": "如果主机或端口字段为空,将使用默认的协议值。", - "host": "主机", - "port": "端口", - "port-pattern": "端口必须是正整数。", - "port-range": "端口应在1到65535的范围内。" - }, - "mail-from": "邮件来自", - "mail-from-required": "邮件发件人必填。", - "smtp-protocol": "SMTP协议", - "smtp-host": "SMTP主机", - "smtp-host-required": "SMTP主机必填。", - "smtp-port": "SMTP端口", - "smtp-port-required": "您必须提供一个smtp端口。", - "smtp-port-invalid": "这看起来不是有效的smtp端口。", - "timeout-msec": "超时时间(毫秒)", - "timeout-required": "超时必填。", - "timeout-invalid": "这看起来不像有效的超时值。", - "enable-tls": "启用TLS", - "tls-version": "TLS版本", - "enable-proxy": "启用代理", - "proxy-host": "代理主机", - "proxy-host-required": "代理主机必填。", - "proxy-port": "代理端口", - "proxy-port-required": "代理端口必填。", - "proxy-port-range": "代理端口应在1到65535之间。", - "proxy-user": "代理用户", - "proxy-password": "代理密码", - "change-password": "修改密码", - "send-test-mail": "发送测试邮件", - "sms-provider": "SMS 服务商", - "sms-provider-settings": "SMS 服务商设置", - "sms-provider-type": "SMS 服务商类型", - "sms-provider-type-required": "SMS 服务商类型必填。", - "sms-provider-type-aws-sns": "亚马逊社交网站", - "sms-provider-type-twilio": "Twilio", - "sms-provider-type-smpp": "SMPP", - "aws-access-key-id": "AWS访问密钥ID", - "aws-access-key-id-required": "需要访问AWS密钥ID", - "aws-secret-access-key": "AWS秘密访问密钥", - "aws-secret-access-key-required": "AWS 访问密钥必填", - "aws-region": "AWS地区", - "aws-region-required": "AWS 区域必填", - "number-from": "发送方电话号码", - "number-from-required": "发送方电话号码必填。", - "number-to": "电话号码至", - "number-to-required": "电话号码必填。", - "phone-number-hint": "E.164格式的手机号码,例如 +19995550123", - "phone-number-hint-twilio": "E.164格式电话号码/电话号码的SID/消息服务的SID,例如 +19995550123/PNXXX/MGXXX", - "phone-number-pattern": "手机号码无效。应为E.164格式,例如 +19995550123。", - "phone-number-pattern-twilio": "无效的电话号码,应该使用E.164格式电话号码/电话号码的SID/消息服务的SID,例如+19995550123/PNXXX/MGXXX。", - "sms-message": "短信", - "sms-message-required": "短消息内容必填。", - "sms-message-max-length": "短信长度不能超过1600个字符", - "twilio-account-sid": "Twilio帐户SID", - "twilio-account-sid-required": "Twilio 帐户的 SID 必填", - "twilio-account-token": "Twilio帐户令牌", - "twilio-account-token-required": "Twilio 帐户令牌必填", - "send-test-sms": "发送测试短信", - "test-sms-sent": "测试短信发送成功!", - "security-settings": "安全设置", - "password-policy": "密码策略", - "minimum-password-length": "最小密码长度", - "minimum-password-length-required": "最小密码长度必填", - "minimum-password-length-range": "最小密码长度应在5到50之间", - "maximum-password-length": "密码最大长度", - "maximum-password-length-min": "密码最大长度应至少为6个字符", - "maximum-password-length-less-min": "密码最大长度应大于最小长度", - "minimum-uppercase-letters": "最少大写字母位数", - "minimum-uppercase-letters-range": "最少大写字母位数不能为负数", - "minimum-lowercase-letters": "最少小写字母位数", - "minimum-lowercase-letters-range": "最少小写字母位数不能为负数", - "minimum-digits": "最少数字位数", - "minimum-digits-range": "最少数字位数不能为负数", - "minimum-special-characters": "最少特殊字符位数", - "minimum-special-characters-range": "最少特殊字符位数不能为负数", - "password-expiration-period-days": "密码有效期(天)", - "password-expiration-period-days-range": "密码过期期限(天)不能为负", - "password-reuse-frequency-days": "密码重用频率(天)", - "password-reuse-frequency-days-range": "天内密码重用频率不能为负", - "allow-whitespace": "允许空格", - "force-reset-password-if-no-valid": "如果密码不可用则强制重置密码", - "force-reset-password-if-no-valid-hint": "启用此功能时请小心:它会要求使用不可用密码的用户通过电子邮件重置其密码。", - "general-policy": "基本策略", - "max-failed-login-attempts": "登录失败之前的最大登录尝试次数", - "minimum-max-failed-login-attempts-range": "登录失败次数不能为负数", - "user-lockout-notification-email": "如果用户帐户锁定,请发送通知到电子邮件", - "user-activation-token-ttl": "用户激活链接在1小时内", - "user-activation-token-ttl-range": "用户激活链接必须在1到24小时范围内", - "password-reset-token-ttl": "密码重置链接1小时内", - "password-reset-token-ttl-range": "密码重置链接必须在1到24小时内", - "mobile-secret-key-length": "移动端密钥长度", - "mobile-secret-key-length-range": "移动端密钥长度范围", - "domain-name": "域名", - "domain-name-unique": "域名和协议必须是唯一的。", - "domain-name-max-length": "域名应该小于256个字符。", - "error-verification-url": "域名不应包含符号 “/” 和 “:”。例:thingsboard.io", - "connection-settings": "连接设置", - "oauth2": { - "access-token-uri": "访问令牌URI", - "access-token-uri-required": "访问令牌URI必填。", - "activate-user": "激活用户", - "add-domain": "添加域", - "delete-domain": "删除域", - "add-provider": "添加Provider", - "delete-provider": "删除Provider", - "allow-user-creation": "允许用户创建", - "always-fullscreen": "始终全屏", - "authorization-uri": "授权URI", - "authorization-uri-required": "授权URI必填。", - "add-client": "添加OAuth2.0客户端", - "client-details": "OAuth2.0客户端详情", - "client": "OAuth2.0客户端", - "clients": "OAuth2.0客户端", - "no-oauth2-clients": "未找到OAuth2.0客户端", - "search-oauth2-clients": "搜索OAuth2.0客户端", - "delete-client-title": "您确定要删除OAuth2.0客户端'{{clientName}}'?", - "delete-client-text": "请注意,确认后客户端和所有相关数据将无法恢复。", - "delete-mobile-app-title": "您确定要删除移动应用程序'{{applicationName}}'?", - "delete-mobile-app-text": "请小心,确认后移动应用程序和所有相关数据将变得无法恢复。", - "title": "标题", - "client-title-required": "标题是必填项。", - "client-title-max-length": "标题长度应该小于100个字符。", - "advanced-settings": "高级设置", - "domain-details": "域名详情", - "no-domains": "未找到域名", - "search-domains": "搜索域名", - "mobile-app-details": "移动端详细信息", - "add-mobile-app": "添加应用程序", - "no-mobile-apps": "未配置应用程序", - "search-mobile-apps": "搜索移动端", - "send-token": "发送令牌", - "create-new": "创建", - "client-authentication-method": "客户端身份验证方法", - "client-id": "客户端ID", - "client-id-required": "客户端 ID 必填。", - "client-id-max-length": "客户端ID应该小于256个字符。", - "client-secret": "客户机密", - "client-secret-required": "需要客户端密码。", - "client-secret-max-length": "客户端密钥应该小于2049个字符。", - "custom-setting": "自定义设置", - "customer-name-pattern": "客户名称模式", - "customer-name-pattern-max-length": "客户名称模式应该小于256个字符。", - "default-dashboard-name": "默认仪表板名称", - "default-dashboard-name-max-length": "默认仪表板名称应该小于256个字符。", - "delete-domain-text": "请注意:确认后域名和所有提供商数据将不可恢复。", - "delete-domain-title": "确定要删除域'{{domainName}}'的设置吗?", - "delete-registration-text": "请注意:确认后提供商数据将不可恢复。", - "delete-registration-title": "确定要删除'{{name}}'提供商吗?", - "email-attribute-key": "电子邮件属性键", - "email-attribute-key-required": "电子邮件属性键必填。", - "email-attribute-key-max-length": "电子邮件属性键应该小于32个字符。", - "first-name-attribute-key": "First属性名称", - "first-name-attribute-key-max-length": "First属性名称应该小于32个字符。", - "general": "基本设置", - "jwk-set-uri": "JSON Web地址", - "last-name-attribute-key": "Last属性名称", - "last-name-attribute-key-max-length": "Last属性名称应该小于32个字符。", - "login-button-icon": "登录按钮图标", - "login-button-label": "标签", - "login-button-label-placeholder": "使用$(Provider label)登录", - "login-button-label-required": "标签必填。", - "login-provider": "登录提供商", - "mapper": "映射", - "new-domain": "新建", - "oauth2": "OAuth2.0", - "password-max-length": "密码应该小于256个字符。", - "redirect-uri-template": "重定向URI模板", - "copy-redirect-uri": "复制重定向URI", - "registration-id": "注册ID", - "registration-id-required": "注册ID必填。", - "registration-id-unique": "系统的注册ID必须是唯一的。", - "scope": "范围", - "scope-required": "范围必填。", - "tenant-name-pattern": "租户名称模式", - "tenant-name-pattern-required": "租户名称模式必填。", - "tenant-name-pattern-max-length": "租户名称模式应该小于256个字符。", - "tenant-name-strategy": "租户名称策略", - "type": "映射器类型", - "uri-pattern-error": "无效的URI格式。", - "url": "统一资源定位地址", - "url-pattern": "无效的URL格式。", - "url-required": "URL必填。", - "url-max-length": "URL应该小于256个字符。", - "user-info-uri": "用户信息URI", - "user-info-uri-required": "用户信息URI必填。", - "username-max-length": "用户名应该小于256个字符。", - "user-name-attribute-name": "用户名属性键", - "user-name-attribute-name-required": "用户名属性密钥必填", - "protocol": "协议", - "domain-schema-http": "HTTP", - "domain-schema-https": "HTTPS", - "domain-schema-mixed": "HTTP+HTTPS", - "enable": "启用OAuth2.0设置", - "disable": "禁用OAuth2.0设置", - "edge": "传播到Edge", - "edge-enable": "启用Edge", - "edge-disable": "禁用Edge", - "domains": "域名", - "mobile-apps": "移动端应用", - "mobile-package": "应用程序包", - "mobile-package-placeholder": "例如: my.example.app", - "mobile-package-hint": "Android:应用程序ID或iOS:产品标识符", - "mobile-package-unique": "应用程序包必须是唯一的。", - "mobile-package-required": "应用程序包必填。", - "mobile-package-max-length": "应用程序包应小于256。", - "mobile-package-spaces": "应用程序包不应包含空间。", - "mobile-app-secret": "应用程序密钥", - "mobile-app-secret-hint": "BASE64编码字符串不少于512位数据。", - "mobile-app-secret-required": "应用程序密钥必填。", - "mobile-app-secret-min-length": "应用程序密钥不少于512位数据。", - "mobile-app-secret-base64": "应用程序密钥必须为base64格式。", - "invalid-mobile-app-secret": "应用程序密钥必须只包含字母和数字字符,并且长度必须介于16到2048个字符之间。", - "copy-mobile-app-secret": "复制应用程序密钥", - "delete-mobile-app": "删除应用程序信息", - "providers": "供应商", - "platform-web": "Web", - "platform-android": "Android", - "platform-ios": "iOS", - "all-platforms": "所有平台", - "smtp-provider": "SMTP提供商", - "allowed-platforms": "允许的平台", - "authentication": "身份验证", - "basic": "基本", - "provider": "提供商", - "redirect-url": "重定向URL", - "domain-name": "域名", - "domain-name-required": "域名必填", - "redirect-url-template": "重定向URL模板", - "microsoft-tenant-id": "目录(租户)ID", - "microsoft-tenant-id-required": "需要目录(租户)ID", - "token-uri": "令牌URI", - "token-uri-required": "需要令牌URI", - "redirect-uri": "重定向URI", - "google-provider": "谷歌", - "microsoft-provider": "Office 365", - "sendgrid-provider": "Sendgrid", - "custom-provider": "自定义", - "generate-access-token": "生成访问令牌", - "update-access-token": "更新访问令牌", - "access-token-status": "访问令牌状态:", - "token-status-generated": "已生成", - "token-status-not-generated": "未生成" - }, - "smpp-provider": { - "smpp-version": "SMPP版本", - "smpp-host": "SMPP主机", - "smpp-host-required": "SMPP主机必填。", - "smpp-port": "SMPP端口", - "smpp-port-required": "SMPP端口必填。", - "system-id": "系统ID", - "system-id-required": "系统ID必填。", - "password": "密码", - "password-required": "密码必填。", - "type-settings": "类型设置", - "source-settings": "源设置", - "destination-settings": "目标设置", - "additional-settings": "其他设置", - "system-type": "系统类型", - "bind-type": "绑定类型", - "service-type": "服务类型", - "source-address": "源地址", - "source-ton": "源 TON (号码类型)", - "source-npi": "源 NPI (编号方案标识)", - "destination-ton": "目标 TON (号码类型)", - "destination-npi": "目标 NPI (编号方案标识)", - "address-range": "地址范围", - "coding-scheme": "编码方案", - "bind-type-tx": "发送端", - "bind-type-rx": "接收端", - "bind-type-trx": "发送/接收", - "ton-unknown": "未知", - "ton-international": "国际", - "ton-national": "国内", - "ton-network-specific": "网络特定", - "ton-subscriber-number": "用户号码", - "ton-alphanumeric": "字母数字", - "ton-abbreviated": "简写", - "npi-unknown": "0 - 未知", - "npi-isdn": "1 - ISDN/电话编号方案 (E163/E164)", - "npi-data-numbering-plan": "3 - 数据编号方案 (X.121)", - "npi-telex-numbering-plan": "4 - 电报编号方案 (F.69)", - "npi-land-mobile": "6 - 移动设备编号方案 (E.212)", - "npi-national-numbering-plan": "8 - 国家编号方案", - "npi-private-numbering-plan": "9 - 私有编号方案", - "npi-ermes-numbering-plan": "10 - ERMES 编号方案 (ETSI DE/PS 3 01-3)", - "npi-internet": "13 - 互联网 (IP)", - "npi-wap-client-id": "18 - WAP 客户端标识 (由 WAP 论坛定义)", - "scheme-smsc": "0 - SMSC 默认字母表 (ASCII 码用于短码和长码,GSM 编码用于免费电话)", - "scheme-ia5": "1 - IA5 码 (ASCII 码用于短码和长码,Latin 9 用于免费电话 (ISO-8859-9))", - "scheme-octet-unspecified-2": "2 - 八进制未指定 (8 位二进制)", - "scheme-latin-1": "3 - Latin 1 (ISO-8859-1)", - "scheme-octet-unspecified-4": "4 - 八进制未指定 (8 位二进制)", - "scheme-jis": "5 - JIS (X 0208-1990)", - "scheme-cyrillic": "6 - Cyrillic (ISO-8859-5)", - "scheme-latin-hebrew": "7 - Latin/Hebrew (ISO-8859-8)", - "scheme-ucs-utf": "8 - UCS2/UTF-16 (ISO/IEC-10646)", - "scheme-pictogram-encoding": "9 - 图标编码", - "scheme-music-codes": "10 - 音乐编码 (ISO-2022-JP)", - "scheme-extended-kanji-jis": "13 - 扩展汉字 JIS (X 0212-1990)", - "scheme-korean-graphic-character-set": "14 - 韩文图形字符集 (KS C 5601/KS X 1001)" - }, - "queue-select-name": "选择队列名称", - "queue-name": "名称", - "queue-name-required": "队列名称必填。", - "queues": "队列", - "queue-partitions": "分区", - "queue-submit-strategy": "提交策略", - "queue-processing-strategy": "处理策略", - "queue-configuration": "队列配置", - "repository-settings": "仓库设置", - "repository": "仓库", - "repository-url": "仓库 URL", - "repository-url-required": "仓库 URL 必填。", - "default-branch": "默认分支名称", - "repository-read-only": "只读", - "show-merge-commits": "显示合并提交", - "authentication-settings": "身份验证设置", - "auth-method": "身份验证方法", - "auth-method-username-password": "密码/访问令牌", - "auth-method-username-password-hint": "GitHub用户必须使用能够对仓库进行写入权限的访问令牌。", - "auth-method-private-key": "私钥", - "password-access-token": "密码/访问令牌", - "change-password-access-token": "更改密码/访问令牌", - "private-key": "私钥", - "drop-private-key-file-or": "拖放私钥文件或", - "passphrase": "口令", - "enter-passphrase": "输入口令", - "change-passphrase": "更改口令", - "check-access": "检查访问权限", - "check-repository-access-success": "已成功验证仓库访问!", - "delete-repository-settings-title": "确定要删除仓库设置吗?", - "delete-repository-settings-text": "请注意:确认后,仓库设置将被删除,版本控制功能将不可用。", - "auto-commit-settings": "自动提交设置", - "auto-commit": "自动提交", - "auto-commit-entities": "自动提交实体", - "no-auto-commit-entities-prompt": "没有设置自动提交的实体", - "delete-auto-commit-settings-title": "确定要删除自动提交设置吗?", - "delete-auto-commit-settings-text": "请注意:确认后,自动提交设置将被删除,所有实体的自动提交将被禁用。", - "mobile-app": { - "mobile-app": "移动应用", - "mobile-app-qr-code-widget-settings": "移动应用二维码部件设置", - "applications": "应用程序", - "default": "默认", - "custom": "自定义", - "android": "Android", - "ios": "iOS", - "appearance": "外观", - "appearance-on-home-page": "外观显示在首页", - "enabled": "启用", - "disabled": "禁用", - "badges": "徽章", - "label": "标签", - "label-required": "标签必填。", - "label-max-length": "标签应小于或等于50个字符", - "right": "右侧", - "left": "左侧", - "set": "设置", - "preview": "预览", - "connect-mobile-app": "连接移动端", - "use-system-settings": "使用系统设置" - }, - "2fa": { - "2fa": "双因素认证", - "available-providers": "可用选项", - "issuer-name": "发行者名称", - "issuer-name-required": "发行者名称必填。", - "max-verification-failures-before-user-lockout": "用户锁定前最大验证失败次数", - "max-verification-failures-before-user-lockout-pattern": "最大验证失败次数必须为正整数。", - "number-of-checking-attempts": "检查尝试次数", - "number-of-checking-attempts-pattern": "检查尝试次数必须为正整数。", - "number-of-checking-attempts-required": "检查尝试次数必填。", - "number-of-codes": "验证码数量", - "number-of-codes-pattern": "验证码数量必须为正整数。", - "number-of-codes-required": "验证码数量必填。", - "provider": "Provider", - "retry-verification-code-period": "重试验证码周期(秒)", - "retry-verification-code-period-pattern": "最短时间为5秒", - "retry-verification-code-period-required": "重试验证代码周期必填。", - "total-allowed-time-for-verification": "总允许验证时间(秒)", - "total-allowed-time-for-verification-pattern": "总允许验证最小时间为60秒", - "total-allowed-time-for-verification-required": "总允许验证时间必填。", - "use-system-two-factor-auth-settings": "使用系统双因素认证设置", - "verification-code-check-rate-limit": "验证码检查速率限制", - "verification-code-lifetime": "验证码生存期(秒)", - "verification-code-lifetime-pattern": "验证码生存期必须为正整数。", - "verification-code-lifetime-required": "验证码生存期必填。", - "verification-message-template": "验证消息模板", - "verification-limitations": "验证限制", - "verification-message-template-pattern": "验证消息需要包含模板:${code}", - "verification-message-template-required": "验证消息模板必填。", - "within-time": "在时间内 (秒)", - "within-time-pattern": "时间必须是正整数。", - "within-time-required": "时间必填。" - }, - "jwt": { - "security-settings": "JWT 安全设置", - "issuer-name": "发行者名称", - "issuer-name-required": "发行者名称必填。", - "signings-key": "签名密钥", - "signings-key-hint": "Base64编码的字符串至少512位数据。", - "signings-key-required": "签名密钥必填。", - "signings-key-min-length": "签名密钥必须至少为512位的数据。", - "signings-key-base64": "签名密钥必须是Base64格式。", - "expiration-time": "令牌过期时间(秒)", - "expiration-time-required": "令牌过期时间是必填。", - "expiration-time-max": "最大允许时间为2147483647秒(68年)。", - "expiration-time-min": "最小时间为60秒(1分钟)。", - "refresh-expiration-time": "刷新令牌过期时间(秒)", - "refresh-expiration-time-required": "刷新令牌过期时间必填。", - "refresh-expiration-time-max": "最大允许时间为2147483647秒(68年)。", - "refresh-expiration-time-min": "最小时间为900秒(15分钟)。", - "refresh-expiration-time-less-token": "刷新令牌时间必须大于令牌过期时间。", - "generate-key": "生成密钥", - "info-header": "所有用户将需要重新登录。", - "info-message": "更改JWT签名密钥将导致所有已发行的令牌无效,所有用户将需要重新登录,这也会影响使用Rest API/Websockets的脚本。" - }, - "resources": "资源", - "notifications": "通知", - "notifications-settings": "通知设置", - "slack-api-token": "Slack API令牌", - "slack": "Slack", - "slack-settings": "Slack设置", - "mobile-settings": "移动设置", - "firebase-service-account-file": "Firebase服务帐户JSON凭据文件", - "select-firebase-service-account-file": "拖放Firebase服务帐户凭据文件" - }, - "alarm": { - "alarm": "告警", - "alarms": "告警", - "all-alarms": "所有告警", - "select-alarm": "选择告警", - "no-alarms-matching": "未找到匹配'{{entity}}'的告警", - "alarm-required": "告警必填", - "alarm-filter": "告警筛选器", - "filter": "筛选器", - "alarm-status": "告警状态", - "alarm-status-list": "告警状态列表", - "any-status": "任何状态", - "search-status": { - "ANY": "所有", - "ACTIVE": "激活", - "CLEARED": "已清除", - "ACK": "已确认", - "UNACK": "未确认" - }, - "display-status": { - "ACTIVE_UNACK": "激活未确认", - "ACTIVE_ACK": "激活已确认", - "CLEARED_UNACK": "清除未确认", - "CLEARED_ACK": "清除已确认" - }, - "no-alarms-prompt": "未发现告警", - "created-time": "创建时间", - "type": "类型", - "severity": "严重程度", - "originator": "发起者", - "originator-type": "发起者类型", - "details": "详情", - "originator-label": "发起者标签", - "assign": "分配", - "assignments": "任务分配", - "assignee": "受托人", - "assignee-id": "受托人ID", - "assignee-first-name": "受托人姓氏", - "assignee-last-name": "受托人名字", - "assignee-email": "受托人邮箱", - "unassigned": "未分配", - "user-deleted": "用户已删除", - "assignee-not-set": "所有", - "status": "状态", - "alarm-details": "告警详细信息", - "start-time": "开始时间", - "assign-time": "分配时间", - "end-time": "结束时间", - "ack-time": "确认时间", - "clear-time": "清除时间", - "duration": "持续时间", - "alarm-severity": "警报严重程度", - "alarm-severity-list": "警报严重程度列表", - "any-severity": "任何严重程度", - "severity-critical": "危险", - "severity-major": "重要", - "severity-minor": "次要", - "severity-warning": "警告", - "severity-indeterminate": "不确定", - "acknowledge": "应答", - "clear": "清除", - "delete": "删除", - "search": "查找告警", - "selected-alarms": "已选择 { count, plural, =1 {1 个告警} other {# 个告警} }", - "no-data": "无数据显示", - "polling-interval": "告警轮询间隔(秒)", - "polling-interval-required": "告警轮询间隔必填。", - "min-polling-interval-message": "轮询间隔至少是1秒。", - "aknowledge-alarms-title": "确认 { count, plural, =1 {1 个告警} other {# 个告警} }", - "aknowledge-alarms-text": "确定要确认 { count, plural, =1 {1 个告警} other {# 个告警} }吗?", - "aknowledge-alarm-title": "确认告警", - "aknowledge-alarm-text": "确定要确认告警吗?", - "selected-alarms-are-acknowledged": "所选的告警已经被确认", - "clear-alarms-title": "清除 { count, plural, =1 {1 个告警} other {# 个告警} }", - "clear-alarms-text": "确定要清除 { count, plural, =1 {1 个告警} other {# 个告警} }?", - "clear-alarm-title": "清除告警", - "clear-alarm-text": "确定要清除告警吗?", - "delete-alarms-title": "删除 { count, plural, =1 {1 个告警} other {# 个告警} }", - "delete-alarms-text": "您确定要删除 { count, plural, =1 {1 个告警} other {# 个告警} } 吗?", - "selected-alarms-are-cleared": "所选的告警已清除", - "alarm-status-filter": "告警状态筛选器", - "alarm-filter-title": "告警筛选器", - "assigned": "已分配", - "filter-title": "筛选器", - "max-count-load": "要加载的最大告警数(0-无限制)", - "max-count-load-required": "加载的最大告警数必填。", - "max-count-load-error-min": "最小值为0。", - "fetch-size": "获取大小", - "fetch-size-required": "获取大小必填。", - "fetch-size-error-min": "最小值为10。", - "alarm-types": "告警类型", - "alarm-type-list": "告警类型列表", - "any-type": "任何类型", - "assigned-to-current-user": "分配给当前用户", - "assigned-to-me": "分配给我", - "search-propagated-alarms": "检索已传递的警报", - "comments": "告警评论", - "show-more": "显示更多", - "additional-info": "附加信息", - "alarm-type": "告警类型", - "enter-alarm-type": "输入告警类型", - "no-alarm-types-matching": "找不到与 '{{entitySubtype}}' 相匹配的告警类型。", - "alarm-type-list-empty": "未选择告警类型。" - }, - "alarm-activity": { - "add": "添加评论", - "alarm-comment": "告警评论", - "comments": "评论", - "delete-alarm-comment": "你想删除这条评论吗?", - "refresh": "刷新", - "oldest-first": "最早优先", - "newest-first": "最新优先", - "activity": "活动", - "export": "导出 CSV", - "author": "作者", - "created-date": "创建时间", - "edited-date": "编辑时间", - "text": "文本", - "system": "系统" - }, - "alias": { - "add": "添加别名", - "edit": "编辑别名", - "name": "别名", - "name-required": "别名必填", - "duplicate-alias": "别名已经存在。", - "filter-type-single-entity": "单个实体", - "filter-type-entity-list": "实体列表", - "filter-type-entity-name": "实体名称", - "filter-type-entity-type": "实体类型", - "filter-type-state-entity": "仪表板状态实体", - "filter-type-state-entity-description": "仪表板实体令牌状态参数", - "filter-type-asset-type": "资产类型", - "filter-type-asset-type-description": "类型为 '{{assetTypes}}' 的资产", - "filter-type-asset-type-and-name-description": "类型为 '{{assetTypes}}' 且以 '{{prefix}}' 开头的资产", - "filter-type-device-type": "设备类型", - "filter-type-device-type-description": "类型为 '{{deviceTypes}}' 的设备", - "filter-type-device-type-and-name-description": "类型为 '{{deviceTypes}}' 且以 '{{prefix}}' 开头的设备", - "filter-type-entity-view-type": "实体视图类型", - "filter-type-entity-view-type-description": "类型为 '{{entityViews}}' 的实体视图", - "filter-type-entity-view-type-and-name-description": "类型为 {{entityViews}}' 且以 '{{prefix}}' 开头的实体视图", - "filter-type-edge-type": "边缘类型", - "filter-type-edge-type-description": "类型为 '{{edgeTypes}}' 的边缘", - "filter-type-edge-type-and-name-description": "类型为 '{{edgeTypes}}' 且以 '{{prefix}}' 开头的边缘", - "filter-type-relations-query": "关联查询", - "filter-type-relations-query-description": "具有 {{relationType}} 关联 {{direction}} {{rootEntity}} 的 {{entities}} ", - "filter-type-asset-search-query": "资产搜索查询", - "filter-type-asset-search-query-description": "类型为 {{assetTypes}} 且具有 {{relationType}} 关联 {{direction}} {{rootEntity}} 的资产", - "filter-type-device-search-query": "设备搜索查询", - "filter-type-device-search-query-description": "类型为 {{deviceTypes}} 且具有 {{relationType}} 关联 {{direction}} {{rootEntity}} 的设备", - "filter-type-entity-view-search-query": "实体视图搜索查询", - "filter-type-entity-view-search-query-description": "类型为 {{entityViewTypes}} 且具有 {{relationType}} 关联 {{direction}} {{rootEntity}} 的实体视图", - "filter-type-apiUsageState": "Api使用状态", - "filter-type-edge-search-query": "边缘搜索查询", - "filter-type-edge-search-query-description": "类型为 {{edgeTypes}} 且具有 {{relationType}} 关联 {{direction}} {{rootEntity}} 的边缘", - "entity-filter": "实体筛选器", - "resolve-multiple": "解析为多实体", - "resolve-multiple-hint": "启用所有过滤实体的数据同时渲染,\n如果禁用部件仅显示来自选定实体的数据。", - "filter-type": "筛选器类型", - "filter-type-required": "筛选器类型必填。", - "entity-filter-no-entity-matched": "未找到匹配指定筛选条件的实体。", - "no-entity-filter-specified": "没有指定实体筛选器", - "root-state-entity": "使用仪表板状态实体作为根实体", - "last-level-relation": "仅获取最后一级关联", - "root-entity": "根实体", - "state-entity-parameter-name": "状态实体参数名称", - "default-state-entity": "默认状态实体", - "default-entity-parameter-name": "默认", - "max-relation-level": "最大关联层级", - "unlimited-level": "不限层级", - "state-entity": "仪表板状态实体", - "all-entities": "所有实体", - "any-relation": "不限" - }, - "asset": { - "asset": "资产", - "assets": "资产", - "management": "资产管理", - "view-assets": "查看资产", - "add": "添加资产", - "asset-type-max-length": "资产类型应该小于256个字符", - "assign-to-customer": "分配给客户", - "assign-asset-to-customer": "将资产分配给客户", - "assign-asset-to-customer-text": "请选择要分配给客户的资产", - "no-assets-text": "未找到资产", - "assign-to-customer-text": "请选择客户以分配资产", - "public": "公开", - "assignedToCustomer": "分配客户", - "make-public": "资产设为公开", - "make-private": "资产设为私有", - "unassign-from-customer": "取消分配客户", - "delete": "删除资产", - "asset-public": "资产公开", - "asset-type": "资产类型", - "asset-type-required": "资产类型必填。", - "select-asset-type": "选择资产类型", - "enter-asset-type": "输入资产类型", - "any-asset": "任何资产", - "no-asset-types-matching": "未找到匹配'{{entitySubtype}}'的资产类型。", - "asset-type-list-empty": "资产类型未选择。", - "asset-types": "资产类型", - "name": "名称", - "name-required": "名称必填。", - "name-max-length": "名称应该小于256个字符。", - "label-max-length": "标签应该小于256个字符。", - "description": "说明", - "type": "类型", - "type-required": "类型必填。", - "details": "详情", - "events": "事件", - "add-asset-text": "添加资产", - "asset-details": "资产详情", - "assign-assets": "分配资产", - "assign-assets-text": "分配 { count, plural, =1 {1 个资产} other {# 个资产} } 给客户", - "assign-asset-to-edge-title": "将资产分配给边缘", - "assign-asset-to-edge-text": "请选择要分配给边缘的资产", - "delete-assets": "删除资产", - "unassign-assets": "取消分配资产", - "unassign-assets-action-title": "从客户处取消分配 { count, plural, =1 {1 个资产} other {# 个资产} }", - "assign-new-asset": "分配新资产", - "delete-asset-title": "确定要删除资产 '{{assetName}}'吗?", - "delete-asset-text": "请注意:确认后,资产及其所有相关数据将不可恢复。", - "delete-assets-title": "确定要删除 { count, plural, =1 {1 个资产} other {# 个资产} }吗?", - "delete-assets-action-title": "删除 { count, plural, =1 {1 个资产} other {# 个资产} }", - "delete-assets-text": "请注意:确认后,所有选定的资产将被删除,所有相关的数据将不可恢复。", - "make-public-asset-title": "确定要将资产 '{{assetName}}' 设为公开吗?", - "make-public-asset-text": "确认后,资产及其所有数据将被公开并被他人访问。", - "make-private-asset-title": "确定要将资产 '{{assetName}}' 设为私有吗?", - "make-private-asset-text": "确认后,资产及其所有数据将被私有化,无法被他人访问。", - "unassign-asset-title": "确定要取消对'{{assetName}}'资产的分配吗?", - "unassign-asset-text": "确认后,资产将未分配,客户无法访问。", - "unassign-asset": "未分配资产", - "unassign-assets-title": "确定要取消分配 { count, plural, =1 {1 个资产} other {# 个资产} }吗?", - "unassign-assets-text": "确认后,所有选定的资产将被分配,客户无法访问。", - "unassign-assets-from-edge": "取消分配边缘", - "copyId": "复制资产ID", - "idCopiedMessage": "资产ID已经复制到粘贴板", - "select-asset": "选择资产", - "no-assets-matching": "未找到匹配 '{{entity}}' 的资产。", - "asset-required": "资产必填", - "name-starts-with": "资产名称以此开头", - "help-text": "根据需要可以使用'%'进行匹配,例如:'%asset_name_contains%', '%asset_name_ends', 'asset_starts_with'。", - "import": "导入资产", - "asset-file": "资产档案", - "label": "标签", - "search": "查找资产", - "assign-asset-to-edge": "将资产分配给边缘", - "unassign-asset-from-edge": "取消分配边缘", - "unassign-asset-from-edge-title": "确定要取消对'{{assetName}}'资产的分配吗?", - "unassign-asset-from-edge-text": "确认后,所有选定的资产将被分配,边缘无法访问。", - "unassign-assets-from-edge-title": "确定要取消分配 { count, plural, =1 {1 资产} other {# 个资产} }吗?", - "unassign-assets-from-edge-text": "确认后,所有选定的资产将被分配,边缘无法访问。", - "selected-assets": "已选择 { count, plural, =1 {1 个资产} other {# 个资产} }" - }, - "attribute": { - "attributes": "属性", - "latest-telemetry": "最新遥测数据", - "no-latest-telemetry": "没有最新的遥测数据", - "attributes-scope": "设备属性范围", - "scope-telemetry": "遥测", - "scope-latest-telemetry": "最新遥测数据", - "scope-client": "客户端属性", - "scope-server": "服务端属性", - "scope-shared": "共享属性", - "scope-client-short": "客户端", - "scope-server-short": "服务端", - "scope-shared-short": "共享", - "scope-latest-short": "最新", - "scope-any": "任意", - "add": "添加属性", - "key": "键名", - "key-max-length": "键应该小于256个字符。", - "last-update-time": "最后更新时间", - "key-required": "属性键必填。", - "value": "数值", - "value-required": "属性值必填。", - "telemetry-key-required": "需要遥测键", - "telemetry-value-required": "需要遥测数值", - "delete-attributes-title": "确定要删除 { count, plural, =1 {1 个属性} other {# 个属性} }吗?", - "delete-attributes-text": "注意,确认后所有选中的属性都会被删除。", - "delete-attributes": "删除属性", - "enter-attribute-value": "输入属性值", - "show-on-widget": "在部件上显示", - "widget-mode": "部件模式", - "next-widget": "下一个部件", - "prev-widget": "上一个部件", - "add-to-dashboard": "添加到仪表板", - "add-widget-to-dashboard": "将部件添加到仪表板", - "selected-attributes": "已选择 { count, plural, =1 {1 个属性} other {# 个属性} }", - "selected-telemetry": "已选择 { count, plural, =1 {1 遥测装置} other {# 遥测装置} }", - "no-attributes-text": "未找到属性", - "no-telemetry-text": "未找到遥测数据", - "copy-key": "复制键", - "add-telemetry": "添加遥测数据", - "copy-value": "复制数值", - "delete-timeseries": { - "start-time": "开始时间", - "ends-on": "结束时间", - "strategy": "策略", - "delete-strategy": "删除策略", - "all-data": "删除所有数据", - "all-data-except-latest-value": "删除除最新值外的所有数据", - "latest-value": "删除最新值", - "all-data-for-time-period": "删除指定时间段的所有数据", - "rewrite-latest-value": "重写最新值" - } + "count-unique": "唯一计数" + }, + "filtered": "已过滤", + "value-source": "值来源", + "value-source-hint": "定义聚合值的获取方式。", + "value-source-type": { + "key": "键", + "function": "函数" + }, + "no-metrics-configured": "至少需要一个指标。", + "add-metric": "添加指标", + "max-metrics": "已达到最大指标数量。", + "metric-settings": "指标设置", + "filter": "过滤器", + "filter-hint": "启用聚合期间的实体过滤。过滤函数必须返回布尔值,并且可以使用所有已配置的参数。" }, - "api-usage": { - "api-features": "Api统计", - "api-usage": "Api 使用统计", - "alarm": "告警", - "alarms-created": "创建告警数", - "queue-stats": "队列统计信息", - "processing-failures-and-timeouts": "处理失败和超时", - "exceptions": "异常", - "alarms-created-daily-activity": "每天产生的告警", - "alarms-created-hourly-activity": "每小时产生的告警", - "alarms-created-monthly-activity": "每月产生的告警", - "data-points": "数据点", - "data-points-storage-days": "存储点天", - "device-api": "设备 API", - "email": "邮件", - "email-messages": "邮件消息", - "email-messages-daily-activity": "每天产生的邮件消息", - "email-messages-monthly-activity": "每月产生的邮件消息", - "executions": "执行数", - "scripts": "脚本", - "scripts-hourly-activity": "脚本每小时活动", - "scripts-daily-activity": "脚本每日活动", - "scripts-monthly-activity": "脚本每月活动", - "javascript": "JavaScript", - "javascript-executions": "JavaScript执行数", - "tbel": "TBEL", - "tbel-executions": "TBEL执行数", - "latest-error": "最新错误", - "messages": "消息", - "notifications": "通知", - "notifications-email-sms": "通知(Email/SMS)", - "notifications-hourly-activity": "每小时的通知", - "permanent-failures": "${entityName}永久性故障", - "permanent-timeouts": "${entityName}永久超时", - "processing-failures": "${entityName}处理失败", - "processing-timeouts": "${entityName}处理超时", - "rule-chain": "规则链", - "rule-engine": "规则引擎", - "rule-engine-daily-activity": "每天的规则引擎活动", - "rule-engine-executions": "规则引擎执行", - "rule-engine-hourly-activity": "每小时的规则引擎活动", - "rule-engine-monthly-activity": "每月的规则引擎活动", - "rule-engine-statistics": "规则引擎统计信息", - "rule-node": "规则节点", - "sms": "短信", - "sms-messages": "短信消息", - "sms-messages-daily-activity": "每天的短信息", - "sms-messages-monthly-activity": "每小时的短信息", - "successful": "${entityName} 成功", - "telemetry": "遥测数据", - "telemetry-persistence": "遥测持久化", - "telemetry-persistence-daily-activity": "每天的遥测持久化", - "telemetry-persistence-hourly-activity": "每小时的遥测持久化", - "telemetry-persistence-monthly-activity": "每月的遥测持久化", - "transport": "传输", - "transport-daily-activity": "每天传输数据量", - "transport-data-points": "传输数据点", - "transport-hourly-activity": "每小时传输数据量", - "transport-messages": "传输消息", - "transport-monthly-activity": "每月传输数据量", - "view-details": "查看详细信息", - "view-statistics": "查看统计信息" - }, - "api-limit": { - "cassandra-queries": "Cassandra查询", - "entity-version-creation": "实体版本创建", - "entity-version-load": "实体版本加载", - "notification-requests": "通知请求", - "notification-requests-per-rule": "每个规则的通知请求", - "rest-api-requests": "REST API请求次数", - "rest-api-requests-per-customer": "每个客户的REST API请求", - "transport-messages": "传输消息次数", - "transport-messages-per-device": "每个设备的传输消息", - "transport-messages-per-gateway": "每个网关的传输消息", - "transport-messages-per-gateway-device": "每个网关设备传输消息", - "ws-updates-per-session": "每个会话的WS更新", - "edge-events": "Edge事件", - "edge-events-per-edge": "Edge事件", - "edge-uplink-messages": "Edge上行", - "edge-uplink-messages-per-edge": "Edge下行" - }, - "audit-log": { - "audit": "审计", - "audit-logs": "审计日志", - "timestamp": "时间戳", - "entity-type": "实体类型", - "entity-name": "实体名称", - "user": "用户", - "type": "类型", - "status": "状态", - "details": "详情", - "type-added": "添加", - "type-deleted": "删除", - "type-updated": "更新", - "type-attributes-updated": "更新属性", - "type-attributes-deleted": "删除属性", - "type-rpc-call": "RPC调用", - "type-credentials-updated": "更新凭据", - "type-assigned-to-customer": "分配给客户", - "type-unassigned-from-customer": "未分配给客户", - "type-assigned-to-edge": "分配给边缘", - "type-unassigned-from-edge": "未分配给边缘", - "type-activated": "激活", - "type-suspended": "暂停", - "type-credentials-read": "读取凭据", - "type-attributes-read": "读取属性", - "type-relation-add-or-update": "关联已更新", - "type-relation-delete": "关联已删除", - "type-relations-delete": "删除所有关联", - "type-alarm-ack": "已确认", - "type-alarm-clear": "已清除", - "type-alarm-delete": "Alarm deleted", - "type-alarm-assign": "已分配", - "type-alarm-unassign": "未分配", - "type-added-comment": "添加评论", - "type-updated-comment": "更新评论", - "type-deleted-comment": "删除评论", - "type-login": "登录", - "type-logout": "注销", - "type-lockout": "锁定", - "status-success": "成功", - "status-failure": "失败", - "audit-log-details": "审计日志详情", - "no-audit-logs-prompt": "未找到日志", - "action-data": "活动数据", - "failure-details": "失败详情", - "search": "查找审计日志", - "clear-search": "清空查找", - "type-assigned-from-tenant": "从租户分配", - "type-assigned-to-tenant": "分配给租户", - "type-provision-success": "设备已预配置", - "type-provision-failure": "设备预配置失败", - "type-timeseries-updated": "遥测数据已更新", - "type-timeseries-deleted": "遥测数据已删除", - "type-sms-sent": "短信发送" - }, - "debug-settings": { - "label": "调试配置", - "on-failure": "仅失败(24/7)", - "all-messages": "所有消息({{time}})", - "failures": "失败", - "entity": "实体", - "rule-node": "规则节点", - "hint": { - "main": "所有节点调试消息将被限速,限制为:", - "main-limited": "所有{{entity}}的调试消息将受到速率限制,每{{time}}允许最多{{msg}}条消息。", - "on-failure": "保存所有失败调试事件,无时间限制。", - "all-messages": "在时间限制内保存所有调试事件。" - } + "output-strategy": { + "strategy": "策略", + "process-right-away": "立即处理", + "process-rule-chains": "通过规则链处理", + "save-time-series": "保存到时间序列", + "save-database": "保存到数据库", + "save-latest-values": "保存到最新值", + "send-web-sockets": "发送到 WebSockets", + "save-calculated-fields": "发送到计算字段", + "update-attribute-only-on-value-change": "仅在值变更时更新属性", + "send-attributes-updated-notification": "发送属性更新通知", + "ttl": "自定义 TTL", + "ttl-required": "TTL 为必填项", + "ttl-min": "最小 TTL 仅允许为 0", + "processing-parameters": "处理参数", + "hint": { + "strategy": "控制结果是立即处理还是发送到规则链进行额外处理。", + "processing-options": "处理选项", + "update-attribute-only-on-value-change": "在每条传入消息上更新属性,无论值是否已更改。这会增加 API 使用量并降低性能。", + "update-attribute-only-on-value-change-enabled": "仅在值更改时更新属性。如果值未更改,则不更新时间戳且不发送通知。", + "send-attributes-updated-notification": "向默认规则链发送属性更新事件。", + "save-time-series": "将时间序列数据保存到数据库的 ts_kv 表中。", + "save-database": "将属性数据保存到数据库。", + "save-latest-values": "如果新值更新,则更新数据库 ts_kv_latest 表中的时间序列数据。", + "send-web-sockets-attribute": "通知 WebSocket 订阅有关属性数据的更新。", + "send-web-sockets-time-series": "通知 WebSocket 订阅有关时间序列数据的更新。", + "save-calculated-fields-attribute": "通知计算字段有关属性数据的更新。", + "save-calculated-fields-time-series": "通知计算字段有关时间序列数据的更新。", + "ttl": "定义时间序列数据的保留期限。如果禁用,则使用租户配置的 TTL。" + } }, - "confirm-on-exit": { - "message": "有未保存的更改,确定要离开此页吗?", - "html-message": "有未保存的更改。
确定要离开此页面吗?", - "title": "未保存的更改" - }, - "contact": { - "country": "国家", - "country-required": "国家必填。", - "city": "城市", - "state": "省份", - "postal-code": "邮政编码", - "postal-code-invalid": "只允许数字。", - "address": "地址", - "address2": "地址二", - "phone": "手机号码", - "email": "电子邮件", - "no-address": "无地址", - "no-country-found": "未找不到国家。", - "no-country-matching": "未匹配到'{{country}}'。", - "state-max-length": "省份长度应该小于256个字符", - "phone-max-length": "手机号码长度应该小于256个字符", - "city-max-length": "城市应该小于256个字符" - }, - "common": { - "username": "用户名", - "password": "密码", - "enter-username": "输入用户名", - "enter-password": "输入密码", - "enter-search": "输入检索条件", - "created-time": "创建时间", - "disabled": "已禁用", - "loading": "正在加载中...", - "proceed": "继续", - "open-details-page": "打开详情页", - "not-found": "未找到", - "documentation": "文档", - "time-left": "剩余{{time}}" - }, - "content-type": { - "json": "Json", - "text": "文本", - "binary": "二进制(Base64)" - }, - "customer": { - "customer": "客户", - "customers": "客户", - "management": "客户管理", - "dashboard": "客户仪表板", - "dashboards": "客户仪表板", - "devices": "客户设备", - "entity-views": "客户实体视图", - "assets": "客户资产", - "public-dashboards": "公共仪表板", - "public-devices": "公共设备", - "public-assets": "公共资产", - "public-edges": "公共边缘", - "public-entity-views": "公共实体视图", - "add": "添加客户", - "delete": "删除此客户", - "manage-customer-users": "管理客户用户", - "manage-customer-devices": "管理客户设备", - "manage-customer-dashboards": "管理客户仪表板", - "manage-public-devices": "管理公共设备", - "manage-public-dashboards": "管理公共仪表板", - "manage-customer-assets": "管理客户资产", - "manage-public-assets": "管理公共资产", - "manage-customer-edges": "管理客户边缘", - "manage-public-edges": "管理公共边缘", - "add-customer-text": "添加客户", - "no-customers-text": "未找到客户", - "customer-details": "客户详情", - "delete-customer-title": "确定要删除客户'{{customerTitle}}'吗?", - "delete-customer-text": "请注意:确认后,客户及其所有相关数据将不可恢复。", - "delete-customers-title": "确定要删除 { count, plural, =1 {1 个客户} other {# 个客户} }吗?", - "delete-customers-action-title": "删除 { count, plural, =1 {1 个客户} other {# 个客户} }", - "delete-customers-text": "请注意:确认后,所有选定的客户将被删除,所有相关数据将不可恢复。", - "manage-users": "管理用户", - "manage-assets": "管理资产", - "manage-devices": "管理设备", - "manage-dashboards": "管理仪表板", - "title": "标题", - "title-required": "标题必填。", - "title-max-length": "标题应该小于256个字符", - "description": "说明", - "details": "详情", - "events": "事件", - "copyId": "复制客户ID", - "idCopiedMessage": "客户ID已复制到粘贴板", - "select-customer": "选择客户", - "no-customers-matching": "未找到匹配'{{entity}}'的客户。", - "customer-required": "客户必填", - "select-default-customer": "选择默认的客户", - "default-customer": "默认客户", - "default-customer-required": "为了调试租户级别上的仪表板,需要默认客户。", - "search": "查找客户", - "selected-customers": "已选择 { count, plural, =1 {1 个客户} other {# 个客户} }", - "edges": "客户边缘实例", - "manage-edges": "管理边缘" - }, - "css-size": { - "size-value-required": "尺寸值必填。", - "invalid-size-value": "尺寸值无效" - }, - "date": { - "last-update-n-ago": "N分钟前的最后更新", - "last-update-n-ago-text": "最后更新{{ agoText }}", - "custom-date": "自定义日期", - "format": "格式", - "preview": "预览", - "auto": "自动", - "time-granularity-formats": "时间格式", - "unit-year": "年", - "unit-month": "月", - "unit-day": "日", - "unit-hour": "时", - "unit-minute": "分", - "unit-second": "秒", - "unit-millisecond": "毫秒" - }, - "datetime": { - "date-from": "开始日期", - "time-from": "开始时间", - "date-to": "结束日期", - "time-to": "结束时间", - "from": "从", - "to": "到" - }, - "dashboard": { - "dashboard": "仪表板", - "dashboards": "仪表板", - "management": "仪表板管理", - "view-dashboards": "查看仪表板", - "add": "添加仪表板", - "assign-dashboard-to-customer": "将仪表板分配给客户", - "assign-dashboard-to-customer-text": "请选择要分配给客户的仪表板", - "assign-dashboard-to-edge-title": "将仪表板分配给边缘", - "assign-to-customer-text": "请选择客户分配仪表板", - "assign-to-customer": "分配给客户", - "unassign-from-customer": "取消分配客户", - "make-public": "仪表板设为公开", - "make-private": "仪表板设为私有", - "manage-assigned-customers": "管理已分配的客户", - "assigned-customers": "已分配的客户", - "assign-to-customers": "将仪表板分配给客户", - "assign-to-customers-text": "请选择客户指定仪表板", - "unassign-from-customers": "客户未分配仪表板", - "unassign-from-customers-text": "请选择从仪表板中取消分配的客户", - "no-dashboards-text": "未找到仪表板", - "no-widgets": "没有配置部件", - "add-widget": "添加部件", - "add-widget-button-text": "添加部件", - "title": "标题", - "image": "仪表板图片", - "mobile-app-settings": "移动端应用设置", - "mobile-order": "移动端应用中的仪表板排序", - "mobile-hide": "在移动端应用中隐藏仪表板", - "update-image": "更新仪表板图片", - "take-screenshot": "截图", - "select-widget-title": "选择部件", - "select-widget-value": "{{title}}: 选择部件", - "select-widget-subtitle": "可用的部件类型列表", - "delete": "删除仪表板", - "title-required": "标题必填。", - "title-max-length": "标题应该小于256个字符。", - "description": "说明", - "details": "详情", - "dashboard-details": "仪表板详情", - "add-dashboard-text": "添加仪表板", - "assign-dashboards": "分配仪表板", - "assign-new-dashboard": "分配新的仪表板", - "assign-dashboards-text": "分配 { count, plural, =1 {1 个仪表板} other {# 个仪表板} } 给客户", - "unassign-dashboards-action-text": "取消分配 { count, plural, =1 {1 个仪表板} other {# 个仪表板} } 给客户", - "delete-dashboards": "删除仪表板", - "unassign-dashboards": "取消分配仪表板", - "unassign-dashboards-action-title": "取消分配此客户 { count, plural, =1 {1 个仪表板} other {# 个仪表板} }", - "delete-dashboard-title": "确定要删除仪表板 '{{dashboardTitle}}'吗?", - "delete-dashboard-text": "请注意:确认后,仪表板及其所有相关数据将不可恢复。", - "delete-dashboards-title": "确定要删除 { count, plural, =1 {1 个仪表板} other {# 个仪表板} }吗?", - "delete-dashboards-action-title": "删除 { count, plural, =1 {1 个仪表板} other {# 个仪表板} }", - "delete-dashboards-text": "请注意:确认后,所有选定的仪表板将被删除,所有相关数据将不可恢复。", - "unassign-dashboard-title": "确定要取消分配仪表板 '{{dashboardTitle}}'吗?", - "unassign-dashboard-text": "确认后,面板将被取消分配,客户将无法访问。", - "unassign-dashboard": "取消分配仪表板", - "unassign-dashboards-title": "确定要取消分配仪表板 { count, plural, =1 {1 个仪表板} other {# 个仪表板} } 吗?", - "unassign-dashboards-text": "确认后,所有选定的仪表板将被取消分配,客户将无法访问。", - "public-dashboard-title": "仪表板现已公开", - "public-dashboard-text": "仪表板 {{dashboardTitle}} 已被公开,可通过如下 链接访问:", - "public-dashboard-notice": "提示: 不要忘记将相关设备公开以访问其数据。", - "make-private-dashboard-title": "确定要将仪表板 '{{dashboardTitle}}' 设为私有吗?", - "make-private-dashboard-text": "确认后,仪表板将被设为私有,不能被其他人访问。", - "make-private-dashboard": "仪表板设为私有", - "socialshare-text": "'{{dashboardTitle}}' 由Thingsboard提供支持", - "socialshare-title": "'{{dashboardTitle}}' 由Thingsboard提供支持", - "select-dashboard": "选择仪表板", - "no-dashboards-matching": "未找到匹配 '{{entity}}' 的仪表板。", - "dashboard-required": "仪表板必填。", - "select-existing": "选择现有仪表板", - "create-new": "创建仪表板", - "new-dashboard-title": "新仪表板标题", - "open-dashboard": "打开仪表板", - "set-background": "设置背景", - "background-color": "背景颜色", - "background-image": "背景图片", - "background-size-mode": "背景大小模式", - "no-image": "无图像选择", - "empty-image": "No image", - "drop-image": "拖拽图像或单击以选择要上传的文件。", - "maximum-upload-file-size": "最大上传文件大小: {{ size }}", - "cannot-upload-file": "无法上传文件", - "settings": "设置", - "move-all-widgets": "移动所有部件", - "move-by": "移动", - "cols": "列", - "rows": "行", - "layout": "布局", - "layout-type-default": "默认", - "layout-type-scada": "SCADA", - "layout-type-divider": "分隔线", - "layout-settings-type": "布局设置:{{ type }}", - "columns-count": "列数", - "columns-count-required": "需要列数。", - "min-columns-count-message": "只允许最少10列", - "max-columns-count-message": "只允许最多1000列", - "min-layout-width": "最小布局宽度", - "columns-suffix": "列", - "widgets-margins": "部件间边距", - "margin-required": "边距值必填。", - "min-margin-message": "最小边距值只允许为0。", - "max-margin-message": "仅允许50作为最大边距值。", - "horizontal-margin": "水平边距", - "horizontal-margin-required": "需要水平边距值。", - "min-horizontal-margin-message": "只允许0作为最小水平边距值。", - "max-horizontal-margin-message": "只允许50作为最大水平边距值。", - "vertical-margin": "垂直边距", - "vertical-margin-required": "需要垂直边距值。", - "min-vertical-margin-message": "只允许0作为最小垂直边距值。", - "max-vertical-margin-message": "只允许50作为最大垂直边距值。", - "apply-outer-margin": "为布局的两侧设置边距", - "autofill-height": "自动填充布局高度", - "mobile-layout": "移动端布局设置", - "mobile-row-height": "移动端行高距(px)", - "mobile-row-height-required": "移动端行高距必填。", - "min-mobile-row-height-message": "移动端行高距至少5px。", - "max-mobile-row-height-message": "移动端行高距最多200px。", - "row-height": "行高", - "row-height-required": "行高必填。", - "min-row-height-message": "仅允许5个像素作为最小行高值。", - "max-row-height-message": "仅允许200个像素作为最大行高值。", - "display-first-in-mobile-view": "优先在移动视图中显示", - "title-settings": "标题设置", - "display-title": "显示仪表板标题", - "title-color": "标题颜色", - "toolbar-settings": "工具栏设置", - "hide-toolbar": "隐藏工具栏", - "toolbar-always-open": "工具栏常驻", - "display-dashboards-selection": "显示仪表板选项", - "display-entities-selection": "显示实体选项", - "display-filters": "显示筛选器", - "display-dashboard-timewindow": "显示时间窗口", - "display-dashboard-export": "显示导出", - "display-update-dashboard-image": "显示更新仪表板图像", - "dashboard-logo-settings": "Logo设置", - "display-dashboard-logo": "在仪表板全屏模式下显示 Logo", - "dashboard-logo-image": "仪表板 Logo 图片", - "advanced-settings": "高级设置", - "dashboard-css": "仪表板样式", - "import": "导入仪表板", - "export": "导出仪表板", - "export-failed-error": "无法导出仪表板: {{error}}", - "export-prompt": "嵌入仪表板图像和资源", - "create-new-dashboard": "创建仪表板", - "dashboard-file": "仪表板文件", - "invalid-dashboard-file-error": "无法导入仪表板: 仪表板数据结构无效。", - "dashboard-import-missing-aliases-title": "配置导入仪表板使用的别名", - "create-new-widget": "创建部件", - "import-widget": "导入部件", - "widget-file": "部件文件", - "invalid-widget-file-error": "无法导入窗口部件: 窗口部件数据结构无效。", - "widget-import-missing-aliases-title": "配置导入的窗口部件使用的别名", - "open-toolbar": "显示工具栏", - "close-toolbar": "收起工具栏", - "configuration-error": "配置错误", - "alias-resolution-error-title": "仪表板别名配置错误", - "invalid-aliases-config": "无法找到与某些别名筛选器匹配的任何设备。
请联系您的管理员以解决此问题。", - "select-devices": "选择设备", - "assignedToCustomer": "分配给客户", - "assignedToCustomers": "分配给客户", - "public": "公开", - "copyId": "复制仪表板ID", - "idCopiedMessage": "仪表板ID已复制到剪贴板", - "public-link": "公共链接", - "copy-public-link": "复制公共链接", - "public-link-copied-message": "仪表板的公共链接已被复制到剪贴板", - "manage-states": "仪表板状态管理", - "states": "仪表板状态", - "states-short": "状态", - "search-states": "仪表板状态检索", - "selected-states": "已选择 { count, plural, =1 {1 个仪表板状态} other {# 个仪表板状态} }", - "edit-state": "仪表板状态编辑", - "delete-state": "删除仪表板状态", - "add-state": "添加仪表板状态", - "no-states-text": "未找到状态", - "state": "仪表板状态", - "state-name": "名称", - "state-name-required": "仪表板状态名必填。", - "state-id": "状态ID", - "state-id-required": "仪表板状态ID必填。", - "state-id-exists": "仪表板状态ID已经存在。", - "is-root-state": "根状态", - "delete-state-title": "删除仪表板状态", - "delete-state-text": "确定要删除仪表板状态 '{{stateName}}' 吗?", - "show-details": "显示详情", - "hide-details": "隐藏详情", - "select-state": "选择目标状态", - "state-controller": "状态控制", - "state-controller-default": "静态(已弃用)", - "search": "查找仪表板", - "selected-dashboards": "已选择 { count, plural, =1 {1 个仪表盘} other {# 个仪表盘} }", - "home-dashboard": "首页仪表板", - "home-dashboard-hide-toolbar": "隐藏首页仪表板工具栏", - "unassign-dashboard-from-edge-text": "确认后,所有选定的仪表板将被取消分配,边缘将无法访问。", - "unassign-dashboards-from-edge-title": "确定要取消分配仪表板 { count, plural, =1 {1 个仪表板} other {# 个仪表板} } 吗?", - "unassign-dashboards-from-edge-text": "确认后,所有选定的仪表板将被取消分配,边缘将无法访问。", - "assign-dashboard-to-edge": "将仪表板分配给边缘", - "assign-dashboard-to-edge-text": "请选择要分配给边缘的仪表板", - "non-existent-dashboard-state-error": "找不到ID为 '{{ stateId }}' 的仪表板状态。", - "edit-mode": "编辑模式", - "duplicate-state-action": "复制状态", - "breakpoint-value": "断点({{ value }})", - "breakpoints-id": { - "default": "默认", - "xs": "xs", - "sm": "sm", - "md": "md", - "lg": "lg", - "xl": "xl" - }, - "view-format-type-grid": "网格", - "view-format-type-list": "列表", - "view-format": "类型" - }, - "datakey": { - "settings": "设置", - "general": "常规", - "advanced": "高级", - "key": "键", - "label": "标签", - "color": "颜色", - "units": "单位符号", - "decimals": "小数位数", - "data-generation-func": "数据生成功能", - "use-data-post-processing-func": "使用数据后处理功能", - "configuration": "数据键配置", - "timeseries": "时间序列", - "attributes": "属性", - "entity-field": "实体字段", - "alarm": "告警字段", - "timeseries-required": "实体时间序列必填。", - "timeseries-or-attributes-required": "实体时间序列/属性必填。", - "alarm-fields-timeseries-or-attributes-required": "告警字段或实体时间序列/属性必填。", - "maximum-timeseries-or-attributes": "最多允许 { count, plural, =1 {1 个 timeseries/属性。} other {# 个 timeseries/属性。} }", - "alarm-fields-required": "告警字段必填。", - "function-types": "函数类型", - "function-type": "函数类型", - "function-types-required": "函数类型必填。", - "data-keys": "数据键", - "data-key": "数据键", - "data-keys-required": "数据键是必须的。", - "data-key-required": "数据键是必须的。", - "alarm-keys": "告警数据键", - "alarm-key": "告警数据键", - "alarm-key-functions": "告警数据键函数", - "alarm-key-function": "告警数据键函数", - "latest-keys": "最新值数据键", - "latest-key": "最新值数据键", - "latest-key-functions": "最新值数据键函数", - "latest-key-function": "最新值数据键函数", - "timeseries-keys": "时间序列数据键", - "timeseries-key": "时间序列数据键", - "timeseries-key-functions": "时间序列数据键函数", - "timeseries-key-function": "时间序列数据键函数", - "maximum-function-types": "最多允许 { count, plural, =1 {1 个函数类型} other {# 个函数类型} }", - "time-description": "当前值的时间戳;", - "value-description": "当前值;", - "prev-value-description": "上一次函数调用的结果;", - "time-prev-description": "上一个值的时间戳;", - "prev-orig-value-description": "先前的原始值;", - "aggregation": "聚合", - "aggregation-type-hint-common": "出于性能原因,聚合值的计算仅适用于固定的时间间隔,如“当前天”,“当前月”等,而不适用于滑动窗口间隔,例如“过去30分钟”或“过去24小时”。", - "aggregation-type-none-hint": "获取最新值。", - "aggregation-type-min-hint": "在所选时间窗口内找出数据点中的最小值。", - "aggregation-type-max-hint": "在所选时间窗口内找出数据点中的最大值。", - "aggregation-type-avg-hint": "在所选时间窗口内计算数据点的平均值。", - "aggregation-type-sum-hint": "在所选时间窗口内计算数据点所有值的总和。", - "aggregation-type-count-hint": "在所选时间窗口内计算数据点的总数。", - "delta-calculation": "增量计算", - "enable-delta-calculation": "启用增量计算", - "enable-delta-calculation-hint": "启用后将根据选定时间窗口和指定比较时段的聚合值计算数据键值。出于性能原因,增量计算仅适用于历史时间窗口,而不适用于实时值。例如,您可以计算昨天的能耗与前天的能耗之间的差值。", - "delta-calculation-result": "增量计算结果", - "delta-calculation-result-previous-value": "上个值", - "delta-calculation-result-delta-absolute": "绝对值", - "delta-calculation-result-delta-percent": "百分比", - "source": "来源", - "latest": "最新", - "latest-value": "最新值", - "delta": "增量", - "percent": "百分比", - "absolute": "绝对值" - }, - "datasource": { - "type": "数据源类型", - "name": "名称", - "label": "标签", - "add-datasource-prompt": "请添加数据源" - }, - "details": { - "details": "详情", - "edit-mode": "编辑模式", - "edit-json": "编辑JSON", - "toggle-edit-mode": "切换编辑模式" - }, - "device": { - "device": "设备", - "device-required": "设备必填", - "devices": "设备", - "management": "设备管理", - "view-devices": "查看设备", - "device-alias": "设备别名", - "device-type-max-length": "设备类型应该小于256个字符", - "aliases": "设备别名", - "no-alias-matching": "'{{alias}}' 未找到。", - "no-aliases-found": "未找到别名。", - "no-key-matching": "'{{key}}' 未找到。", - "no-keys-found": "未找到密钥。", - "create-new-alias": "创建别名", - "create-new-key": "创建键", - "duplicate-alias-error": "找到重复别名 '{{alias}}'。
设备别名必须是唯一的。", - "configure-alias": "配置 '{{alias}}' 别名", - "no-devices-matching": "未找到与 '{{entity}}' 匹配的设备。", - "alias": "别名", - "alias-required": "设备别名必填。", - "remove-alias": "删除设备别名", - "add-alias": "添加设备别名", - "name-starts-with": "名称前缀", - "help-text": "根据需要可以使用'%'进行匹配,例如:'%device_name_contains%','%device_name_ends','device_starts_with'。", - "device-list": "设备列表", - "use-device-name-filter": "使用筛选器", - "device-list-empty": "没有被选中的设备", - "device-name-filter-required": "设备名称筛选器必填。", - "device-name-filter-no-device-matched": "未找到以'{{device}}' 开头的设备。", - "add": "添加设备", - "assign-to-customer": "分配给客户", - "assign-device-to-customer": "将设备分配给客户", - "assign-device-to-customer-text": "请选择要分配给客户的设备", - "assign-device-to-edge-title": "将设备分配给边缘", - "assign-device-to-edge-text": "请选择要分配给边缘的设备", - "make-public": "公开", - "make-private": "私有", - "no-devices-text": "未找到设备", - "assign-to-customer-text": "请选择客户分配设备", - "device-details": "设备详细信息", - "add-device-text": "添加设备", - "credentials": "凭据", - "manage-credentials": "管理凭据", - "delete": "删除设备", - "assign-devices": "分配设备", - "assign-devices-text": "将 {count,plural,=1 {1 个设备} other {# 个设备} }分配给客户", - "delete-devices": "删除设备", - "unassign-from-customer": "取消分配客户", - "unassign-devices": "取消分配设备", - "unassign-devices-action-title": "取消分配此客户 {count,plural,=1 {1 个设备} other {# 个设备} }", - "unassign-device-from-edge-title": "确定要取消分配设备 '{{deviceName}}' 吗?", - "unassign-device-from-edge-text": "确认后,设备将被取消分配,边缘将无法访问。", - "unassign-devices-from-edge": "取消分配边缘", - "assign-new-device": "分配新设备", - "make-public-device-title": "确定要将设备 '{{deviceName}}' 设为公开吗?", - "make-public-device-text": "确认后,设备及其所有数据将被设为公开并可被其他人访问。", - "make-private-device-title": "确定要将设备 '{{deviceName}}' 设为私有吗?", - "make-private-device-text": "确认后,设备及其所有数据将被设为私有,不被其他人访问。", - "view-credentials": "查看凭据", - "delete-device-title": "确定要删除设备的{{deviceName}}吗?", - "delete-device-text": "请注意:确认后,设备及其所有相关数据将不可恢复。", - "delete-devices-title": "确定要删除{count,plural,=1 {1 个设备} other {# 个设备} } 吗?", - "delete-devices-action-title": "删除 {count,plural,=1 {1 个设备} other {# 个设备} }", - "delete-devices-text": "请注意:确认后,所有选定的设备将被删除,所有相关数据将不可恢复。", - "unassign-device-title": "确定要取消分配设备 '{{deviceName}}' 吗?", - "unassign-device-text": "确认后,设备将被取消分配,客户将无法访问。", - "unassign-device": "取消分配设备", - "unassign-devices-title": "确定要取消分配 {count,plural,=1 {1 个设备} other {# 个设备} } 吗?", - "unassign-devices-text": "确认后,所有选定的设备将被取消分配,并且客户将无法访问。", - "device-credentials": "设备凭据", - "loading-device-credentials": "加载设备凭据...", - "credentials-type": "凭据类型", - "access-token": "访问令牌", - "access-token-required": "访问令牌必填", - "access-token-invalid": "访问令牌长度必须为1到32个字符。", - "certificate-pem-format": "PEM 格式的证书", - "certificate-pem-format-required": "需要提供证书。", - "copy-access-token": "复制访问令牌", - "copy-certificate": "复制证书", - "copy-client-id": "复制客户端ID", - "copy-user-name": "复制用户名", - "copy-password": "复制密码", - "generate-client-id": "生成客户端ID", - "generate-user-name": "生成用户名", - "generate-password": "生成密码", - "generate-access-token": "生成访问令牌", - "lwm2m-security-config": { - "identity": "客户端身份", - "identity-required": "需要提供客户端身份。", - "identity-tooltip": "PSK 标识符是一个任意的 PSK 标识符,最多可以为 128 字节,如标准 [RFC7925] 中所述。", - "client-key": "客户端密钥", - "client-key-required": "需要提供客户端密钥。", - "client-key-tooltip-prk": "RPK 公钥或 ID 必须符合标准 [RFC7250] 并编码为 Base64 格式!", - "client-key-tooltip-psk": "PSK 密钥必须符合标准 [RFC4279],使用十六进制表示:32、64、128 个字符!", - "endpoint": "终端客户端名称", - "endpoint-required": "需要提供终端客户端名称。", - "client-public-key": "客户端公钥", - "client-public-key-hint": "如果客户端公钥为空,则将使用可信证书", - "client-public-key-tooltip": "X509 公钥必须采用 DER 编码的 X509v3 格式,并且仅支持 EC 算法,然后编码为 Base64 格式!", - "mode": "安全配置模式", - "client-tab": "客户端安全配置", - "client-certificate": "客户端证书", - "bootstrap-tab": "启动客户端", - "bootstrap-server": "启动服务器", - "lwm2m-server": "LwM2M服务器", - "client-publicKey-or-id": "客户端公钥或ID", - "client-publicKey-or-id-required": "客户端公钥或ID必填。", - "client-publicKey-or-id-tooltip-psk": "SK标识符是最多128字节,如标准[RFC7925]所述。", - "client-publicKey-or-id-tooltip-rpk": "RPK必须满足标准[RFC7250]而且编码为 Base64!", - "client-publicKey-or-id-tooltip-x509": "X509公钥必须是X509v3格式而且支持EC算法", - "client-secret-key": "客户端密钥", - "client-secret-key-required": "客户端密钥必填。", - "client-secret-key-tooltip-psk": "PSK键必须是[RFC4279]标准和HexDec格式: 32, 64, 128i字符!", - "client-secret-key-tooltip-prk": "RPK密钥必须是PKCS_8格式(DER编码, 标准[RFC5958]) 并编码为Base64!", - "client-secret-key-tooltip-x509": "X509密钥必须是PKCS_8格式(DER编码, 标准[RFC5958])!" - }, - "client-id": "客户端ID", - "client-id-pattern": "包含无效字符。", - "user-name": "用户名", - "user-name-required": "用户名必填。", - "client-id-or-user-name-necessary": "客户端ID或用户名是必需的", - "password": "密码", - "secret": "密钥", - "secret-required": "密钥必填", - "device-type": "设备类型", - "device-type-required": "设备类型必填。", - "select-device-type": "选择设备类型", - "enter-device-type": "输入设备类型", - "any-device": "任意设备", - "no-device-types-matching": "未找到匹配 '{{entitySubtype}}' 的设备类型。", - "device-type-list-empty": "未选择设备类型", - "device-profile-type-list-empty": "至少应选择一个设备配置。", - "device-types": "设备类型", - "name": "名称", - "name-required": "名称必填。", - "name-max-length": "名称应该小于256个字符。", - "label-max-length": "标签应该小于256个字符。", - "description": "说明", - "label": "标签", - "events": "事件", - "details": "详情", - "copyId": "复制设备ID", - "copyAccessToken": "复制访问令牌", - "copy-mqtt-authentication": "复制MQTT凭据", - "idCopiedMessage": "设备ID已复制到剪贴板", - "accessTokenCopiedMessage": "设备访问令牌已复制到剪贴板", - "mqtt-authentication-copied-message": "设备MQTT身份验证已复制到剪贴板", - "assignedToCustomer": "分配给客户", - "unable-delete-device-alias-title": "无法删除设备别名", - "unable-delete-device-alias-text": "设备别名 '{{deviceAlias}}' 不能够被删除,因为它被下列部件所使用:
{{widgetsList}}", - "is-gateway": "是否网关", - "overwrite-activity-time": "覆盖已连接设备的活动时间", - "device-filter": "设备筛选器", - "device-filter-title": "设备筛选器", - "filter-title": "筛选器", - "device-state": "设备状态", - "state": "状态", - "any": "所有", - "active": "活动", - "inactive": "非活动", - "public": "公开", - "device-public": "设备公开", - "select-device": "选择设备", - "import": "导入设备", - "device-file": "设备文件", - "search": "查找设备", - "selected-devices": "已选择 { count, plural, =1 {1 个设备} other {# 个设备} }", - "device-configuration": "设备配置", - "transport-configuration": "传输配置", - "wizard": { - "device-details": "设备详细信息" - }, - "unassign-devices-from-edge-title": "确定要取消分配 { count, plural, =1 {1 个设备} other {# 个设备} } 吗?", - "unassign-devices-from-edge-text": "确认后,设备将被取消分配,边缘将无法访问。", - "time": "时间", - "connectivity": { - "check-connectivity": "检查连通性", - "device-created-check-connectivity": "设备已创建,检查连通性!", - "loading-check-connectivity-command": "正在加载检查连通性命令...", - "use-following-instructions": "请使用以下说明代表设备发送遥测数据", - "execute-following-command": "执行以下命令", - "install-curl-windows": "从 Windows 10 b17063 开始,cURL 已默认安装", - "install-curl-macos": "从 Mac OS X 10.2 6C115(Jaguar)开始,cURL 已默认安装", - "install-mqtt-windows": "使用说明下载、安装、设置和运行 mosquitto_pub", - "install-coap-client": "使用说明下载、安装、设置和运行 coap-client", - "install-necessary-client-tools": "安装必要的客户端工具", - "mqtts-x509-command": "使用以下文档通过 MQTT 连接带有 X509 授权的设备", - "coaps-x509-command": "使用以下文档通过基于 DTLS 的 CoAP 连接带有 X509 授权的设备", - "snmp-command": "使用以下文档通过 SNMP 连接设备。", - "sparkplug-command": "使用以下文档通过 MQTT Sparkplug 连接设备。", - "lwm2m-command": "使用以下文档通过 LWM2M 连接设备。" - } + "aggregate-interval-type": "聚合间隔类型", + "aggregate-interval-value": "聚合间隔值", + "aggregate-interval-value-required": "聚合间隔值为必填项。", + "aggregate-interval-value-min": "聚合间隔值至少应为 { sec, plural, =0 {0 秒} =1 {1 秒} other {# 秒} }。", + "aggregate-interval-value-step-multiple-of": "聚合间隔值必须是 1 天的因子或倍数。", + "aggregate-period": { + "hour": "小时", + "day": "天", + "week": "周(周一至周日)", + "week-sun-sat": "周(周日至周六)", + "month": "月", + "quarter": "季度", + "year": "年", + "custom": "自定义" }, - "dynamic-form": { - "property": { - "properties": "属性", - "property": "属性", - "id": "ID", - "name": "名称", - "type": "类型", - "type-text": "文本", - "type-password": "密码", - "type-textarea": "文本区域", - "type-number": "数字", - "type-switch": "开关", - "type-select": "选择框", - "type-radios": "单选按钮", - "type-datetime": "日期/时间", - "type-image": "图片", - "type-javascript": "JavaScript", - "type-json": "JSON", - "type-html": "HTML", - "type-css": "CSS", - "type-markdown": "Markdown", - "type-color": "颜色", - "type-color-settings": "颜色设置", - "type-font": "字体", - "type-units": "单位", - "type-icon": "图标", - "type-fieldset": "字段集", - "type-array": "数组", - "type-html-section": "HTML区域", - "group-title": "分组标题", - "no-properties": "没有配置属性", - "add-property": "添加属性", - "property-settings": "属性设置", - "remove-property": "移除属性", - "default-value": "默认值", - "value-required": "值是必需的", - "number-settings": "数字设置", - "min": "最小值", - "max": "最大值", - "step": "步长", - "selected-options-limit": "选项限制", - "advanced-ui-settings": "高级UI设置", - "disable-on-property": "基于属性禁用", - "display-condition-function": "显示条件函数", - "sub-label": "子标签", - "vertical-divider-after": "垂直分隔符后", - "input-field-suffix": "输入框后缀", - "property-row-classes": "属性行类", - "property-field-classes": "属性字段类", - "not-unique-property-ids-error": "属性ID必须唯一!", - "enable-multiple-select": "启用多选", - "allow-empty-select-option": "允许空选项", - "select-options": "选择项", - "not-unique-select-option-value-error": "选择项值必须唯一!", - "value": "值", - "label": "标签", - "add-option": "添加选项", - "no-options": "没有配置选项", - "remove-option": "移除选项", - "textarea-rows": "文本区行数", - "help-id": "帮助ID", - "buttons-direction": "按钮方向", - "direction-row": "行", - "direction-column": "列", - "radio-button-options": "单选按钮选项", - "datetime-type": "日期/时间字段类型", - "datetime-type-date": "日期", - "datetime-type-time": "时间", - "datetime-type-datetime": "日期/时间", - "enable-clear-button": "启用清除按钮", - "html-section-settings": "HTML区域设置", - "html-section-classes": "HTML区域类", - "html-section-content": "HTML区域内容", - "array-item": "数组项", - "item-type": "项类型", - "item-name": "项名称", - "no-items": "没有项" - }, - "clear-form": "清除表单", - "clear-form-prompt": "确定要移除所有表单属性吗?", - "import-form": "从JSON导入表单", - "export-form": "导出表单为JSON", - "json-file": "JSON文件", - "json-content": "JSON内容", - "invalid-form-json-file-error": "无法从JSON导入表单:无效的表单JSON数据结构。" - }, - "asset-profile": { - "asset-profile": "资产配置", - "asset-profiles": "资产配置", - "all-asset-profiles": "全部", - "add": "添加资产配置", - "edit": "编辑资产配置", - "asset-profile-details": "资产配置详情", - "no-asset-profiles-text": "未找到资产配置", - "search": "搜索资产配置", - "selected-asset-profiles": "已选择 { count, plural, =1 {1 个资产配置} other {# 个资产配置} }", - "no-asset-profiles-matching": "未找到与 '{{entity}}' 匹配的资产配置。", - "asset-profile-required": "资产配置必填", - "idCopiedMessage": "资产配置ID已复制到剪贴板", - "set-default": "设为默认资产配置", - "delete": "删除资产配置", - "copyId": "复制资产配置ID", - "name-max-length": "名称长度必须小于256个字符", - "new-device-profile-name": "资产配置名称", - "new-device-profile-name-required": "资产配置名称必填。", - "name": "名称", - "name-required": "名称必填。", - "image": "资产配置图片", - "description": "说明", - "default": "默认", - "default-rule-chain": "默认规则链", - "default-edge-rule-chain": "默认边缘规则链", - "default-edge-rule-chain-hint": "作为规则链,用于在边缘上处理属于此资产配置中资产的传入数据。", - "mobile-dashboard": "移动端仪表板", - "mobile-dashboard-hint": "被移动端应用用作资产详情仪表板", - "select-queue-hint": "从下拉列表中选择。", - "delete-asset-profile-title": "确定要删除 '{{assetProfileName}}' 资产配置吗?", - "delete-asset-profile-text": "请注意:确认后,资产配置和所有相关数据将不可恢复。", - "delete-asset-profiles-title": "确定要删除 { count, plural, =1 {1 个资产配置} other {# 个资产配置} }吗?", - "delete-asset-profiles-text": "请注意:确认后,所有选定的资产配置将被删除,所有相关数据将不可恢复。", - "set-default-asset-profile-title": "确定要将 '{{assetProfileName}}' 设为默认资产配置吗?", - "set-default-asset-profile-text": "确认后,资产配置将被标记为默认,并将用于未指定配置的新资产。", - "no-asset-profiles-found": "未不到资产配置。", - "create-new-asset-profile": "创建资产配置", - "create-asset-profile": "创建资产配置", - "import": "导入资产配置", - "export": "导出资产配置", - "export-failed-error": "无法导出资产配置: {{error}}", - "asset-profile-file": "资产配置", - "invalid-asset-profile-file-error": "无法导入资产配置:无效的资产配置数据结构。" - }, - "device-profile": { - "device-profile": "设备配置", - "device-profiles": "设备配置", - "all-device-profiles": "全部", - "add": "添加设备配置", - "edit": "编辑设备配置", - "device-profile-details": "设备配置详情", - "no-device-profiles-text": "未找到设备配置", - "search": "查找设备配置", - "selected-device-profiles": "已选择 { count, plural, =1 {1 个设备配置} other {# 个设备配置} }", - "no-device-profiles-matching": "未找到与 '{{entity}}' 匹配的设备配置。", - "device-profile-required": "设备配置必填", - "idCopiedMessage": "设备配置 ID 已复制到剪贴板", - "set-default": "设为默认设备配置", - "delete": "删除设备配置", - "copyId": "复制设备配置 ID", - "name-max-length": "名称长度必须小于256个字符", - "name": "名称", - "name-required": "名称是必需的。", - "type": "配置类型", - "type-required": "配置类型必填。", - "type-default": "默认", - "image": "设备配置图片", - "transport-type": "传输方式", - "transport-type-required": "传输方式必填。", - "transport-type-default": "默认", - "transport-type-default-hint": "支持基本MQTT、HTTP和CoAP传输", - "transport-type-mqtt": "MQTT", - "transport-type-mqtt-hint": "启用高级MQTT传输设置", - "transport-type-coap": "CoAP", - "transport-type-coap-hint": "启用高级 CoAP 传输设置", - "transport-type-lwm2m": "LWM2M", - "transport-type-lwm2m-hint": "LWM2M传输类型", - "transport-type-snmp": "SNMP", - "transport-type-snmp-hint": "指定 SNMP 传输配置", - "transport-type-http": "HTTP", - "description": "说明", - "default": "默认", - "profile-configuration": "配置", - "transport-configuration": "传输配置", - "default-rule-chain": "默认规则链", - "default-edge-rule-chain": "默认边缘规则链", - "default-edge-rule-chain-hint": "作为规则链,用于在边缘上处理属于此设备配置中设备的传入数据。", - "mobile-dashboard": "移动端仪表板", - "mobile-dashboard-hint": "被移动端应用用作设备详情仪表板", - "select-queue-hint": "从下拉列表中选择或添加自定义名称。", - "delete-device-profile-title": "确定要删除'{{deviceProfileName}}'设备配置吗?", - "delete-device-profile-text": "请注意:确认后,设备配置和所有相关数据将不可恢复。", - "delete-device-profiles-title": "确定要删除 { count, plural, =1 {1 个设备配置} other {# 个设备配置} }吗?", - "delete-device-profiles-text": "请注意:确认后,所有选定的设备配置将被删除,所有相关数据将不可恢复。", - "set-default-device-profile-title": "确定要将设备配置'{{deviceProfileName}}'设为默认值吗?", - "set-default-device-profile-text": "确认后,设备配置将被标记为默认,并将用于未指定配置的新设备。", - "no-device-profiles-found": "未找到设备配置。", - "create-new-device-profile": "创建设备配置", - "mqtt-device-topic-filters": "MQTT设备主题筛选器", - "mqtt-device-topic-filters-unique": "MQTT设备主题筛选器必须唯一。", - "mqtt-device-topic-filters-spark-plug": "MQTT Sparkplug B边缘网络(EoN)节点", - "mqtt-device-topic-filters-spark-plug-hint": "允许来自具备Sparkplug B负载和主题格式的边缘网络(EoN)节点的连接。", - "mqtt-device-topic-filters-spark-plug-attribute-metric-names": "将SparkPlug指标存储为属性。", - "mqtt-device-topic-filters-spark-plug-attribute-metric-names-hint": "将作为设备属性存储的SparkPlug指标的名称。其他指标将作为设备遥测数据进行存储。", - "mqtt-device-payload-type": "MQTT设备Payload", - "mqtt-device-payload-type-json": "JSON", - "mqtt-device-payload-type-proto": "Protobuf", - "mqtt-enable-compatibility-with-json-payload-format": "启用与其他Payload格式兼容。", - "mqtt-enable-compatibility-with-json-payload-format-hint": "启用后平台将默认使用Protobuf的Payload格式,如果解析失败平台将尝试使用JSON的Payload格式。对于固件更新期间的向后兼容性很有用,例如固件的初始版本使用Json而新版本使用Protobuf在设备队列的固件更新过程中,需要同时支持Protobuf和JSON。兼容模式会导致一点的性能下降,因此建议在所有设备更新后禁用此模式。", - "mqtt-use-json-format-for-default-downlink-topics": "缺省下行主题采用Json格式", - "mqtt-use-json-format-for-default-downlink-topics-hint": "启用后平台将使用Json的Playload格式通过以下主题推送属性和RPC:v1/devices/me/attributes/response/$request_idv1/devices/me/attributes v1/devices/me/rpc/request/$request_idv1/devices/me/rpc/response/$request_id。此设置不会影响使用新(v2)主题发送的属性和rpc订阅:v2/a/res/$request_idv2/av2/r /req/$request_idv2/r/res/$request_id。其中$request_id是一个整数请求标识符。", - "mqtt-send-ack-on-validation-exception": "发布消息验证失败时发送PUBACK", - "mqtt-send-ack-on-validation-exception-hint": "默认情况下平台将关闭相关消息验证失败的MQTT会话,启用后平台将发布确认而不是关闭会话。", - "snmp-add-mapping": "添加SNMP映射", - "snmp-mapping-not-configured": "OID到时间序列/遥测的映射未配置", - "snmp-timseries-or-attribute-name": "用于映射的时间序列/属性名称", - "snmp-timseries-or-attribute-type": "用于映射的时间序列/属性类型", - "snmp-method-pdu-type-get-request": "GetRequest", - "snmp-method-pdu-type-get-next-request": "GetNextRequest", - "snmp-oid": "OID", - "transport-device-payload-type-json": "JSON", - "transport-device-payload-type-proto": "Protobuf", - "mqtt-payload-type-required": "Payload类型必填。", - "coap-device-type": "CoAP设备类型", - "coap-device-payload-type": "CoAP设备消息Payload", - "coap-device-type-required": "CoAP设备类型必填。", - "coap-device-type-default": "默认", - "coap-device-type-efento": "Efento NB-IoT", - "support-level-wildcards": "支持单[+]和多级[#]通配符。", - "telemetry-topic-filter": "遥测数据主题筛选器", - "telemetry-topic-filter-required": "遥测数据主题筛选器必填。", - "attributes-topic-filter": "属性主题筛选器", - "attributes-subscribe-topic-filter": "订阅属性的主题筛选器", - "attributes-topic-filter-required": "属性的主题筛选器必填。", - "attributes-subscribe-topic-filter-required": "订阅属性的主题筛选器必填。", - "telemetry-proto-schema": "遥测数据 Proto Schema", - "telemetry-proto-schema-required": "遥测数据 Proto Schema 必填。", - "attributes-proto-schema": "属性 Proto Schema", - "attributes-proto-schema-required": "属性 Proto Schema 必填。", - "rpc-response-proto-schema": "RPC 响应 Proto Schema", - "rpc-response-proto-schema-required": "RPC 响应 Proto Schema 必填。", - "rpc-response-topic-filter": "RPC响应主题筛选器", - "rpc-response-topic-filter-required": "RPC响应主题筛选器必填。", - "rpc-request-proto-schema": "RPC 请求 Proto Schema", - "rpc-request-proto-schema-required": "RPC 请求 Proto Schema 必填。", - "rpc-request-proto-schema-hint": "RPC 请求消息应始终包含字段:string method = 1; int32 requestId = 2; 和params = 3的任何数据类型。", - "not-valid-pattern-topic-filter": "无效的主题筛选器模式", - "not-valid-single-character": "单级通配符的使用无效", - "not-valid-multi-character": "多级通配符的使用无效", - "single-level-wildcards-hint": "[+] 适用于任何主题过滤级别。例如:v1/devices/+/telemetry or +/devices/+/attributes。", - "multi-level-wildcards-hint": "[#]可以替换主题筛选器本身,并且必须是主题的最后一个符号。例如:# or v1/devices/me/#。", - "alarm-rules": "告警规则", - "alarm-rules-with-count": "告警规则({{count}})", - "no-alarm-rules": "未配置告警规则", - "add-alarm-rule": "添加告警规则", - "edit-alarm-rule": "编辑告警规则", - "alarm-type": "告警类型", - "alarm-type-required": "告警类型必填。", - "alarm-type-unique": "警报类型在设备配置警报规则中必须唯一。", - "alarm-type-max-length": "告警类型应该小于256字符。", - "create-alarm-pattern": "创建 {{alarmType}} 告警", - "create-alarm-rules": "创建告警规则", - "no-create-alarm-rules": "未配置创建条件", - "add-create-alarm-rule-prompt": "请添加创建告警规则", - "clear-alarm-rule": "清除告警规则", - "no-clear-alarm-rule": "未配置明确条件", - "add-create-alarm-rule": "添加创建条件", - "add-clear-alarm-rule": "添加清除条件", - "select-alarm-severity": "选择告警严重性", - "alarm-severity-required": "告警严重级别必填。", - "condition-duration": "条件持续时间", - "condition-duration-value": "持续时间值", - "condition-duration-time-unit": "时间单位", - "condition-duration-value-range": "持续时间值应在1到2147483647之间。", - "condition-duration-value-pattern": "持续时间值应为整数。", - "condition-duration-value-required": "持续时间值必填。", - "condition-duration-time-unit-required": "时间单位必填。", - "advanced-settings": "高级设置", - "alarm-rule-additional-info": "附加信息", - "edit-alarm-rule-additional-info": "编辑附加信息", - "alarm-rule-additional-info-placeholder": "请在此处提供评论和调整,以便在附加信息下的告警详情中显示", - "alarm-rule-additional-info-hint": "提示: 使用${keyName}来替代告警规则条件中使用的属性或遥测键的值。", - "alarm-rule-mobile-dashboard": "移动端仪表板", - "alarm-rule-mobile-dashboard-hint": "作为移动端告警详情仪表板使用。", - "alarm-rule-no-mobile-dashboard": "未选择仪表板。", - "propagate-alarm": "传递警报", - "alarm-rule-relation-types-list": "要传递的关联类型", - "alarm-rule-relation-types-list-hint": "如果未选择传递关联类型,则将不按关联类型过滤而传递告警。", - "propagate-alarm-to-owner": "将告警传播给实体所有者(客户或租户)。", - "propagate-alarm-to-tenant": "将告警传播给租户", - "alarm-rule-condition": "告警规则条件", - "enter-alarm-rule-condition-prompt": "请添加告警规则条件", - "edit-alarm-rule-condition": "编辑告警规则条件", - "device-provisioning": "设备预配置", - "provision-strategy": "预配置策略", - "provision-strategy-required": "预配置策略必填。", - "provision-strategy-disabled": "禁用", - "provision-strategy-created-new": "允许创建设备", - "provision-strategy-check-pre-provisioned": "检查预配置的设备", - "provision-device-key": "预配置设备密钥名", - "provision-device-key-required": "预配置设备密钥名必填。", - "copy-provision-key": "复制预配置密钥名", - "provision-key-copied-message": "预配置密钥名已复制到剪贴板", - "provision-device-secret": "预配置设备密钥", - "provision-device-secret-required": "预配置设备密钥必填。", - "copy-provision-secret": "复制预配置密钥", - "provision-secret-copied-message": "预配置密钥已复制到剪贴板", - "provision-strategy-x509": { - "certificate-chain": "X509 证书链", - "certificate-chain-hint": "X.509 证书策略用于通过客户端证书在双向TLS通信中提供设备的方式。", - "allow-create-new-devices": "创建设备", - "allow-create-new-devices-hint": "如果选择创建设备,则将客户端证书用作设备凭据。", - "certificate-value": "PEM 格式的证书", - "certificate-value-required": "PEM 格式的证书必填。", - "cn-regex-variable": "CN 正则表达式变量", - "cn-regex-variable-required": "CN 正则表达式变量必填。", - "cn-regex-variable-hint": "需要从设备 X509 证书的通用名称中获取设备名称。" - }, - "condition": "条件", - "condition-type": "条件类型", - "condition-type-simple": "简单", - "condition-type-duration": "持续时间", - "condition-during": "在{{during}}期间", - "condition-during-dynamic": " \"{{ attribute }}\" ({{during}})期间", - "condition-type-repeating": "重复", - "condition-type-required": "条件类型必填。", - "condition-repeating-value": "事件计数", - "condition-repeating-value-range": "事件计数应在1到2147483647之间。", - "condition-repeating-value-pattern": "事件计数应为整数。", - "condition-repeating-value-required": "事件计数值必填。", - "condition-repeat-times": "重复 { count, plural, =1 {1 次} other {# 次} }", - "condition-repeat-times-dynamic": "重复 \"{ attribute }\" ({ count, plural, =1 {1 time} other {# times} })", - "schedule-type": "计划程序类型", - "schedule-type-required": "计划类型必填。", - "schedule": "启用规则:", - "edit-schedule": "编辑告警日程表", - "schedule-any-time": "始终启用", - "schedule-specific-time": "定时启用", - "schedule-custom": "自定义启用", - "schedule-day": { - "monday": "星期一", - "tuesday": "星期二", - "wednesday": "星期三", - "thursday": "星期四", - "friday": "星期五", - "saturday": "星期六", - "sunday": "星期日" - }, - "schedule-days": "天", - "schedule-time": "时间", - "schedule-time-from": "从", - "schedule-time-to": "到", - "schedule-days-of-week-required": "每周至少选择一天。", - "create-device-profile": "创建设备配置", - "import": "导入设备配置", - "export": "导出设备配置", - "export-failed-error": "无法导出设备配置: {{error}}", - "device-profile-file": "设备配置", - "invalid-device-profile-file-error": "无法导入设备配置:无效的设备配置数据结构。", - "power-saving-mode": "节能模式", - "power-saving-mode-type": { - "default": "使用设备配置的节能模式", - "psm": "节能模式(PSM)", - "drx": "非连续接收(DRX)", - "edrx": "连续接收(eDRX)" - }, - "edrx-cycle": "eDRX循环", - "edrx-cycle-required": "eDRX循环必填。", - "edrx-cycle-pattern": "eDRX循环必须是一个正整数。", - "edrx-cycle-min": "eDRX循环的最小值{{ min }}秒。", - "paging-transmission-window": "分页传输窗口", - "paging-transmission-window-required": "分页传输窗口必填。", - "paging-transmission-window-pattern": "分页传输窗口必须是正整数。", - "paging-transmission-window-min": "分页传输窗口的最小值{{ min }}秒。", - "psm-activity-timer": "PSM活动计时器", - "psm-activity-timer-required": "PSM活动计时器必填。", - "psm-activity-timer-pattern": "PSM活动计时器必须是正整数", - "psm-activity-timer-min": "PSM活动计时器的最小数量为{{ min }}秒。", - "lwm2m": { - "object-list": "Object列表", - "object-list-empty": "没有选择边object。", - "no-objects-found": "没有选择边object。", - "no-objects-matching": "没有找到匹配的object'{{object}}'。", - "model-tab": "LWM2M模式", - "add-new-instances": "添加新实例", - "instances-list": "实例列表", - "instances-list-required": "实例列表必填。", - "instance-id-pattern": "实例id必须是一个正整数。", - "instance-id-max": "实例id最大值是{{max}}", - "instance": "实例", - "resource-label": "#ID资源名称", - "observe-label": "观察者", - "attribute-label": "属性", - "telemetry-label": "遥测", - "edit-observe-select": "选择观察者编辑遥测或属性", - "edit-attributes-select": "选择要编辑的遥测或属性", - "no-attributes-set": "没有设置属性", - "key-name": "键名", - "key-name-required": "键名必填", - "attribute-name": "属性名称", - "attribute-name-required": "属性名称必填。", - "attribute-value": "属性值", - "attribute-value-required": "属性值必填。", - "attribute-value-pattern": "属性值必须是一个正整数。", - "edit-attributes": "编辑属性:{{ name }}", - "view-attributes": "查看属性:{{ name }}", - "add-attribute": "添加属性", - "edit-attribute": "编辑属性", - "view-attribute": "查看属性", - "remove-attribute": "移除属性", - "delete-server-text": "请注意,确认删除后,服务器配置将无法恢复。", - "delete-server-title": "确定要删除服务器吗?", - "mode": "安全配置模式", - "bootstrap-tab": "Bootstrap", - "bootstrap-server-legend": "Bootstrap服务...", - "lwm2m-server-legend": "LwM2M服务...", - "server": "服务器", - "short-id": "服务器ID", - "short-id-tooltip": "服务器ID用作关联服务器对象实例的链接。", - "short-id-tooltip-bootstrap": "服务器短ID用作关联服务器对象实例的链接,\n 该标识符唯一地标识了为LWM2M客户端配置的每个LWM2M服务器,\n 当Bootstrap-Server资源的值为‘false’时必须设置资源。", - "short-id-required": "服务器ID必填。", - "short-id-range": "服务器ID应在{{ min }}到{{ max }}范围内。", - "short-id-pattern": "服务器ID必须是一个正整数。", - "lifetime": "客户端注册生命周期", - "lifetime-required": "客户端注册生命周期必填。", - "lifetime-pattern": "客户端注册生命周期必须是一个正整数。", - "default-min-period": "最小期限", - "default-min-period-tooltip": "LWM2M客户端在观察中不包含此参数时使用的默认值。", - "default-min-period-required": "最小期限必填。", - "default-min-period-pattern": "最小期限必须是一个正整数。", - "notification-storing": "禁用或离线时通知存储", - "binding": "绑定", - "binding-type": { - "u": "U: 客户端通过UDP绑定。", - "m": "M: 客户端通过MQTT绑定。", - "h": "H: 客户端通过HTTP绑定。", - "t": "T: 客户端通过TCP绑定。", - "s": "S: 客户端通过SMS绑定。", - "n": "N: 客户端通过非IP绑定将响应发送到请求(支持LWM2M 1.1)。", - "uq": "UQ: 通过UDP队列模式连接(不支持LWM2M 1.1)。", - "uqs": "UQS: 通过UDP和SMS活动连接(不支持LWM2M 1.1)。", - "tq": "TQ: 通过TCP队列模式连接(不支持LWM2M 1.1)。", - "tqs": "TQS: 通过TCP和SMS活动连接(不支持LWM2M 1.1)。", - "sq": "SQ: 通过队列模式的SMS连接(不支持LWM2M 1.1)。" - }, - "binding-tooltip": "这是LwM2M服务器对象的绑定资源列表 - /1/x/7。", - "bootstrap-server": "Bootstrap Server", - "lwm2m-server": "LwM2M Server", - "include-bootstrap-server": "包含Bootstrap Server更新", - "bootstrap-update-title": "你已经配置了Bootstrap Server,您确定要排除更新吗?", - "bootstrap-update-text": "请注意确认更新后Bootstrap Server配置数据将无法恢复。", - "server-host": "主机", - "server-host-required": "主机必填。", - "server-port": "端口", - "server-port-required": "端口必填。", - "server-port-pattern": "端口必须是一个正整数。", - "server-port-range": "端口应在1到65535范围内。", - "server-public-key": "服务器公钥", - "server-public-key-required": "服务器公钥必填。", - "client-hold-off-time": "停留时间", - "client-hold-off-time-required": "停留时间必填。", - "client-hold-off-time-pattern": "停留时间必须是一个正整数。", - "client-hold-off-time-tooltip": "客户端仅与Bootstrap-Server共用停留时间", - "account-after-timeout": "帐户超时", - "account-after-timeout-required": "帐户超时必填。", - "account-after-timeout-pattern": "帐户超时必须是一个正整数。", - "account-after-timeout-tooltip": "Bootstrap-Server帐户资源的超时值。", - "server-type": "服务器类型", - "add-new-server-title": "添加新的服务器配置", - "add-server-config": "添加服务器配置", - "add-lwm2m-server-config": "添加LwM2M服务器", - "no-config-servers": "没有服务器配置", - "others-tab": "其它设置", - "client-strategy": "客户端连接策略", - "client-strategy-label": "策略", - "client-strategy-only-observe": "只在初始连接后观察对客户的请求", - "client-strategy-read-all": "注册后阅读所有资源并观察对客户的请求", - "fw-update": "固件升级", - "fw-update-strategy": "固件升级策略", - "fw-update-strategy-data": "发布固件升级二制文件使用Object 19和Resource 0数据。", - "fw-update-strategy-package": "发布固件升级二制文件使用Object 5和Resource 0包", - "fw-update-strategy-package-uri": "自动生成唯一的CoAP地址下载包和发布软件更新作为Object 5和Resource 1(软件包URI)。", - "sw-update": "软件更新", - "sw-update-strategy": "软件更新策略", - "sw-update-strategy-package": "发布二制文件使用Object 9和Resource 2(包)", - "sw-update-strategy-package-uri": "自动生成唯一的CoAP地址下载包和发布软件更新作为Object 9和Resource 3(软件包URI)。", - "fw-update-resource": "固件更新COAP资源", - "fw-update-resource-required": "固件更新COAP资源必填。", - "sw-update-resource": "软件更新COAP资源", - "sw-update-resource-required": "软件更新COAP资源必填。", - "config-json-tab": "设备配置JSON", - "attributes-name": { - "min-period": "最小周期", - "max-period": "最大周期", - "greater-than": "大于", - "less-than": "小于", - "step": "步长", - "min-evaluation-period": "最小评估周期", - "max-evaluation-period": "最大评估周期" - }, - "default-object-id": "默认对象版本(属性)", - "default-object-id-ver": { - "v1-0": "1.0", - "v1-1": "1.1" - } - }, - "snmp": { - "add-communication-config": "添加通信配置", - "add-mapping": "添加映射", - "authentication-passphrase": "身份验证密码", - "authentication-passphrase-required": "身份验证密码必填。", - "authentication-protocol": "身份验证协议", - "authentication-protocol-required": "身份验证协议必填。", - "communication-configs": "通信配置", - "community": "Community字符串", - "community-required": "Community字符串必填。", - "context-name": "上下文名称", - "data-key": "数据键", - "data-key-required": "数据键必填。", - "data-type": "数据类型", - "data-type-required": "数据类型必填。", - "engine-id": "引擎ID", - "host": "主机", - "host-required": "主机必填。", - "oid": "OID", - "oid-pattern": "无效OID格式", - "oid-required": "OID必填。", - "please-add-communication-config": "请添加通信配置", - "please-add-mapping-config": "请添加映射配置", - "port": "端口", - "port-format": "端口格式无效", - "port-required": "端口必填。", - "privacy-passphrase": "私有密码", - "privacy-passphrase-required": "私有密码必填。", - "privacy-protocol": "私有协议", - "privacy-protocol-required": "私有协议必填。", - "protocol-version": "协议版本", - "protocol-version-required": "协议版本必填。", - "querying-frequency": "查询频率(ms)", - "querying-frequency-invalid-format": "查询频率必须是一个正整数。", - "querying-frequency-required": "查询频率必填。", - "retries": "重试", - "retries-invalid-format": "重试必须是一个正整数。", - "retries-required": "重试必填。", - "scope": "范围", - "scope-required": "范围必填。", - "security-name": "Security名称", - "security-name-required": "Security名称必填。", - "timeout-ms": "超时(ms)", - "timeout-ms-invalid-format": "超时必须是一个正整数。", - "timeout-ms-required": "超时必填。", - "user-name": "用户名", - "user-name-required": "用户名必填。" - } + "aggregate-period-hint-offset": "您的聚合间隔将为:{{ interval }}", + "aggregate-period-hint-offset-and-so-on": "您的聚合间隔将为:{{ interval }} 以此类推。", + "entity-aggregation": { + "argument-hint": "数据将从当前实体获取。", + "argument-title-hint": "定义用于聚合的输入参数。", + "argument-setting-hint": "此计算字段仅支持最新遥测作为参数类型。", + "aggregation-interval": "聚合间隔", + "aggregation-interval-hint": "定义执行聚合的频率。例如:每 1 小时在 00:00、01:00、02:00 等时间点聚合数据。聚合结果使用聚合间隔开始时间的时间戳存储。", + "apply-offset": "应用偏移到聚合间隔", + "apply-offset-hint": "定义每个聚合周期开始的偏移量(例如,+10 分钟 - 00:10、01:10)。", + "offset-value": "偏移值", + "offset-value-required": "偏移值为必填项。", + "offset-value-min": "偏移值必须为正整数。", + "offset-value-max": "偏移值应小于聚合间隔值。", + "wait-delay": "对延迟遥测应用等待超时", + "wait-delay-hint": "定义间隔结束后等待延迟遥测的时间。如果此类遥测到达,将重新计算该间隔的结果。", + "duration": "持续时间", + "duration-required": "持续时间为必填项。", + "duration-min": "持续时间至少为 1 分钟。", + "duration-hint": "间隔结束后等待延迟数据的时间。", + "produce-intermediate-result": "生成中间结果", + "produce-intermediate-result-hint": "在当前间隔内计算指标以生成中间结果。更新频率不超过每 {{ time }} 一次。" }, - "dialog": { - "close": "关闭对话框", - "error-message-title": "错误信息:", - "error-details-title": "错误详细信息" + "hint": { + "arguments-simple-with-rolling": "简单类型的计算字段不应包含时间序列滚动类型的键。", + "arguments-propagate-arguments-with-rolling": "“时间序列滚动”类型与“仅参数”传播不兼容。", + "arguments-propagate-argument-entity-type": "实体类型与“仅参数”传播不兼容。", + "arguments-propagate-argument-must-current-entity": "至少需要配置一个源实体类型为“当前实体”的参数。", + "arguments-empty": "至少需要指定一个参数。", + "expression-required": "表达式为必填项。", + "expression-invalid": "表达式无效", + "expression-max-length": "表达式长度应少于 255 个字符。", + "argument-name-required": "参数名称为必填项。", + "argument-name-pattern": "参数名称无效。", + "argument-name-duplicate": "同名参数已存在。", + "argument-name-max-length": "参数名称应少于 256 个字符。", + "argument-name-forbidden": "参数名称为保留名称,无法使用。", + "output-key-required": "输出键为必填项。", + "output-key-pattern": "输出键无效。", + "output-key-duplicate": "同名键已存在。", + "output-key-max-length": "输出键应少于 256 个字符。", + "output-key-forbidden": "输出键为保留名称,无法使用。", + "entity-type-required": "实体类型为必填项", + "name-required": "名称为必填项。", + "name-pattern": "名称无效。", + "name-duplicate": "同名名称已存在。", + "name-max-length": "名称应少于 256 个字符。", + "name-forbidden": "名称为保留名称,无法使用。", + "argument-type-required": "参数类型为必填项。", + "max-args": "已达到最大参数数量。", + "decimals-range": "默认小数位数应为 0 到 15 之间的数字。", + "expression": "默认表达式演示如何将温度从华氏度转换为摄氏度。", + "arguments-entity-not-found": "未找到参数目标实体。", + "use-latest-timestamp": "启用后,计算值将使用参数遥测中的最新时间戳进行持久化,而非服务器时间。", + "entity-coordinates": "指定提供实体 GPS 坐标(纬度和经度)的时间序列键。", + "geofencing-zone-groups": "定义一个或多个要检查的地理围栏区域组(例如“allowedZones”、“restrictedZones”)。每个组必须有唯一的名称,该名称用作计算字段输出遥测键的前缀。", + "perimeter-attribute-key": "设置包含地理围栏区域周界定义的属性键。周界始终取自区域实体的服务端属性。", + "report-strategy": "存在状态报告实体当前是否在区域组内部或外部。转换事件报告实体何时进入或离开区域组。", + "create-relation-with-matched-zones": "自动创建并维护实体与其当前所在区域之间的关联。当实体离开区域时移除关联,进入新区域时创建关联。", + "relation-type-required": "关联类型为必填项。", + "relation-level-required": "关联层级为必填项。", + "relation-level-min": "最小关联层级值为 1。", + "relation-level-max": "最大关联层级值为 {{max}}。", + "geofencing-empty": "至少需要配置一个区域组。", + "geofencing-entity-not-found": "未找到地理围栏目标实体。", + "max-geofencing-zone": "已达到最大地理围栏区域数量。", + "zone-group-refresh-interval": "定义通过关联实体配置的区域组的刷新频率。", + "zone-group-refresh-interval-required": "区域组刷新间隔为必填项。", + "zone-group-refresh-interval-min": "区域组刷新间隔至少应为 {{ min }} 秒。", + "propagation-path-related-entities": "定义基于所选方向和关联类型到关联实体的直接单级路径。仅支持设备、资产、客户和租户实体之间的关联。关联路径解析的最大实体数为 {{ max }}。", + "data-propagate": "定义要从下方配置的参数中传播的数据。“仅参数”直接使用检索到的数据,而“计算结果”从该数据计算新值。", + "aggregation-path-related-entities": "定义基于方向和关联类型通过与父级或子级实体的直接关联进行的单级聚合路径。仅支持设备、资产、客户和租户实体之间的关联。关联路径解析的最大实体数为 {{ max }}。", + "arguments-aggregation": "定义用于过滤和聚合的输入参数。", + "setting-arguments-aggregation": "数据将从聚合路径中配置的关联实体获取。", + "metrics": "定义基于已配置参数进行聚合的指标。", + "entity-aggregation-metrics": "定义基于已配置参数在指定时间间隔内进行聚合的指标。", + "import-invalid-calculated-field-type": "无法导入计算字段:计算字段结构无效。", + "simple-expression-title": "定义计算值计算方式的算术表达式。", + "script-title": "定义计算逻辑和输出值的 TBEL 脚本。", + "simple-arguments": "定义计算值计算方式的算术表达式。", + "script-arguments": "定义脚本可用的输入参数。" + } + }, + "alarm-rule": { + "alarm-rules-tab": "告警规则", + "alarm-rule": "告警规则", + "alarm-rules": "告警规则", + "alarm-rules-old": "旧版", + "alarm-rules-actual": "当前", + "severities": "严重程度", + "cleared": "清除条件", + "delete-title": "确定要删除告警规则“{{title}}”吗?", + "delete-text": "请注意,确认后告警规则及所有相关数据将无法恢复。", + "delete-multiple-title": "确定要删除{ count, plural, =1 {1 条告警规则} other {# 条告警规则} }吗?", + "delete-multiple-text": "请注意,确认后所有选中的告警规则将被移除,所有相关数据将无法恢复。", + "create": "创建新告警规则", + "add": "添加告警规则", + "copy": "复制告警规则配置", + "details": "告警规则详情", + "no-found": "未找到告警规则", + "list": "{ count, plural, =1 {1 条告警规则} other {# 条告警规则列表} }", + "selected-fields": "已选择{ count, plural, =1 {1 条告警规则} other {# 条告警规则} }", + "import": "导入告警规则", + "file": "告警规则文件", + "export": "导出告警规则", + "export-failed-error": "无法导出告警规则:{{error}}", + "entity-type": "实体类型", + "entity-type-required": "实体类型为必填项。", + "alarm-type": "告警类型", + "alarm-type-hint": "在告警发起者(设备、资产等)范围内的唯一标识符(例如 HighTempAlarm),以防止冲突。", + "alarm-type-required": "告警类型为必填项。", + "alarm-type-pattern": "告警类型无效。", + "alarm-type-max-length": "告警类型应少于 256 个字符。", + "clear-alarm": "清除告警", + "value-argument": "参数", + "value-argument-required": "参数为必填项。", + "static-settings": "静态设置", + "configuration": "配置", + "static-schedule": "静态", + "dynamic-schedule": "动态", + "operation-and": "AND", + "operation-or": "OR", + "condition-during": "持续 {{during}}", + "condition-during-dynamic": "持续\"{{ attribute }}\"", + "condition-repeat-times": "重复{ count, plural, =1 {1 次} other {# 次} }", + "condition-repeat-times-dynamic": "重复\"{{ attribute }}\"次", + "filter-preview": "过滤器预览", + "condition-settings": "条件设置", + "static": "静态", + "dynamic": "动态", + "argument-filters": "参数过滤器", + "argument-name": "参数名称", + "value-type": "值类型", + "general": "通用", + "filters": "过滤器", + "date-time-hint": "参数必须为纪元毫秒。示例:1698839340000 等于 2023-11-01 12:49:00 UTC。", + "operation": "操作", + "value-source": "值来源", + "value": "值", + "ignore-case": "忽略大小写", + "condition": "条件", + "script": "脚本", + "add-filter": "添加参数过滤器", + "edit-filter": "参数过滤器", + "remove-filter": "移除参数过滤器", + "no-filter": "至少需要一个过滤器。", + "conditions": { + "simple": "简单", + "duration": "持续时间", + "repeating": "重复" }, - "direction": { - "column": "列", - "row": "排" + "schedule-title": "调度", + "edit-schedule": "编辑告警调度", + "schedule-type": "调度器类型", + "schedule-type-required": "调度器类型为必填项。", + "schedule": { + "any-time": "始终激活", + "specific-time": "在特定时间激活", + "custom": "自定义" }, - "edge": { - "edge": "边缘", - "edge-instances": "边缘实例", - "instances": "边缘实例", - "edge-file": "边缘文件", - "name-max-length": "名称长度必须小于256个字符", - "label-max-length": "标签长度必须小于256个字符", - "type-max-length": "类型长度必须小于256个字符", - "management": "边缘管理", - "no-edges-matching": "未找到匹配的边缘 '{{entity}}'。", - "add": "增加边缘", - "no-edges-text": "未找到边缘", - "edge-details": "边缘详情", - "add-edge-text": "增加新的边缘", - "delete": "删除边缘", - "delete-edge-title": "确定删除边缘 '{{edgeName}}'吗?", - "delete-edge-text": "当心, 确认后,边缘以及所有关联数据将不可恢复。", - "delete-edges-title": "确定删除 { count, plural, =1 {1 个边缘} other {# 个边缘} }吗?", - "delete-edges-text": "当心, 确认后,选定的边缘以及所有关联数据将不可恢复。", - "name": "名称", - "name-starts-with": "边缘名称前缀", - "name-required": "名称必填。", - "description": "说明", - "details": "详情", - "events": "事件", - "copy-id": "复制边缘编号", - "id-copied-message": "边缘编号已经复制到剪切板", - "sync": "同步边缘", - "edge-required": "边缘必填。", - "edge-type": "边缘类型", - "edge-type-required": "边缘类型必填。", - "event-action": "事件行动", - "entity-id": "实体编号", - "select-edge-type": "选择边缘类型", - "assign-to-customer": "分配给客户", - "assign-to-customer-text": "请选择需要分配给边缘的客户", - "assign-edge-to-customer": "分配边缘给客户", - "assign-edge-to-customer-text": "请选择需要分配给边缘的客户", - "assignedToCustomer": "分配给客户", - "edge-public": "边缘公开", - "assigned-to-customer": "分配给: {{customerTitle}}", - "unassign-from-customer": "取消分配客户", - "unassign-edge-title": "确定取消分配边缘 '{{edgeName}}' 吗?", - "unassign-edge-text": "确定后,边缘将被取消分配,并且客户将无法访问。", - "unassign-edges-title": "确定要取消分配 {count,plural, =1 {1 个边缘} other {# 个边缘} } 吗?", - "unassign-edges-text": "确定后,所有选定的边缘将被取消分配,并且客户将无法访问。", - "make-public": "公开", - "make-public-edge-title": "确定要将边缘 '{{edgeName}}' 设为公开吗?", - "make-public-edge-text": "确认后,边缘及其所有数据将被设为公开并可被其他人访问。", - "make-private": "私有", - "public": "公开", - "make-private-edge-title": "确定要将边缘 '{{edgeName}}' 设为私有吗?", - "make-private-edge-text": "确认后,边缘及其所有数据将被设为私有,不被其他人访问。", - "import": "导入边缘", - "install-connect-instructions": "安装和连接说明", - "install-connect-instructions-edge-created": "边缘已创建!请检查安装和连接说明", - "loading-edge-instructions": "正在加载边缘说明...", - "label": "标签", - "load-entity-error": "加载数据失败,实体已经被删除。", - "assign-new-edge": "分配新边缘", - "unassign-from-edge": "取消分配边缘", - "edge-key": "边缘键", - "copy-edge-key": "复制边缘键", - "edge-key-copied-message": "边缘键已经被复制到剪切板", - "edge-secret": "边缘密钥", - "copy-edge-secret": "复制边缘密钥", - "edge-secret-copied-message": "边缘密钥已经被复制到剪切板", - "manage-assets": "管理资产", - "manage-devices": "管理设备", - "manage-entity-views": "管理实体视图", - "manage-dashboards": "管理仪表板", - "manage-rulechains": "管理规则链", - "assets": "边缘资产", - "devices": "边缘设备", - "entity-views": "边缘实体视图", - "dashboard": "边缘仪表板", - "dashboards": "边缘仪表板", - "rulechain-templates": "规则链模版", - "edge-rulechain-templates": "边缘规则链模板", - "rulechains": "规则链", - "search": "搜索边缘", - "selected-edges": "{ count, plural, =1 {1 个边缘} other {# 个边缘} } 被选中", - "any-edge": "任何边缘", - "no-edge-types-matching": "未找到匹配的边缘类型 '{{entitySubtype}}'。", - "edge-type-list-empty": "没有选择边缘类型。", - "edge-types": "边缘类型", - "enter-edge-type": "输入边缘类型", - "deployed": "已部署", - "pending": "待定", - "downlinks": "下行", - "no-downlinks-prompt": "未找到下行", - "sync-process-started-successfully": "同步处理开始成功!", - "missing-related-rule-chains-title": "边缘缺少关联规则链", - "missing-related-rule-chains-text": "分配给边缘的规则链使用规则节点将消息转发给未分配给当前边缘的规则链。

缺少的规则链列表:
{{missingRuleChains}}", - "upgrade-instructions": "升级说明", - "widget-datasource-error": "组件只支持边缘实体数据源", - "connected": "已连接", - "disconnected": "已断开连接" - }, - "edge-event": { - "type-dashboard": "仪表板", - "type-asset": "资产", - "type-device": "设备", - "type-device-profile": "设备概要", - "type-asset-profile": "资产配置", - "type-entity-view": "实体视图", - "type-alarm": "告警", - "type-rule-chain": "规则链", - "type-rule-chain-metadata": "规则链元数据", - "type-edge": "边缘", - "type-user": "用户", - "type-tenant": "租户", - "type-tenant-profile": "租户配置", - "type-customer": "客户", - "type-relation": "关联", - "type-widgets-bundle": "部件包", - "type-widgets-type": "部件类型", - "type-admin-settings": "管理员设置", - "type-ota-package": "OTA包", - "type-queue": "队列", - "action-type-added": "增加", - "action-type-deleted": "删除", - "action-type-updated": "更新", - "action-type-post-attributes": "推送属性", - "action-type-attributes-updated": "属性更新", - "action-type-attributes-deleted": "属性删除", - "action-type-timeseries-updated": "时间序列更新", - "action-type-credentials-updated": "认证更新", - "action-type-assigned-to-customer": "分配给客户", - "action-type-unassigned-from-customer": "取消分配客户", - "action-type-relation-add-or-update": "关联增加或更新", - "action-type-relation-deleted": "关联删除", - "action-type-rpc-call": "RPC调用", - "action-type-alarm-ack": "告警确认", - "action-type-alarm-clear": "告警清除", - "action-type-alarm-assigned": "告警已分配", - "action-type-alarm-unassigned": "告警未分配", - "action-type-assigned-to-edge": "分配给边缘", - "action-type-unassigned-from-edge": "取消分配边缘", - "action-type-credentials-request": "认证请求", - "action-type-entity-merge-request": "实体合并请求" + "schedule-day": { + "monday": "星期一", + "tuesday": "星期二", + "wednesday": "星期三", + "thursday": "星期四", + "friday": "星期五", + "saturday": "星期六", + "sunday": "星期日" }, - "error": { - "unable-to-connect": "无法连接到服务器!请检查您的互联网连接。", - "unhandled-error-code": "未处理的错误代码: {{errorCode}}", - "unknown-error": "未知错误" - }, - "entity": { - "entity": "实体", - "entities": "实体", - "entities-count": "实体数量", - "alarms-count": "告警数量", - "aliases": "别名", - "aliases-short": "别名", - "entity-alias": "别名", - "unable-delete-entity-alias-title": "无法删除实体别名", - "unable-delete-entity-alias-text": "实体别名'{{entityAlias}}'被以下部件使用不能删除:
{{widgetsList}}", - "duplicate-alias-error": "别名'{{alias}}'重复,同一仪表板别名必须唯一。", - "missing-entity-filter-error": "别名'{{alias}}'缺少筛选器", - "configure-alias": "别名'{{alias}}'配置", - "alias": "别名", - "alias-required": "实体别名必填。", - "remove-alias": "移除实体别名", - "add-alias": "添加实体别名", - "entity-list": "实体列表", - "entity-type": "实体类型", - "entity-types": "实体类型", - "entity-type-list": "实体类型列表", - "any-entity": "任意实体", - "add-entity-type": "添加实体类型", - "enter-entity-type": "输入实体类型", - "no-entities-matching": "未找到匹配'{{entity}}'的实体。", - "no-entities-text": "找不到实体", - "no-entity-types-matching": "未找到匹配'{{entityType}}'类型的实体。", - "name-starts-with": "名称开始于", - "help-text": "根据需要可以使用'%'进行匹配例如:'%entity_name_contains%', '%entity_name_ends', 'entity_starts_with'。", - "use-entity-name-filter": "用户筛选器", - "entity-list-empty": "没有选择实体。", - "entity-type-list-required": "至少应选择一个实体类型。", - "entity-name-filter-required": "实体名筛选器必填。", - "entity-name-filter-no-entity-matched": "未找到以'{{entity}}'开头的实体", - "all-subtypes": "全部", - "select-entities": "选择实体", - "no-aliases-found": "未找到别名", - "no-alias-matching": "未找到'{{alias}}'", - "create-new-alias": "创建别名", - "create-new": "创建", - "key": "键名", - "key-name": "键名", - "no-keys-found": "未找到键名", - "no-key-matching": "未找到键名'{{key}}'", - "create-new-key": "创建键", - "type": "类型", - "type-required": "实体类型必填。", - "type-device": "设备", - "type-devices": "设备", - "list-of-devices": "{ count, plural, =1 {1 个设备} other {# 个设备} }", - "device-name-starts-with": "以 '{{prefix}}' 开头的设备", - "type-device-profile": "设备配置", - "type-device-profiles": "设备配置", - "clear-selected-profiles": "清除已选择的配置", - "list-of-device-profiles": "{ count, plural, =1 {1 个设备配置} other {# 个设备配置} }", - "device-profile-name-starts-with": "名称以 '{{prefix}}' 开头的设备配置", - "type-asset-profile": "资产配置", - "type-asset-profiles": "资产配置", - "list-of-asset-profiles": "{ count, plural, =1 {1 个资产配置} other {# 个资产配置} }", - "asset-profile-name-starts-with": "名称以 '{{prefix}}' 开头的资产配置", - "type-asset": "资产", - "type-assets": "资产", - "list-of-assets": "{ count, plural, =1 {1 个资产} other {# 个资产} }", - "asset-name-starts-with": "以 '{{prefix}}' 开头的资产", - "type-entity-view": "实体视图", - "type-entity-views": "实体视图", - "list-of-entity-views": "{ count, plural, =1 {1 个实体视图} other {# 个实体视图} }", - "entity-view-name-starts-with": "以 '{{prefix}}' 开头的实体视图", - "type-rule": "规则", - "type-rules": "规则", - "list-of-rules": "{ count, plural, =1 {1 个规则} other {# 个规则} }", - "rule-name-starts-with": "以 '{{prefix}}' 开头的规则", - "type-plugin": "插件", - "type-plugins": "插件", - "list-of-plugins": "{ count, plural, =1 {1 个插件} other {# 个插件} }", - "plugin-name-starts-with": "以 '{{prefix}}' 开头的插件", - "type-tenant": "租户", - "type-tenants": "租户", - "list-of-tenants": "{ count, plural, =1 {1 个租户} other {# 个租户} }", - "tenant-name-starts-with": "以 '{{prefix}}' 开头的租户", - "type-tenant-profile": "租户简介", - "type-tenant-profiles": "租户配置", - "list-of-tenant-profiles": "{ count, plural, =1 {1 个租户配置} other {# 个租户配置} }", - "tenant-profile-name-starts-with": "名称以 '{{prefix}}' 开头的租户配置", - "type-customer": "客户", - "type-customers": "客户", - "list-of-customers": "{ count, plural, =1 {1 个客户} other {# 个客户} }", - "customer-name-starts-with": "以 '{{prefix}}' 开头的客户", - "type-user": "用户", - "type-users": "用户", - "list-of-users": "{ count, plural, =1 {1 个用户} other {# 个用户} }", - "user-name-starts-with": "以 '{{prefix}}' 开头的用户", - "type-dashboard": "仪表板", - "type-dashboards": "仪表板", - "list-of-dashboards": "{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }", - "dashboard-name-starts-with": "以 '{{prefix}}' 开头的仪表板", - "type-alarm": "告警", - "type-alarms": "告警", - "list-of-alarms": "{ count, plural, =1 {1 个告警} other {# 个告警} }", - "alarm-name-starts-with": "以 '{{prefix}}' 开头的告警", - "type-rulechain": "规则链", - "type-rulechains": "规则链库", - "list-of-rulechains": "{ count, plural, =1 {1 个规则链} other {# 个规则链} }", - "rulechain-name-starts-with": "规则链前缀名称 '{{prefix}}'", - "type-rulenode": "规则节点", - "type-rulenodes": "规则节点", - "list-of-rulenodes": "{ count, plural, =1 {1 个规则节点} other {# 个规则节点} }", - "rulenode-name-starts-with": "名称以 '{{prefix}}' 开头的规则节点", - "type-current-customer": "当前客户", - "type-current-tenant": "当前租户", - "type-current-user": "当前用户", - "type-current-user-owner": "当前用户所有者", - "type-widgets-bundle": "部件包", - "type-widgets-bundles": "部件包", - "list-of-widgets-bundles": "{ count, plural, =1 {1 个部件包} other {# 个部件包} }", - "type-widget": "部件", - "type-widgets": "部件", - "list-of-widgets": "{ count, plural, =1 {1 个部件} other {# 个部件} }", - "search": "实体检索", - "selected-entities": "已选择 { count, plural, =1 {1 个实体} other {# 个实体} }", - "entity-name": "实体名", - "entity-label": "实体标签", - "details": "实体详情", - "no-entities-prompt": "未找到实体", - "no-data": "无数据", - "columns-to-display": "要显示的列", - "type-api-usage-state": "Api使用状态", - "type-edge": "边缘", - "type-edges": "边缘", - "list-of-edges": "{ count, plural, =1 {1 个边缘} other {列表 # 个边缘} }", - "edge-name-starts-with": "以'{{prefix}}'开头的边缘", - "version-conflict": { - "message": "您要覆盖现有版本还是丢弃更改并加载最新版本?", - "link": "您可以使用此下载的{{entityType}}版本", - "overwrite": "覆盖", - "discard": "丢弃" - }, - "type-tb-resource": "资源", - "type-tb-resources": "资源", - "list-of-tb-resources": "{ count, plural, =1 {1 个资源} other {# 个资源} }", - "type-ota-package": "OTA包", - "type-rpc": "RPC", - "type-queue": "队列", - "type-queue-stats": "队列统计", - "type-queues-stats": "队列统计", - "type-notification": "通知", - "type-notification-rule": "通知规则", - "type-notification-rules": "通知规则", - "list-of-notification-rules": "{ count, plural, =1 {1 个通知规则} other {# 个通知规则} }", - "type-notification-target": "通知收件人", - "type-notification-targets": "通知接收者", - "list-of-notification-targets": "{ count, plural, =1 {1 个通知接收者} other {# 个通知接收者} }", - "type-notification-request": "通知请求", - "type-notification-template": "通知模板", - "type-notification-templates": "通知模板", - "list-of-notification-templates": "{ count, plural, =1 {1 个通知模板} other {# 个通知模板} }", - "link": "连接", - "type-oauth2-client": "OAuth2.0客户端", - "type-oauth2-clients": "OAuth2.0客户端", - "list-of-oauth2-clients": "{ count, plural, =1 {一个 OAuth2.0客户端} other {# 个 OAuth2.0客户端列表} }", - "type-domain": "域名", - "type-domains": "域名", - "list-of-domains": "{ count, plural, =1 {一个域名} other {# 个域名列表} }", - "type-mobile-app": "移劝端", - "type-mobile-apps": "移动端", - "list-of-mobile-apps": "{ count, plural, =1 {一个移动应用} other {# 个移动应用列表} }", - "type-mobile-app-bundle": "移动应用包", - "type-mobile-app-bundles": "移动应用包", - "list-of-mobile-app-bundles": "{ count, plural, =1 {一个移动应用包} other {# 个移动应用包列表} }" - }, - "entity-field": { - "created-time": "创建时间", - "name": "名称", - "type": "类型", - "first-name": "名字", - "last-name": "姓氏", - "email": "电子邮件", - "title": "标题", - "country": "国家", - "state": "省/州", - "city": "城市", - "address": "地址", - "address2": "地址二", - "zip": "邮政编码", - "phone": "电话", - "label": "标签", - "queue-name": "对列名称", - "service-id": "服务Id", - "owner-name": "所有者名称", - "owner-type": "所有者类型" - }, - "entity-view": { - "entity-view": "实体视图", - "entity-view-required": "实体视图必填。", - "entity-views": "实体视图", - "management": "实体视图管理", - "view-entity-views": "查看实体视图", - "entity-view-alias": "实体视图别名", - "aliases": "实体视图别名", - "no-alias-matching": "未找到匹配'{{alias}}'的别名。", - "no-aliases-found": "未找到别名。", - "no-key-matching": "'{{key}}' 未找到。", - "no-keys-found": "未找到密钥。", - "create-new-alias": "创建别名", - "create-new-key": "创建键", - "duplicate-alias-error": "找到重复别名'{{alias}}'。
实体视图别名必须是唯一的。", - "configure-alias": "配置 '{{alias}}' 别名", - "no-entity-views-matching": "未找到与'{{entity}}'匹配的实体视图。", - "public": "公开", - "alias": "别名", - "alias-required": "实体视图别名必填。", - "remove-alias": "删除实体视图别名", - "add-alias": "添加实体视图别名", - "name-starts-with": "名称前缀", - "help-text": "根据需要可以使用'%'进行匹配,例如:'%entity-view_name_contains%', '%entity-view_name_ends', 'entity-view_starts_with'。", - "entity-view-list": "实体视图列表", - "use-entity-view-name-filter": "使用筛选器", - "entity-view-list-empty": "没有被选中的实体视图", - "entity-view-name-filter-required": "实体视图名称筛选器必填。", - "entity-view-name-filter-no-entity-view-matched": "未找到以'{{entityView}}' 开头的实体视图。", - "add": "添加实体视图", - "entity-view-public": "实体视图是公共的", - "assign-to-customer": "分配给客户", - "assign-entity-view-to-customer": "将实体视图分配给客户", - "assign-entity-view-to-customer-text": "请选择要分配给客户的实体视图", - "assign-entity-view-to-edge-title": "将实体视图分配给边缘", - "no-entity-views-text": "未找到实体视图", - "assign-to-customer-text": "请选择客户分配实体视图", - "entity-view-details": "实体视图详细信息", - "add-entity-view-text": "添加实体视图", - "delete": "删除实体视图", - "assign-entity-views": "分配实体视图", - "assign-entity-views-text": "分配 { count, plural, =1 {1 个实体视图} other {# 个实体视图} } 给客户", - "delete-entity-views": "删除实体视图", - "unassign-from-customer": "取消分配客户", - "unassign-entity-views": "取消分配实体视图", - "unassign-entity-views-action-title": "从客户处取消分配{count,plural,=1 {1 实体视图} other {# 实体视图} }", - "assign-new-entity-view": "分配新实体视图", - "delete-entity-view-title": "确定要删除实体视图 '{{entityViewName}}'吗?", - "delete-entity-view-text": "请注意:确认后实体视图及其所有相关数据将不可恢复。", - "delete-entity-views-title": "确定要删除 { count, plural, =1 {1 实体视图} other {# 实体视图} }吗?", - "delete-entity-views-action-title": "删除 { count, plural, =1 {1 个实体视图} other {# 个实体视图} }", - "delete-entity-views-text": "请注意:确认后,所有选定的实体视图将被删除,所有相关的数据将不可恢复。", - "unassign-entity-view-title": "确定要取消对 '{{entityViewName}}' 实体视图的分配吗?", - "unassign-entity-view-text": "确认后,实体视图将未分配,客户无法访问。", - "unassign-entity-view": "未分配实体视图", - "unassign-entity-views-title": "确定要取消分配 { count, plural, =1 {1 个实体视图} other {# 个实体视图} } 吗?", - "unassign-entity-views-text": "确认后,所有选定的实体视图将被分配,客户无法访问。", - "entity-view-type": "实体视图类型", - "entity-view-type-required": "实体视图类型必填。", - "select-entity-view-type": "选择实体视图类型", - "enter-entity-view-type": "输入实体视图类型", - "any-entity-view": "任何实体视图", - "no-entity-view-types-matching": "未找到匹配 '{{entitySubtype}}' 的实体视图类型。", - "entity-view-type-list-empty": "实体视图类型未选择。", - "entity-view-types": "实体视图类型", - "created-time": "创建时间", - "name": "名称", - "name-required": "名称必填。", - "name-max-length": "名称应该小于256个字符。", - "type-max-length": "实体视图类型应该小于256个字符。", - "description": "说明", - "events": "事件", - "details": "详情", - "copyId": "复制实体视图ID", - "idCopiedMessage": "实体视图ID已复制到剪贴板", - "assignedToCustomer": "分配给客户", - "unable-entity-view-device-alias-title": "无法删除实体视图别名", - "unable-entity-view-device-alias-text": "实体视图别名 '{{entityViewAlias}}' 不能够被删除,因为它被下列部件所使用:
{{widgetsList}}", - "select-entity-view": "选择实体视图", - "make-public": "实体视图设为公开", - "make-private": "实体视图设为私有", - "start-ts": "开始时间", - "end-ts": "结束时间", - "date-limits": "日期限制", - "client-attributes": "客户端属性", - "shared-attributes": "共享属性", - "server-attributes": "服务端属性", - "timeseries": "时间序列", - "client-attributes-placeholder": "客户端属性", - "shared-attributes-placeholder": "共享属性", - "server-attributes-placeholder": "服务端属性", - "timeseries-placeholder": "时间序列", - "target-entity": "目标实体", - "attributes-propagation": "属性传播", - "attributes-propagation-hint": "每次保存或更新这个实体视图时,实体视图将自动从目标实体复制指定的属性。由于性能原因,目标实体属性不会在每次属性更改时传递到实体视图。您可以通过配置\"copy to view\"规则链中的规则节点,并将\"Post attributes\"和\"attributes Updated\"消息链接到新规则节点,从而启用自动传递。", - "timeseries-data": "时间序列数据", - "timeseries-data-hint": "配置目标实体的时间序列数据键,以便实体视图可以访问这些键。此时间序列数据是只读的。", - "search": "查找实体视图", - "selected-entity-views": "已选择 { count, plural, =1 {1 个实体视图} other {# 个实体视图} }", - "make-public-entity-view-title": "确定要将实体视图 '{{entityViewName}}' 设为公开吗?", - "make-public-entity-view-text": "确认后,实体视图及其所有数据将被公开并被他人访问。", - "make-private-entity-view-title": "确定要将实体视图 '{{entityViewName}}' 设为私有吗?", - "make-private-entity-view-text": "确认后,实体视图及其所有数据将被私有化,无法被他人访问。", - "assign-entity-view-to-edge": "将实体视图分配给边缘", - "assign-entity-view-to-edge-text": "请选择要分配给边缘的实体视图", - "unassign-entity-view-from-edge-title": "确定要取消对 '{{entityViewName}}' 实体视图的分配吗?", - "unassign-entity-view-from-edge-text": "确认后,实体视图将未分配,边缘无法访问。", - "unassign-entity-views-from-edge-action-title": "从边缘处取消分配{count,plural,=1 {1 实体视图} other {# 实体视图} }", - "unassign-entity-view-from-edge": "未分配实体视图", - "unassign-entity-views-from-edge-title": "确定要取消分配 { count, plural, =1 {1 个实体视图} other {# 个实体视图} } 吗?", - "unassign-entity-views-from-edge-text": "确认后,所有选定的实体视图将被分配,边缘无法访问。" - }, - "event": { - "event-type": "事件类型", - "events-filter": "事件筛选器", - "clean-events": "清除事件", - "type-error": "错误", - "type-lc-event": "生命周期事件", - "type-stats": "类型统计", - "type-debug-rule-node": "调试", - "type-debug-rule-chain": "调试", - "no-events-prompt": "未找到事件", - "error": "错误", - "alarm": "告警", - "event-time": "事件时间", - "server": "服务器", - "body": "整体", - "method": "方法", - "type": "类型", - "message": "消息", - "message-id": "消息ID", - "copy-message-id": "复制消息ID", - "message-type": "消息类型", - "data-type": "数据类型", - "relation-type": "关联类型", - "metadata": "元数据", - "data": "数据", - "event": "事件", - "status": "状态", - "success": "成功", - "failed": "失败", - "messages-processed": "消息处理", - "max-messages-processed": "最大处理消息数", - "min-messages-processed": "最少处理消息数", - "errors-occurred": "错误发生", - "max-errors-occurred": "最大发生错误数", - "min-errors-occurred": "最少发生错误数", - "min-value": "最小值为 0。", - "all-events": "全部", - "has-error": "有错误", - "entity-id": "实体ID", - "copy-entity-id": "复制实体ID", - "entity-type": "实体类型", - "clear-filter": "清除筛选器", - "clear-request-title": "清除所有事件", - "clear-request-text": "你确定要清除所有事件吗?", - "started": "已开始", - "updated": "已更新", - "stopped": "已停止" - }, - "extension": { - "extensions": "扩展", - "selected-extensions": "已选择 { count, plural, =1 {1 个扩展} other {# 个扩展} }", - "type": "类型", - "key": "键名", - "value": "价值", - "id": "ID", - "extension-id": "扩展ID", - "extension-type": "扩展类型", - "transformer-json": "JSON *", - "unique-id-required": "当前扩展ID已经存在。", - "delete": "删除扩展", - "add": "添加扩展", - "edit": "编辑扩展", - "delete-extension-title": "确定要删除扩展 '{{extensionId}}'吗?", - "delete-extension-text": "请注意:确认后,扩展和所有相关数据将不可恢复。", - "delete-extensions-title": "确定要删除 { count, plural, =1 {1 个扩展} other {# 个扩展} }吗?", - "delete-extensions-text": "请注意:确认后,所有选定的扩展将被删除,所有相关数据将不可恢复。", - "converters": "转换器", - "converter-id": "转换器序号", - "configuration": "配置", - "converter-configurations": "转换器的配置", - "token": "安全令牌", - "add-converter": "添加转换器", - "add-config": "添加转换器配置", - "device-name-expression": "设备名称表达式", - "device-type-expression": "设备类型表达式", - "custom": "定制", - "to-double": "加倍", - "transformer": "转换器", - "json-required": "转换器JSON必填。", - "json-parse": "无法解析转换器JSON。", - "attributes": "属性", - "add-attribute": "添加属性", - "add-map": "添加映射元素", - "timeseries": "时间序列", - "add-timeseries": "添加时间序列", - "field-required": "必填字段", - "brokers": "代理服务器组", - "add-broker": "添加代理服务器", - "host": "主机", - "port": "端口", - "port-range": "端口应该在1到65535的范围内。", - "ssl": "SSL", - "credentials": "证书", - "username": "用户名", - "password": "密码", - "retry-interval": "重试间隔(毫秒)", - "anonymous": "匿名", - "basic": "基本", - "pem": "PEM", - "ca-cert": "CA证书文件*", - "private-key": "私钥文件*", - "cert": "证书文件*", - "no-file": "没有选择文件。", - "drop-file": "删除文件或单击以选择要上载的文件。", - "mapping": "映射", - "topic-filter": "主题筛选器", - "converter-type": "转换类型", - "converter-json": "Json", - "json-name-expression": "设备名称JSON表达式", - "topic-name-expression": "设备名称主题表达式", - "json-type-expression": "设备类型JSON表达式", - "topic-type-expression": "设备类型主题表达式", - "attribute-key-expression": "属性键名表达式", - "attr-json-key-expression": "属性键JSON表达式", - "attr-topic-key-expression": "属性键名主题表达式", - "request-id-expression": "请求ID表达式", - "request-id-json-expression": "请求ID JSON表达式", - "request-id-topic-expression": "请求ID主题表达式", - "response-topic-expression": "响应主题表达式", - "value-expression": "值表达式", - "topic": "主题", - "timeout": "超时时间(毫秒)", - "converter-json-required": "转换JSON必填。", - "converter-json-parse": "无法解析转换JSON。", - "filter-expression": "筛选条件表达式", - "connect-requests": "连接请求", - "add-connect-request": "添加连接请求", - "disconnect-requests": "断开请求", - "add-disconnect-request": "添加断开请求", - "attribute-requests": "属性请求", - "add-attribute-request": "添加属性请求", - "attribute-updates": "属性更新", - "add-attribute-update": "添加属性更新", - "server-side-rpc": "服务端RPC", - "add-server-side-rpc-request": "添加服务端RPC请求", - "device-name-filter": "设备名称筛选器", - "attribute-filter": "属性筛选器", - "method-filter": "方法筛选器", - "request-topic-expression": "请求主题表达式", - "response-timeout": "响应超时(毫秒)", - "topic-expression": "主题表达", - "client-scope": "客户范围", - "add-device": "添加服务器", - "opc-server": "服务器组", - "opc-add-server": "添加服务器", - "opc-add-server-prompt": "请添加服务器", - "opc-application-name": "应用名称", - "opc-application-uri": "应用URI", - "opc-scan-period-in-seconds": "秒级扫描周期", - "opc-security": "安全性", - "opc-identity": "身份", - "opc-keystore": "密钥库", - "opc-type": "类型", - "opc-keystore-type": "类型", - "opc-keystore-location": "Location *", - "opc-keystore-password": "密码", - "opc-keystore-alias": "别名", - "opc-keystore-key-password": "密钥密码", - "opc-device-node-pattern": "设备节点模式", - "opc-device-name-pattern": "设备名称模式", - "modbus-server": "Servers/slaves", - "modbus-add-server": "添加 server/slave", - "modbus-add-server-prompt": "请添加 server/slave", - "modbus-transport": "Transport", - "modbus-tcp-reconnect": "自动重新连接", - "modbus-rtu-over-tcp": "RTU over TCP", - "modbus-port-name": "串口名称", - "modbus-encoding": "编码", - "modbus-parity": "奇偶性", - "modbus-baudrate": "波特率", - "modbus-databits": "数据位", - "modbus-stopbits": "停止位", - "modbus-databits-range": "数据位应该在7到8的范围内。", - "modbus-stopbits-range": "停止位应该在1到2的范围内。", - "modbus-unit-id": "单位编号", - "modbus-unit-id-range": "单位ID应该在1到247的范围内", - "modbus-device-name": "设备名称", - "modbus-poll-period": "轮询周期 (毫秒)", - "modbus-attributes-poll-period": "轮询属性周期 (毫秒)", - "modbus-timeseries-poll-period": "时间序列数据轮询周期 (毫秒)", - "modbus-poll-period-range": "轮询周期应为正值。", - "modbus-tag": "标签", - "modbus-function": "函数", - "modbus-register-address": "寄存器地址", - "modbus-register-address-range": "寄存器地址应该在0到65535的范围内。", - "modbus-register-bit-index": "位索引", - "modbus-register-bit-index-range": "位索引应该在0到15的范围内。", - "modbus-register-count": "寄存器计数", - "modbus-register-count-range": "寄存器计数应该是一个正值。", - "modbus-byte-order": "字节顺序", - "sync": { - "status": "状态", - "sync": "同步", - "not-sync": "不同步", - "last-sync-time": "最后同步时间", - "not-available": "无法使用" - }, - "export-extensions-configuration": "导出扩展配置", - "import-extensions-configuration": "导入扩展配置", - "import-extensions": "导入扩展", - "import-extension": "导入扩展", - "export-extension": "导出扩展", - "file": "扩展文件", - "invalid-file-error": "无效的扩展文件" - }, - "feature": { - "advanced-features": "高级功能" - }, - "filter": { - "add": "添加筛选器", - "edit": "编辑筛选器", - "name": "筛选器名称", - "name-required": "筛选器名称必填。", - "duplicate-filter": "同名筛选器已存在。", - "filters": "筛选器", - "unable-delete-filter-title": "无法删除筛选器", - "unable-delete-filter-text": "无法删除筛选器 '{{filter}}' ,因为它由以下部件使用:
{{widgetsList}}", - "duplicate-filter-error": "找到重复的筛选器 '{{filter}}'。
筛选器在仪表板中必须是唯一的。", - "missing-key-filters-error": "筛选器 '{{filter}}' 的键名筛选条件缺失。", - "filter": "筛选器", - "editable": "可编辑", - "no-filters-found": "未找到筛选器。", - "no-filter-text": "未指定筛选器", - "add-filter-prompt": "请添加筛选器", - "no-filter-matching": "未找到 '{{filter}}' 。", - "create-new-filter": "请新增!", - "create-new": "创建", - "filter-required": "筛选器必填。", - "operation": { - "operation": "操作", - "equal": "等于", - "not-equal": "不等于", - "starts-with": "开始于", - "ends-with": "结束于", - "contains": "包含", - "not-contains": "不包含", - "greater": "大于", - "less": "小于", - "greater-or-equal": "大于或等于", - "less-or-equal": "小于或等于", - "and": "和", - "or": "或", - "in": "存在", - "not-in": "不存在" - }, - "ignore-case": "忽略大小写", - "value": "数值", - "remove-filter": "删除筛选器", - "duplicate-filter-action": "重复过滤器", - "preview": "筛选器预览", - "no-filters": "未配置筛选器", - "add-filter": "添加筛选器", - "add-complex-filter": "添加复合筛选器", - "add-complex": "添加复合", - "complex-filter": "复合筛选器", - "edit-complex-filter": "编辑复合筛选器", - "edit-filter-user-params": "编辑筛选器谓词用户参数", - "filter-user-params": "过滤谓词用户参数", - "user-parameters": "用户参数", - "display-label": "要显示的标签", - "order-priority": "字段顺序优先级", - "key-filter": "键名筛选器", - "key-filters": "键名筛选器", - "key-name": "键名", - "key-name-required": "键名必填。", - "key-type": { - "key-type": "键类型", - "attribute": "属性", - "timeseries": "时间序列", - "entity-field": "实体", - "constant": "常量", - "client-attribute": "客户端属性", - "server-attribute": "服务端属性", - "shared-attribute": "共享属性" - }, - "value-type": { - "value-type": "值类型", - "string": "字符串", - "numeric": "数字", - "boolean": "布尔值", - "date-time": "日期时间" - }, - "value-type-required": "键值类型是必需的。", - "key-value-type-change-title": "确定要更改键值类型吗?", - "key-value-type-change-message": "如果您确认新的值类型,所有输入的键过滤器将被删除。", - "no-key-filters": "未配置键名筛选器", - "add-key-filter": "添加键名筛选器", - "remove-key-filter": "删除键名筛选器", - "edit-key-filter": "编辑键名筛选器", - "date": "日期", - "time": "时间", - "current-tenant": "当前租户", - "current-customer": "当前客户", - "current-user": "当前用户", - "current-device": "当前设备", - "default-value": "默认值", - "default-comma-separated-values": "默认用逗号分隔", - "dynamic-source-type": "动态源类型", - "dynamic-value": "动态值", - "no-dynamic-value": "无动态值", - "source-attribute": "源属性", - "switch-to-dynamic-value": "切换到动态值", - "switch-to-default-value": "切换到默认值", - "inherit-owner": "从所有者继承", - "source-attribute-not-set": "如果未设置源属性" - }, - "fullscreen": { - "expand": "展开到全屏", - "exit": "退出全屏", - "toggle": "切换全屏模式", - "fullscreen": "全屏" - }, - "function": { - "function": "函数" + "schedule-days": "天数", + "schedule-time": "时间", + "schedule-time-from": "从", + "schedule-time-to": "到", + "schedule-days-of-week-required": "至少应选择一个星期中的某天。", + "tbel": "TBEL", + "expression-type": { + "simple": "简单", + "script": "脚本" }, - "gateway": { - "gateway-name": "网关名称", - "gateway-name-required": "网关名称必填。", - "gateways": "网关", - "create-new-gateway": "创建网关", - "create-new-gateway-text": "确定要创建名为 '{{gatewayName}}' 的新网关?", - "launch-command": "启动命令", - "no-gateway-found": "未找到网关。", - "no-gateway-matching": "未找到 '{{item}}' 。" - }, - "grid": { - "delete-item-title": "确定要删除此项吗?", - "delete-item-text": "请注意,确认后,项目及其所有相关数据将不可恢复。", - "delete-items-title": "确定删除{ count, plural, =1 {1 项} other {# 项} }吗?", - "delete-items-action-title": "删除{ count, plural, =1 {1 个元素} other {# 个元素} }", - "delete-items-text": "请注意确认后所有选择的项目将被删除,所有相关数据将不可恢复。", - "add-item-text": "添加项目", - "no-items-text": "未找到项目", - "item-details": "项目详细信息", - "delete-item": "删除项目", - "delete-items": "删除项目", - "scroll-to-top": "滚动到顶部" - }, - "help": { - "goto-help-page": "查看帮助", - "show-help": "显示帮助" + "operation-type": { + "and": "与", + "or": "或" }, - "home": { - "home": "首页", - "profile": "属性", - "logout": "注销", - "menu": "菜单", - "avatar": "头像", - "open-user-menu": "打开用户菜单" - }, - "file-input": { - "browse-file": "浏览文件", - "browse-files": "浏览文件" - }, - "image": { - "gallery": "图像库", - "search": "搜索图像", - "selected-images": "已选择{ count, plural, =1 {1 个图像} other {# 个图像} }", - "created-time": "创建时间", - "name": "名称", - "name-required": "名称不能为空。", - "resolution": "分辨率", - "size": "尺寸", - "system": "系统", - "download-image": "下载图像", - "export-image": "导出图像为JSON", - "import-image": "从JSON导入图像", - "upload-image": "上传图像", - "edit-image": "编辑图像", - "image-details": "图像详情", - "no-images": "未找到图像", - "delete-image": "删除图像", - "delete-image-title": "确定要删除图像 '{{imageTitle}}' 吗?", - "delete-image-text": "请注意,确认后图像将无法恢复。", - "delete-images-title": "确定要删除{ count, plural, =1 {1 个图像} other {# 个图像} } 吗?", - "delete-images-text": "请注意,确认后所有选定的图像都将被删除,并且所有相关数据将无法恢复。", - "list-mode": "列表视图", - "grid-mode": "网格视图", - "image-preview": "图像预览", - "update-image": "更新图像", - "export-failed-error": "无法导出图像:{{error}}", - "image-json-file": "图像JSON文件", - "invalid-image-json-file-error": "无法从JSON导入图像:无效的图像JSON数据结构。", - "image-is-in-use": "图像被其他实体使用", - "images-are-in-use": "图像被其他实体使用", - "image-is-in-use-text": "无法删除图像'{{title}}',因为它被以下实体使用:", - "images-are-in-use-text": "由于图像被其他实体使用,无法删除所有图像。
您可以通过单击相应图像行上的引用按钮查看引用的实体。
如果仍然要删除这些图像,请在下方的表格中选择它们,然后点击删除所选按钮。", - "delete-image-in-use-text": "如果仍然要删除该图像,请点击无论如何删除按钮。", - "system-entities": "系统实体:", - "entities": "实体:", - "references": "引用", - "include-system-images": "包含系统图像", - "clear-image": "清除图像", - "no-image": "无图像", - "no-image-selected": "未选择图像", - "browse-from-gallery": "从图像库浏览", - "set-link": "设置链接", - "image-link": "图像链接", - "link": "链接", - "copy-image-link": "复制图像链接", - "embed-image": "嵌入图像", - "embed-to-html": "嵌入到HTML", - "embed-to-html-hint": "此功能将使链接对任何未经授权的用户可用。", - "embed-to-html-text": "使用以下代码片段,您可以将图像嵌入到基于纯HTML的组件中。
此类组件包括HTML卡片小部件、单元格内容函数等。", - "embed-to-angular-template": "嵌入到Angular HTML模板", - "embed-to-angular-template-text": "使用以下代码片段,您可以将图像嵌入到Angular HTML模板中。
此类组件包括Markdown小部件、小部件编辑器中的HTML部分、自定义操作等。" - }, - "image-input": { - "drop-images-or": "拖放一张或多张图片", - "drag-and-drop": "拖放", - "or": "或", - "browse": "浏览", - "no-images": "未选择任何图片", - "images": "图片" - }, - "import": { - "no-file": "没有选择文件", - "drop-file": "拖放一个JSON文件或者单击以选择要上传的文件。", - "drop-json-file-or": "拖放一个 JSON 文件或者", - "drop-file-csv": "拖放一个CSV文件或单击以选择要上载的文件。", - "drop-file-csv-or": "拖放一个 CSV 文件或者", - "column-value": "数值", - "column-title": "标题", - "column-example": "示例值数据", - "column-key": "属性/遥测键", - "credentials": "凭据", - "csv-delimiter": "CSV分隔符", - "csv-first-line-header": "第一行包含列名", - "csv-update-data": "更新属性/遥测", - "details": "详情", - "import-csv-number-columns-error": "一个文件至少应该包含两列", - "import-csv-invalid-format-error": "文件格式无效。行: '{{line}}'", - "column-type": { - "name": "名称", - "type": "类型", - "label": "标签", - "column-type": "列类型", - "client-attribute": "客户端属性", - "shared-attribute": "共享属性", - "server-attribute": "服务器属性", - "timeseries": "时间序列", - "entity-field": "实体字段", - "access-token": "访问令牌", - "x509": "X.509", - "mqtt": { - "client-id": "MQTT客户端ID", - "user-name": "MQTT用户名", - "password": "MQTT密码" - }, - "lwm2m": { - "client-endpoint": "客户端终节点名称", - "security-config-mode": "安全配置模式", - "client-identity": "客户标识", - "client-key": "客户端公钥", - "client-cert": "客户端证书", - "bootstrap-server-security-mode": "LwM2M bootstrap server安全模式", - "bootstrap-server-secret-key": "LwM2M bootstrap server密钥", - "bootstrap-server-public-key-id": "LwM2M bootstrap server公钥", - "lwm2m-server-security-mode": "LwM2M server安全模式", - "lwm2m-server-secret-key": "LwM2M server证书密钥", - "lwm2m-server-public-key-id": "LwM2M server公钥" - }, - "snmp": { - "host": "SNMP 主机地址", - "port": "SNMP 端口", - "version": "SNMP 版本 (例如:v1, v2c, 或 v3)", - "community-string": "SNMP 团体字符串" - }, - "isgateway": "是否网关", - "activity-time-from-gateway-device": "来自网关设备的活动时间", - "description": "说明", - "routing-key": "边缘键", - "secret": "边缘密钥" - }, - "stepper-text": { - "select-file": "选择一个文件", - "configuration": "导入配置", - "column-type": "选择列类型", - "creat-entities": "创建实体" - }, - "message": { - "create-entities": "{{count}} 个新实体已成功创建。", - "update-entities": "{{count}} 个实体已成功更新。", - "error-entities": "创建 {{count}} 个实体时出错。" - } + "filter-predicate-type": { + "string": "字符串", + "numeric": "数值", + "boolean": "布尔", + "complex": "复合" }, - "scada": { - "symbols": "组态库", - "search": "搜索组态图形", - "selected-symbols": "选中{ count, plural, =1 {1个图形} other {#个图形} }", - "download-symbol": "下载图形", - "export-symbol": "导出图形", - "import-symbol": "导入图形", - "upload-symbol": "上传图形", - "update-symbol": "更新图形", - "edit-symbol": "编辑图形", - "symbol-details": "图形详情", - "mode-svg": "SVG", - "mode-xml": "XML", - "no-symbols": "未找到图形", - "show-hidden-elements": "显示元素", - "hide-hidden-elements": "隐藏元素", - "delete-symbol": "删除图形", - "delete-symbol-title": "确定要删除'{{imageTitle}}'组态图形吗?", - "delete-symbol-text": "请注意在确认后组态图形将无法恢复。", - "delete-symbols-title": "确定要删除{ count, plural, =1 {1个图形} other {#个图形} }吗?", - "delete-symbols-text": "请注意在确认后所有选择的组态图形将被删除且相关数据将无法恢复。", - "include-system-symbols": "包含系统组态图形", - "symbol-preview": "图形预览", - "general": "常规", - "tags": "标签", - "properties": "属性", - "title": "标题", - "description": "描述", - "search-tags": "标签", - "widget-size": "尺寸", - "cols": "列", - "rows": "行", - "state-render-function": "函数", - "preview": "预览", - "preview-widget-action-text": "部件动作'{{type}}'调用成功!", - "no-symbol": "没有图形", - "no-symbol-selected": "没有选中图形。", - "clear-symbol": "清除图形缓存", - "browse-symbol-from-gallery": "查看图形库中的图形", - "zoom-in": "放大", - "zoom-out": "缩小", - "create-widget": "创建部件", - "create-widget-from-symbol": "根据图形创建部件", - "hidden": "隐藏", - "tag": { - "tag": "标签", - "on-click-action": "事件", - "no-tags": "没有配置标签", - "delete-tag-text": "您确定要从{{elementType}}元素删除{{tag}}标签吗?", - "update-tag": "更新标签", - "enter-tag": "确定标签", - "tag-settings": "标签设置", - "remove-tag": "移除标签", - "add-tag": "添加标签" - }, - "behavior": { - "behavior": "行为", - "id": "序号", - "name": "名称", - "type": "类型", - "no-behaviors": "无任何行为配置", - "add-behavior": "添加行为", - "type-action": "动作", - "type-value": "数值", - "type-widget-action": "部件动作", - "behavior-settings": "行为设置", - "remove-behavior": "移除行为", - "hint": "提示", - "group-title": "分组标题", - "value-type": "数据类型", - "default-value": "默认数据", - "true-label": "True标签", - "false-label": "False标签", - "state-label": "State标签", - "default-payload": "默认payload", - "not-unique-behavior-ids-error": "行为ID必须是唯一的!", - "default-settings": "默认设置" - }, - "symbol": { - "symbol": "图形", - "fluid-presence": "液体", - "fluid-presence-hint": "指示管道中是否显示液体。", - "fluid-present": "液体显示", - "present": "显示", - "absent": "隐藏", - "flow-presence": "流动", - "flow-presence-hint": "指示液体是否在管道中流动。", - "flow-present": "存在流动", - "flow-direction": "方向", - "flow-direction-hint": "指示液体流动方向。", - "forward": "向前", - "reverse": "向后", - "flow-animation-speed": "速度", - "flow-animation-speed-hint": "数值表示流动的动画速度:1正常速度 0无动画 <1动画较慢 >1动画较快。", - "leak": "裂纹", - "leak-hint": "指示管道是否存在裂纹。", - "leak-present": "裂纹存在", - "fluid-color": "液体颜色", - "pipe-color": "管道颜色", - "horizontal-pipe": "水平管", - "vertical-pipe": "垂直管", - "horizontal-fluid-color": "水平液体颜色", - "vertical-fluid-color": "垂直液体颜色", - "left-pipe": "左管", - "right-pipe": "右管", - "top-pipe": "顶管", - "bottom-pipe": "底管", - "left-fluid-color": "左液体颜色", - "right-fluid-color": "正常液体颜色", - "top-fluid-color": "顶液体颜色", - "bottom-fluid-color": "底液体颜色", - "display": "显示", - "value": "数值", - "units": "单位", - "flow-meter-value-hint": "在流量计上显示数值", - "value-hint": "浮点数表示当前值", - "running": "运行", - "running-hint": "指示组件是否处于运行状态。", - "warning-state": "警告状态", - "warning": "警告", - "warning-click": "警告点击", - "warning-state-hint": "指示组件是否处于警告状态。", - "critical-state": "严重状态", - "critical": "严重", - "critical-click": "严重状态点击", - "critical-state-hint": "指示组件是否处于严重状态。", - "critical-state-animation": "状态动画", - "critical-state-animation-hint": "当组件处于严重状态时显示闪烁动画。", - "warning-critical-state-animation": "警告/严重状态动画", - "warning-critical-state-animation-hint": "当组件处于警告或严重状态时,是否启用闪烁动画。", - "animation": "动画", - "broken": "裂纹", - "broken-hint": "指示组件是否存在裂纹。", - "on-display-click": "显示单击", - "on-display-click-hint": "当用户单击时请调用显示操作。", - "pipe": "管道", - "default-border-color": "默认边框颜色", - "active-border-color": "主动边框颜色", - "warning-border-color": "警告边框颜色", - "critical-border-color": "严重边框颜色", - "background-color": "背景颜色", - "rotation-animation-speed": "动画速度", - "rotation-animation-speed-hint": "数值表示旋转动画速度:1正常速度 0无动画 <1动画较慢 >1动画较快。", - "on-click": "单击", - "on-click-hint": "当用户单击组件时调用操作。", - "right-top-connector": "右上连接", - "right-bottom-connector": "右下连接", - "left-top-connector": "左上连接", - "left-bottom-connector": "左下连接", - "top-left-connector": "上左连接", - "top-right-connector": "右左连接", - "running-color": "运行颜色", - "stopped-color": "停止颜色", - "stopped": "已停止", - "warning-color": "警告颜色", - "critical-color": "严重颜色", - "opened": "已经打开", - "opened-hint": "指示组件是否处于打开状态。", - "open": "打开", - "open-hint": "当用户单击打开组件时请调用操作。", - "close": "关闭", - "close-hint": "当用户单击关闭组件时请调用操作。", - "close-state-animation": "关闭状态动画", - "close-state-animation-hint": "当组件处于关闭状态时启用闪烁动画。", - "opened-color": "打开时颜色", - "closed-color": "关闭时颜色", - "opened-rotation-angle": "打开角度", - "closed-rotation-angle": "关闭角度", - "tank-capacity": "容器容量", - "tank-capacity-hint": "双值表示总储罐容量。", - "current-volume": "当前容量", - "current-volume-hint": "双重值表示当前占用的体积。", - "tank-color": "容器颜色", - "value-box": "显示文本框", - "value-text": "单位", - "scale": "显示刻度", - "transparent-mode": "透明模式", - "major-ticks": "数值刻度", - "intervals": "间隔", - "major-ticks-color": "数值颜色", - "normal": "正常", - "minor-ticks": "线条刻度", - "minor-ticks-color": "线条颜色", - "temperature": "温度", - "temperature-hint": "表示当前温度。", - "update-temperature": "温度更新", - "update-temperature-hint": "当用户单击更改当前温度时调用动作。", - "run": "运行", - "run-hint": "当用户单击组件时调用运行操作。", - "stop": "停止", - "stop-hint": "当用户单击组件时调用停止操作。", - "temperature-step": "温度步长", - "heat-pump-color": "背景颜色", - "power-button-background": "按钮颜色", - "value-box-background": "文本框颜色", - "value-units": "显示单位", - "filtration-mode": "过滤模式", - "filtration-mode-hint": "指示当前的过滤模式。", - "filtration-mode-update": "状态更新", - "filtration-mode-update-hint": "当用户单击更改当前过滤模式时调用操作。", - "filter-mode": "过滤", - "waste-mode": "废弃", - "backwash-mode": "清洗", - "recirculate-mode": "循环", - "rinse-mode": "冲洗", - "closed-mode": "关闭", - "sand-filter-color": "沙滤器颜色", - "mode-box-background": "按钮颜色", - "border-color": "状态颜色", - "label-color": "文本颜色", - "water-leak-hint": "指示是否泄漏。", - "default-color": "默认颜色", - "leak-color": "泄漏颜色", - "full-value": "全部数值", - "full-value-hint": "表示全部数值。", - "label": "标签", - "icon": "图标", - "button-color": "按钮颜色", - "on-label": "'开启' 标签文本", - "off-label": "'关闭' 标签文本", - "arrow-presence": "箭头存在", - "arrow-presence-hint": "指示连接器中是否存在箭头。", - "arrow-present": "箭头存在", - "arrow-direction": "箭头方向", - "arrow-direction-hint": "指示流动方向。", - "main-line": "主线", - "line": "线", - "line-color": "线颜色", - "arrow-color": "箭头颜色", - "target-value": "目标值", - "target-value-hint": "指示刻度上的目标点。", - "min-max-value": "最小值和最大值", - "min-value": "最小值", - "max-value": "最大值", - "warning-scale-color": "警告刻度颜色", - "critical-scale-color": "关键刻度颜色", - "scale-color": "刻度颜色", - "target": "目标", - "high-warning-state": "高警告状态", - "show-high-warning-scale": "显示高警告刻度", - "high-warning-scale": "高警告刻度", - "high-warning-state-hint": "双重值表示高警告范围,直到高关键或最大值。", - "low-warning-state": "低警告状态", - "show-low-warning-scale": "显示低警告刻度", - "low-warning-scale": "低警告刻度", - "low-warning-state-hint": "双重值表示低警告范围,直到低关键或最小值。", - "high-critical-state": "高关键状态", - "show-high-critical-scale": "显示高关键刻度", - "high-critical-scale": "高关键刻度", - "high-critical-state-hint": "双重值表示高关键范围,直到最大值刻度。", - "low-critical-state": "低关键状态", - "show-low-critical-scale": "显示低关键刻度", - "low-critical-scale": "低关键刻度", - "low-critical-state-hint": "双重值表示低关键范围,直到最小值刻度。", - "filter-color": "滤色器颜色", - "colors": "颜色", - "alarm-colors": "警报颜色" - } + "alarm-rule-additional-info": "附加信息", + "edit-alarm-rule-additional-info": "编辑附加信息", + "alarm-rule-additional-info-placeholder": "请在此处提供您的备注和调整内容,以便在告警详情的附加信息中显示", + "alarm-rule-additional-info-hint": "提示:使用 ${参数名称} 替换告警规则条件中使用的参数值。", + "alarm-rule-additional-info-icon-hint": "使用参数名称替换告警规则条件中使用的参数值。", + "alarm-rule-mobile-dashboard": "移动端仪表板", + "alarm-rule-mobile-dashboard-hint": "移动应用程序用作告警详情仪表板。", + "alarm-rule-no-mobile-dashboard": "未选择仪表板", + "alarm-rule-condition": "告警规则条件", + "enter-alarm-rule-condition-prompt": "添加条件", + "enter-alarm-rule-clear-condition-prompt": "添加清除条件", + "edit-alarm-rule-condition": "告警条件", + "condition-type": "条件类型", + "condition-type-hint": "当过滤器中使用了“缺失超过”操作时,“持续时间”和“重复”选项不可用。", + "select-alarm-severity": "选择告警严重程度", + "add-create-alarm-rule-prompt": "至少需要一个触发条件。", + "add-create-alarm-rule": "添加触发条件", + "add-clear-alarm-rule": "添加清除条件", + "condition-duration": "条件持续时间", + "condition-duration-value": "持续时间值", + "condition-duration-time-unit": "时间单位", + "condition-duration-value-range": "持续时间值应在 1 到 2147483647 的范围内。", + "condition-duration-value-pattern": "持续时间值应为整数。", + "condition-duration-value-required": "持续时间值为必填项。", + "condition-duration-time-unit-required": "时间单位为必填项。", + "condition-repeating-value": "事件次数", + "condition-repeating-value-hint": "告警规则参数的任何更新都将被计为一次事件", + "condition-repeating-value-range": "事件次数应在 1 到 2147483647 的范围内。", + "condition-repeating-value-pattern": "事件次数应为整数。", + "condition-repeating-value-required": "事件次数为必填项。", + "create-conditions": "触发条件", + "clear-condition": "清除条件", + "no-clear-alarm-rule": "未配置清除条件。", + "advanced-settings": "高级设置", + "propagate-alarm": "将告警传播到关联实体", + "alarm-rule-relation-types-list": "关联类型", + "alarm-rule-relation-types-list-hint": "定义关联类型以过滤关联实体。如果未设置,告警将传播到所有关联实体。", + "propagate-alarm-to-owner": "将告警传播到实体所有者(客户或租户)", + "propagate-alarm-to-tenant": "将告警传播到租户", + "alarm-rule-filter-title": "告警规则过滤器", + "filter-title": "过滤器", + "debugging": "告警规则调试", + "any-type": "任意类型", + "enter-alarm-rule-type": "输入告警类型", + "no-alarm-rule-types-matching": "未找到匹配“{{entitySubtype}}”的告警类型。", + "alarm-rule-type-list-empty": "未选择告警类型。", + "alarm-rule-type-list": "告警类型列表", + "alarm-rule-entity-list": "实体列表", + "missing-for": "缺失超过", + "time-unit": "单位", + "mode": "模式", + "type": "类型", + "value-required": "值为必填项。", + "min-value": "值必须大于等于 1。", + "argument-in-use": "参数已被用作通用参数。", + "import-invalid-alarm-rule-type": "无法导入告警规则:告警规则结构无效。", + "no-filter-preview": "未指定过滤器", + "filter-operation": { + "and": "与", + "or": "或" + } + }, + "ai-models": { + "ai-models": "AI 模型", + "ai-model": "AI 模型", + "model": "模型", + "name": "名称", + "ai-provider": "AI 提供商", + "no-found": "未找到 AI 模型", + "list": "{ count, plural, =1 {1 个模型} other {# 个模型列表} }", + "selected-fields": "已选择{ count, plural, =1 {1 个模型} other {# 个模型} }", + "add": "添加模型", + "delete-model-title": "确定要删除模型“{{modelName}}”吗?", + "delete-model-text": "请注意,确认后模型及所有相关数据将无法恢复。", + "delete-models-title": "确定要删除{ count, plural, =1 {1 个模型} other {# 个模型} }吗?", + "delete-models-text": "请注意,确认后所有选中的模型将被移除,所有相关数据将无法恢复。", + "ai-providers": { + "openai": "OpenAI", + "azure-openai": "Azure OpenAI", + "google-ai-gemini": "Google AI Gemini", + "google-vertex-ai-gemini": "Google Vertex AI Gemini", + "mistral-ai": "Mistral AI", + "anthropic": "Anthropic", + "amazon-bedrock": "Amazon Bedrock", + "github-models": "GitHub Models", + "ollama": "Ollama" + }, + "name-required": "名称为必填项。", + "name-max-length": "名称不得超过 255 个字符。", + "provider": "提供商", + "api-key": "API 密钥", + "api-key-required": "API 密钥为必填项。", + "api-key-open-ai-required": "使用官方 OpenAI API 时,API 密钥为必填项。", + "project-id": "Project ID", + "project-id-required": "Project ID 为必填项", + "location": "位置", + "location-required": "位置为必填项。", + "service-account-key-file": "服务账号密钥文件", + "service-account-key-file-required": "服务账号密钥文件为必填项。", + "no-file": "未选择文件。", + "drop-file": "拖放文件或点击选择要上传的文件。", + "personal-access-token": "个人访问 Token", + "personal-access-token-required": "个人访问 Token 为必填项。", + "configuration": "配置", + "model-id": "模型 ID", + "model-id-required": "模型 ID 为必填项。", + "deployment-name": "部署名称", + "deployment-name-required": "部署名称为必填项", + "set": "设置", + "region": "区域", + "region-required": "区域为必填项。", + "access-key-id": "访问密钥 ID", + "access-key-id-required": "访问密钥 ID 为必填项。", + "secret-access-key": "秘密访问密钥", + "secret-access-key-required": "秘密访问密钥为必填项。", + "temperature": "温度", + "temperature-hint": "调整模型输出的随机性级别。值越高随机性越大,值越低随机性越小。", + "temperature-min": "必须大于等于 0。", + "top-p": "Top P", + "top-p-hint": "为模型创建一个最可能 Token 的候选池。值越高候选池越大越多样化,值越低候选池越小。", + "top-p-min-max": "必须大于 0 且不超过 1。", + "top-k": "Top K", + "top-k-hint": "将模型的选择限制为固定的\"K\"个最可能的 Token。", + "top-k-min": "必须大于等于 0。", + "presence-penalty": "存在惩罚", + "presence-penalty-hint": "如果某个 Token 已出现在文本中,则对其可能性施加固定惩罚。", + "frequency-penalty": "频率惩罚", + "frequency-penalty-hint": "根据 Token 在文本中出现的频率对其可能性施加递增惩罚。", + "max-output-tokens": "最大输出 Token 数", + "max-output-tokens-hint": "设置模型在单次响应中可以\n生成的最大 Token 数。", + "context-length": "上下文长度", + "context-length-hint": "定义上下文窗口的大小(以 Token 为单位)。此值设置模型的总内存限制,包括用户输入和生成的响应。", + "endpoint": "Endpoint", + "endpoint-required": "Endpoint 为必填项。", + "baseurl": "Base URL", + "baseurl-required": "Base URL 为必填项。", + "service-version": "服务版本", + "check-connectivity": "检查连接", + "check-connectivity-success": "测试请求成功", + "check-connectivity-failed": "测试请求失败", + "no-model-matching": "未找到匹配“{{entity}}”的模型。", + "model-required": "模型为必填项。", + "no-model-text": "未找到模型。", + "authentication": "认证", + "authentication-basic-hint": "使用标准 HTTP Basic 认证。用户名和密码将被组合、Base64 编码,并在每次请求 Ollama 服务器时通过\"Authorization\"请求头发送。", + "authentication-token-hint": "使用 Bearer Token 认证。提供的 Token 将直接在每次请求 Ollama 服务器时通过\"Authorization\"请求头发送。", + "authentication-type": { + "none": "无", + "basic": "Basic", + "token": "Token" + }, + "username": "用户名", + "username-required": "用户名为必填项。", + "password": "密码", + "password-required": "密码为必填项。", + "token": "Token", + "token-required": "Token 为必填项。" + }, + "confirm-on-exit": { + "message": "您有未保存的更改。确定要离开此页面吗?", + "html-message": "您有未保存的更改。
确定要离开此页面吗?", + "title": "未保存的更改" + }, + "contact": { + "country": "国家", + "country-required": "国家为必填项。", + "country-object-required": "请从列表中选择有效的国家。", + "city": "城市", + "state": "州/省", + "postal-code": "邮政编码", + "postal-code-invalid": "邮政编码格式无效。", + "address": "地址", + "address2": "地址 2", + "phone": "电话", + "email": "Email", + "no-address": "无地址", + "no-country-found": "未找到国家。", + "no-country-matching": "未找到匹配“{{country}}”的国家。", + "state-max-length": "州/省长度应少于 256", + "phone-max-length": "电话号码应少于 256", + "city-max-length": "城市名称应少于 256" + }, + "common": { + "name": "名称", + "type": "类型", + "general": "通用", + "username": "用户名", + "password": "密码", + "data": "数据", + "timestamp": "时间戳", + "enter-username": "输入用户名", + "enter-password": "输入密码", + "enter-search": "输入搜索内容", + "created-time": "创建时间", + "disabled": "已禁用", + "loading": "加载中...", + "proceed": "继续", + "open-details-page": "打开详情页", + "not-found": "未找到", + "value": "值", + "documentation": "文档", + "time-left": "剩余 {{time}}", + "output": "输出", + "sort-asc": "升序", + "sort-desc": "降序", + "suffix": { + "s": "s", + "ms": "ms" + }, + "hint": { + "name-required": "名称为必填项。", + "name-pattern": "名称无效。", + "name-max-length": "名称应少于 256 个字符。", + "title-required": "标题为必填项。", + "title-pattern": "标题无效。", + "title-max-length": "标题应少于 256 个字符。", + "key-required": "键为必填项。", + "key-pattern": "键无效。", + "key-max-length": "键应少于 256 个字符。" + }, + "required-fields": "缺少必填字段" + }, + "content-type": { + "json": "Json", + "text": "文本", + "binary": "二进制 (Base64)" + }, + "color": { + "color": "颜色" + }, + "customer": { + "customer": "客户", + "customers": "客户", + "management": "客户管理", + "dashboard": "客户仪表板", + "dashboards": "客户仪表板", + "devices": "客户设备", + "entity-views": "客户实体视图", + "assets": "客户资产", + "public-dashboards": "公开仪表板", + "public-devices": "公开设备", + "public-assets": "公开资产", + "public-entity-views": "公开实体视图", + "add": "添加客户", + "delete": "删除客户", + "manage-customer-users": "管理客户用户", + "manage-customer-devices": "管理客户设备", + "manage-customer-dashboards": "管理客户仪表板", + "manage-public-devices": "管理公开设备", + "manage-public-dashboards": "管理公开仪表板", + "manage-customer-assets": "管理客户资产", + "manage-customer-edges": "管理客户 Edge", + "manage-public-assets": "管理公开资产", + "add-customer-text": "添加新客户", + "no-customers-text": "未找到客户", + "customer-details": "客户详情", + "delete-customer-title": "确定要删除客户“{{customerTitle}}”吗?", + "delete-customer-text": "请注意,确认后客户及所有相关数据将无法恢复。", + "delete-customers-title": "确定要删除{ count, plural, =1 {1 个客户} other {# 个客户} }吗?", + "delete-customers-action-title": "删除{ count, plural, =1 {1 个客户} other {# 个客户} }", + "delete-customers-text": "请注意,确认后所有选中的客户将被移除,所有相关数据将无法恢复。", + "manage-users": "管理用户", + "manage-assets": "管理资产", + "manage-devices": "管理设备", + "manage-dashboards": "管理仪表板", + "title": "标题", + "title-required": "标题为必填项。", + "title-max-length": "标题应少于 256", + "description": "描述", + "details": "详情", + "events": "事件", + "copyId": "复制客户 Id", + "idCopiedMessage": "客户 Id 已复制到剪贴板", + "select-customer": "选择客户", + "no-customers-matching": "未找到匹配“{{entity}}”的客户。", + "customer-required": "客户为必填项。", + "select-default-customer": "选择默认客户", + "default-customer": "默认客户", + "default-customer-required": "在租户级别调试仪表板时需要默认客户", + "search": "搜索客户", + "selected-customers": "已选择{ count, plural, =1 {1 个客户} other {# 个客户} }", + "edges": "客户 Edge 实例", + "manage-edges": "管理 Edge" + }, + "css-size": { + "size-value-required": "尺寸值为必填项", + "invalid-size-value": "尺寸值无效" + }, + "date": { + "last-update-n-ago": "上次更新于 N 前", + "last-update-n-ago-text": "上次更新于 {{ agoText }}", + "custom-date": "自定义日期", + "format": "格式", + "preview": "预览", + "auto": "自动", + "time-granularity-formats": "时间粒度格式", + "unit-year": "年", + "unit-month": "月", + "unit-day": "日", + "unit-hour": "小时", + "unit-minute": "分钟", + "unit-second": "秒", + "unit-millisecond": "毫秒" + }, + "datetime": { + "date-from": "起始日期", + "time-from": "起始时间", + "date-to": "结束日期", + "time-to": "结束时间", + "from": "从", + "to": "到" + }, + "dashboard": { + "dashboard": "仪表板", + "dashboards": "仪表板", + "management": "仪表板管理", + "view-dashboards": "查看仪表板", + "add": "添加仪表板", + "assign-dashboard-to-customer": "将仪表板分配给客户", + "assign-dashboard-to-customer-text": "请选择要分配给客户的仪表板", + "assign-to-customer-text": "请选择要分配仪表板的客户", + "assign-to-customer": "分配给客户", + "unassign-from-customer": "取消分配客户", + "make-public": "公开仪表板", + "make-private": "将仪表板设为私有", + "manage-assigned-customers": "管理已分配的客户", + "assigned-customers": "已分配的客户", + "assign-to-customers": "将仪表板分配给客户", + "assign-to-customers-text": "请选择要分配仪表板的客户", + "unassign-from-customers": "取消分配仪表板的客户", + "unassign-from-customers-text": "请选择要取消分配仪表板的客户", + "no-dashboards-text": "未找到仪表板", + "no-widgets": "未配置部件", + "add-widget": "添加新部件", + "add-widget-button-text": "添加部件", + "title": "标题", + "image": "仪表板图片", + "mobile-app-settings": "移动应用设置", + "mobile-order": "仪表板在移动应用中的排序", + "mobile-hide": "在移动应用中隐藏仪表板", + "update-image": "更新仪表板图片", + "update-new-version": "上传新版本", + "upload-file-to-update": "上传文件以更新", + "take-screenshot": "截图", + "select-widget-title": "选择部件", + "select-widget-value": "{{title}}:选择部件", + "select-widget-subtitle": "可用部件类型列表", + "delete": "删除仪表板", + "title-required": "标题为必填项。", + "title-max-length": "标题应少于 256", + "description": "描述", + "details": "详情", + "dashboard-details": "仪表板详情", + "add-dashboard-text": "添加新仪表板", + "assign-dashboards": "分配仪表板", + "assign-new-dashboard": "分配新仪表板", + "assign-dashboards-text": "将{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }分配给客户", + "unassign-dashboards-action-text": "取消分配客户的{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }", + "delete-dashboards": "删除仪表板", + "unassign-dashboards": "取消分配仪表板", + "unassign-dashboards-action-title": "取消分配客户的{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }", + "delete-dashboard-title": "确定要删除仪表板“{{dashboardTitle}}”吗?", + "delete-dashboard-text": "请注意,确认后仪表板及所有相关数据将无法恢复。", + "delete-dashboards-title": "确定要删除{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }吗?", + "delete-dashboards-action-title": "删除{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }", + "delete-dashboards-text": "请注意,确认后所有选中的仪表板将被移除,所有相关数据将无法恢复。", + "unassign-dashboard-title": "确定要取消分配仪表板“{{dashboardTitle}}”吗?", + "unassign-dashboard-text": "确认后仪表板将被取消分配,客户将无法访问。", + "unassign-dashboard": "取消分配仪表板", + "unassign-dashboards-title": "确定要取消分配{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }吗?", + "unassign-dashboards-text": "确认后所有选中的仪表板将被取消分配,客户将无法访问。", + "public-dashboard-title": "仪表板现已公开", + "public-dashboard-text": "您的仪表板{{dashboardTitle}}现已公开,可通过以下公开链接访问:", + "public-dashboard-notice": "注意:请勿忘记将相关设备设为公开以访问其数据。", + "make-private-dashboard-title": "确定要将仪表板“{{dashboardTitle}}”设为私有吗?", + "make-private-dashboard-text": "确认后仪表板将设为私有,其他人将无法访问。", + "make-private-dashboard": "将仪表板设为私有", + "socialshare-text": "“{{dashboardTitle}}”由 ThingsBoard 提供支持", + "socialshare-title": "“{{dashboardTitle}}”由 ThingsBoard 提供支持", + "select-dashboard": "选择仪表板", + "no-dashboards-matching": "未找到匹配“{{entity}}”的仪表板。", + "dashboard-required": "仪表板为必填项。", + "select-existing": "选择已有仪表板", + "create-new": "创建新仪表板", + "new-dashboard-title": "新仪表板标题", + "open-dashboard": "打开仪表板", + "set-background": "设置背景", + "background-color": "背景颜色", + "background-image": "背景图片", + "background-size-mode": "背景尺寸模式", + "no-image": "未选择图片", + "empty-image": "无图片", + "drop-image": "拖放图片或点击选择要上传的文件。", + "maximum-upload-file-size": "最大上传文件大小:{{ size }}", + "cannot-upload-file": "无法上传文件", + "settings": "设置", + "move-all-widgets": "移动所有部件", + "move-by": "移动", + "cols": "列", + "rows": "行", + "layout": "布局", + "layout-type-default": "默认", + "layout-type-scada": "SCADA", + "layout-type-divider": "分隔线", + "layout-settings-type": "布局设置:{{ type }} 断点", + "columns-count": "列数", + "columns-count-required": "列数为必填项。", + "min-columns-count-message": "最小列数只允许为 10。", + "max-columns-count-message": "最大列数只允许为 1000。", + "min-layout-width": "最小布局宽度", + "columns-suffix": "列", + "widgets-margins": "部件间距", + "margin-required": "间距值为必填项。", + "min-margin-message": "最小间距值只允许为 0。", + "max-margin-message": "最大间距值只允许为 50。", + "horizontal-margin": "水平间距", + "horizontal-margin-required": "水平间距值为必填项。", + "min-horizontal-margin-message": "最小水平间距值只允许为 0。", + "max-horizontal-margin-message": "最大水平间距值只允许为 50。", + "vertical-margin": "垂直间距", + "vertical-margin-required": "垂直间距值为必填项。", + "min-vertical-margin-message": "最小垂直间距值只允许为 0。", + "max-vertical-margin-message": "最大垂直间距值只允许为 50。", + "apply-outer-margin": "将间距应用到布局两侧", + "autofill-height": "自动填充布局高度", + "mobile-layout": "移动端布局设置", + "mobile-row-height": "移动端行高", + "mobile-row-height-required": "移动端行高值为必填项。", + "min-mobile-row-height-message": "移动端最小行高只允许为 5 像素。", + "max-mobile-row-height-message": "移动端最大行高只允许为 200 像素。", + "row-height": "行高", + "row-height-required": "行高值为必填项。", + "min-row-height-message": "最小行高只允许为 5 像素。", + "max-row-height-message": "最大行高只允许为 200 像素。", + "display-first-in-mobile-view": "在移动端视图中优先显示", + "title-settings": "标题设置", + "display-title": "显示仪表板标题", + "title-color": "标题颜色", + "toolbar-settings": "工具栏设置", + "hide-toolbar": "隐藏工具栏", + "toolbar-always-open": "保持工具栏展开", + "display-dashboards-selection": "显示仪表板选择", + "display-entities-selection": "显示实体选择", + "display-filters": "显示过滤器", + "display-dashboard-timewindow": "显示时间窗口", + "display-dashboard-export": "显示导出", + "display-update-dashboard-image": "显示更新仪表板图片", + "dashboard-logo-settings": "仪表板 Logo 设置", + "display-dashboard-logo": "在仪表板全屏模式下显示 Logo", + "dashboard-logo-image": "仪表板 Logo 图片", + "advanced-settings": "高级设置", + "dashboard-css": "仪表板 CSS", + "import": "导入仪表板", + "export": "导出仪表板", + "export-failed-error": "无法导出仪表板:{{error}}", + "export-prompt": "嵌入仪表板图片和资源", + "create-new-dashboard": "创建新仪表板", + "dashboard-file": "仪表板文件", + "invalid-dashboard-file-error": "无法导入仪表板:仪表板数据结构无效。", + "dashboard-import-missing-aliases-title": "配置导入仪表板使用的别名", + "create-new-widget": "创建新部件", + "import-widget": "导入部件", + "widget-file": "部件文件", + "invalid-widget-file-error": "无法导入部件:部件数据结构无效。", + "widget-import-missing-aliases-title": "配置导入部件使用的别名", + "open-toolbar": "打开仪表板工具栏", + "close-toolbar": "关闭工具栏", + "configuration-error": "配置错误", + "alias-resolution-error-title": "仪表板别名配置错误", + "invalid-aliases-config": "无法找到匹配某些别名过滤器的设备。
请联系管理员以解决此问题。", + "select-devices": "选择设备", + "assignedToCustomer": "已分配给客户", + "assignedToCustomers": "已分配给客户", + "public": "公开", + "copyId": "复制仪表板 Id", + "idCopiedMessage": "仪表板 Id 已复制到剪贴板", + "public-link": "公开链接", + "copy-public-link": "复制公开链接", + "public-link-copied-message": "仪表板公开链接已复制到剪贴板", + "manage-states": "管理仪表板状态", + "states": "仪表板状态", + "states-short": "状态", + "search-states": "搜索仪表板状态", + "selected-states": "已选择{ count, plural, =1 {1 个仪表板状态} other {# 个仪表板状态} }", + "edit-state": "编辑仪表板状态", + "delete-state": "删除仪表板状态", + "add-state": "添加仪表板状态", + "no-states-text": "未找到状态", + "state": "仪表板状态", + "state-name": "名称", + "state-name-required": "仪表板状态名称为必填项。", + "state-id": "状态 Id", + "state-id-required": "仪表板状态 Id 为必填项。", + "state-id-exists": "具有相同 Id 的仪表板状态已存在。", + "is-root-state": "根状态", + "delete-state-title": "删除仪表板状态", + "delete-state-text": "确定要删除名为“{{stateName}}”的仪表板状态吗?", + "show-details": "显示详情", + "hide-details": "隐藏详情", + "select-state": "选择目标状态", + "state-controller": "状态控制器", + "state-controller-default": "静态(已弃用)", + "search": "搜索仪表板", + "selected-dashboards": "已选择{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }", + "home-dashboard": "主页仪表板", + "home-dashboard-hide-toolbar": "隐藏主页仪表板工具栏", + "unassign-dashboard-from-edge-text": "确认后仪表板将被取消分配,Edge 将无法访问。", + "unassign-dashboards-from-edge-title": "确定要取消分配{ count, plural, =1 {1 个仪表板} other {# 个仪表板} }吗?", + "unassign-dashboards-from-edge-text": "确认后所有选中的仪表板将被取消分配,Edge 将无法访问。", + "assign-dashboard-to-edge": "将仪表板分配给 Edge", + "assign-dashboard-to-edge-text": "请选择要分配给 Edge 的仪表板", + "non-existent-dashboard-state-error": "未找到 Id 为\"{{ stateId }}\"的仪表板状态", + "edit-mode": "编辑模式", + "duplicate-state-action": "复制状态", + "breakpoint-value": "断点({{ value }})", + "breakpoints-id": { + "default": "默认", + "xs": "手机 (xs)", + "sm": "平板 (sm)", + "md": "笔记本 (md)", + "lg": "桌面 (lg)", + "xl": "桌面 (xl)" + }, + "view-format-type-grid": "网格", + "view-format-type-list": "列表", + "view-format": "视图格式" + }, + "datakey": { + "settings": "设置", + "general": "通用", + "advanced": "高级", + "key": "键", + "keys": "键", + "label": "标签", + "color": "颜色", + "units": "值旁显示的特殊符号", + "decimals": "小数点后位数", + "data-generation-func": "数据生成函数", + "use-data-post-processing-func": "使用数据后处理函数", + "configuration": "数据键配置", + "timeseries": "时间序列", + "attributes": "属性", + "entity-field": "实体字段", + "alarm": "告警字段", + "timeseries-required": "实体时间序列为必填项。", + "timeseries-or-attributes-required": "实体时间序列/属性为必填项。", + "alarm-fields-timeseries-or-attributes-required": "告警字段或实体时间序列/属性为必填项。", + "maximum-timeseries-or-attributes": "最多允许{ count, plural, =1 {1 个时间序列/属性。} other {# 个时间序列/属性} }", + "alarm-fields-required": "告警字段为必填项。", + "function-types": "函数类型", + "function-type": "函数类型", + "function-types-required": "函数类型为必填项。", + "data-keys": "数据键", + "data-key": "数据键", + "data-keys-required": "数据键为必填项。", + "data-key-required": "数据键为必填项。", + "alarm-keys": "告警数据键", + "alarm-key": "告警数据键", + "alarm-key-functions": "告警键函数", + "alarm-key-function": "告警键函数", + "latest-keys": "最新数据键", + "latest-key": "最新数据键", + "latest-key-functions": "最新键函数", + "latest-key-function": "最新键函数", + "timeseries-keys": "时间序列数据键", + "timeseries-key": "时间序列数据键", + "timeseries-key-functions": "时间序列键函数", + "timeseries-key-function": "时间序列键函数", + "maximum-function-types": "最多允许{ count, plural, =1 {1 个函数类型。} other {# 个函数类型} }", + "time-description": "当前值的时间戳;", + "value-description": "当前值;", + "prev-value-description": "上次函数调用的结果;", + "time-prev-description": "上一个值的时间戳;", + "prev-orig-value-description": "原始上一个值;", + "aggregation": "聚合", + "aggregation-type-hint-common": "出于性能考虑,聚合值计算仅适用于固定时间间隔(如“当天”、“当月”等),不适用于滑动窗口间隔(如“最近 30 分钟”或“最近 24 小时”)。", + "aggregation-type-none-hint": "取最新值。", + "aggregation-type-min-hint": "在选定时间窗口内的数据点中找到最小值。", + "aggregation-type-max-hint": "在选定时间窗口内的数据点中找到最大值。", + "aggregation-type-avg-hint": "计算选定时间窗口内数据点的平均值。", + "aggregation-type-sum-hint": "对选定时间窗口内所有数据点的值求和。", + "aggregation-type-count-hint": "选定时间窗口内数据点的总数。", + "delta-calculation": "增量计算", + "enable-delta-calculation": "启用增量计算", + "enable-delta-calculation-hint": "启用后,数据键的值将根据选定时间窗口和指定比较周期的聚合值进行计算。出于性能考虑,增量计算仅适用于历史时间窗口,不适用于实时值。例如,您可以计算昨天的能耗与前天的能耗之间的增量。", + "delta-calculation-result": "增量计算结果", + "delta-calculation-result-previous-value": "前一个值", + "delta-calculation-result-delta-absolute": "增量(绝对值)", + "delta-calculation-result-delta-percent": "增量(百分比)", + "source": "来源", + "latest": "最新", + "latest-value": "最新值", + "delta": "增量", + "percent": "百分比", + "absolute": "绝对值" + }, + "datasource": { + "type": "数据源类型", + "name": "名称", + "label": "标签", + "add-datasource-prompt": "请添加数据源" + }, + "details": { + "details": "详情", + "edit-mode": "编辑模式", + "edit-json": "编辑 JSON", + "toggle-edit-mode": "切换编辑模式" + }, + "device": { + "device": "设备", + "device-required": "设备为必填项。", + "devices": "设备", + "management": "设备管理", + "view-devices": "查看设备", + "device-alias": "设备别名", + "device-type-max-length": "设备类型应少于 256", + "aliases": "设备别名", + "no-alias-matching": "未找到“{{alias}}”。", + "no-aliases-found": "未找到别名。", + "no-key-matching": "未找到“{{key}}”。", + "no-keys-found": "未找到键。", + "create-new-alias": "创建新别名!", + "create-new-key": "创建新键!", + "duplicate-alias-error": "发现重复别名“{{alias}}”。
设备别名在仪表板内必须唯一。", + "configure-alias": "配置“{{alias}}”别名", + "no-devices-matching": "未找到匹配“{{entity}}”的设备。", + "alias": "别名", + "alias-required": "设备别名为必填项。", + "remove-alias": "移除设备别名", + "add-alias": "添加设备别名", + "name-starts-with": "设备名称表达式", + "help-text": "根据需要使用“%”:“%device_name_contains%”、“%device_name_ends”、“device_starts_with%”。", + "device-list": "设备列表", + "use-device-name-filter": "使用过滤器", + "device-list-empty": "未选择设备。", + "device-name-filter-required": "设备名称过滤器为必填项。", + "device-name-filter-no-device-matched": "未找到以“{{device}}”开头的设备。", + "add": "添加设备", + "assign-to-customer": "分配给客户", + "assign-device-to-customer": "将设备分配给客户", + "assign-device-to-customer-text": "请选择要分配给客户的设备", + "make-public": "公开设备", + "make-private": "将设备设为私有", + "no-devices-text": "未找到设备", + "assign-to-customer-text": "请选择要分配设备的客户", + "device-details": "设备详情", + "add-device-text": "添加新设备", + "credentials": "凭证", + "manage-credentials": "管理凭证", + "delete": "删除设备", + "assign-devices": "分配设备", + "assign-devices-text": "将{ count, plural, =1 {1 个设备} other {# 个设备} }分配给客户", + "delete-devices": "删除设备", + "unassign-from-customer": "取消分配客户", + "unassign-devices": "取消分配设备", + "unassign-devices-action-title": "取消分配客户的{ count, plural, =1 {1 个设备} other {# 个设备} }", + "unassign-device-from-edge-title": "确定要取消分配设备“{{deviceName}}”吗?", + "unassign-device-from-edge-text": "确认后设备将被取消分配,Edge 将无法访问。", + "unassign-devices-from-edge": "从 Edge 取消分配设备", + "assign-new-device": "分配新设备", + "make-public-device-title": "确定要将设备“{{deviceName}}”设为公开吗?", + "make-public-device-text": "确认后设备及其所有数据将设为公开,其他人可访问。", + "make-private-device-title": "确定要将设备“{{deviceName}}”设为私有吗?", + "make-private-device-text": "确认后设备及其所有数据将设为私有,其他人将无法访问。", + "view-credentials": "查看凭证", + "delete-device-title": "确定要删除设备“{{deviceName}}”吗?", + "delete-device-text": "请注意,确认后设备及所有相关数据将无法恢复。", + "delete-devices-title": "确定要删除{ count, plural, =1 {1 个设备} other {# 个设备} }吗?", + "delete-devices-action-title": "删除{ count, plural, =1 {1 个设备} other {# 个设备} }", + "delete-devices-text": "请注意,确认后所有选中的设备将被移除,所有相关数据将无法恢复。", + "unassign-device-title": "确定要取消分配设备“{{deviceName}}”吗?", + "unassign-device-text": "确认后设备将被取消分配,客户将无法访问。", + "unassign-device": "取消分配设备", + "unassign-devices-title": "确定要取消分配{ count, plural, =1 {1 个设备} other {# 个设备} }吗?", + "unassign-devices-text": "确认后所有选中的设备将被取消分配,客户将无法访问。", + "device-credentials": "设备凭证", + "loading-device-credentials": "正在加载设备凭证...", + "credentials-type": "凭证类型", + "access-token": "访问 Token", + "access-token-required": "访问 Token 为必填项。", + "access-token-invalid": "访问 Token 长度必须在 1 到 32 个字符之间。", + "certificate-pem-format": "PEM 格式证书", + "certificate-pem-format-required": "证书为必填项。", + "copy-access-token": "复制访问 Token", + "copy-certificate": "复制证书", + "copy-client-id": "复制 Client ID", + "copy-user-name": "复制用户名", + "copy-password": "复制密码", + "generate-client-id": "生成 Client ID", + "generate-user-name": "生成用户名", + "generate-password": "生成密码", + "generate-access-token": "生成访问 Token", + "lwm2m-security-config": { + "identity": "Client Identity", + "identity-required": "Client Identity 为必填项。", + "identity-tooltip": "PSK 标识符是最多 128 字节的任意 PSK 标识符,如标准 [RFC7925] 所述。\nPSK 标识符必须先转换为字符串,然后使用 UTF-8 编码为八位字节。", + "client-key": "Client Key", + "client-key-required": "Client Key 为必填项。", + "client-key-tooltip-prk": "RPK 公钥或 id 必须符合标准 [RFC7250] 并编码为 Base64 格式!", + "client-key-tooltip-psk": "PSK 密钥必须符合标准 [RFC4279] 且为 HexDec 格式:32、64、128 字符!", + "endpoint": "Endpoint Client Name", + "endpoint-required": "Endpoint Client Name 为必填项。", + "client-public-key": "客户端公钥", + "client-public-key-hint": "如果客户端公钥为空,将使用受信任的证书", + "client-public-key-tooltip": "X509 公钥必须为 DER 编码的 X509v3 格式,仅支持 EC 算法,然后编码为 Base64 格式!", + "mode": "安全配置模式", + "client-tab": "客户端安全配置", + "client-certificate": "客户端证书", + "bootstrap-tab": "Bootstrap 客户端", + "bootstrap-server": "Bootstrap 服务器", + "lwm2m-server": "LwM2M 服务器", + "client-reboot": "注册更新触发器", + "bootstrap-reboot": "Bootstrap 请求触发器", + "client-publicKey-or-id": "客户端公钥或 Id", + "client-publicKey-or-id-required": "客户端公钥或 Id 为必填项。", + "client-publicKey-or-id-tooltip-psk": "PSK 标识符是最多 128 字节的任意 PSK 标识符,如标准 [RFC7925] 所述。\nPSK 标识符必须先转换为字符串,然后使用 UTF-8 编码为八位字节。", + "client-publicKey-or-id-tooltip-rpk": "RPK 公钥或 id 必须符合标准 [RFC7250] 并编码为 Base64 格式!", + "client-publicKey-or-id-tooltip-x509": "X509 公钥必须为 DER 编码的 X509v3 格式,仅支持 EC 算法,然后编码为 Base64 格式", + "client-secret-key": "客户端密钥", + "client-secret-key-required": "客户端密钥为必填项。", + "client-secret-key-tooltip-psk": "PSK 密钥必须符合标准 [RFC4279] 且为 HexDec 格式:32、64、128 字符!", + "client-secret-key-tooltip-prk": "RPK 密钥必须为 PKCS_8 格式(DER 编码,标准 [RFC5958]),然后编码为 Base64 格式!", + "client-secret-key-tooltip-x509": "X509 密钥必须为 PKCS_8 格式(DER 编码,标准 [RFC5958]),然后编码为 Base64 格式!" + }, + "client-id": "Client ID", + "client-id-pattern": "包含无效字符。", + "user-name": "用户名", + "user-name-required": "用户名为必填项。", + "client-id-or-user-name-necessary": "Client ID 和/或用户名为必填项", + "password": "密码", + "secret": "密钥", + "secret-required": "密钥为必填项。", + "device-type": "设备配置", + "device-type-required": "设备类型为必填项。", + "select-device-type": "选择设备类型", + "enter-device-type": "输入设备配置", + "any-device": "任意设备", + "no-device-types-matching": "未找到匹配“{{entitySubtype}}”的设备配置。", + "device-type-list-empty": "未选择设备配置!", + "device-profile-type-list-empty": "至少应选择一个设备配置。", + "device-types": "设备类型", + "name": "名称", + "name-required": "名称为必填项。", + "name-max-length": "名称应少于 256", + "label-max-length": "标签应少于 256", + "description": "描述", + "label": "标签", + "events": "事件", + "details": "详情", + "copyId": "复制设备 Id", + "copyAccessToken": "复制访问 Token", + "copy-mqtt-authentication": "复制 MQTT 凭证", + "idCopiedMessage": "设备 Id 已复制到剪贴板", + "accessTokenCopiedMessage": "设备访问 Token 已复制到剪贴板", + "mqtt-authentication-copied-message": "设备 MQTT 认证信息已复制到剪贴板", + "assignedToCustomer": "已分配给客户", + "unable-delete-device-alias-title": "无法删除设备别名", + "unable-delete-device-alias-text": "设备别名“{{deviceAlias}}”无法删除,因为以下部件正在使用它:
{{widgetsList}}", + "is-gateway": "是否为 Gateway", + "overwrite-activity-time": "覆盖已连接设备的活动时间", + "device-filter-title": "设备过滤器", + "filter-title": "过滤器", + "device-state": "设备状态", + "state": "状态", + "any": "任意", + "active": "活跃", + "inactive": "不活跃", + "public": "公开", + "device-public": "设备已公开", + "select-device": "选择设备", + "import": "导入设备", + "device-file": "设备文件", + "search": "搜索设备", + "selected-devices": "已选择{ count, plural, =1 {1 个设备} other {# 个设备} }", + "device-configuration": "设备配置", + "transport-configuration": "传输配置", + "wizard": { + "device-details": "设备详情" + }, + "unassign-devices-from-edge-title": "确定要取消分配{ count, plural, =1 {1 个设备} other {# 个设备} }吗?", + "unassign-devices-from-edge-text": "确认后所有选中的设备将被取消分配,Edge 将无法访问。", + "time": "时间", + "connectivity": { + "check-connectivity": "检查连接", + "device-created-check-connectivity": "设备已创建。让我们检查连接!", + "loading-check-connectivity-command": "正在加载检查连接命令...", + "use-following-instructions": "使用以下说明通过 shell 代表设备发送遥测数据", + "execute-following-command": "执行以下命令", + "install-curl-windows": "从 Windows 10 b17063 开始,cURL 默认可用", + "install-curl-macos": "从 Mac OS X 10.2 6C115 (Jaguar) 开始,cURL 默认可用", + "install-mqtt-windows": "使用说明下载、安装、设置和运行 mosquitto_pub", + "install-coap-client": "使用说明下载、安装、设置和运行 coap-client", + "install-necessary-client-tools": "安装必要的客户端工具", + "mqtts-x509-command": "使用以下文档通过 MQTT 及 X509 授权连接设备", + "coaps-x509-command": "使用以下文档通过 CoAP over DTLS 及 X509 授权连接设备", + "snmp-command": "使用以下文档通过 SNMP 连接设备。", + "sparkplug-command": "使用以下文档通过 MQTT Sparkplug 连接设备。", + "lwm2m-command": "使用以下文档通过 LWM2M 连接设备。" + } + }, + "dynamic-form": { + "property": { + "properties": "属性", + "property": "属性", + "id": "Id", + "name": "名称", + "type": "类型", + "type-text": "文本", + "type-password": "密码", + "type-textarea": "文本区域", + "type-number": "数字", + "type-switch": "开关", + "type-select": "下拉选择", + "type-radios": "单选按钮", + "type-datetime": "日期/时间", + "type-image": "图片", + "type-javascript": "JavaScript", + "type-json": "JSON", + "type-html": "HTML", + "type-css": "CSS", + "type-markdown": "Markdown", + "type-color": "颜色", + "type-color-settings": "颜色设置", + "type-font": "字体", + "type-units": "单位", + "type-icon": "图标", + "type-fieldset": "字段集", + "type-array": "数组", + "type-html-section": "HTML 区段", + "group-title": "分组标题", + "no-properties": "未配置属性", + "add-property": "添加属性", + "property-settings": "属性设置", + "remove-property": "移除属性", + "default-value": "默认值", + "value-required": "值为必填项", + "number-settings": "数字设置", + "min": "最小值", + "max": "最大值", + "step": "步长", + "selected-options-limit": "已选选项限制", + "advanced-ui-settings": "高级 UI 设置", + "disable-on-property": "根据属性禁用", + "disable-on-property-none": "无(字段始终启用)", + "display-condition-function": "显示条件函数", + "sub-label": "子标签", + "vertical-divider-after": "之后的垂直分隔线", + "input-field-suffix": "输入字段后缀", + "property-row-classes": "属性行样式类", + "property-field-classes": "属性字段样式类", + "not-unique-property-ids-error": "属性 Id 必须唯一!", + "enable-multiple-select": "启用多选", + "allow-empty-select-option": "允许空选项", + "select-options": "选择选项", + "not-unique-select-option-value-error": "选择选项值必须唯一!", + "value": "值", + "label": "标签", + "add-option": "添加选项", + "no-options": "未配置选项", + "remove-option": "移除选项", + "textarea-rows": "文本区域行数", + "help-id": "帮助 Id", + "buttons-direction": "按钮方向", + "direction-row": "行", + "direction-column": "列", + "radio-button-options": "单选按钮选项", + "datetime-type": "日期/时间字段类型", + "datetime-type-date": "日期", + "datetime-type-time": "时间", + "datetime-type-datetime": "日期/时间", + "enable-clear-button": "启用清除按钮", + "html-section-settings": "HTML 区段设置", + "html-section-classes": "HTML 区段样式类", + "html-section-content": "HTML 区段内容", + "array-item": "数组项", + "item-type": "项类型", + "item-name": "项名称", + "no-items": "无项目", + "support-unit-conversion": "支持单位转换" }, - "item": { - "selected": "选择" - }, - "js-func": { - "no-return-error": "函数必须返回值!", - "return-type-mismatch": "函数必须返回'{{type}}'类型的值!", - "tidy": "整理", - "mini": "迷你", - "modules": "模块", - "remove-module": "移除模块", - "no-modules": "未配置模块", - "add-module": "添加模块", - "module-alias": "别名", - "module-resource": "JS模块资源", - "not-unique-module-aliases-error": "模块别名必须是唯一的!", - "show-module-info": "显示模块信息", - "show-module-source-code": "显示模块源代码", - "module-members": "模块成员", - "module-no-members": "模块没有导出的成员", - "module-load-error": "模块加载错误", - "source-code": "源代码", - "source-code-load-error": "源代码加载错误", - "no-js-module-text": "未找到JS模块", - "no-js-module-matching": "未找到与 '{{module}}' 匹配的JS模块" + "clear-form": "清除表单", + "clear-form-prompt": "确定要移除所有表单属性吗?", + "import-form": "从 JSON 导入表单", + "export-form": "将表单导出为 JSON", + "json-file": "JSON 文件", + "json-content": "JSON 内容", + "invalid-form-json-file-error": "无法从 JSON 导入表单:表单 JSON 数据结构无效。" + }, + "asset-profile": { + "asset-profile": "资产配置", + "asset-profiles": "资产配置", + "all-asset-profiles": "全部", + "add": "添加资产配置", + "edit": "编辑资产配置", + "asset-profile-details": "资产配置详情", + "no-asset-profiles-text": "未找到资产配置", + "search": "搜索资产配置", + "selected-asset-profiles": "已选择{ count, plural, =1 {1 个资产配置} other {# 个资产配置} }", + "no-asset-profiles-matching": "未找到匹配“{{entity}}”的资产配置。", + "asset-profile-required": "资产配置为必填项", + "idCopiedMessage": "资产配置 Id 已复制到剪贴板", + "set-default": "设为默认资产配置", + "delete": "删除资产配置", + "copyId": "复制资产配置 Id", + "name-max-length": "名称应少于 256", + "new-device-profile-name": "资产配置名称", + "new-device-profile-name-required": "资产配置名称为必填项。", + "name": "名称", + "name-required": "名称为必填项。", + "image": "资产配置图片", + "description": "描述", + "default": "默认", + "default-rule-chain": "默认规则链", + "default-edge-rule-chain": "默认 Edge 规则链", + "default-edge-rule-chain-hint": "在 Edge 上用作处理此资产配置资产传入数据的规则链", + "mobile-dashboard": "移动端仪表板", + "mobile-dashboard-hint": "移动应用程序用作资产详情仪表板", + "select-queue-hint": "从下拉列表中选择。", + "delete-asset-profile-title": "确定要删除资产配置“{{assetProfileName}}”吗?", + "delete-asset-profile-text": "请注意,确认后资产配置及所有相关数据将无法恢复。", + "delete-asset-profiles-title": "确定要删除{ count, plural, =1 {1 个资产配置} other {# 个资产配置} }吗?", + "delete-asset-profiles-text": "请注意,确认后所有选中的资产配置将被移除,所有相关数据将无法恢复。", + "set-default-asset-profile-title": "确定要将资产配置“{{assetProfileName}}”设为默认吗?", + "set-default-asset-profile-text": "确认后资产配置将被标记为默认,并用于未指定配置的新资产。", + "no-asset-profiles-found": "未找到资产配置。", + "create-new-asset-profile": "创建新资产配置!", + "create-asset-profile": "创建新资产配置", + "import": "导入资产配置", + "export": "导出资产配置", + "export-failed-error": "无法导出资产配置:{{error}}", + "asset-profile-file": "资产配置文件", + "invalid-asset-profile-file-error": "无法导入资产配置:资产配置数据结构无效。" + }, + "device-profile": { + "device-profile": "设备配置", + "device-profiles": "设备配置", + "all-device-profiles": "全部", + "add": "添加设备配置", + "edit": "编辑设备配置", + "device-profile-details": "设备配置详情", + "no-device-profiles-text": "未找到设备配置", + "search": "搜索设备配置", + "selected-device-profiles": "{ count, plural, =1 {1 个设备配置} other {# 个设备配置} }已选择", + "no-device-profiles-matching": "未找到与 '{{entity}}' 匹配的设备配置。", + "device-profile-required": "设备配置为必填项", + "idCopiedMessage": "设备配置 Id 已复制到剪贴板", + "set-default": "设为默认设备配置", + "delete": "删除设备配置", + "copyId": "复制设备配置 Id", + "name-max-length": "名称长度不能超过 256", + "name": "名称", + "name-required": "名称为必填项。", + "type": "配置类型", + "type-required": "配置类型为必填项。", + "type-default": "默认", + "image": "设备配置图片", + "transport-type": "传输类型", + "transport-type-required": "传输类型为必填项。", + "transport-type-default": "默认", + "transport-type-default-hint": "支持基本 MQTT、HTTP 和 CoAP 传输", + "transport-type-mqtt": "MQTT", + "transport-type-mqtt-hint": "启用高级 MQTT 传输设置", + "transport-type-coap": "CoAP", + "transport-type-coap-hint": "启用高级 CoAP 传输设置", + "transport-type-lwm2m": "LWM2M", + "transport-type-lwm2m-hint": "LWM2M 传输类型", + "transport-type-snmp": "SNMP", + "transport-type-snmp-hint": "指定 SNMP 传输配置", + "transport-type-http": "HTTP", + "description": "描述", + "default": "默认", + "profile-configuration": "配置设定", + "transport-configuration": "传输配置", + "default-rule-chain": "默认规则链", + "default-edge-rule-chain": "默认 Edge 规则链", + "default-edge-rule-chain-hint": "在 Edge 上用作规则链,处理此设备配置的设备传入数据", + "mobile-dashboard": "移动端仪表板", + "mobile-dashboard-hint": "移动应用使用此仪表板作为设备详情仪表板", + "select-queue-hint": "从下拉列表中选择。", + "delete-device-profile-title": "确定要删除设备配置 '{{deviceProfileName}}' 吗?", + "delete-device-profile-text": "请注意,确认后设备配置及所有相关数据(包括关联的 OTA 更新)将无法恢复。", + "delete-device-profiles-title": "确定要删除 { count, plural, =1 {1 个设备配置} other {# 个设备配置} } 吗?", + "delete-device-profiles-text": "请注意,确认后所有选中的设备配置将被移除,所有相关数据(包括关联的 OTA 更新)将无法恢复。", + "set-default-device-profile-title": "确定要将设备配置 '{{deviceProfileName}}' 设为默认吗?", + "set-default-device-profile-text": "确认后,该设备配置将被标记为默认,并将用于未指定配置的新设备。", + "no-device-profiles-found": "未找到设备配置。", + "create-new-device-profile": "创建新的设备配置!", + "mqtt-device-topic-filters": "MQTT 设备主题过滤器", + "mqtt-device-topic-filters-unique": "MQTT 设备主题过滤器必须唯一。", + "mqtt-device-topic-filters-spark-plug": "MQTT Sparkplug B Edge of Network (EoN) 节点。", + "mqtt-device-topic-filters-spark-plug-hint": "允许来自使用 Sparkplug B 负载和主题格式的 EoN 节点的连接。", + "mqtt-device-topic-filters-spark-plug-attribute-metric-names": "作为属性存储的 SparkPlug 指标。", + "mqtt-device-topic-filters-spark-plug-attribute-metric-names-hint": "将作为设备属性存储的 SparkPlug 指标名称。其他所有指标将作为设备遥测存储。", + "mqtt-device-payload-type": "MQTT 设备负载", + "mqtt-device-payload-type-json": "JSON", + "mqtt-device-payload-type-proto": "Protobuf", + "mqtt-enable-compatibility-with-json-payload-format": "启用与其他负载格式的兼容性。", + "mqtt-enable-compatibility-with-json-payload-format-hint": "启用后,平台将默认使用 Protobuf 负载格式。如果解析失败,平台将尝试使用 JSON 负载格式。适用于固件更新期间的向后兼容性。例如,初始版本的固件使用 Json,而新版本使用 Protobuf。在设备群的固件更新过程中,需要同时支持 Protobuf 和 JSON。兼容模式会引入轻微的性能下降,因此建议在所有设备更新完成后禁用此模式。", + "mqtt-use-json-format-for-default-downlink-topics": "对默认下行主题使用 Json 格式", + "mqtt-use-json-format-for-default-downlink-topics-hint": "启用后,平台将使用 Json 负载格式通过以下主题推送属性和 RPC:v1/devices/me/attributes/response/$request_idv1/devices/me/attributesv1/devices/me/rpc/request/$request_idv1/devices/me/rpc/response/$request_id。此设置不影响使用新 (v2) 主题发送的属性和 RPC 订阅:v2/a/res/$request_idv2/av2/r/req/$request_idv2/r/res/$request_id。其中 $request_id 是整数请求标识符。", + "mqtt-send-ack-on-validation-exception": "在 PUBLISH 消息验证失败时发送 PUBACK", + "mqtt-send-ack-on-validation-exception-hint": "默认情况下,平台在消息验证失败时将关闭 MQTT 会话。启用后,平台将发送发布确认而不是关闭会话。", + "mqtt-protocol-version": "协议版本", + "snmp-add-mapping": "添加 SNMP 映射", + "snmp-mapping-not-configured": "未配置 OID 到时间序列/遥测的映射", + "snmp-timseries-or-attribute-name": "映射的时间序列/属性名称", + "snmp-timseries-or-attribute-type": "映射的时间序列/属性类型", + "snmp-method-pdu-type-get-request": "GetRequest", + "snmp-method-pdu-type-get-next-request": "GetNextRequest", + "snmp-oid": "OID", + "transport-device-payload-type-json": "JSON", + "transport-device-payload-type-proto": "Protobuf", + "mqtt-payload-type-required": "负载类型为必填项。", + "coap-device-type": "CoAP 设备类型", + "coap-device-payload-type": "CoAP 设备负载", + "coap-device-type-required": "CoAP 设备类型为必填项。", + "coap-device-type-default": "默认", + "coap-device-type-efento": "Efento NB-IoT", + "support-level-wildcards": "支持单级 [+] 和多级 [#] 通配符。", + "telemetry-topic-filter": "遥测主题过滤器", + "telemetry-topic-filter-required": "遥测主题过滤器为必填项。", + "attributes-topic-filter": "属性发布主题过滤器", + "attributes-subscribe-topic-filter": "属性订阅主题过滤器", + "attributes-topic-filter-required": "属性发布主题过滤器为必填项。", + "attributes-subscribe-topic-filter-required": "属性订阅主题为必填项", + "telemetry-proto-schema": "遥测 proto 模式", + "telemetry-proto-schema-required": "遥测 proto 模式为必填项。", + "attributes-proto-schema": "属性 proto 模式", + "attributes-proto-schema-required": "属性 proto 模式为必填项。", + "rpc-response-proto-schema": "RPC 响应 proto 模式", + "rpc-response-proto-schema-required": "RPC 响应 proto 模式为必填项。", + "rpc-response-topic-filter": "RPC 响应主题过滤器", + "rpc-response-topic-filter-required": "RPC 响应主题过滤器为必填项。", + "rpc-request-proto-schema": "RPC 请求 proto 模式", + "rpc-request-proto-schema-required": "RPC 请求 proto 模式为必填项。", + "rpc-request-proto-schema-hint": "RPC 请求消息应始终包含以下字段:string method = 1;int32 requestId = 2;以及任意数据类型的 params = 3。", + "not-valid-pattern-topic-filter": "无效的模式主题过滤器", + "not-valid-single-character": "单级通配符使用无效", + "not-valid-multi-character": "多级通配符使用无效", + "single-level-wildcards-hint": "[+] 适用于任何主题过滤器级别。例如:v1/devices/+/telemetry+/devices/+/attributes。", + "multi-level-wildcards-hint": "[#] 可以替代主题过滤器本身,且必须是主题的最后一个符号。例如:#v1/devices/me/#。", + "alarm-rules": "告警规则", + "alarm-rules-with-count": "告警规则 ({{count}})", + "no-alarm-rules": "未配置告警规则", + "add-alarm-rule": "添加告警规则", + "edit-alarm-rule": "编辑告警规则", + "alarm-type": "告警类型", + "alarm-type-required": "告警类型为必填项。", + "alarm-type-unique": "告警类型在设备配置告警规则中必须唯一。", + "alarm-type-max-length": "告警类型长度不能超过 256", + "create-alarm-pattern": "创建 {{alarmType}} 告警", + "create-alarm-rules": "创建告警规则", + "no-create-alarm-rules": "未配置创建条件", + "add-create-alarm-rule-prompt": "请添加创建告警规则", + "clear-alarm-rule": "清除告警规则", + "no-clear-alarm-rule": "未配置清除条件", + "add-create-alarm-rule": "添加创建条件", + "add-clear-alarm-rule": "添加清除条件", + "select-alarm-severity": "选择告警严重程度", + "alarm-severity-required": "告警严重程度为必填项。", + "condition-duration": "条件持续时间", + "condition-duration-value": "持续时间值", + "condition-duration-time-unit": "时间单位", + "condition-duration-value-range": "持续时间值应在 1 到 2147483647 的范围内。", + "condition-duration-value-pattern": "持续时间值应为整数。", + "condition-duration-value-required": "持续时间值为必填项。", + "condition-duration-time-unit-required": "时间单位为必填项。", + "advanced-settings": "高级设置", + "alarm-rule-additional-info": "附加信息", + "edit-alarm-rule-additional-info": "编辑附加信息", + "alarm-rule-additional-info-placeholder": "请在此提供您的备注和调整内容,以在告警详情的附加信息中显示", + "alarm-rule-additional-info-hint": "提示:使用 ${keyName} 替换告警规则条件中使用的属性或遥测键的值。", + "alarm-rule-mobile-dashboard": "移动端仪表板", + "alarm-rule-mobile-dashboard-hint": "移动应用使用此仪表板作为告警详情仪表板", + "alarm-rule-no-mobile-dashboard": "未选择仪表板", + "propagate-alarm": "将告警传播到关联实体", + "alarm-rule-relation-types-list": "关联类型", + "alarm-rule-relation-types-list-hint": "定义关联类型以过滤关联实体。如果未设置,告警将传播到所有关联实体。", + "propagate-alarm-to-owner": "将告警传播到实体所有者(客户或租户)", + "propagate-alarm-to-tenant": "将告警传播到租户", + "alarm-rule-condition": "告警规则条件", + "enter-alarm-rule-condition-prompt": "请添加告警规则条件", + "edit-alarm-rule-condition": "编辑告警规则条件", + "device-provisioning": "设备预配置", + "provision-strategy": "预配置策略", + "provision-strategy-required": "预配置策略为必填项。", + "provision-strategy-disabled": "已禁用", + "provision-strategy-created-new": "允许创建新设备", + "provision-strategy-check-pre-provisioned": "检查预配置设备", + "provision-device-key": "设备预配置密钥", + "provision-device-key-required": "设备预配置密钥为必填项。", + "copy-provision-key": "复制预配置密钥", + "provision-key-copied-message": "预配置密钥已复制到剪贴板", + "provision-device-secret": "设备预配置密码", + "provision-device-secret-required": "设备预配置密码为必填项。", + "copy-provision-secret": "复制预配置密码", + "provision-secret-copied-message": "预配置密码已复制到剪贴板", + "provision-strategy-x509": { + "certificate-chain": "X509 证书链", + "certificate-chain-hint": "X.509 证书策略用于在双向 TLS 通信中通过客户端证书预配置设备。", + "allow-create-new-devices": "创建新设备", + "allow-create-new-devices-hint": "如果选中,将创建新设备,并使用客户端证书作为设备凭据。", + "certificate-value": "PEM 格式证书", + "certificate-value-required": "PEM 格式证书为必填项", + "cn-regex-variable": "CN 正则表达式变量", + "cn-regex-variable-required": "CN 正则表达式变量为必填项", + "cn-regex-variable-hint": "需要从设备 X509 证书的通用名称中提取设备名称。" + }, + "condition": "条件", + "condition-type": "条件类型", + "condition-type-simple": "简单", + "condition-type-duration": "持续时间", + "condition-during": "持续 {{during}}", + "condition-during-dynamic": "持续 \"{{ attribute }}\" ({{during}})", + "condition-type-repeating": "重复", + "condition-type-required": "条件类型为必填项。", + "condition-repeating-value": "事件次数", + "condition-repeating-value-range": "事件次数应在 1 到 2147483647 的范围内。", + "condition-repeating-value-pattern": "事件次数应为整数。", + "condition-repeating-value-required": "事件次数为必填项。", + "condition-repeat-times": "重复 { count, plural, =1 {1 次} other {# 次} }", + "condition-repeat-times-dynamic": "重复 \"{ attribute }\" ({ count, plural, =1 {1 次} other {# 次} })", + "schedule-type": "调度器类型", + "schedule-type-required": "调度器类型为必填项。", + "schedule": "调度", + "edit-schedule": "编辑告警调度", + "schedule-any-time": "始终活动", + "schedule-specific-time": "在特定时间活动", + "schedule-custom": "自定义", + "schedule-day": { + "monday": "星期一", + "tuesday": "星期二", + "wednesday": "星期三", + "thursday": "星期四", + "friday": "星期五", + "saturday": "星期六", + "sunday": "星期日" + }, + "schedule-days": "天数", + "schedule-time": "时间", + "schedule-time-from": "从", + "schedule-time-to": "到", + "schedule-days-of-week-required": "至少应选择一个星期几。", + "create-device-profile": "创建新设备配置", + "import": "导入设备配置", + "export": "导出设备配置", + "export-failed-error": "无法导出设备配置:{{error}}", + "device-profile-file": "设备配置文件", + "invalid-device-profile-file-error": "无法导入设备配置:无效的设备配置数据结构。", + "power-saving-mode": "省电模式", + "power-saving-mode-type": { + "default": "使用设备配置省电模式", + "psm": "省电模式 (PSM)", + "drx": "非连续接收 (DRX)", + "edrx": "扩展非连续接收 (eDRX)" + }, + "edrx-cycle": "eDRX 周期", + "edrx-cycle-required": "eDRX 周期为必填项。", + "edrx-cycle-pattern": "eDRX 周期必须为正整数。", + "edrx-cycle-min": "eDRX 周期最小值为 {{ min }} 秒。", + "paging-transmission-window": "寻呼传输窗口", + "paging-transmission-window-required": "寻呼传输窗口为必填项。", + "paging-transmission-window-pattern": "寻呼传输窗口必须为正整数。", + "paging-transmission-window-min": "寻呼传输窗口最小值为 {{ min }} 秒。", + "psm-activity-timer": "PSM 活动定时器", + "psm-activity-timer-required": "PSM 活动定时器为必填项。", + "psm-activity-timer-pattern": "PSM 活动定时器必须为正整数。", + "psm-activity-timer-min": "PSM 活动定时器最小值为 {{ min }} 秒。", + "lwm2m": { + "object-list": "对象列表", + "object-list-empty": "未选择任何对象。", + "no-objects-found": "未找到对象。", + "no-objects-matching": "未找到与 '{{object}}' 匹配的对象。", + "model-tab": "LWM2M 模型", + "add-new-instances": "添加新实例", + "instances-list": "实例列表", + "instances-list-required": "实例列表为必填项。", + "instance-id-pattern": "实例 ID 必须为正整数。", + "instance-id-max": "实例 ID 最大值为 {{max}}。", + "instance": "实例", + "resource-label": "#ID 资源名称", + "observe-label": "观察", + "attribute-label": "属性", + "telemetry-label": "遥测", + "edit-observe-select": "要编辑观察,请选择遥测或属性", + "edit-attributes-select": "要编辑属性,请选择遥测或属性", + "no-attributes-set": "未设置属性", + "key-name": "键名称", + "key-name-required": "键名称为必填项", + "attribute-name": "属性名称", + "attribute-name-required": "属性名称为必填项。", + "attribute-value": "属性值", + "attribute-value-required": "属性值为必填项。", + "attribute-value-pattern": "属性值必须为正整数。", + "edit-attributes": "编辑属性:{{ name }}", + "view-attributes": "查看属性:{{ name }}", + "add-attribute": "添加属性", + "edit-attribute": "编辑属性", + "view-attribute": "查看属性", + "remove-attribute": "移除属性", + "delete-server-text": "请注意,确认后服务器配置将无法恢复。", + "delete-server-title": "确定要删除该服务器吗?", + "mode": "安全配置模式", + "bootstrap-tab": "Bootstrap", + "bootstrap-server-legend": "Bootstrap 服务器 (ShortId...)", + "lwm2m-server-legend": "LwM2M 服务器 (ShortId...)", + "server": "服务器", + "short-id": "服务器短 ID", + "short-id-tooltip": "服务器短 Id。用作关联服务器对象实例的链接。\n此标识符唯一标识为 LwM2M 客户端配置的每个 LwM2M 服务器。\n当 Bootstrap-Server 资源的值为 'false' 时,必须设置此资源。\nID:0 和 ID:65535 的值不得用于标识 LwM2M 服务器。", + "short-id-tooltip-bootstrap": "服务器短 Id。用作关联服务器对象实例的链接。\n此标识符唯一标识为 LwM2M 客户端配置的每个 LwM2M 服务器。\n当 Bootstrap-Server 资源的值为 'false' 时,必须设置此资源。", + "short-id-required": "服务器短 ID 为必填项。", + "short-id-range": "服务器短 ID 应在 {{ min }} 到 {{ max }} 的范围内。", + "short-id-pattern": "服务器短 ID 必须为正整数。", + "short-id-pattern-bs": "服务器短 ID 必须仅为 null", + "lifetime": "客户端注册生命周期", + "lifetime-required": "客户端注册生命周期为必填项。", + "lifetime-pattern": "客户端注册生命周期必须为正整数。", + "default-min-period": "两次通知之间的最小周期(秒)", + "default-min-period-tooltip": "在观察中未包含此参数时,LwM2M 客户端应使用的默认最小观察周期值。", + "default-min-period-required": "最小周期为必填项。", + "default-min-period-pattern": "最小周期必须为正整数。", + "notification-storing": "禁用或离线时的通知存储", + "binding": "绑定", + "binding-type": { + "u": "U:客户端可随时通过 UDP 绑定访问。", + "m": "M:客户端可随时通过 MQTT 绑定访问。", + "h": "H:客户端可随时通过 HTTP 绑定访问。", + "t": "T:客户端可随时通过 TCP 绑定访问。", + "s": "S:客户端可随时通过 SMS 绑定访问。", + "n": "N:客户端必须通过非 IP 绑定发送此类请求的响应(自 LWM2M 1.1 起支持)。", + "uq": "UQ:UDP 队列模式连接(自 LWM2M 1.1 起不再支持)", + "uqs": "UQS:UDP 和 SMS 连接同时活动;UDP 为队列模式,SMS 为标准模式(自 LWM2M 1.1 起不再支持)", + "tq": "TQ:TCP 队列模式连接(自 LWM2M 1.1 起不再支持)", + "tqs": "TQS:TCP 和 SMS 连接同时活动;TCP 为队列模式,SMS 为标准模式(自 LWM2M 1.1 起不再支持)", + "sq": "SQ:SMS 队列模式连接(自 LWM2M 1.1 起不再支持)" + }, + "binding-tooltip": "这是 LwM2M 服务器对象 - /1/x/7 中“binding”资源的列表。\n指示 LwM2M 客户端支持的绑定模式。\n此值应与设备对象 (/3/0/16) 中“Supported Binding and Modes”资源的值相同。\n虽然支持多种传输方式,但在整个传输会话期间只能使用一种传输绑定。\n例如,当同时支持 UDP 和 SMS 时,LwM2M 客户端和 LwM2M 服务器可以选择在整个传输会话期间通过 UDP 或 SMS 进行通信。", + "bootstrap-server": "Bootstrap 服务器", + "lwm2m-server": "LwM2M 服务器", + "include-bootstrap-server": "包含 Bootstrap 服务器更新", + "bootstrap-update-title": "您已配置了 Bootstrap 服务器。确定要排除更新吗?", + "bootstrap-update-text": "请注意,确认后 Bootstrap 服务器配置数据将无法恢复。", + "server-host": "主机", + "server-host-required": "主机为必填项。", + "server-port": "端口", + "server-port-required": "端口为必填项。", + "server-port-pattern": "端口必须为正整数。", + "server-port-range": "端口应在 1 到 65535 的范围内。", + "server-public-key": "服务器公钥", + "server-public-key-required": "服务器公钥为必填项。", + "client-hold-off-time": "Hold Off 时间", + "client-hold-off-time-required": "Hold Off 时间为必填项。", + "client-hold-off-time-pattern": "Hold Off 时间必须为正整数。", + "client-hold-off-time-tooltip": "Client Hold Off 时间仅用于 Bootstrap 服务器", + "account-after-timeout": "超时后的账户", + "account-after-timeout-required": "超时后的账户为必填项。", + "account-after-timeout-pattern": "超时后的账户必须为正整数。", + "account-after-timeout-tooltip": "Bootstrap 服务器在此资源给定的超时值后的账户。", + "server-type": "服务器类型", + "add-new-server-title": "添加新服务器配置", + "add-server-config": "添加服务器配置", + "add-lwm2m-server-config": "添加 LwM2M 服务器", + "no-config-servers": "未配置服务器", + "others-tab": "其他设置", + "ota-update": "OTA 更新", + "use-object-19-for-ota-update": "使用 Object 19 获取 OTA 文件元数据(校验和、大小、版本、名称)", + "use-object-19-for-ota-update-hint": "使用 Resource ObjectId = 19 进行 OTA 更新:FirmWare → InstanceId = 65534,SoftWare → InstanceId = 65535。数据格式为 Base64 包装的 JSON。此 JSON 包含 OTA 文件元数据(文件信息):\"Checksum\" (SHA256)。附加字段:\"Title\"(OTA 名称)、\"Version\"(OTA 版本)、\"File Name\"(在客户端存储 OTA 的文件名)、\"File Size\"(OTA 大小,以字节为单位)。", + "client-strategy": "连接时的客户端策略", + "client-strategy-label": "策略", + "client-strategy-only-observe": "初始连接后仅向客户端发送 Observe 请求", + "client-strategy-read-all": "注册后读取所有资源并向客户端发送 Observe 请求", + "fw-update": "固件更新", + "fw-update-strategy": "固件更新策略", + "fw-update-strategy-data": "使用 Object 19 和 Resource 0 (Data) 以二进制文件推送固件更新", + "fw-update-strategy-package": "使用 Object 5 和 Resource 0 (Package) 以二进制文件推送固件更新", + "fw-update-strategy-package-uri": "自动生成唯一 CoAP URL 下载软件包,并以 Object 5 和 Resource 1 (Package URI) 推送固件更新", + "sw-update": "软件更新", + "sw-update-strategy": "软件更新策略", + "sw-update-strategy-package": "使用 Object 9 和 Resource 2 (Package) 推送二进制文件", + "sw-update-strategy-package-uri": "自动生成唯一 CoAP URL 下载软件包,并使用 Object 9 和 Resource 3 (Package URI) 推送软件更新", + "fw-update-resource": "固件更新 CoAP 资源", + "fw-update-resource-required": "固件更新 CoAP 资源为必填项。", + "sw-update-resource": "软件更新 CoAP 资源", + "sw-update-resource-required": "软件更新 CoAP 资源为必填项。", + "config-json-tab": "Json 配置设备配置", + "attributes-name": { + "min-period": "最小周期", + "max-period": "最大周期", + "greater-than": "大于", + "less-than": "小于", + "step": "步长", + "min-evaluation-period": "最小评估周期", + "max-evaluation-period": "最大评估周期" + }, + "default-object-id": "默认对象版本(属性)", + "default-object-id-ver": { + "v1-0": "1.0", + "v1-1": "1.1", + "v1-2": "1.2" + }, + "observe-strategy": { + "observe-strategy": "观察策略", + "single": "单个", + "single-description": "每个资源一个 Observe 请求(精度更高,网络流量更大)", + "composite-all": "全部组合", + "composite-all-description": "所有资源使用单个 Composite Observe 请求进行观察(更高效,灵活性较低)", + "composite-by-object": "按对象组合", + "composite-by-object-description": "资源按对象类型分组,使用单独的 Composite Observe 请求进行观察(平衡方案)" + }, + "init-attr-tel-as-obs-strategy": "使用观察策略初始化属性和遥测", + "init-attr-tel-as-obs-strategy-hint": "如果为 false,属性和遥测通过逐一读取其值来初始化。\\n如果为 true,属性和遥测通过使用观察策略订阅其值来初始化。" + }, + "snmp": { + "add-communication-config": "添加通信配置", + "add-mapping": "添加映射", + "authentication-passphrase": "认证密码短语", + "authentication-passphrase-required": "认证密码短语为必填项。", + "authentication-protocol": "认证协议", + "authentication-protocol-required": "认证协议为必填项。", + "communication-configs": "通信配置", + "community": "Community 字符串", + "community-required": "Community 字符串为必填项。", + "context-name": "上下文名称", + "data-key": "数据键", + "data-key-required": "数据键为必填项。", + "data-type": "数据类型", + "data-type-required": "数据类型为必填项。", + "engine-id": "Engine ID", + "host": "主机", + "host-required": "主机为必填项。", + "oid": "OID", + "oid-pattern": "OID 格式无效。", + "oid-required": "OID 为必填项。", + "please-add-communication-config": "请添加通信配置", + "please-add-mapping-config": "请添加映射配置", + "port": "端口", + "port-format": "端口格式无效。", + "port-required": "端口为必填项。", + "privacy-passphrase": "隐私密码短语", + "privacy-passphrase-required": "隐私密码短语为必填项。", + "privacy-protocol": "隐私协议", + "privacy-protocol-required": "隐私协议为必填项。", + "protocol-version": "协议版本", + "protocol-version-required": "协议版本为必填项。", + "querying-frequency": "查询频率(毫秒)", + "querying-frequency-invalid-format": "查询频率必须为正整数。", + "querying-frequency-required": "查询频率为必填项。", + "retries": "重试次数", + "retries-invalid-format": "重试次数必须为正整数。", + "retries-required": "重试次数为必填项。", + "scope": "范围", + "scope-required": "范围为必填项。", + "security-name": "安全名称", + "security-name-required": "安全名称为必填项。", + "timeout-ms": "超时(毫秒)", + "timeout-ms-invalid-format": "超时必须为正整数。", + "timeout-ms-required": "超时为必填项。", + "user-name": "用户名", + "user-name-required": "用户名为必填项。" + } + }, + "dialog": { + "close": "关闭对话框", + "error-message-title": "错误消息:", + "error-details-title": "错误详情" + }, + "direction": { + "column": "列", + "row": "行" + }, + "edge": { + "edge": "Edge", + "edge-instances": "Edge 实例", + "instances": "实例", + "edge-file": "Edge 文件", + "name-max-length": "名称长度不能超过 256", + "label-max-length": "标签长度不能超过 256", + "type-max-length": "类型长度不能超过 256", + "management": "Edge 管理", + "no-edges-matching": "未找到与 '{{entity}}' 匹配的 Edge。", + "add": "添加 Edge", + "no-edges-text": "未找到 Edge", + "edge-details": "Edge 详情", + "add-edge-text": "添加新 Edge", + "delete": "删除 Edge", + "delete-edge-title": "确定要删除 Edge '{{edgeName}}' 吗?", + "delete-edge-text": "请注意,确认后 Edge 及所有相关数据将无法恢复。", + "delete-edges-title": "确定要删除 { count, plural, =1 {1 个 Edge} other {# 个 Edge} } 吗?", + "delete-edges-text": "请注意,确认后所有选中的 Edge 将被移除,所有相关数据将无法恢复。", + "name": "名称", + "name-starts-with": "Edge 名称开头为", + "name-required": "名称为必填项。", + "description": "描述", + "details": "详情", + "events": "事件", + "copy-id": "复制 Edge Id", + "id-copied-message": "Edge Id 已复制到剪贴板", + "sync": "同步 Edge", + "edge-required": "Edge 为必填项", + "edge-type": "Edge 类型", + "edge-type-required": "Edge 类型为必填项。", + "event-action": "事件操作", + "entity-id": "实体 ID", + "select-edge-type": "选择 Edge 类型", + "assign-to-customer": "分配给客户", + "assign-to-customer-text": "请选择要分配 Edge 的客户", + "assign-edge-to-customer": "将 Edge 分配给客户", + "assign-edge-to-customer-text": "请选择要分配给客户的 Edge", + "assignedToCustomer": "已分配给客户", + "edge-public": "Edge 为公开", + "assigned-to-customer": "已分配给:{{customerTitle}}", + "unassign-from-customer": "取消分配客户", + "unassign-edge-title": "确定要取消分配 Edge '{{edgeName}}' 吗?", + "unassign-edge-text": "确认后,Edge 将被取消分配,客户将无法访问。", + "unassign-edges-title": "确定要取消分配 { count, plural, =1 {1 个 Edge} other {# 个 Edge} } 吗?", + "unassign-edges-text": "确认后,所有选中的 Edge 将被取消分配,客户将无法访问。", + "make-public": "将 Edge 设为公开", + "make-public-edge-title": "确定要将 Edge '{{edgeName}}' 设为公开吗?", + "make-public-edge-text": "确认后,Edge 及其所有数据将设为公开并可被其他人访问。", + "make-private": "将 Edge 设为私有", + "public": "公开", + "make-private-edge-title": "确定要将 Edge '{{edgeName}}' 设为私有吗?", + "make-private-edge-text": "确认后,Edge 及其所有数据将设为私有,其他人将无法访问。", + "import": "导入 Edge", + "install-connect-instructions": "安装和连接说明", + "install-connect-instructions-edge-created": "Edge 已创建!请查看安装和连接说明", + "loading-edge-instructions": "正在加载 Edge 说明...", + "label": "标签", + "load-entity-error": "加载数据失败。实体已被删除。", + "assign-new-edge": "分配新 Edge", + "unassign-from-edge": "取消分配 Edge", + "edge-key": "Edge 密钥", + "copy-edge-key": "复制 Edge 密钥", + "edge-key-copied-message": "Edge 密钥已复制到剪贴板", + "edge-secret": "Edge 密码", + "copy-edge-secret": "复制 Edge 密码", + "edge-secret-copied-message": "Edge 密码已复制到剪贴板", + "manage-assets": "管理资产", + "manage-devices": "管理设备", + "manage-entity-views": "管理实体视图", + "manage-dashboards": "管理仪表板", + "manage-rulechains": "管理规则链", + "assets": "Edge 资产", + "devices": "Edge 设备", + "entity-views": "Edge 实体视图", + "dashboard": "Edge 仪表板", + "dashboards": "Edge 仪表板", + "rulechain-templates": "规则链模板", + "edge-rulechain-templates": "Edge 规则链模板", + "rulechains": "Edge 规则链", + "search": "搜索 Edge", + "selected-edges": "{ count, plural, =1 {1 个 Edge} other {# 个 Edge} }已选择", + "any-edge": "任意 Edge", + "no-edge-types-matching": "未找到与 '{{entitySubtype}}' 匹配的 Edge 类型。", + "edge-type-list-empty": "未选择 Edge 类型。", + "edge-types": "Edge 类型", + "enter-edge-type": "输入 Edge 类型", + "deployed": "已部署", + "pending": "待处理", + "downlinks": "下行链路", + "no-downlinks-prompt": "未找到下行链路", + "sync-process-started-successfully": "同步过程已成功启动!", + "missing-related-rule-chains-title": "Edge 缺少关联的规则链", + "missing-related-rule-chains-text": "分配给 Edge 的规则链使用了将消息转发到未分配给此 Edge 的规则链的规则节点。

缺少的规则链列表:
{{missingRuleChains}}", + "widget-datasource-error": "此部件仅支持 Edge 实体数据源", + "upgrade-instructions": "升级说明", + "connected": "已连接", + "disconnected": "已断开" + }, + "edge-event": { + "type-dashboard": "仪表板", + "type-asset": "资产", + "type-device": "设备", + "type-device-profile": "设备配置", + "type-asset-profile": "资产配置", + "type-entity-view": "实体视图", + "type-alarm": "告警", + "type-rule-chain": "规则链", + "type-rule-chain-metadata": "规则链元数据", + "type-edge": "Edge", + "type-user": "用户", + "type-tenant": "租户", + "type-tenant-profile": "租户配置", + "type-customer": "客户", + "type-relation": "关联", + "type-widgets-bundle": "部件包", + "type-widgets-type": "部件类型", + "type-admin-settings": "管理员设置", + "type-ota-package": "OTA 软件包", + "type-queue": "队列", + "action-type-added": "已添加", + "action-type-deleted": "已删除", + "action-type-updated": "已更新", + "action-type-post-attributes": "发布属性", + "action-type-attributes-updated": "属性已更新", + "action-type-attributes-deleted": "属性已删除", + "action-type-timeseries-updated": "时间序列已更新", + "action-type-credentials-updated": "凭据已更新", + "action-type-assigned-to-customer": "已分配给客户", + "action-type-unassigned-from-customer": "已取消分配客户", + "action-type-relation-add-or-update": "关联添加或更新", + "action-type-relation-deleted": "关联已删除", + "action-type-rpc-call": "RPC 调用", + "action-type-alarm-ack": "告警确认", + "action-type-alarm-clear": "告警清除", + "action-type-alarm-assigned": "告警已分配", + "action-type-alarm-unassigned": "告警已取消分配", + "action-type-assigned-to-edge": "已分配到 Edge", + "action-type-unassigned-from-edge": "已取消分配 Edge", + "action-type-credentials-request": "凭据请求", + "action-type-entity-merge-request": "实体合并请求" + }, + "error": { + "unable-to-connect": "无法连接到服务器!请检查您的网络连接。", + "unhandled-error-code": "未处理的错误代码:{{errorCode}}", + "unknown-error": "未知错误" + }, + "entity": { + "entity": "实体", + "entities": "实体", + "entities-count": "实体数量", + "alarms-count": "告警数量", + "aliases": "实体别名", + "aliases-short": "别名", + "entity-alias": "实体别名", + "unable-delete-entity-alias-title": "无法删除实体别名", + "unable-delete-entity-alias-text": "实体别名 '{{entityAlias}}' 无法删除,因为它被以下部件使用:
{{widgetsList}}", + "duplicate-alias-error": "发现重复别名 '{{alias}}'。
实体别名在仪表板中必须唯一。", + "missing-entity-filter-error": "别名 '{{alias}}' 缺少过滤器。", + "configure-alias": "配置 '{{alias}}' 别名", + "alias": "别名", + "alias-required": "实体别名为必填项。", + "remove-alias": "移除实体别名", + "add-alias": "添加实体别名", + "edit-alias": "编辑实体别名", + "entity-list": "实体列表", + "entity-type": "实体类型", + "entity-types": "实体类型", + "entity-type-list": "实体类型列表", + "any-entity": "任意实体", + "add-entity-type": "添加实体类型", + "enter-entity-type": "输入实体类型", + "no-entities-matching": "未找到与 '{{entity}}' 匹配的实体。", + "no-entities-text": "未找到实体", + "no-entity-types-matching": "未找到与 '{{entityType}}' 匹配的实体类型。", + "name-starts-with": "名称表达式", + "help-text": "根据需要使用 '%':'%entity_name_contains%'、'%entity_name_ends'、'entity_starts_with%'。", + "use-entity-name-filter": "使用过滤器", + "entity-list-empty": "未选择实体。", + "entity-type-list-required": "至少应选择一种实体类型。", + "entity-name-filter-required": "实体名称过滤器为必填项。", + "entity-name-filter-no-entity-matched": "未找到以 '{{entity}}' 开头的实体。", + "all-subtypes": "全部", + "select-entities": "选择实体", + "no-aliases-found": "未找到别名。", + "no-alias-matching": "未找到 '{{alias}}'。", + "create-new-alias": "创建新别名!", + "create-new": "创建新的", + "key": "键", + "key-name": "键名称", + "no-keys-found": "未找到键。", + "no-key-matching": "未找到 '{{key}}'。", + "create-new-key": "创建新键!", + "type": "类型", + "type-required": "实体类型为必填项。", + "type-device": "设备", + "type-devices": "设备", + "list-of-devices": "{ count, plural, =1 {1 个设备} other {# 个设备列表} }", + "device-name-starts-with": "名称以 '{{prefix}}' 开头的设备", + "type-device-profile": "设备配置", + "type-device-profiles": "设备配置", + "clear-selected-profiles": "清除已选配置", + "list-of-device-profiles": "{ count, plural, =1 {1 个设备配置} other {# 个设备配置列表} }", + "device-profile-name-starts-with": "名称以 '{{prefix}}' 开头的设备配置", + "type-asset-profile": "资产配置", + "type-asset-profiles": "资产配置", + "list-of-asset-profiles": "{ count, plural, =1 {1 个资产配置} other {# 个资产配置列表} }", + "asset-profile-name-starts-with": "名称以 '{{prefix}}' 开头的资产配置", + "type-asset": "资产", + "type-assets": "资产", + "list-of-assets": "{ count, plural, =1 {1 个资产} other {# 个资产列表} }", + "asset-name-starts-with": "名称以 '{{prefix}}' 开头的资产", + "type-entity-view": "实体视图", + "type-entity-views": "实体视图", + "list-of-entity-views": "{ count, plural, =1 {1 个实体视图} other {# 个实体视图列表} }", + "entity-view-name-starts-with": "名称以 '{{prefix}}' 开头的实体视图", + "type-rule": "规则", + "type-rules": "规则", + "list-of-rules": "{ count, plural, =1 {1 条规则} other {# 条规则列表} }", + "rule-name-starts-with": "名称以 '{{prefix}}' 开头的规则", + "type-plugin": "插件", + "type-plugins": "插件", + "list-of-plugins": "{ count, plural, =1 {1 个插件} other {# 个插件列表} }", + "plugin-name-starts-with": "名称以 '{{prefix}}' 开头的插件", + "type-tenant": "租户", + "type-tenants": "租户", + "list-of-tenants": "{ count, plural, =1 {1 个租户} other {# 个租户列表} }", + "tenant-name-starts-with": "名称以 '{{prefix}}' 开头的租户", + "type-tenant-profile": "租户配置", + "type-tenant-profiles": "租户配置", + "list-of-tenant-profiles": "{ count, plural, =1 {1 个租户配置} other {# 个租户配置列表} }", + "tenant-profile-name-starts-with": "名称以 '{{prefix}}' 开头的租户配置", + "type-customer": "客户", + "type-customers": "客户", + "list-of-customers": "{ count, plural, =1 {1 个客户} other {# 个客户列表} }", + "customer-name-starts-with": "名称以 '{{prefix}}' 开头的客户", + "type-user": "用户", + "type-users": "用户", + "list-of-users": "{ count, plural, =1 {1 个用户} other {# 个用户列表} }", + "user-name-starts-with": "名称以 '{{prefix}}' 开头的用户", + "type-dashboard": "仪表板", + "type-dashboards": "仪表板", + "list-of-dashboards": "{ count, plural, =1 {1 个仪表板} other {# 个仪表板列表} }", + "dashboard-name-starts-with": "名称以 '{{prefix}}' 开头的仪表板", + "type-alarm": "告警", + "type-alarms": "告警", + "list-of-alarms": "{ count, plural, =1 {1 个告警} other {# 个告警列表} }", + "alarm-name-starts-with": "名称以 '{{prefix}}' 开头的告警", + "type-rulechain": "规则链", + "type-rulechains": "规则链", + "list-of-rulechains": "{ count, plural, =1 {1 条规则链} other {# 条规则链列表} }", + "rulechain-name-starts-with": "名称以 '{{prefix}}' 开头的规则链", + "type-rulenode": "规则节点", + "type-rulenodes": "规则节点", + "list-of-rulenodes": "{ count, plural, =1 {1 个规则节点} other {# 个规则节点列表} }", + "rulenode-name-starts-with": "名称以 '{{prefix}}' 开头的规则节点", + "type-api-key": "API 密钥", + "type-api-keys": "API 密钥", + "type-current-customer": "当前客户", + "type-current-tenant": "当前租户", + "type-current-user": "当前用户", + "type-current-user-owner": "当前用户所有者", + "type-calculated-field": "计算字段", + "type-calculated-fields": "计算字段", + "type-ai-model": "AI 模型", + "type-ai-models": "AI 模型", + "type-widgets-bundle": "部件包", + "type-widgets-bundles": "部件包", + "list-of-widgets-bundles": "{ count, plural, =1 {1 个部件包} other {# 个部件包列表} }", + "type-widget": "部件", + "type-widgets": "部件", + "list-of-widgets": "{ count, plural, =1 {1 个部件} other {# 个部件列表} }", + "search": "搜索实体", + "selected-entities": "{ count, plural, =1 {1 个实体} other {# 个实体} }已选择", + "entity-name": "实体名称", + "entity-label": "实体标签", + "details": "实体详情", + "no-entities-prompt": "未找到实体", + "no-data": "无数据可显示", + "show-all-columns": "显示全部", + "columns-to-display": "显示列", + "type-api-usage-state": "API 使用状态", + "type-edge": "Edge", + "type-edges": "Edge", + "list-of-edges": "{ count, plural, =1 {1 个 Edge} other {# 个 Edge 列表} }", + "edge-name-starts-with": "名称以 '{{prefix}}' 开头的 Edge", + "version-conflict": { + "message": "您要覆盖现有版本还是放弃更改并加载最新版本?", + "link": "您可以使用此链接下载您的 {{entityType}} 版本", + "overwrite": "覆盖版本", + "discard": "放弃更改" + }, + "type-tb-resource": "资源", + "type-tb-resources": "资源", + "list-of-tb-resources": "{ count, plural, =1 {1 个资源} other {# 个资源列表} }", + "type-ota-package": "OTA 软件包", + "type-ota-packages": "OTA 软件包", + "list-of-ota-packages": "{ count, plural, =1 {1 个 OTA 软件包} other {# 个 OTA 软件包列表} }", + "type-rpc": "RPC", + "type-queue": "队列", + "type-queue-stats": "队列统计", + "type-queues-stats": "队列统计", + "type-notification": "通知", + "type-notification-rule": "通知规则", + "type-notification-rules": "通知规则", + "list-of-notification-rules": "{ count, plural, =1 {1 个通知规则} other {# 个通知规则列表} }", + "type-notification-target": "通知接收者", + "type-notification-targets": "通知接收者", + "list-of-notification-targets": "{ count, plural, =1 {1 个通知接收者} other {# 个通知接收者列表} }", + "type-notification-request": "通知请求", + "type-notification-template": "通知模板", + "type-notification-templates": "通知模板", + "list-of-notification-templates": "{ count, plural, =1 {1 个通知模板} other {# 个通知模板列表} }", + "link": "链接", + "type-oauth2-client": "OAuth 2.0 客户端", + "type-oauth2-clients": "OAuth 2.0 客户端", + "list-of-oauth2-clients": "{ count, plural, =1 {1 个 OAuth 2.0 客户端} other {# 个 OAuth 2.0 客户端列表} }", + "type-domain": "域名", + "type-domains": "域名", + "list-of-domains": "{ count, plural, =1 {1 个域名} other {# 个域名列表} }", + "type-mobile-app": "移动应用", + "type-mobile-apps": "移动应用", + "list-of-mobile-apps": "{ count, plural, =1 {1 个移动应用} other {# 个移动应用列表} }", + "type-mobile-app-bundle": "移动包", + "type-mobile-app-bundles": "移动包", + "list-of-mobile-app-bundles": "{ count, plural, =1 {1 个移动包} other {# 个移动包列表} }", + "limit-reached": "已达上限", + "limit-reached-text": "您已达到 {{ entities }} 的上限。要添加更多,请联系系统管理员增加您的 {{ entity }} 上限。", + "request-limit-increase": "请求增加上限", + "request-sysadmin-text": "您是系统管理员吗?", + "login-here": "在此登录", + "to-increase-limit": "以增加上限。", + "increase-limit-request-sent-title": "我们已向您的系统管理员发送了自动请求以增加上限", + "increase-limit-request-sent-text": "请等待他们审核请求并更新设置。您可能需要刷新此页面以查看更改。" + }, + "entity-field": { + "created-time": "创建时间", + "name": "名称", + "type": "类型", + "first-name": "名", + "last-name": "姓", + "email": "Email", + "title": "标题", + "country": "国家", + "state": "省/州", + "city": "城市", + "address": "地址", + "address2": "地址 2", + "zip": "邮编", + "phone": "电话", + "label": "标签", + "queue-name": "队列名称", + "service-id": "服务 Id", + "owner-name": "所有者名称", + "owner-type": "所有者类型" + }, + "entity-view": { + "entity-view": "实体视图", + "entity-view-required": "实体视图为必填项。", + "entity-views": "实体视图", + "management": "实体视图管理", + "view-entity-views": "查看实体视图", + "entity-view-alias": "实体视图别名", + "aliases": "实体视图别名", + "no-alias-matching": "未找到 '{{alias}}'。", + "no-aliases-found": "未找到别名。", + "no-key-matching": "未找到 '{{key}}'。", + "no-keys-found": "未找到键。", + "create-new-alias": "创建新别名!", + "create-new-key": "创建新键!", + "duplicate-alias-error": "发现重复别名 '{{alias}}'。
实体视图别名在仪表板中必须唯一。", + "configure-alias": "配置 '{{alias}}' 别名", + "no-entity-views-matching": "未找到与 '{{entity}}' 匹配的实体视图。", + "public": "公开", + "alias": "别名", + "alias-required": "实体视图别名为必填项。", + "remove-alias": "移除实体视图别名", + "add-alias": "添加实体视图别名", + "name-starts-with": "实体视图名称表达式", + "help-text": "根据需要使用 '%':'%entity-view_name_contains%'、'%entity-view_name_ends'、'entity-view_starts_with%'。", + "entity-view-list": "实体视图列表", + "use-entity-view-name-filter": "使用过滤器", + "entity-view-list-empty": "未选择实体视图。", + "entity-view-name-filter-required": "实体视图名称过滤器为必填项。", + "entity-view-name-filter-no-entity-view-matched": "未找到以 '{{entityView}}' 开头的实体视图。", + "add": "添加实体视图", + "entity-view-public": "实体视图为公开", + "assign-to-customer": "分配给客户", + "assign-entity-view-to-customer": "将实体视图分配给客户", + "assign-entity-view-to-customer-text": "请选择要分配给客户的实体视图", + "no-entity-views-text": "未找到实体视图", + "assign-to-customer-text": "请选择要分配实体视图的客户", + "entity-view-details": "实体视图详情", + "add-entity-view-text": "添加新实体视图", + "delete": "删除实体视图", + "assign-entity-views": "分配实体视图", + "assign-entity-views-text": "将 { count, plural, =1 {1 个实体视图} other {# 个实体视图} } 分配给客户", + "delete-entity-views": "删除实体视图", + "make-public": "将实体视图设为公开", + "make-private": "将实体视图设为私有", + "unassign-from-customer": "取消分配客户", + "unassign-entity-views": "取消分配实体视图", + "unassign-entity-views-action-title": "取消分配 { count, plural, =1 {1 个实体视图} other {# 个实体视图} }", + "assign-new-entity-view": "分配新实体视图", + "delete-entity-view-title": "确定要删除实体视图 '{{entityViewName}}' 吗?", + "delete-entity-view-text": "请注意,确认后实体视图及所有相关数据将无法恢复。", + "delete-entity-views-title": "确定要删除 { count, plural, =1 {1 个实体视图} other {# 个实体视图} } 吗?", + "delete-entity-views-action-title": "删除 { count, plural, =1 {1 个实体视图} other {# 个实体视图} }", + "delete-entity-views-text": "请注意,确认后所有选中的实体视图将被移除,所有相关数据将无法恢复。", + "make-public-entity-view-title": "确定要将实体视图 '{{entityViewName}}' 设为公开吗?", + "make-public-entity-view-text": "确认后,实体视图及其所有数据将设为公开并可被其他人访问。", + "make-private-entity-view-title": "确定要将实体视图 '{{entityViewName}}' 设为私有吗?", + "make-private-entity-view-text": "确认后,实体视图及其所有数据将设为私有,其他人将无法访问。", + "unassign-entity-view-title": "确定要取消分配实体视图 '{{entityViewName}}' 吗?", + "unassign-entity-view-text": "确认后,实体视图将被取消分配,客户将无法访问。", + "unassign-entity-view": "取消分配实体视图", + "unassign-entity-views-title": "确定要取消分配 { count, plural, =1 {1 个实体视图} other {# 个实体视图} } 吗?", + "unassign-entity-views-text": "确认后,所有选中的实体视图将被取消分配,客户将无法访问。", + "entity-view-type": "实体视图类型", + "entity-view-type-required": "实体视图类型为必填项。", + "select-entity-view-type": "选择实体视图类型", + "enter-entity-view-type": "输入实体视图类型", + "any-entity-view": "任意实体视图", + "no-entity-view-types-matching": "未找到与 '{{entitySubtype}}' 匹配的实体视图类型。", + "entity-view-type-list-empty": "未选择实体视图类型。", + "entity-view-types": "实体视图类型", + "created-time": "创建时间", + "name": "名称", + "name-required": "名称为必填项。", + "name-max-length": "名称长度不能超过 256", + "type-max-length": "实体视图类型长度不能超过 256", + "description": "描述", + "events": "事件", + "details": "详情", + "copyId": "复制实体视图 Id", + "idCopiedMessage": "实体视图 Id 已复制到剪贴板", + "assignedToCustomer": "已分配给客户", + "unable-entity-view-device-alias-title": "无法删除实体视图别名", + "unable-entity-view-device-alias-text": "设备别名 '{{entityViewAlias}}' 无法删除,因为它被以下部件使用:
{{widgetsList}}", + "select-entity-view": "选择实体视图", + "start-ts": "开始时间", + "end-ts": "结束时间", + "date-limits": "日期限制", + "client-attributes": "客户端属性", + "shared-attributes": "共享属性", + "server-attributes": "服务端属性", + "timeseries": "时间序列", + "client-attributes-placeholder": "客户端属性", + "shared-attributes-placeholder": "共享属性", + "server-attributes-placeholder": "服务端属性", + "timeseries-placeholder": "时间序列", + "target-entity": "目标实体", + "attributes-propagation": "属性传播", + "attributes-propagation-hint": "实体视图将在每次保存或更新此实体视图时自动从目标实体复制指定的属性。出于性能考虑,每次属性更改时不会自动将目标实体属性传播到实体视图。您可以通过在规则链中配置“copy to view”规则节点并将“Post attributes”和“Attributes Updated”消息链接到新规则节点来启用自动传播。", + "timeseries-data": "时间序列数据", + "timeseries-data-hint": "配置实体视图可访问的目标实体时间序列数据键。此时间序列数据为只读。", + "search": "搜索实体视图", + "selected-entity-views": "{ count, plural, =1 {1 个实体视图} other {# 个实体视图} }已选择", + "assign-entity-view-to-edge": "将实体视图分配到 Edge", + "assign-entity-view-to-edge-text": "请选择要分配到 Edge 的实体视图", + "unassign-entity-view-from-edge-title": "确定要取消分配实体视图 '{{entityViewName}}' 吗?", + "unassign-entity-view-from-edge-text": "确认后,实体视图将被取消分配,Edge 将无法访问。", + "unassign-entity-views-from-edge-action-title": "取消分配 { count, plural, =1 {1 个实体视图} other {# 个实体视图} }", + "unassign-entity-view-from-edge": "取消分配实体视图", + "unassign-entity-views-from-edge-title": "确定要取消分配 { count, plural, =1 {1 个实体视图} other {# 个实体视图} } 吗?", + "unassign-entity-views-from-edge-text": "确认后,所有选中的实体视图将被取消分配,Edge 将无法访问。" + }, + "event": { + "event-type": "事件类型", + "events-filter": "事件过滤器", + "clean-events": "清除事件", + "type-error": "错误", + "type-lc-event": "生命周期事件", + "type-stats": "统计", + "type-debug-rule-node": "调试", + "type-debug-rule-chain": "调试", + "type-debug-calculated-field": "调试", + "arguments": "参数", + "result": "结果", + "no-events-prompt": "未找到事件", + "error": "错误", + "alarm": "告警", + "event-time": "事件时间", + "server": "服务器", + "body": "消息体", + "method": "方法", + "type": "类型", + "metadata": "元数据", + "message": "消息", + "message-id": "消息 Id", + "copy-message-id": "复制消息 Id", + "message-type": "消息类型", + "data-type": "数据类型", + "relation-type": "关联类型", + "data": "数据", + "event": "事件", + "status": "状态", + "success": "成功", + "failed": "失败", + "messages-processed": "已处理消息数", + "max-messages-processed": "最大已处理消息数", + "min-messages-processed": "最小已处理消息数", + "errors-occurred": "发生的错误数", + "max-errors-occurred": "最大错误数", + "min-errors-occurred": "最小错误数", + "min-value": "最小值为 0。", + "all-events": "全部", + "has-error": "有错误", + "entity-id": "实体 Id", + "copy-entity-id": "复制实体 Id", + "entity-type": "实体类型", + "clear-filter": "清除过滤器", + "clear-request-title": "清除所有事件", + "clear-request-text": "确定要清除所有事件吗?", + "started": "已启动", + "updated": "已更新", + "stopped": "已停止" + }, + "extension": { + "extensions": "扩展", + "selected-extensions": "{ count, plural, =1 {1 个扩展} other {# 个扩展} }已选择", + "type": "类型", + "key": "键", + "value": "值", + "id": "Id", + "extension-id": "扩展 Id", + "extension-type": "扩展类型", + "transformer-json": "JSON *", + "unique-id-required": "当前扩展 Id 已存在。", + "delete": "删除扩展", + "add": "添加扩展", + "edit": "编辑扩展", + "delete-extension-title": "确定要删除扩展 '{{extensionId}}' 吗?", + "delete-extension-text": "请注意,确认后扩展及所有相关数据将无法恢复。", + "delete-extensions-title": "确定要删除 { count, plural, =1 {1 个扩展} other {# 个扩展} } 吗?", + "delete-extensions-text": "请注意,确认后所有选中的扩展将被移除。", + "converters": "转换器", + "converter-id": "转换器 Id", + "configuration": "配置", + "converter-configurations": "转换器配置", + "token": "安全 Token", + "add-converter": "添加转换器", + "add-config": "添加转换器配置", + "device-name-expression": "设备名称表达式", + "device-type-expression": "设备类型表达式", + "custom": "自定义", + "to-double": "转为 Double", + "transformer": "转换器", + "json-required": "转换器 JSON 为必填项。", + "json-parse": "无法解析转换器 JSON。", + "attributes": "属性", + "add-attribute": "添加属性", + "add-map": "添加映射元素", + "timeseries": "时间序列", + "add-timeseries": "添加时间序列", + "field-required": "字段为必填项", + "brokers": "代理", + "add-broker": "添加代理", + "host": "主机", + "port": "端口", + "port-range": "端口应在 1 到 65535 的范围内。", + "ssl": "SSL", + "credentials": "凭据", + "username": "用户名", + "password": "密码", + "retry-interval": "重试间隔(毫秒)", + "anonymous": "匿名", + "basic": "基本", + "pem": "PEM", + "ca-cert": "CA 证书文件 *", + "private-key": "私钥文件 *", + "cert": "证书文件 *", + "no-file": "未选择文件。", + "drop-file": "拖放文件或点击选择要上传的文件。", + "mapping": "映射", + "topic-filter": "主题过滤器", + "converter-type": "转换器类型", + "converter-json": "Json", + "json-name-expression": "设备名称 JSON 表达式", + "topic-name-expression": "设备名称主题表达式", + "json-type-expression": "设备类型 JSON 表达式", + "topic-type-expression": "设备类型主题表达式", + "attribute-key-expression": "属性键表达式", + "attr-json-key-expression": "属性键 JSON 表达式", + "attr-topic-key-expression": "属性键主题表达式", + "request-id-expression": "请求 ID 表达式", + "request-id-json-expression": "请求 ID JSON 表达式", + "request-id-topic-expression": "请求 ID 主题表达式", + "response-topic-expression": "响应主题表达式", + "value-expression": "值表达式", + "topic": "主题", + "timeout": "超时(毫秒)", + "converter-json-required": "转换器 JSON 为必填项。", + "converter-json-parse": "无法解析转换器 JSON。", + "filter-expression": "过滤器表达式", + "connect-requests": "连接请求", + "add-connect-request": "添加连接请求", + "disconnect-requests": "断开连接请求", + "add-disconnect-request": "添加断开连接请求", + "attribute-requests": "属性请求", + "add-attribute-request": "添加属性请求", + "attribute-updates": "属性更新", + "add-attribute-update": "添加属性更新", + "server-side-rpc": "服务端 RPC", + "add-server-side-rpc-request": "添加服务端 RPC 请求", + "device-name-filter": "设备名称过滤器", + "attribute-filter": "属性过滤器", + "method-filter": "方法过滤器", + "request-topic-expression": "请求主题表达式", + "response-timeout": "响应超时(毫秒)", + "topic-expression": "主题表达式", + "client-scope": "客户端范围", + "add-device": "添加设备", + "opc-server": "服务器", + "opc-add-server": "添加服务器", + "opc-add-server-prompt": "请添加服务器", + "opc-application-name": "应用名称", + "opc-application-uri": "应用 URI", + "opc-scan-period-in-seconds": "扫描周期(秒)", + "opc-security": "安全", + "opc-identity": "身份", + "opc-keystore": "密钥库", + "opc-type": "类型", + "opc-keystore-type": "类型", + "opc-keystore-location": "位置 *", + "opc-keystore-password": "密码", + "opc-keystore-alias": "别名", + "opc-keystore-key-password": "密钥密码", + "opc-device-node-pattern": "设备节点模式", + "opc-device-name-pattern": "设备名称模式", + "modbus-server": "服务器/从机", + "modbus-add-server": "添加服务器/从机", + "modbus-add-server-prompt": "请添加服务器/从机", + "modbus-transport": "传输", + "modbus-tcp-reconnect": "自动重连", + "modbus-rtu-over-tcp": "RTU over TCP", + "modbus-port-name": "串口名称", + "modbus-encoding": "编码", + "modbus-parity": "校验", + "modbus-baudrate": "波特率", + "modbus-databits": "数据位", + "modbus-stopbits": "停止位", + "modbus-databits-range": "数据位应在 7 到 8 的范围内。", + "modbus-stopbits-range": "停止位应在 1 到 2 的范围内。", + "modbus-unit-id": "Unit ID", + "modbus-unit-id-range": "Unit ID 应在 1 到 247 的范围内。", + "modbus-device-name": "设备名称", + "modbus-poll-period": "轮询周期(毫秒)", + "modbus-attributes-poll-period": "属性轮询周期(毫秒)", + "modbus-timeseries-poll-period": "时间序列轮询周期(毫秒)", + "modbus-poll-period-range": "轮询周期应为正数值。", + "modbus-tag": "标签", + "modbus-function": "功能", + "modbus-register-address": "寄存器地址", + "modbus-register-address-range": "寄存器地址应在 0 到 65535 的范围内。", + "modbus-register-bit-index": "位索引", + "modbus-register-bit-index-range": "位索引应在 0 到 15 的范围内。", + "modbus-register-count": "寄存器数量", + "modbus-register-count-range": "寄存器数量应为正数值。", + "modbus-byte-order": "字节序", + "sync": { + "status": "状态", + "sync": "已同步", + "not-sync": "未同步", + "last-sync-time": "最后同步时间", + "not-available": "不可用" + }, + "export-extensions-configuration": "导出扩展配置", + "import-extensions-configuration": "导入扩展配置", + "import-extensions": "导入扩展", + "import-extension": "导入扩展", + "export-extension": "导出扩展", + "file": "扩展文件", + "invalid-file-error": "无效的扩展文件" + }, + "feature": { + "advanced-features": "高级功能" + }, + "filter": { + "add": "添加过滤器", + "edit": "编辑过滤器", + "name": "过滤器名称", + "name-required": "过滤器名称为必填项。", + "duplicate-filter": "已存在同名过滤器。", + "filters": "过滤器", + "unable-delete-filter-title": "无法删除过滤器", + "unable-delete-filter-text": "过滤器“{{filter}}”无法删除,因为它被以下部件使用:
{{widgetsList}}", + "duplicate-filter-error": "发现重复过滤器“{{filter}}”。
过滤器在仪表板中必须唯一。", + "missing-key-filters-error": "过滤器“{{filter}}”缺少键过滤器。", + "filter": "过滤器", + "editable": "可编辑", + "editable-hint": "允许用户在仪表板中更改过滤器值。", + "no-filters-found": "未找到过滤器。", + "no-filter-text": "未指定过滤器", + "add-filter-prompt": "请添加过滤器", + "no-filter-matching": "未找到“{{filter}}”。", + "create-new-filter": "创建新过滤器!", + "create-new": "创建", + "filter-required": "过滤器为必填项。", + "operation": { + "operation": "操作", + "equal": "等于", + "not-equal": "不等于", + "starts-with": "以…开头", + "ends-with": "以…结尾", + "contains": "包含", + "not-contains": "不包含", + "greater": "大于", + "less": "小于", + "greater-or-equal": "大于或等于", + "less-or-equal": "小于或等于", + "and": "且", + "or": "或", + "in": "在…中", + "not-in": "不在…中" + }, + "ignore-case": "忽略大小写", + "value": "值", + "remove-filter": "移除过滤器", + "duplicate-filter-action": "复制过滤器", + "preview": "过滤器预览", + "no-filters": "未配置过滤器", + "add-filter": "添加过滤器", + "add-complex-filter": "添加复合过滤器", + "add-complex": "添加复合", + "complex-filter": "复合过滤器", + "edit-complex-filter": "编辑复合过滤器", + "edit-filter-user-params": "编辑过滤器谓词用户参数", + "filter-user-params": "过滤器谓词用户参数", + "user-parameters": "用户参数", + "display-label": "显示标签", + "custom-label": "自定义标签", + "custom-label-hint": "启用后可设置自定义过滤器标签。禁用时将自动生成标签。", + "order-priority": "显示顺序", + "key-filter": "键过滤器", + "key-filters": "键过滤器", + "key-name": "键名称", + "key-name-required": "键名称为必填项。", + "key-type": { + "key-type": "键类型", + "attribute": "属性", + "timeseries": "时间序列", + "entity-field": "实体字段", + "constant": "常量", + "client-attribute": "客户端属性", + "server-attribute": "服务端属性", + "shared-attribute": "共享属性" + }, + "value-type": { + "value-type": "值类型", + "string": "字符串", + "numeric": "数值", + "boolean": "布尔值", + "date-time": "日期时间" + }, + "value-type-required": "键值类型为必填项。", + "key-value-type-change-title": "确定要更改键值类型吗?", + "key-value-type-change-message": "如果确认新值类型,所有已输入的键过滤器将被移除。", + "no-key-filters": "未配置键过滤器", + "add-key-filter": "添加键过滤器", + "remove-key-filter": "移除键过滤器", + "edit-key-filter": "编辑键过滤器", + "date": "日期", + "time": "时间", + "current-tenant": "当前租户", + "current-customer": "当前客户", + "current-user": "当前用户", + "current-device": "当前设备", + "default-value": "默认值", + "default-comma-separated-values": "默认逗号分隔值", + "dynamic-source-type": "动态源类型", + "dynamic-value": "动态值", + "no-dynamic-value": "无动态值", + "source-attribute": "源属性", + "switch-to-dynamic-value": "切换到动态值", + "switch-to-default-value": "切换到默认值", + "inherit-owner": "从所有者继承", + "source-attribute-not-set": "如果源属性未设置", + "unit": "单位" + }, + "fullscreen": { + "expand": "展开为全屏", + "exit": "退出全屏", + "toggle": "切换全屏模式", + "fullscreen": "全屏" + }, + "function": { + "function": "函数" + }, + "gateway": { + "gateway-name": "Gateway 名称", + "gateway-name-required": "Gateway 名称为必填项。", + "gateways": "Gateways", + "create-new-gateway": "创建新 Gateway", + "create-new-gateway-text": "确定要创建名为“{{gatewayName}}”的新 Gateway 吗?", + "launch-command": "启动命令", + "no-gateway-found": "未找到 Gateway。", + "no-gateway-matching": " 未找到“{{item}}”。" + }, + "grid": { + "delete-item-title": "确定要删除此项目吗?", + "delete-item-text": "请注意,确认后此项目及所有相关数据将无法恢复。", + "delete-items-title": "确定要删除 { count, plural, =1 {1 个项目} other {# 个项目} } 吗?", + "delete-items-action-title": "删除 { count, plural, =1 {1 个项目} other {# 个项目} }", + "delete-items-text": "请注意,确认后所有选中的项目将被移除,且所有相关数据将无法恢复。", + "add-item-text": "添加新项目", + "no-items-text": "未找到项目", + "item-details": "项目详情", + "delete-item": "删除项目", + "delete-items": "删除项目", + "scroll-to-top": "滚动到顶部" + }, + "help": { + "goto-help-page": "前往帮助页面", + "show-help": "显示帮助" + }, + "home": { + "home": "首页", + "profile": "个人资料", + "logout": "退出登录", + "menu": "菜单", + "avatar": "头像", + "open-user-menu": "打开用户菜单" + }, + "file-input": { + "browse-file": "浏览文件", + "browse-files": "浏览文件" + }, + "image": { + "gallery": "图片库", + "search": "搜索图片", + "selected-images": "已选择 { count, plural, =1 {1 张图片} other {# 张图片} }", + "created-time": "创建时间", + "name": "名称", + "name-required": "名称为必填项。", + "resolution": "分辨率", + "size": "大小", + "system": "系统", + "download-image": "下载图片", + "export-image": "导出图片为 JSON", + "import-image": "从 JSON 导入图片", + "upload-image": "上传图片", + "edit-image": "编辑图片", + "image-details": "图片详情", + "no-images": "未找到图片", + "delete-image": "删除图片", + "delete-image-title": "确定要删除图片“{{imageTitle}}”吗?", + "delete-image-text": "请注意,确认后图片将无法恢复。", + "delete-images-title": "确定要删除 { count, plural, =1 {1 张图片} other {# 张图片} } 吗?", + "delete-images-text": "请注意,确认后所有选中的图片将被移除,且所有相关数据将无法恢复。", + "list-mode": "列表视图", + "grid-mode": "网格视图", + "image-preview": "图片预览", + "update-image": "更新图片", + "export-failed-error": "无法导出图片:{{error}}", + "image-json-file": "图片 JSON 文件", + "invalid-image-json-file-error": "无法从 JSON 导入图片:无效的图片 JSON 数据结构。", + "image-is-in-use": "图片被其他实体使用", + "images-are-in-use": "图片被其他实体使用", + "image-is-in-use-text": "图片 “{{title}}” 未被删除,因为它被以下实体使用:", + "images-are-in-use-text": "并非所有图片都已删除,因为它们被其他实体使用。
您可以通过点击对应图片行中的 引用 按钮查看引用实体。
如果仍要删除这些图片,请在下表中选中它们并点击 删除选中 按钮。", + "delete-image-in-use-text": "如果仍要删除该图片,请点击 仍然删除 按钮。", + "system-entities": "系统实体:", + "entities": "实体:", + "references": "引用", + "include-system-images": "包含系统图片", + "clear-image": "清除图片", + "no-image": "无图片", + "no-image-selected": "未选择图片", + "browse-from-gallery": "从图片库浏览", + "set-link": "设置链接", + "image-link": "图片链接", + "link": "链接", + "copy-image-link": "复制图片链接", + "embed-image": "嵌入图片", + "embed-to-html": "嵌入到 HTML", + "embed-to-html-hint": "此功能将使链接对任何未授权用户可用。", + "embed-to-html-text": "使用以下代码片段,您可以将图片嵌入到基于纯 HTML 的组件中。
此类组件包括 HTML 卡片部件、单元格内容函数等。", + "embed-to-angular-template": "嵌入到 Angular HTML 模板", + "embed-to-angular-template-text": "使用以下代码片段,您可以将图片嵌入到用于组件的 Angular HTML 模板中。
此类组件包括 Markdown 部件、部件编辑器中的 HTML 部分、自定义操作等。" + }, + "image-input": { + "drop-images-or": "拖放图片或", + "drag-and-drop": "拖放", + "or": "或", + "browse": "浏览", + "no-images": "未选择图片", + "images": "图片" + }, + "import": { + "no-file": "未选择文件", + "drop-file": "拖放 JSON 文件或点击选择要上传的文件。", + "drop-json-file-or": "拖放 JSON 文件或", + "drop-file-csv": "拖放 CSV 文件或点击选择要上传的文件。", + "drop-file-csv-or": "拖放 CSV 文件或", + "column-value": "值", + "column-title": "标题", + "column-example": "示例值数据", + "column-key": "属性/遥测键", + "credentials": "凭证", + "csv-delimiter": "CSV 分隔符", + "csv-first-line-header": "第一行包含列名", + "csv-update-data": "更新属性/遥测", + "details": "详情", + "import-csv-number-columns-error": "文件应至少包含两列", + "import-csv-invalid-format-error": "无效的文件格式。行:'{{line}}'", + "column-type": { + "name": "名称", + "type": "类型", + "label": "标签", + "column-type": "列类型", + "client-attribute": "客户端属性", + "shared-attribute": "共享属性", + "server-attribute": "服务端属性", + "timeseries": "时间序列", + "entity-field": "实体字段", + "access-token": "访问 Token", + "x509": "X.509", + "mqtt": { + "client-id": "MQTT Client ID", + "user-name": "MQTT 用户名", + "password": "MQTT 密码" + }, + "lwm2m": { + "client-endpoint": "LwM2M endpoint 客户端名称", + "security-config-mode": "LwM2M 安全配置模式", + "client-identity": "LwM2M 客户端标识", + "client-key": "LwM2M 客户端密钥", + "client-cert": "LwM2M 客户端公钥", + "bootstrap-server-security-mode": "LwM2M 引导服务器安全模式", + "bootstrap-server-secret-key": "LwM2M 引导服务器密钥", + "bootstrap-server-public-key-id": "LwM2M 引导服务器公钥或 ID", + "lwm2m-server-security-mode": "LwM2M 服务器安全模式", + "lwm2m-server-secret-key": "LwM2M 服务器密钥", + "lwm2m-server-public-key-id": "LwM2M 服务器公钥或 ID" + }, + "snmp": { + "host": "SNMP 主机", + "port": "SNMP 端口", + "version": "SNMP 版本(v1、v2c 或 v3)", + "community-string": "SNMP 团体字符串" + }, + "isgateway": "是否为 Gateway", + "activity-time-from-gateway-device": "来自 Gateway 设备的活动时间", + "description": "描述", + "routing-key": "Edge 密钥", + "secret": "Edge 密钥" + }, + "stepper-text": { + "select-file": "选择文件", + "configuration": "导入配置", + "column-type": "选择列类型", + "creat-entities": "创建新实体" + }, + "message": { + "create-entities": "已成功创建 {{count}} 个新实体。", + "update-entities": "已成功更新 {{count}} 个实体。", + "error-entities": "创建 {{count}} 个实体时出错。" + } + }, + "scada": { + "symbols": "SCADA 符号", + "search": "搜索符号", + "selected-symbols": "已选择 { count, plural, =1 {1 个符号} other {# 个符号} }", + "download-symbol": "下载 SCADA 符号", + "export-symbol": "导出 SCADA 符号为 JSON", + "import-symbol": "从 JSON 导入 SCADA 符号", + "upload-symbol": "上传 SCADA 符号", + "update-symbol": "更新 SCADA 符号", + "edit-symbol": "编辑 SCADA 符号", + "symbol-details": "SCADA 符号详情", + "mode-svg": "SVG", + "mode-xml": "XML", + "no-symbols": "未找到符号", + "show-hidden-elements": "显示隐藏元素", + "hide-hidden-elements": "隐藏隐藏元素", + "delete-symbol": "删除 SCADA 符号", + "delete-symbol-title": "确定要删除 SCADA 符号“{{imageTitle}}”吗?", + "delete-symbol-text": "请注意,确认后 SCADA 符号将无法恢复。", + "delete-symbols-title": "确定要删除 { count, plural, =1 {1 个 SCADA 符号} other {# 个 SCADA 符号} } 吗?", + "delete-symbols-text": "请注意,确认后所有选中的 SCADA 符号将被移除,且所有相关数据将无法恢复。", + "include-system-symbols": "包含系统符号", + "symbol-preview": "符号预览", + "general": "通用", + "tags": "标签", + "properties": "属性", + "title": "标题", + "description": "描述", + "search-tags": "搜索标签", + "widget-size": "部件大小", + "cols": "列", + "rows": "行", + "state-render-function": "状态渲染函数", + "preview": "预览", + "preview-widget-action-text": "部件操作“{{type}}”已成功调用!", + "no-symbol": "无 SCADA 符号", + "no-symbol-selected": "未选择 SCADA 符号", + "clear-symbol": "清除 SCADA 符号", + "browse-symbol-from-gallery": "从图库浏览 SCADA 符号", + "zoom-in": "放大", + "zoom-out": "缩小", + "create-widget": "创建部件", + "create-widget-from-symbol": "从 SCADA 符号创建部件", + "hidden": "隐藏", + "tag": { + "tag": "标签", + "on-click-action": "点击操作", + "no-tags": "未配置标签", + "delete-tag-text": "确定要从 {{elementType}} 元素中删除标签
{{tag}} 吗?", + "update-tag": "更新标签", + "enter-tag": "输入标签", + "tag-settings": "标签设置", + "remove-tag": "移除标签", + "add-tag": "添加标签" + }, + "behavior": { + "behavior": "行为", + "id": "ID", + "name": "名称", + "type": "类型", + "no-behaviors": "未配置行为", + "add-behavior": "添加行为", + "type-action": "操作", + "type-value": "值", + "type-widget-action": "部件操作", + "behavior-settings": "行为设置", + "remove-behavior": "移除行为", + "hint": "提示", + "group-title": "分组标题", + "value-type": "值类型", + "default-value": "默认值", + "true-label": "True 标签", + "false-label": "False 标签", + "state-label": "状态标签", + "default-payload": "默认有效载荷", + "not-unique-behavior-ids-error": "行为 ID 必须唯一!", + "default-settings": "默认设置" + }, + "symbol": { + "symbol": "SCADA 符号", + "fluid-presence": "流体存在", + "fluid-presence-hint": "指示管道中是否存在流体。", + "fluid-present": "流体存在", + "present": "存在", + "absent": "不存在", + "flow-presence": "流动存在", + "flow-presence-hint": "指示管道中流体是否在流动。", + "flow-present": "流动存在", + "flow-direction": "流动方向", + "flow-direction-hint": "指示流体流动方向。", + "forward": "正向", + "reverse": "反向", + "flow-animation-speed": "流动动画速度", + "flow-animation-speed-hint": "表示流动动画速度的双精度值。1 - 正常速度,0 - 无动画,< 1 - 较慢动画,> 1 - 较快动画。", + "leak": "泄漏", + "leak-hint": "指示管道中是否存在泄漏。", + "leak-present": "存在泄漏", + "fluid-color": "流体颜色", + "pipe-color": "管道颜色", + "horizontal-pipe": "水平管道", + "vertical-pipe": "垂直管道", + "horizontal-fluid-color": "水平流体颜色", + "vertical-fluid-color": "垂直流体颜色", + "left-pipe": "左侧管道", + "right-pipe": "右侧管道", + "top-pipe": "顶部管道", + "bottom-pipe": "底部管道", + "left-fluid-color": "左侧流体颜色", + "right-fluid-color": "右侧流体颜色", + "top-fluid-color": "顶部流体颜色", + "bottom-fluid-color": "底部流体颜色", + "display": "显示", + "display-format": "显示格式", + "value": "值", + "decimals": "小数位数", + "units": "单位", + "flow-meter-value-hint": "流量计显示屏上显示的双精度值", + "value-hint": "表示当前值的双精度值", + "running": "运行中", + "running-hint": "指示组件是否处于运行状态。", + "warning-state": "警告状态", + "warning": "警告", + "warning-click": "警告点击", + "warning-state-hint": "指示组件是否处于警告状态。", + "critical-state": "严重状态", + "critical": "严重", + "critical-click": "严重点击", + "critical-state-hint": "指示组件是否处于严重状态。", + "critical-state-animation": "严重状态动画", + "critical-state-animation-hint": "是否在组件处于严重状态时启用闪烁动画。", + "warning-critical-state-animation": "警告/严重状态动画", + "warning-critical-state-animation-hint": "是否在组件处于警告或严重状态时启用闪烁动画。", + "animation": "动画", + "broken": "损坏", + "broken-hint": "指示组件是否已损坏。", + "on-display-click": "点击显示", + "on-display-click-hint": "用户点击显示时调用的操作。", + "pipe": "管道", + "default-border-color": "默认边框颜色", + "active-border-color": "活跃边框颜色", + "warning-border-color": "警告边框颜色", + "critical-border-color": "严重边框颜色", + "background-color": "背景颜色", + "rotation-animation-speed": "旋转动画速度", + "rotation-animation-speed-hint": "表示旋转动画速度的双精度值。1 - 正常速度,0 - 无动画,< 1 - 较慢动画,> 1 - 较快动画。", + "on-click": "点击", + "on-click-hint": "用户点击组件时调用的操作。", + "connectors-positions": "连接器位置", + "right-connector": "右侧连接器", + "right-top-connector": "右上连接器", + "right-bottom-connector": "右下连接器", + "left-connector": "左侧连接器", + "left-top-connector": "左上连接器", + "left-bottom-connector": "左下连接器", + "top-left-connector": "左上连接器", + "top-right-connector": "右上连接器", + "top-connector": "顶部连接器", + "bottom-connector": "底部连接器", + "running-color": "运行颜色", + "stopped-color": "停止颜色", + "stopped": "已停止", + "warning-color": "警告颜色", + "critical-color": "严重颜色", + "opened": "已打开", + "opened-hint": "指示组件是否处于打开状态。", + "open": "打开", + "open-hint": "用户点击打开组件时调用的操作。", + "close": "关闭", + "close-hint": "用户点击关闭组件时调用的操作。", + "close-state-animation": "关闭状态动画", + "close-state-animation-hint": "是否在组件处于关闭状态时启用闪烁动画。", + "opened-color": "打开颜色", + "closed-color": "关闭颜色", + "opened-rotation-angle": "打开旋转角度", + "closed-rotation-angle": "关闭旋转角度", + "tank-capacity": "储罐容量", + "tank-capacity-hint": "表示储罐总容量的双精度值。", + "current-volume": "当前容积", + "current-volume-hint": "表示当前已占用容积的双精度值。", + "tank-color": "储罐颜色", + "value-box": "值框", + "value-text": "值文本", + "scale": "刻度", + "transparent-mode": "透明模式", + "major-ticks": "主刻度", + "intervals": "间隔", + "major-ticks-color": "主刻度颜色", + "normal": "正常", + "minor-ticks": "次刻度", + "minor-ticks-color": "次刻度颜色", + "temperature": "温度", + "temperature-hint": "表示当前温度的双精度值。", + "update-temperature": "更新温度", + "update-temperature-hint": "用户点击更改当前温度时调用的操作。", + "run": "运行", + "run-hint": "用户点击运行组件时调用的操作。", + "stop": "停止", + "stop-hint": "用户点击停止组件时调用的操作。", + "temperature-step": "温度步进增量", + "heat-pump-color": "热泵颜色", + "power-button-background": "电源按钮背景", + "value-box-background": "值框背景", + "value-units": "值单位", + "enable-units-scale": "在刻度上启用单位", + "filtration-mode": "过滤模式", + "filtration-mode-hint": "表示当前过滤模式的整数值。", + "filtration-mode-update": "过滤模式更新状态", + "filtration-mode-update-hint": "用户点击更改当前过滤模式时调用的操作。", + "filter-mode": "过滤", + "waste-mode": "排废", + "backwash-mode": "反冲洗", + "recirculate-mode": "循环", + "rinse-mode": "冲洗", + "closed-mode": "关闭", + "sand-filter-color": "砂滤器颜色", + "mode-box-background": "模式框背景", + "border-color": "边框颜色", + "label-color": "标签颜色", + "water-leak-hint": "指示是否存在泄漏。", + "default-color": "默认颜色", + "leak-color": "泄漏颜色", + "full-value": "满值", + "full-value-hint": "表示满值的双精度值。", + "label": "标签", + "icon": "图标", + "button-color": "按钮颜色", + "on-label": "“开”标签文本", + "off-label": "“关”标签文本", + "arrow-presence": "箭头存在", + "arrow-presence-hint": "指示连接器中是否存在箭头。", + "arrow-present": "箭头存在", + "arrow-direction": "流动方向", + "arrow-direction-hint": "指示流动方向。", + "flow-animation": "流动存在", + "flow-animation-hint": "指示连接器中流体是否在流动。", + "flow": "流动", + "flow-line": "线条", + "flow-line-style": "线条样式", + "flow-style-hint": "设置虚线和间隔值,使其总和可被 100 整除,以实现完美的动画同步。", + "flow-dash-cap": "虚线端点", + "dash-cap-butt": "平头", + "dash-cap-round": "圆头", + "dash-cap-square": "方头", + "dash": "虚线", + "gap": "间隔", + "main-line": "主线条", + "line": "线条", + "line-color": "线条颜色", + "arrow-color": "箭头颜色", + "target-value": "目标值", + "target-value-hint": "指示刻度上的目标点。", + "min-max-value": "最小值和最大值", + "min-value": "最小值", + "max-value": "最大值", + "progress-bar": "进度条", + "progress-arrow": "进度箭头", + "warning-scale-color": "警告刻度颜色", + "critical-scale-color": "严重刻度颜色", + "scale-color": "刻度颜色", + "target": "目标", + "high-warning-state": "高警告状态", + "show-high-warning-scale": "显示高警告刻度", + "high-warning-scale": "高警告刻度", + "high-warning-state-hint": "表示从高警告范围到高严重或最大值的双精度值。", + "low-warning-state": "低警告状态", + "show-low-warning-scale": "显示低警告刻度", + "low-warning-scale": "低警告刻度", + "low-warning-state-hint": "表示从低警告范围到低严重或最小值的双精度值。", + "high-critical-state": "高严重状态", + "show-high-critical-scale": "显示高严重刻度", + "high-critical-scale": "高严重刻度", + "high-critical-state-hint": "表示从高严重范围到最大刻度值的双精度值。", + "low-critical-state": "低严重状态", + "show-low-critical-scale": "显示低严重状态", + "low-critical-scale": "低严重状态", + "low-critical-state-hint": "表示从低严重范围到最小刻度值的双精度值。", + "filter-color": "过滤器颜色", + "colors": "颜色", + "indicator-colors": "指示器颜色", + "enabled": "已启用", + "disabled": "已禁用", + "on": "开", + "off": "关", + "on-off-state": "开/关状态", + "on-off-state-hint": "指示组件是处于开还是关状态。", + "on-update-state": "开更新状态", + "on-update-state-hint": "用户点击将状态更新为开时调用的操作。", + "off-update-state": "关更新状态", + "off-update-state-hint": "用户点击将状态更新为关时调用的操作。", + "voltage": "电压", + "input-voltage": "输入电压", + "input-voltage-hint": "表示输入电压值的双精度值。", + "output-voltage": "输出电压", + "output-voltage-hint": "表示输出电压值的双精度值。", + "first-phase-voltage": "第一相电压", + "second-phase-voltage": "第二相电压", + "third-phase-voltage": "第三相电压", + "phase-voltage-hint": "表示当前相电压值的双精度值", + "voltage-hint": "表示当前电压的双精度值", + "current-voltage-color": "当前电压颜色", + "phase-indicator-color": "相位指示器颜色", + "measured": "测量值", + "measured-hint": "表示千瓦时能耗的双精度值", + "day-rate": "日间费率", + "night-rate": "夜间费率", + "off-peak-rate": "低谷费率", + "peak-rate": "高峰费率", + "export-rate": "输出费率", + "operating-mode": "运行模式", + "bypass-mode": "旁路", + "operating-mode-hint": "表示当前运行模式的整数值(0 - 关,1 - 开,2 - 旁路)", + "connected": "已连接", + "connected-hint": "指示组件是否处于已连接状态。", + "disconnected": "已断开", + "indicator": "指示器", + "operation-mode": "运行模式", + "operation-mode-hint": "指示逆变器处于市电还是逆变器模式。", + "operation-mode-indicators-color": "运行模式指示器颜色", + "mains-on-mode": "市电开", + "inverter-on-mode": "逆变器开", + "charging-mode": "充电模式", + "charging-mode-hint": "表示当前充电模式的整数值(1 - 恒流,2 - 恒压,3 - 浮充)", + "charging-mode-indicators-color": "充电模式指示器颜色", + "inverter-faults": "故障", + "inverter-fault-indicators-color": "故障指示器颜色", + "overload-fault": "过载", + "overload-fault-hint": "指示逆变器是否处于过载状态。", + "low-battery-fault": "低电量", + "low-battery-fault-hint": "指示电池是否过度放电。", + "temperature-fault": "温度", + "temperature-fault-hint": "指示逆变器中是否存在高温。", + "triangle": "三角形", + "socket": "插座", + "left-button": "左按钮", + "right-button": "右按钮", + "alarm-colors": "告警颜色", + "hook-color": "挂钩颜色" + } + }, + "item": { + "selected": "已选择" + }, + "js-func": { + "no-return-error": "函数必须返回值!", + "return-type-mismatch": "函数必须返回“{{type}}”类型的值!", + "tidy": "整理", + "mini": "压缩", + "modules": "模块", + "remove-module": "移除模块", + "no-modules": "未配置模块", + "add-module": "添加模块", + "module-alias": "别名", + "invalid-module-alias-name": "无效的别名名称", + "module-resource": "JS 模块资源", + "not-unique-module-aliases-error": "模块别名必须唯一!", + "show-module-info": "显示模块信息", + "show-module-source-code": "显示模块源代码", + "module-members": "模块成员", + "module-no-members": "模块没有导出成员", + "module-load-error": "模块加载错误", + "source-code": "源代码", + "source-code-load-error": "源代码加载错误", + "no-js-module-text": "未找到 JS 模块", + "no-js-module-matching": "未找到与“{{module}}”匹配的 JS 模块。" + }, + "key-val": { + "key": "键", + "value": "值", + "remove-entry": "移除条目", + "add-entry": "添加条目", + "no-data": "无条目" + }, + "layout": { + "layout": "布局", + "layouts": "布局", + "manage": "管理布局", + "settings": "布局设置", + "color": "颜色", + "main": "主", + "right": "右", + "left": "左", + "select": "选择目标布局", + "percentage-width": "百分比宽度(%)", + "fixed-width": "固定宽度(px)", + "left-width": "左列(%)", + "right-width": "右列(%)", + "pick-fixed-side": "固定侧:", + "layout-fixed-width": "固定宽度(px)", + "value-min-error": "值必须大于 {{min}}{{unit}}", + "value-max-error": "值必须小于 {{max}}{{unit}}", + "layout-fixed-width-required": "固定宽度为必填项", + "right-width-percentage-required": "右侧百分比为必填项", + "left-width-percentage-required": "左侧百分比为必填项", + "divider": "分隔线", + "right-side": "右侧布局", + "left-side": "左侧布局", + "add-new-breakpoint": "添加新断点", + "breakpoint": "断点", + "breakpoints": "断点", + "copy-from": "复制自", + "size": "大小", + "delete-breakpoint-title": "确定要删除断点“{{name}}”吗?", + "delete-breakpoint-text": "请注意,确认后断点将无法恢复,设置将恢复为默认断点。" + }, + "legend": { + "direction": "方向", + "position": "位置", + "show-values": "显示值", + "min-option": "最小值", + "max-option": "最大值", + "average-option": "平均值", + "total-option": "总计", + "latest-option": "最新值", + "sort-legend": "在图例中排序数据键", + "show-max": "显示最大值", + "show-min": "显示最小值", + "show-avg": "显示平均值", + "show-total": "显示总计值", + "show-latest": "显示最新值", + "settings": "图例设置", + "min": "最小", + "max": "最大", + "avg": "平均", + "total": "总计", + "latest": "最新", + "Min": "最小", + "Max": "最大", + "Avg": "平均", + "Total": "总计", + "Latest": "最新", + "comparison-time-ago": { + "previousInterval": "(前一区间)", + "customInterval": "(自定义区间)", + "days": "(一天前)", + "weeks": "(一周前)", + "months": "(一月前)", + "years": "(一年前)" + }, + "column-title": "列标题", + "label": "标签", + "value": "值" + }, + "login": { + "login": "登录", + "request-password-reset": "请求重置密码", + "reset-password": "重置密码", + "create-password": "创建密码", + "two-factor-authentication": "双因素认证", + "passwords-mismatch-error": "输入的密码必须一致!", + "password-again": "再次输入密码", + "sign-in": "登录", + "username": "用户名(Email)", + "remember-me": "记住我", + "forgot-password": "忘记密码?", + "password-reset": "密码重置", + "expired-password-reset-message": "您的密码已过期!\n请输入新密码。", + "new-password": "新密码", + "new-password-again": "确认新密码", + "password-link-sent-message": "重置链接已发送", + "email": "Email", + "invalid-email-format": "无效的 Email 格式。", + "sign-in-with": "使用 {{name}} 登录", + "sign-in-to-your-account": "登录您的账户", + "or": "或", + "error": "登录错误", + "verify-your-identity": "验证您的身份", + "select-way-to-verify": "选择验证方式", + "resend-code": "重新发送验证码", + "resend-code-wait": "在 { time, plural, =1 {1 秒} other {# 秒} } 后重新发送验证码", + "try-another-way": "尝试其他方式", + "totp-auth-description": "请输入您的身份验证器应用中的安全码。", + "totp-auth-placeholder": "验证码", + "sms-auth-description": "安全码已发送到您的手机号码 {{contact}}。", + "sms-auth-placeholder": "短信验证码", + "email-auth-description": "安全码已发送到您的 Email 地址 {{contact}}。", + "email-auth-placeholder": "Email 验证码", + "backup-code-auth-description": "请输入您的备用验证码之一。", + "backup-code-auth-placeholder": "备用验证码", + "activation-link-expired": "激活链接已过期", + "activation-link-expired-message": "激活您个人资料的链接已过期。您可以返回登录页面以接收新的 Email。", + "reset-password-link-expired": "密码重置链接已过期", + "reset-password-link-expired-message": "重置密码的链接已过期。您可以返回登录页面以接收新的 Email。", + "two-fa": "双因素认证", + "two-fa-required": "需要双因素认证", + "set-up-verification-method": "设置验证方式以继续", + "set-up-verification-method-login": "设置验证方式或登录", + "enable-authenticator-app": "启用身份验证器应用", + "enable-authenticator-app-description": "请输入您的身份验证器应用中的安全码", + "enable-authenticator-sms": "启用短信验证", + "enable-authenticator-sms-description": "请输入我们刚发送到以下号码的 6 位验证码:", + "enable-authenticator-email": "启用 Email 验证", + "enable-authenticator-email-description": "安全码已发送到您的 Email 地址:", + "enter-key-manually": "或手动输入此 32 位密钥:", + "continue": "继续", + "confirm": "确认", + "authenticator-app-success": "身份验证器应用已成功启用", + "authenticator-app-success-description": "下次登录时,您需要提供双因素认证验证码", + "authenticator-sms-success": "短信验证已成功启用", + "authenticator-sms-success-description": "下次登录时,系统将提示您输入发送到该手机号码的安全码", + "authenticator-email-success": "Email 验证已成功启用", + "authenticator-email-success-description": "下次登录时,系统将提示您输入发送到您 Email 地址的安全码", + "authenticator-backup-code-success": "备用验证码已成功启用", + "authenticator-backup-code-success-description": "下次登录时,系统将提示您输入安全码或使用备用验证码之一。", + "add-verification-method": "添加验证方式", + "get-backup-code": "获取备用验证码", + "copy-key": "复制密钥", + "send-code": "发送验证码", + "email-label": "Email", + "email-description": "输入用于身份验证的 Email。", + "sms-description": "输入用于身份验证的手机号码。", + "backup-code-description": "打印这些验证码,以便在需要登录账户时随时使用。每个备用验证码只能使用一次。", + "backup-code-warn": "离开此页面后,这些验证码将无法再次显示。请使用以下选项安全保存。", + "download-txt": "下载(txt)", + "print": "打印", + "verification-code": "6 位验证码", + "verification-code-invalid": "无效的验证码格式", + "verification-code-incorrect": "验证码不正确", + "verification-code-many-request": "验证码校验请求过多", + "scan-qr-code": "使用您的验证应用扫描此二维码", + "phone-input": { + "phone-input-label": "手机号码", + "phone-input-required": "手机号码为必填项", + "phone-input-validation": "手机号码无效或不可用", + "phone-input-pattern": "无效的手机号码。应为 E.164 格式,例如 {{phoneNumber}}", + "phone-input-hint": "E.164 格式的手机号码,例如 {{phoneNumber}}" + } + }, + "mobile": { + "add-application": "添加应用程序", + "app-id": "App Site Association ID", + "app-id-required": "App Site Association ID 为必填项", + "app-id-pattern": "App Site Association ID 格式无效", + "app-store-link": "App Store 链接", + "app-store-link-required": "App Store 链接为必填项", + "application-details": "应用程序详情", + "application-package": "应用程序包", + "application-secret": "Application Secret", + "application-secret-required": "Application Secret 为必填项", + "application": "应用程序", + "applications": "应用程序", + "copy-app-id": "复制 App ID", + "copy-app-store-link": "复制 App Store 链接", + "copy-application-package": "复制应用程序包", + "copy-application-secret": "复制 Application Secret", + "copy-google-play-link": "复制 Google Play 链接", + "copy-sha256-certificate-fingerprints": "复制 SHA256 证书指纹", + "delete-application": "删除应用程序", + "delete-application-button-text": "我了解后果,删除应用程序", + "delete-application-text": "此操作无法撤销。这将永久删除您的应用程序。
如果不想永久删除,可以暂时 暂停 应用程序。
要删除 应用程序,请输入 \"{{phrase}}\" 以确认。", + "delete-application-title-short": "确定要删除应用程序“{{name}}”吗?", + "delete-application-text-short": "请注意,确认后应用程序及所有相关数据将无法恢复。", + "delete-application-phrase": "delete application", + "delete-applications-bundle-text": "请注意,确认后移动包及所有相关数据将无法恢复。", + "delete-applications-bundle-title": "确定要删除移动包“{{bundleName}}”吗?", + "generate-application-secret": "生成 Application Secret", + "google-play-link": "Google Play 链接", + "google-play-link-required": "Google Play 链接为必填项", + "latest-version": "最新版本", + "min-version": "最低版本", + "invalid-version-pattern": "无效的版本格式。请使用格式:主版本.次版本.修订版本(例如 1.0.0)。", + "mobile-center": "移动中心", + "mobile-package": "应用程序包", + "mobile-package-max-length": "应用程序包应少于 256 个字符", + "mobile-package-required": "应用程序包为必填项。", + "mobile-package-pattern": "应用程序包格式无效", + "mobile-package-title": "应用程序标题", + "mobile-package-title-max-length": "应用程序标题应少于 256 个字符", + "no-application": "未找到应用程序", + "no-bundles": "未找到包", + "platform-type": "平台类型", + "search-application": "搜索应用程序", + "search-bundles": "搜索包", + "set": "设置", + "sha256-certificate-fingerprints": "SHA256 证书指纹", + "sha256-certificate-fingerprints-required": "SHA256 证书指纹为必填项", + "sha256-certificate-fingerprints-pattern": "SHA256 证书指纹格式无效", + "show-hidden-pages": "显示隐藏页面", + "status": "状态", + "status-type": { + "deprecated": "已弃用", + "draft": "草稿", + "published": "已发布", + "suspended": "已暂停" + }, + "store-information": "商店信息", + "version-information": "版本信息", + "min-version-release-notes": "最低版本发布说明", + "latest-version-release-notes": "最新版本发布说明", + "bundle": "包", + "bundles": "包", + "add-bundle": "添加包", + "title": "标题", + "title-required": "标题为必填项", + "title-cannot-contain-only-spaces": "标题不能仅包含空格", + "title-max-length": "标题应少于 256 个字符", + "oauth-clients": "OAuth 2.0 客户端", + "android-app": "Android 应用", + "android-application": "Android 应用程序", + "ios-app": "iOS 应用", + "ios-application": "iOS 应用程序", + "invalid-store-link": "无效的商店链接", + "enable-oauth": "启用 OAuth 2.0", + "enable-self-registration": "启用自助注册", + "edit-bundle": "编辑包", + "description": "描述", + "basic-settings": "基本设置", + "no-application-matching": "未找到与“{{entity}}”匹配的应用程序。", + "no-bundle-matching": "未找到与“{{entity}}”匹配的包。", + "application-required": "应用程序为必填项。", + "bundle-required": "包为必填项。", + "no-application-text": "未找到应用程序", + "no-bundle-text": "未找到包", + "layout": "布局", + "pages": "页面", + "hide-all-pages": "隐藏所有页面", + "reset-to-default-pages": "重置为默认页面", + "add-specific-page": "添加特定页面", + "visible": "可见", + "hidden": "隐藏", + "reset-to-page-default": "将页面重置为默认", + "mobile-599": "手机(最大 599px)", + "tablet-959": "平板电脑(最大 959px)", + "max-element-number": "最大元素数量", + "page-name": "页面名称", + "page-name-required": "页面名称为必填项。", + "page-name-cannot-contain-only-spaces": "页面名称不能仅包含空格。", + "page-name-max-length": "页面名称应少于 256 个字符", + "page-type": "页面类型", + "pages-types": { + "dashboard": "仪表板", + "web-view": "Web 视图", + "custom": "自定义" + }, + "url": "URL", + "invalid-url-format": "无效的 URL 格式", + "path": "路径", + "invalid-path-format": "无效的路径格式", + "custom-page": "自定义页面", + "edit-page": "编辑页面", + "edit-custom-page": "编辑自定义页面", + "delete-page": "删除页面", + "qr-code-widget": "二维码部件", + "type-here": "在此输入", + "configuration-dialog": "配置对话框", + "configuration-app": "配置应用", + "configuration-step": { + "prepare-environment-title": "准备开发环境", + "prepare-environment-text": "Flutter ThingsBoard 移动应用程序需要 Flutter SDK。请按照说明设置 Flutter SDK。", + "get-source-code-title": "获取应用源代码", + "get-source-code-text": "您可以通过从 GitHub 仓库克隆来获取 Flutter ThingsBoard 移动应用程序的源代码:", + "configure-app-settings-title": "配置应用设置", + "configure-app-settings-text": "下载配置文件并将其放置到上一步克隆的项目根目录中。", + "download-file": "下载文件", + "run-app-title": "运行应用", + "run-app-text": "按照 IDE 中的说明运行应用。\n如果使用终端,请使用以下命令运行应用:", + "more-information": "详细信息请参阅我们的入门文档。", + "getting-started": "入门指南" + } + }, + "notification": { + "action-button": "操作按钮", + "action-type": "操作类型", + "active": "活跃", + "add-notification-recipients-group": "添加通知收件人组", + "add-notification-template": "添加通知模板", + "add-recipient": "添加收件人", + "add-recipients": "添加收件人", + "add-rule": "添加规则", + "add-stage": "添加阶段", + "add-template": "添加模板", + "after": "之后", + "alarm-assignment-trigger-settings": "告警分配触发器设置", + "alarm-comment-trigger-settings": "告警评论触发器设置", + "alarm-trigger-settings": "告警触发器设置", + "all": "全部", + "api-feature-hint": "如果该字段为空,触发器将应用于所有 API 功能", + "api-usage-trigger-settings": "API 使用触发器设置", + "new-platform-version-trigger-settings": "新平台版本触发器设置", + "rate-limits-trigger-settings": "超出速率限制触发器设置", + "task-processing-failure-trigger-settings": "任务处理失败触发器设置", + "resources-shortage-trigger-settings": "资源不足触发器设置", + "at-least-one-should-be-selected": "至少需要选择一项", + "basic-settings": "基本设置", + "button-text": "按钮文本", + "button-text-required": "按钮文本为必填项", + "button-text-max-length": "按钮文本长度不得超过 {{ length }} 个字符", + "compose": "编写", + "conversation": "会话", + "conversation-required": "会话为必填项", + "copy-notification-template": "复制通知模板", + "copy-rule": "复制规则", + "copy-template": "复制模板", + "create-new": "新建", + "created": "已创建", + "customize-messages": "自定义消息", + "cpu-threshold": "CPU 阈值", + "delete-notification-text": "请注意,确认后该通知将无法恢复。", + "delete-notification-title": "确定要删除该通知吗?", + "delete-notifications-text": "请注意,确认后通知将无法恢复。", + "delete-notifications-title": "确定要删除 { count, plural, =1 {1 条通知} other {# 条通知} } 吗?", + "delete-recipient-text": "请注意,确认后该收件人将无法恢复。", + "delete-recipient-title": "确定要删除收件人“{{recipientName}}”吗?", + "delete-recipients-text": "请注意,确认后收件人将无法恢复。", + "delete-recipients-title": "确定要删除 { count, plural, =1 {1 个收件人} other {# 个收件人} } 吗?", + "delete-request-text": "请注意,确认后该请求将无法恢复。", + "delete-request-title": "确定要删除该请求吗?", + "delete-requests-text": "请注意,确认后请求将无法恢复。", + "delete-requests-title": "确定要删除 { count, plural, =1 {1 个请求} other {# 个请求} } 吗?", + "delete-rule-text": "请注意,确认后该规则将无法恢复。", + "delete-rule-title": "确定要删除规则“{{ruleName}}”吗?", + "delete-rules-text": "请注意,确认后规则将无法恢复。", + "delete-rules-title": "确定要删除 { count, plural, =1 {1 条规则} other {# 条规则} } 吗?", + "delete-template-text": "请注意,确认后该模板将无法恢复。", + "delete-template-title": "确定要删除模板“{{templateName}}”吗?", + "delete-templates-text": "请注意,确认后模板将无法恢复。", + "delete-templates-title": "确定要删除 { count, plural, =1 {1 个模板} other {# 个模板} } 吗?", + "deleted": "已删除", + "delivery-method": { + "delivery-method": "发送方式", + "email": "Email", + "email-preview": "Email 通知预览", + "slack": "Slack", + "slack-preview": "Slack 通知预览", + "microsoft-teams": "Microsoft Teams", + "microsoft-teams-preview": "Microsoft Teams 通知预览", + "sms": "SMS", + "sms-preview": "SMS 通知预览", + "web": "Web", + "web-preview": "Web 通知预览", + "mobile-app": "移动应用", + "mobile-app-preview": "移动应用通知预览" + }, + "delivery-method-not-configure-click": "发送方式未配置。点击进行设置。", + "delivery-method-not-configure-contact": "发送方式未配置。请联系系统管理员。", + "delivery-methods": "发送方式", + "description": "描述", + "device-activity-trigger-settings": "设备活跃触发器设置", + "device-list-rule-hint": "如果该字段为空,触发器将应用于所有设备", + "device-profiles-list-rule-hint": "如果该字段为空,触发器将应用于所有设备配置", + "disabled": "已禁用", + "edge-trigger-settings": "Edge 触发器设置", + "edge-list-rule-hint": "如果该字段为空,触发器将应用于所有 Edge 实例", + "edit-notification-recipients-group": "编辑通知收件人组", + "edit-notification-template": "编辑通知模板", + "edit-rule": "编辑规则", + "edit-template": "编辑模板", + "enabled": "已启用", + "entities-limit-trigger-settings": "实体限制触发器设置", + "entity-action-trigger-settings": "实体操作触发器设置", + "entity-type": "实体类型", + "escalation-chain": "升级链", + "failed-send": "发送失败", + "fails": "{ count, plural, =1 {1 次失败} other {# 次失败} }", + "filter": "过滤", + "first-recipient": "第一收件人", + "inactive": "不活跃", + "inbox": "收件箱", + "notification-inbox": "通知 / 收件箱", + "input-field-support-templatization": "输入字段支持模板化。", + "input-fields-support-templatization": "输入字段支持模板化。", + "link": "链接", + "link-required": "链接为必填项", + "link-max-length": "链接长度不得超过 {{ length }} 个字符", + "link-type": { + "dashboard": "打开仪表板", + "link": "打开 URL 链接" + }, + "loading-notifications": "正在加载通知...", + "management": "通知管理", + "mark-all-as-read": "全部标记为已读", + "mark-as-read": "标记为已读", + "message": "消息", + "message-required": "消息为必填项", + "message-max-length": "消息长度不得超过 {{ length }} 个字符", + "name": "名称", + "name-required": "名称为必填项", + "new-notification": "新通知", + "no-inbox-notification": "未找到通知", + "no-notification-request": "暂无通知请求", + "no-notification-templates": "未找到通知模板", + "no-notifications-yet": "暂无通知", + "no-recipients-notification": "暂无收件人通知", + "no-recipients-matching": "未找到与“{{entity}}”匹配的收件人。", + "no-recipients-text": "未找到收件人", + "no-rule": "未配置规则", + "no-rules-notification": "暂无规则通知", + "no-severity-found": "未找到严重程度", + "no-severity-matching": "未找到“{{severity}}”。", + "no-template-matching": "未找到与“{{template}}”匹配的资源。", + "create-new-template": "创建一个新模板!", + "not-found-slack-recipient": "未找到 Slack 收件人", + "notification": "通知", + "notification-center": "通知中心", + "notification-tap-action": "通知点击操作", + "notification-tap-action-hint": "如果未启用,将使用默认告警仪表板", + "notify": "通知", + "notify-again": "再次通知", + "notify-alarm-action": { + "acknowledged": "告警已确认", + "assigned": "告警已分配", + "cleared": "告警已清除", + "created": "告警已创建", + "severity-changed": "告警严重程度已变更", + "unassigned": "告警已取消分配" + }, + "notify-on": "通知条件", + "notify-on-comment-update": "评论更新时通知", + "notify-on-required": "通知条件为必填项", + "notify-on-unassign": "取消分配时通知", + "notify-only-user-comments": "仅通知用户评论", + "only-rule-chain-lifecycle-failures": "仅规则链生命周期失败", + "only-rule-node-lifecycle-failures": "仅规则节点生命周期失败", + "platform-users": "平台用户", + "ram-threshold": "RAM 阈值", + "rate-limits": "速率限制", + "rate-limits-hint": "如果该字段为空,触发器将应用于所有速率限制", + "recipient": "收件人", + "recipient-group": "收件人组", + "recipient-type": { + "affected-tenant-administrators": "受影响的租户管理员", + "affected-user": "受影响的用户", + "all-users": "所有用户", + "customer-users": "客户用户", + "system-administrators": "系统管理员", + "tenant-administrators": "租户管理员", + "user-filters": "用户过滤器", + "user-list": "用户列表", + "users-entity-owner": "实体所有者的用户" + }, + "recipients": "收件人", + "notification-recipient": "通知收件人", + "notification-recipient-required": "通知收件人为必填项。", + "notification-recipients": "通知 / 收件人", + "recipients-count": "{ count, plural, =1 {1 个收件人} other {# 个收件人} }", + "recipients-required": "收件人为必填项", + "refresh-allow-delivery-method": "刷新允许的发送方式", + "request-search": "搜索请求", + "request-status": { + "processing": "处理中", + "scheduled": "已计划", + "sent": "已发送" + }, + "review": "审核", + "rule": "规则", + "rule-chain-list-rule-hint": "如果该字段为空,触发器将应用于所有规则链", + "rule-engine-events-trigger-settings": "规则引擎事件触发器设置", + "rule-engine-filter": "规则引擎过滤器", + "rule-name": "规则名称", + "rule-name-required": "名称为必填项", + "rule-disable": "禁用通知规则", + "rule-enable": "启用通知规则", + "rule-node-filter": "规则节点过滤器", + "rules": "规则", + "notification-rules": "通知 / 规则", + "scheduler-later": "计划稍后发送", + "search-notification": "搜索通知", + "search-recipients": "搜索收件人", + "search-rules": "搜索规则", + "search-templates": "搜索模板", + "see-documentation": "查看文档", + "selected-notifications": "已选择 { count, plural, =1 {1 条通知} other {# 条通知} }", + "selected-recipients": "已选择 { count, plural, =1 {1 个收件人} other {# 个收件人} }", + "selected-requests": "已选择 { count, plural, =1 {1 个请求} other {# 个请求} }", + "selected-rules": "已选择 { count, plural, =1 {1 条规则} other {# 条规则} }", + "selected-template": "已选择 { count, plural, =1 {1 个模板} other {# 个模板} }", + "send-notification": "发送通知", + "sent": "已发送", + "setup": "设置", + "notification-sent": "通知 / 已发送", + "set-entity-from-notification": "将通知中的实体设置到仪表板状态", + "slack-chanel-type": "Slack 频道类型", + "slack-chanel-types": { + "direct": "私信", + "private-channel": "私有频道", + "public-channel": "公共频道" + }, + "start-from-scratch": "从头开始", + "status": "状态", + "stop-escalation-alarm-status-become": "当告警状态变为以下时停止升级:", + "storage-threshold": "存储阈值", + "subject": "主题", + "subject-required": "主题为必填项", + "subject-max-length": "主题长度不得超过 {{ length }} 个字符", + "template": "模板", + "template-name": "模板名称", + "template-required": "模板为必填项", + "template-type": { + "alarm": "告警", + "alarm-assignment": "告警分配", + "alarm-comment": "告警评论", + "api-usage-limit": "API 使用限制", + "device-activity": "设备活跃", + "entities-limit": "实体限制", + "entities-limit-increase-request": "实体限制提升请求", + "entity-action": "实体操作", + "general": "通用", + "rule-engine-lifecycle-event": "规则引擎生命周期事件", + "rule-node": "规则节点", + "new-platform-version": "新平台版本", + "rate-limits": "超出速率限制", + "edge-communication-failure": "Edge 通信故障", + "edge-connection": "Edge 连接", + "task-processing-failure": "任务处理失败", + "resources-shortage": "资源不足" + }, + "templates": "模板", + "notification-templates": "通知 / 模板", + "tenant-profiles-list-rule-hint": "如果该字段为空,触发器将应用于所有租户配置", + "tenants-list-rule-hint": "如果该字段为空,触发器将应用于所有租户", + "threshold": "阈值", + "theme-color": "主题颜色", + "time": "时间", + "track-rule-node-events": "跟踪规则节点事件", + "trigger": { + "alarm": "告警", + "alarm-assignment": "告警分配", + "alarm-comment": "告警评论", + "api-usage-limit": "API 使用限制", + "device-activity": "设备活跃", + "entities-limit": "实体限制", + "entity-action": "实体操作", + "rule-engine-lifecycle-event": "规则引擎生命周期事件", + "new-platform-version": "新平台版本", + "rate-limits": "超出速率限制", + "edge-connection": "Edge 连接", + "edge-communication-failure": "Edge 通信故障", + "task-processing-failure": "任务处理失败", + "resources-shortage": "资源不足", + "trigger": "触发器", + "trigger-required": "触发器为必填项" + }, + "type": "类型", + "unread": "未读", + "updated": "已更新", + "use-deprecated-webhook-connectors": "使用已弃用的 Webhook 连接器", + "use-old-api": "使用旧 API", + "use-template": "使用模板", + "view-all": "查看全部", + "warning": "警告", + "webhook-url": "Webhook URL", + "webhook-url-required": "Webhook URL 为必填项", + "workflow-url": "Workflow URL", + "workflow-url-required": "Workflow URL 为必填项", + "channel-name": "频道名称", + "channel-name-required": "频道名称为必填项", + "settings": { + "notification-settings": "通知设置", + "reset-all": "重置所有设置", + "reset-all-title": "确定要重置表单吗?", + "reset-all-text": "确认后,设置表单将重置为默认值并保存。", + "type": "类型", + "enable-all": "全部启用", + "disable-all": "全部禁用", + "delivery-not-configured": "发送方式未配置" + } + }, + "ota-update": { + "add": "添加软件包", + "assign-firmware": "已分配固件", + "assign-firmware-required": "已分配固件为必填项", + "assign-software": "已分配软件", + "assign-software-required": "已分配软件为必填项", + "auto-generate-checksum": "自动生成校验和", + "checksum": "校验和", + "checksum-hint": "如果校验和为空,将自动生成", + "checksum-algorithm": "校验和算法", + "checksum-copied-message": "软件包校验和已复制到剪贴板", + "change-firmware": "更改固件可能导致 { count, plural, =1 {1 个设备} other {# 个设备} } 更新。", + "change-software": "更改软件可能导致 { count, plural, =1 {1 个设备} other {# 个设备} } 更新。", + "change-ota-setting-title": "确定要更改 OTA 设置吗?", + "chose-compatible-device-profile": "上传的软件包仅对具有所选配置的设备可用。", + "chose-firmware-distributed-device": "选择要分发到设备的固件", + "chose-software-distributed-device": "选择要分发到设备的软件", + "content-type": "内容类型", + "copy-checksum": "复制校验和", + "copy-direct-url": "复制直接 URL", + "copyId": "复制软件包 Id", + "copied": "已复制!", + "delete": "删除软件包", + "delete-ota-update-text": "请注意,确认后该 OTA 更新将无法恢复。", + "delete-ota-update-title": "确定要删除 OTA 更新“{{title}}”吗?", + "delete-ota-updates-text": "请注意,确认后所有选中的 OTA 更新将被移除。", + "delete-ota-updates-title": "确定要删除 { count, plural, =1 {1 个 OTA 更新} other {# 个 OTA 更新} } 吗?", + "description": "描述", + "direct-url": "直接 URL", + "direct-url-copied-message": "软件包直接 URL 已复制到剪贴板", + "direct-url-required": "直接 URL 为必填项", + "download": "下载软件包", + "drop-file": "拖放软件包文件或点击选择要上传的文件。", + "drop-package-file-or": "拖放软件包文件或", + "file-name": "文件名", + "file-size": "文件大小", + "file-size-bytes": "文件大小(字节)", + "idCopiedMessage": "软件包 Id 已复制到剪贴板", + "no-firmware-matching": "未找到与“{{entity}}”匹配的兼容固件 OTA 更新软件包。", + "no-firmware-text": "暂无已配置的兼容固件 OTA 更新软件包。", + "no-packages-text": "未找到软件包", + "no-software-matching": "未找到与“{{entity}}”匹配的兼容软件 OTA 更新软件包。", + "no-software-text": "暂无已配置的兼容软件 OTA 更新软件包。", + "ota-update": "OTA 更新", + "ota-update-details": "OTA 更新详情", + "ota-updates": "OTA 更新", + "package-file": "软件包文件", + "package-type": "软件包类型", + "packages-repository": "软件包仓库", + "search": "搜索软件包", + "selected-package": "已选择 { count, plural, =1 {1 个软件包} other {# 个软件包} }", + "title": "标题", + "title-required": "标题为必填项。", + "title-max-length": "标题长度不得超过 256", + "types": { + "firmware": "固件", + "software": "软件" + }, + "upload-binary-file": "上传二进制文件", + "use-external-url": "使用外部 URL", + "version": "版本", + "version-required": "版本为必填项。", + "version-tag": "版本标签", + "version-tag-hint": "自定义标签应与设备上报的软件包版本一致。", + "version-max-length": "版本长度不得超过 256", + "warning-after-save-no-edit": "软件包上传后,将无法修改标题、版本、设备配置和软件包类型。" + }, + "position": { + "top": "顶部", + "bottom": "底部", + "left": "左侧", + "right": "右侧" + }, + "profile": { + "profile": "个人资料", + "last-login-time": "上次登录", + "change-password": "修改密码", + "current-password": "当前密码", + "copy-jwt-token": "复制 JWT Token", + "jwt-token": "JWT Token", + "token-valid-till": "Token 有效期至", + "tokenCopiedSuccessMessage": "JWT Token 已复制到剪贴板", + "tokenCopiedWarnMessage": "JWT Token 已过期!请刷新页面。" + }, + "profiles": { + "profiles": "配置" + }, + "security": { + "security": "安全", + "general-settings": "通用安全设置", + "access-token": "访问 Token", + "access-token-required": "访问 Token 为必填项", + "clientId": "Client ID", + "clientId-required": "Client ID 为必填项", + "username": "用户名", + "username-required": "用户名为必填项", + "ca-cert": "CA 证书", + "2fa": { + "2fa": "双因素认证", + "2fa-description": "双因素认证保护您的账户免受未授权访问。您只需在登录时输入安全码即可。", + "authenticate-with": "您可以通过以下方式进行认证:", + "disable-2fa-provider-text": "禁用 {{name}} 将降低您账户的安全性", + "disable-2fa-provider-title": "确定要禁用 {{name}} 吗?", + "get-new-code": "获取新验证码", + "main-2fa-method": "设为主要双因素认证方式", + "dialog": { + "activation-step-description-email": "下次登录时,系统将提示您输入发送到您 Email 地址的安全码。", + "activation-step-description-sms": "下次登录时,系统将提示您输入发送到该手机号码的安全码。", + "activation-step-description-totp": "下次登录时,您需要提供双因素认证码。", + "activation-step-label": "激活", + "backup-code-description": "请打印这些验证码,以便在需要登录账户时使用。每个备用验证码只能使用一次。", + "backup-code-warn": "离开此页面后,这些验证码将无法再次显示。请使用以下选项安全存储。", + "download-txt": "下载(txt)", + "email-step-description": "输入要用作认证器的 Email 地址。", + "email-step-label": "Email", + "enable-email-title": "启用 Email 认证器", + "enable-sms-title": "启用 SMS 认证器", + "enable-totp-title": "启用认证器应用", + "enter-verification-code": "在此输入 6 位验证码", + "get-backup-code-title": "获取备用验证码", + "next": "下一步", + "scan-qr-code": "使用验证应用扫描此二维码", + "send-code": "发送验证码", + "sms-step-description": "输入要用作认证器的手机号码。", + "sms-step-label": "手机号码", + "success": "成功!", + "totp-step-description-install": "您可以安装 Google Authenticator、Authy 或 Duo 等应用。", + "totp-step-description-open": "在手机上打开认证器应用。", + "totp-step-label": "获取应用", + "verification-code": "6 位验证码", + "verification-code-invalid": "验证码格式无效", + "verification-code-incorrect": "验证码不正确", + "verification-code-many-request": "验证码校验请求过多", + "verification-step-description": "输入我们刚发送到 {{address}} 的 6 位验证码", + "verification-step-label": "验证" + }, + "provider": { + "email": "Email", + "email-description": "使用发送到您 Email 地址的安全码进行认证。", + "email-hint": "认证码通过 Email 发送至 {{ info }}", + "sms": "SMS", + "sms-description": "使用手机进行认证。登录时我们将通过 SMS 短信向您发送安全码。", + "sms-hint": "认证码通过短信发送至 {{ info }}", + "totp": "认证器应用", + "totp-description": "使用手机上的 Google Authenticator、Authy 或 Duo 等应用进行认证。它将生成登录所需的安全码。", + "totp-hint": "认证器应用已为您的账户设置", + "backup_code": "备用验证码", + "backup-code-description": "这些可打印的一次性密码允许您在不方便使用手机时(例如旅行中)登录账户。", + "backup-code-hint": "目前有 {{ info }} 个一次性验证码可用" + } + }, + "password-requirement": { + "at-least": "至少:", + "character": "{ count, plural, =1 {1 个字符} other {# 个字符} }", + "digit": "{ count, plural, =1 {1 个数字} other {# 个数字} }", + "password-tooltip-min-length": "至少 {{minimumLength}} 个字符", + "password-tooltip-max-length": "最多 {{maximumLength}} 个字符", + "password-tooltip-uppercase": "{{minimumUppercaseLetters}} 个大写字符", + "password-tooltip-lowercase": "{{minimumLowercaseLetters}} 个小写字符", + "password-tooltip-digit": "{{minimumDigits}} 个数字", + "password-tooltip-special-characters": "{{minimumSpecialCharacters}} 个特殊字符", + "incorrect-password-try-again": "密码不正确,请重试", + "lowercase-letter": "{ count, plural, =1 {1 个小写字母} other {# 个小写字母} }", + "new-passwords-not-match": "新密码不匹配", + "password-should-not-contain-spaces": "密码不能包含空格", + "password-not-meet-requirements": "密码不符合要求", + "password-requirements": "密码要求", + "password-should-difference": "新密码应与当前密码不同", + "special-character": "{ count, plural, =1 {1 个特殊字符} other {# 个特殊字符} }", + "uppercase-letter": "{ count, plural, =1 {1 个大写字母} other {# 个大写字母} }", + "at-most": "最多:" + } + }, + "relation": { + "relations": "关联", + "direction": "方向", + "clear-relation-type": "清除关联类型", + "search-direction": { + "FROM": "从", + "TO": "到" + }, + "direction-type": { + "FROM": "从", + "TO": "到" + }, + "from-relations": "出站关联", + "to-relations": "入站关联", + "selected-relations": "已选择 { count, plural, =1 {1 条关联} other {# 条关联} }", + "type": "类型", + "to-entity-type": "目标实体类型", + "to-entity-name": "目标实体名称", + "from-entity-type": "源实体类型", + "from-entity-name": "源实体名称", + "to-entity": "目标实体", + "from-entity": "源实体", + "delete": "删除关联", + "relation-type": "关联类型", + "relation-type-required": "关联类型为必填项。", + "relation-type-max-length": "关联类型长度不得超过 256", + "any-relation-type": "任意类型", + "add": "添加关联", + "edit": "编辑关联", + "delete-to-relation-title": "确定要删除与实体“{{entityName}}”的关联吗?", + "delete-to-relation-text": "请注意,确认后实体“{{entityName}}”将与当前实体取消关联。", + "delete-to-relations-title": "确定要删除 { count, plural, =1 {1 条关联} other {# 条关联} } 吗?", + "delete-to-relations-text": "请注意,确认后所有选中的关联将被移除,相应实体将与当前实体取消关联。", + "delete-from-relation-title": "确定要删除来自实体“{{entityName}}”的关联吗?", + "delete-from-relation-text": "请注意,确认后当前实体将与实体“{{entityName}}”取消关联。", + "delete-from-relations-title": "确定要删除 { count, plural, =1 {1 条关联} other {# 条关联} } 吗?", + "delete-from-relations-text": "请注意,确认后所有选中的关联将被移除,当前实体将与相应实体取消关联。", + "remove-relation-filter": "移除关联过滤器", + "remove-filter": "移除过滤器", + "add-relation-filter": "添加关联过滤器", + "any-relation": "任意关联", + "relation-filters": "关联过滤器", + "relation-filter": "关联过滤器", + "additional-info": "附加信息(JSON)", + "invalid-additional-info": "无法解析附加信息 JSON。", + "no-relations-text": "未找到关联", + "not": "非", + "copy-type": "复制类型" + }, + "resource": { + "add": "添加资源", + "all-types": "全部", + "copyId": "复制资源 Id", + "delete": "删除资源", + "delete-resource-text": "请注意,确认后该资源将无法恢复。", + "delete-resource-title": "确定要删除资源“{{resourceTitle}}”吗?", + "delete-resources-action-title": "删除 { count, plural, =1 {1 个资源} other {# 个资源} }", + "delete-resources-text": "请注意,即使选中的资源正在设备配置中使用,也将被删除。", + "delete-resources-title": "确定要删除 { count, plural, =1 {1 个资源} other {# 个资源} } 吗?", + "download": "下载资源", + "drop-file": "拖放资源文件或点击选择要上传的文件。", + "drop-resource-file-or": "拖放资源文件或", + "empty": "资源为空", + "file-name": "文件名", + "idCopiedMessage": "资源 Id 已复制到剪贴板", + "no-resource-matching": "未找到与“{{widgetsBundle}}”匹配的资源。", + "no-resource-text": "未找到资源", + "open-widgets-bundle": "打开部件包", + "resource": "资源", + "resource-file": "资源文件", + "resource-files": "资源文件", + "resource-library-details": "资源详情", + "resource-type": "资源类型", + "resources-library": "资源库", + "search": "搜索资源", + "selected-resources": "已选择 { count, plural, =1 {1 个资源} other {# 个资源} }", + "system": "系统", + "title": "标题", + "title-required": "标题为必填项。", + "title-max-length": "标题长度不得超过 256", + "type": { + "jks": "JKS", + "js-module": "JS 模块", + "lwm2m-model": "LWM2M 模型", + "pkcs-12": "PKCS #12", + "general": "通用" + }, + "resource-sub-type": "子类型", + "sub-type": { + "image": "图片", + "scada-symbol": "Scada 符号", + "extension": "扩展", + "module": "模块" + }, + "resource-is-in-use": "资源正被其他实体使用", + "resources-are-in-use": "资源正被其他实体使用", + "resource-is-in-use-text": "资源 '{{title}}' 未被删除,因为它正被以下实体使用:", + "resources-are-in-use-text": "并非所有资源都已被删除,因为它们正被其他实体使用。
您可以通过点击相应资源行中的引用按钮查看引用的实体。
如果仍要删除这些资源,请在下方表格中选择它们并点击删除所选按钮。", + "delete-resource-in-use-text": "如果仍要删除该资源,请点击仍然删除按钮。" + }, + "javascript": { + "add": "添加 JavaScript 资源", + "delete": "删除 JavaScript 资源", + "delete-javascript-resource-text": "请注意,确认后该 JavaScript 资源将无法恢复。", + "delete-javascript-resource-title": "确定要删除 JavaScript 资源“{{resourceTitle}}”吗?", + "delete-javascript-resources-action-title": "删除 { count, plural, =1 {1 个 JavaScript 资源} other {# 个 JavaScript 资源} }", + "delete-javascript-resources-text": "请注意,即使选中的 JavaScript 资源正在 JavaScript 函数中使用,也将被删除。", + "delete-javascript-resources-title": "确定要删除 { count, plural, =1 {1 个 JavaScript 资源} other {# 个 JavaScript 资源} } 吗?", + "delete-javascript-resource-in-use-text": "如果仍要删除该 JavaScript 资源,请点击仍然删除按钮。", + "download": "下载 JavaScript 资源", + "upload-from-file": "从文件上传 JavaScript", + "resource-file": "JavaScript 资源文件", + "drop-file": "拖放 JavaScript 文件或点击选择要上传的文件。", + "drop-resource-file-or": "拖放 JavaScript 文件或", + "javascript-library": "JavaScript 库", + "javascript-type": "JavaScript 类型", + "javascript-resource-details": "JavaScript 资源详情", + "javascript-resource-is-in-use": "JavaScript 资源正被其他实体使用", + "javascript-resources-are-in-use": "JavaScript 资源正被其他实体使用", + "javascript-resource-is-in-use-text": "JavaScript 资源 '{{title}}' 未被删除,因为它正被以下实体使用:", + "javascript-resources-are-in-use-text": "并非所有 JavaScript 资源都已被删除,因为它们正被其他实体使用。
您可以通过点击相应资源行中的引用按钮查看引用的实体。
如果仍要删除这些 JavaScript 资源,请在下方表格中选择它们并点击删除所选按钮。", + "search": "搜索 JavaScript 资源", + "selected-javascript-resources": "已选择 { count, plural, =1 {1 个 JavaScript 资源} other {# 个 JavaScript 资源} }", + "no-javascript-resource-text": "未找到 JavaScript 资源", + "all-types": "全部", + "module-script": "模块脚本" + }, + "rpc": { + "error": { + "target-device-is-not-set": "目标设备未设置!", + "invalid-target-entity": "{{entityType}} 实体不支持 RPC 命令。", + "failed-to-resolve-target-device": "无法解析目标设备!", + "request-timeout": "请求超时", + "rpc-http-error": "错误:{{status}} - {{statusText}}" + } + }, + "rulechain": { + "rulechain": "规则链", + "rulechain-events": "规则链事件", + "rulechains": "规则链", + "root": "根", + "delete": "删除规则链", + "name": "名称", + "name-required": "名称为必填项。", + "name-max-length": "名称长度不得超过 256", + "description": "描述", + "add": "添加规则链", + "set-root": "设为根规则链", + "set-root-rulechain-title": "确定要将规则链“{{ruleChainName}}”设为根规则链吗?", + "set-root-rulechain-text": "确认后,该规则链将成为根规则链,并处理所有传入的传输消息。", + "delete-rulechain-title": "确定要删除规则链“{{ruleChainName}}”吗?", + "delete-rulechain-text": "请注意,确认后该规则链及所有相关数据将无法恢复。", + "delete-rulechains-title": "确定要删除 { count, plural, =1 {1 条规则链} other {# 条规则链} } 吗?", + "delete-rulechains-action-title": "删除 { count, plural, =1 {1 条规则链} other {# 条规则链} }", + "delete-rulechains-text": "请注意,确认后所有选中的规则链将被移除,所有相关数据将无法恢复。", + "add-rulechain-text": "添加新规则链", + "no-rulechains-text": "未找到规则链", + "rulechain-details": "规则链详情", + "details": "详情", + "events": "事件", + "system": "系统", + "import": "导入规则链", + "export": "导出规则链", + "export-failed-error": "无法导出规则链:{{error}}", + "create-new-rulechain": "创建新规则链", + "rulechain-file": "规则链文件", + "invalid-rulechain-file-error": "无法导入规则链:无效的规则链数据结构。", + "copyId": "复制规则链 Id", + "idCopiedMessage": "规则链 Id 已复制到剪贴板", + "select-rulechain": "选择规则链", + "no-rulechains-matching": "未找到与“{{entity}}”匹配的规则链。", + "rulechain-required": "规则链为必填项", + "management": "规则管理", + "debug-mode": "调试模式", + "search": "搜索规则链", + "selected-rulechains": "已选择 { count, plural, =1 {1 条规则链} other {# 条规则链} }", + "open-rulechain": "打开规则链", + "edge-template-root": "模板根", + "assign-to-edge": "分配到 Edge", + "edge-rulechain": "Edge 规则链", + "unassign-rulechain-from-edge-text": "确认后,该规则链将被取消分配,Edge 将无法访问。", + "unassign-rulechains-from-edge-title": "确定要取消分配 { count, plural, =1 {1 条规则链} other {# 条规则链} } 吗?", + "unassign-rulechains-from-edge-text": "确认后,所有选中的规则链将被取消分配,Edge 将无法访问。", + "assign-rulechain-to-edge-title": "将规则链分配到 Edge", + "assign-rulechain-to-edge-text": "请选择要分配到 Edge 的规则链", + "set-edge-template-root-rulechain": "设为 Edge 模板根规则链", + "set-edge-template-root-rulechain-title": "确定要将规则链“{{ruleChainName}}”设为 Edge 模板根规则链吗?", + "set-edge-template-root-rulechain-text": "确认后,该规则链将成为 Edge 模板根规则链,并作为新创建 Edge 的根规则链。", + "invalid-rulechain-type-error": "无法导入规则链:无效的规则链类型。期望类型为 {{expectedRuleChainType}}。", + "set-auto-assign-to-edge": "创建时自动将规则链分配到 Edge", + "set-auto-assign-to-edge-title": "确定要在创建时将 Edge 规则链“{{ruleChainName}}”分配到 Edge 吗?", + "set-auto-assign-to-edge-text": "确认后,该 Edge 规则链将在创建时自动分配到 Edge。", + "unset-auto-assign-to-edge": "创建时不自动将规则链分配到 Edge", + "unset-auto-assign-to-edge-title": "确定不在创建时将 Edge 规则链“{{ruleChainName}}”分配到 Edge 吗?", + "unset-auto-assign-to-edge-text": "确认后,该 Edge 规则链将不再在创建时自动分配到 Edge。", + "unassign-rulechain-title": "确定要取消分配规则链“{{ruleChainName}}”吗?", + "unassign-rulechains": "取消分配规则链" + }, + "rulenode": { + "rule-node-events": "规则节点事件", + "details": "详情", + "events": "事件", + "search": "搜索节点", + "open-node-library": "打开节点库", + "close-node-library": "关闭节点库", + "add": "添加规则节点", + "name": "名称", + "name-required": "名称为必填项。", + "name-max-length": "名称长度不得超过 256", + "type": "类型", + "rule-node-description": "规则节点描述", + "delete": "删除规则节点", + "select-all-objects": "选择所有节点和连接", + "deselect-all-objects": "取消选择所有节点和连接", + "delete-selected-objects": "删除所选节点和连接", + "delete-selected": "删除所选", + "create-nested-rulechain": "创建嵌套规则链", + "select-all": "全选", + "copy-selected": "复制所选", + "deselect-all": "取消全选", + "rulenode-details": "规则节点详情", + "debug-mode": "调试模式", + "singleton": "单例", + "configuration": "配置", + "link": "链接", + "link-details": "规则节点链接详情", + "add-link": "添加链接", + "link-label": "链接标签", + "link-label-required": "链接标签为必填项。", + "custom-link-label": "自定义链接标签", + "custom-link-label-required": "自定义链接标签为必填项。", + "link-labels": "链接标签", + "link-labels-required": "链接标签为必填项。", + "no-link-labels-found": "未找到链接标签", + "no-link-label-matching": "未找到“{{label}}”。", + "create-new-link-label": "创建一个新标签!", + "type-filter": "过滤", + "type-filter-details": "使用配置的条件过滤传入消息", + "type-enrichment": "数据补充", + "type-enrichment-details": "向消息元数据中添加附加信息", + "type-transformation": "转换", + "type-transformation-details": "更改消息负载和元数据", + "type-action": "操作", + "type-action-details": "执行特殊操作", + "type-external": "外部", + "type-external-details": "与外部系统交互", + "type-rule-chain": "规则链", + "type-rule-chain-details": "将传入消息转发到指定规则链", + "type-flow": "流程", + "type-flow-details": "组织消息流程", + "type-input": "输入", + "type-input-details": "规则链的逻辑输入,将传入消息转发到下一个关联的规则节点", + "type-unknown": "未知", + "type-unknown-details": "无法解析的规则节点", + "directive-is-not-loaded": "定义的配置指令“{{directiveName}}”不可用。", + "ui-resources-load-error": "加载配置 UI 资源失败。", + "invalid-target-rulechain": "无法解析目标规则链!", + "test-script-function": "测试脚本函数", + "script-lang-java-script": "JavaScript", + "script-lang-tbel": "TBEL", + "message": "消息", + "message-type": "消息类型", + "select-message-type": "选择消息类型", + "message-type-required": "消息类型为必填项", + "metadata": "元数据", + "metadata-required": "元数据条目不能为空。", + "output": "输出", + "test": "测试", + "help": "帮助", + "reset-debug-settings": "重置所有节点的调试设置", + "test-with-this-message": "{{test}} 使用此消息", + "queue-hint": "选择要将消息转发到的队列。默认使用“Main”队列。", + "queue-singleton-hint": "选择在多实例环境中用于消息转发的队列。默认使用“Main”队列。" + }, + "rule-node-config": { + "id": "Id", + "additional-info": "附加信息", + "advanced-settings": "高级设置", + "create-entity-if-not-exists": "如果实体不存在则创建新实体", + "create-entity-if-not-exists-hint": "如果启用,将使用指定参数创建新实体(除非该实体已存在)。已有实体将直接用于关联。", + "select-device-connectivity-event": "选择设备连接事件", + "entity-name-pattern": "名称模式", + "device-name-pattern": "设备名称", + "asset-name-pattern": "资产名称", + "entity-view-name-pattern": "实体视图名称", + "customer-title-pattern": "客户标题", + "dashboard-name-pattern": "仪表板标题", + "user-name-pattern": "用户 Email", + "edge-name-pattern": "Edge 名称", + "entity-name-pattern-required": "名称模式为必填项", + "entity-name-pattern-hint": "名称模式字段支持模板化。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "copy-message-type": "复制消息类型", + "entity-type-pattern": "类型模式", + "entity-type-pattern-required": "类型模式为必填项", + "message-type-value": "消息类型值", + "message-type-value-required": "消息类型值为必填项", + "message-type-value-max-length": "消息类型值应少于 256 个字符", + "output-message-type": "输出消息类型", + "entity-cache-expiration": "实体缓存过期时间(秒)", + "entity-cache-expiration-hint": "指定存储已找到的实体记录的最大时间间隔。值为 0 表示记录永不过期。", + "entity-cache-expiration-required": "实体缓存过期时间为必填项。", + "entity-cache-expiration-range": "实体缓存过期时间应大于或等于 0。", + "customer-name-pattern": "客户标题", + "customer-name-pattern-required": "客户标题为必填项", + "customer-name-pattern-hint": "使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "create-customer-if-not-exists": "如果客户不存在则创建新客户", + "unassign-from-customer": "如果发起者是仪表板则从指定客户取消分配", + "unassign-from-customer-tooltip": "只有仪表板可以同时分配给多个客户。\n如果消息发起者是仪表板,您需要明确指定要取消分配的客户标题。", + "customer-cache-expiration": "客户缓存过期时间(秒)", + "customer-cache-expiration-hint": "指定存储已找到的客户记录的最大时间间隔。值为 0 表示记录永不过期。", + "customer-cache-expiration-required": "客户缓存过期时间为必填项。", + "customer-cache-expiration-range": "客户缓存过期时间应大于或等于 0。", + "interval-start": "间隔开始", + "interval-end": "间隔结束", + "time-unit": "时间单位", + "fetch-mode": "获取模式", + "order-by-timestamp": "按时间戳排序", + "limit": "限制", + "limit-hint": "最小限制值为 2,最大为 1000。如果您想获取单条记录,请选择获取模式“First”或“Last”。", + "limit-required": "限制为必填项。", + "limit-range": "限制应在 2 到 1000 的范围内。", + "time-unit-milliseconds": "毫秒", + "time-unit-seconds": "秒", + "time-unit-minutes": "分钟", + "time-unit-hours": "小时", + "time-unit-days": "天", + "time-value-range": "允许范围为 1 到 2147483647。", + "start-interval-value-required": "间隔开始为必填项。", + "end-interval-value-required": "间隔结束为必填项。", + "filter": "过滤器", + "switch": "切换", + "math-templatization-tooltip": "此字段支持模板化。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "add-message-type": "添加消息类型", + "select-message-types-required": "至少应选择一种消息类型。", + "select-message-types": "选择消息类型", + "no-message-types-found": "未找到消息类型", + "no-message-type-matching": "未找到“{{messageType}}”。", + "create-new-message-type": "创建新的消息类型。", + "message-types-required": "消息类型为必填项。", + "client-attributes": "客户端属性", + "shared-attributes": "共享属性", + "server-attributes": "服务端属性", + "attributes-keys": "属性键", + "attributes-keys-required": "属性键为必填项", + "attributes-scope": "属性范围", + "attributes-scope-value": "属性范围值", + "attributes-scope-value-copy": "复制属性范围值", + "attributes-scope-hint": "使用 'scope' 元数据键为每条消息动态设置属性范围。如果提供了该值,将覆盖配置中设置的范围。", + "notify-device": "强制通知设备", + "send-attributes-updated-notification": "发送属性更新通知", + "send-attributes-updated-notification-hint": "将已更新属性的通知作为单独消息发送到规则引擎队列。", + "send-attributes-deleted-notification": "发送属性删除通知", + "send-attributes-deleted-notification-hint": "将已删除属性的通知作为单独消息发送到规则引擎队列。", + "update-attributes-only-on-value-change": "仅在值更改时保存属性", + "update-attributes-only-on-value-change-hint": "对每条传入消息都更新属性,无论其值是否已更改。这会增加 API 使用量并降低性能。", + "update-attributes-only-on-value-change-hint-enabled": "仅在属性值发生更改时才更新属性。如果值未更改,则不会更新属性时间戳,也不会发送属性更改通知。", + "fetch-credentials-to-metadata": "将凭据获取到元数据", + "notify-device-on-update-hint": "如果启用,将强制向设备发送共享属性更新通知。如果禁用,通知行为由传入消息元数据中的 'notifyDevice' 参数控制。要关闭通知,消息元数据必须包含值为 'false' 的 'notifyDevice' 参数。其他任何情况都将触发向设备发送通知。", + "notify-device-on-delete-hint": "如果启用,将强制向设备发送共享属性移除通知。如果禁用,通知行为由传入消息元数据中的 'notifyDevice' 参数控制。要开启通知,消息元数据必须包含值为 'true' 的 'notifyDevice' 参数。其他任何情况都不会触发向设备发送通知。", + "latest-timeseries": "最新时间序列数据键", + "timeseries-keys": "时间序列键", + "timeseries-keys-required": "至少应选择一个时间序列键。", + "add-timeseries-key": "添加时间序列键", + "add-message-field": "添加消息字段", + "relation-search-parameters": "关联搜索参数", + "relation-parameters": "关联参数", + "add-metadata-field": "添加元数据字段", + "data-keys": "消息字段名称", + "copy-from": "复制来源", + "data-to-metadata": "数据到元数据", + "metadata-to-data": "元数据到数据", + "use-regular-expression-hint": "使用正则表达式按模式复制键。\n\n提示与技巧:\n按“Enter”完成字段名称输入。\n按“Backspace”删除字段名称。支持多个字段名称。", + "interval": "间隔", + "interval-required": "间隔为必填项", + "interval-hint": "去重间隔(秒)。", + "interval-min-error": "最小允许值为 1", + "max-pending-msgs": "最大待处理消息数", + "max-pending-msgs-hint": "为每个唯一去重 ID 存储在内存中的最大消息数。", + "max-pending-msgs-required": "最大待处理消息数为必填项", + "max-pending-msgs-max-error": "最大允许值为 1000", + "max-pending-msgs-min-error": "最小允许值为 1", + "max-retries": "最大重试次数", + "max-retries-required": "最大重试次数为必填项", + "max-retries-hint": "将去重消息推入队列的最大重试次数。重试间隔为 10 秒", + "max-retries-max-error": "最大允许值为 100", + "max-retries-min-error": "最小允许值为 0", + "strategy": "策略", + "strategy-required": "策略为必填项", + "strategy-all-hint": "将去重期间内到达的所有消息作为单个 JSON 数组消息返回。其中每个元素表示包含 msg 和 metadata 内部属性的对象。", + "strategy-first-hint": "返回去重期间内到达的第一条消息。", + "strategy-last-hint": "返回去重期间内到达的最后一条消息。", + "first": "第一条", + "last": "最后一条", + "all": "全部", + "output-msg-type-hint": "去重结果的消息类型。", + "queue-name-hint": "去重结果将发布到的队列名称。", + "keys": "键", + "keys-required": "键为必填项", + "rename-keys-in": "在以下位置重命名键", + "data": "数据", + "message": "消息", + "metadata": "元数据", + "current-key-name": "当前键名称", + "key-name-required": "键名称为必填项", + "new-key-name": "新键名称", + "new-key-name-required": "新键名称为必填项", + "metadata-keys": "元数据字段名称", + "json-path-expression": "JSON 路径表达式", + "json-path-expression-required": "JSON 路径表达式为必填项", + "json-path-expression-hint": "JSONPath 指定 JSON 结构中某个元素或一组元素的路径。'$' 表示根对象或数组。", + "relations-query": "关联查询", + "device-relations-query": "设备关联查询", + "max-relation-level": "最大关联层级", + "max-relation-level-error": "值应大于 0 或不指定。", + "max-relation-level-invalid": "值应为整数。", + "relation-type": "关联类型", + "relation-type-pattern": "关联类型模式", + "relation-type-pattern-required": "关联类型模式为必填项", + "relation-types-list": "要传播的关联类型", + "relation-types-list-hint": "如果未选择传播关联类型,告警将不按关联类型过滤进行传播。", + "unlimited-level": "无限层级", + "latest-telemetry": "最新遥测", + "add-telemetry-key": "添加遥测键", + "delete-from": "删除来源", + "use-regular-expression-delete-hint": "使用正则表达式按模式删除键。\n\n提示与技巧:\n按“Enter”完成字段名称输入。\n按“Backspace”删除字段名称。\n支持多个字段名称。", + "fetch-into": "获取到", + "attr-mapping": "属性映射:", + "source-attribute": "源属性键", + "source-attribute-required": "源属性键为必填项。", + "source-telemetry": "源遥测键", + "source-telemetry-required": "源遥测键为必填项。", + "target-key": "目标键", + "target-key-required": "目标键为必填项。", + "attr-mapping-required": "至少应指定一个映射条目。", + "fields-mapping": "字段映射", + "fields-mapping-hint": "如果消息字段设置为 $entityId,消息发起者的 ID 将保存到指定的表列中。", + "relations-query-config-direction-suffix": "发起者", + "profile-name": "配置名称", + "fetch-circle-parameter-info-from-metadata-hint": "元数据字段 '{{perimeterKeyName}}' 应按以下格式定义:{\"latitude\":48.196, \"longitude\":24.6532, \"radius\":100.0, \"radiusUnit\":\"METER\"}", + "fetch-poligon-parameter-info-from-metadata-hint": "元数据字段 '{{perimeterKeyName}}' 应按以下格式定义:[[48.19736,24.65235],[48.19800,24.65060],...,[48.19849,24.65420]]", + "short-templatization-tooltip": "使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "fields-mapping-required": "至少应指定一个字段映射。", + "at-least-one-field-required": "至少一个输入字段必须提供值。", + "originator-fields-sv-map-hint": "目标键字段支持模板化。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "sv-map-hint": "仅目标键字段支持模板化。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "source-field": "源字段", + "source-field-required": "源字段为必填项。", + "originator-source": "发起者来源", + "new-originator": "新发起者", + "originator-customer": "客户", + "originator-tenant": "租户", + "originator-related": "关联实体", + "originator-alarm-originator": "告警发起者", + "originator-entity": "按名称模式匹配的实体", + "clone-message": "克隆消息", + "transform": "转换", + "default-ttl": "默认 TTL", + "default-ttl-required": "默认 TTL 为必填项。", + "default-ttl-hint": "规则节点将从消息元数据中获取 Time-to-Live(TTL)值。如果没有值,则使用配置中指定的 TTL。如果值设为 0,则应用租户配置中的 TTL。", + "default-ttl-zero-hint": "如果 TTL 值设为 0,则不会应用 TTL。", + "min-default-ttl-message": "最小 TTL 仅允许为 0。", + "generation-parameters": "生成参数", + "message-count": "生成消息限制(0 - 无限)", + "message-count-required": "生成消息限制为必填项。", + "min-message-count-message": "最小消息数仅允许为 0。", + "period-seconds": "周期(秒)", + "period-seconds-required": "周期为必填项。", + "generation-frequency-seconds": "生成频率(秒)", + "generation-frequency-required": "生成频率为必填项。", + "min-generation-frequency-message": "最小值仅允许为 60 秒。", + "script-lang-tbel": "TBEL", + "script-lang-js": "JS", + "use-metadata-period-in-seconds-patterns": "使用秒周期模式", + "use-metadata-period-in-seconds-patterns-hint": "如果选中,规则节点将使用消息元数据或数据中的秒周期间隔模式(假设间隔以秒为单位)。", + "period-in-seconds-pattern": "秒周期模式", + "period-in-seconds-pattern-required": "秒周期模式为必填项", + "min-period-seconds-message": "最小周期仅允许为 60 秒。", + "originator": "发起者", + "message-body": "消息体", + "message-metadata": "消息元数据", + "generate": "生成", + "current-rule-node": "当前规则节点", + "current-tenant": "当前租户", + "generator-function": "生成器函数", + "test-generator-function": "测试生成器函数", + "generator": "生成器", + "test-filter-function": "测试过滤器函数", + "test-switch-function": "测试切换函数", + "test-transformer-function": "测试转换器函数", + "transformer": "转换器", + "alarm-create-condition": "告警创建条件", + "test-condition-function": "测试条件函数", + "alarm-clear-condition": "告警清除条件", + "alarm-details-builder": "告警详情构建器", + "test-details-function": "测试详情函数", + "alarm-type": "告警类型", + "select-entity-types": "选择实体类型", + "alarm-type-required": "告警类型为必填项。", + "alarm-severity": "告警严重程度", + "alarm-severity-required": "告警严重程度为必填项", + "alarm-severity-pattern": "告警严重程度模式", + "alarm-status-filter": "告警状态过滤器", + "alarm-status-list-empty": "告警状态列表为空", + "no-alarm-status-matching": "未找到匹配的告警状态。", + "propagate": "将告警传播到关联实体", + "propagate-to-owner": "将告警传播到实体所有者(客户或租户)", + "propagate-to-tenant": "将告警传播到租户", + "condition": "条件", + "details": "详情", + "to-string": "转为字符串", + "test-to-string-function": "测试转为字符串函数", + "from-template": "发件人", + "from-template-required": "发件人为必填项", + "message-to-metadata": "消息到元数据", + "metadata-to-message": "元数据到消息", + "from-message": "来自消息", + "from-metadata": "来自元数据", + "to-template": "收件人", + "to-template-required": "收件人模板为必填项", + "mail-address-list-template-hint": "逗号分隔的地址列表,使用 ${metadataKey} 获取元数据中的值,使用 $[messageKey] 获取消息体中的值", + "cc-template": "抄送", + "bcc-template": "密送", + "subject-template": "主题", + "subject-template-required": "主题模板为必填项", + "body-template": "正文", + "body-template-required": "正文模板为必填项", + "dynamic-mail-body-type": "动态邮件正文类型", + "mail-body-type": "邮件正文类型", + "body-type-template": "正文类型模板", + "reply-routing-configuration": "回复路由配置", + "rpc-reply-routing-configuration-hint": "这些配置参数指定用于标识服务、会话和请求的元数据键名称,以便发送回复。", + "reply-routing-configuration-hint": "这些配置参数指定用于标识服务和请求的元数据键名称,以便发送回复。", + "request-id-metadata-attribute": "请求 Id", + "service-id-metadata-attribute": "服务 Id", + "session-id-metadata-attribute": "会话 Id", + "timeout-sec": "超时时间(秒)", + "timeout-required": "超时时间为必填项", + "min-timeout-message": "最小超时值仅允许为 0。", + "endpoint-url-pattern": "Endpoint URL 模式", + "endpoint-url-pattern-required": "Endpoint URL 模式为必填项", + "request-method": "请求方法", + "use-simple-client-http-factory": "使用简单客户端 HTTP 工厂", + "ignore-request-body": "无请求体", + "parse-to-plain-text": "解析为纯文本", + "parse-to-plain-text-hint": "如果选中,请求体消息载荷将从 JSON 字符串转换为纯文本,例如 msg = \"Hello,\\t\"world\"\" 将解析为 Hello, \"world\"", + "read-timeout": "读取超时时间(毫秒)", + "read-timeout-hint": "值为 0 表示无限超时", + "max-parallel-requests-count": "最大并行请求数", + "max-parallel-requests-count-hint": "值为 0 表示不限制并行处理", + "max-response-size": "最大响应大小(KB)", + "max-response-size-hint": "解码或编码 HTTP 消息(如 JSON 或 XML 载荷)时分配用于缓冲数据的最大内存量", + "headers": "请求头", + "headers-hint": "在请求头/值字段中使用 ${metadataKey} 获取元数据中的值,使用 $[messageKey] 获取消息体中的值", + "header": "请求头", + "header-required": "请求头为必填项", + "value": "值", + "value-required": "值为必填项", + "topic-pattern": "主题模式", + "key-pattern": "键模式", + "key-pattern-hint": "可选。如果指定了有效的分区号,则在发送记录时将使用该分区号。如果未指定分区,则使用键代替。如果两者都未指定,将以轮询方式分配分区。", + "topic-pattern-required": "主题模式为必填项", + "topic": "主题", + "topic-required": "主题为必填项", + "bootstrap-servers": "Bootstrap 服务器", + "bootstrap-servers-required": "Bootstrap 服务器值为必填项", + "other-properties": "其他属性", + "key": "键", + "key-required": "键为必填项", + "retries": "失败时自动重试次数", + "min-retries-message": "最小重试次数仅允许为 0。", + "batch-size-bytes": "生产者批量大小(字节)", + "min-batch-size-bytes-message": "最小批量大小仅允许为 0。", + "linger-ms": "本地缓冲时间(毫秒)", + "min-linger-ms-message": "最小值仅允许为 0 毫秒。", + "buffer-memory-bytes": "客户端缓冲区最大大小(字节)", + "min-buffer-memory-message": "最小缓冲区大小仅允许为 0。", + "memory-buffer-size-range": "内存缓冲区大小必须在 0 到 {{max}} KB 之间", + "acks": "确认数", + "topic-arn-pattern": "主题 ARN 模式", + "topic-arn-pattern-required": "主题 ARN 模式为必填项", + "aws-access-key-id": "AWS Access Key ID", + "aws-access-key-id-required": "AWS Access Key ID 为必填项", + "aws-secret-access-key": "AWS Secret Access Key", + "aws-secret-access-key-required": "AWS Secret Access Key 为必填项", + "aws-region": "AWS 区域", + "aws-region-required": "AWS 区域为必填项", + "exchange-name-pattern": "Exchange 名称模式", + "routing-key-pattern": "路由键模式", + "message-properties": "消息属性", + "host": "主机", + "host-required": "主机为必填项", + "port": "端口", + "port-required": "端口为必填项", + "port-range": "端口应在 1 到 65535 的范围内。", + "virtual-host": "虚拟主机", + "username": "用户名", + "password": "密码", + "automatic-recovery": "自动恢复", + "connection-timeout-ms": "连接超时时间(毫秒)", + "min-connection-timeout-ms-message": "最小值仅允许为 0 毫秒。", + "handshake-timeout-ms": "握手超时时间(毫秒)", + "min-handshake-timeout-ms-message": "最小值仅允许为 0 毫秒。", + "client-properties": "客户端属性", + "queue-url-pattern": "队列 URL 模式", + "queue-url-pattern-required": "队列 URL 模式为必填项", + "delay-seconds": "延迟(秒)", + "min-delay-seconds-message": "最小值仅允许为 0 秒。", + "max-delay-seconds-message": "最大值仅允许为 900 秒。", + "name": "名称", + "name-required": "名称为必填项", + "queue-type": "队列类型", + "sqs-queue-standard": "标准", + "sqs-queue-fifo": "FIFO", + "gcp-project-id": "GCP 项目 ID", + "gcp-project-id-required": "GCP 项目 ID 为必填项", + "gcp-service-account-key": "GCP 服务账号密钥文件", + "gcp-service-account-key-required": "GCP 服务账号密钥文件为必填项", + "pubsub-topic-name": "主题名称", + "pubsub-topic-name-required": "主题名称为必填项", + "message-attributes": "消息属性", + "message-attributes-hint": "在名称/值字段中使用 ${metadataKey} 获取元数据中的值,使用 $[messageKey] 获取消息体中的值", + "connect-timeout": "连接超时时间(秒)", + "connect-timeout-required": "连接超时时间为必填项。", + "connect-timeout-range": "连接超时时间应在 1 到 200 的范围内。", + "client-id": "Client ID", + "client-id-hint": "可选。留空将自动生成 Client ID。指定 Client ID 时请谨慎。大多数 MQTT 代理不允许使用相同 Client ID 的多个连接。要连接到此类代理,您的 MQTT Client ID 必须唯一。当平台以微服务模式运行时,规则节点的副本会在每个微服务中启动。这将自动导致多个具有相同 ID 的 MQTT 客户端,并可能导致规则节点故障。为避免此类故障,请启用下方的“将 Service ID 作为后缀添加到 Client ID”选项。", + "append-client-id-suffix": "将 Service ID 作为后缀添加到 Client ID", + "client-id-suffix-hint": "可选。在明确指定“Client ID”时适用。如果选中,Service ID 将作为后缀添加到 Client ID。有助于避免平台以微服务模式运行时的故障。", + "device-id": "设备 ID", + "device-id-required": "设备 ID 为必填项。", + "clean-session": "清除会话", + "enable-ssl": "启用 SSL", + "credentials": "凭据", + "credentials-type": "凭据类型", + "credentials-type-required": "凭据类型为必填项。", + "credentials-anonymous": "匿名", + "credentials-basic": "基本", + "credentials-pem": "PEM", + "credentials-pem-hint": "至少需要服务器 CA 证书文件或客户端证书和客户端私钥文件对", + "credentials-sas": "共享访问签名", + "sas-key": "SAS 密钥", + "sas-key-required": "SAS 密钥为必填项。", + "hostname": "主机名", + "hostname-required": "主机名为必填项。", + "azure-ca-cert": "CA 证书文件", + "username-required": "用户名为必填项。", + "password-required": "密码为必填项。", + "ca-cert": "服务器 CA 证书文件", + "private-key": "客户端私钥文件", + "cert": "客户端证书文件", + "no-file": "未选择文件。", + "drop-file": "拖放文件或点击以选择要上传的文件。", + "private-key-password": "私钥密码", + "use-system-smtp-settings": "使用系统 SMTP 设置", + "use-metadata-dynamic-interval": "使用动态间隔", + "metadata-dynamic-interval-hint": "间隔开始和结束输入字段支持模板化。请注意,替换后的模板值应以毫秒为单位设置。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "use-metadata-interval-patterns-hint": "如果选中,规则节点将使用消息元数据或数据中的开始和结束间隔模式(假设间隔以毫秒为单位)。", + "use-message-alarm-data": "使用消息告警数据", + "overwrite-alarm-details": "覆盖告警详情", + "use-alarm-severity-pattern": "使用告警严重程度模式", + "check-all-keys": "检查所有指定字段是否存在", + "check-all-keys-hint": "如果选中,将检查所有指定的键是否存在于消息数据和元数据中。", + "check-relation-to-specific-entity": "检查与特定实体的关联", + "check-relation-to-specific-entity-tooltip": "如果启用,将检查与特定实体的关联是否存在;否则,检查与任意实体的关联是否存在。在两种情况下,关联查找都基于配置的方向和类型。", + "check-relation-hint": "根据方向和关联类型检查与特定实体或任意实体的关联是否存在。", + "delete-relation-with-specific-entity": "删除与特定实体的关联", + "delete-relation-with-specific-entity-hint": "如果启用,将仅删除与一个特定实体的关联。否则,将删除与所有匹配实体的关联。", + "delete-relation-hint": "根据方向和类型,从传入消息的发起者删除到指定实体或实体列表的关联。", + "remove-current-relations": "移除当前关联", + "remove-current-relations-hint": "根据方向和类型,移除传入消息发起者的当前关联。", + "change-originator-to-related-entity": "将发起者更改为关联实体", + "change-originator-to-related-entity-hint": "用于将提交的消息作为来自另一个实体的消息进行处理。", + "start-interval": "间隔开始", + "end-interval": "间隔结束", + "start-interval-required": "间隔开始为必填项。", + "end-interval-required": "间隔结束为必填项。", + "smtp-protocol": "协议", + "smtp-host": "SMTP 主机", + "smtp-host-required": "SMTP 主机为必填项。", + "smtp-port": "SMTP 端口", + "smtp-port-required": "必须提供 SMTP 端口。", + "smtp-port-range": "SMTP 端口应在 1 到 65535 的范围内。", + "timeout-msec": "超时时间(毫秒)", + "min-timeout-msec-message": "最小值仅允许为 0 毫秒。", + "enter-username": "输入用户名", + "enter-password": "输入密码", + "enable-tls": "启用 TLS", + "tls-version": "TLS 版本", + "enable-proxy": "启用代理", + "use-system-proxy-properties": "使用系统代理属性", + "proxy-host": "代理主机", + "proxy-host-required": "代理主机为必填项。", + "proxy-port": "代理端口", + "proxy-port-required": "代理端口为必填项。", + "proxy-port-range": "代理端口应在 1 到 65535 的范围内。", + "proxy-user": "代理用户", + "proxy-password": "代理密码", + "proxy-scheme": "代理方案", + "numbers-to-template": "电话号码收件人模板", + "numbers-to-template-required": "电话号码收件人模板为必填项", + "numbers-to-template-hint": "逗号分隔的电话号码,使用 ${metadataKey} 获取元数据中的值,使用 $[messageKey] 获取消息体中的值", + "sms-message-template": "短信消息模板", + "sms-message-template-required": "短信消息模板为必填项", + "use-system-sms-settings": "使用系统短信提供商设置", + "min-period-0-seconds-message": "最小周期仅允许为 0 秒。", + "max-pending-messages": "最大待处理消息数", + "max-pending-messages-required": "最大待处理消息数为必填项。", + "max-pending-messages-range": "最大待处理消息数应在 1 到 100000 的范围内。", + "originator-types-filter": "发起者类型过滤器", + "interval-seconds": "间隔(秒)", + "interval-seconds-required": "间隔为必填项。", + "int-range": "值不得超过最大整数限制(2147483648)", + "min-interval-seconds-message": "最小间隔仅允许为 1 秒。", + "output-timeseries-key-prefix": "输出时间序列键前缀", + "output-timeseries-key-prefix-required": "输出时间序列键前缀为必填项。", + "separator-hint": "您应按“Enter”完成字段输入。", + "select-details": "选择详情", + "entity-details-id": "Id", + "entity-details-title": "标题", + "entity-details-country": "国家", + "entity-details-state": "省/州", + "entity-details-city": "城市", + "entity-details-zip": "邮编", + "entity-details-address": "地址", + "entity-details-address2": "地址2", + "entity-details-additional_info": "附加信息", + "entity-details-phone": "电话", + "entity-details-email": "Email", + "email-sender": "Email 发送者", + "fields-to-check": "要检查的字段", + "add-detail": "添加详情", + "check-all-keys-tooltip": "如果启用,将检查消息和元数据字段名称中列出的所有字段是否存在于传入消息及其元数据中。", + "fields-to-check-hint": "按“Enter”完成字段名称输入。支持多个字段名称。", + "entity-details-list-empty": "至少应选择一个详情。", + "alarm-status": "告警状态", + "alarm-required": "至少应选择一个告警状态。", + "no-entity-details-matching": "未找到匹配的实体详情。", + "custom-table-name": "自定义表名称", + "custom-table-name-required": "表名称为必填项", + "custom-table-hint": "该表必须在您的 Cassandra 集群中创建,且其名称必须以前缀 'cs_tb_' 开头,以避免将数据插入到通用 TB 表中。请在此处输入不带 'cs_tb_' 前缀的表名称。", + "message-field": "消息字段", + "message-field-required": "消息字段为必填项。", + "table-col": "表列", + "table-col-required": "表列为必填项。", + "latitude-field-name": "纬度字段名称", + "longitude-field-name": "经度字段名称", + "latitude-field-name-required": "纬度字段名称为必填项。", + "longitude-field-name-required": "经度字段名称为必填项。", + "fetch-perimeter-info-from-metadata": "从元数据获取边界信息", + "fetch-perimeter-info-from-metadata-tooltip": "如果边界类型设为“Polygon”,元数据字段 '{{perimeterKeyName}}' 的值将直接用作边界定义,不进行额外解析。否则,如果边界类型设为“Circle”,'{{perimeterKeyName}}' 元数据字段的值将被解析以提取 'latitude'、'longitude'、'radius'、'radiusUnit' 字段用于圆形边界定义。", + "perimeter-key-name": "边界键名称", + "perimeter-key-name-hint": "包含边界信息的元数据字段名称。", + "perimeter-key-name-required": "边界键名称为必填项。", + "perimeter-circle": "圆形", + "perimeter-polygon": "多边形", + "perimeter-type": "边界类型", + "circle-center-latitude": "中心纬度", + "circle-center-latitude-required": "中心纬度为必填项。", + "circle-center-longitude": "中心经度", + "circle-center-longitude-required": "中心经度为必填项。", + "range-unit-meter": "米", + "range-unit-kilometer": "千米", + "range-unit-foot": "英尺", + "range-unit-mile": "英里", + "range-unit-nautical-mile": "海里", + "range-units": "范围单位", + "range-units-required": "范围单位为必填项。", + "range": "范围", + "range-required": "范围为必填项。", + "polygon-definition": "多边形定义", + "polygon-definition-required": "多边形定义为必填项。", + "polygon-definition-hint": "使用以下格式手动定义多边形:[[lat1,lon1],[lat2,lon2], ... ,[latN,lonN]]。", + "min-inside-duration": "最小内部持续时间", + "min-inside-duration-value-required": "最小内部持续时间为必填项", + "min-inside-duration-time-unit": "最小内部持续时间单位", + "min-outside-duration": "最小外部持续时间", + "min-outside-duration-value-required": "最小外部持续时间为必填项", + "min-outside-duration-time-unit": "最小外部持续时间单位", + "tell-failure-if-absent": "报告失败", + "tell-failure-if-absent-hint": "如果至少一个选定的键不存在,出站消息将报告“Failure”。", + "get-latest-value-with-ts": "获取最新遥测值的时间戳", + "get-latest-value-with-ts-hint": "如果选中,最新遥测值还将包含时间戳,例如:\"temp\": \"{\"ts\":1574329385897, \"value\":42}\"", + "ignore-null-strings": "忽略空字符串", + "ignore-null-strings-hint": "如果选中,规则节点将忽略值为空的实体字段。", + "add-metadata-key-values-as-kafka-headers": "将消息元数据键值对添加到 Kafka 记录头", + "add-metadata-key-values-as-kafka-headers-hint": "如果选中,消息元数据中的键值对将作为具有预定义字符集编码的字节数组添加到出站记录头。", + "charset-encoding": "字符集编码", + "charset-encoding-required": "字符集编码为必填项。", + "charset-us-ascii": "US-ASCII", + "charset-iso-8859-1": "ISO-8859-1", + "charset-utf-8": "UTF-8", + "charset-utf-16be": "UTF-16BE", + "charset-utf-16le": "UTF-16LE", + "charset-utf-16": "UTF-16", + "select-queue-hint": "队列名称可从下拉列表中选择或添加自定义名称。", + "device-profile-node-hint": "如果您有持续时间或重复条件,此功能可确保告警状态评估的连续性。", + "persist-alarm-rules": "持久化告警规则的状态", + "persist-alarm-rules-hint": "如果启用,规则节点将把处理状态存储到数据库。", + "fetch-alarm-rules": "获取告警规则的状态", + "fetch-alarm-rules-hint": "如果启用,规则节点将在初始化时恢复处理状态,并确保即使在服务器重启后也能触发告警。否则,状态将在设备的第一条消息到达时恢复。", + "input-value-key": "输入值键", + "input-value-key-required": "输入值键为必填项。", + "output-value-key": "输出值键", + "output-value-key-required": "输出值键为必填项。", + "number-of-digits-after-floating-point": "浮点数后的位数", + "number-of-digits-after-floating-point-range": "浮点数后的位数应在 0 到 15 的范围内。", + "failure-if-delta-negative": "如果差值为负则报告失败", + "failure-if-delta-negative-tooltip": "如果差值为负,规则节点将强制消息处理失败。", + "use-caching": "使用缓存", + "use-caching-tooltip": "规则节点将缓存来自传入消息的“{{inputValueKey}}”值以提高性能。请注意,如果您在其他位置修改了“{{inputValueKey}}”值,缓存将不会更新。", + "add-time-difference-between-readings": "添加“{{inputValueKey}}”读数之间的时间差", + "add-time-difference-between-readings-tooltip": "如果启用,规则节点将把“{{periodValueKey}}”添加到出站消息中。", + "period-value-key": "周期值键", + "period-value-key-required": "周期值键为必填项。", + "general-pattern-hint": "使用 ${metadataKey} 获取元数据中的值,使用 $[messageKey] 获取消息体中的值。", + "alarm-severity-pattern-hint": "使用 ${metadataKey} 获取元数据中的值,使用 $[messageKey] 获取消息体中的值。告警严重程度应为系统值(CRITICAL、MAJOR 等)", + "output-node-name-hint": "规则节点名称对应于出站消息的关联类型,用于将消息转发到调用者规则链中的其他规则节点。", + "use-server-ts": "使用服务器时间戳", + "use-server-ts-hint": "对缺少显式时间戳的时间序列数据使用服务器当前时间戳。这有助于在处理来自多个源的消息或消息乱序到达时保持正确的排序。", + "kv-map-pattern-hint": "所有输入字段支持模板化。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "kv-map-single-pattern-hint": "输入字段支持模板化。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "shared-scope": "共享范围", + "server-scope": "服务端范围", + "client-scope": "客户端范围", + "attribute-type": "属性", + "attribute-type-description": "从数据库获取属性值", + "attribute-type-result-description": "将结果作为实体属性存储到数据库", + "constant-type": "常量", + "constant-type-description": "定义常量值", + "time-series-type": "时间序列", + "time-series-type-description": "从数据库获取最新时间序列值", + "time-series-type-result-description": "将结果作为实体时间序列存储到数据库", + "message-body-type": "消息", + "message-body-type-description": "从传入消息获取参数值", + "message-body-type-result-description": "将结果添加到出站消息", + "message-metadata-type": "元数据", + "message-metadata-type-description": "从传入消息元数据获取参数值", + "message-metadata-result-description": "将结果添加到出站消息元数据", + "argument-tile": "参数", + "no-arguments-prompt": "未配置参数", + "result-title": "结果", + "functions-field-input": "函数", + "no-option-found": "未找到选项", + "argument-source-field-input": "来源", + "argument-source-field-input-required": "参数来源为必填项。", + "argument-key-field-input": "键", + "argument-key-field-input-required": "参数键为必填项。", + "constant-value-field-input": "常量值", + "constant-value-field-input-required": "常量值为必填项。", + "attribute-scope-field-input": "属性范围", + "attribute-scope-field-input-required": "属性范围为必填项。", + "default-value-field-input": "默认值", + "type-field-input": "类型", + "type-field-input-required": "类型为必填项。", + "key-field-input": "键", + "add-entity-type": "添加实体类型", + "add-device-profile": "添加设备配置", + "key-field-input-required": "键为必填项。", + "number-floating-point-field-input": "浮点数后的位数", + "number-floating-point-field-input-hint": "使用 0 将结果转换为整数", + "add-to-message-field-input": "添加到消息", + "add-to-metadata-field-input": "添加到元数据", + "custom-expression-field-input": "数学表达式", + "custom-expression-field-input-required": "数学表达式为必填项", + "custom-expression-field-input-hint": "指定要计算的数学表达式。默认表达式演示如何将华氏温度转换为摄氏温度", + "retained-message": "保留消息", + "attributes-mapping": "属性映射", + "latest-telemetry-mapping": "最新遥测映射", + "add-mapped-attribute-to": "将映射的属性添加到", + "add-mapped-latest-telemetry-to": "将映射的最新遥测添加到", + "add-mapped-fields-to": "将映射的字段添加到", + "add-selected-details-to": "将选定的详情添加到", + "clear-selected-types": "清除选定的类型", + "clear-selected-details": "清除选定的详情", + "clear-selected-fields": "清除选定的字段", + "clear-selected-keys": "清除选定的键", + "geofence-configuration": "地理围栏配置", + "coordinate-field-names": "坐标字段名称", + "coordinate-field-hint": "规则节点尝试从消息中检索指定的字段。如果不存在,将在元数据中查找。", + "presence-monitoring-strategy": "存在监测策略", + "presence-monitoring-strategy-on-first-message": "首条消息时", + "presence-monitoring-strategy-on-each-message": "每条消息时", + "presence-monitoring-strategy-on-first-message-hint": "在上一次存在状态“已进入”或“已离开”更新后,经过配置的最小持续时间,在第一条消息时报告存在状态“内部”或“外部”。", + "presence-monitoring-strategy-on-each-message-hint": "在存在状态“已进入”或“已离开”更新后,在每条消息时报告存在状态“内部”或“外部”。", + "fetch-credentials-to": "将凭据获取到", + "add-originator-attributes-to": "将发起者属性添加到", + "originator-attributes": "发起者属性", + "fetch-latest-telemetry-with-timestamp": "获取带时间戳的最新遥测", + "fetch-latest-telemetry-with-timestamp-tooltip": "如果选中,最新遥测值将带有时间戳添加到出站元数据,例如:\"{{latestTsKeyName}}\": \"{\"ts\":1574329385897, \"value\":42}\"", + "tell-failure": "如果任何属性缺失则报告失败", + "tell-failure-tooltip": "如果至少一个选定的键不存在,出站消息将报告“Failure”。", + "created-time": "创建时间", + "chip-help": "按 'Enter' 完成{{inputName}}输入。\n按 'Backspace' 删除{{inputName}}。\n支持多个值。", + "detail": "详情", + "field-name": "字段名称", + "device-profile": "设备配置", + "entity-type": "实体类型", + "message-type": "消息类型", + "timeseries-key": "时间序列键", + "type": "类型", + "first-name": "名", + "last-name": "姓", + "label": "标签", + "originator-fields-mapping": "发起者字段映射", + "add-mapped-originator-fields-to": "将映射的发起者字段添加到", + "fields": "字段", + "skip-empty-fields": "跳过空字段", + "skip-empty-fields-tooltip": "值为空的字段将不会添加到输出消息/输出元数据中。", + "fetch-interval": "获取间隔", + "fetch-strategy": "获取策略", + "fetch-timeseries-from-to": "获取从 {{startInterval}} {{startIntervalTimeUnit}} 前到 {{endInterval}} {{endIntervalTimeUnit}} 前的时间序列。", + "fetch-timeseries-from-to-invalid": "获取时间序列无效(“间隔开始”应小于“间隔结束”)。", + "use-metadata-dynamic-interval-tooltip": "如果选中,规则节点将基于消息和元数据模式使用动态间隔的开始和结束。", + "all-mode-hint": "如果选择了获取模式“All”,规则节点将使用可配置的查询参数从获取间隔中检索遥测。", + "first-mode-hint": "如果选择了获取模式“First”,规则节点将检索最接近获取间隔开始的遥测。", + "last-mode-hint": "如果选择了获取模式“Last”,规则节点将检索最接近获取间隔结束的遥测。", + "ascending": "升序", + "descending": "降序", + "min": "最小值", + "max": "最大值", + "average": "平均值", + "sum": "求和", + "count": "计数", + "none": "无", + "last-level-relation-tooltip": "如果选中,规则节点将仅在最大关联层级设定的层级上搜索关联实体。", + "last-level-device-relation-tooltip": "如果选中,规则节点将仅在最大关联层级设定的层级上搜索关联设备。", + "data-to-fetch": "要获取的数据", + "mapping-of-customers": "客户的映射", + "map-fields-required": "所有映射字段为必填项。", + "attributes": "属性", + "related-device-attributes": "关联设备属性", + "add-selected-attributes-to": "将选定的属性添加到", + "device-profiles": "设备配置", + "mapping-of-tenant": "租户的映射", + "add-attribute-key": "添加属性键", + "message-template": "消息模板", + "message-template-required": "消息模板为必填项", + "use-system-slack-settings": "使用系统 Slack 设置", + "slack-api-token": "Slack API Token", + "slack-api-token-required": "Slack API Token 为必填项", + "keys-mapping": "键映射", + "add-key": "添加键", + "recipients": "收件人", + "message-subject-and-content": "消息主题和内容", + "template-rules-hint": "两个输入字段均支持模板化。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从消息元数据中提取值。", + "originator-customer-desc": "使用传入消息发起者的客户作为新发起者。", + "originator-tenant-desc": "使用当前租户作为新发起者。", + "originator-related-entity-desc": "使用关联实体作为新发起者。基于配置的关联类型和方向进行查找。", + "originator-alarm-originator-desc": "使用告警发起者作为新发起者。仅当传入消息发起者为告警实体时适用。", + "originator-entity-by-name-pattern-desc": "使用从数据库获取的实体作为新发起者。基于实体类型和指定的名称模式进行查找。", + "email-from-template-hint": "使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "recipients-block-main-hint": "逗号分隔的地址列表。所有输入字段支持模板化。使用 $[messageKey] 从消息中提取值,使用 ${metadataKey} 从元数据中提取值。", + "forward-msg-default-rule-chain": "将消息转发到发起者的默认规则链", + "forward-msg-default-rule-chain-tooltip": "如果启用,消息将转发到发起者的默认规则链;如果发起者在实体配置中未定义默认规则链,则使用配置中的规则链。", + "exclude-zero-deltas": "从出站消息中排除零差值", + "exclude-zero-deltas-hint": "如果启用,仅当“{{outputValueKey}}”输出键的值不为零时才将其添加到出站消息。", + "exclude-zero-deltas-time-difference-hint": "如果启用,仅当“{{outputValueKey}}”值不为零时,才将“{{outputValueKey}}”和“{{periodValueKey}}”输出键添加到出站消息。", + "search-direction-from": "从发起者到目标实体", + "search-direction-to": "从目标实体到发起者", + "del-relation-direction-from": "从发起者", + "del-relation-direction-to": "到发起者", + "target-entity": "目标实体", + "function-configuration": "函数配置", + "function-name": "函数名称", + "function-name-required": "函数名称为必填项。", + "qualifier": "限定符", + "qualifier-hint": "如果未指定限定符,将使用默认限定符 \"$LATEST\"。", + "aws-credentials": "AWS 凭据", + "connection-timeout": "连接超时时间", + "connection-timeout-required": "连接超时时间为必填项。", + "connection-timeout-min": "最小连接超时时间为 0。", + "connection-timeout-hint": "初始建立连接时在放弃并超时之前等待的时间(秒)。值为 0 表示无限,不推荐使用。", + "request-timeout": "请求超时时间", + "request-timeout-required": "请求超时时间为必填项", + "request-timeout-min": "最小请求超时时间为 0", + "request-timeout-hint": "等待请求完成后放弃并超时的时间(秒)。值为 0 表示无限,不推荐使用。", + "units": "单位", + "tell-failure-aws-lambda": "如果 AWS Lambda 函数执行引发异常则报告失败", + "tell-failure-aws-lambda-hint": "如果 AWS Lambda 函数执行引发异常,规则节点将强制消息处理失败。", + "basic-mode": "基本", + "advanced-mode": "高级", + "save-time-series": { + "processing-settings": "处理设置", + "processing-settings-hint": "定义传入消息的处理方式。基本处理设置允许您选择预配置的策略,而高级设置允许您为每个操作选择单独的处理策略。", + "advanced-settings-hint": "配置处理策略时请谨慎。某些组合可能导致意外行为。", + "strategy": "策略", + "deduplication-interval": "去重间隔", + "deduplication-interval-required": "去重间隔为必填项", + "deduplication-interval-min-max-range": "去重间隔应至少为 1 秒且最多为 1 天", + "strategy-type": { + "every-message": "每条消息", + "skip": "跳过", + "deduplicate": "去重", + "web-sockets-only": "仅 WebSockets" + }, + "time-series": "时间序列", + "latest": "最新值", + "web-sockets": "WebSockets", + "calculated-fields-and-alarm-rules": "计算字段和告警规则" + }, + "save-attribute": { + "processing-settings": "处理设置", + "processing-settings-hint": "定义传入消息的处理方式。基本处理设置允许您选择预配置的策略,而高级设置允许您为每个操作选择单独的处理策略。", + "advanced-settings-hint": "配置处理策略时请谨慎。某些组合可能导致意外行为。", + "strategy": "策略", + "deduplication-interval": "去重间隔", + "deduplication-interval-required": "去重间隔为必填项", + "deduplication-interval-min-max-range": "去重间隔应至少为 1 秒且最多为 1 天", + "scope": "范围", + "strategy-type": { + "every-message": "每条消息", + "skip": "跳过", + "deduplicate": "去重", + "web-sockets-only": "仅 WebSockets" + }, + "attributes": "属性" }, "key-val": { - "key": "键名", - "value": "数值", - "remove-entry": "删除条目", - "add-entry": "增加条目", - "no-data": "没有条目" - }, - "layout": { - "layout": "布局", - "layouts": "布局", - "manage": "布局管理", - "settings": "布局设置", - "color": "颜色", - "main": "主体", - "right": "右侧", - "left": "左侧", - "select": "选择目标布局", - "percentage-width": "百分比宽度(%)", - "fixed-width": "固定(px)", - "left-width": "左列(%)", - "right-width": "右列(%)", - "pick-fixed-side": "固定侧: ", - "layout-fixed-width": "固定宽度(px)", - "value-min-error": "值是必须大于{{min}}{{unit}}", - "value-max-error": "值是必须小于{{max}}{{unit}}", - "layout-fixed-width-required": "固定宽度必填", - "right-width-percentage-required": "右侧百分比宽度必填", - "left-width-percentage-required": "左侧百分比宽度必填", - "divider": "分隔线", - "right-side": "右侧布局", - "left-side": "左侧布局", - "add-new-breakpoint": "添加新的栅格", - "breakpoint": "栅格", - "breakpoints": "栅格", - "copy-from": "复制", - "size": "尺寸", - "delete-breakpoint-title": "确定要删除栅格'{{name}}'吗?", - "delete-breakpoint-text": "请注意确认后栅格将无法恢复并且将使用默认栅格。" - }, - "legend": { - "direction": "图例方向", - "position": "图例位置", - "show-values": "显示数值", - "min-option": "最小值", - "max-option": "最大值", - "average-option": "平均值", - "total-option": "总数", - "latest-option": "最新值", - "sort-legend": "在图例中排序数据键", - "show-max": "显示最大值", - "show-min": "显示最小值", - "show-avg": "显示平均值", - "show-total": "显示总数", - "show-latest": "显示最新值", - "settings": "设置图例", - "min": "最小值", - "max": "最大值", - "avg": "平均值", - "total": "总数", - "latest": "最新值", - "Min": "最小值", - "Max": "最大值", - "Avg": "平均值", - "Total": "总数", - "Latest": "最新值", - "comparison-time-ago": { - "previousInterval": "(历史间隔)", - "customInterval": "(自定义间隔)", - "days": "(一天前)", - "weeks": "(一周前)", - "months": "(一个月前)", - "years": "(一年前)" - }, - "column-title": "标题", - "label": "标签", - "value": "数值" - }, - "login": { - "login": "登录", - "request-password-reset": "请求密码重置", - "reset-password": "重置密码", - "create-password": "创建密码", - "two-factor-authentication": "双因素认证", - "passwords-mismatch-error": "输入的密码必须相同!", - "password-again": "再次输入密码", - "username": "用户名(电子邮件)", - "remember-me": "记住我", - "forgot-password": "忘记密码?", - "password-reset": "密码重置", - "expired-password-reset-message": "您的凭据已过期!请创建密码。", - "new-password": "新密码", - "new-password-again": "再次输入新密码", - "password-link-sent-message": "密码重置链接已成功发送!", - "email": "电子邮件", - "invalid-email-format": "email格式无效。", - "login-with": "使用{{name}}登录", - "or": "或", - "error": "登录错误", - "verify-your-identity": "身份验证", - "select-way-to-verify": "选择验证方式", - "resend-code": "重发验证码", - "resend-code-wait": "{ time, plural, =1 {1 秒} other {# 秒} }后重发验证码", - "try-another-way": "尝试其他方法", - "totp-auth-description": "请从验证APP中查看验证码。", - "totp-auth-placeholder": "验证码", - "sms-auth-description": "验证码已发送到手机号码{{contact}}。", - "sms-auth-placeholder": "SMS 验证码", - "email-auth-description": "验证码已发送到电子邮箱地址{{contact}}。", - "email-auth-placeholder": "电子邮件验证码", - "backup-code-auth-description": "请输入一个备份验证码。", - "backup-code-auth-placeholder": "备份验证码", - "activation-link-expired": "激活链接已过期", - "activation-link-expired-message": "您的激活链接已过期返回登录页面重新发送电子邮件。", - "reset-password-link-expired": "密码重置链接已过期", - "reset-password-link-expired-message": "重置密码链接已过期返回登录页面重新发送电子邮件。" + "key": "键", + "value": "值", + "see-examples": "查看示例。", + "remove-entry": "移除条目", + "remove-mapping-entry": "移除映射条目", + "add-mapping-entry": "添加映射", + "add-entry": "添加条目", + "copy-key-values-from": "复制键值来源", + "delete-key-values": "删除键值", + "delete-key-values-from": "删除键值来源", + "at-least-one-key-error": "至少应选择一个键。", + "unique-key-value-pair-error": "“{{keyText}}”必须与“{{valText}}”不同!" }, - "markdown": { - "edit": "编辑", - "preview": "预览", - "copy-code": "点击复制", - "copied": "复制完成" + "mail-body-types": { + "plain-text": "纯文本", + "html": "HTML", + "dynamic": "动态", + "use-body-type-template": "使用正文类型模板", + "plain-text-description": "简单的无格式文本,没有特殊样式或格式。", + "html-text-description": "允许您在邮件正文中使用 HTML 标签进行格式化、链接和图片。", + "dynamic-text-description": "允许基于模板化功能动态使用纯文本或 HTML 正文类型。", + "after-template-evaluation-hint": "模板评估后,值应为 true 表示 HTML,false 表示纯文本。" + }, + "ai": { + "ai-model": "AI 模型", + "model": "模型", + "ai-model-hint": "选择此规则节点用于处理请求的预配置 AI 模型,或使用“新建”来配置新模型。", + "prompt-settings": "提示词设置", + "prompt-settings-hint": "可选的系统提示词设置 AI 的一般角色和约束,而用户提示词定义要执行的具体任务。两个字段均支持模板化。", + "system-prompt": "系统提示词", + "system-prompt-max-length": "系统提示词不得超过 500000 个字符。", + "system-prompt-blank": "系统提示词不能为空。", + "user-prompt": "用户提示词", + "user-prompt-required": "用户提示词为必填项。", + "user-prompt-max-length": "用户提示词不得超过 500000 个字符。", + "user-prompt-blank": "用户提示词不能为空。", + "response-format": "响应格式", + "response-text": "文本", + "response-json": "JSON", + "response-json-schema": "JSON Schema", + "response-format-hint-TEXT": "允许模型生成任意文本,该文本可能是或不是有效的 JSON 对象。如果输出不是有效的 JSON 对象,将自动包装在 \"response\" 键下的 JSON 对象中。", + "response-format-hint-JSON": "要求模型生成有效的 JSON 响应。如果输出不是有效的 JSON 对象,将自动包装在 \"response\" 键下的 JSON 对象中。", + "response-format-hint-JSON_SCHEMA": "要求模型生成与提供的 schema 中定义的特定结构和数据类型匹配的 JSON。如果输出不是有效的 JSON 对象,将自动包装在 \"response\" 键下的 JSON 对象中。", + "response-json-schema-hint": "虽然可以输入任何有效的 JSON Schema,但此规则节点仅支持其功能的有限子集。详情请参阅节点文档。", + "response-json-schema-required": "JSON Schema 为必填项", + "advanced-settings": "高级设置", + "timeout": "超时时间", + "timeout-hint": "等待 AI 模型响应的最大时间,\n超过此时间请求将被终止。", + "timeout-required": "超时时间为必填项", + "timeout-validation": "必须为 1 秒到 10 分钟之间。", + "force-acknowledgement": "强制确认", + "force-acknowledgement-hint": "如果启用,传入消息将立即被确认。然后模型的响应将作为单独的新消息入队。", + "ai-resources": "AI 资源" + } + }, + "timezone": { + "timezone": "时区", + "select-timezone": "选择时区", + "no-timezones-matching": "未找到与“{{timezone}}”匹配的时区。", + "timezone-required": "时区为必填项。", + "browser-time": "浏览器时间" + }, + "queue": { + "queue-name": "队列", + "no-queues-found": "未找到队列。", + "no-queues-matching": "未找到与“{{queue}}”匹配的队列。", + "select-name": "选择队列名称", + "name": "名称", + "name-required": "队列名称为必填项!", + "name-unique": "队列名称不唯一!", + "name-pattern": "队列名称包含 ASCII 字母数字、“.”、“_”和“-”以外的字符!", + "queue-required": "队列为必填项!", + "topic-required": "队列主题为必填项!", + "poll-interval-required": "轮询间隔为必填项!", + "poll-interval-min-value": "轮询间隔不能小于 1", + "partitions-required": "分区为必填项!", + "partitions-min-value": "分区数不能小于 1", + "pack-processing-timeout-required": "处理超时为必填项", + "pack-processing-timeout-min-value": "处理超时值不能小于 1", + "batch-size-required": "批量大小为必填项!", + "batch-size-min-value": "批量大小不能小于 1", + "retries-required": "重试次数为必填项!", + "retries-min-value": "重试次数不能为负数", + "failure-percentage-required": "失败百分比为必填项!", + "failure-percentage-min-value": "失败百分比不能小于 0", + "failure-percentage-max-value": "失败百分比不能大于 100", + "pause-between-retries-required": "重试间隔为必填项!", + "pause-between-retries-min-value": "重试间隔不能小于 1", + "max-pause-between-retries-required": "最大重试间隔为必填项!", + "max-pause-between-retries-min-value": "最大重试间隔不能小于 1", + "submit-strategy-type-required": "提交策略类型为必填项!", + "processing-strategy-type-required": "处理策略类型为必填项!", + "queues": "队列", + "selected-queues": "{ count, plural, =1 {1 个队列} other {# 个队列} }已选择", + "delete-queue-title": "确定要删除队列“{{queueName}}”吗?", + "delete-queues-title": "确定要删除 { count, plural, =1 {1 个队列} other {# 个队列} }吗?", + "delete-queue-text": "请注意,确认后队列及所有相关数据将无法恢复。", + "delete-queues-text": "确认后所有选中的队列将被删除且不可访问。", + "search": "搜索队列", + "add": "添加队列", + "details": "队列详情", + "topic": "主题", + "submit-settings": "提交设置", + "submit-strategy": "策略类型 *", + "grouping-parameter": "分组参数", + "processing-settings": "重试处理设置", + "processing-strategy": "处理类型 *", + "retries-settings": "重试设置", + "polling-settings": "轮询设置", + "batch-processing": "批量处理", + "poll-interval": "轮询间隔", + "partitions": "分区", + "immediate-processing": "即时处理", + "consumer-per-partition": "为每个消费者发送消息轮询", + "consumer-per-partition-hint": "为每个分区启用独立的消费者", + "duplicate-msg-to-all-partitions": "将消息复制到所有分区", + "processing-timeout": "处理超时(毫秒)", + "batch-size": "批量大小", + "retries": "重试次数(0 — 无限)", + "failure-percentage": "跳过重试的失败消息百分比(%)", + "pause-between-retries": "重试间隔(秒)", + "max-pause-between-retries": "额外重试间隔(秒)", + "delete": "删除队列", + "copyId": "复制队列 Id", + "idCopiedMessage": "队列 Id 已复制到剪贴板", + "description": "描述", + "description-hint": "此文本将显示在队列描述中,替代所选策略", + "alt-description": "提交策略:{{submitStrategy}},处理策略:{{processingStrategy}}", + "custom-properties": "自定义属性", + "custom-properties-hint": "自定义队列(主题)创建属性,例如 'retention.ms:604800000;retention.bytes:1048576000'", + "strategies": { + "sequential-by-originator-label": "按来源顺序执行", + "sequential-by-originator-hint": "例如设备 A 的新消息在设备 A 的上一条消息被确认前不会提交", + "sequential-by-tenant-label": "按租户顺序执行", + "sequential-by-tenant-hint": "例如租户 A 的新消息在租户 A 的上一条消息被确认前不会提交", + "sequential-label": "顺序执行", + "sequential-hint": "新消息在上一条消息被确认前不会提交", + "burst-label": "突发", + "burst-hint": "所有消息按到达顺序提交到规则链", + "batch-label": "批量", + "batch-hint": "新批次在上一批次被确认前不会提交", + "skip-all-failures-label": "跳过所有失败", + "skip-all-failures-hint": "忽略所有失败", + "skip-all-failures-and-timeouts-label": "跳过所有失败和超时", + "skip-all-failures-and-timeouts-hint": "忽略所有失败和超时", + "retry-all-label": "全部重试", + "retry-all-hint": "重试处理包中的所有消息", + "retry-failed-label": "重试失败", + "retry-failed-hint": "重试处理包中所有失败的消息", + "retry-timeout-label": "重试超时", + "retry-timeout-hint": "重试处理包中所有超时的消息", + "retry-failed-and-timeout-label": "重试失败和超时", + "retry-failed-and-timeout-hint": "重试处理包中所有失败和超时的消息" + } + }, + "queue-statistics": { + "queue-statistics": "队列统计", + "no-queue-statistics-matching": "未找到与“{{entity}}”匹配的队列统计。", + "queue-statistics-required": "队列统计为必填项。", + "list-of-queue-statistics": "{ count, plural, =1 {1 条队列统计} other {# 条队列统计列表} }", + "selected-queue-statistics": "{ count, plural, =1 {1 条队列统计} other {# 条队列统计} }已选择", + "no-queue-statistics-text": "未找到队列统计", + "queue-statistics-starts-with": "名称以“{{prefix}}”开头的队列统计" + }, + "server-error": { + "general": "服务器通用错误", + "authentication": "认证错误", + "jwt-token-expired": "JWT Token 已过期", + "tenant-trial-expired": "租户试用已过期", + "credentials-expired": "凭证已过期", + "permission-denied": "权限被拒绝", + "invalid-arguments": "参数无效", + "bad-request-params": "请求参数错误", + "item-not-found": "未找到该项", + "too-many-requests": "请求过多", + "too-many-updates": "更新过多", + "entities-limit-exceeded": "实体数量超出限制" + }, + "tenant": { + "tenant": "租户", + "tenants": "租户", + "management": "租户管理", + "add": "添加租户", + "admins": "管理员", + "manage-tenant-admins": "管理租户管理员", + "delete": "删除租户", + "add-tenant-text": "添加新租户", + "no-tenants-text": "未找到租户", + "tenant-details": "租户详情", + "title-max-length": "标题不能超过 256 个字符", + "delete-tenant-title": "确定要删除租户“{{tenantTitle}}”吗?", + "delete-tenant-text": "请注意,确认后租户及所有相关数据将无法恢复。", + "delete-tenants-title": "确定要删除 { count, plural, =1 {1 个租户} other {# 个租户} }吗?", + "delete-tenants-action-title": "删除 { count, plural, =1 {1 个租户} other {# 个租户} }", + "delete-tenants-text": "请注意,确认后所有选中的租户将被移除,且所有相关数据将无法恢复。", + "title": "标题", + "title-required": "标题为必填项。", + "description": "描述", + "details": "详情", + "events": "事件", + "copyId": "复制租户 Id", + "idCopiedMessage": "租户 Id 已复制到剪贴板", + "select-tenant": "选择租户", + "no-tenants-matching": "未找到与“{{entity}}”匹配的租户。", + "tenant-required": "租户为必填项", + "search": "搜索租户", + "selected-tenants": "{ count, plural, =1 {1 个租户} other {# 个租户} }已选择", + "isolated-tb-rule-engine": "使用隔离的 ThingsBoard 规则引擎队列", + "isolated-tb-rule-engine-details": "每个租户将拥有专用的规则引擎队列" + }, + "tenant-profile": { + "tenant-profile": "租户配置", + "tenant-profiles": "租户配置", + "add": "添加租户配置", + "add-profile": "添加配置", + "debug": "调试", + "edit": "编辑租户配置", + "tenant-profile-details": "租户配置详情", + "no-tenant-profiles-text": "未找到租户配置", + "name-max-length": "名称不能超过 256 个字符", + "search": "搜索租户配置", + "selected-tenant-profiles": "{ count, plural, =1 {1 个租户配置} other {# 个租户配置} }已选择", + "no-tenant-profiles-matching": "未找到与“{{entity}}”匹配的租户配置。", + "tenant-profile-required": "租户配置为必填项", + "idCopiedMessage": "租户配置 Id 已复制到剪贴板", + "set-default": "设为默认租户配置", + "delete": "删除租户配置", + "copyId": "复制租户配置 Id", + "name": "名称", + "name-required": "名称为必填项。", + "data": "配置数据", + "profile-configuration": "配置", + "description": "描述", + "default": "默认", + "delete-tenant-profile-title": "确定要删除租户配置“{{tenantProfileName}}”吗?", + "delete-tenant-profile-text": "请注意,确认后租户配置及所有相关数据将无法恢复。", + "delete-tenant-profiles-title": "确定要删除 { count, plural, =1 {1 个租户配置} other {# 个租户配置} }吗?", + "delete-tenant-profiles-text": "请注意,确认后所有选中的租户配置将被移除,且所有相关数据将无法恢复。", + "set-default-tenant-profile-title": "确定要将租户配置“{{tenantProfileName}}”设为默认吗?", + "set-default-tenant-profile-text": "确认后,该租户配置将被标记为默认配置,并用于未指定配置的新租户。", + "no-tenant-profiles-found": "未找到租户配置。", + "create-new-tenant-profile": "创建新租户配置!", + "create-tenant-profile": "创建新租户配置", + "import": "导入租户配置", + "export": "导出租户配置", + "export-failed-error": "无法导出租户配置:{{error}}", + "tenant-profile-file": "租户配置文件", + "invalid-tenant-profile-file-error": "无法导入租户配置:租户配置数据结构无效。", + "advanced-settings": "高级设置", + "entities": "实体", + "rule-engine": "规则引擎", + "time-to-live": "生存时间", + "calculated-fields": "计算字段", + "alarms-and-notifications": "告警和通知", + "ota-files-in-bytes": "文件", + "ws-title": "WS", + "unlimited": "(0 — 无限)", + "maximum-devices": "设备最大数量", + "maximum-devices-required": "设备最大数量为必填项。", + "maximum-devices-range": "设备最大数量不能为负数", + "maximum-assets": "资产最大数量", + "maximum-assets-required": "资产最大数量为必填项。", + "maximum-assets-range": "资产最大数量不能为负数", + "maximum-customers": "客户最大数量", + "maximum-customers-required": "客户最大数量为必填项。", + "maximum-customers-range": "客户最大数量不能为负数", + "maximum-users": "用户最大数量", + "maximum-users-required": "用户最大数量为必填项。", + "maximum-users-range": "用户最大数量不能为负数", + "maximum-dashboards": "仪表板最大数量", + "maximum-dashboards-required": "仪表板最大数量为必填项。", + "maximum-dashboards-range": "仪表板最大数量不能为负数", + "maximum-edges": "Edge 最大数量", + "maximum-edges-required": "Edge 最大数量为必填项。", + "maximum-edges-range": "Edge 最大数量不能为负数", + "maximum-rule-chains": "规则链最大数量", + "maximum-rule-chains-required": "规则链最大数量为必填项。", + "maximum-rule-chains-range": "规则链最大数量不能为负数", + "maximum-resources-sum-data-size": "资源文件最大总大小(字节)", + "maximum-resources-sum-data-size-required": "资源文件最大总大小为必填项。", + "maximum-resources-sum-data-size-range": "资源文件最大总大小不能为负数", + "maximum-resource-size": "单个资源文件最大大小(字节)", + "maximum-resource-size-required": "单个资源文件最大大小为必填项", + "maximum-resource-size-range": "单个资源文件最大大小不能为负数", + "maximum-ota-packages-sum-data-size": "OTA 软件包文件最大总大小(字节)", + "maximum-ota-package-sum-data-size-required": "OTA 软件包文件最大总大小为必填项。", + "maximum-ota-package-sum-data-size-range": "OTA 软件包文件最大总大小不能为负数", + "maximum-debug-duration-min": "最大调试持续时间(分钟)", + "maximum-debug-duration-min-range": "最大调试持续时间不能为负数", + "rest-requests-for-tenant": "租户 REST 请求", + "transport-tenant-telemetry-msg-rate-limit": "传输层租户遥测消息", + "transport-tenant-telemetry-data-points-rate-limit": "传输层租户遥测数据点", + "transport-device-msg-rate-limit": "传输层设备消息", + "transport-device-telemetry-msg-rate-limit": "传输层设备遥测消息", + "transport-device-telemetry-data-points-rate-limit": "传输层设备遥测数据点", + "transport-gateway-msg-rate-limit": "传输层 Gateway 消息", + "transport-gateway-telemetry-msg-rate-limit": "传输层 Gateway 遥测消息", + "transport-gateway-telemetry-data-points-rate-limit": "传输层 Gateway 遥测数据点", + "transport-gateway-device-msg-rate-limit": "传输层 Gateway 设备消息", + "transport-gateway-device-telemetry-msg-rate-limit": "传输层 Gateway 设备遥测消息", + "transport-gateway-device-telemetry-data-points-rate-limit": "传输层 Gateway 设备遥测数据点", + "tenant-entity-export-rate-limit": "实体版本创建", + "tenant-entity-import-rate-limit": "实体版本加载", + "tenant-notification-request-rate-limit": "通知请求", + "tenant-notification-requests-per-rule-rate-limit": "每条通知规则的通知请求", + "max-calculated-fields": "每个实体的计算字段最大数量", + "max-calculated-fields-range": "每个实体的计算字段最大数量不能为负数", + "max-calculated-fields-required": "每个实体的计算字段最大数量为必填项", + "max-data-points-per-rolling-arg": "滚动参数中的最大数据点数量", + "max-data-points-per-rolling-arg-range": "滚动参数中的最大数据点数量不能为负数", + "max-data-points-per-rolling-arg-required": "滚动参数中的最大数据点数量为必填项", + "max-arguments-per-cf": "每个计算字段的最大参数数量", + "max-arguments-per-cf-range": "每个计算字段的最大参数数量不能为负数", + "max-arguments-per-cf-required": "每个计算字段的最大参数数量为必填项", + "max-related-level-per-argument": "“关联实体”参数的最大关联层级", + "max-related-level-per-argument-range": "“关联实体”参数的最大关联层级不能小于“1”", + "max-related-level-per-argument-required": "“关联实体”参数的最大关联层级为必填项", + "min-allowed-scheduled-update-interval": "“关联实体”参数的最小允许更新间隔(秒)", + "min-allowed-scheduled-update-interval-range": "最小允许更新间隔不能为负数", + "min-allowed-deduplication-interval": "最小允许去重间隔(秒)", + "min-allowed-deduplication-interval-range": "最小允许去重间隔不能为负数", + "min-allowed-deduplication-interval-required": "最小允许去重间隔为必填项", + "intermediate-aggregation-interval": "中间聚合间隔(秒)", + "intermediate-aggregation-interval-range": "中间聚合间隔不能小于“1”", + "intermediate-aggregation-interval-required": "中间聚合间隔为必填项", + "reevaluation-check-interval": "重新评估检查间隔(秒)", + "reevaluation-check-interval-range": "重新评估检查间隔不能小于“1”", + "reevaluation-check-interval-required": "重新评估检查间隔为必填项", + "alarms-reevaluation-interval": "告警重新评估间隔(秒)", + "alarms-reevaluation-interval-range": "告警重新评估间隔不能小于“1”", + "alarms-reevaluation-interval-required": "告警重新评估间隔为必填项", + "min-allowed-aggregation-interval": "最小允许聚合间隔(秒)", + "min-allowed-aggregation-interval-range": "最小允许聚合间隔不能为负数", + "min-allowed-aggregation-interval-required": "最小允许聚合间隔为必填项", + "min-allowed-scheduled-update-interval-required": "最小允许更新间隔为必填项", + "max-state-size": "状态最大大小(KB)", + "max-state-size-range": "状态最大大小(KB)不能为负数", + "max-state-size-required": "状态最大大小(KB)为必填项", + "max-value-argument-size": "单个值参数最大大小(KB)", + "max-value-argument-size-range": "单个值参数最大大小(KB)不能为负数", + "max-value-argument-size-required": "单个值参数最大大小(KB)为必填项", + "max-transport-messages": "传输消息最大数量", + "max-transport-messages-required": "传输消息最大数量为必填项。", + "max-transport-messages-range": "传输消息最大数量不能为负数", + "max-transport-data-points": "传输数据点最大数量 ", + "max-transport-data-points-required": "传输数据点最大数量 为必填项。", + "max-transport-data-points-range": "传输数据点最大数量 不能为负数", + "max-r-e-executions": "规则引擎执行最大次数", + "max-r-e-executions-required": "规则引擎执行最大次数为必填项。", + "max-r-e-executions-range": "规则引擎执行最大次数不能为负数", + "max-j-s-executions": "JavaScript 执行最大次数 ", + "max-j-s-executions-required": "JavaScript 执行最大次数 为必填项。", + "max-j-s-executions-range": "JavaScript 执行最大次数 不能为负数", + "max-tbel-executions": "TBEL 执行最大次数 ", + "max-tbel-executions-required": "TBEL 执行最大次数为必填项。", + "max-tbel-executions-range": "TBEL 执行最大次数不能为负数", + "max-d-p-storage-days": "数据点存储最大天数", + "max-d-p-storage-days-required": "数据点存储最大天数为必填项。", + "max-d-p-storage-days-range": "数据点存储最大天数不能为负数", + "default-storage-ttl-days": "默认存储 TTL 天数", + "default-storage-ttl-days-required": "默认存储 TTL 天数为必填项。", + "default-storage-ttl-days-range": "默认存储 TTL 天数不能为负数", + "alarms-ttl-days": "告警 TTL 天数", + "alarms-ttl-days-required": "告警 TTL 天数为必填项", + "alarms-ttl-days-days-range": "告警 TTL 天数不能为负数", + "rpc-ttl-days": "RPC TTL 天数", + "rpc-ttl-days-required": "RPC TTL 天数为必填项", + "rpc-ttl-days-days-range": "RPC TTL 天数不能为负数", + "queue-stats-ttl-days": "队列统计 TTL 天数", + "queue-stats-ttl-days-required": "队列统计 TTL 天数为必填项", + "queue-stats-ttl-days-range": "队列统计 TTL 天数不能为负数", + "rule-engine-exceptions-ttl-days": "规则引擎异常 TTL 天数", + "rule-engine-exceptions-ttl-days-required": "规则引擎异常 TTL 天数为必填项", + "rule-engine-exceptions-ttl-days-range": "规则引擎异常 TTL 天数不能为负数", + "max-rule-node-executions-per-message": "每条消息的规则节点执行最大次数", + "max-rule-node-executions-per-message-required": "每条消息的规则节点执行最大次数为必填项。", + "max-rule-node-executions-per-message-range": "每条消息的规则节点执行最大次数不能为负数", + "max-emails": "Email 发送最大数量", + "max-emails-required": "Email 发送最大数量为必填项。", + "max-emails-range": "Email 发送最大数量不能为负数", + "sms-enabled": "SMS 已启用", + "max-sms": "SMS 发送最大数量", + "max-sms-required": "SMS 发送最大数量为必填项。", + "max-sms-range": "SMS 发送最大数量不能为负数", + "max-created-alarms": "告警创建最大数量", + "max-created-alarms-required": "告警创建最大数量为必填项。", + "max-created-alarms-range": "告警创建最大数量不能为负数", + "no-queue": "未配置队列", + "add-queue": "添加队列", + "queues-with-count": "队列({{count}})", + "tenant-rest-limits": "租户 REST 请求", + "customer-rest-limits": "客户 REST 请求", + "incorrect-pattern-for-rate-limits": "格式为逗号分隔的容量和周期(秒)对,用冒号分隔,例如 100:1,2000:60", + "too-small-value-zero": "值必须大于 0", + "too-small-value-one": "值必须大于 1", + "queue-size-is-limited-by-system-configuration": "队列大小同时受系统配置限制。", + "cassandra-write-tenant-core-limits-configuration": "Rest API Cassandra 写入查询", + "cassandra-read-tenant-core-limits-configuration": "Rest API 和 WS 遥测 Cassandra 读取查询", + "cassandra-write-tenant-rule-engine-limits-configuration": "规则引擎遥测 Cassandra 写入查询", + "cassandra-read-tenant-rule-engine-limits-configuration": "规则引擎遥测 Cassandra 读取查询", + "ws-limit-max-sessions-per-tenant": "每个租户的最大会话数", + "ws-limit-max-sessions-per-customer": "每个客户的最大会话数", + "ws-limit-max-sessions-per-regular-user": "每个普通用户的最大会话数", + "ws-limit-max-sessions-per-public-user": "每个公共用户的最大会话数", + "ws-limit-queue-per-session": "每个会话的最大消息队列大小", + "ws-limit-max-subscriptions-per-tenant": "每个租户的最大订阅数", + "ws-limit-max-subscriptions-per-customer": "每个客户的最大订阅数", + "ws-limit-max-subscriptions-per-regular-user": "每个普通用户的最大订阅数", + "ws-limit-max-subscriptions-per-public-user": "每个公共用户的最大订阅数", + "ws-limit-updates-per-session": "每个会话的 WS 更新", + "relation-search-entity-limit": "关联搜索实体限制", + "relation-search-entity-limit-hint": "限制关联路径最后一级解析的实体数量。适用于“关联实体”参数和传播字段。", + "relation-search-entity-limit-required": "关联搜索实体限制", + "relation-search-entity-limit-range": "关联搜索实体限制不能小于“1”", + "rate-limits": { + "add-limit": "添加限制", + "and-also-less-than": "且小于", + "advanced-settings": "高级设置", + "edit-limit": "编辑限制", + "calculated-field-debug-event-rate-limit": "计算字段调试事件", + "edit-calculated-field-debug-event-rate-limit": "编辑计算字段调试事件速率限制", + "edit-transport-tenant-msg-title": "编辑传输层租户消息速率限制", + "edit-transport-tenant-telemetry-msg-title": "编辑传输层租户遥测消息速率限制", + "edit-transport-tenant-telemetry-data-points-title": "编辑传输层租户遥测数据点速率限制", + "edit-transport-device-msg-title": "编辑传输层设备消息速率限制", + "edit-transport-device-telemetry-msg-title": "编辑传输层设备遥测消息速率限制", + "edit-transport-device-telemetry-data-points-title": "编辑传输层设备遥测数据点速率限制", + "edit-transport-gateway-msg-title": "编辑传输层 Gateway 消息速率限制", + "edit-transport-gateway-telemetry-msg-title": "编辑传输层 Gateway 遥测消息速率限制", + "edit-transport-gateway-telemetry-data-points-title": "编辑传输层 Gateway 遥测数据点速率限制", + "edit-transport-gateway-device-msg-title": "编辑传输层 Gateway 设备消息速率限制", + "edit-transport-gateway-device-telemetry-msg-title": "编辑传输层 Gateway 设备遥测消息速率限制", + "edit-transport-gateway-device-telemetry-data-points-title": "编辑传输层 Gateway 设备遥测数据点速率限制", + "edit-tenant-rest-limits-title": "编辑租户 REST 请求速率限制", + "edit-customer-rest-limits-title": "编辑客户 REST 请求速率限制", + "edit-ws-limit-updates-per-session-title": "编辑每个会话的 WS 更新速率限制", + "edit-cassandra-write-tenant-core-limits-configuration": "编辑 Rest API Cassandra 写入查询", + "edit-cassandra-read-tenant-core-limits-configuration": "编辑 Rest API 和 WS 遥测 Cassandra 读取查询", + "edit-cassandra-write-tenant-rule-engine-limits-configuration": "编辑规则引擎遥测 Cassandra 写入查询", + "edit-cassandra-read-tenant-rule-engine-limits-configuration": "编辑规则引擎遥测 Cassandra 读取查询", + "edit-tenant-entity-export-rate-limit-title": "编辑实体版本创建速率限制", + "edit-tenant-entity-import-rate-limit-title": "编辑实体版本加载速率限制", + "edit-tenant-notification-request-rate-limit-title": "编辑通知请求速率限制", + "edit-tenant-notification-requests-per-rule-rate-limit-title": "编辑每条通知规则的通知请求速率限制", + "edit-edge-events-rate-limit": "编辑 Edge 事件速率限制", + "edit-edge-events-per-edge-rate-limit": "编辑每个 Edge 的 Edge 事件速率限制", + "edge-events-rate-limit": "Edge 事件", + "edge-events-per-edge-rate-limit": "每个 Edge 的 Edge 事件", + "edit-edge-uplink-messages-rate-limit": "编辑 Edge 上行消息速率限制", + "edit-edge-uplink-messages-per-edge-rate-limit": "编辑每个 Edge 的 Edge 上行消息速率限制", + "edge-uplink-messages-rate-limit": "Edge 上行消息", + "edge-uplink-messages-per-edge-rate-limit": "每个 Edge 的 Edge 上行消息", + "messages-per": "消息每", + "not-set": "未设置", + "number-of-messages": "消息数量", + "number-of-messages-required": "消息数量为必填项。", + "number-of-messages-min": "最小值为 1。", + "preview": "预览", + "per-seconds": "每秒", + "per-seconds-required": "时间速率为必填项。", + "per-seconds-min": "最小值为 1。", + "per-seconds-duplicate": "时间速率重复。每个时间间隔必须唯一。", + "rate-limits": "速率限制", + "remove-limit": "移除限制", + "transport-tenant-msg": "传输层租户消息", + "transport-tenant-telemetry-msg": "传输层租户遥测消息", + "transport-tenant-telemetry-data-points": "传输层租户遥测数据点", + "transport-device-msg": "传输层设备消息", + "transport-device-telemetry-msg": "传输层设备遥测消息", + "transport-device-telemetry-data-points": "传输层设备遥测数据点", + "transport-gateway-msg": "传输层 Gateway 消息", + "transport-gateway-telemetry-msg": "传输层 Gateway 遥测消息", + "transport-gateway-telemetry-data-points": "传输层 Gateway 遥测数据点", + "transport-gateway-device-msg": "传输层 Gateway 设备消息", + "transport-gateway-device-telemetry-msg": "传输层 Gateway 设备遥测消息", + "transport-gateway-device-telemetry-data-points": "传输层 Gateway 设备遥测数据点", + "sec": "秒" + } + }, + "timeinterval": { + "seconds-interval": "{ seconds, plural, =1 {1 秒} other {# 秒} }", + "minutes-interval": "{ minutes, plural, =1 {1 分钟} other {# 分钟} }", + "hours-interval": "{ hours, plural, =1 {1 小时} other {# 小时} }", + "days-interval": "{ days, plural, =1 {1 天} other {# 天} }", + "days": "天", + "hours": "小时", + "minutes": "分钟", + "seconds": "秒", + "advanced": "高级", + "custom": "自定义", + "predefined": { + "yesterday": "昨天", + "day-before-yesterday": "前天", + "this-day-last-week": "上周的今天", + "previous-week": "上一周(周日 - 周六)", + "previous-week-iso": "上一周(周一 - 周日)", + "previous-month": "上个月", + "previous-quarter": "上个季度", + "previous-half-year": "上半年", + "previous-year": "去年", + "current-hour": "当前小时", + "current-day": "当天", + "current-day-so-far": "当天至今", + "current-week": "本周(周日 - 周六)", + "current-week-iso": "本周(周一 - 周日)", + "current-week-so-far": "本周至今(周日 - 周六)", + "current-week-iso-so-far": "本周至今(周一 - 周日)", + "current-month": "本月", + "current-month-so-far": "本月至今", + "current-quarter": "本季度", + "current-quarter-so-far": "本季度至今", + "current-half-year": "本半年", + "current-half-year-so-far": "本半年至今", + "current-year": "本年", + "current-year-so-far": "本年至今" }, + "type": { + "week": "周(周日 - 周六)", + "week-iso": "周(周一 - 周日)", + "month": "月", + "quarter": "季度" + } + }, + "timeunit": { + "milliseconds": "毫秒", + "seconds": "秒", + "minutes": "分钟", + "hours": "小时", + "days": "天" + }, + "timewindow": { + "timewindow": "时间窗口", + "timewindow-settings": "时间窗口设置", + "years": "{ years, plural, =1 {1 年 } other {# 年 } }", + "years-short": "{{ years }}年", + "months": "{ months, plural, =1 {1 个月 } other {# 个月 } }", + "months-short": "{{ months }}月", + "weeks": "{ weeks, plural, =1 {1 周 } other {# 周 } }", + "weeks-short": "{{ weeks }}周", + "days": "{ days, plural, =1 {1 天 } other {# 天 } }", + "days-short": "{{ days }}天", + "hours": "{ hours, plural, =0 { 小时 } =1 {1 小时 } other {# 小时 } }", + "hr": "{{ hr }} 小时", + "hr-short": "{{ hr }}时", + "minutes": "{ minutes, plural, =0 { 分钟 } =1 {1 分钟 } other {# 分钟 } }", + "min": "{{ min }} 分钟", + "min-short": "{{ min }}分", + "seconds": "{ seconds, plural, =0 { 秒 } =1 {1 秒 } other {# 秒 } }", + "sec": "{{ sec }} 秒", + "sec-short": "{{ sec }}秒", + "short": { + "years": "{ years, plural, =1 {1 年 } other {# 年 } }", + "days": "{ days, plural, =1 {1 天 } other {# 天 } }", + "hours": "{ hours, plural, =1 {1 小时 } other {# 小时 } }", + "minutes": "{{minutes}} 分钟 ", + "seconds": "{{seconds}} 秒 " + }, + "realtime": "实时", + "history": "历史", + "last-prefix": "最近", + "period": "从 {{ startTime }} 到 {{ endTime }}", + "edit": "编辑时间窗口", + "date-range": "日期范围", + "for-all-time": "所有时间", + "last": "最近", + "time-period": "时间段", + "hide": "隐藏", + "interval": "间隔", + "just-now": "刚刚", + "just-now-lower": "刚刚", + "ago": "前", + "style": "时间窗口样式", + "icon": "图标", + "icon-position": "图标位置", + "icon-position-left": "左", + "icon-position-right": "右", + "font": "字体", + "color": "颜色", + "displayTypePrefix": "显示实时/历史前缀", + "preview": "预览", + "relative": "相对", + "range": "范围", + "hide-timewindow-section": "对终端用户隐藏时间窗口部分", + "hide-last-interval": "对终端用户隐藏最近间隔", + "hide-relative-interval": "对终端用户隐藏相对间隔", + "hide-fixed-interval": "对终端用户隐藏固定间隔", + "hide-aggregation": "对终端用户隐藏聚合", + "hide-group-interval": "对终端用户隐藏分组间隔", + "hide-max-values": "对终端用户隐藏最大值", + "hide-timezone": "对终端用户隐藏时区", + "disable-custom-interval": "禁用自定义间隔选择", + "edit-aggregation-functions-list": "编辑聚合函数列表", + "edit-aggregation-functions-list-hint": "可以指定可用选项列表。", + "allowed-aggregation-functions": "允许的聚合函数", + "edit-intervals-list": "编辑间隔列表", + "allowed-agg-intervals": "分组间隔", + "default-agg-interval": "默认分组间隔", + "edit-intervals-list-hint": "可以指定可用间隔选项列表。", + "edit-grouping-intervals-list-hint": "可以配置分组间隔列表和默认分组间隔。", + "all": "全部", + "save-current-settings-as-default": "将当前设置保存为默认时间窗口", + "hide-option-from-end-users": "对终端用户隐藏选项" + }, + "tooltip": { + "trigger": "触发器", + "trigger-point": "点", + "trigger-axis": "轴", + "label": "标签", + "value": "值", + "date": "日期", + "show-date-time-interval": "显示日期时间间隔", + "show-date-time-interval-hint": "根据数据聚合显示日期时间间隔。", + "hide-zero-tooltip-values": "隐藏零值", + "show-stack-total": "在堆叠模式下显示总值", + "background-color": "背景颜色", + "background-blur": "背景模糊" + }, + "unit": { + "set-unit-conversion": "设置单位转换", + "unit-settings": { + "unit-settings": "单位设置", + "source-unit": "源单位", + "source-unit-hint": "这是存储值的单位,即您要转换的源单位。请输入源数据使用的符号(例如 m、km、ft、in)。", + "target-metric-unit": "目标公制单位", + "target-metric-unit-hint": "选择要将源值转换为哪个公制单位(SI)(例如 cm、mm、km)。", + "target-imperial-unit": "目标英制单位", + "target-imperial-unit-hint": "选择要将源值转换为哪个英制单位(例如 in、ft、yd)。", + "target-hybrid-unit": "目标混合单位", + "target-hybrid-unit-hint": "选择要将源值转换为哪个混合单位(例如 cm、in、km)。混合单位结合了公制或英制单位。", + "enable-unit-conversion": "启用单位转换", + "enable-unit-conversion-hint": "开启以激活转换。关闭时,源值将保持不变。如果对应的度量组中只有一个单位(例如光通量、AQI),则此选项被禁用。" + }, + "unit-system": "单位制", + "unit-system-type": { + "AUTO": "自动", + "METRIC": "公制", + "IMPERIAL": "英制", + "HYBRID": "混合" + }, + "measures": { + "absorbed-dose-rate": "吸收剂量率", + "acceleration": "加速度", + "acidity": "酸度", + "air-quality-index": "空气质量指数", + "amount-of-substance": "物质的量", + "angle": "角度", + "angular-acceleration": "角加速度", + "area": "面积", + "area-density": "面密度", + "capacitance": "电容", + "catalytic-activity": "催化活性", + "catalytic-concentration": "催化浓度", + "charge": "电荷", + "current-density": "电流密度", + "data-transfer-rate": "数据传输速率", + "density": "密度", + "digital": "数字存储", + "dimension-ratio": "尺寸比", + "dynamic-viscosity": "动力粘度", + "earthquake-magnitude": "地震震级", + "electric-charge-density": "电荷密度", + "electric-current": "电流", + "electric-dipole-moment": "电偶极矩", + "electric-field-strength": "电场强度", + "electric-flux": "电通量", + "electric-permittivity": "介电常数", + "electric-polarizability": "电极化率", + "electrical-conductance": "电导", + "electrical-conductivity": "电导率", + "energy": "能量", + "energy-density": "能量密度", + "force": "力", + "frequency": "频率", + "fuel-efficiency": "燃油效率", + "heat-capacity": "热容", + "illuminance": "照度", + "inductance": "电感", + "kinematic-viscosity": "运动粘度", + "length": "长度", + "light-exposure": "曝光量", + "linear-charge-density": "线电荷密度", + "logarithmic-ratio": "对数比", + "luminous-efficacy": "发光效率", + "luminous-flux": "光通量", + "luminous-intensity": "发光强度", + "magnetic-field-gradient": "磁场梯度", + "magnetic-flux": "磁通量", + "magnetic-flux-density": "磁通量密度", + "magnetic-moment": "磁矩", + "magnetic-permeability": "磁导率", + "mass": "质量", + "mass-fraction": "质量分数", + "molar-concentration": "摩尔浓度", + "molar-energy": "摩尔能", + "molar-heat-capacity": "摩尔热容", + "molar-mass": "摩尔质量", + "number-concentration": "数浓度", + "parts-per-million": "百万分率", + "power": "功率", + "power-density": "功率密度", + "pressure": "压力", + "radiance": "辐射亮度", + "radiant-intensity": "辐射强度", + "radiation-dose": "辐射剂量", + "radioactive-decay": "放射性衰变", + "radioactivity": "放射性", + "radioactivity-concentration": "放射性浓度", + "reciprocal-length": "倒数长度", + "resistance": "电阻", + "reynolds-number": "雷诺数", + "signal-level": "信号电平", + "solid-angle": "立体角", + "specific-energy": "比能", + "specific-heat-capacity": "比热容", + "specific-humidity": "比湿", + "specific-volume": "比容", + "speed": "速度", + "surface-charge-density": "面电荷密度", + "surface-tension": "表面张力", + "temperature": "温度", + "thermal-conductivity": "热导率", + "time": "时间", + "torque": "扭矩", + "turbidity": "浊度", + "voltage": "电压", + "volume": "体积", + "volume-flow": "体积流量" + }, + "millimeter": "毫米", + "centimeter": "厘米", + "decimeter": "分米", + "angstrom": "埃", + "nanometer": "纳米", + "micrometer": "微米", + "meter": "米", + "kilometer": "千米", + "inch": "英寸", + "foot": "英尺", + "foot-us": "英尺(美国测量)", + "yard": "码", + "mile": "英里", + "nautical-mile": "海里", + "astronomical-unit": "天文单位", + "reciprocal-metre": "每米", + "meter-per-meter": "米每米", + "steradian": "球面度", + "thou": "密耳", + "barleycorn": "大麦粒", + "hand": "手宽", + "chain": "链", + "furlong": "弗隆", + "league": "里格", + "fathom": "英寻", + "cable": "链(海缆)", + "link": "链节", + "rod": "杆", + "nanogram": "纳克", + "microgram": "微克", + "milligram": "毫克", + "gram": "克", + "kilogram": "千克", + "tonne": "吨", + "ounce": "盎司", + "pound": "磅", + "stone": "英石", + "hundredweight-count": "英担", + "short-tons": "短吨", + "dalton": "道尔顿", + "grain": "格令", + "drachm": "打兰", + "quarter": "夸特", + "slug": "斯勒格", + "carat": "克拉", + "cubic-millimeter": "立方毫米", + "cubic-centimeter": "立方厘米", + "cubic-meter": "立方米", + "cubic-kilometer": "立方千米", + "microliter": "微升", + "milliliter": "毫升", + "liter": "升", + "hectoliter": "百升", + "cubic-inch": "立方英寸", + "cubic-foot": "立方英尺", + "cubic-yard": "立方码", + "fluid-ounce": "液量盎司", + "fluid-ounce-per-second": "液量盎司每秒", + "pint": "品脱", + "quart": "夸脱", + "gallon": "加仑", + "oil-barrels": "石油桶", + "cubic-meter-per-kilogram": "立方米每千克", + "gill": "及耳", + "hogshead": "霍格斯黑德", + "teaspoon": "茶匙", + "tablespoon": "汤匙", + "cup": "杯", + "celsius": "摄氏度", + "kelvin": "开尔文", + "rankine": "兰金", + "fahrenheit": "华氏度", + "percent": "百分比", + "meter-per-second": "米每秒", + "kilometer-per-hour": "千米每小时", + "foot-per-second": "英尺每秒", + "foot-per-minute": "英尺每分钟", + "mile-per-hour": "英里每小时", + "knot": "节", + "inch-per-second": "英寸每秒", + "inch-per-hour": "英寸每小时", + "millimeters-per-minute": "毫米每分钟", + "meter-per-minute": "米每分钟", + "kilometer-per-hour-squared": "千米每小时平方", + "foot-per-second-squared": "英尺每秒平方", + "pascal": "帕斯卡", + "kilopascal": "千帕", + "megapascal": "兆帕", + "gigapascal": "吉帕", + "millibar": "毫巴", + "bar": "巴", + "kilobar": "千巴", + "newton": "牛顿", + "newton-meter": "牛顿·米", + "foot-pounds": "英尺·磅", + "inch-pounds": "英寸·磅", + "newton-per-meter": "牛顿每米", + "atmospheres": "标准大气压", + "pounds-per-square-inch": "磅每平方英寸", + "kilopound-per-square-inch": "千磅每平方英寸", + "torr": "托", + "inches-of-mercury": "英寸汞柱", + "pascal-per-square-meter": "帕斯卡每平方米", + "pound-per-square-inch": "磅每平方英寸", + "newton-per-square-meter": "牛顿每平方米", + "kilogram-force-per-square-meter": "千克力每平方米", + "pascal-per-square-centimeter": "帕斯卡每平方厘米", + "ton-force-per-square-inch": "吨力每平方英寸", + "kilonewton-per-square-meter": "千牛顿每平方米", + "newton-per-square-millimeter": "牛顿每平方毫米", + "microjoule": "微焦", + "millijoule": "毫焦", + "joule": "焦耳", + "kilojoule": "千焦", + "megajoule": "兆焦", + "gigajoule": "吉焦", + "watt-hour": "瓦时", + "watt-minute": "瓦分", + "kilowatt-hour": "千瓦时", + "milliwatt-hour": "毫瓦时", + "megawatt-hour": "兆瓦时", + "gigawatt-hour": "吉瓦时", + "electron-volts": "电子伏特", + "joules-per-coulomb": "焦耳每库仑", + "british-thermal-unit": "英热单位", + "thousand-british-thermal-unit": "千英热单位", + "million-british-thermal-unit": "百万英热单位", + "foot-pound": "英尺·磅", + "calorie": "卡路里", + "small-calorie": "小卡", + "kilocalorie": "千卡", + "joule-per-kelvin": "焦耳每开尔文", + "joule-per-kilogram-kelvin": "焦耳每千克·开尔文", + "joule-per-kilogram": "焦耳每千克", + "watt-per-meter-kelvin": "瓦每米·开尔文", + "joule-per-cubic-meter": "焦耳每立方米", + "therm": "撒姆", + "electric-dipole-moment": "电偶极矩", + "magnetic-dipole-moment": "磁偶极矩", + "debye": "德拜", + "coulomb-per-square-meter-per-volt": "库仑每平方米每伏", + "milliwatt": "毫瓦", + "microwatt": "微瓦", + "watt": "瓦特", + "kilowatt": "千瓦", + "megawatt": "兆瓦", + "gigawatt": "吉瓦", + "metric-horsepower": "公制马力", + "milliwatt-per-square-centimeter": "毫瓦每平方厘米", + "watt-per-square-centimeter": "瓦每平方厘米", + "kilowatt-per-square-centimeter": "千瓦每平方厘米", + "milliwatt-per-square-meter": "毫瓦每平方米", + "watt-per-square-meter": "瓦每平方米", + "kilowatt-per-square-meter": "千瓦每平方米", + "watt-per-square-inch": "瓦每平方英寸", + "kilowatt-per-square-inch": "千瓦每平方英寸", + "horsepower": "马力", + "btu-per-hour": "英热单位每小时", + "btu-per-second": "英热单位每秒", + "btu-per-day": "英热单位每天", + "mbtu-per-hour": "千英热单位每小时", + "mbtu-per-second": "千英热单位每秒", + "mbtu-per-day": "千英热单位每天", + "mmbtu-per-hour": "百万英热单位每小时", + "mmbtu-per-second": "百万英热单位每秒", + "mmbtu-per-day": "百万英热单位每天", + "foot-pound-per-second": "英尺·磅每秒", + "coulomb": "库仑", + "millicoulomb": "毫库仑", + "microcoulomb": "微库仑", + "nanocoulomb": "纳库仑", + "picocoulomb": "皮库仑", + "coulomb-per-meter": "库仑每米", + "coulomb-per-cubic-meter": "库仑每立方米", + "coulomb-per-square-meter": "库仑每平方米", + "square-millimeter": "平方毫米", + "square-centimeter": "平方厘米", + "square-meter": "平方米", + "hectare": "公顷", + "square-kilometer": "平方千米", + "square-inch": "平方英寸", + "square-foot": "平方英尺", + "square-yard": "平方码", + "acre": "英亩", + "square-mile": "平方英里", + "are": "公亩", + "barn": "靶恩", + "circular-inch": "圆英寸", + "milliampere-hour": "毫安时", + "ampere-hours": "安时", + "kiloampere-hours": "千安时", + "nanoampere": "纳安", + "picoampere": "皮安", + "microampere": "微安", + "milliampere": "毫安", + "ampere": "安培", + "kiloampere": "千安", + "megaampere": "兆安", + "gigaampere": "吉安", + "microampere-per-square-centimeter": "微安每平方厘米", + "ampere-per-square-meter": "安培每平方米", + "ampere-per-meter": "安培每米", + "oersted": "奥斯特", + "bohr-magneton": "玻尔磁子", + "ampere-meter-squared": "安培·平方米", + "nanovolt": "纳伏", + "picovolt": "皮伏", + "millivolt": "毫伏", + "microvolt": "微伏", + "volt": "伏特", + "kilovolt": "千伏", + "megavolt": "兆伏", + "dbmV": "分贝伏", + "dbm": "分贝毫瓦", + "volt-meter": "伏特·米", + "kilovolt-meter": "千伏·米", + "megavolt-meter": "兆伏·米", + "microvolt-meter": "微伏·米", + "millivolt-meter": "毫伏·米", + "nanovolt-meter": "纳伏·米", + "ohm": "欧姆", + "microohm": "微欧", + "milliohm": "毫欧", + "kilohm": "千欧", + "megohm": "兆欧", + "gigohm": "吉欧", + "millihertz": "毫赫兹", + "hertz": "赫兹", + "kilohertz": "千赫兹", + "megahertz": "兆赫兹", + "gigahertz": "吉赫兹", + "terahertz": "太赫兹", + "rpm": "转每分钟", + "candela-per-square-meter": "坎德拉每平方米", + "candela": "坎德拉", + "lumen": "流明", + "lux": "勒克斯", + "foot-candle": "英尺烛光", + "lumen-per-square-meter": "流明每平方米", + "lux-second": "勒克斯·秒", + "lumen-second": "流明·秒", + "lumens-per-watt": "流明每瓦", + "mole": "摩尔", + "nanomole": "纳摩尔", + "micromole": "微摩尔", + "millimole": "毫摩尔", + "kilomole": "千摩尔", + "mole-per-cubic-meter": "摩尔每立方米", + "rssi": "接收信号强度指示", + "ppm": "百万分率", + "ppb": "十亿分率", + "micrograms-per-cubic-meter": "微克每立方米", + "aqi": "AQI", + "gram-per-cubic-meter": "克每立方米", + "gram-per-kilogram": "比湿", + "millimeters-per-second": "毫米每秒", + "neper": "奈培", + "bel": "贝尔", + "decibel": "分贝", + "meters-per-second-squared": "米每秒平方", + "becquerel": "贝可勒尔", + "curie": "居里", + "gray": "戈瑞", + "sievert": "希沃特", + "roentgen": "伦琴", + "cps": "计数每秒", + "rad": "拉德", + "rem": "雷姆", + "dps": "衰变每秒", + "rutherford": "卢瑟福", + "coulombs-per-kilogram": "库仑每千克", + "becquerels-per-cubic-meter": "贝可勒尔每立方米", + "curies-per-liter": "居里每升", + "becquerels-per-second": "贝可勒尔每秒", + "curies-per-second": "居里每秒", + "gy-per-second": "戈瑞每秒", + "watt-per-steradian": "瓦每球面度", + "watt-per-square-metre-steradian": "瓦每平方米·球面度", + "ph-level": "pH 值", + "turbidity": "浊度", + "mg-per-liter": "毫克每升", + "microsiemens-per-centimeter": "微西门子每厘米", + "millisiemens-per-meter": "毫西门子每米", + "siemens-per-meter": "西门子每米", + "kilogram-per-cubic-meter": "千克每立方米", + "gram-per-cubic-centimeter": "克每立方厘米", + "kilogram-per-square-meter": "千克每平方米", + "milligram-per-milliliter": "毫克每毫升", + "milligram-per-cubic-meter": "毫克每立方米", + "pound-per-cubic-foot": "磅每立方英尺", + "ounces-per-cubic-inch": "盎司每立方英寸", + "tons-per-cubic-yard": "吨每立方码", + "particle-density": "粒子密度", + "kilometers-per-liter": "千米每升", + "miles-per-gallon": "英里每加仑", + "liters-per-100-km": "升每百千米", + "gallons-per-mile": "加仑每英里", + "liters-per-hour": "升每小时", + "gallons-per-hour": "加仑每小时", + "beats-per-minute": "次每分钟", + "millimeters-of-mercury": "毫米汞柱", + "milligrams-per-deciliter": "毫克每分升", + "g-force": "重力加速度", + "kilonewton": "千牛顿", + "kilogram-force": "千克力", + "pound-force": "磅力", + "kilopound-force": "千磅力", + "dyne": "达因", + "poundal": "磅达", + "kip": "千磅力", + "gal": "伽", + "gravity": "重力", + "hectopascal": "百帕", + "atmosphere": "标准大气压", + "millibars": "毫巴", + "inch-of-mercury": "英寸汞柱", + "richter-scale": "里氏震级", + "nanosecond": "纳秒", + "microsecond": "微秒", + "millisecond": "毫秒", + "second": "秒", + "minute": "分钟", + "hour": "小时", + "day": "天", + "week": "周", + "month": "月", + "year": "年", + "cubic-foot-per-minute": "立方英尺每分钟", + "cubic-meters-per-hour": "立方米每小时", + "cubic-meters-per-second": "立方米每秒", + "liter-per-second": "升每秒", + "liter-per-minute": "升每分钟", + "gallons-per-minute": "加仑每分钟", + "cubic-foot-per-second": "立方英尺每秒", + "milliliters-per-minute": "毫升每分钟", + "cubic-decimeter-per-second": "立方分米每秒", + "bit": "比特", + "byte": "字节", + "kilobyte": "千字节", + "megabyte": "兆字节", + "gigabyte": "吉字节", + "terabyte": "太字节", + "petabyte": "拍字节", + "exabyte": "艾字节", + "zettabyte": "泽字节", + "yottabyte": "尧字节", + "bit-per-second": "比特每秒", + "kilobit-per-second": "千比特每秒", + "megabit-per-second": "兆比特每秒", + "gigabit-per-second": "吉比特每秒", + "terabit-per-second": "太比特每秒", + "byte-per-second": "字节每秒", + "kilobyte-per-second": "千字节每秒", + "megabyte-per-second": "兆字节每秒", + "gigabyte-per-second": "吉字节每秒", + "degree": "度", + "radian": "弧度", + "gradian": "百分度", + "arcminute": "角分", + "arcsecond": "角秒", + "milliradian": "毫弧度", + "revolution": "转", + "siemens": "西门子", + "millisiemens": "毫西门子", + "microsiemens": "微西门子", + "kilosiemens": "千西门子", + "megasiemens": "兆西门子", + "gigasiemens": "吉西门子", + "farad": "法拉", + "millifarad": "毫法拉", + "microfarad": "微法拉", + "nanofarad": "纳法拉", + "picofarad": "皮法拉", + "kilofarad": "千法拉", + "megafarad": "兆法拉", + "gigafarad": "吉法拉", + "terfarad": "太法拉", + "farad-per-meter": "法拉每米", + "tesla": "特斯拉", + "gauss": "高斯", + "kilogauss": "千高斯", + "millitesla": "毫特斯拉", + "microtesla": "微特斯拉", + "nanotesla": "纳特斯拉", + "kilotesla": "千特斯拉", + "megatesla": "兆特斯拉", + "millitesla-square-meters": "毫特斯拉·平方米", + "gamma": "伽马", + "lambda": "兰姆达", + "square-meter-per-second": "平方米每秒", + "square-centimeter-per-second": "平方厘米每秒", + "stoke": "斯托克斯", + "centistokes": "厘斯托克斯", + "square-foot-per-second": "平方英尺每秒", + "square-inch-per-second": "平方英寸每秒", + "pascal-second": "帕斯卡·秒", + "centipoise": "厘泊", + "poise": "泊", + "reynolds": "雷诺", + "pound-per-foot-hour": "磅每英尺·小时", + "newton-second-per-square-meter": "牛顿·秒每平方米", + "dyne-second-per-square-centimeter": "达因·秒每平方厘米", + "kilogram-per-meter-second": "千克每米·秒", + "tesla-square-meters": "特斯拉·平方米", + "maxwell": "麦克斯韦", + "tesla-per-meter": "特斯拉每米", + "gauss-per-centimeter": "高斯每厘米", + "weber": "韦伯", + "microweber": "微韦伯", + "milliweber": "毫韦伯", + "gauss-square-centimeter": "高斯·平方厘米", + "kilogauss-square-centimeter": "千高斯·平方厘米", + "henry": "亨利", + "millihenry": "毫亨利", + "microhenry": "微亨利", + "nanohenry": "纳亨利", + "henry-per-meter": "亨利每米", + "tesla-meter-per-ampere": "特斯拉·米每安培", + "gauss-per-oersted": "高斯每奥斯特", + "kilogram-per-mole": "千克每摩尔", + "gram-per-mole": "克每摩尔", + "milligram-per-mole": "毫克每摩尔", + "joule-per-mole": "焦耳每摩尔", + "joule-per-mole-kelvin": "焦耳每摩尔·开尔文", + "millivolts-per-meter": "毫伏每米", + "volts-per-meter": "伏特每米", + "kilovolts-per-meter": "千伏每米", + "radian-per-second": "弧度每秒", + "radian-per-second-squared": "弧度每秒平方", + "revolutions-per-minute-per-second": "角加速度", + "deg-per-second": "度每秒", + "rotation-per-minute": "转每分钟", + "degrees-brix": "白利度", + "katal": "开特", + "katal-per-cubic-metre": "开特每立方米", + "paris-inch": "巴黎英寸" + }, + "user": { + "user": "用户", + "users": "用户", + "customer-users": "客户用户", + "tenant-admins": "租户管理员", + "sys-admin": "系统管理员", + "tenant-admin": "租户管理员", + "customer": "客户", + "anonymous": "匿名", + "add": "添加用户", + "delete": "删除用户", + "add-user-text": "添加新用户", + "no-users-text": "未找到用户", + "user-details": "用户详情", + "delete-user-title": "确定要删除用户“{{userEmail}}”吗?", + "delete-user-text": "请注意,确认后用户及所有相关数据将无法恢复。", + "delete-users-title": "确定要删除 { count, plural, =1 {1 个用户} other {# 个用户} }吗?", + "delete-users-action-title": "删除 { count, plural, =1 {1 个用户} other {# 个用户} }", + "delete-users-text": "请注意,确认后所有选中的用户将被移除,且所有相关数据将无法恢复。", + "activation-email-sent-message": "激活 Email 已成功发送!", + "resend-activation": "重新发送激活", + "email": "Email", + "email-required": "Email 为必填项。", + "invalid-email-format": "Email 格式无效。", + "first-name": "名", + "last-name": "姓", + "description": "描述", + "default-dashboard": "默认仪表板", + "always-fullscreen": "始终全屏", + "select-user": "选择用户", + "no-users-matching": "未找到与“{{entity}}”匹配的用户。", + "user-required": "用户为必填项", + "activation-method": "激活方式", + "display-activation-link": "显示激活链接", + "send-activation-mail": "发送激活邮件", + "activation-link": "用户激活链接", + "activation-link-text": "要激活用户,请使用以下激活链接({{activationLinkTtl}}后过期):", + "copy-activation-link": "复制激活链接", + "activation-link-copied-message": "用户激活链接已复制到剪贴板", + "details": "详情", + "login-as-tenant-admin": "以租户管理员身份登录", + "login-as-customer-user": "以客户用户身份登录", + "search": "搜索用户", + "selected-users": "{ count, plural, =1 {1 个用户} other {# 个用户} }已选择", + "disable-account": "禁用用户账户", + "enable-account": "启用用户账户", + "enable-account-message": "用户账户已成功启用!", + "disable-account-message": "用户账户已成功禁用!", + "copyId": "复制用户 Id", + "idCopiedMessage": "用户 Id 已复制到剪贴板", + "user-list": "用户列表", + "user-list-required": "用户列表为必填项" + }, + "value": { + "type": "值类型", + "string": "字符串", + "string-value": "字符串值", + "string-value-required": "字符串值为必填项", + "integer": "整数", + "integer-value": "整数值", + "integer-value-required": "整数值为必填项", + "invalid-integer-value": "整数值无效", + "double": "双精度浮点数", + "double-value": "双精度浮点数值", + "double-value-required": "双精度浮点数值为必填项", + "boolean": "布尔值", + "boolean-value": "布尔值", + "false": "False", + "true": "True", + "long": "长整数", + "json": "JSON", + "json-value": "JSON 值", + "json-value-invalid": "JSON 值格式无效", + "json-value-required": "JSON 值为必填项。" + }, + "version-control": { + "version-control": "版本控制", + "management": "版本控制管理", + "search": "搜索版本", + "branch": "分支", + "default": "默认", + "select-branch": "选择分支", + "branch-required": "分支为必填项", + "create-entity-version": "创建实体版本", + "version-name": "版本名称", + "version-name-required": "版本名称为必填项", + "author": "作者", + "export-relations": "导出关联", + "export-attributes": "导出属性", + "export-credentials": "导出凭证", + "export-calculated-fields": "导出计算字段\n及告警规则", + "export-alarm-rules": "导出告警规则", + "entity-versions": "实体版本", + "versions": "版本", + "created-time": "创建时间", + "version-id": "版本 ID", + "no-entity-versions-text": "未找到实体版本", + "no-versions-text": "未找到版本", + "copy-full-version-id": "复制完整版本 ID", + "create-version": "创建版本", + "creating-version": "正在创建版本…请稍候", + "nothing-to-commit": "无更改可提交", + "restore-version": "恢复版本", + "restore-entity-from-version": "从版本“{{versionName}}”恢复实体", + "restoring-entity-version": "正在恢复实体版本…请稍候", + "load-relations": "加载关联", + "load-attributes": "加载属性", + "load-credentials": "加载凭证", + "load-calculated-fields": "加载计算字段和告警规则", + "load-alarm-rules": "加载告警规则", + "compare-with-current": "与当前版本比较", + "diff-entity-with-version": "与实体版本“{{versionName}}”比较差异", + "previous-difference": "上一个差异", + "next-difference": "下一个差异", + "current": "当前", + "differences": "{ count, plural, =1 {1 处差异} other {# 处差异} }", + "create-entities-version": "创建实体版本", + "default-sync-strategy": "默认同步策略", + "sync-strategy-merge": "合并", + "sync-strategy-overwrite": "覆盖", + "entities-to-export": "要导出的实体", + "entities-to-restore": "要恢复的实体", + "sync-strategy": "同步策略", + "all-entities": "所有实体", + "no-entities-to-export-prompt": "请指定要导出的实体", + "no-entities-to-restore-prompt": "请指定要恢复的实体", + "add-entity-type": "添加实体类型", + "remove-all": "全部移除", + "version-create-result": "{ added, plural, =0 {未添加实体} =1 {已添加 1 个实体} other {已添加 # 个实体} }。
{ modified, plural, =0 {未修改实体} =1 {已修改 1 个实体} other {已修改 # 个实体} }。
{ removed, plural, =0 {未移除实体} =1 {已移除 1 个实体} other {已移除 # 个实体} }。", + "remove-other-entities": "移除其他实体", + "find-existing-entity-by-name": "按名称查找现有实体", + "restore-entities-from-version": "从版本“{{versionName}}”恢复实体", + "restoring-entities-from-version": "正在恢复实体…请稍候", + "no-entities-restored": "未恢复任何实体", + "created": "{{created}} 已创建", + "updated": "{{updated}} 已更新", + "deleted": "{{deleted}} 已删除", + "remove-other-entities-confirm-text": "请注意!此操作将永久删除所有当前
不在您要恢复的版本中的所有实体。

请输入 \"remove other entities\" 以确认。", + "auto-commit-to-branch": "自动提交到 {{ branch }} 分支", + "default-create-entity-version-name": "{{entityName}} 更新", + "sync-strategy-merge-hint": "在仓库中创建或更新选中的实体。所有其他仓库实体不会被修改。", + "sync-strategy-overwrite-hint": "在仓库中创建或更新选中的实体。所有其他仓库实体将被删除。", + "device-credentials-conflict": "无法加载外部 ID 为 {{entityId}} 的设备,
因为数据库中另一个设备已存在相同的凭证。
请考虑在恢复表单中禁用加载凭证设置。", + "missing-referenced-entity": "无法加载外部 ID 为 {{sourceEntityId}}{{sourceEntityTypeName}}
因为它引用了缺失的 ID 为 {{targetEntityId}}{{targetEntityTypeName}}。", + "runtime-failed": "失败:{{message}}", + "auto-commit-settings-read-only-hint": "当仓库设置中启用了只读选项时,自动提交功能不可用。", + "rollback-on-error": "出错时回滚", + "rollback-on-error-hint": "如果您有大量实体需要恢复,请考虑禁用此选项以提高性能。\n 注意,如果在版本加载过程中发生错误,已持久化的实体(包括关联、属性等)将保持原样" + }, + "widget": { + "widget-library": "部件库", + "widget-bundle": "部件包", + "all-bundles": "所有包", + "select-widgets-bundle": "选择部件包", + "widgets": "部件", + "all-widgets": "所有部件", + "widget": "部件", + "select-widget": "选择部件", + "no-widgets-matching": "未找到匹配 '{{entity}}' 的部件。", + "no-widgets": "暂无部件", + "no-widgets-text": "未找到部件", + "management": "部件管理", + "editor": "部件编辑器", + "confirm-to-exit-editor-html": "您有未保存的部件设置。
确定要离开此页面吗?", + "widget-type-not-found": "加载部件配置时出现问题。
关联的\n 部件类型可能已被移除。", + "widget-type-load-error": "部件因以下错误未能加载:", + "remove": "移除部件", + "delete": "删除部件", + "edit": "编辑部件", + "remove-widget-title": "确定要移除部件 '{{widgetTitle}}' 吗?", + "remove-widget-text": "确认后,该部件及所有相关数据将无法恢复。", + "replace-reference-with-widget-copy": "将引用替换为部件副本", + "timeseries": "时间序列", + "search-data": "搜索数据", + "no-data-found": "未找到数据", + "latest": "最新值", + "rpc": "控制部件", + "alarm": "告警部件", + "static": "静态部件", + "timeseries-short": "序列", + "latest-short": "最新", + "rpc-short": "控制", + "alarm-short": "告警", + "static-short": "静态", + "select-widget-type": "选择部件类型", + "missing-widget-title-error": "必须指定部件标题!", + "widget-saved": "部件已保存", + "unable-to-save-widget-error": "无法保存部件!部件存在错误!", + "save": "保存部件", + "saveAs": "部件另存为", + "move": "移动部件", + "save-widget-as": "部件另存为", + "save-widget-as-text": "请输入新的部件标题", + "toggle-fullscreen": "切换全屏", + "run": "运行部件", + "widget-title": "部件标题", + "title": "标题", + "title-required": "部件标题为必填项。", + "title-max-length": "标题不能超过 256 个字符", + "system": "系统", + "type": "部件类型", + "resources": "资源", + "resource-url": "JavaScript/CSS URL", + "resource-is-extension": "是否为扩展", + "remove-resource": "移除资源", + "add-resource": "添加资源", + "html": "HTML", + "tidy": "整理", + "css": "CSS", + "settings-form": "设置表单", + "data-key-settings-form": "数据键设置表单", + "latest-data-key-settings-form": "最新数据键设置表单", + "widget-settings": "部件设置", + "description": "描述", + "tags": "标签", + "image-preview": "图片预览", + "settings-form-selector": "设置表单选择器", + "data-key-settings-form-selector": "数据键设置表单选择器", + "latest-data-key-settings-form-selector": "最新数据键设置表单选择器", + "all": "全部", + "actual": "当前", + "scada": "SCADA 符号", + "deprecated": "已弃用", + "has-basic-mode": "具有基础模式", + "basic-mode-form-selector": "基础模式表单选择器", + "basic-mode": "基础", + "advanced-mode": "高级", + "javascript": "Javascript", + "js": "JS", + "delete-widget-title": "确定要删除部件 '{{widgetName}}' 吗?", + "delete-widget-text": "确认后,该部件及所有相关数据将无法恢复。", + "delete-widgets-title": "确定要删除 { count, plural, =1 {1 个部件} other {# 个部件} } 吗?", + "delete-widgets-text": "请注意,确认后所有选中的部件将被移除,且所有相关数据将无法恢复。", + "delete-widget": "删除部件", + "widget-template-load-failed-error": "加载部件模板失败!", + "details": "详情", + "widget-details": "部件详情", + "add": "添加部件", + "add-existing-widget": "添加现有部件", + "add-new-widget": "添加新部件", + "search-widgets": "搜索部件", + "selected-widgets": "已选择 { count, plural, =1 {1 个部件} other {# 个部件} }", + "undo": "撤销部件更改", + "export": "导出部件", + "export-prompt": "嵌入部件图片和资源", + "export-widgets": "导出部件", + "export-widgets-prompt": "嵌入部件图片和资源", + "import": "导入部件", + "no-data": "部件无数据可显示", + "data-overflow": "部件显示 {{total}} 个实体中的 {{count}} 个", + "alarm-data-overflow": "部件显示 {{totalEntities}} 个实体中 {{allowedEntities}} 个(最大允许数)实体的告警", + "search": "搜索部件", + "filter": "部件过滤器类型", + "loading-widgets": "正在加载部件...", + "widget-template-error": "无效的部件 HTML 模板。", + "reference": "引用" + }, + "widget-action": { + "header-button": "部件标题栏按钮", + "do-nothing": "无操作", + "open-dashboard-state": "导航到新的仪表板状态", + "update-dashboard-state": "更新当前仪表板状态", + "open-dashboard": "导航到其他仪表板", + "custom": "自定义操作", + "custom-pretty": "自定义操作(带 HTML 模板)", + "custom-pretty-error-title": "自定义对话框错误", + "custom-pretty-template-error": "无效的自定义对话框模板。", + "custom-pretty-controller-error": "执行自定义对话框函数时发生错误。", + "mobile-action": "移动端操作", + "target-dashboard-state": "目标仪表板状态", + "target-dashboard-state-required": "目标仪表板状态为必填项", + "set-entity-from-widget": "从部件设置实体", + "target-dashboard": "目标仪表板", + "select-target-dashboard": "选择目标仪表板", + "target-dashboard-required": "目标仪表板为必填项。", + "open-right-layout": "打开右侧仪表板布局(移动端视图)", + "state-display-type": "仪表板状态显示选项", + "open-normal": "正常", + "open-in-separate-dialog": "在单独对话框中打开", + "open-in-popover": "在弹出框中打开", + "dialog-title": "对话框标题", + "dialog-hide-dashboard-toolbar": "在对话框中隐藏仪表板工具栏", + "dialog-width": "对话框宽度(相对于视口宽度的百分比)", + "dialog-height": "对话框高度(相对于视口高度的百分比)", + "dialog-size-range-error": "对话框大小百分比值应在 1 到 100 之间。", + "popover-preferred-placement": "首选弹出框位置", + "popover-placement-top": "顶部", + "popover-placement-topLeft": "左上", + "popover-placement-topRight": "右上", + "popover-placement-right": "右侧", + "popover-placement-rightTop": "右上", + "popover-placement-rightBottom": "右下", + "popover-placement-bottom": "底部", + "popover-placement-bottomLeft": "左下", + "popover-placement-bottomRight": "右下", + "popover-placement-left": "左侧", + "popover-placement-leftTop": "左上", + "popover-placement-leftBottom": "左下", + "popover-hide-on-click-outside": "点击外部时隐藏弹出框", + "popover-hide-dashboard-toolbar": "在弹出框中隐藏仪表板工具栏", + "popover-width": "弹出框宽度", + "popover-height": "弹出框高度", + "popover-style": "弹出框样式", + "open-new-browser-tab": "在新浏览器标签页中打开", + "open-URL": "打开 URL", + "URL": "URL", + "url-required": "URL 为必填项。", "mobile": { - "add-application": "添加应用", - "app-id": "应用ID", - "app-id-required": "应用ID必填", - "app-id-pattern": "应用ID格式无效", - "app-store-link": "应用商店链接", - "app-store-link-required": "应用商店链接必填", - "application-details": "应用详情", - "application-package": "应用包", - "application-secret": "应用密钥", - "application-secret-required": "应用密钥必填", - "application": "应用", - "applications": "应用列表", - "copy-app-id": "复制应用ID", - "copy-app-store-link": "复制应用商店链接", - "copy-application-package": "复制应用包", - "copy-application-secret": "复制应用密钥", - "copy-google-play-link": "复制Google Play链接", - "copy-sha256-certificate-fingerprints": "复制SHA256证书指纹", - "delete-application": "删除应用", - "delete-application-button-text": "我理解后果,删除应用", - "delete-application-text": "此操作无法撤销。删除应用将永久删除应用及其所有相关数据。
如果不想永久删除,可以暂时挂起应用。
若要删除应用,请输入\"{{phrase}}\"进行确认。", - "delete-application-title-short": "确定要删除应用 '{{name}}' 吗?", - "delete-application-text-short": "请注意:确认后应用及所有相关数据将无法恢复。", - "delete-application-phrase": "删除应用", - "delete-applications-bundle-text": "请注意:确认后移动应用包及所有相关数据将无法恢复。", - "delete-applications-bundle-title": "确定要删除移动应用包 '{{bundleName}}' 吗?", - "generate-application-secret": "生成应用密钥", - "google-play-link": "Google Play链接", - "google-play-link-required": "Google Play链接必填", - "latest-version": "最新版本", - "min-version": "最低版本", - "invalid-version-pattern": "版本格式无效。请使用格式:major.minor.patch(例如:1.0.0)。", - "mobile-center": "移动中心", - "mobile-package": "应用包", - "mobile-package-max-length": "应用包长度应少于256个字符", - "mobile-package-required": "应用包是必需的", - "mobile-package-pattern": "应用包格式无效", - "no-application": "未找到应用", - "no-bundles": "未找到移动包", - "platform-type": "平台类型", - "search-application": "搜索应用", - "search-bundles": "搜索移动包", - "set": "设置", - "sha256-certificate-fingerprints": "SHA256证书指纹", - "sha256-certificate-fingerprints-required": "SHA256证书指纹是必需的", - "sha256-certificate-fingerprints-pattern": "SHA256证书指纹格式无效", - "show-hidden-pages": "显示隐藏页面", - "status": "状态", - "status-type": { - "deprecated": "已弃用", - "draft": "草稿", - "published": "已发布", - "suspended": "已暂停" - }, - "store-information": "商店信息", - "version-information": "版本信息", - "min-version-release-notes": "最低版本发布说明", - "latest-version-release-notes": "最新版本发布说明", - "bundle": "捆绑包", - "bundles": "捆绑包列表", - "add-bundle": "添加捆绑包", - "title": "标题", - "title-required": "标题必填", - "oauth-clients": "OAuth2.0客户端", - "android-app": "Android应用", - "android-application": "Android应用程序", - "ios-app": "iOS应用", - "ios-application": "iOS应用程序", - "invalid-store-link": "无效的商店链接", - "enable-oauth": "启用OAuth2.0", - "enable-self-registration": "启用自助注册", - "edit-bundle": "编辑捆绑包", - "description": "描述", - "basic-settings": "基本设置", - "no-application-matching": "未找到与 '{{entity}}' 匹配的应用程序。", - "no-bundle-matching": "未找到与 '{{entity}}' 匹配的捆绑包。", - "application-required": "应用程序必填。", - "bundle-required": "捆绑包必填。", - "no-application-text": "未找到应用程序", - "no-bundle-text": "未找到捆绑包", - "layout": "布局", - "pages": "页面", - "hide-all-pages": "隐藏所有页面", - "reset-to-default-pages": "重置为默认页面", - "add-specific-page": "添加特定页面", - "visible": "可见", - "hidden": "隐藏", - "reset-to-page-default": "重置页面为默认", - "mobile-599": "移动端(最大 599px)", - "tablet-959": "平板(最大 959px)", - "max-element-number": "最大元素数量", - "page-name": "页面名称", - "page-name-required": "页面名称必填。", - "page-name-cannot-contain-only-spaces": "页面名称不能仅包含空格。", - "page-type": "页面类型", - "pages-types": { - "dashboard": "仪表盘", - "web-view": "网页视图", - "custom": "自定义" - }, - "url": "URL", - "invalid-url-format": "URL格式无效", - "path": "路径", - "invalid-path-format": "路径格式无效", - "custom-page": "自定义页面", - "edit-page": "编辑页面", - "edit-custom-page": "编辑自定义页面", - "delete-page": "删除页面", - "qr-code-widget": "二维码小部件", - "type-here": "在此输入", - "configuration-dialog": "配置对话框", - "configuration-app": "配置应用程序", - "configuration-step": { - "prepare-environment-title": "准备开发环境", - "prepare-environment-text": "Flutter ThingsBoard 移动应用程序需要 Flutter SDK。按照说明设置 Flutter SDK。", - "get-source-code-title": "获取应用程序源代码", - "get-source-code-text": "您可以通过从 GitHub 仓库克隆来获取 Flutter ThingsBoard 移动应用程序源代码:", - "configure-api-title": "配置 ThingsBoard API 端点", - "configure-api-text": "在编辑器/IDE 中打开 flutter_thingsboard_app 项目。编辑:", - "configure-api-hint": "将 thingsBoardApiEndpoint 常量的值设置为与您的 ThingsBoard 服务器实例的 API 端点匹配。请勿使用“localhost”或“127.0.0.1”主机名。", - "run-app-title": "运行应用程序", - "run-app-text": "按您的 IDE 中的说明运行应用程序。\n如果使用终端,请使用以下命令运行应用程序:", - "more-information": "详细信息请参阅我们的入门文档。", - "getting-started": "入门", - "configure-package-title": "配置应用程序包", - "configure-package-text": "您可以手动更改应用程序包,也可以使用第三方 CLI 工具。", - "configure-package-text-install": "要安装 Rename CLI 工具,请执行以下命令:", - "configure-package-run-commands": "在您的项目根目录下运行以下命令:" - } + "device-provision": "设备配网", + "action-type": "移动端操作类型", + "select-action-type": "选择移动端操作类型", + "action-type-required": "移动端操作类型为必填项", + "take-picture-from-gallery": "从相册选取图片", + "take-photo": "拍照", + "map-direction": "打开地图导航", + "map-location": "打开地图位置", + "scan-qr-code": "扫描二维码", + "make-phone-call": "拨打电话", + "get-location": "获取手机位置", + "take-screenshot": "截屏", + "handle-provision-success-function": "处理配网成功函数", + "get-location-function": "获取位置函数", + "process-launch-result-function": "处理启动结果函数", + "get-phone-number-function": "获取电话号码函数", + "process-image-function": "处理图片函数", + "process-qr-code-function": "处理二维码函数", + "process-location-function": "处理位置函数", + "handle-empty-result-function": "处理空结果函数", + "handle-error-function": "处理错误函数", + "handle-non-mobile-fallback-function": "处理非移动端回退函数", + "save-to-gallery": "保存到相册", + "provision-type": "配网类型", + "auto": "自动", + "wi-fi": "Wi-Fi", + "ble": "BLE", + "soft-ap": "Soft AP" }, - "notification": { - "action-button": "操作按钮", - "action-type": "操作类型", - "active": "活动", - "add-notification-recipients-group": "添加通知收件人组", - "add-notification-template": "添加通知模板", - "add-recipient": "添加收件人", - "add-recipients": "添加收件人", - "add-rule": "添加规则", - "add-stage": "添加阶段", - "add-template": "添加模板", - "after": "之后", - "alarm-assignment-trigger-settings": "告警分配触发设置", - "alarm-comment-trigger-settings": "告警评论触发设置", - "alarm-trigger-settings": "告警触发设置", - "all": "所有", - "api-feature-hint": "如果字段为空,则触发器将应用于所有API功能", - "api-usage-trigger-settings": "API使用触发设置", - "new-platform-version-trigger-settings": "新平台版本触发设置", - "rate-limits-trigger-settings": "超出速率限制触发设置", - "task-processing-failure-trigger-settings": "任务处理故障触发设置", - "at-least-one-should-be-selected": "至少需要选择一个", - "basic-settings": "基本设置", - "button-text": "按钮文本", - "button-text-required": "按钮文本必填。", - "button-text-max-length": "按钮文本应小于或等于{{ length }}个字符。", - "compose": "组合", - "conversation": "对话", - "conversation-required": "对话必填。", - "copy-notification-template": "复制通知模板", - "copy-rule": "复制规则", - "copy-template": "复制模板", - "create-new": "创建", - "created": "已创建", - "customize-messages": "自定义消息", - "delete-notification-text": "请注意,在确认后,通知将无法恢复。", - "delete-notification-title": "您确定要删除该通知吗?", - "delete-notifications-text": "请注意,在确认后,通知将无法恢复。", - "delete-notifications-title": "确定要删除{ count, plural, =1 {1 个通知} other {# 个通知} }吗?", - "delete-recipient-text": "请注意,在确认后,收件人将无法恢复。", - "delete-recipient-title": "确定要删除收件人'{{recipientName}}' 吗?", - "delete-recipients-text": "请注意,在确认后,收件人将无法恢复。", - "delete-recipients-title": "确定要删除{ count, plural, =1 {1 个收件人} other {# 个收件人} }吗?", - "delete-request-text": "请注意,在确认后,请求将无法恢复。", - "delete-request-title": "确定要删除请求吗?", - "delete-requests-text": "请注意,在确认后,请求将无法恢复。", - "delete-requests-title": "确定要删除{ count, plural, =1 {1 个请求} other {# 个请求} }吗?", - "delete-rule-text": "请注意,在确认后,规则将无法恢复。", - "delete-rule-title": "确定要删除规则'{{ruleName}}' 吗?请注意,确认后无法恢复。", - "delete-rules-text": "请注意,在确认后,规则将无法恢复。", - "delete-rules-title": "确定要删除{ count, plural, =1 {1 条规则} other {# 条规则} }吗?", - "delete-template-text": "请注意,在确认后,模板将无法恢复。", - "delete-template-title": "确定要删除模板'{{templateName}}' 吗?", - "delete-templates-text": "请注意,在确认后,模板将无法恢复。", - "delete-templates-title": "确定要删除{ count, plural, =1 {1 个模板} other {# 个模板} }吗?", - "deleted": "已删除", - "delivery-method": { - "delivery-method": "推送方式", - "email": "Email", - "email-preview": "Email 通知预览", - "slack": "Slack", - "slack-preview": "Slack 通知预览", - "microsoft-teams": "微软Teams", - "microsoft-teams-preview": "微软Teams通知预览", - "sms": "SMS", - "sms-preview": "SMS通知预览", - "web": "Web", - "web-preview": "Web通知预览", - "mobile-app": "移动应用", - "mobile-app-preview": "移动应用通知预览" - }, - "delivery-method-not-configure-click": "单击进行推送方式设置。", - "delivery-method-not-configure-contact": "推送方式未设置,请与系统管理员联系。", - "delivery-methods": "推送方式", - "description": "描述", - "device-activity-trigger-settings": "设备活动触发设置", - "device-list-rule-hint": "如果该字段为空,则触发器将适用于所有设备。", - "device-profiles-list-rule-hint": "如果该字段为空,则触发器将适用于所有设备配置。", - "disabled": "禁用", - "edge-trigger-settings": "Edge触发设置", - "edge-list-rule-hint": "如果字段为空则将触发应用于所有Edge实例", - "edit-notification-recipients-group": "编辑通知收件人群组", - "edit-notification-template": "编辑通知模板", - "edit-rule": "编辑规则", - "edit-template": "编辑模板", - "enabled": "已启用", - "entities-limit-trigger-settings": "实体限制触发器设置", - "entity-action-trigger-settings": "实体动作触发器设置", - "entity-type": "实体类型", - "escalation-chain": "逐步升级链", - "failed-send": "发送失败", - "fails": "{ count, plural, =1 {1 个失败} other {# 个失败} }", - "filter": "筛选器", - "first-recipient": "第一收件人", - "inactive": "非活动", - "inbox": "收件箱", - "notification-inbox": "通知 / 收件箱", - "input-field-support-templatization": "输入字段支持模板化", - "input-fields-support-templatization": "输入字段支持模板化", - "link": "链接", - "link-required": "链接必填。", - "link-type": { - "dashboard": "打开仪表板", - "link": "打开URL链接" - }, - "loading-notifications": "加载通知中…", - "management": "通知管理", - "mark-all-as-read": "全部标记为已读", - "mark-as-read": "标记为已读", - "message": "信息", - "message-required": "信息必填。", - "message-max-length": "提示信息应该小于或等于 {{ length }}个字符", - "name": "名称", - "name-required": "名称必填", - "new-notification": "新通知", - "no-inbox-notification": "未找到通知", - "no-notification-request": "没有通知请求", - "no-notification-templates": "未找到通知模板", - "no-notifications-yet": "目前还没有通知", - "no-recipients-notification": "没有收件人的通知", - "no-recipients-matching": "未找到与 '{{entity}}' 匹配的收件人。", - "no-recipients-text": "未找到收件人", - "no-rule": "未配置规则", - "no-rules-notification": "没有规则通知", - "no-severity-found": "未找到严重性级别", - "no-severity-matching": "未找到'{{severity}}'。", - "no-template-matching": "未找到与'{{template}}' 匹配的资源。", - "not-found-slack-recipient": "未找到Slack的收件人", - "notification": "通知", - "notification-center": "通知中心", - "notification-tap-action": "单击通知操作", - "notification-tap-action-hint": "如果未启用将使用默认警报仪表板", - "notify": "通知", - "notify-again": "再次通知", - "notify-alarm-action": { - "acknowledged": "告警已确认", - "assigned": "告警已分配", - "cleared": "告警已清除", - "created": "告警已确认", - "severity-changed": "告警级别已更改", - "unassigned": "告警未分配" - }, - "notify-on": "通知条件", - "notify-on-comment-update": "在评论更新时通知", - "notify-on-required": "通知条件必填。", - "notify-on-unassign": "在取消分配时通知", - "notify-only-user-comments": "仅在用户评论时通知", - "only-rule-chain-lifecycle-failures": "仅在规则链生命周期故障时通知", - "only-rule-node-lifecycle-failures": "仅在规则节点生命周期故障时通知", - "platform-users": "平台用户", - "rate-limits": "速率限制", - "rate-limits-hint": "如果该字段为空,则触发器将应用于所有速率限制", - "recipient": "收件人", - "recipient-group": "收件人组", - "recipient-type": { - "affected-tenant-administrators": "受影响的租户管理员", - "affected-user": "受影响的用户", - "all-users": "所有用户", - "customer-users": "客户用户", - "system-administrators": "系统管理员", - "tenant-administrators": "租户管理员", - "user-filters": "用户筛选器", - "user-list": "用户列表", - "users-entity-owner": "实体所有者的用户" - }, - "recipients": "收件人", - "notification-recipient": "通知接收者", - "notification-recipient-required": "通知接收者必填。", - "notification-recipients": "通知/收件人", - "recipients-count": "{ count, plural, =1 {1 个收件人} other {# 个收件人} }", - "recipients-required": "收件人必填。", - "refresh-allow-delivery-method": "刷新允许推送方式", - "request-search": "请求搜索", - "request-status": { - "processing": "处理中", - "scheduled": "已安排", - "sent": "已发送" - }, - "review": "检查", - "rule": "规则", - "rule-chain-list-rule-hint": "如果字段为空,则触发器将应用于所有规则链。", - "rule-engine-events-trigger-settings": "规则引擎事件触发器设置", - "rule-engine-filter": "规则引擎筛选器", - "rule-name": "规则名称", - "rule-name-required": "名称必填。", - "rule-disable": "禁用通知规则", - "rule-enable": "启用通知规则", - "rule-node-filter": "规则节点筛选器", - "rules": "规则", - "notification-rules": "通知 / 规则", - "scheduler-later": "稍后安排", - "search-notification": "搜索通知", - "search-recipients": "搜索收件人", - "search-rules": "搜索规则", - "search-templates": "搜索模板", - "see-documentation": "查看文档", - "selected-notifications": "已选择{ count, plural, =1 {1 个通知} other {# 个通知} }", - "selected-recipients": "已选择{ count, plural, =1 {1 个收件人} other {# 个收件人} }", - "selected-requests": "已选择{ count, plural, =1 {1 个请求} other {# 个请求} }", - "selected-rules": "已选择{ count, plural, =1 {1 个规则} other {# 个规则} }", - "selected-template": "已选择{ count, plural, =1 {1 个模板} other {# 个模板} }", - "send-notification": "发送通知", - "sent": "已发送", - "setup": "步骤", - "notification-sent": "通知/已发送", - "set-entity-from-notification": "将通知中的实体设置为仪表盘状态", - "slack-chanel-type": "Slack频道类型", - "slack-chanel-types": { - "direct": "直接消息", - "private-channel": "私有频道", - "public-channel": "公开频道" - }, - "start-from-scratch": "从头开始", - "status": "状态", - "stop-escalation-alarm-status-become": "停止逐步升级,将告警状态设置为:", - "subject": "主题", - "subject-required": "主题必填。", - "subject-max-length": "主题应小于或等于{{ length }}个字符", - "template": "模板", - "template-name": "模板名称", - "template-required": "模板必填。", - "template-type": { - "alarm": "告警", - "alarm-assignment": "告警分配", - "alarm-comment": "告警评论", - "api-usage-limit": "API使用限制", - "device-activity": "设备活动", - "entities-limit": "实体限制", - "entity-action": "实体操作", - "general": "通用", - "rule-engine-lifecycle-event": "规则引擎生命周期事件", - "rule-node": "规则节点", - "new-platform-version": "新的平台版本", - "rate-limits": "超过速率限制", - "edge-communication-failure": "Edge通信故障", - "edge-connection": "Edge连接", - "task-processing-failure": "任务处理失败" - }, - "templates": "模板", - "notification-templates": "通知/模板", - "tenant-profiles-list-rule-hint": "如果字段为空,触发器将应用于所有租户配置", - "tenants-list-rule-hint": "如果字段为空,触发器将应用于所有租户", - "threshold": "阈值", - "theme-color": "主题颜色", - "time": "时间", - "track-rule-node-events": "追踪规则节点事件", - "trigger": { - "alarm": "告警", - "alarm-assignment": "告警分配", - "alarm-comment": "告警评论", - "api-usage-limit": "API使用限制", - "device-activity": "设备活动", - "entities-limit": "实体限制", - "entity-action": "实体操作", - "rule-engine-lifecycle-event": "规则引擎生命周期事件", - "new-platform-version": "新的平台版本", - "rate-limits": "超过速率限制", - "edge-connection": "Edge连接", - "edge-communication-failure": "Edge通信故障", - "task-processing-failure": "任务处理失败", - "trigger": "触发器", - "trigger-required": "触发器必填。" - }, - "type": "类型", - "unread": "未读", - "updated": "已更新", - "use-deprecated-webhook-connectors": "使用已弃用的Webhook连接器", - "use-old-api": "使用旧API", - "use-template": "使用模板", - "view-all": "查看全部", - "warning": "警告", - "webhook-url": "Webhook URL", - "webhook-url-required": "Webhook URL必填。", - "workflow-url": "Workflow URL", - "workflow-url-required": "Workflow URL必填。", - "channel-name": "频道名称", - "channel-name-required": "需要填写频道名称", - "settings": { - "notification-settings": "通知设置", - "reset-all": "重置全部设置", - "reset-all-title": "您确定要将表单重置吗?", - "reset-all-text": "确认后,设置表单将重置为默认值并保存。", - "type": "类型", - "enable-all": "全部启用", - "disable-all": "全部禁用", - "delivery-not-configured": "未配置传递方式" - } + "custom-action-function": "自定义操作函数", + "custom-pretty-function": "自定义操作(带 HTML 模板)函数", + "map-item-type": "地图项目类型", + "map-item": { + "marker": "标记", + "polygon": "多边形", + "rectangle": "矩形", + "circle": "圆形", + "polyline": "折线" }, - "ota-update": { - "add": "添加包", - "assign-firmware": "分配的固件", - "assign-firmware-required": "分配的固件必填", - "assign-software": "分配的软件", - "assign-software-required": "分配的软件必填", - "auto-generate-checksum": "自动生成校验和", - "checksum": "校验和", - "checksum-hint": "如果校验和为空,会自动生成", - "checksum-algorithm": "校验和算法", - "checksum-copied-message": "包校验和已复制到剪贴板", - "change-firmware": "固件的更改可能会导致{ count, plural, =1 {1 个设备} other {# 个设备} } 的更新。", - "change-software": "软件的更改可能会导致{ count, plural, =1 {1 个设备} other {# 个设备} } 的更新。", - "chose-compatible-device-profile": "上传的包仅适用于具有所选配置的设备。", - "chose-firmware-distributed-device": "选择将分发到设备的固件", - "chose-software-distributed-device": "选择将分发到设备的软件", - "content-type": "内容类型", - "copy-checksum": "复制校验和", - "copy-direct-url": "复制直接URL", - "copyId": "复制包ID", - "copied": "已复制!", - "delete": "删除包", - "delete-ota-update-text": "请注意:确认后,OTA升级将不可恢复。", - "delete-ota-update-title": "确定要删除 '{{title}}' OTA升级吗?", - "delete-ota-updates-text": "请注意:确认后,所有选中的OTA升级将被删除。", - "delete-ota-updates-title": "确定要删除{ count, plural, =1 {1 OTA升级} other {# OTA升级} }吗?", - "description": "说明", - "direct-url": "直接URL", - "direct-url-copied-message": "包直接URL已复制到剪贴板", - "direct-url-required": "直接URL必填", - "download": "下载包", - "drop-file": "拖放包文件或点击选择要上传的文件。", - "drop-package-file-or": "拖放一个包文件或者", - "file-name": "文件名", - "file-size": "文件大小", - "file-size-bytes": "文件大小(以字节为单位)", - "idCopiedMessage": "包ID已被复制到剪贴板", - "no-firmware-matching": "未找到与'{{entity}}'匹配的兼容固件OTA升级包。", - "no-firmware-text": "没有提供兼容的固件OTA升级包。", - "no-packages-text": "未找到包", - "no-software-matching": "未找到匹配 '{{entity}}' 的兼容软件OTA升级包。", - "no-software-text": "没有提供兼容的软件OTA升级包。", - "ota-update": "OTA 升级", - "ota-update-details": "OTA 升级详情", - "ota-updates": "OTA 升级", - "package-file": "包文件", - "package-type": "包类型", - "packages-repository": "包仓库", - "search": "搜索包", - "selected-package": "{ count, plural, =1 {1个包} other {#个包} }选中", - "title": "标题", - "title-required": "标题必填。", - "title-max-length": "标题长度应该小于256个字符。", - "types": { - "firmware": "固件", - "software": "软件" - }, - "upload-binary-file": "上传二进制文件", - "use-external-url": "使用外部URL", - "version": "版本", - "version-required": "版本必填。", - "version-tag": "版本标签", - "version-tag-hint": "自定义标签应与您设备报告的软件包版本相匹配。", - "version-max-length": "版本长度应该小于256个字符", - "warning-after-save-no-edit": "上传包后,您将无法修改标题、版本、设备配置和包类型。" - }, - "position": { - "top": "顶部", - "bottom": "底部", - "left": "左侧", - "right": "右侧" - }, - "profile": { - "profile": "属性", - "last-login-time": "最后登录", - "change-password": "更改密码", - "current-password": "当前密码", - "copy-jwt-token": "复制 JWT 令牌", - "jwt-token": "JWT 令牌", - "token-valid-till": "令牌有效期至", - "tokenCopiedSuccessMessage": "JWT 令牌已复制到剪贴板", - "tokenCopiedWarnMessage": "JWT 令牌已过期!请刷新页面。" - }, - "profiles": { - "profiles": "配置" - }, - "security": { - "security": "安全", - "general-settings": "通用安全设置", - "access-token": "访问令牌", - "access-token-required": "需要访问令牌", - "clientId": "客户端ID", - "clientId-required": "需要客户端ID", - "username": "用户名", - "username-required": "需要用户名", - "ca-cert": "CA证书", - "2fa": { - "2fa": "双因素认证", - "2fa-description": "双因素认证可保护您的帐户免受未经授权的访问。在登录时必须输入安全验证码。", - "authenticate-with": "可以使用以下身份验证:", - "disable-2fa-provider-text": "禁用{{ name }}会降低帐户的安全性", - "disable-2fa-provider-title": "确定要禁用 {{ name }}吗?", - "get-new-code": "获取新验证码", - "main-2fa-method": "用作主要的双因素认证方法", - "dialog": { - "activation-step-description-email": "下次登录时,系统将提示您输入电子邮件中的验证码。", - "activation-step-description-sms": "下次登录时,系统将提示您输入短信中的验证码。", - "activation-step-description-totp": "下次登录时,您需要提供一个双因素认证码。", - "activation-step-label": "激活", - "backup-code-description": "打印出验证码,以便在您需要时使用它们登录帐户。每个备份验证码可以使用一次。", - "backup-code-warn": "离开此页后,这些代码将无法再次显示。使用以下选项安全存放。", - "download-txt": "下载(txt)", - "email-step-description": "输入用作身份验证的电子邮件", - "email-step-label": "电子邮件", - "enable-email-title": "启用电子邮件验证", - "enable-sms-title": "启用SMS验证", - "enable-totp-title": "启用验证APP", - "enter-verification-code": "输入6位验证码", - "get-backup-code-title": "获取备份验证码", - "next": "下一步", - "scan-qr-code": "使用验证APP扫描二维码", - "send-code": "发送验证码", - "sms-step-description": "输入用作身份验证的手机号码", - "sms-step-label": "手机号码", - "success": "操作成功!", - "totp-step-description-install": "可以安装像Google Authenticator、Authy或Duo这样的应用程序。", - "totp-step-description-open": "在手机上打开验证APP。", - "totp-step-label": "获取APP", - "verification-code": "6位验证码", - "verification-code-invalid": "验证码格式无效", - "verification-code-incorrect": "验证码不正确", - "verification-code-many-request": "请求过多,请检查验证码", - "verification-step-description": "输入发送到{{ address }}的6位代码", - "verification-step-label": "验证" - }, - "provider": { - "email": "电子邮件", - "email-description": "使用您电子邮件中的验证码进行身份验证。", - "email-hint": "身份验证码通过电子邮件发送到{{ info }}", - "sms": "SMS", - "sms-description": "使用短信进行身份验证,当登录时系统会通过短信向您发送验证码。", - "sms-hint": "身份验证码通过短信发送到{{ info }}", - "totp": "验证APP", - "totp-description": "使用手机上的Google Authenticator、Authy或Duo等应用程序进行身份验证,它将生成用于登录的验证码。", - "totp-hint": "已为您的帐户设置验证APP", - "backup_code": "备份验证码", - "backup-code-description": "这些可打印的一次性密码允许您在离开手机时登录,比如正在旅行。", - "backup-code-hint": "{{ info }}个一次性代码此时处于激活状态" - } - }, - "password-requirement": { - "at-least": "至少:", - "character": "{ count, plural, =1 {1 位字符} other {# 位字符} }", - "digit": "{ count, plural, =1 {1 位数字} other {# 位数字} }", - "incorrect-password-try-again": "密码不正确再试一次。", - "lowercase-letter": "{ count, plural, =1 {1 位小写字母} other {# 位小写字母} }", - "new-passwords-not-match": "新密码不匹配", - "password-should-not-contain-spaces": "密码不应包含空格", - "password-not-meet-requirements": "密码不符合要求", - "password-requirements": "密码要求", - "password-should-difference": "新密码应与当前密码不同", - "special-character": "{ count, plural, =1 {1 位特殊字符} other {# 位特殊字符} }", - "uppercase-letter": "{ count, plural, =1 {1 位大写字母} other {# 位大写字母} }", - "at-most": "最多:" - } + "place-map-item": "放置地图项目", + "map-item-tooltip": { + "customize-map-item-tooltips": "自定义地图项目提示", + "place-marker": "放置标记", + "start-draw-rectangle": "开始绘制矩形", + "finish-draw-rectangle": "完成绘制矩形", + "start-draw-polygon": "开始绘制多边形", + "continue-draw-polygon": "继续绘制多边形", + "finish-draw-polygon": "完成绘制多边形", + "start-draw-circle": "开始绘制圆形", + "finish-draw-circle": "完成绘制圆形", + "start-draw-polyline": "开始绘制折线", + "finish-draw-polyline": "完成绘制折线" + } + }, + "widgets-bundle": { + "current": "当前包", + "widgets-bundles": "部件包", + "widgets-bundle-widgets": "部件包部件", + "add": "添加部件包", + "delete": "删除部件包", + "title": "标题", + "title-required": "标题为必填项。", + "title-max-length": "标题不能超过 256 个字符", + "description": "描述", + "image-preview": "图片预览", + "scada": "SCADA 部件包", + "order": "排序", + "add-widgets-bundle-text": "添加新部件包", + "no-widgets-bundles-text": "未找到部件包", + "empty": "部件包为空", + "details": "详情", + "widgets-bundle-details": "部件包详情", + "delete-widgets-bundle-title": "确定要删除部件包 '{{widgetsBundleTitle}}' 吗?", + "delete-widgets-bundle-text": "请注意,确认后该部件包及所有相关数据将无法恢复。", + "delete-widgets-bundles-title": "确定要删除 { count, plural, =1 {1 个部件包} other {# 个部件包} } 吗?", + "delete-widgets-bundles-action-title": "删除 { count, plural, =1 {1 个部件包} other {# 个部件包} }", + "delete-widgets-bundles-text": "请注意,确认后所有选中的部件包将被移除,且所有相关数据将无法恢复。", + "no-widgets-bundles-matching": "未找到匹配 '{{widgetsBundle}}' 的部件包。", + "widgets-bundle-required": "部件包为必填项。", + "system": "系统", + "import": "导入部件包", + "export": "导出部件包", + "export-widgets-bundle-widgets-prompt": "在导出数据中包含包内部件(否则仅导出引用的部件 FQN)", + "export-failed-error": "无法导出部件包:{{error}}", + "create-new-widgets-bundle": "创建新部件包", + "widgets-bundle-file": "部件包文件", + "invalid-widgets-bundle-file-error": "无法导入部件包:无效的部件包数据结构。", + "search": "搜索部件包", + "selected-widgets-bundles": "已选择 { count, plural, =1 {1 个部件包} other {# 个部件包} }", + "open-widgets-bundle": "打开部件包", + "loading-widgets-bundles": "正在加载部件包...", + "create-new": "创建新部件包" + }, + "widget-config": { + "data": "数据", + "settings": "设置", + "advanced": "高级", + "appearance": "外观", + "widget-card": "部件卡片", + "mobile": "移动端", + "title": "标题", + "title-tooltip": "标题提示", + "general-settings": "常规设置", + "display-title": "显示部件标题", + "card-title": "卡片标题", + "drop-shadow": "阴影", + "enable-fullscreen": "启用全屏", + "background-color": "背景颜色", + "text-color": "文本颜色", + "border-radius": "边框圆角", + "padding": "内边距", + "margin": "外边距", + "widget-style": "部件样式", + "widget-css": "部件 CSS", + "title-style": "标题样式", + "mobile-mode-settings": "移动端模式", + "order": "排序", + "height": "高度", + "mobile-hide": "在移动端模式下隐藏部件", + "desktop-hide": "在桌面端模式下隐藏部件", + "units": "显示在值旁边的特殊符号", + "units-by-default": "默认单位", + "decimals": "小数点后位数", + "decimals-by-default": "默认小数位数", + "default-data-key-parameter-hint": "此参数适用于所有部件值,除非被数据键配置覆盖", + "units-short": "单位", + "decimals-short": "小数位", + "decimals-suffix": "小数位", + "digits-suffix": "位数", + "timewindow": "时间窗口", + "use-dashboard-timewindow": "使用仪表板时间窗口", + "use-widget-timewindow": "使用部件时间窗口", + "display-timewindow": "显示时间窗口", + "legend": "图例", + "display-legend": "显示图例", + "datasources": "数据源", + "datasource": "数据源", + "maximum-datasources": "最多允许 { count, plural, =1 {1 个数据源。} other {# 个数据源} }", + "timeseries-key-error": "至少需要指定一个时间序列数据键", + "datasource-type": "类型", + "datasource-parameters": "参数", + "remove-datasource": "移除数据源", + "add-datasource": "添加数据源", + "target-device": "目标设备", + "alarm-source": "告警源", + "actions": "操作", + "action": "操作", + "add-action": "添加操作", + "search-actions": "搜索操作", + "no-actions-text": "未找到操作", + "action-source": "操作来源", + "select-action-source": "选择操作来源", + "action-source-required": "操作来源为必填项。", + "column-index": "列索引", + "select-column-index": "选择列索引", + "column-index-required": "列索引为必填项。", + "not-set": "未设置", + "action-name": "名称", + "action-name-required": "操作名称为必填项。", + "action-name-not-unique": "已存在同名的操作。\n操作名称在同一操作来源中必须唯一。", + "action-icon": "图标", + "header-button": { + "button-settings": "按钮设置", + "button-type": "按钮类型", + "button-type-basic": "基础", + "button-type-raised": "凸起", + "button-type-stroked": "描边", + "button-type-flat": "扁平", + "button-type-icon": "图标", + "button-type-mini-fab": "FAB", + "colors": "颜色", + "color": "颜色", + "background": "背景", + "border": "边框", + "advanced-button-style": "高级按钮样式", + "button-style": "按钮样式" }, - "relation": { - "relations": "关联", - "direction": "方向", - "clear-relation-type": "清除关系类型", - "search-direction": { - "FROM": "从", - "TO": "到" - }, - "direction-type": { - "FROM": "从", - "TO": "到" - }, - "from-relations": "向外的关联", - "to-relations": "向内的关联", - "selected-relations": "已选择{ count, plural, =1 {1 个关联} other {# 个关联} }", - "type": "类型", - "to-entity-type": "到实体类型", - "to-entity-name": "到实体名称", - "from-entity-type": "从实体类型", - "from-entity-name": "从实体类型", - "to-entity": "到实体", - "from-entity": "从实体", - "delete": "删除关联", - "relation-type": "关联类型", - "relation-type-required": "关联类型必填", - "relation-type-max-length": "关联类型长度应该小于256个字符。", - "any-relation-type": "任何类型", - "add": "添加关联", - "edit": "编辑关联", - "delete-to-relation-title": "确定要删除实体'{{entityName}}'的关联吗?", - "delete-to-relation-text": "确定删除后实体'{{entityName}}'将取消与当前实体的关联关系。", - "delete-to-relations-title": "确定要删除{ count, plural, =1 {1 个关联} other {# 个关联} }吗?", - "delete-to-relations-text": "确定删除所有选择的关联关系后,与当前实体对应的所有关联关系将被移除。", - "delete-from-relation-title": "确定要从实体'{{entityName}}' 删除关联吗?", - "delete-from-relation-text": "确定删除后当前实体将与实体 '{{entityName}}'取消关联", - "delete-from-relations-title": "确定删除{ count, plural, =1 {1 个关联} other {# 个关联} }吗?", - "delete-from-relations-text": "确定删除所有选择的关联关系后,当前实体将与对应的实体取消关联", - "remove-relation-filter": "移除关联筛选器", - "remove-filter": "移除过滤器", - "add-relation-filter": "添加关联筛选器", - "any-relation": "任意关联", - "relation-filters": "关联筛选器", - "additional-info": "附加信息 (JSON)", - "invalid-additional-info": "无法解析附加信息JSON。", - "no-relations-text": "未找到关联", - "not": "不是" - }, - "resource": { - "add": "添加资源", - "all-types": "全部", - "copyId": "复制资源ID", - "delete": "删除资源", - "delete-resource-text": "请注意:确认后,资源将不可恢复。", - "delete-resource-title": "确定要删除资源'{{resourceTitle}}'吗?", - "delete-resources-action-title": "删除{ count, plural, =1 {1 个资源} other {# 个资源} }", - "delete-resources-text": "请注意:确认后,所有选定的资源将被删除。", - "delete-resources-title": "确定要删除{ count, plural, =1 {1 个资源} other {# 个资源} }吗?", - "download": "下载资源", - "drop-file": "拖放资源文件或单击以选择要上传的文件。", - "drop-resource-file-or": "拖放一个资源文件或者", - "empty": "资源为空", - "file-name": "文件名称", - "idCopiedMessage": "资源ID已复制到剪贴板", - "no-resource-matching": "未找到与'{{widgetsBundle}}'匹配的资源。", - "no-resource-text": "未找到资源", - "open-widgets-bundle": "打开部件库", - "resource": "资源", - "resource-file": "资源文件", - "resource-files": "资源文件", - "resource-library-details": "资源库详情", - "resource-type": "资源类型", - "resources-library": "资源库", - "search": "查找资源", - "selected-resources": "已选择{ count, plural, =1 {1 个资源} other {# 个资源} }", - "system": "系统", - "title": "标题", - "title-required": "标题是必填项。", - "title-max-length": "标题长度应该小于256个字符。", - "type": { - "jks": "JKS", - "js-module": "JS 模块", - "lwm2m-model": "LWM2M 模型", - "pkcs-12": "PKCS #12" - }, - "resource-sub-type": "子类型", - "sub-type": { - "image": "图像", - "scada-symbol": "SCADA符号", - "extension": "扩展", - "module": "模块" - } + "show-hide-action-using-function": "使用函数显示/隐藏操作", + "show-action-function": "显示操作函数", + "action-type": "类型", + "action-type-required": "操作类型为必填项。", + "edit-action": "编辑操作", + "delete-action": "删除操作", + "delete-action-title": "删除部件操作", + "delete-action-text": "确定要删除名为 '{{actionName}}' 的部件操作吗?", + "title-icon": "标题图标", + "display-icon": "显示标题图标", + "card-icon": "卡片图标", + "icon": "图标", + "icon-color": "图标颜色", + "icon-size": "图标大小", + "advanced-settings": "高级设置", + "data-settings": "数据设置", + "limits": "限制", + "no-data-display-message": "“无数据可显示”替代消息", + "data-page-size": "每个数据源的最大实体数", + "settings-component-not-found": "未找到选择器 '{{selector}}' 对应的设置表单组件", + "preview": "预览", + "set": "设置", + "set-message": "设置消息", + "advanced-title-style": "高级标题样式", + "card-style": "卡片样式", + "text": "文本", + "background": "背景", + "advanced-widget-style": "高级部件样式", + "card-buttons": "卡片按钮", + "show-card-buttons": "显示卡片按钮", + "card-border-radius": "卡片边框圆角", + "card-padding": "卡片内边距", + "card-appearance": "卡片外观", + "color": "颜色", + "tooltip": "提示", + "units-required": "单位为必填项。", + "list-layout": "列表布局", + "layout": "布局", + "resize-options": "调整大小选项", + "resizable": "可调整大小", + "preserve-aspect-ratio": "保持宽高比" + }, + "widget-type": { + "import": "导入部件类型", + "export": "导出部件类型", + "export-failed-error": "无法导出部件:{{error}}", + "widget-file": "部件文件", + "invalid-widget-file-error": "无法导入部件:无效的部件数据结构。" + }, + "markdown": { + "edit": "编辑", + "preview": "预览", + "copy-code": "点击复制", + "copied": "已复制!" + }, + "widgets": { + "mobile-app-qr-code": { + "configuration-hint": "配置取决于平台主设置中的移动应用二维码部件", + "get-it-on-google-play": "在 Google Play 上获取", + "download-on-the-app-store": "在 App Store 上下载" }, - "javascript": { - "add": "添加JavaScript资源", - "delete": "删除JavaScript资源", - "delete-javascript-resource-text": "请注意:确认后该JavaScript资源将不可恢复。", - "delete-javascript-resource-title": "确定要删除JavaScript资源 '{{resourceTitle}}' 吗?", - "delete-javascript-resources-action-title": "删除JavaScript { count, plural, =1 {1 个资源} other {# 个资源} }", - "delete-javascript-resources-text": "请注意,即使这些JavaScript资源已被JavaScript函数使用,它们也将被删除。", - "delete-javascript-resources-title": "确定要删除JavaScript { count, plural, =1 {1 个资源} other {# 个资源} } 吗?", - "download": "下载JavaScript资源", - "upload-from-file": "从文件上传JavaScript", - "resource-file": "JavaScript资源文件", - "drop-file": "拖放一个JavaScript文件,或点击选择要上传的文件。", - "drop-resource-file-or": "拖放一个JavaScript文件或", - "javascript-library": "JavaScript库", - "javascript-type": "JavaScript类型", - "javascript-resource-details": "JavaScript资源详情", - "search": "搜索JavaScript资源", - "selected-javascript-resources": "{ count, plural, =1 {1 个 JavaScript 资源} other {# 个 JavaScript 资源} } 已选择", - "no-javascript-resource-text": "未找到JavaScript资源", - "all-types": "全部", - "module-script": "模块脚本" + "action-button": { + "behavior": "行为", + "on-click": "点击时", + "on-click-hint": "点击按钮时触发的操作", + "first-button-click": "第一按钮点击", + "first-button-click-hint": "按下第一按钮时的操作。", + "second-button-click": "第二按钮点击", + "second-button-click-hint": "按下第二按钮时的操作。", + "button-click-hint": "按下部件时的操作。" }, - "rpc": { - "error": { - "target-device-is-not-set": "目标设备未设置!", - "invalid-target-entity": "{{entityType}}实体不支持RPC命令。", - "failed-to-resolve-target-device": "无法解析目标设备!", - "request-timeout": "请求超时", - "rpc-http-error": "错误: {{status}}-{{statusText}}" - } + "command-button": { + "behavior": "行为", + "on-click": "点击时", + "on-click-hint": "点击按钮时执行的操作。" }, - "rulechain": { - "rulechain": "规则链", - "rulechain-events": "规则链事件", - "rulechains": "规则链库", - "root": "是否根链", - "delete": "删除规则链", - "name": "名称", - "name-required": "名称必填。", - "name-max-length": "名称长度应该小于256个字符。", - "description": "说明", - "add": "添加规则链", - "set-root": "设置为根规则链", - "set-root-rulechain-title": "确定要设置'{{ruleChainName}}'为根规则链吗?", - "set-root-rulechain-text": "确认后,规则链将变为根规格链,并将处理所有传入的传输消息。", - "delete-rulechain-title": " 确定要删除规则链'{{ruleChainName}}'吗?", - "delete-rulechain-text": "请注意,确认后,规则链和所有相关数据将不可恢复。", - "delete-rulechains-title": "确定要删除{count, plural, =1 { 1 个规则链} other {# 个规则链} }吗?", - "delete-rulechains-action-title": "删除{ count, plural, =1 {1 个规则链} other {# 个规则链} }", - "delete-rulechains-text": "请注意:确认后所有选定的规则链将被删除,所有相关的数据将不可恢复。", - "add-rulechain-text": "添加规则链", - "no-rulechains-text": "未找到规则链", - "rulechain-details": "规则链详情", - "details": "详情", - "events": "事件", - "system": "系统", - "import": "导入规则链", - "export": "导出规则链", - "export-failed-error": "无法导出规则链:{{error}}", - "create-new-rulechain": "创建规则链", - "rulechain-file": "规则链文件", - "invalid-rulechain-file-error": "不能导入规则链:无效的规则链数据格式。", - "copyId": "复制规则链ID", - "idCopiedMessage": "规则ID已经复制到粘贴板", - "select-rulechain": "选择规则链", - "no-rulechains-matching": "没有发现匹配'{{entity}}'的规则链。", - "rulechain-required": "规则链必填", - "management": "规则集管理", - "debug-mode": "调试模式", - "search": "查找规则链", - "selected-rulechains": "已选择{ count, plural, =1 {1 个规则链} other {# 个规则链} }", - "open-rulechain": "打开规则链", - "edge-template-root": "模版根链", - "assign-to-edge": "分配给边缘", - "edge-rulechain": "边缘规则链", - "unassign-rulechain-from-edge-text": "确认后规则链将会取消分配,边缘无法访问。", - "unassign-rulechains-from-edge-title": "确定要取消分配{ count, plural, =1 {1 个规则链} other {# 个规则链} }吗?", - "unassign-rulechains-from-edge-text": "确认后,选定的规则链将会取消分配,边缘无法访问。", - "assign-rulechain-to-edge-title": "分配规则链给边缘", - "assign-rulechain-to-edge-text": "请选择要分配给边缘的规则链", - "set-edge-template-root-rulechain": "设置为边缘模版根规则链", - "set-edge-template-root-rulechain-title": "确定将'{{ruleChainName}}' 设置为边缘模版根规则链吗?", - "set-edge-template-root-rulechain-text": "确认后,将会成为边缘模版根规则链,且它会成为新创建边缘的根规则链。", - "invalid-rulechain-type-error": "不能导入规则链:无效的规则链类型。期望类型为{{expectedRuleChainType}}。", - "set-auto-assign-to-edge": "将规则链分配给新创建的边缘", - "set-auto-assign-to-edge-title": "确定将规则链'{{ruleChainName}}'自动分配给新创建的边缘吗?", - "set-auto-assign-to-edge-text": "确认后,将自动分配规则链给新创建的边缘。", - "unset-auto-assign-to-edge": "不将规则链分配给边缘", - "unset-auto-assign-to-edge-title": "确定不再将规则链'{{ruleChainName}}'自动分配给新创建的边缘吗?", - "unset-auto-assign-to-edge-text": "确认后,将不再自动分配规则链给新创建的边缘。", - "unassign-rulechain-title": "确定要取消分配规则链'{{ruleChainName}}' 吗?", - "unassign-rulechains": "取消分配规则链" - }, - "rulenode": { - "rule-node-events": "规则节点事件", - "details": "详情", - "events": "事件", - "search": "查找节点", - "open-node-library": "打开节点库", - "close-node-library": "关闭节点库", - "add": "添加规则节点", - "name": "名称", - "name-required": "名称必填。", - "name-max-length": "名称长度应该小于256个字符。", - "type": "类型", - "rule-node-description": "规则节点描述", - "delete": "删除规则节点", - "select-all-objects": "选择所有节点和连接", - "deselect-all-objects": "取消选择所有节点和连接", - "delete-selected-objects": "删除选定的节点和连接", - "delete-selected": "删除选定", - "create-nested-rulechain": "创建嵌套规则链", - "select-all": "选择全部", - "copy-selected": "复制", - "deselect-all": "取消选择", - "rulenode-details": "规则节点详情", - "debug-mode": "调试模式", - "singleton": "单例", - "configuration": "配置", - "link": "链接", - "link-details": "规则节点链接详情", - "add-link": "添加链接", - "link-label": "链接标签", - "link-label-required": "链接标签必填", - "custom-link-label": "自定义链接标签", - "custom-link-label-required": "自定义链接标签必填", - "link-labels": "链接标签", - "link-labels-required": "链接标签必填。", - "no-link-labels-found": "未找到链接标签", - "no-link-label-matching": "未找到匹配'{{label}}'的链接标签。", - "create-new-link-label": "创建链接标签", - "type-filter": "筛选器", - "type-filter-details": "使用配置条件筛选传入消息", - "type-enrichment": "属性集", - "type-enrichment-details": "向消息元数据中添加附加信息", - "type-transformation": "变换", - "type-transformation-details": "更改消息Payload和元数据", - "type-action": "动作", - "type-action-details": "执行特别动作", - "type-external": "外部", - "type-external-details": "与外部系统交互", - "type-rule-chain": "规则链", - "type-rule-chain-details": "将传入消息转发到指定的规则链", - "type-flow": "流", - "type-flow-details": "流详情", - "type-input": "输入", - "type-input-details": "规则链的逻辑输入,将传入消息转发到下一个相关规则节点", - "type-unknown": "未知", - "type-unknown-details": "未解析的规则节点", - "directive-is-not-loaded": "定义的配置指令'{{directiveName}}'不可用。", - "ui-resources-load-error": "加载配置UI资源失败。", - "invalid-target-rulechain": "无法解析目标规则链!", - "test-script-function": "测试脚本功能", - "script-lang-java-script": "JavaScript", - "script-lang-tbel": "TBEL", - "message": "消息", - "message-type": "消息类型", - "select-message-type": "选择消息类型", - "message-type-required": "消息类型必填", - "metadata": "元数据", - "metadata-required": "元数据项不能为空。", - "output": "输出", - "test": "测试", - "help": "帮助", - "reset-debug-settings": "重置所有节点的调试设置", - "test-with-this-message": "使用此消息进行{{test}}测试", - "queue-hint": "选择一个队列将消息转发到另一个队列,默认情况下使用'Main'队列。", - "queue-singleton-hint": "选择一个队列以在多实体中转发消息,默认情况下使用'Main'队列。" - }, - "timezone": { - "timezone": "时区", - "select-timezone": "选择时区", - "no-timezones-matching": "未找到与'{{timezone}}'匹配的时区。", - "timezone-required": "时区必填。", - "browser-time": "浏览器时间" - }, - "queue": { - "queue-name": "队列", - "no-queues-found": "未找到队列", - "no-queues-matching": "未找到匹配'{{queue}}'的队列", - "select-name": "选择队列名称", - "name": "名称", - "name-required": "队列名称必填。", - "name-unique": "队列名称必须唯一。", - "name-pattern": "队列名称不能包含ASCII字母数字以外的字符,'.','_'和'-'等。", - "queue-required": "队列必填。", - "topic-required": "队列主题必填。", - "poll-interval-required": "轮询间隔必填。", - "poll-interval-min-value": "轮询间隔不能小于1", - "partitions-required": "分区必填。", - "partitions-min-value": "分区不能小于1", - "pack-processing-timeout-required": "处理超时时间必填。", - "pack-processing-timeout-min-value": "处理超时时间不能小于1", - "batch-size-required": "批量处理大小必填。", - "batch-size-min-value": "批量处理大小不能小于1", - "retries-required": "重试次数必填。", - "retries-min-value": "重试次数不能为负", - "failure-percentage-required": "失败百分比必填。", - "failure-percentage-min-value": "失败百分比值不能小于0", - "failure-percentage-max-value": "失败百分比值不能大于100", - "pause-between-retries-required": "重试间隔必填。", - "pause-between-retries-min-value": "重试间隔不能小于1", - "max-pause-between-retries-required": "最大重试间隔必填。", - "max-pause-between-retries-min-value": "最大重试间隔不能小于1", - "submit-strategy-type-required": "提交策略类型必填。", - "processing-strategy-type-required": "处理策略类型必填。", - "queues": "队列", - "selected-queues": "已选择{ count, plural, =1 {1 个队列} other {# 个队列} }", - "delete-queue-title": "确定要删除'{{queueName}}'队列吗?", - "delete-queues-title": "确定要删除{ count, plural, =1 {1 个队列} other {# 个队列} }吗?", - "delete-queue-text": "请注意:确认后队列和所有相关数据将不可恢复。", - "delete-queues-text": "确认后所有选定队列都将被删除并无法访问。", - "search": "搜索队列", - "add": "添加队列", - "details": "队列详情", - "topic": "主题", - "submit-settings": "提交设置", - "submit-strategy": "策略类型*", - "grouping-parameter": "分组参数", - "processing-settings": "重试处理设置", - "processing-strategy": "处理类型*", - "retries-settings": "重试设置", - "polling-settings": "轮询设置", - "batch-processing": "批量处理", - "poll-interval": "轮询间隔", - "partitions": "分区", - "immediate-processing": "即时处理", - "consumer-per-partition": "每个分区消费者单独轮询消息", - "consumer-per-partition-hint": "每个分区启用单独的消费者", - "duplicate-msg-to-all-partitions": "重复给所有分区的消息", - "processing-timeout": "处理超时(毫秒)", - "batch-size": "批量处理大小", - "retries": "重试次数 (0 – 无限制)", - "failure-percentage": "跳过重试的失败消息百分比", - "pause-between-retries": "重试间隔(秒)", - "max-pause-between-retries": "最大重试间隔(秒)", - "delete": "删除队列", - "copyId": "复制队列ID", - "idCopiedMessage": "队列ID已复制到剪贴板", - "description": "说明", - "description-hint": "此文本将显示在队列说明中,而不是所选策略中", - "alt-description": "提交策略:{{submitStrategy}},处理策略:{{processingStrategy}}", - "custom-properties": "自定义属性", - "custom-properties-hint": "自定义队列(主题)创建属性例如'retention.ms:604800000;retention.bytes:1048576000'", - "strategies": { - "sequential-by-originator-label": "按发起者顺序处理", - "sequential-by-originator-hint": "在确认设备A的前一条消息之前,不会提交设备A的新消息", - "sequential-by-tenant-label": "按租户顺序处理", - "sequential-by-tenant-hint": "在确认租户A的前一条消息之前,不会提交租户A的新消息", - "sequential-label": "顺序处理", - "sequential-hint": "在确认前一条消息之前,不会提交新消息", - "burst-label": "突发处理", - "burst-hint": "所有消息都按到达的顺序提交到规则链", - "batch-label": "批量处理", - "batch-hint": "在确认前一批消息之前,不会提交新批", - "skip-all-failures-label": "跳过所有失败", - "skip-all-failures-hint": "忽略所有失败", - "skip-all-failures-and-timeouts-label": "跳过所有失败和超时", - "skip-all-failures-and-timeouts-hint": "忽略所有失败和超时", - "retry-all-label": "全部重试", - "retry-all-hint": "重试处理包中的所有消息", - "retry-failed-label": "失败重试", - "retry-failed-hint": "重试处理包中的所有失败消息", - "retry-timeout-label": "超时重试", - "retry-timeout-hint": "重试处理包中的所有超时消息", - "retry-failed-and-timeout-label": "失败与超时重试", - "retry-failed-and-timeout-hint": "重试处理包中所有失败和超时的消息" - } + "power-button": { + "behavior": "行为", + "power-on": "电源“开”", + "power-on-hint": "执行组件开启操作。", + "power-off": "电源“关”", + "power-off-hint": "执行组件关闭操作。", + "on-label": "开", + "off-label": "关", + "layout": "布局", + "layout-default": "默认", + "layout-simplified": "简化", + "layout-outlined": "轮廓", + "layout-default-volume": "默认.音量", + "layout-simplified-volume": "简化.音量", + "layout-outlined-volume": "轮廓.音量", + "layout-default-icon": "默认.图标", + "layout-simplified-icon": "简化.图标", + "layout-outlined-icon": "轮廓.图标", + "main": "主色", + "background": "背景", + "button-icon-on": "按钮图标“开”", + "button-icon-off": "按钮图标“关”", + "power-on-colors": "电源“开”颜色", + "power-off-colors": "电源“关”颜色", + "disabled-colors": "禁用颜色", + "button": "按钮" }, - "queue-statistics": { - "queue-statistics": "队列统计", - "no-queue-statistics-matching": "未找到与'{{entity}}'匹配的队列统计信息。", - "queue-statistics-required": "队列统计必填。", - "list-of-queue-statistics": "{ count, plural, =1 {个队列统计} other {对列统计#列表} }", - "selected-queue-statistics": "选中{ count, plural, =1 {1个队列统计} other {#对列统计} }", - "no-queue-statistics-text": "找不到队列统计数据", - "queue-statistics-starts-with": "队列统计的名称以始于'{{prefix}}'" - }, - "server-error": { - "general": "一般服务器错误", - "authentication": "授权错误", - "jwt-token-expired": "JWT令牌已过期", - "tenant-trial-expired": "租户过期", - "credentials-expired": "凭据过期", - "permission-denied": "没有权限", - "invalid-arguments": "无效参数", - "bad-request-params": "请求无效", - "item-not-found": "找不到项目", - "too-many-requests": "请求过于频繁", - "too-many-updates": "更新过于频繁" - }, - "tenant": { - "tenant": "租户", - "tenants": "租户", - "management": "租户管理", - "add": "添加租户", - "admins": "管理员", - "manage-tenant-admins": "管理租户管理员", - "delete": "删除租户", - "add-tenant-text": "添加租户", - "no-tenants-text": "未找到租户", - "tenant-details": "租客详情", - "title-max-length": "标题长度应该小于256个字符。", - "delete-tenant-title": "确定要删除租户'{{tenantTitle}}'吗?", - "delete-tenant-text": "请注意:确认后租户和所有相关数据将不可恢复。", - "delete-tenants-title": "确定要删除{count,plural,=1 {1 个租户} other {# 个租户} }吗?", - "delete-tenants-action-title": "删除{ count, plural, =1 {1 个租户} other {# 个租户} }", - "delete-tenants-text": "请注意:确认后所有选定的租户将被删除,所有相关数据将不可恢复。", - "title": "标题", - "title-required": "标题必填。", - "description": "说明", - "details": "详情", - "events": "事件", - "copyId": "复制租户ID", - "idCopiedMessage": "租户ID已经复制到粘贴板", - "select-tenant": "选择租户", - "no-tenants-matching": "未找到匹配'{{entity}}'的租户", - "tenant-required": "租户必填", - "search": "查找租户", - "selected-tenants": "已选择{ count, plural, =1 {1 个租户} other {# 个租户} }", - "isolated-tb-rule-engine": "使用独立的规则引擎服务", - "isolated-tb-rule-engine-details": "每个独立租户需要单独的规则引擎微服务" - }, - "tenant-profile": { - "tenant-profile": "租户配置", - "tenant-profiles": "租户配置", - "add": "添加租户配置", - "add-profile": "添加配置", - "debug": "调试", - "edit": "编辑租户配置", - "tenant-profile-details": "租户配置详细信息", - "no-tenant-profiles-text": "未找到租户配置", - "name-max-length": "名称长度必须小于256个字符", - "search": "查找租户配置", - "selected-tenant-profiles": "已选择{ count, plural, =1 {1 个租户配置} other {# 个租户配置} }", - "no-tenant-profiles-matching": "未找到与'{{entity}}'匹配的租户配置。", - "tenant-profile-required": "租户配置必填", - "idCopiedMessage": "租户配置ID已复制到剪贴板", - "set-default": "设置该租户配置为默认", - "delete": "删除租户配置", - "copyId": "复制租户配置ID", - "name": "名称", - "name-required": "名称必填。", - "data": "配置数据", - "profile-configuration": "配置设置", - "description": "说明", - "default": "默认", - "delete-tenant-profile-title": "确定要删除租户配置'{{tenantProfileName}}'吗?", - "delete-tenant-profile-text": "请注意:确认后,租户配置和所有相关数据将不可恢复。", - "delete-tenant-profiles-title": "确定要删除{ count, plural, =1 {1 个租户配置} other {# 个租户配置} }吗?", - "delete-tenant-profiles-text": "请注意:确认后,所有选定的租户配置将被删除,所有相关数据将不可恢复。", - "set-default-tenant-profile-title": "确定要将租户配置'{{tenantProfileName}}'设为默认值吗?", - "set-default-tenant-profile-text": "确认后此租户配置将被标记为默认配置并将用于未指定配置的新租户。", - "no-tenant-profiles-found": "未找到租户配置。", - "create-new-tenant-profile": "创建租户配置", - "create-tenant-profile": "创建租户配置", - "import": "导入租户配置", - "export": "导出租户配置", - "export-failed-error": "无法导出租户配置:{{error}}", - "tenant-profile-file": "租户配置", - "invalid-tenant-profile-file-error": "无法导入租户配置:无效的租户配置数据结构。", - "advanced-settings": "高级设置", - "entities": "实体", - "rule-engine": "规则引擎", - "time-to-live": "TTL", - "alarms-and-notifications": "告警与通知", - "ota-files-in-bytes": "OTA文件(字节)", - "ws-title": "WS", - "unlimited": "(0 - 无限制)", - "maximum-devices": "最大设备数", - "maximum-devices-required": "最大设备数必填。", - "maximum-devices-range": "最大设备数不能为负数", - "maximum-assets": "最大资产数", - "maximum-assets-required": "最大资产数必填。", - "maximum-assets-range": "最大资产数不能为负数", - "maximum-customers": "最大客户数", - "maximum-customers-required": "最大客户数必填。", - "maximum-customers-range": "最大客户数不能为负数", - "maximum-users": "最大用户数", - "maximum-users-required": "最大用户数必填。", - "maximum-users-range": "最大用户数不能为负数", - "maximum-dashboards": "最大仪表板数", - "maximum-dashboards-required": "最大仪表板数必填。", - "maximum-dashboards-range": "最大仪表板数不能为负数", - "maximum-edges": "最大边数", - "maximum-edges-required": "需要最大边数。", - "maximum-edges-range": "边的最大数量不能为负数", - "maximum-rule-chains": "最大规则链数", - "maximum-rule-chains-required": "最大规则链数必填。", - "maximum-rule-chains-range": "最大规则链数不能为负数", - "maximum-resources-sum-data-size": "资源文件总大小", - "maximum-resources-sum-data-size-required": "资源文件总大小必填。", - "maximum-resources-sum-data-size-range": "资源文件总大小不能为负数", - "maximum-resource-size": "最大资源文件大小(字节)", - "maximum-resource-size-required": "最大资源文件大小是必需的", - "maximum-resource-size-range": "最大资源文件大小不能为负数", - "maximum-ota-packages-sum-data-size": "OTA包文件总大小", - "maximum-ota-package-sum-data-size-required": "OTA包文件总大小必填。", - "maximum-ota-package-sum-data-size-range": "OTA包文件总大小不能为负数", - "maximum-debug-duration-min": "最大调试时长(分钟)", - "maximum-debug-duration-min-range": "最大调试时长不能为负", - "rest-requests-for-tenant": "租户REST请求", - "transport-tenant-telemetry-msg-rate-limit": "租户遥测消息", - "transport-tenant-telemetry-data-points-rate-limit": "租户遥测数据点", - "transport-device-msg-rate-limit": "设备消息", - "transport-device-telemetry-msg-rate-limit": "设备遥测数据点", - "transport-device-telemetry-data-points-rate-limit": "设备遥测消息", - "transport-gateway-msg-rate-limit": "传输网关消息", - "transport-gateway-telemetry-msg-rate-limit": "传输网关遥测消息", - "transport-gateway-telemetry-data-points-rate-limit": "传输网关遥测数据点", - "transport-gateway-device-msg-rate-limit": "传输网关设备消息", - "transport-gateway-device-telemetry-msg-rate-limit": "传输网关设备遥测消息", - "transport-gateway-device-telemetry-data-points-rate-limit": "传输网关设备遥测数据点", - "tenant-entity-export-rate-limit": "实体版本创建", - "tenant-entity-import-rate-limit": "实体版本加载", - "tenant-notification-request-rate-limit": "通知请求", - "tenant-notification-requests-per-rule-rate-limit": "每个通知规则的通知请求", - "max-transport-messages": "最大传输消息数", - "max-transport-messages-required": "最大传输消息数必填。", - "max-transport-messages-range": "最大传输消息数不能为负数", - "max-transport-data-points": "最大传输数据点数", - "max-transport-data-points-required": "最大传输数据点数必填。", - "max-transport-data-points-range": "最大传输数据点数不能为负", - "max-r-e-executions": "最大规则引擎执行数", - "max-r-e-executions-required": "最大规则引擎执行数必填。", - "max-r-e-executions-range": "最大规则引擎执行数不能为负", - "max-j-s-executions": "最大JavaScript执行数", - "max-j-s-executions-required": "最大JavaScript执行数必填。", - "max-j-s-executions-range": "最大JavaScript执行数不能为负数", - "max-tbel-executions": "最大TBEL执行数", - "max-tbel-executions-required": "需要指定最大TBEL执行数。", - "max-tbel-executions-range": "最大TBEL执行数不能为负数。", - "max-d-p-storage-days": "最大存储点天", - "max-d-p-storage-days-required": "最大存储点天必填。", - "max-d-p-storage-days-range": "最大存储点天不能为负数", - "default-storage-ttl-days": "默认存储TTL天数", - "default-storage-ttl-days-required": "默认存储TTL天数必填。.", - "default-storage-ttl-days-range": "默认存储TTL天数不能为负数", - "alarms-ttl-days": "告警TTL天数", - "alarms-ttl-days-required": "告警TTL天数必填。", - "alarms-ttl-days-days-range": "告警TTL天数不能为负数", - "rpc-ttl-days": "RPC TTL天数", - "rpc-ttl-days-required": "RPC TTL天数必填。", - "rpc-ttl-days-days-range": "RPC TTL天数不能为负数", - "queue-stats-ttl-days": "队列统计信息TTL天数", - "queue-stats-ttl-days-required": "需要指定队列统计信息TTL天数", - "queue-stats-ttl-days-range": "队列统计信息TTL天数不能为负数", - "rule-engine-exceptions-ttl-days": "规则引擎异常TTL天数", - "rule-engine-exceptions-ttl-days-required": "需要指定规则引擎异常TTL天数", - "rule-engine-exceptions-ttl-days-range": "规则引擎异常TTL天数不能为负数", - "max-rule-node-executions-per-message": "每条消息的最大规则节点执行数", - "max-rule-node-executions-per-message-required": "每个消息的最大规则节点执行数必填。", - "max-rule-node-executions-per-message-range": "每条消息的最大规则节点执行数不能为负", - "max-emails": "最大电子邮件发送数", - "max-emails-required": "最大电子邮件发送数必填。", - "max-emails-range": "最大电子邮件发送数不能为负", - "sms-enabled": "启用短信", - "max-sms": "最大短信发送数", - "max-sms-required": "最大短信发送数必填。", - "max-sms-range": "最大短信发送数不能为负", - "max-created-alarms": "最大创建告警数", - "max-created-alarms-required": "最大创建告警数必填。", - "max-created-alarms-range": "最大创建告警数不能为负数", - "no-queue": "未配置队列", - "add-queue": "添加队列", - "queues-with-count": "队列 ({{count}})", - "tenant-rest-limits": "租户REST请求", - "customer-rest-limits": "客户REST请求", - "incorrect-pattern-for-rate-limits": "格式为以冒号分割容量与周期(秒)并以逗号分割配置对例如 100:1,2000:60", - "too-small-value-zero": "数值必须大于0", - "too-small-value-one": "数值必须大于1", - "queue-size-is-limited-by-system-configuration": "队列的大小也受系统配置的限制。", - "cassandra-tenant-limits-configuration": "租户Cassandra查询", - "ws-limit-max-sessions-per-tenant": "租户最大会话数", - "ws-limit-max-sessions-per-customer": "客户最大会话数", - "ws-limit-max-sessions-per-regular-user": "普通用户最大会话数", - "ws-limit-max-sessions-per-public-user": "公共用户最大会话数", - "ws-limit-queue-per-session": "会话最大消息队列大小", - "ws-limit-max-subscriptions-per-tenant": "租户最大订阅数", - "ws-limit-max-subscriptions-per-customer": "客户最大订阅数", - "ws-limit-max-subscriptions-per-regular-user": "普通用户最大订阅数", - "ws-limit-max-subscriptions-per-public-user": "公共用户最大订阅数", - "ws-limit-updates-per-session": "会话WS更新", - "rate-limits": { - "add-limit": "添加限制", - "advanced-settings": "高级设置", - "edit-limit": "编辑限制", - "edit-transport-tenant-msg-title": "编辑传输租户消息速率限制", - "edit-transport-tenant-telemetry-msg-title": "编辑传输租户遥测消息速率限制", - "edit-transport-tenant-telemetry-data-points-title": "编辑传输租户遥测数据点速率限制", - "edit-transport-device-msg-title": "编辑传输设备消息速率限制", - "edit-transport-device-telemetry-msg-title": "编辑传输设备遥测消息速率限制", - "edit-transport-device-telemetry-data-points-title": "编辑传输设备遥测数据点速率限制", - "edit-transport-gateway-msg-title": "编辑传输网关消息速率限制", - "edit-transport-gateway-telemetry-msg-title": "编辑传输网关遥测消息速率限制", - "edit-transport-gateway-telemetry-data-points-title": "编辑传输网关遥测数据点率限制", - "edit-transport-gateway-device-msg-title": "编辑传输网关设备消息速率限制", - "edit-transport-gateway-device-telemetry-msg-title": "编辑传输网关设备遥测消息速率限制", - "edit-transport-gateway-device-telemetry-data-points-title": "编辑传输网关设备遥测数据点速率限制", - "edit-tenant-rest-limits-title": "编辑租户费率限制的休息请求", - "edit-customer-rest-limits-title": "编辑客户REST请求速率限制", - "edit-ws-limit-updates-per-session-title": "编辑会话WS更新速率限制", - "edit-cassandra-tenant-limits-configuration-title": "编辑租户Cassandra查询速率限制", - "edit-tenant-entity-export-rate-limit-title": "编辑实体版本创建速率限制", - "edit-tenant-entity-import-rate-limit-title": "编辑实体版本加载速率限制", - "edit-tenant-notification-request-rate-limit-title": "编辑通知请求的速率限制", - "edit-tenant-notification-requests-per-rule-rate-limit-title": "编辑每个通知规则的通知请求速率限制", - "edit-edge-events-rate-limit": "编辑Edge事件速率限制", - "edit-edge-events-per-edge-rate-limit": "编辑每个Edge事件速率限制", - "edge-events-rate-limit": "Edge事件", - "edge-events-per-edge-rate-limit": "每个Edge事件", - "edit-edge-uplink-messages-rate-limit": "编辑Edge上行链路消息速率限制", - "edit-edge-uplink-messages-per-edge-rate-limit": "编辑Edge上行链路消息每个Edge速率限制", - "edge-uplink-messages-rate-limit": "Edge上行链路消息", - "edge-uplink-messages-per-edge-rate-limit": "每个Edge上行链路消息", - "messages-per": "每条消息", - "not-set": "未配置", - "number-of-messages": "消息数量", - "number-of-messages-required": "消息数量必填。", - "number-of-messages-min": "最小值为1。", - "preview": "预览", - "per-seconds": "每秒", - "per-seconds-required": "时间必填。", - "per-seconds-min": "最小值为1。", - "rate-limits": "速率限制", - "remove-limit": "删除限制", - "transport-tenant-msg": "传输租户消息", - "transport-tenant-telemetry-msg": "传输租户遥测消息", - "transport-tenant-telemetry-data-points": "传输租户遥测数据点", - "transport-device-msg": "传输设备消息", - "transport-device-telemetry-msg": "传输设备遥测消息", - "transport-device-telemetry-data-points": "传输设备遥测数据点", - "transport-gateway-msg": "传输网关消息", - "transport-gateway-telemetry-msg": "传输网关遥测消息", - "transport-gateway-telemetry-data-points": "传输网关遥测数据点", - "transport-gateway-device-msg": "传输网关设备消息", - "transport-gateway-device-telemetry-msg": "传输网关设备遥测消息", - "transport-gateway-device-telemetry-data-points": "传输网关设备遥测数据点", - "sec": "秒" - } + "toggle-button": { + "behavior": "行为", + "checked": "选中", + "unchecked": "未选中", + "check": "选中", + "check-hint": "执行选中组件的操作。", + "uncheck": "取消选中", + "uncheck-hint": "执行取消选中组件的操作。", + "auto-scale": "自动缩放", + "horizontal-fill": "水平填充", + "vertical-fill": "垂直填充", + "button-appearance": "按钮外观" }, - "timeinterval": { - "seconds-interval": "{ seconds, plural, =1 {1 秒} other {# 秒} }", - "minutes-interval": "{ minutes, plural, =1 {1 分} other {# 分} }", - "hours-interval": "{ hours, plural, =1 {1 小时} other {# 小时} }", - "days-interval": "{ days, plural, =1 {1 天} other {# 天} }", - "days": "天", - "hours": "小时", - "minutes": "分钟", - "seconds": "秒", - "advanced": "高级", - "custom": "自定义", - "predefined": { - "yesterday": "昨天", - "day-before-yesterday": "前天", - "this-day-last-week": "前一周的这一天", - "previous-week": "前一周(周日至周六)", - "previous-week-iso": "前一周(周一至周日)", - "previous-month": "前一个月", - "previous-quarter": "上季度", - "previous-half-year": "前半年", - "previous-year": "前一年", - "current-hour": "当前小时", - "current-day": "当前天", - "current-day-so-far": "当天到目前为止", - "current-week": "本周(周日至周六)", - "current-week-iso": "本周(周一至周日)", - "current-week-so-far": "本周到目前为止(周日至周六)", - "current-week-iso-so-far": "本周到目前为止(周一至周日)", - "current-month": "本月", - "current-month-so-far": "本月到目前为止", - "current-quarter": "当前季度", - "current-quarter-so-far": "当前季度到目前为止", - "current-half-year": "当前半年", - "current-half-year-so-far": "当前半年到目前为止", - "current-year": "本年", - "current-year-so-far": "本年到目前为止" - }, - "type": { - "week": "每周(星期日-星期六)", - "week-iso": "每周(星期一-星期日)", - "month": "月", - "quarter": "季度" - } + "segmented-button": { + "layout": "布局", + "layout-squared": "方形", + "layout-rounded": "圆角", + "card-border": "卡片边框", + "button-appearance": "按钮外观", + "first": "第一", + "second": "第二", + "color-styles": "颜色样式", + "selected": "已选择", + "unselected": "未选择" }, - "timeunit": { - "milliseconds": "毫秒", - "seconds": "秒", - "minutes": "分钟", - "hours": "小时", - "days": "天" - }, - "timewindow": { - "timewindow": "时间窗口", - "timewindow-settings": "设置时间窗口", - "years": "{ years, plural, =1 {1年 } other {#年 } }", - "years-short": "{{ years }}y", - "months": "{ months, plural, =1 {1月 } other {#月 } }", - "months-short": "{{ months }}M", - "weeks": "{ weeks, plural, =1 {1周 } other {#周 } }", - "weeks-short": "{{ weeks }}w", - "days": "{ days, plural, =1 {1天 } other {#天 } }", - "days-short": "{{ days }}d", - "hours": "{ hours, plural, =0 {-小时 } =1 {1小时 } other {#小时 } }", - "hr": "{{ hr }} 时", - "hr-short": "{{ hr }}h", - "minutes": "{ minutes, plural, =0 {-分 } =1 {1分 } other {#分 } }", - "min": "{{ min }} 分", - "min-short": "{{ min }}m", - "seconds": "{ seconds, plural, =0 {-秒 } =1 {1秒 } other {#秒 } }", - "sec": "{{ sec }} 秒", - "sec-short": "{{ sec }}s", - "short": { - "years": "{ years, plural, =1 {1 年} other {# 年} }", - "days": "{ days, plural, =1 {1 天 } other {# 天 } }", - "hours": "{ hours, plural, =1 {1 小时 } other {# 小时 } }", - "minutes": "{{minutes}}分 ", - "seconds": "{{seconds}}秒 " - }, - "realtime": "实时", - "history": "历史", - "last-prefix": "最后", - "period": "从{{ startTime }}到{{ endTime }}", - "edit": "编辑时间窗口", - "date-range": "日期范围", - "for-all-time": "所有时间", - "last": "最后", - "time-period": "时间段", - "hide": "隐藏", - "interval": "区间", - "just-now": "刚刚", - "just-now-lower": "刚刚", - "ago": "之前", - "style": "样式", - "icon": "图标", - "icon-position": "图标位置", - "icon-position-left": "左侧", - "icon-position-right": "右侧", - "font": "字体", - "color": "颜色", - "displayTypePrefix": "实时/历史", - "preview": "预览", - "relative": "相对", - "range": "范围", - "hide-timewindow-section": "隐藏用户的时间窗口", - "hide-last-interval": "隐藏用户的最后间隔", - "hide-relative-interval": "隐藏用户的相对间隔", - "hide-fixed-interval": "隐藏用户的固定间隔", - "hide-aggregation": "隐藏用户的聚合", - "hide-group-interval": "隐藏用户的分组间隔", - "hide-max-values": "隐藏用户的最大值", - "hide-timezone": "隐藏用户的时区", - "disable-custom-interval": "禁用自定义间隔选择", - "edit-aggregation-functions-list": "编辑聚合函数列表", - "edit-aggregation-functions-list-hint": "可以指定可用选项的列表。", - "allowed-aggregation-functions": "允许的聚合函数", - "edit-intervals-list": "编辑时间间隔列表", - "allowed-agg-intervals": "分组时间间隔", - "default-agg-interval": "默认分组时间间隔", - "edit-intervals-list-hint": "可以指定可用的时间间隔选项列表。", - "edit-grouping-intervals-list-hint": "可以配置分组时间间隔列表和默认分组时间间隔。", - "all": "全部" - }, - "tooltip": { - "trigger": "触发", - "trigger-point": "点", - "trigger-axis": "轴", + "button": { + "layout": "布局", + "outlined": "轮廓", + "filled": "填充", + "underlined": "下划线", + "basic": "基础", + "auto-scale": "自动缩放", + "label": "标签", + "icon": "图标", + "border-radius": "边框圆角", + "color-palette": "调色板", + "main": "主色", + "background": "背景", + "border": "边框", + "custom-styles": "自定义样式", + "clear-style": "清除样式", + "shadow": "阴影", + "enabled": "启用", + "disabled": "禁用", + "preview": "预览", + "copy-style-from": "从...复制样式" + }, + "value-stepper": { + "behavior": "行为", + "simplified": "简化", + "filled": "填充", + "outlined": "轮廓", + "volume": "音量", + "initial-state": "初始状态", + "initial-state-hint": "获取初始值的操作。", + "disabled-state": "禁用状态", + "disabled-state-hint": "配置组件被禁用的条件。", + "right-button-click": "右按钮点击", + "right-button-click-hint": "按下右按钮时的操作。", + "left-button-click": "左按钮点击", + "left-button-click-hint": "按下左按钮时的操作。", + "auto-scale": "自动缩放", + "value-range": "范围", + "min-range": "最小值", + "max-range": "最大值", + "value-increment-decrement-step": "值递增/递减步长", + "value": "值", + "value-box-background": "值框背景", + "border": "边框", + "button-appearance": "按钮外观", + "left": "左", + "right": "右", + "left-button": "左按钮", + "right-button": "右按钮", + "icon": "图标", + "color-palette": "调色板", + "main": "主色", + "background": "背景", + "button-icon-on": "按钮图标“开”", + "button-on-colors": "电源“开”颜色", + "disabled-colors": "禁用颜色" + }, + "button-state": { + "activated-state": "激活状态", + "activated-state-hint": "配置按钮处于激活状态的条件。", + "disabled-state": "禁用状态", + "disabled-state-hint": "配置按钮被禁用的条件。", + "selected-state": "选择按钮", + "selected-state-hint": "配置按钮被选中的条件。", + "enabled": "启用", + "hovered": "悬停", + "pressed": "按下", + "activated": "已激活", + "disabled": "已禁用", + "initial": "第一按钮", + "first": "第一", + "second": "第二" + }, + "background": { + "background": "背景", + "background-settings": "背景设置", + "background-type-image": "图片", + "background-type-color": "颜色", + "image-url": "图片 URL", + "overlay": "叠加层", + "enable-overlay": "启用叠加层", + "blur": "模糊", + "preview": "预览" + }, + "bar-chart": { + "bar-appearance": "柱状图外观", + "label-on-bar": "柱上标签", + "value-on-bar": "柱上数值", + "bar-chart-style": "柱状图样式", + "bar-axis": "柱状图轴" + }, + "polar-area-chart": { + "polar-axis": "极坐标轴", + "start-angle": "起始角度", + "polar-area-chart-style": "极坐标面积图样式" + }, + "battery-level": { + "layout": "布局", + "layout-vertical-solid": "垂直.实心", + "layout-horizontal-solid": "水平.实心", + "layout-vertical-divided": "垂直.分段", + "layout-horizontal-divided": "水平.分段", + "icon": "图标", + "value": "值", + "auto-scale": "自动缩放", + "battery-level-color": "电池电量颜色", + "battery-shape-color": "电池外形颜色", + "battery-level-card-style": "电池电量卡片样式", + "sections-count": "分段数量" + }, + "signal-strength": { + "value": "值", + "last-update": "最后更新", + "no-signal": "无信号", + "layout": "布局", + "layout-wifi": "Wi-Fi", + "layout-cellular-bar": "蜂窝信号条", + "icon": "图标", + "date": "日期", + "active-bars-color": "活跃信号条颜色", + "inactive-bars-color": "非活跃信号条颜色", + "signal-strength-card-style": "信号强度卡片样式", + "no-signal-rssi-value": "“无信号”RSSI 值" + }, + "status-widget": { + "behavior": "行为", + "layout": "布局", + "layout-default": "默认", + "layout-center": "居中", + "layout-icon": "图标", + "on": "开", + "off": "关", + "label": "标签", + "status": "状态", + "icon": "图标", + "color-palette": "调色板", + "disabled-color-palette": "禁用调色板", + "primary": "主要", + "primary-color-hint": "图标和标签的颜色", + "secondary": "次要", + "secondary-color-hint": "状态的颜色", + "background": "背景" + }, + "chart": { + "common-settings": "通用设置", + "enable-stacking-mode": "启用堆叠模式", + "selection": "时间范围选择", + "enable-selection-mode": "启用选择模式", + "line-shadow-size": "线条阴影大小", + "display-smooth-lines": "显示平滑(曲线)线条", + "default-bar-width": "非聚合数据的默认柱宽(毫秒)", + "bar-alignment": "柱对齐", + "bar-alignment-left": "左", + "bar-alignment-right": "右", + "bar-alignment-center": "居中", + "default-font": "默认字体", + "default-font-size": "默认字号", + "default-font-color": "默认字体颜色", + "thresholds-line-width": "所有阈值的默认线宽", + "tooltip-settings": "提示框设置", + "tooltip": "提示框", + "show-tooltip": "显示提示框", + "hover-individual-points": "悬停显示单个数据点", + "show-cumulative-values": "在堆叠模式下显示累计值", + "hide-zero-false-values": "在提示框中隐藏零值/假值", + "tooltip-value-format-function": "提示框值格式化函数", + "grid-settings": "网格设置", + "show-vertical-lines": "显示垂直线", + "show-horizontal-lines": "显示水平线", + "grid-outline-border-width": "网格轮廓/边框宽度(px)", + "primary-color": "主色", + "background-color": "背景颜色", + "ticks-color": "刻度颜色", + "xaxis-settings": "X 轴设置", + "axis-title": "轴标题", + "xaxis-tick-labels-settings": "X 轴刻度标签设置", + "show-tick-labels": "显示轴刻度标签", + "yaxis-settings": "Y 轴设置", + "min-scale-value": "刻度最小值", + "max-scale-value": "刻度最大值", + "yaxis-tick-labels-settings": "Y 轴刻度标签设置", + "tick-step-size": "刻度步长", + "number-of-decimals": "显示的小数位数", + "ticks-formatter-function": "刻度格式化函数", + "comparison-settings": "对比设置", + "enable-comparison": "启用对比", + "time-for-comparison": "对比周期", + "time-for-comparison-previous-interval": "上一区间(默认)", + "time-for-comparison-days": "一天前", + "time-for-comparison-weeks": "一周前", + "time-for-comparison-months": "一个月前", + "time-for-comparison-years": "一年前", + "time-for-comparison-custom-interval": "自定义区间", + "custom-interval-value": "自定义区间值(毫秒)", + "comparison-x-axis-settings": "对比 X 轴设置", + "axis-position": "轴位置", + "axis-position-top": "顶部(默认)", + "axis-position-bottom": "底部", + "custom-legend-settings": "自定义图例设置", + "enable-custom-legend": "启用自定义图例(这将允许您在键标签中使用属性/时间序列值)", + "key-name": "键名称", + "key-name-required": "键名称为必填项", + "key-type": "键类型", + "key-type-attribute": "属性", + "key-type-timeseries": "时间序列", + "label-keys-list": "标签中使用的键列表", + "no-label-keys": "未配置键", + "add-label-key": "添加新键", + "line-width": "线宽", + "color": "颜色", + "data-is-hidden-by-default": "数据默认隐藏", + "disable-data-hiding": "禁用数据隐藏", + "remove-from-legend": "从图例中移除数据键", + "exclude-from-stacking": "从堆叠中排除(在“堆叠”模式下可用)", + "line-settings": "线条设置", + "show-line": "显示线条", + "fill-line": "填充线条", + "fill-line-opacity": "填充不透明度", + "points-settings": "数据点设置", + "show-points": "显示数据点", + "points-line-width": "数据点线宽", + "points-radius": "数据点半径", + "point-shape": "数据点形状", + "point-shape-circle": "圆形", + "point-shape-cross": "十字形", + "point-shape-diamond": "菱形", + "point-shape-square": "方形", + "point-shape-triangle": "三角形", + "point-shape-custom": "自定义函数", + "point-shape-draw-function": "数据点形状绘制函数", + "show-separate-axis": "显示独立轴", + "axis-position-left": "左", + "axis-position-right": "右", + "thresholds": "阈值", + "no-thresholds": "未配置阈值", + "add-threshold": "添加阈值", + "show-values-for-comparison": "显示历史对比值", + "comparison-values-label": "历史值标签", + "comparison-line-color": "对比线颜色", + "threshold-settings": "阈值设置", + "use-as-threshold": "使用键值作为阈值", + "threshold-line-width": "阈值线宽", + "threshold-color": "阈值颜色", + "common-pie-settings": "通用饼图设置", + "radius": "半径", + "inner-radius": "内半径", + "tilt": "倾斜", + "common-pie-settings-range-error": "值应在 0 到 1 之间", + "stroke-settings": "描边设置", + "width-pixels": "宽度(像素)", + "show-labels": "显示标签", + "animation-settings": "动画设置", + "animated-pie": "启用饼图动画(实验性)", + "border-settings": "边框设置", + "border-width": "边框宽度", + "border-color": "边框颜色", + "legend-settings": "图例设置", + "display-legend": "显示图例", + "labels-font-color": "标签字体颜色", + "series": "系列", + "add-series": "添加系列", + "series-settings": "系列设置", + "remove-series": "移除系列", + "no-series": "未配置系列", + "no-series-error": "至少应指定一个系列", + "chart-appearance": "图表外观", + "vertical-grid-lines": "垂直网格线", + "horizontal-grid-lines": "水平网格线", + "chart-background": "图表背景", + "grid-lines-color": "网格线颜色", + "border": "边框", + "axis": "轴", + "vertical-axis": "垂直轴", + "ticks": "刻度", + "horizontal-axis": "水平轴", + "shape-empty-circle": "空心圆", + "shape-circle": "圆形", + "shape-rect": "矩形", + "shape-round-rect": "圆角矩形", + "shape-triangle": "三角形", + "shape-diamond": "菱形", + "shape-pin": "图钉", + "shape-arrow": "箭头", + "shape-none": "无", + "line-type-solid": "实线", + "line-type-dashed": "虚线", + "line-type-dotted": "点线", + "label-position-top": "顶部", + "label-position-bottom": "底部", + "label-position-outside": "外部", + "label-position-inside": "内部", + "fill": "填充", + "fill-type-none": "无", + "fill-type-solid": "实心", + "fill-type-opacity": "不透明度", + "fill-type-gradient": "渐变", + "background": "背景", + "opacity": "不透明度", + "gradient-stops": "渐变节点", + "gradient-start": "起始", + "gradient-end": "结束", + "animation": { + "animation": "动画", + "animation-threshold": "动画阈值", + "animation-duration": "动画持续时间", + "animation-easing": "动画缓动", + "animation-delay": "动画延迟", + "update-animation-duration": "更新动画持续时间", + "update-animation-easing": "更新动画缓动", + "update-animation-delay": "更新动画延迟" + }, + "chart-axis": { + "limit": "限制", + "source": "来源", + "key-value": "键 / 值", + "value-required": "值为必填项。", + "entity-key-required": "实体键为必填项。", + "key-required": "键为必填项。", + "scale-limits": "刻度限制", + "scale-appearance": "刻度外观", + "scale": "刻度", + "scale-min": "最小", + "scale-max": "最大", + "scale-auto": "自动" + }, + "bar": { + "show-border": "显示边框", + "border-width": "边框宽度", + "border-radius": "边框圆角", + "bar-width": "柱宽", "label": "标签", - "value": "数值", - "date": "日期", - "show-date-time-interval": "显示间隔", - "show-date-time-interval-hint": "根据数据聚合显示时间间隔。", - "background-color": "背景颜色", - "background-blur": "背景模糊" - }, - "unit": { - "millimeter": "毫米", - "centimeter": "厘米", - "angstrom": "埃米", - "nanometer": "纳米", - "micrometer": "千分尺", - "meter": "米", - "kilometer": "公里", - "inch": "英寸", - "foot": "英尺", - "yard": "码", - "mile": "英里", - "nautical-mile": "海里", - "astronomical-unit": "天文单位", - "reciprocal-metre": "倒数米", - "meter-per-meter": "每米", - "steradian": "球面度", - "thou": "毫英寸", - "barleycorn": "1/3英寸", - "hand": "4英寸", - "chain": "66英尺", - "furlong": "660英尺", - "league": "3英里", - "fathom": "6英尺", - "cable": "平方毫米", - "link": "Link", - "rod": "杆", - "nanogram": "纳克", - "microgram": "微克", - "milligram": "毫克", - "gram": "克", - "kilogram": "千克", - "tonne": "吨", - "ounce": "盎司", - "pound": "磅", - "stone": "英石", - "hundredweight-count": "数百分点", - "short-tons": "短吨", - "dalton": "道尔顿", - "grain": "格令", - "drachm": "打兰", - "quarter": "一刻钟", - "slug": "斯勒格", - "carat": "克拉", - "cubic-millimeter": "立方毫米", - "cubic-centimeter": "立方厘米", - "cubic-meter": "立方米", - "cubic-kilometer": "立方千米", - "microliter": "微升", - "milliliter": "毫升", - "liter": "公升", - "hectoliter": "百升", - "cubic-inch": "立方英寸", - "cubic-foot": "立方英尺", - "cubic-yard": "立方英里", - "fluid-ounce": "液体盎司", - "pint": "品脱", - "quart": "夸脱", - "gallon": "加仑", - "oil-barrels": "油桶", - "cubic-meter-per-kilogram": "每公斤立方米", - "gill": "吉尔", - "hogshead": "大桶", - "teaspoon": "茶匙", - "tablespoon": "汤匙", - "cup": "杯", - "celsius": "摄氏度", - "kelvin": "开尔文", - "rankine": "兰金", - "fahrenheit": "华氏度", - "percent": "百分比", - "meter-per-second": "米每秒", - "kilometer-per-hour": "千米每小时", - "foot-per-second": "英尺每秒", - "mile-per-hour": "英里每小时", - "knot": "节", - "millimeters-per-minute": "毫米每分钟", - "kilometer-per-hour-squared": "千米每小时平方", - "foot-per-second-squared": "英尺每秒平方", - "pascal": "帕斯卡", - "kilopascal": "千帕", - "megapascal": "兆帕", - "gigapascal": "吉帕", - "millibar": "毫巴", - "bar": "巴", - "kilobar": "千巴", - "newton": "牛顿", - "newton-meter": "牛顿·米", - "foot-pounds": "英尺磅", - "inch-pounds": "英寸磅", - "newton-per-meter": "牛顿每米", - "atmospheres": "大气压", - "pounds-per-square-inch": "磅每平方英寸", - "torr": "托", - "inches-of-mercury": "英寸汞柱", - "pascal-per-square-meter": "帕斯卡每平方米", - "pound-per-square-inch": "磅每平方英寸", - "newton-per-square-meter": "牛顿每平方米", - "kilogram-force-per-square-meter": "千克力每平方米", - "pascal-per-square-centimeter": "帕斯卡每平方厘米", - "ton-force-per-square-inch": "吨力每平方英寸", - "kilonewton-per-square-meter": "千牛顿每平方米", - "newton-per-square-millimeter": "牛顿每平方毫米", - "microjoule": "微焦耳", - "millijoule": "毫焦耳", - "joule": "焦耳", - "kilojoule": "千焦耳", - "megajoule": "兆焦耳", - "gigajoule": "吉焦耳", - "watt-hour": "瓦时", - "kilowatt-hour": "千瓦时", - "electron-volts": "电子伏特", - "joules-per-coulomb": "焦耳每库仑", - "british-thermal-unit": "英热单位", - "foot-pound": "英尺磅", - "calorie": "卡路里", - "small-calorie": "小卡路里", - "kilocalorie": "千卡路里", - "joule-per-kelvin": "焦耳每开尔文", - "joule-per-kilogram-kelvin": "焦耳每千克开尔文", - "joule-per-kilogram": "焦耳每千克", - "watt-per-meter-kelvin": "瓦特每米开尔文", - "joule-per-cubic-meter": "焦耳每立方米", - "therm": "热单位", - "electric-dipole-moment": "电偶极矩", - "magnetic-dipole-moment": "磁偶极矩", - "debye": "德拜", - "coulomb-per-square-meter-per-volt": "库仑每平方米每伏特", - "milliwatt": "毫瓦", - "microwatt": "微瓦", - "watt": "瓦特", - "kilowatt": "千瓦", - "megawatt": "兆瓦", - "gigawatt": "吉瓦", - "metric-horsepower": "公制马力", - "milliwatt-per-square-centimeter": "毫瓦每平方厘米", - "watt-per-square-centimeter": "瓦特每平方厘米", - "kilowatt-per-square-centimeter": "千瓦每平方厘米", - "milliwatt-per-square-meter": "毫瓦每平方米", - "watt-per-square-meter": "瓦特每平方米", - "kilowatt-per-square-meter": "千瓦每平方米", - "watt-per-square-inch": "瓦特每平方英寸", - "kilowatt-per-square-inch": "千瓦每平方英寸", - "horsepower": "马力", - "btu-per-hour": "英热单位/小时", - "coulomb": "库仑", - "millicoulomb": "毫库仑", - "microcoulomb": "微库仑", - "picocoulomb": "皮库仑", - "coulomb-per-meter": "库仑每米", - "coulomb-per-cubic-meter": "库仑每立方米", - "coulomb-per-square-meter": "库仑每平方米", - "square-millimeter": "平方毫米", - "square-centimeter": "平方厘米", - "square-meter": "平方米", - "hectare": "公顷", - "square-kilometer": "平方千米", - "square-inch": "平方英寸", - "square-foot": "平方英尺", - "square-yard": "平方码", - "acre": "英亩", - "square-mile": "平方英里", - "are": "亚尔", - "barn": "巴恩", - "circular-inch": "圆英寸", - "milliampere-hour": "毫安时", - "milliampere-hour-tags": "电流, 电流流动, 电荷, 电流容量, 电流流, 电流流动, 毫安时, 毫安小时, mAh", - "ampere-hours": "安时", - "ampere-hours-tags": "电流, 电流流动, 电荷, 电流容量, 电流流, 电流流动, 安培, 安时, Ah", - "kiloampere-hours": "千安时", - "kiloampere-hours-tags": "电流, 电流流动, 电荷, 电流容量, 电流流, 电流流动, 千安时, 千安小时, kAh", - "nanoampere": "纳安培", - "nanoampere-tags": "电流, 安培, 纳安培, nA", - "picoampere": "皮安培", - "picoampere-tags": "电流, 安培, 皮安培, pA", - "microampere": "微安培", - "microampere-tags": "电流, 微安培, 微安培, μA", - "milliampere": "毫安培", - "milliampere-tags": "电流, 毫安培, 毫安培, mA", - "ampere": "安培", - "ampere-tags": "电流, 电流流动, 电流流, 电流流动, 安培, 安培, 电流强度, A", - "kiloamperes": "千安培", - "kiloamperes-tags": "电流, 电流流动, 千安培, kA", - "microampere-per-square-centimeter": "每平方厘米微安培", - "microampere-per-square-centimeter-tags": "电流密度, 每平方厘米微安培, µA/cm²", - "ampere-per-square-meter": "每平方米安培", - "ampere-per-square-meter-tags": "电流密度, 单位面积电流, 每平方米安培, A/m²", - "ampere-per-meter": "每米安培", - "ampere-per-meter-tags": "磁场强度, 磁场强度, 每米安培, A/m", - "oersted": "奥斯特", - "oersted-tags": "磁场, 奥斯特, Oe", - "bohr-magneton": "玻尔磁子", - "bohr-magneton-tags": "原子物理学, 磁矩, 玻尔磁子, μB", - "ampere-meter-squared": "安培·米平方", - "ampere-meter-squared-tags": "磁矩, 偶极矩, 安培·米平方, A·m²", - "ampere-meter": "安培·米", - "ampere-meter-tags": "磁场, 电流环, 安培·米, A·m", - "nanovolt": "纳伏特", - "picovolt": "皮伏特", - "millivolts": "毫伏特", - "microvolts": "微伏特", - "volt": "伏特", - "kilovolts": "千伏特", - "dbmV": "dBmV", - "dbm": "dBm", - "volt-meter": "伏特·米", - "kilovolt-meter": "千伏特·米", - "megavolt-meter": "兆伏特·米", - "microvolt-meter": "微伏特·米", - "millivolt-meter": "毫伏特·米", - "nanovolt-meter": "纳伏特·米", - "ohm": "欧姆", - "microohm": "微欧姆", - "milliohm": "毫欧姆", - "kilohm": "千欧姆", - "megohm": "兆欧姆", - "gigohm": "吉欧姆", - "hertz": "赫兹", - "kilohertz": "千赫兹", - "megahertz": "兆赫兹", - "gigahertz": "吉赫兹", - "rpm": "每分钟转速", - "candela-per-square-meter": "每平方米坎德拉", - "candela": "坎德拉", - "lumen": "流明", - "lux": "勒克斯", - "foot-candle": "英尺烛光", - "lumen-per-square-meter": "每平方米流明", - "lux-second": "勒克斯秒", - "lumen-second": "流明秒", - "lumens-per-watt": "每瓦流明", - "absorbance": "吸光度", - "mole": "摩尔", - "nanomole": "纳摩尔", - "micromole": "微摩尔", - "millimole": "毫摩尔", - "kilomole": "千摩尔", - "mole-per-cubic-meter": "每立方米摩尔", - "rssi": "接收信号强度指示", - "ppm": "百万分之一", - "ppb": "十亿分之一", - "micrograms-per-cubic-meter": "每立方米微克", - "aqi": "空气质量指数", - "gram-per-cubic-meter": "每立方米克", - "gram-per-kilogram": "比湿", - "millimeters-per-second": "每秒毫米", - "neper": "奈普尔", - "bel": "贝尔", - "decibel": "分贝", - "meters-per-second-squared": "每秒平方米", - "becquerel": "贝克勒尔", - "curie": "居里", - "gray": "戈瑞", - "sievert": "希沃特", - "roentgen": "伦琴", - "cps": "每秒计数", - "rad": "辐射剂量", - "rem": "辐射当量剂量", - "dps": "每秒衰变次数", - "rutherford": "卢瑟福", - "coulombs-per-kilogram": "每千克库仑", - "becquerels-per-cubic-meter": "每立方米贝可勒尔", - "curies-per-liter": "每升居里", - "becquerels-per-second": "每秒贝可勒尔", - "curies-per-second": "每秒居里", - "gy-per-second": "每秒戈瑞", - "watt-per-steradian": "每斯特拉迪安瓦特", - "watt-per-square-metre-steradian": "每平方米斯特拉迪安瓦特", - "ph-level": "pH值", - "turbidity": "浑浊度", - "mg-per-liter": "每升毫克", - "microsiemens-per-centimeter": "每厘米微西门子", - "millisiemens-per-meter": "每米毫西门子", - "siemens-per-meter": "每米西门子", - "kilogram-per-cubic-meter": "每立方米千克", - "gram-per-cubic-centimeter": "每立方厘米克", - "kilogram-per-square-meter": "每平方米千克", - "milligram-per-milliliter": "每毫升毫克", - "milligram-per-cubic-meter": "每立方米毫克", - "pound-per-cubic-foot": "每立方英尺磅", - "ounces-per-cubic-inch": "每立方英寸盎司", - "tons-per-cubic-yard": "每立方码吨", - "particle-density": "粒子密度", - "kilometers-per-liter": "每升公里", - "miles-per-gallon": "每加仑英里", - "liters-per-100-km": "每百公里升数", - "gallons-per-mile": "每英里加仑", - "liters-per-hour": "每小时升数", - "gallons-per-hour": "每小时加仑", - "beats-per-minute": "每分钟节拍数", - "millimeters-of-mercury": "毫米汞柱", - "milligrams-per-deciliter": "每分升毫克", - "g-force": "重力加速度", - "kilonewton": "千牛顿", - "kilogram-force": "千克力", - "pound-force": "磅力", - "kilopound-force": "千磅力", - "dyne": "达因", - "poundal": "磅顿", - "kip": "千磅力", - "gal": "加尔", - "gravity": "重力", - "hectopascal": "百帕斯卡", - "atmosphere": "大气压", - "millibars": "毫巴", - "inch-of-mercury": "一英寸汞柱", - "richter-scale": "里氏震级", - "second": "秒", - "minute": "分", - "hour": "小时", - "day": "天", - "week": "周", - "month": "月", - "year": "年", - "cubic-foot-per-minute": "每分钟立方英尺", - "cubic-meters-per-hour": "每小时立方米", - "cubic-meters-per-second": "每秒立方米", - "liter-per-second": "每秒升", - "liter-per-minute": "每分钟升", - "gallons-per-minute": "每分钟加仑", - "cubic-foot-per-second": "每秒立方英尺", - "milliliters-per-minute": "每分钟毫升", - "bit": "比特", - "byte": "字节", - "kilobyte": "千字节", - "megabyte": "兆字节", - "gigabyte": "吉字节", - "terabyte": "太字节", - "petabyte": "拍字节", - "exabyte": "艾字节", - "zettabyte": "泽字节", - "yottabyte": "尧字节", - "bit-per-second": "每秒比特", - "kilobit-per-second": "每秒千比特", - "megabit-per-second": "每秒兆比特", - "gigabit-per-second": "每秒吉比特", - "terabit-per-second": "每秒太比特", - "byte-per-second": "每秒字节", - "kilobyte-per-second": "每秒千字节", - "megabyte-per-second": "每秒兆字节", - "gigabyte-per-second": "每秒吉字节", - "degree": "度", - "radian": "弧度", - "gradian": "梯度", - "mil": "千分之一英寸", - "revolution": "转", - "siemens": "西门子", - "millisiemens": "毫西门子", - "microsiemens": "微西门子", - "kilosiemens": "千西门子", - "megasiemens": "兆西门子", - "gigasiemens": "吉西门子", - "farad": "法拉", - "millifarad": "毫法拉", - "microfarad": "微法拉", - "nanofarad": "纳法拉", - "picofarad": "皮法拉", - "kilofarad": "千法拉", - "megafarad": "兆法拉", - "gigafarad": "吉法拉", - "terfarad": "太法拉", - "farad-per-meter": "每米法拉", - "tesla": "特斯拉", - "gauss": "高斯", - "kilogauss": "千高斯", - "millitesla": "毫特斯拉", - "microtesla": "微特斯拉", - "nanotesla": "纳特斯拉", - "kilotesla": "千特斯拉", - "megatesla": "兆特斯拉", - "millitesla-square-meters": "毫特斯拉平方米", - "gamma": "伽马", - "lambda": "波长", - "square-meter-per-second": "每秒平方米", - "square-centimeter-per-second": "每秒平方厘米", - "stoke": "斯托克", - "centistokes": "厘斯托克", - "square-foot-per-second": "每秒平方英尺", - "square-inch-per-second": "每秒平方英寸", - "pascal-second": "帕斯卡秒", - "centipoise": "厘泊", - "poise": "泊", - "reynolds": "雷诺数", - "pound-per-foot-hour": "每英尺每小时磅", - "newton-second-per-square-meter": "每平方米牛顿秒", - "dyne-second-per-square-centimeter": "每平方厘米达因秒", - "kilogram-per-meter-second": "千克每米秒", - "tesla-square-meters": "特斯拉平方米", - "maxwell": "麦克斯韦", - "tesla-per-meter": "每米特斯拉", - "gauss-per-centimeter": "每厘米高斯", - "weber": "韦伯", - "microweber": "微韦伯", - "milliweber": "毫韦伯", - "gauss-square-centimeter": "高斯平方厘米", - "kilogauss-square-centimeter": "千高斯平方厘米", - "henry": "亨利", - "millihenry": "毫亨利", - "microhenry": "微亨利", - "nanohenry": "纳亨利", - "henry-per-meter": "每米亨利", - "tesla-meter-per-ampere": "每安培米特斯拉", - "gauss-per-oersted": "每欧斯特高斯", - "kilogram-per-mole": "每摩尔千克", - "gram-per-mole": "每摩尔克", - "milligram-per-mole": "每摩尔毫克", - "joule-per-mole": "每摩尔焦耳", - "joule-per-mole-kelvin": "每摩尔每开尔文焦耳", - "millivolts-per-meter": "每米毫伏", - "volts-per-meter": "每米伏特", - "kilovolts-per-meter": "每米千伏", - "radian-per-second": "每秒弧度", - "radian-per-second-squared": "每秒平方弧度", - "revolutions-per-minute-per-second": "角加速度", - "revolutions-per-minute-per-second-squared": "角加速度", - "deg-per-second": "度/秒", - "degrees-brix": "布里克度", - "katal": "卡塔尔", - "katal-per-cubic-metre": "每立方米卡塔尔" - }, - "user": { - "user": "用户", - "users": "用户", - "customer-users": "客户用户", - "tenant-admins": "租户管理员", - "sys-admin": "系统管理员", - "tenant-admin": "租户管理员", - "customer": "客户", - "anonymous": "匿名", - "add": "添加用户", - "delete": "删除用户", - "add-user-text": "添加用户", - "no-users-text": "未找到用户", - "user-details": "用户详细信息", - "delete-user-title": "确定要删除用户'{{userEmail}}' 吗?", - "delete-user-text": "请注意:确认后,用户和所有相关数据将不可恢复。", - "delete-users-title": "确定要删除{ count, plural, =1 {1 个用户} other {# 个用户} } 吗?", - "delete-users-action-title": "删除{ count, plural, =1 {1 个用户} other {# 个用户} }", - "delete-users-text": "请注意:确认后所有选定的用户将被删除,所有相关数据将不可恢复。", - "activation-email-sent-message": "激活电子邮件已成功发送!", - "resend-activation": "重新发送激活", - "email": "电子邮件", - "email-required": "电子邮件必填。", - "invalid-email-format": "无效的邮件格式。", - "first-name": "名字", - "last-name": "姓氏", - "description": "说明", - "default-dashboard": "默认面板", - "always-fullscreen": "始终全屏", - "select-user": "选择用户", - "no-users-matching": "未找到匹配'{{entity}}'的用户。", - "user-required": "用户必填", - "activation-method": "激活方式", - "display-activation-link": "显示激活链接", - "send-activation-mail": "发送激活邮件", - "activation-link": "用户激活链接", - "activation-link-text": "使用该链接激活激活用户:", - "copy-activation-link": "复制用户激活链接", - "activation-link-copied-message": "用户激活链接已经复制到粘贴板", - "details": "详情", - "login-as-tenant-admin": "以租户管理员身份登录", - "login-as-customer-user": "以客户用户身份登录", - "search": "查找用户", - "selected-users": "已选择{ count, plural, =1 {1 个用户} other {# 个用户} }", - "disable-account": "禁用用户帐户", - "enable-account": "启用用户帐户", - "enable-account-message": "已成功启用用户帐户!", - "disable-account-message": "已成功禁用用户帐户!", - "copyId": "复制用户ID", - "idCopiedMessage": "用户ID已复制到剪贴板", - "user-list": "用户列表", - "user-list-required": "用户列表必填。" - }, - "value": { - "type": "值类型", - "string": "字符串", - "string-value": "字符串值", - "string-value-required": "字符串值必填", - "integer": "整数", - "integer-value": "整数值", - "integer-value-required": "整数值必填", - "invalid-integer-value": "整数值无效", - "double": "双精度小数", - "double-value": "双精度小数值", - "double-value-required": "需要双精度值", - "boolean": "布尔值", - "boolean-value": "布尔值", - "false": "假", - "true": "真", - "long": "长整数", - "json": "JSON", - "json-value": "JSON值", - "json-value-invalid": "JSON值的格式无效", - "json-value-required": "JSON值必填。" - }, - "version-control": { - "version-control": "版本控制", - "management": "版本控制管理", - "search": "搜索版本", - "branch": "分支", - "default": "默认", - "select-branch": "选择分支", - "branch-required": "分支必填", - "create-entity-version": "创建实体版本", - "version-name": "版本名称", - "version-name-required": "版本名称必填", - "author": "作者", - "export-relations": "导出关联", - "export-attributes": "导出属性", - "export-credentials": "导出凭据", - "entity-versions": "实体版本", - "versions": "版本", - "created-time": "创建时间", - "version-id": "版本ID", - "no-entity-versions-text": "未找到实体版本", - "no-versions-text": "未找到版本", - "copy-full-version-id": "复制完整版本ID", - "create-version": "创建版本", - "creating-version": "请稍候,正在创建版本...", - "nothing-to-commit": "没有要提交的更改", - "restore-version": "还原版本", - "restore-entity-from-version": "从版本'{{versionName}}'还原实体", - "restoring-entity-version": "请稍候正在还原实体版本...", - "load-relations": "加载关联", - "load-attributes": "加载属性", - "load-credentials": "加载凭据", - "compare-with-current": "与当前比较", - "diff-entity-with-version": "与实体版本'{{versionName}}'不同", - "previous-difference": "上一个差异", - "next-difference": "下一个差异", - "current": "当前", - "differences": "{ count, plural, =1 {1 个差异} other {# 个差异} }", - "create-entities-version": "创建实体版本", - "default-sync-strategy": "默认同步策略", - "sync-strategy-merge": "合并", - "sync-strategy-overwrite": "覆盖", - "entities-to-export": "导出的实体", - "entities-to-restore": "还原的实体", - "sync-strategy": "同步策略", - "all-entities": "所有实体", - "no-entities-to-export-prompt": "请指定要导出的实体", - "no-entities-to-restore-prompt": "请指定要还原的实体", - "add-entity-type": "添加实体类型", - "remove-all": "全部删除", - "version-create-result": "{ added, plural, =0 {没有实体} =1 {1 个实体} other {# 个实体} } 被添加。
{ modified, plural, =0 {没有实体} =1 {1 个实体} other {# 个实体} }被修改。
{ removed, plural, =0 {没有实体} =1 {1 个实体} other {# 个实体} }被删除。", - "remove-other-entities": "删除其他实体", - "find-existing-entity-by-name": "按名称查找现有实体", - "restore-entities-from-version": "从版本'{{versionName}}'还原实体", - "restoring-entities-from-version": "请稍候正在还原实体...", - "no-entities-restored": "未还原任何实体", - "created": "{{created}}创建", - "updated": "{{updated}}更新", - "deleted": "{{deleted}}删除", - "remove-other-entities-confirm-text": "请注意!在还原版本中不存在的当前实体
将被永久删除

请输入\"remove other entities\"进行确认。", - "auto-commit-to-branch": "自动提交到{{ branch }}分支", - "default-create-entity-version-name": "{{entityName}}更新", - "sync-strategy-merge-hint": "创建或更新选定的实体,仓库其他实体均不修改。", - "sync-strategy-overwrite-hint": "创建或更新选定的实体,仓库其他实体将被删除。", - "device-credentials-conflict": "无法加载外部ID为{{entityId}} 的设备
因为数据库中已存在相同的凭据。
请考虑禁用还原表单中的 加载凭据 设置。", - "missing-referenced-entity": "无法加载外部ID为{{sourceEntityId}}{{sourceEntityTypeName}}
因为它引用了缺失的 {{targetEntityTypeName}} (ID:{{targetEntityId}}).", - "runtime-failed": "失败:{{message}}", - "auto-commit-settings-read-only-hint": "在仓库设置中启用只读选项后,'自动提交'功能将无法正常工作。", - "rollback-on-error": "回滚错误", - "rollback-on-error-hint": "如果您有大量实体需要恢复请考虑禁用此选项以提高性能。\n请注意如果在版本加载过程中发生错误,已经持久化的实体(具有关系、属性等)将不发生修改。" - }, - "widget": { - "widget-library": "部件库", - "widget-bundle": "部件包", - "all-bundles": "所有包", - "select-widgets-bundle": "选择部件包", - "widgets": "部件", - "all-widgets": "所有部件", - "widget": "部件", - "select-widget": "选择部件", - "no-widgets-matching": "未找到与'{{entity}}匹配的部件。", - "no-widgets": "暂无部件", - "no-widgets-text": "未找到部件", - "management": "管理部件", - "editor": "部件编辑器", - "confirm-to-exit-editor-html": "有未保存的部件设置
确定要离开此页面吗?", - "widget-type-not-found": "加载部件配置出错
可能关联的部件已经删除了。", - "widget-type-load-error": "由于以下错误未加载部件:", - "remove": "删除部件", - "delete": "删除部件", - "edit": "编辑部件", - "remove-widget-title": "确定要删除'{{widgetTitle}}'部件吗?", - "remove-widget-text": "确认后所有相关数据将变得不可恢复。", - "replace-reference-with-widget-copy": "基于部件复制替换引用", - "timeseries": "时间序列", - "search-data": "查找数据", - "no-data-found": "未找到数据", - "latest": "最新值", - "rpc": "控件部件", - "alarm": "告警部件", - "static": "静态部件", - "timeseries-short": "时序", - "latest-short": "最新", - "rpc-short": "控制", - "alarm-short": "告警", - "static-short": "静态", - "select-widget-type": "选择窗口部件类型", - "missing-widget-title-error": "部件标题必须指定!", - "widget-saved": "部件已保存", - "unable-to-save-widget-error": "控件有错误无法保存部件!", - "save": "保存部件", - "saveAs": "部件另存为", - "move": "移动部件", - "save-widget-as": "部件另存为", - "save-widget-as-text": "请输入部件标题", - "toggle-fullscreen": "全屏", - "run": "运行", - "widget-title": "部件标题", - "title": "部件标题", - "title-required": "部件标题必填。", - "title-max-length": "标题必须小于256个字符", - "system": "系统", - "type": "类型", - "resources": "资源", - "resource-url": "JavaScript/CSS", - "resource-is-extension": "是否扩展", - "remove-resource": "删除资源", - "add-resource": "添加资源", - "html": "HTML", - "tidy": "整理", - "css": "CSS", - "settings-form": "设置表单", - "data-key-settings-form": "数据键设置表单", - "latest-data-key-settings-form": "最新数据键设置表单", - "widget-settings": "设置", - "description": "描述", - "tags": "标签", - "image-preview": "图片预览", - "settings-form-selector": "设置表单选择器", - "data-key-settings-form-selector": "数据键设置表单选择器", - "latest-data-key-settings-form-selector": "最新值数据键设置表单选择器", - "all": "全部", - "actual": "实际", - "scada": "组态", - "deprecated": "弃用", - "has-basic-mode": "基础模式", - "basic-mode-form-selector": "表单选择器", - "basic-mode": "基础", - "advanced-mode": "高级", - "javascript": "JavaScript", - "js": "JS", - "delete-widget-title": "确定要删除部件'{{widgetName}}'吗?", - "delete-widget-text": "确认后部件及其所有相关数据将无法恢复。", - "delete-widgets-title": "确定要删除{ count, plural, =1 {1个部件} other {#个部件} }吗?", - "delete-widgets-text": "请谨慎操作确认后,所有选定的部件将被删除并且所有相关数据将无法恢复。", - "delete-widget": "删除部件", - "widget-template-load-failed-error": "无法加载部件模板!", - "details": "详情", - "widget-details": "部件详情", - "add": "添加", - "add-existing-widget": "添加现有部件", - "add-new-widget": "添加新部件", - "search-widgets": "搜索部件", - "selected-widgets": "已选择{ count, plural, =1 {1 个部件} other {# 个部件} }", - "undo": "撤销", - "export": "导出", - "export-prompt": "嵌入部件图片和资源", - "export-widgets": "导出部件", - "export-widgets-prompt": "嵌入部件图片和资源", - "import": "导入部件", - "no-data": "部件上没有要显示的数据", - "data-overflow": "部件显示{{count}}条实体中的{{total}}条。", - "alarm-data-overflow": "部件显示了{{allowedEntities}}(最大允许)实体中的告警,总共有{{totalEntities}}个实体", - "search": "搜索", - "filter": "过滤", - "loading-widgets": "加载部件...", - "widget-template-error": "无效HTML模板部件。", - "reference": "引用" + "label-hint": "在柱上方显示标签。", + "series-label-hint": "在柱上方显示带数值的标签。", + "label-background": "标签背景" + } }, - "widget-action": { - "header-button": "顶部按钮", - "do-nothing": "无任何动作", - "open-dashboard-state": "切换仪表板状态", - "update-dashboard-state": "更新仪表板状态", - "open-dashboard": "打开仪表板", - "custom": "自定义动作", - "custom-pretty": "自定义动作(HTML模板)", - "custom-pretty-error-title": "自定义对话框错误", - "custom-pretty-template-error": "无效的自定义对话框模板。", - "custom-pretty-controller-error": "自定义对话框函数错误。", - "mobile-action": "移动端动作", - "target-dashboard-state": "目标仪表板状态", - "target-dashboard-state-required": "目标仪表板状态必填", - "set-entity-from-widget": "从部件中设置实体", - "target-dashboard": "目标仪表板", - "select-target-dashboard": "选择目标仪表板", - "target-dashboard-required": "必须选择目标仪表板。", - "open-right-layout": "打开右侧布局 (移动端视图)", - "state-display-type": "显示仪表板状态选项", - "open-normal": "普通", - "open-in-separate-dialog": "在单独的对话框中打开", - "open-in-popover": "在弹出框中打开", - "dialog-title": "对话框标题", - "dialog-hide-dashboard-toolbar": "在对话框中隐藏仪表板工具栏", - "dialog-width": "对话框宽度相对于视口宽度的百分比", - "dialog-height": "对话框高度相对于视口高度的百分比", - "dialog-size-range-error": "对话框的大小百分比值应该介于1到100之间。", - "popover-preferred-placement": "首选的弹出框位置", - "popover-placement-top": "顶部", - "popover-placement-topLeft": "上左", - "popover-placement-topRight": "上右", - "popover-placement-right": "右侧", - "popover-placement-rightTop": "右上", - "popover-placement-rightBottom": "右下", - "popover-placement-bottom": "底部", - "popover-placement-bottomLeft": "下左", - "popover-placement-bottomRight": "下右", - "popover-placement-left": "左侧", - "popover-placement-leftTop": "左上", - "popover-placement-leftBottom": "左下", - "popover-hide-on-click-outside": "在点击弹出框外部时隐藏弹出框", - "popover-hide-dashboard-toolbar": "在弹出框中隐藏仪表板工具栏", - "popover-width": "宽度", - "popover-height": "高度", - "popover-style": "样式", - "open-new-browser-tab": "在选项卡中打开", - "open-URL": "打开URL", - "URL": "URL", - "url-required": "URL必填。", - "mobile": { - "action-type": "移动端动作类型", - "select-action-type": "选择移动端操作类型", - "action-type-required": "移动端动作类型必填。", - "take-picture-from-gallery": "从图库中获取照片", - "take-photo": "拍照", - "map-direction": "打开地图导航", - "map-location": "打开地图位置", - "scan-qr-code": "扫描二维码", - "make-phone-call": "拨打电话", - "get-location": "获取手机位置", - "take-screenshot": "截屏" - }, - "custom-action-function": "自定义动作函数", - "custom-pretty-function": "自定义动作(HTML模板)" - }, - "widgets-bundle": { - "current": "当前组", - "widgets-bundles": "部件包", - "widgets-bundle-widgets": "包部件", - "add": "添加部件包", - "delete": "删除部件包", - "title": "标题", - "title-required": "标题必填。", - "title-max-length": "标题长度应该小于256个字符。", - "description": "描述", - "image-preview": "图片预览", - "scada": "SCADA部件包", - "order": "其他", - "add-widgets-bundle-text": "添加部件包", - "no-widgets-bundles-text": "未找到部件包", - "empty": "部件包是空的", - "details": "详情", - "widgets-bundle-details": "部件包详细信息", - "delete-widgets-bundle-title": "确定要删除部件包'{{widgetsBundleTitle}}'吗?", - "delete-widgets-bundle-text": "请注意:确认后部件包和所有相关数据将不可恢复。", - "delete-widgets-bundles-title": "确定要删除{ count, plural, =1 {1 个部件包} other {# 个部件包} }吗?", - "delete-widgets-bundles-action-title": "删除{ count, plural, =1 {1 个部件包} other {# 个部件包} }", - "delete-widgets-bundles-text": "请注意:确认后,所有选定的部件包将被删除,所有相关数据将不可恢复。", - "no-widgets-bundles-matching": "未找到与'{{widgetsBundle}}'匹配的部件包。", - "widgets-bundle-required": "部件包必填。", - "system": "系统", - "import": "导入部件包", - "export": "导出部件包", - "export-widgets-bundle-widgets-prompt": "在导出的数据中包含包部件(否则只会导出引用的部件完全限定名)", - "export-failed-error": "无法导出部件包: {{error}}", - "create-new-widgets-bundle": "创建部件包", - "widgets-bundle-file": "部件包文件", - "invalid-widgets-bundle-file-error": "无法导入部件包:无效的部件包数据结构。", - "search": "查找部件包", - "selected-widgets-bundles": "已选择{ count, plural, =1 {1 个部件包} other {# 个部件包} }", - "open-widgets-bundle": "打开部件包", - "loading-widgets-bundles": "加载部件包...", - "create-new": "创建新部件包" - }, - "widget-config": { - "data": "数据", - "settings": "设置", - "advanced": "高级", - "appearance": "外观", - "widget-card": "卡片", - "mobile": "移动设备", - "title": "标题", - "title-tooltip": "标题提示文字", - "general-settings": "常规设置", - "display-title": "显示", - "card-title": "标题", - "drop-shadow": "投影", - "enable-fullscreen": "启用全屏", - "background-color": "背景颜色", - "text-color": "文字颜色", - "border-radius": "边框半径", - "padding": "填充", - "margin": "边缘", - "widget-style": "部件样式", - "widget-css": "部件CSS", - "title-style": "标题样式", - "mobile-mode-settings": "移动端设置", - "order": "顺序", - "height": "高度", - "mobile-hide": "在移动端隐藏部件", - "desktop-hide": "在桌面端隐藏部件", - "units": "特殊符号展示值", - "units-by-default": "默认单位", - "decimals": "小数位数", - "decimals-by-default": "默认小数位数", - "default-data-key-parameter-hint": "该参数适用于所有部件值,除非被数据键配置覆盖。", - "units-short": "单位", - "decimals-short": "小数", - "decimals-suffix": "位小数", - "timewindow": "时间窗口", - "use-dashboard-timewindow": "使用仪表板时间窗口", - "use-widget-timewindow": "使用部件时间窗口", - "display-timewindow": "显示时间窗口", - "legend": "图例", - "display-legend": "显示图例", - "datasources": "数据源", - "datasource": "数据源", - "maximum-datasources": "最大允许{ count, plural, =1 {1 个数据源。} other {# 个数据源。} }", - "timeseries-key-error": "需要至少指定一个timeseries数据键", - "datasource-type": "类型", - "datasource-parameters": "参数", - "remove-datasource": "移除数据源", - "add-datasource": "添加数据源", - "target-device": "目标设备", - "alarm-source": "告警源", - "actions": "动作", - "action": "动作", - "add-action": "添加动作", - "search-actions": "搜索动作", - "no-actions-text": "找不到动作", - "action-source": "动作源", - "select-action-source": "选择动作源", - "action-source-required": "动作源必填", - "column-index": "序号", - "select-column-index": "选择序号", - "column-index-required": "序号必填。", - "not-set": "未设置", - "action-name": "名称", - "action-name-required": "动作名称必填。", - "action-name-not-unique": "动作名称已经存在。", - "action-icon": "图标", - "show-hide-action-using-function": "使用函数显示/隐藏动作", - "show-action-function": "显示动作函数", - "action-type": "类型", - "action-type-required": "类型必填", - "edit-action": "编辑动作", - "delete-action": "删除动作", - "delete-action-title": "删除部件动作", - "delete-action-text": "确定要删除部件动作'{{actionName}}'吗?", - "title-icon": "标题图标", - "display-icon": "显示标题图标", - "card-icon": "图标", + "color": { + "color-settings": "颜色设置", + "color-type-constant": "常量", + "color-type-gradient": "渐变", + "color-type-range": "范围", + "color-type-function": "函数", + "color": "颜色", + "value-range": "值范围", + "from": "从", + "to": "到", + "color-function": "颜色函数", + "copy-color-settings-from": "从...复制颜色设置", + "copy-from": "从...复制", + "settings-type": "设置类型", + "basic-mode": "基础", + "advanced-mode": "高级", + "entity-alias": "实体别名", + "entity-attribute": "实体属性", + "gradient-color": "渐变颜色", + "gradient-color-min": "颜色", + "gradient-start": "渐变起始颜色", + "gradient-start-min": "起始", + "gradient-end": "渐变结束颜色", + "gradient-end-min": "结束", + "start-value": "起始值", + "end-value": "结束值", + "gradient-type": "渐变类型" + }, + "dashboard-state": { + "dashboard-state-settings": "仪表板状态设置", + "dashboard-state": "仪表板状态 ID", + "autofill-state-layout": "默认自动填充状态布局高度", + "default-margin": "默认部件间距", + "default-background-color": "默认背景颜色", + "sync-parent-state-params": "与父仪表板同步状态参数" + }, + "date-range-navigator": { + "date-range-picker-settings": "日期范围选择器设置", + "hide-date-range-picker": "隐藏日期范围选择器", + "picker-one-panel": "日期范围选择器单面板", + "picker-auto-confirm": "日期范围选择器自动确认", + "picker-show-template": "日期范围选择器显示模板", + "first-day-of-week": "每周第一天", + "interval-settings": "区间设置", + "hide-interval": "隐藏区间", + "initial-interval": "初始区间", + "interval-hour": "小时", + "interval-day": "天", + "interval-week": "周", + "interval-two-weeks": "2 周", + "interval-month": "月", + "interval-three-months": "3 个月", + "interval-six-months": "6 个月", + "step-settings": "步长设置", + "hide-step-size": "隐藏步长", + "initial-step-size": "初始步长", + "hide-labels": "隐藏标签", + "use-session-storage": "使用会话存储", + "localizationMap": { + "Sun": "日", + "Mon": "一", + "Tue": "二", + "Wed": "三", + "Thu": "四", + "Fri": "五", + "Sat": "六", + "Jan": "1月", + "Feb": "2月", + "Mar": "3月", + "Apr": "4月", + "May": "5月", + "Jun": "6月", + "Jul": "7月", + "Aug": "8月", + "Sep": "9月", + "Oct": "10月", + "Nov": "11月", + "Dec": "12月", + "January": "一月", + "February": "二月", + "March": "三月", + "April": "四月", + "June": "六月", + "July": "七月", + "August": "八月", + "September": "九月", + "October": "十月", + "November": "十一月", + "December": "十二月", + "Custom Date Range": "自定义日期范围", + "Date Range Template": "日期范围模板", + "Today": "今天", + "Yesterday": "昨天", + "This Week": "本周", + "Last Week": "上周", + "This Month": "本月", + "Last Month": "上月", + "Year": "年", + "This Year": "今年", + "Last Year": "去年", + "Date picker": "日期选择器", + "Hour": "小时", + "Day": "天", + "Week": "周", + "2 weeks": "2 周", + "Month": "月", + "3 months": "3 个月", + "6 months": "6 个月", + "Custom interval": "自定义区间", + "Interval": "区间", + "Step size": "步长", + "Ok": "确定" + } + }, + "doughnut": { + "doughnut-appearance": "环形图外观", + "layout": "布局", + "layout-default": "默认", + "layout-with-total": "显示总计", + "central-total-value": "中心总计值", + "doughnut-card-style": "环形图卡片样式" + }, + "entities-hierarchy": { + "hierarchy-data-settings": "层级数据设置", + "relations-query-function": "节点关联查询函数", + "has-children-function": "节点有子节点函数", + "node-state-settings": "节点状态设置", + "node-opened-function": "默认节点展开函数", + "node-disabled-function": "节点禁用函数", + "display-settings": "显示设置", + "node-icon-function": "节点图标函数", + "node-text-function": "节点文本函数", + "sort-settings": "排序设置", + "nodes-sort-function": "节点排序函数" + }, + "edge": { + "display-default-title": "显示默认标题" + }, + "gateway": { + "general-settings": "常规设置", + "widget-title": "部件标题", + "default-archive-file-name": "默认归档文件名", + "device-type-for-new-gateway": "新 Gateway 的设备类型", + "messages-settings": "消息设置", + "save-config-success-message": "Gateway 配置保存成功的文本消息", + "device-name-exists-message": "输入的设备名称已存在时的文本消息", + "gateway-title": "Gateway 表单", + "read-only": "只读", + "events-title": "Gateway 事件表单标题", + "events-filter": "事件过滤器", + "event-key-contains": "事件键包含...", + "show-connector": "为连接器显示", + "connector-state-param-key": "连接器状态参数键", + "message": "消息", + "level": "级别", + "created-time": "创建时间" + }, + "gauge": { + "default-color": "默认颜色", + "radial-gauge-settings": "径向仪表设置", + "ticks-settings": "刻度设置", + "min-value": "最小值", + "max-value": "最大值", + "min-value-short": "最小", + "max-value-short": "最大", + "start-ticks-angle": "起始刻度角度", + "ticks-angle": "刻度角度", + "major-ticks": "主刻度", + "major-ticks-count": "主刻度数量", + "major-ticks-color": "主刻度颜色", + "minor-ticks": "次刻度", + "minor-ticks-count": "次刻度数量", + "minor-ticks-color": "次刻度颜色", + "tick-numbers-font": "刻度数字字体", + "unit-title-settings": "单位标题设置", + "show-unit-title": "单位标题", + "unit-title": "单位标题", + "title-font": "标题文本字体", + "units-settings": "单位设置", + "units-font": "单位文本字体", + "value-box-settings": "值框设置", + "show-value-box": "显示值框", + "value-box": "值框", + "value-int": "值整数部分的位数", + "value-text": "值文本", + "value-text-shadow": "值文本阴影", + "value-font": "值文本字体", + "rect-stroke-color-start": "矩形描边颜色 - 起始渐变", + "rect-stroke-color-end": "矩形描边颜色 - 结束渐变", + "background-color": "背景颜色", + "shadow-color": "阴影颜色", + "value-box-rect-stroke-color": "值框矩形描边颜色", + "value-box-rect-stroke-color-end": "值框矩形描边颜色 - 结束渐变", + "value-box-background-color": "值框背景颜色", + "value-box-shadow-color": "值框阴影颜色", + "plate-settings": "表盘设置", + "show-plate-border": "表盘边框", + "plate-color": "表盘颜色", + "needle-settings": "指针设置", + "needle-circle-size": "指针圆圈大小", + "needle-color": "指针颜色", + "needle-color-start": "指针颜色 - 起始渐变", + "needle-color-end": "指针颜色 - 结束渐变", + "needle-color-shadow-up": "指针上半部分阴影颜色", + "needle-color-shadow-down": "投影", + "highlights-settings": "高亮设置", + "highlights-width": "高亮宽度", + "highlights": "高亮", + "highlight-from": "起始", + "highlight-to": "结束", + "highlight-color": "颜色", + "no-highlights": "未配置高亮", + "add-highlight": "添加高亮", + "animation-settings": "动画设置", + "enable-animation": "动画", + "animation-duration-rule": "动画持续时间和规则", + "animation-duration": "动画持续时间", + "animation-rule": "动画规则", + "animation-linear": "线性", + "animation-quad": "二次", + "animation-quint": "五次", + "animation-cycle": "循环", + "animation-bounce": "弹跳", + "animation-elastic": "弹性", + "animation-dequad": "反二次", + "animation-dequint": "反五次", + "animation-decycle": "反循环", + "animation-debounce": "反弹跳", + "animation-delastic": "反弹性", + "linear-gauge-settings": "线性仪表设置", + "bar-stroke": "条形描边", + "bar-stroke-width": "条形描边宽度", + "bar-stroke-color": "条形描边颜色", + "bar-background-color": "条形背景颜色 - 起始渐变", + "bar-background-color-end": "条形背景颜色 - 结束渐变", + "progress-bar-color": "进度条颜色", + "progress-bar": "进度条", + "progress-bar-color-start": "进度条颜色 - 起始渐变", + "progress-bar-color-end": "进度条颜色 - 结束渐变", + "major-ticks-names": "主刻度名称", + "show-stroke-ticks": "显示刻度描边", + "major-ticks-font": "主刻度字体", + "border-color": "边框颜色", + "border-width": "边框宽度", + "needle-circle": "指针圆圈", + "needle-circle-color": "指针圆圈颜色", + "animation-target": "动画目标", + "animation-target-needle": "指针", + "animation-target-plate": "表盘", + "common-settings": "通用仪表设置", + "gauge-type": "仪表类型", + "gauge-type-arc": "弧形", + "gauge-type-donut": "环形", + "gauge-type-horizontal-bar": "水平条形", + "gauge-type-vertical-bar": "垂直条形", + "donut-start-angle": "起始角度(度)", + "bar-settings": "仪表条形设置", + "relative-bar-width": "相对条形宽度", + "neon-glow-brightness": "霓虹发光效果亮度(0-100)", + "neon-glow-brightness-hint": "0 - 禁用效果 ", + "stripes-thickness": "条纹厚度", + "stripes-thickness-hint": "0 - 无条纹", + "rounded-line-cap": "圆角线帽", + "bar-color-settings": "条形颜色设置", + "use-precise-level-color-values": "使用精确颜色级别", + "bar-colors": "条形颜色,从低到高", + "color": "颜色", + "no-bar-colors": "未配置条形颜色", + "add-bar-color": "添加条形颜色", + "from": "起始", + "to": "结束", + "fixed-level-colors": "使用边界值的条形颜色", + "gauge-title-settings": "仪表标题设置", + "show-gauge-title": "显示仪表标题", + "gauge-title": "仪表标题", + "gauge-title-font": "仪表标题字体", + "unit-title-and-timestamp-settings": "单位标题和时间戳设置", + "show-timestamp": "时间戳", + "timestamp-format": "时间戳格式", + "label-font": "值下方标签的字体", + "value-settings": "值设置", + "show-value": "显示值文本", + "min-max-settings": "最小/最大标签设置", + "show-min-max": "显示最小值和最大值", + "min-max-font": "最小和最大标签的字体", + "show-ticks": "显示刻度", + "tick-width": "刻度宽度", + "tick-color": "刻度颜色", + "tick-values": "刻度值", + "no-tick-values": "未配置刻度值", + "add-tick-value": "添加刻度值", + "gauge-appearance": "仪表外观", + "units-title": "单位标题", + "value": "值", + "ticks": "刻度", + "arrow-and-scale-color": "箭头和刻度默认颜色", + "scale-settings": "刻度设置", + "scale": "刻度", + "scale-color": "刻度颜色", + "compass-appearance": "罗盘外观", + "label": "标签", + "labels": "标签", + "label-style": "标签样式", + "simple-gauge-type": "类型", + "gauge-bar-background": "仪表条形背景", + "bar-color": "条形颜色", + "min-and-max-value": "最小值和最大值", + "min-and-max-label": "最小和最大标签", + "font": "字体", + "tick-width-and-color": "刻度宽度和颜色", + "min-max-validation-text": "最大值必须大于最小值" + }, + "gpio": { + "pin": "引脚", + "label": "标签", + "row": "行", + "column": "列", + "color": "颜色", + "panel-settings": "面板设置", + "background-color": "背景颜色", + "gpio-switches": "GPIO 开关", + "no-gpio-switches": "未配置 GPIO 开关", + "add-gpio-switch": "添加 GPIO 开关", + "gpio-status-request": "GPIO 状态请求", + "method-name": "方法名称", + "method-body": "方法体", + "gpio-status-change-request": "GPIO 状态更改请求", + "parse-gpio-status-function": "解析 GPIO 状态函数", + "gpio-leds": "GPIO LED", + "no-gpio-leds": "未配置 GPIO LED", + "add-gpio-led": "添加 GPIO LED" + }, + "html-card": { + "html": "HTML", + "css": "CSS" + }, + "input-widgets": { + "attribute-not-allowed": "属性参数不能在此部件中使用", + "blocked-location": "地理定位已在您的浏览器中被阻止", + "claim-device": "认领设备", + "claim-failed": "认领设备失败!", + "claim-not-found": "未找到设备!", + "claim-successful": "设备认领成功!", + "date": "日期", + "device-name": "设备名称", + "device-name-required": "设备名称为必填项", + "discard-changes": "放弃更改", + "entity-attribute-required": "实体属性为必填项", + "entity-coordinate-required": "纬度和经度两个字段均为必填项", + "entity-timeseries-required": "实体时间序列为必填项", + "get-location": "获取当前位置", + "invalid-date": "无效日期", + "latitude": "纬度", + "longitude": "经度", + "min-value-error": "最小值为 {{value}}", + "max-value-error": "最大值为 {{value}}", + "not-allowed-entity": "所选实体不能拥有共享属性", + "no-attribute-selected": "未选择属性", + "no-datakey-selected": "未选择数据键", + "no-coordinate-specified": "未指定纬度/经度的数据键", + "no-entity-selected": "未选择实体", + "no-image": "无图片", + "no-support-geolocation": "您的浏览器不支持地理定位", + "no-support-web-camera": "您的浏览器不支持摄像头", + "enable-https-use-widget": "请启用 HTTPS 以使用此部件", + "no-found-your-camera": "找不到您的摄像头", + "no-permission-camera": "用户拒绝了权限 / 此站点没有使用摄像头的权限", + "no-timeseries-selected": "未选择时间序列", + "secret-key": "密钥", + "secret-key-required": "密钥为必填项", + "switch-attribute-value": "切换实体属性值", + "switch-camera": "切换摄像头", + "switch-timeseries-value": "切换实体时间序列值", + "take-photo": "拍照", + "time": "时间", + "timeseries-not-allowed": "时间序列参数不能在此部件中使用", + "update-failed": "更新失败", + "update-successful": "更新成功", + "update-attribute": "更新属性", + "update-timeseries": "更新时间序列", + "value": "值", + "general-settings": "常规设置", + "widget-title": "部件标题", + "claim-button-label": "认领按钮标签", + "show-secret-key-field": "显示“密钥”输入字段", + "labels-settings": "标签设置", + "show-labels": "显示标签", + "device-name-label": "设备名称输入字段的标签", + "secret-key-label": "密钥输入字段的标签", + "messages-settings": "消息设置", + "claim-device-success-message": "设备认领成功的文本消息", + "claim-device-not-found-message": "未找到设备时的文本消息", + "claim-device-failed-message": "设备认领失败的文本消息", + "claim-device-name-required-message": "“设备名称必填”错误消息", + "claim-device-secret-key-required-message": "“密钥必填”错误消息", + "show-label": "显示标签", + "label": "标签", + "required": "必填", + "required-error-message": "“必填”错误消息", + "show-result-message": "显示结果消息", + "integer-field-settings": "整数字段设置", + "min-value": "最小值", + "max-value": "最大值", + "double-field-settings": "双精度字段设置", + "text-field-settings": "文本字段设置", + "min-length": "最小长度", + "max-length": "最大长度", + "checkbox-settings": "复选框设置", + "true-label": "选中时标签", + "false-label": "未选中时标签", + "image-input-settings": "图片输入设置", + "display-preview": "显示预览", + "display-clear-button": "显示清除按钮", + "display-apply-button": "显示应用按钮", + "display-discard-button": "显示放弃按钮", + "datetime-field-settings": "日期/时间字段设置", + "display-time-input": "显示时间输入", + "latitude-key-name": "纬度键名称", + "longitude-key-name": "经度键名称", + "show-get-location-button": "显示“获取当前位置”按钮", + "use-high-accuracy": "使用高精度", + "location-fields-settings": "位置字段设置", + "latitude-label": "纬度标签", + "longitude-label": "经度标签", + "input-fields-alignment": "输入字段对齐", + "input-fields-alignment-column": "列(默认)", + "input-fields-alignment-row": "行", + "layout": "布局", + "row-gap": "行间距(像素)", + "column-gap": "列间距(像素)", + "latitude-field-required": "纬度字段为必填项", + "longitude-field-required": "经度字段为必填项", + "attribute-settings": "属性设置", + "widget-mode": "部件模式", + "widget-mode-update-attribute": "更新属性", + "widget-mode-update-timeseries": "更新时间序列", + "attribute-scope": "属性范围", + "attribute-scope-server": "服务端属性", + "attribute-scope-shared": "共享属性", + "value-required": "值为必填项", + "image-settings": "图片输出设置", + "image-format": "图片格式", + "image-format-jpeg": "JPEG", + "image-format-png": "PNG", + "image-format-webp": "WEBP", + "image-quality": "图片质量", + "max-image-width": "最大宽度", + "max-image-height": "最大高度", + "action-buttons": "操作按钮", + "show-action-buttons": "显示操作按钮", + "update-all-values": "更新所有值,而不仅仅是已修改的值", + "save-button-label": "“保存”按钮标签", + "reset-button-label": "“撤销”按钮标签", + "group-settings": "分组设置", + "show-group-title": "显示与不同实体相关的字段组标题", + "group-title": "组标题", + "fields-alignment": "字段对齐", + "fields-alignment-row": "行(默认)", + "fields-alignment-column": "列", + "fields-in-row": "每行字段数量", + "option-value": "值(输入‘null’以创建空选项)", + "option-label": "标签", + "hide-input-field": "隐藏输入字段", + "datakey-type": "数据键类型", + "datakey-type-server": "服务端属性(默认)", + "datakey-type-shared": "共享属性", + "datakey-type-timeseries": "时间序列", + "datakey-value-type": "数据键值类型", + "datakey-value-type-string": "字符串", + "datakey-value-type-double": "双精度", + "datakey-value-type-integer": "整数", + "datakey-value-type-json": "JSON", + "datakey-value-type-boolean-checkbox": "布尔值(复选框)", + "datakey-value-type-boolean-switch": "布尔值(开关)", + "datakey-value-type-date-time": "日期和时间", + "datakey-value-type-date": "日期", + "datakey-value-type-time": "时间", + "datakey-value-type-select": "下拉选择", + "datakey-value-type-radio": "单选按钮", + "datakey-value-type-color": "颜色", + "value-is-required": "值为必填项", + "ability-to-edit-attribute": "属性编辑能力", + "ability-to-edit-attribute-editable": "可编辑(默认)", + "ability-to-edit-attribute-disabled": "禁用", + "ability-to-edit-attribute-readonly": "只读", + "disable-on-datakey-name": "在另一个数据键值为 false 时禁用(指定数据键名称)", + "field-appearance": "字段外观", + "appearance-fill": "填充", + "appearance-outline": "轮廓", + "subscript-sizing": "下标大小", + "subscript-sizing-fixed": "固定", + "subscript-sizing-dynamic": "动态", + "slide-toggle-settings": "滑动开关设置", + "slide-toggle-label-position": "滑动开关标签位置", + "slide-toggle-label-position-after": "之后", + "slide-toggle-label-position-before": "之前", + "select-options": "下拉选项", + "no-select-options": "未配置下拉选项", + "add-select-option": "添加下拉选项", + "numeric-field-settings": "数值字段设置", + "step-interval": "值之间的步进间隔", + "error-messages": "错误消息", + "min-value-error-message": "“最小值”错误消息", + "max-value-error-message": "“最大值”错误消息", + "invalid-date-error-message": "“无效日期”错误消息", + "invalid-JSON-error-message": "“无效 JSON”错误消息", + "icon-settings": "图标设置", + "dialog-editor-settings": "对话框编辑器设置", + "use-custom-icon": "使用自定义图标", + "input-cell-icon": "输入单元格前显示的图标", + "value-conversion-settings": "值转换设置", + "get-value-settings": "获取值设置", + "use-get-value-function": "使用 getValue 函数", + "get-value-function": "getValue 函数", + "set-value-settings": "设置值设置", + "use-set-value-function": "使用 setValue 函数", + "set-value-function": "setValue 函数", + "json-invalid": "JSON 值格式无效", + "title": "标题", + "cancel-button-label": "“取消”按钮标签", + "radio-button-settings": "单选按钮设置", + "color": "颜色", + "columns": "列", + "radio-options": "单选选项", + "no-radio-options": "未配置单选选项", + "add-radio-option": "添加单选选项", + "radio-label-position": "标签位置", + "radio-label-position-before": "之前", + "radio-label-position-after": "之后", + "save-image": "保存图片", + "save-to-gallery": "自动将拍摄的图片存储到图片库", + "public-image": "使图片对所有未授权用户可用" + }, + "invalid-qr-code-text": "二维码的输入文本无效。输入应为字符串类型", + "qr-code": { + "use-qr-code-text-function": "使用二维码文本函数", + "qr-code-text-pattern": "二维码文本模式(例如 '${entityName} | ${keyName} - some text.')", + "qr-code-text-pattern-hint": "二维码文本模式使用实体别名中实体中第一个找到的键的值。", + "qr-code-text-pattern-required": "二维码文本模式为必填项。", + "qr-code-text-function": "二维码文本函数" + }, + "label-widget": { + "label-pattern": "模式", + "label-pattern-hint": "提示:例如 'Text ${keyName} units.' 或 ${#<key index>} units'", + "label-pattern-required": "模式为必填项", + "label-position": "位置(相对于背景的百分比)", + "x-pos": "X", + "y-pos": "Y", + "background-color": "背景颜色", + "font-settings": "字体设置", + "background-image": "背景图片", + "labels": "标签", + "no-labels": "未配置标签", + "add-label": "添加标签" + }, + "navigation": { + "title": "标题", + "navigation-path": "导航路径", + "filter-type": "过滤类型", + "filter-type-all": "所有项目", + "filter-type-include": "包含项目", + "filter-type-exclude": "排除项目", + "items": "项目", + "enter-urls-to-filter": "输入要过滤的 URL..." + }, + "persistent-table": { + "rpc-id": "RPC ID", + "message-type": "消息类型", + "method": "方法", + "params": "参数", + "created-time": "创建时间", + "expiration-time": "过期时间", + "retries": "重试次数", + "status": "状态", + "filter": "过滤器", + "refresh": "刷新", + "add": "添加 RPC 请求", + "details": "详情", + "delete": "删除", + "delete-request-title": "删除持久化 RPC 请求", + "delete-request-text": "您确定要删除该请求吗?", + "details-title": "详情 RPC ID:", + "additional-info": "附加信息", + "response": "响应", + "any-status": "任意状态", + "rpc-status-list": "RPC 状态列表", + "no-request-prompt": "无可显示的请求", + "send-request": "发送请求", + "add-title": "创建持久化 RPC 请求", + "method-error": "方法为必填项。", + "timeout-error": "最小超时值为 5000(5 秒)。", + "white-space-error": "不允许使用空格。", + "rpc-status": { + "QUEUED": "已排队", + "SENT": "已发送", + "DELIVERED": "已送达", + "SUCCESSFUL": "成功", + "TIMEOUT": "超时", + "EXPIRED": "已过期", + "FAILED": "失败" + }, + "rpc-search-status-all": "全部", + "message-types": { + "false": "双向", + "true": "单向" + }, + "general-settings": "常规设置", + "enable-filter": "启用过滤器", + "enable-sticky-header": "滚动时显示表头", + "enable-sticky-action": "滚动时显示操作列", + "display-request-details": "显示请求详情", + "allow-send-request": "允许发送 RPC 请求", + "allow-delete-request": "允许删除请求", + "columns-settings": "列设置", + "display-columns": "要显示的列", + "column": "列", + "no-columns-found": "未找到列", + "no-columns-matching": "未找到“{{column}}”。" + }, + "range-chart": { + "chart": "图表", + "data-zoom": "数据缩放", + "range-chart-appearance": "范围图表外观", + "range-colors": "范围颜色", + "out-of-range-color": "超出范围颜色", + "show-range-thresholds": "显示范围阈值", + "range-thresholds-settings": "范围阈值设置", + "fill-area": "填充区域", + "fill-area-opacity": "填充区域不透明度", + "range-chart-style": "范围图表样式" + }, + "knob": { + "behavior": "行为", + "initial-value": "初始值", + "initial-value-hint": "获取旋钮初始值的操作。", + "on-value-change": "值变更时", + "on-value-change-hint": "旋钮值变更时触发的操作。", + "range": "范围", + "min": "最小", + "max": "最大", + "value": "值", + "fallback-initial-value": "备用初始值" + }, + "rpc": { + "value-settings": "值设置", + "initial-value": "初始值", + "retrieve-value-settings": "获取开/关值设置", + "retrieve-value-method": "使用方法获取值", + "retrieve-value-method-none": "不获取", + "retrieve-value-method-rpc": "调用 RPC 获取值方法", + "retrieve-value-method-attribute": "订阅属性", + "retrieve-value-method-timeseries": "订阅时间序列", + "attribute-value-key": "属性键", + "timeseries-value-key": "时间序列键", + "get-value-method": "RPC 获取值方法", + "parse-value-function": "解析值函数", + "update-value-settings": "更新值设置", + "set-value-method": "RPC 设置值方法", + "convert-value-function": "转换值函数", + "rpc-settings": "RPC 设置", + "request-timeout": "RPC 请求超时(毫秒)", + "persistent-rpc-settings": "持久化 RPC 设置", + "request-persistent": "RPC 请求持久化", + "persistent-polling-interval": "获取持久化 RPC 命令响应的轮询间隔(毫秒)", + "common-settings": "通用设置", + "switch-title": "开关标题", + "show-on-off-labels": "显示开/关标签", + "slide-toggle-label": "滑动开关标签", + "label-position": "标签位置", + "label-position-before": "之前", + "label-position-after": "之后", + "slider-color": "滑块颜色", + "slider-color-primary": "主要", + "slider-color-accent": "强调", + "slider-color-warn": "警告", + "button-style": "按钮样式", + "button-raised": "凸起按钮", + "button-primary": "主要颜色", + "button-background-color": "按钮背景颜色", + "button-text-color": "按钮文本颜色", + "widget-title": "部件标题", + "button-label": "按钮标签", + "device-attribute-scope": "设备属性范围", + "server-attribute": "服务端属性", + "shared-attribute": "共享属性", + "device-attribute-parameters": "设备属性参数", + "is-one-way-command": "单向命令", + "rpc-method": "RPC 方法", + "rpc-method-params": "RPC 方法参数", + "show-rpc-error": "显示 RPC 命令执行错误", + "led-title": "LED 标题", + "led-color": "LED 颜色", + "check-status-settings": "检查状态设置", + "perform-rpc-status-check": "执行 RPC 设备状态检查", + "retrieve-led-status-value-method": "使用方法获取 LED 状态值", + "led-status-value-attribute": "包含 LED 状态值的设备属性", + "led-status-value-timeseries": "包含 LED 状态值的设备时间序列", + "check-status-method": "RPC 检查设备状态方法", + "parse-led-status-value-function": "解析 LED 状态值函数", + "knob-title": "旋钮标题" + }, + "maps": { + "map-type": { + "type": "地图类型", + "map": "地图", + "image": "图片" + }, + "image": { + "image-source": "图片来源", + "image-source-image": "图片", + "image-source-entity-key": "实体键", + "source-entity-alias": "来源实体别名", + "image-url-key": "图片 URL 键", + "image-url-key-required": "图片 URL 键为必填项" + }, + "control": { + "map-controls": "地图控件", + "position": "位置", + "position-topleft": "左上", + "position-topright": "右上", + "position-bottomleft": "左下", + "position-bottomright": "右下", + "zoom-actions": "缩放操作", + "zoom-scroll": "滚动", + "zoom-double-click": "双击", + "zoom-control-buttons": "控制按钮", + "scale": "比例尺", + "scale-metric": "公制", + "scale-imperial": "英制", + "switch-to-drag-mode-using-button": "使用按钮切换到拖拽模式" + }, + "timeline": { + "control-panel": "时间线控制面板", + "time-step": "时间步长", + "speed-options": "速度选项", + "timestamp": "时间戳", + "snap-to-real-location": "对齐到真实位置", + "location-snap-filter-function": "位置对齐过滤函数", + "no-trips-data-available": "无可用的行程数据" + }, + "map-action": { + "map-action-buttons": "地图操作按钮", + "label": "标签", "icon": "图标", - "icon-color": "图标颜色", - "icon-size": "图标大小", - "advanced-settings": "高级设置", - "data-settings": "数据设置", - "limits": "限制", - "no-data-display-message": "没有数据时显示文本", - "data-page-size": "每个数据源的最大实体数", - "settings-component-not-found": "未找到设置的表单组件选择器'{{selector}}'", - "preview": "预览", - "set": "设置", - "set-message": "设置显示文本", - "advanced-title-style": "高级标题样式", - "card-style": "样式", - "text": "文本", - "background": "背景", - "advanced-widget-style": "高级部件样式", - "card-buttons": "按钮", - "show-card-buttons": "全屏按钮", - "card-border-radius": "边框半径", - "card-padding": "内边边距", - "card-appearance": "外观", "color": "颜色", - "tooltip": "文字提示", - "units-required": "单位必填", - "list-layout": "列表", - "layout": "布局", - "resize-options": "调整大小", - "resizable": "可调整大小", - "preserve-aspect-ratio": "保留纵横比例" - }, - "widget-type": { - "import": "导入部件", - "export": "导出部件", - "export-failed-error": "无法导出部件:{{error}}", - "widget-file": "部件文件", - "invalid-widget-file-error": "无法导入部件:无效的部件数据结构。" - }, - "widgets": { - "mobile-app-qr-code": { - "configuration-hint": "配置取决于平台中设置的移动应用二维码部件", - "get-it-on-google-play": "在Google Play上下载", - "download-on-the-app-store": "在App Store上下载" - }, - "action-button": { - "behavior": "行为", - "on-click": "单击", - "on-click-hint": "单击按钮时触发动作", - "first-button-click": "第一次按钮单击", - "first-button-click-hint": "按下第一个按钮时触发的动作", - "second-button-click": "第二次按钮单击", - "second-button-click-hint": "按下第二个按钮时触发的动作", - "button-click-hint": "按下部件时触发的动作" - }, - "command-button": { - "behavior": "行为", - "on-click": "单击", - "on-click-hint": "单击按钮时触发动作" - }, - "power-button": { - "behavior": "行为", - "power-on": "打开", - "power-on-hint": "打开电源执行的动作。", - "power-off": "关闭", - "power-off-hint": "关闭电源执行的动作。", - "on-label": "打开", - "off-label": "关闭", - "layout": "布局", - "layout-default": "默认", - "layout-simplified": "精简", - "layout-outlined": "默认", - "layout-default-volume": "默认", - "layout-simplified-volume": "精简", - "layout-outlined-volume": "默认", - "layout-default-icon": "默认.Icon", - "layout-simplified-icon": "精简.Icon", - "layout-outlined-icon": "默认.Icon", - "main": "前景色", - "background": "背景色", - "power-on-colors": "打开颜色", - "power-off-colors": "关闭颜色", - "disabled-colors": "禁用颜色", - "button": "按钮" - }, - "toggle-button": { - "behavior": "行为", - "checked": "打开", - "unchecked": "关闭", - "check": "打开状态", - "check-hint": "打开组件执行的动作。", - "uncheck": "关闭状态", - "uncheck-hint": "关闭组件执行的动作。", - "auto-scale": "自动", - "horizontal-fill": "水平填充", - "vertical-fill": "垂直填充", - "button-appearance": "外观" - }, - "segmented-button": { - "layout": "布局", - "layout-squared": "方形", - "layout-rounded": "圆角", - "card-border": "卡片边框", - "button-appearance": "按钮外观", - "first": "第一个", - "second": "第二个", - "color-styles": "颜色样式", - "selected": "已选中", - "unselected": "未选中" - }, - "button": { - "layout": "布局", - "outlined": "默认", - "filled": "填充", - "underlined": "强调", - "basic": "基础", - "auto-scale": "自动", - "label": "标签", - "icon": "图标", - "border-radius": "圆角", - "color-palette": "调色板", - "main": "前景色", - "background": "背景色", - "border": "边框", - "custom-styles": "自定义样式", - "clear-style": "清除样式", - "shadow": "阴影", - "enabled": "启用", - "disabled": "禁用", - "preview": "预览", - "copy-style-from": "复制" - }, - "button-state": { - "activated-state": "激活状态", - "activated-state-hint": "按钮在激活状态的触发条件。", - "disabled-state": "禁用状态", - "disabled-state-hint": "按钮在禁用状态的触发条件。", - "selected-state": "选中状态", - "selected-state-hint": "配置按钮选中状态的触发条件。", - "enabled": "启用", - "hovered": "悬停", - "pressed": "按压", - "activated": "激活", - "disabled": "禁用", - "initial": "初始状态", - "first": "第一个", - "second": "第二个" - }, - "background": { - "background": "背景颜色", - "background-settings": "背景设置", - "background-type-image": "上传图像", - "background-type-color": "纯色背景", - "image-url": "图像URL", - "overlay": "覆盖", - "enable-overlay": "启用覆盖", - "blur": "模糊", - "preview": "预览" - }, - "bar-chart": { - "bar-appearance": "外观", - "label-on-bar": "标签", - "value-on-bar": "数值", - "bar-chart-style": "样式", - "bar-axis": "轴" - }, - "polar-area-chart": { - "polar-axis": "极轴", - "start-angle": "角度", - "polar-area-chart-style": "图表样式" - }, - "battery-level": { - "layout": "布局", - "layout-vertical-solid": "垂直.实心", - "layout-horizontal-solid": "水平.实心", - "layout-vertical-divided": "垂直.分割", - "layout-horizontal-divided": "水平.分割", - "icon": "图标", - "value": "数值", - "auto-scale": "自动缩放", - "battery-level-color": "电量颜色", - "battery-shape-color": "形状颜色", - "battery-level-card-style": "电量卡片样式", - "sections-count": "分段数量" - }, - "signal-strength": { - "value": "数值", - "last-update": "上次更新", - "no-signal": "无信号", - "layout": "布局", - "layout-wifi": "Wi-Fi", - "layout-cellular-bar": "蜂窝网络", - "icon": "图标", - "date": "日期", - "active-bars-color": "有信号颜色", - "inactive-bars-color": "无信号颜色", - "signal-strength-card-style": "信号强度样式", - "no-signal-rssi-value": "无信号RSSI值" - }, - "status-widget": { - "behavior": "行为", - "layout": "布局", - "layout-default": "默认", - "layout-center": "居中", - "layout-icon": "图标", - "on": "打开", - "off": "关闭", - "label": "标签", - "status": "状态", - "icon": "图标", - "color-palette": "启用时调色板", - "disabled-color-palette": "禁用时调色板", - "primary": "基本", - "primary-color-hint": "图标和标签的颜色", - "secondary": "次要", - "secondary-color-hint": "状态颜色", - "background": "背景" - }, - "chart": { - "common-settings": "通用设置", - "enable-stacking-mode": "启用堆叠模式", - "selection": "时间范围选择", - "enable-selection-mode": "启用选择模式", - "line-shadow-size": "线条阴影大小", - "display-smooth-lines": "显示平滑(曲线)线条", - "default-bar-width": "非聚合数据的默认条形图宽度(毫秒)", - "bar-alignment": "Bar 对齐方式", - "bar-alignment-left": "左", - "bar-alignment-right": "右", - "bar-alignment-center": "居中", - "default-font": "默认字体", - "default-font-size": "默认字体大小", - "default-font-color": "默认字体颜色", - "thresholds-line-width": "所有阈值的默认线条宽度", - "tooltip-settings": "文字提示设置", - "tooltip": "文字提示", - "show-tooltip": "显示文字提示", - "hover-individual-points": "悬停在单个数据点上", - "show-cumulative-values": "在堆叠模式下显示累积值", - "hide-zero-false-values": "文字提示隐藏 zero/false", - "tooltip-value-format-function": "文字提示值的格式化函数", - "grid-settings": "网格线设置", - "show-vertical-lines": "显示垂直线条", - "show-horizontal-lines": "显示水平线条", - "grid-outline-border-width": "网格轮廓/边框宽度(px)", - "primary-color": "主要颜色", - "background-color": "背景颜色", - "ticks-color": "刻度颜色", - "xaxis-settings": "X轴设置", - "axis-title": "轴标题", - "xaxis-tick-labels-settings": "X轴刻度标签设置", - "show-tick-labels": "显示轴刻度标签", - "yaxis-settings": "Y轴设置", - "min-scale-value": "刻度上的最小值", - "max-scale-value": "刻度上的最大值", - "yaxis-tick-labels-settings": "Y轴刻度标签设置", - "tick-step-size": "刻度之间的步长", - "number-of-decimals": "要显示的小数位数", - "ticks-formatter-function": "刻度格式化函数", - "comparison-settings": "比较设置", - "enable-comparison": "启用比较", - "time-for-comparison": "比较期间", - "time-for-comparison-previous-interval": "上一个时间段(默认)", - "time-for-comparison-days": "一天前", - "time-for-comparison-weeks": "一周前", - "time-for-comparison-months": "一月前", - "time-for-comparison-years": "一年前", - "time-for-comparison-custom-interval": "自定义时间间隔", - "custom-interval-value": "自定义时间间隔值 (毫秒)", - "comparison-x-axis-settings": "比较X轴设置", - "axis-position": "轴位置", - "axis-position-top": "顶部 (默认)", - "axis-position-bottom": "底部", - "custom-legend-settings": "自定义设置图例", - "enable-custom-legend": "启用自定义图例 (这将允许您在键标签中使用属性/时间序列值)", - "key-name": "键名", - "key-name-required": "键名是必需的", - "key-type": "键类型", - "key-type-attribute": "属性", - "key-type-timeseries": "时间序列", - "label-keys-list": "要在标签中使用的键列表", - "no-label-keys": "未配置键", - "add-label-key": "添加新键", - "line-width": "线宽", - "color": "颜色", - "data-is-hidden-by-default": "默认情况下隐藏数据", - "disable-data-hiding": "禁用数据隐藏", - "remove-from-legend": "从图例中移除数据键", - "exclude-from-stacking": "从堆叠中排除(仅适用于'堆叠'模式)", - "line-settings": "线设置", - "show-line": "显示线条", - "fill-line": "填充线条", - "fill-line-opacity": "填充透明度", - "points-settings": "点设置", - "show-points": "显示点", - "points-line-width": "点的线宽", - "points-radius": "点的半径", - "point-shape": "形状", - "point-shape-circle": "圆", - "point-shape-cross": "十字", - "point-shape-diamond": "菱形", - "point-shape-square": "矩形", - "point-shape-triangle": "三角形", - "point-shape-custom": "自定义函数", - "point-shape-draw-function": "形状绘制函数", - "show-separate-axis": "显示分离的轴", - "axis-position-left": "左侧", - "axis-position-right": "右侧", - "thresholds": "阈值", - "no-thresholds": "未配置阈值", - "add-threshold": "添加新阈值", - "show-values-for-comparison": "显示历史比较值", - "comparison-values-label": "历史值标签", - "comparison-line-color": "对比线颜色", - "threshold-settings": "阈值设置", - "use-as-threshold": "使用遥测作为阈值", - "threshold-line-width": "阈值线宽", - "threshold-color": "阈值颜色", - "common-pie-settings": "常用饼图设置", - "radius": "半径", - "inner-radius": "内部半径", - "tilt": "倾斜", - "common-pie-settings-range-error": "值应在0到1的范围内", - "stroke-settings": "描边设置", - "width-pixels": "宽度(px)", - "show-labels": "显示标签", - "animation-settings": "动画设置", - "animated-pie": "启用饼图动画", - "border-settings": "边框设置", - "border-width": "边框宽度", - "border-color": "边框颜色", - "legend-settings": "设置图例", - "display-legend": "显示图例", - "labels-font-color": "标签字体颜色", - "series": "时间序列", - "add-series": "添加", - "series-settings": "设置", - "remove-series": "删除", - "no-series": "没有设置时间序列", - "no-series-error": "至少指定一个时间序列", - "chart-appearance": "图表外观", - "vertical-grid-lines": "垂直网格线", - "horizontal-grid-lines": "水平网格线", - "chart-background": "图表背景", - "grid-lines-color": "网格线颜色", - "border": "边框", - "axis": "轴", - "vertical-axis": "垂直轴", - "ticks": "刻度", - "horizontal-axis": "水平轴", - "shape-empty-circle": "空心圆形", - "shape-circle": "圆形", - "shape-rect": "长方形", - "shape-round-rect": "矩形", - "shape-triangle": "三角形", - "shape-diamond": "菱形", - "shape-pin": "Pin", - "shape-arrow": "箭头", - "shape-none": "无", - "line-type-solid": "实线", - "line-type-dashed": "虚线", - "line-type-dotted": "点画线", - "label-position-top": "上", - "label-position-bottom": "下", - "label-position-outside": "外部", - "label-position-inside": "内部", - "fill": "填充", - "fill-type-none": "无", - "fill-type-solid": "实线", - "fill-type-opacity": "透明度", - "fill-type-gradient": "渐变色", - "background": "背景色", - "opacity": "透明度", - "gradient-stops": "渐变值", - "gradient-start": "起始点", - "gradient-end": "结束点", - "animation": { - "animation": "动画", - "animation-threshold": "动画阈值", - "animation-duration": "动画时长", - "animation-easing": "动画方式", - "animation-delay": "动画延迟", - "update-animation-duration": "更新时长", - "update-animation-easing": "更新方式", - "update-animation-delay": "更新延迟" - }, - "chart-axis": { - "scale": "比例", - "scale-min": "最小", - "scale-max": "最大", - "scale-auto": "自动" - }, - "bar": { - "show-border": "显示边框", - "border-width": "边框宽度", - "border-radius": "边框圆角", - "bar-width": "宽度", - "label": "标签", - "label-hint": "在条形图上显示标签。", - "series-label-hint": "显示具有数值的标签。", - "label-background": "标签背景" - } - }, - "color": { - "color-settings": "颜色设置", - "color-type-constant": "固定值", - "color-type-gradient": "渐变色", - "color-type-range": "数值范围", - "color-type-function": "函数", - "color": "颜色", - "value-range": "数值范围", - "from": "从", - "to": "到", - "color-function": "颜色函数", - "copy-color-settings-from": "复制其他颜色设置", - "copy-from": "复制", - "settings-type": "类型设置", - "basic-mode": "基础", - "advanced-mode": "高级", - "entity-alias": "实体别名", - "entity-attribute": "实体属性", - "gradient-color": "渐变色", - "gradient-color-min": "颜色", - "gradient-start": "起始点", - "gradient-start-min": "起始", - "gradient-end": "结束点", - "gradient-end-min": "结束", - "start-value": "起始值", - "end-value": "结束植", - "gradient-type": "渐变类型" - }, - "dashboard-state": { - "dashboard-state-settings": "仪表板状态设置", - "dashboard-state": "仪表板状态 ID", - "autofill-state-layout": "自动填充状态布局默认高度", - "default-margin": "默认部件边距", - "default-background-color": "默认背景颜色", - "sync-parent-state-params": "与父仪表板同步状态参数" - }, - "date-range-navigator": { - "date-range-picker-settings": "日期范围选择设置", - "hide-date-range-picker": "隐藏日期范围选择", - "picker-one-panel": "日期范围选择板", - "picker-auto-confirm": "自动确认日期范围选择", - "picker-show-template": "日期范围选择显示模板", - "first-day-of-week": "一周的第一天", - "interval-settings": "间隔设置", - "hide-interval": "隐藏间隔", - "initial-interval": "初始间隔", - "interval-hour": "小时", - "interval-day": "天", - "interval-week": "周", - "interval-two-weeks": "2周", - "interval-month": "月", - "interval-three-months": "3个月", - "interval-six-months": "6个月", - "step-settings": "步长设置", - "hide-step-size": "隐藏步长", - "initial-step-size": "初始步长", - "hide-labels": "隐藏标签", - "use-session-storage": "使用会话存储", - "localizationMap": { - "Sun": "周日", - "Mon": "周一", - "Tue": "周二", - "Wed": "周三", - "Thu": "周四", - "Fri": "周五", - "Sat": "周六", - "Jan": "1月", - "Feb": "2月", - "Mar": "3月", - "Apr": "4月", - "May": "5月", - "Jun": "6月", - "Jul": "7月", - "Aug": "8月", - "Sep": "9月", - "Oct": "10月", - "Nov": "11月", - "Dec": "12月", - "January": "一月", - "February": "二月", - "March": "三月", - "April": "四月", - "June": "六月", - "July": "七月", - "August": "八月", - "September": "九月", - "October": "十月", - "November": "十一月", - "December": "十二月", - "Custom Date Range": "自定义日期范围", - "Date Range Template": "日期范围模板", - "Today": "今天", - "Yesterday": "昨天", - "This Week": "本星期", - "Last Week": "上星期", - "This Month": "本月", - "Last Month": "上月", - "Year": "年", - "This Year": "今年", - "Last Year": "去年", - "Date picker": "日期选择", - "Hour": "小时", - "Day": "天", - "Week": "周", - "2 weeks": "2周", - "Month": "月", - "3 months": "3个月", - "6 months": "6个月", - "Custom interval": "自定义间隔", - "Interval": "间隔", - "Step size": "步长", - "Ok": "确定" - } - }, - "doughnut": { - "doughnut-appearance": "外观", - "layout": "布局", - "layout-default": "默认", - "layout-with-total": "总计", - "central-total-value": "中心数值", - "doughnut-card-style": "样式" - }, - "entities-hierarchy": { - "hierarchy-data-settings": "层次数据设置", - "relations-query-function": "关系查询函数", - "has-children-function": "是否子级函数", - "node-state-settings": "状态设置", - "node-opened-function": "展开函数", - "node-disabled-function": "禁用函数", - "display-settings": "显示设置", - "node-icon-function": "图标函数", - "node-text-function": "文本函数", - "sort-settings": "排序设置", - "nodes-sort-function": "排序函数" - }, - "edge": { - "display-default-title": "显示默认标题" - }, - "gateway": { - "general-settings": "基础设置", - "widget-title": "部件标题", - "default-archive-file-name": "默认文件名", - "device-type-for-new-gateway": "新网关的设备类型", - "messages-settings": "消息设置", - "save-config-success-message": "配置保存成功消息", - "device-name-exists-message": "设备名称已经存在消消息", - "gateway-title": "网关标题", - "read-only": "只读", - "events-title": "事件标题", - "events-filter": "事件过滤", - "event-key-contains": "事件键包含...", - "show-connector": "显示连接器", - "connector-state-param-key": "连接器状态参数键", - "message": "消息", - "level": "层级", - "created-time": "创建时间" - }, - "gauge": { - "default-color": "默认颜色", - "radial-gauge-settings": "量规设置", - "ticks-settings": "刻度设置", - "min-value": "最小值", - "max-value": "最大值", - "min-value-short": "最小值", - "max-value-short": "最大值", - "start-ticks-angle": "起始角度", - "ticks-angle": "结束角度", - "major-ticks": "主刻度", - "major-ticks-count": "主刻度数量", - "major-ticks-color": "主刻度颜色", - "minor-ticks": "次刻度", - "minor-ticks-count": "次刻度数量", - "minor-ticks-color": "次刻度颜色", - "tick-numbers-font": "刻度数字字体", - "unit-title-settings": "单位设置", - "show-unit-title": "显示单位", - "unit-title": "单位", - "title-font": "字体", - "units-settings": "单位设置", - "units-font": "字体", - "value-box-settings": "数值框设置", - "show-value-box": "显示数值框", - "value-box": "数值框", - "value-int": "整数位数", - "value-text": "数值文本", - "value-text-shadow": "文本阴影", - "value-font": "数值字体", - "rect-stroke-color-start": "边框色渐变起始", - "rect-stroke-color-end": "边框色渐变结束", - "background-color": "背景颜色", - "shadow-color": "阴影颜色", - "value-box-rect-stroke-color": "数值框描边", - "value-box-rect-stroke-color-end": "数值框描边色渐变结束", - "value-box-background-color": "数值框背景颜色", - "value-box-shadow-color": "数值框阴影颜色", - "plate-settings": "背景设置", - "show-plate-border": "显示背景边框", - "plate-color": "背景颜色", - "needle-settings": "指针设置", - "needle-circle-size": "针座尺寸", - "needle-color": "指针颜色", - "needle-color-start": "指针颜色渐变起始", - "needle-color-end": "指针颜色渐变结束", - "needle-color-shadow-up": "指针上半部分阴影颜色", - "needle-color-shadow-down": "指针下半部分阴影颜色", - "highlights-settings": "高亮设置", - "highlights-width": "高亮宽度", - "highlights": "高亮", - "highlight-from": "起始值", - "highlight-to": "终止值", - "highlight-color": "颜色", - "no-highlights": "未配置高亮", - "add-highlight": "添加高亮", - "animation-settings": "动画设置", - "enable-animation": "启用动画", - "animation-duration-rule": "动画保持规则", - "animation-duration": "动画保持时间", - "animation-rule": "动画规则", - "animation-linear": "线性", - "animation-quad": "二次方", - "animation-quint": "五次方", - "animation-cycle": "循环", - "animation-bounce": "弹跳", - "animation-elastic": "弹性", - "animation-dequad": "二次方反向", - "animation-dequint": "五次方反向", - "animation-decycle": "循环反向", - "animation-debounce": "弹跳反向", - "animation-delastic": "弹性反向", - "linear-gauge-settings": "线性量规设置", - "bar-stroke": "柱状图描边", - "bar-stroke-width": "条形图描边宽度", - "bar-stroke-color": "条形图描边颜色", - "bar-background-color": "量规条形图背景颜色", - "bar-background-color-end": "条形图背景颜色-渐变结束", - "progress-bar-color": "进度条颜色", - "progress-bar": "进度条", - "progress-bar-color-start": "进度条颜色-渐变起始", - "progress-bar-color-end": "进度条颜色-渐变结束", - "major-ticks-names": "主刻度名称", - "show-stroke-ticks": "显示刻度描边", - "major-ticks-font": "主刻度字体", - "border-color": "边框颜色", - "border-width": "边框宽度", - "needle-circle": "指针圆圈", - "needle-circle-color": "指针圆圈颜色", - "animation-target": "动画目标", - "animation-target-needle": "指针", - "animation-target-plate": "背景板", - "common-settings": "通用量规设置", - "gauge-type": "量规类型", - "gauge-type-arc": "弧形", - "gauge-type-donut": "圆圈", - "gauge-type-horizontal-bar": "水平条形", - "gauge-type-vertical-bar": "垂直条形", - "donut-start-angle": "角度", - "bar-settings": "条形图设置", - "relative-bar-width": "条形宽度", - "neon-glow-brightness": "霓虹灯光效亮度(0-100)0-禁用效果", - "neon-glow-brightness-hint": "0-禁用效果", - "stripes-thickness": "条纹的厚度", - "stripes-thickness-hint": "0-无条纹", - "rounded-line-cap": "圆角线帽", - "bar-color-settings": "颜色设置", - "use-precise-level-color-values": "使用精确的颜色级别", - "bar-colors": "条形图颜色,从低到高", - "color": "颜色", - "no-bar-colors": "未配置条形图颜色", - "add-bar-color": "添加条形图颜色", - "from": "起始值", - "to": "终止值", - "fixed-level-colors": "使用边界值的条形图颜色", - "gauge-title-settings": "量规标题设置", - "show-gauge-title": "显示量规标题", - "gauge-title": "量规标题", - "gauge-title-font": "量规标题字体", - "unit-title-and-timestamp-settings": "单位标题和时间戳设置", - "show-timestamp": "显示值时间戳", - "timestamp-format": "时间格式", - "label-font": "显示在数值下方的标签字体", - "value-settings": "数值设置", - "show-value": "显示数值文本", - "min-max-settings": "最小/最大标签设置", - "show-min-max": "显示最小和最大值", - "min-max-font": "最小和最大标签字体", - "show-ticks": "显示刻度", - "tick-width": "宽度", - "tick-color": "颜色", - "tick-values": "刻度值", - "no-tick-values": "未配置刻度值", - "add-tick-value": "添加刻度值", - "gauge-appearance": "仪表盘外观", - "units-title": "单位标题", - "value": "数值", - "ticks": "刻度", - "arrow-and-scale-color": "默认颜色", - "scale-settings": "设置", - "scale": "尺寸", - "scale-color": "颜色", - "compass-appearance": "外观", - "label": "标签", - "labels": "标签", - "label-style": "标签样式", - "simple-gauge-type": "类型", - "gauge-bar-background": "量规背景", - "bar-color": "颜色", - "min-and-max-value": "最小和最大值", - "min-and-max-label": "最小和最大标签", - "font": "字体", - "tick-width-and-color": "刻度宽度和颜色", - "min-max-validation-text": "最大值必须大于最小值" - }, - "gpio": { - "pin": "引脚", - "label": "标签", - "row": "行", - "column": "列", - "color": "颜色", - "panel-settings": "面板设置", - "background-color": "背景颜色", - "gpio-switches": "GPIO开关", - "no-gpio-switches": "未配置GPIO开关", - "add-gpio-switch": "添加GPIO开关", - "gpio-status-request": "GPIO状态请求", - "method-name": "方法名称", - "method-body": "方法内容", - "gpio-status-change-request": "GPIO状态变更请求", - "parse-gpio-status-function": "解析GPIO状态函数", - "gpio-leds": "GPIO LED", - "no-gpio-leds": "未配置GPIO LED", - "add-gpio-led": "添加GPIO LED" - }, - "html-card": { - "html": "HTML", - "css": "CSS" - }, - "input-widgets": { - "attribute-not-allowed": "属性参数不能在此部件中使用", - "blocked-location": "在浏览器中阻止地理位置", - "claim-device": "声明设备", - "claim-failed": "声明设备失败!", - "claim-not-found": "未找到设备!", - "claim-successful": "设备已成功申领!", - "date": "日期", - "device-name": "设备名称", - "device-name-required": "设备名称必填", - "discard-changes": "放弃更改", - "entity-attribute-required": "实体属性必填", - "entity-coordinate-required": "纬度和经度两个字段都是必需的", - "entity-timeseries-required": "实体时间序列必填", - "get-location": "获取当前位置", - "invalid-date": "无效日期", - "latitude": "纬度", - "longitude": "经度", - "min-value-error": "最小值是{{value}}", - "max-value-error": "最大值是{{value}}", - "not-allowed-entity": "所选实体不能具有共享属性", - "no-attribute-selected": "未选择任何属性", - "no-datakey-selected": "未选择数据键", - "no-coordinate-specified": "未指定纬度/经度的数据键", - "no-entity-selected": "未选择实体", - "no-image": "没有图像", - "no-support-geolocation": "您的浏览器不支持地理定位", - "no-support-web-camera": "您的浏览器不支持摄像头", - "enable-https-use-widget": "请启用HTTPS以使用此部件", - "no-found-your-camera": "未找到摄像机", - "no-permission-camera": "权限被用户拒绝/此站点无权使用摄像机", - "no-timeseries-selected": "未选择时间序列值", - "secret-key": "密钥", - "secret-key-required": "密钥必填", - "switch-attribute-value": "切换实体属性值", - "switch-camera": "切换摄像机", - "switch-timeseries-value": "切换实体时间序列值", - "take-photo": "拍照", - "time": "时间", - "timeseries-not-allowed": "时间序列参数不能用于此部件", - "update-failed": "更新失败", - "update-successful": "更新成功", - "update-attribute": "更新属性", - "update-timeseries": "更新时间序列", - "value": "数值", - "general-settings": "通用设置", - "widget-title": "部件标题", - "claim-button-label": "认领按钮标签", - "show-secret-key-field": "显示'秘钥'输入字段", - "labels-settings": "标签设置", - "show-labels": "显示标签", - "device-name-label": "设备名称输入字段标签", - "secret-key-label": "秘钥输入字段标签", - "messages-settings": "消息设置", - "claim-device-success-message": "设备认领成功文本消息", - "claim-device-not-found-message": "设备未找到文本消息", - "claim-device-failed-message": "设备认领失败文本消息", - "claim-device-name-required-message": "'设备名称必填'错误消息", - "claim-device-secret-key-required-message": "'秘钥必填'错误消息", - "show-label": "显示标签", - "label": "标签", - "required": "必填", - "required-error-message": "'必填'错误消息", - "show-result-message": "显示结果消息", - "integer-field-settings": "整数字段设置", - "min-value": "最小值", - "max-value": "最大值", - "double-field-settings": "双精度字段设置", - "text-field-settings": "文本字段设置", - "min-length": "最小长度", - "max-length": "最大长度", - "checkbox-settings": "复选框设置", - "true-label": "选中标签", - "false-label": "未选中标签", - "image-input-settings": "图像输入设置", - "display-preview": "显示预览", - "display-clear-button": "显示清除按钮", - "display-apply-button": "显示应用按钮", - "display-discard-button": "显示放弃按钮", - "datetime-field-settings": "日期/时间字段设置", - "display-time-input": "显示时间输入", - "latitude-key-name": "纬度键名称", - "longitude-key-name": "经度键名称", - "show-get-location-button": "显示'获取当前位置'按钮", - "use-high-accuracy": "使用高精度", - "location-fields-settings": "位置字段设置", - "latitude-label": "纬度标签", - "longitude-label": "经度标签", - "input-fields-alignment": "输入字段对齐方式", - "input-fields-alignment-column": "列(默认)", - "input-fields-alignment-row": "行", - "layout": "布局", - "row-gap": "行之间的间距(像素)", - "column-gap": "列之间的间距(像素)", - "latitude-field-required": "纬度字段必填", - "longitude-field-required": "经度字段必填", - "attribute-settings": "属性设置", - "widget-mode": "部件模式", - "widget-mode-update-attribute": "更新属性", - "widget-mode-update-timeseries": "更新时间序列", - "attribute-scope": "属性范围", - "attribute-scope-server": "服务器属性", - "attribute-scope-shared": "共享属性", - "value-required": "值必填", - "image-settings": "图像设置", - "image-format": "图像格式", - "image-format-jpeg": "JPEG", - "image-format-png": "PNG", - "image-format-webp": "WEBP", - "image-quality": "使用有损压缩的图像质量,比如JPEG和WEBP", - "max-image-width": "最大图像宽度", - "max-image-height": "最大图像高度", - "action-buttons": "操作按钮", - "show-action-buttons": "显示操作按钮", - "update-all-values": "更新所有值,而不仅仅是修改过的值", - "save-button-label": "'保存'按钮标签", - "reset-button-label": "'撤销'按钮标签", - "group-settings": "分组设置", - "show-group-title": "显示字段组的标题,与不同实体相关联", - "group-title": "分组标题", - "fields-alignment": "字段对齐方式", - "fields-alignment-row": "行(默认)", - "fields-alignment-column": "列", - "fields-in-row": "每行字段数", - "option-value": "值(创建空选项时填写'null')", - "option-label": "标签", - "hide-input-field": "隐藏输入字段", - "datakey-type": "数据键类型", - "datakey-type-server": "服务器属性(默认)", - "datakey-type-shared": "共享属性", - "datakey-type-timeseries": "时间序列", - "datakey-value-type": "数据键值类型", - "datakey-value-type-string": "字符串", - "datakey-value-type-double": "双精度", - "datakey-value-type-integer": "整数", - "datakey-value-type-json": "JSON", - "datakey-value-type-boolean-checkbox": "布尔值(复选框)", - "datakey-value-type-boolean-switch": "布尔值(开关)", - "datakey-value-type-date-time": "日期和时间", - "datakey-value-type-date": "日期", - "datakey-value-type-time": "时间", - "datakey-value-type-select": "选择", - "datakey-value-type-color": "颜色", - "value-is-required": "值必填", - "ability-to-edit-attribute": "编辑属性的能力", - "ability-to-edit-attribute-editable": "可编辑(默认)", - "ability-to-edit-attribute-disabled": "禁用", - "ability-to-edit-attribute-readonly": "只读", - "disable-on-datakey-name": "在另一个数据键的值为假时禁用(指定数据键名称)", - "field-appearance": "字段外观", - "appearance-fill": "填充", - "appearance-outline": "轮廓", - "subscript-sizing": "下标大小", - "subscript-sizing-fixed": "固定", - "subscript-sizing-dynamic": "动态", - "slide-toggle-settings": "滑动开关设置", - "slide-toggle-label-position": "滑动开关标签位置", - "slide-toggle-label-position-after": "之后", - "slide-toggle-label-position-before": "之前", - "select-options": "选择选项", - "no-select-options": "没有配置选择选项", - "add-select-option": "添加选择选项", - "numeric-field-settings": "数值字段设置", - "step-interval": "值之间的步长间隔", - "error-messages": "错误消息", - "min-value-error-message": "'最小值'错误消息", - "max-value-error-message": "'最大值'错误消息", - "invalid-date-error-message": "'无效日期'错误消息", - "invalid-JSON-error-message": "'无效JSON'错误消息", - "icon-settings": "图标设置", - "dialog-editor-settings": "对话框编辑器设置", - "use-custom-icon": "使用自定义图标", - "input-cell-icon": "输入单元格前显示的图标", - "value-conversion-settings": "值转换设置", - "get-value-settings": "获取值设置", - "use-get-value-function": "使用getValue函数", - "get-value-function": "getValue函数", - "set-value-settings": "设置值设置", - "use-set-value-function": "使用setValue函数", - "set-value-function": "setValue函数", - "json-invalid": "JSON值格式无效", - "title": "标题", - "cancel-button-label": "'取消'按钮标签" - }, - "invalid-qr-code-text": "无效的二维码输入文本,输入应为字符串类型。", - "qr-code": { - "use-qr-code-text-function": "使用二维码文本函数", - "qr-code-text-pattern": "二维码文本模式(例如'${entityName} | ${keyName} - some text.')", - "qr-code-text-pattern-hint": "二维码文本模式将使用实体别名中的实体中找到的第一个键的值。", - "qr-code-text-pattern-required": "必须提供二维码文本模式。", - "qr-code-text-function": "二维码文本函数" - }, - "label-widget": { - "label-pattern": "模式", - "label-pattern-hint": "提示:例如文本${keyName}单位或${#<key index>}单位'", - "label-pattern-required": "必须提供模式", - "label-position": "位置(相对于背景的百分比)", - "x-pos": "X", - "y-pos": "Y", - "background-color": "背景颜色", - "font-settings": "字体设置", - "background-image": "背景图像", - "labels": "标签", - "no-labels": "无配置的标签", - "add-label": "添加标签" - }, - "navigation": { - "title": "标题", - "navigation-path": "导航路径", - "filter-type": "筛选类型", - "filter-type-all": "所有项目", - "filter-type-include": "包含项目", - "filter-type-exclude": "排除项目", - "items": "项目", - "enter-urls-to-filter": "输入要筛选的URL..." - }, - "persistent-table": { - "rpc-id": "RPC ID", - "message-type": "消息类型", - "method": "方法", - "params": "参数", - "created-time": "创建时间", - "expiration-time": "过期时间", - "retries": "重试次数", - "status": "状态", - "filter": "筛选", - "refresh": "刷新", - "add": "添加RPC请求", - "details": "详情", - "delete": "删除", - "delete-request-title": "删除持久化RPC请求", - "delete-request-text": "确定要删除请求吗?", - "details-title": "详情 RPC ID: ", - "additional-info": "附加信息", - "response": "响应", - "any-status": "任何状态", - "rpc-status-list": "RPC状态列表", - "no-request-prompt": "没有要显示的请求", - "send-request": "发送请求", - "add-title": "创建持久化RPC请求", - "method-error": "必须提供方法。", - "timeout-error": "最小超时值为5000(5秒)。", - "white-space-error": "不允许使用空格。", - "rpc-status": { - "QUEUED": "已排队", - "SENT": "已发送", - "DELIVERED": "已送达", - "SUCCESSFUL": "成功", - "TIMEOUT": "超时", - "EXPIRED": "已过期", - "FAILED": "失败" - }, - "rpc-search-status-all": "所有", - "message-types": { - "false": "双向", - "true": "单向" - }, - "general-settings": "常规设置", - "enable-filter": "启用筛选", - "enable-sticky-header": "滚动时显示标题栏", - "enable-sticky-action": "滚动时显示操作列", - "display-request-details": "显示请求详情", - "allow-send-request": "允许发送RPC请求", - "allow-delete-request": "允许删除请求", - "columns-settings": "列设置", - "display-columns": "要显示的列", - "column": "列", - "no-columns-found": "找不到列", - "no-columns-matching": "未找到'{{column}}'。" + "action": "操作", + "add-button": "添加按钮", + "no-action-buttons-configured": "未配置操作按钮", + "remove-action-button": "移除操作按钮", + "map-action-button": "地图操作按钮", + "button-requires": "按钮需要标签或图标" + }, + "common": { + "common-map-settings": "通用地图设置", + "fit-map-bounds": "调整地图范围以覆盖所有标记", + "default-map-center-position": "默认地图中心位置", + "default-map-zoom-level": "默认地图缩放级别", + "entities-limit": "加载实体数量限制" + }, + "layer": { + "label": "标签", + "layer": "图层", + "layers": "图层", + "map-layers": "地图图层", + "add-layer": "添加图层", + "layer-settings": "图层设置", + "remove-layer": "移除图层", + "no-layers": "未配置图层", + "roadmap": "路线图", + "satellite": "卫星图", + "hybrid": "混合图", + "reference": { + "reference-layer": "参考图层", + "no-layer": "无图层", + "openstreetmap-hybrid": "OpenStreetMap 混合", + "world-edition-hybrid": "World Edition 混合", + "enhanced-contrast-hybrid": "增强对比度混合" }, - "range-chart": { - "chart": "图表", - "data-zoom": "数据缩放", - "range-chart-appearance": "图表范围外观", - "range-colors": "范围颜色", - "out-of-range-color": "超出范围颜色", - "show-range-thresholds": "显示范围阈值", - "range-thresholds-settings": "范围阈值设置", - "fill-area": "填充区域", - "fill-area-opacity": "填充区域透明度", - "range-chart-style": "范围图样式" + "provider": { + "provider": "提供商", + "openstreet": { + "title": "OpenStreet", + "mapnik": "Mapnik", + "hot": "HOT", + "esri-street": "WorldStreetMap", + "esri-topo": "WorldTopoMap", + "esri-imagery": "WorldImagery", + "cartodb-positron": "Positron", + "cartodb-dark-matter": "DarkMatter" + }, + "google": { + "title": "Google", + "roadmap": "路线图", + "satellite": "卫星图", + "hybrid": "混合图", + "terrain": "地形图" + }, + "here": { + "title": "HERE", + "normal-day": "日间标准", + "normal-night": "夜间标准", + "hybrid-day": "日间混合", + "terrain-day": "日间地形" + }, + "tencent": { + "title": "腾讯", + "normal": "标准", + "satellite": "卫星图", + "terrain": "地形图" + }, + "custom": { + "title": "自定义", + "tile-url": "瓦片 URL" + } }, - "rpc": { - "value-settings": "值设置", - "initial-value": "初始值", - "retrieve-value-settings": "获取开/关值设置", - "retrieve-value-method": "使用方法获取值", - "retrieve-value-method-none": "不获取", - "retrieve-value-method-rpc": "调用RPC获取值方法", - "retrieve-value-method-attribute": "订阅属性获取值", - "retrieve-value-method-timeseries": "订阅时间序列获取值", - "attribute-value-key": "属性键", - "timeseries-value-key": "时间序列键", - "get-value-method": "RPC获取值方法", - "parse-value-function": "解析值的函数", - "update-value-settings": "更新值设置", - "set-value-method": "RPC设置值方法", - "convert-value-function": "转换值的函数", - "rpc-settings": "RPC设置", - "request-timeout": "RPC请求超时时间(毫秒)", - "persistent-rpc-settings": "持久化RPC设置", - "request-persistent": "持久化RPC请求", - "persistent-polling-interval": "持久化RPC命令响应的轮询间隔(毫秒)", - "common-settings": "常见设置", - "switch-title": "开关标题", - "show-on-off-labels": "显示开/关标签", - "slide-toggle-label": "滑动开关标签", - "label-position": "标签位置", - "label-position-before": "之前", - "label-position-after": "之后", - "slider-color": "滑块颜色", - "slider-color-primary": "主要", - "slider-color-accent": "强调", - "slider-color-warn": "警告", - "button-style": "按钮样式", - "button-raised": "凸起按钮", - "button-primary": "主要颜色", - "button-background-color": "按钮背景颜色", - "button-text-color": "按钮文字颜色", - "widget-title": "部件标题", - "button-label": "按钮标签", - "device-attribute-scope": "设备属性范围", - "server-attribute": "服务器属性", - "shared-attribute": "共享属性", - "device-attribute-parameters": "设备属性参数", - "is-one-way-command": "是单向命令", - "rpc-method": "RPC方法", - "rpc-method-params": "RPC方法参数", - "show-rpc-error": "显示RPC命令执行错误", - "led-title": "LED标题", - "led-color": "LED颜色", - "check-status-settings": "检查状态设置", - "perform-rpc-status-check": "执行RPC设备状态检查", - "retrieve-led-status-value-method": "使用方法获取LED状态值", - "led-status-value-attribute": "包含LED状态值的设备属性", - "led-status-value-timeseries": "包含LED状态值的设备时间序列", - "check-status-method": "RPC检查设备状态方法", - "parse-led-status-value-function": "解析LED状态值的函数", - "knob-title": "旋钮标题", - "min-value": "最小值", - "max-value": "最大值" + "credentials": { + "credentials": "凭据", + "api-key": "API 密钥" + } + }, + "overlays": { + "overlays": "覆盖层", + "overlays-hint": "配置地图实体的数据源、外观、行为、编辑选项和分组", + "trips": "行程", + "markers": "标记", + "polygons": "多边形", + "circles": "圆形", + "polylines": "折线" + }, + "data-layer": { + "source": "来源", + "filter": "过滤器", + "additional-data-keys": "附加数据键", + "additional-datasources": "附加数据源", + "additional-datasources-hint": "用于访问地图上未显示的实体的属性或遥测的数据源,可在地图覆盖层函数中使用。", + "more-datasources": "更多数据源", + "data-keys": "数据键", + "add-datasource": "添加数据源", + "no-datasources": "未配置数据源", + "remove-datasource": "移除数据源", + "behavior": "行为", + "on-click": "点击时", + "on-click-hint": "用户点击地图项目时触发的操作。", + "groups": "分组", + "groups-hint": "分配给覆盖层的分组名称列表,用于切换其在地图上的可见性。", + "color": "颜色", + "color-settings": "颜色设置", + "color-type-constant": "常量", + "color-type-range": "范围", + "color-type-function": "函数", + "color-range-source-key": "颜色范围来源键", + "color-range-source-key-required": "颜色范围来源键为必填项", + "color-range": "颜色范围", + "color-function": "颜色函数", + "label": "标签", + "tooltip": "提示框", + "pattern-type-pattern": "模式", + "pattern-type-function": "函数", + "label-pattern": "标签(模式示例:'${entityName}','${entityName}: (Text ${keyName} units.)')", + "label-function": "标签函数", + "tooltip-pattern": "提示框(例如 'Text ${keyName} units.' 或 Link text)", + "tooltip-function": "提示框函数", + "tooltip-trigger": "提示框触发方式", + "tooltip-trigger-click": "点击时显示提示框", + "tooltip-trigger-hover": "悬停时显示提示框", + "auto-close-tooltips": "自动关闭提示框", + "tooltip-offset": "提示框偏移", + "tooltip-offset-horizontal": "水平", + "tooltip-offset-vertical": "垂直", + "tooltip-tag-actions": "标签操作", + "add-tooltip-tag-action": "添加标签操作", + "edit-tooltip-tag-action": "编辑标签操作", + "remove-tooltip-tag-action": "移除标签操作", + "action-add": "添加", + "action-edit": "编辑", + "action-move": "移动", + "action-remove": "移除", + "edit-instruments": "工具", + "persist-location-attribute-scope": "持久化位置的属性范围", + "enable-snapping": "启用对齐到其他顶点以精确绘制", + "enable-snapping-hint": "自动将新点与现有形状对齐,使绘制更轻松、更准确。", + "drag-drop-mode": "拖放模式", + "trip": { + "no-trips": "未配置行程", + "add-trip": "添加行程", + "trip-configuration": "行程配置", + "remove-trip": "移除行程" }, - "maps": { - "select-entity": "选择实体", - "select-entity-hint": "提示:选择后在地图上点击以设置位置", - "tooltips": { - "placeMarker": "点击以放置'{{entityName}}'实体", - "firstVertex": "'{{entityName}}' 的多边形:点击以放置第一个点", - "firstVertex-cut": "点击以放置第一个点", - "continueLine": "'{{entityName}}' 的多边形:点击以继续绘制", - "continueLine-cut": "点击以继续绘制", - "finishLine": "点击任意现有标记以完成", - "finishPoly": "'{{entityName}}'的多边形:点击第一个标记以完成并保存", - "finishPoly-cut": "点击第一个标记以完成并保存", - "finishRect": "'{{entityName}}' 的多边形:点击以完成并保存", - "startCircle": "'{{entityName}}' 的圆:点击以放置圆心", - "finishCircle": "'{{entityName}}' 的圆:点击以完成圆形", - "placeCircleMarker": "点击以放置圆形标记" - }, - "actions": { - "finish": "完成", - "cancel": "取消", - "removeLastVertex": "移除最后一个点" - }, - "buttonTitles": { - "drawMarkerButton": "放置实体", - "drawPolyButton": "创建多边形", - "drawLineButton": "创建折线", - "drawCircleButton": "创建圆形", - "drawRectButton": "创建矩形", - "editButton": "编辑模式", - "dragButton": "拖放模式", - "cutButton": "切割多边形区域", - "deleteButton": "移除", - "drawCircleMarkerButton": "创建圆形标记", - "rotateButton": "旋转多边形" - }, - "map-provider-settings": "地图提供商设置", - "map-provider": "地图提供商", - "map-provider-google": "谷歌地图", - "map-provider-openstreet": "OpenStreet地图", - "map-provider-here": "HERE地图", - "map-provider-image": "图像地图", - "map-provider-tencent": "腾讯地图", - "openstreet-provider": "OpenStreet地图提供商", - "openstreet-provider-mapnik": "OpenStreetMap.Mapnik(默认)", - "openstreet-provider-hot": "OpenStreetMap.HOT", - "openstreet-provider-esri-street": "Esri.WorldStreetMap", - "openstreet-provider-esri-topo": "Esri.WorldTopoMap", - "openstreet-provider-esri-imagery": "Esri.WorldImagery", - "openstreet-provider-cartodb-positron": "CartoDB.Positron", - "openstreet-provider-cartodb-dark-matter": "CartoDB.DarkMatter", - "use-custom-provider": "使用自定义提供商", - "custom-provider-tile-url": "自定义提供商瓦片URL", - "google-maps-api-key": "谷歌地图API密钥", - "default-map-type": "默认地图类型", - "google-map-type-roadmap": "路线图", - "google-map-type-satelite": "卫星图", - "google-map-type-hybrid": "混合图", - "google-map-type-terrain": "地形图", - "map-layer": "地图图层", - "here-map-normal-day": "HERE.normalDay(默认)", - "here-map-normal-night": "HERE.normalNight", - "here-map-hybrid-day": "HERE.hybridDay", - "here-map-terrain-day": "HERE.terrainDay", - "credentials": "凭证", - "here-app-id": "HERE应用ID", - "here-app-code": "HERE应用代码", - "here-api-key": "HERE API密钥", - "here-use-new-version-api-3": "使用API版本3", - "tencent-maps-api-key": "腾讯地图API密钥", - "tencent-map-type-roadmap": "路线图", - "tencent-map-type-satelite": "卫星图", - "tencent-map-type-hybrid": "混合图", - "image-map-background": "图像地图背景", - "image-map-background-from-entity-attribute": "从实体属性获取图像地图背景", - "image-url-source-entity-alias": "图像URL源实体别名", - "image-url-source-entity-attribute": "图像URL源实体属性", - "common-map-settings": "常见地图设置", - "x-pos-key-name": "X位置键名", - "y-pos-key-name": "Y位置键名", - "latitude-key-name": "纬度键名", - "longitude-key-name": "经度键名", - "default-map-zoom-level": "默认地图缩放级别(0-20)", - "default-map-center-position": "默认地图中心位置(0,0)", - "disable-scroll-zooming": "禁用滚动缩放", - "disable-double-click-zooming": "禁用双击缩放", - "disable-zoom-control-buttons": "禁用缩放控制按钮", - "fit-map-bounds": "适应地图边界以覆盖所有标记", - "use-default-map-center-position": "使用默认地图中心位置", - "entities-limit": "加载实体的限制", - "markers-settings": "标记设置", - "marker-offset-x": "标记X偏移相对于位置乘以标记宽度", - "marker-offset-y": "标记Y偏移相对于位置乘以标记高度", - "position-function": "位置转换函数,应返回0到1之间的x,y坐标", - "draggable-marker": "可拖动的标记", - "label": "标签", - "show-label": "显示标签", - "use-label-function": "使用标签函数", - "label-pattern": "标签 (模式示例:'${entityName}', '${entityName}: (Text ${keyName} units.)' )", - "label-function": "标签函数", - "tooltip": "文字提示", - "show-tooltip": "显示文字提示", - "show-tooltip-action": "显示文字提示的操作", - "show-tooltip-action-click": "点击时显示文字提示(默认)", - "show-tooltip-action-hover": "悬停时显示文字提示", - "auto-close-tooltips": "自动关闭文字提示", - "use-tooltip-function": "使用文字提示函数", - "tooltip-pattern": "文字提示 (例如 'Text ${keyName} units.' or Link text')", - "tooltip-function": "文字提示函数", - "tooltip-offset-x": "文字提示X偏移相对于标记锚点乘以标记宽度", - "tooltip-offset-y": "文字提示Y偏移相对于标记锚点乘以标记高度", - "color": "颜色", - "use-color-function": "使用颜色函数", - "color-function": "颜色函数", - "marker-image": "标记图像", - "use-marker-image-function": "使用标记图像函数", - "custom-marker-image": "自定义标记图像", - "custom-marker-image-size": "自定义标记图像大小(px)", - "marker-image-function": "标记图像函数", - "marker-images": "标记图像", - "polygon-settings": "多边形设置", - "show-polygon": "显示多边形", - "polygon-key-name": "多边形键名", - "enable-polygon-edit": "启用多边形编辑", - "polygon-label": "多边形标签", - "show-polygon-label": "显示多边形标签", - "use-polygon-label-function": "使用多边形标签函数", - "polygon-label-pattern": "多边形标签 (模板示例:'${entityName}', '${entityName}: (Text ${keyName} units.)' )", - "polygon-label-function": "多边形标签函数", - "polygon-tooltip": "多边形文字提示", - "show-polygon-tooltip": "显示多边形文字提示", - "auto-close-polygon-tooltips": "自动关闭多边形文字提示", - "use-polygon-tooltip-function": "使用多边形文字提示函数", - "polygon-tooltip-pattern": "文字提示(例如'文本${keyName}单位'或连接文本')", - "polygon-tooltip-function": "多边形文字提示函数", - "polygon-color": "多边形颜色", - "polygon-opacity": "多边形不透明度", - "use-polygon-color-function": "使用多边形颜色函数", - "polygon-color-function": "多边形颜色函数", - "polygon-stroke": "多边形描边", - "stroke-color": "描边颜色", - "stroke-opacity": "描边不透明度", - "stroke-weight": "描边宽度", - "use-polygon-stroke-color-function": "使用多边形描边颜色函数", - "polygon-stroke-color-function": "多边形描边颜色函数", - "circle-settings": "圆设置", - "show-circle": "显示圆", - "circle-key-name": "圆键名", - "enable-circle-edit": "启用圆编辑", - "circle-label": "圆标签", - "show-circle-label": "显示圆标签", - "use-circle-label-function": "使用圆标签函数", - "circle-label-pattern": "圆标签 (模板示例:'${entityName}', '${entityName}: (Text ${keyName} units.)' )", - "circle-label-function": "圆标签函数", - "circle-tooltip": "圆文字提示", - "show-circle-tooltip": "显示圆文字提示", - "auto-close-circle-tooltips": "自动关闭圆文字提示", - "use-circle-tooltip-function": "使用圆文字提示函数", - "circle-tooltip-pattern": "文字提示(例如'文本${keyName}单位'或连接文本')", - "circle-tooltip-function": "圆文字提示函数", - "circle-fill-color": "圆填充颜色", - "circle-fill-color-opacity": "圆填充颜色不透明度", - "use-circle-fill-color-function": "使用圆填充颜色函数", - "circle-fill-color-function": "圆填充颜色函数", - "circle-stroke": "圆边框", - "use-circle-stroke-color-function": "使用圆边框颜色函数", - "circle-stroke-color-function": "圆边框颜色函数", - "markers-clustering-settings": "标记聚类设置", - "use-map-markers-clustering": "使用地图标记聚类", - "zoom-on-cluster-click": "点击集群时进行缩放", - "max-cluster-zoom": "当标记可以成为集群的一部分时的最大缩放级别(0-18)", - "max-cluster-radius-pixels": "簇所覆盖的最大半径(px)", - "cluster-zoom-animation": "缩放时显示标记动画", - "show-markers-bounds-on-cluster-mouse-over": "鼠标悬停在集群上时显示标记范围", - "spiderfy-max-zoom-level": "以最大缩放级别展开簇(以查看所有集群标记)", + "marker": { + "marker": "标记", + "latitude-key": "纬度键", + "longitude-key": "经度键", + "x-pos-key": "X 位置键", + "y-pos-key": "Y 位置键", + "latitude-key-required": "纬度键为必填项", + "longitude-key-required": "经度键为必填项", + "x-pos-key-required": "X 位置键为必填项", + "y-pos-key-required": "Y 位置键为必填项", + "no-markers": "未配置标记", + "add-marker": "添加标记", + "marker-configuration": "标记配置", + "remove-marker": "移除标记", + "marker-type": "标记类型", + "marker-type-shape": "形状", + "marker-type-icon": "图标", + "marker-type-image": "图片", + "shape": "形状", + "icon": "图标", + "image": "图片", + "marker-shapes": "标记形状", + "marker-icon": "标记图标", + "marker-appearance": "标记外观", + "marker-image": "标记图片", + "marker-image-type-image": "图片", + "marker-image-type-function": "函数", + "custom-marker-image-size": "自定义标记图片大小", + "marker-image-function": "标记图片函数", + "marker-images": "标记图片", + "marker-offset": "标记偏移", + "offset-horizontal": "水平", + "offset-vertical": "垂直", + "rotate-marker": "旋转标记", + "offset-angle": "偏移角度", + "position-conversion": "位置转换", + "position-conversion-function": "位置转换函数,应返回 x、y 坐标,每个值为 0 到 1 之间的双精度数", + "clustering": { + "use-map-markers-clustering": "使用地图标记聚合", + "zoom-on-cluster-click": "点击聚合时缩放", + "max-zoom": "标记可成为聚合一部分的最大缩放级别(0 - 18)", + "max-radius": "聚合覆盖的最大半径", + "zoom-animation": "缩放时标记的动画", + "bounds-on-cluster-mouse-over": "鼠标悬停聚合时的标记边界", + "spiderfy-max-zoom-level": "在最大缩放级别时展开(以查看所有聚合标记)", "load-optimization": "加载优化", - "cluster-chunked-loading": "使用块添加标记,以避免页面冻结", - "cluster-markers-lazy-load": "使用延迟加载添加标记", - "editor-settings": "编辑器设置", - "enable-snapping": "启用精确绘制时的吸附到其他顶点", - "init-draggable-mode": "以可拖动模式初始化地图", - "hide-all-edit-buttons": "隐藏所有编辑控制按钮", - "hide-draw-buttons": "隐藏绘制按钮", - "hide-edit-buttons": "隐藏编辑按钮", - "hide-remove-button": "隐藏删除按钮", - "route-map-settings": "路线地图设置", - "trip-animation-settings": "行程动画设置", - "normalization-step": "数据标准化步骤(毫秒)", - "tooltip-background-color": "文字提示背景颜色", - "tooltip-font-color": "文字提示字体颜色", - "tooltip-opacity": "文字提示不透明度(0-1)", - "auto-close-tooltip": "自动关闭文字提示", - "rotation-angle": "设置标记的附加旋转角度(度)", - "path-settings": "路径设置", - "path-color": "路径颜色", - "use-path-color-function": "使用路径颜色函数", - "path-color-function": "路径颜色函数", - "path-decorator": "路径装饰器", - "use-path-decorator": "使用路径装饰器", - "decorator-symbol": "装饰符号", - "decorator-symbol-arrow-head": "箭头", - "decorator-symbol-dash": "短划线", - "decorator-symbol-size": "装饰符号大小(px)", - "use-path-decorator-custom-color": "使用路径装饰器自定义颜色", - "decorator-custom-color": "装饰符号自定义颜色", - "decorator-offset": "装饰符号偏移量", - "end-decorator-offset": "结束装饰符号偏移量", - "decorator-repeat": "装饰符号重复", - "points-settings": "点设置", - "show-points": "显示点", - "point-color": "点颜色", - "point-size": "点大小(px)", - "use-point-color-function": "使用点颜色函数", - "point-color-function": "点颜色函数", - "use-point-as-anchor": "使用点作为锚点", - "point-as-anchor-function": "点作为锚点函数", - "independent-point-tooltip": "独立点文字提示", - "clustering-markers": "标记聚类", - "use-icon-create-function": "使用标记颜色函数", + "chunked-load": "使用分块添加标记以避免页面冻结", + "lazy-load": "使用懒加载添加标记", + "use-cluster-marker-color-function": "使用聚合标记颜色函数", "marker-color-function": "标记颜色函数" + }, + "edit": "编辑标记", + "remove-marker-for": "移除“{{entityName}}”的标记", + "place-marker": "放置标记", + "place-marker-hint": "点击以放置标记", + "place-marker-hint-with-entity": "点击以放置“{{entityName}}”实体" }, - "markdown": { - "use-markdown-text-function": "使用Markdown/HTML值函数", - "markdown-text-function": "Markdown/HTML值函数", - "markdown-text-pattern": "Markdown/HTML模板(使用变量的markdown或HTML,例如 '${entityName}或${keyName}。')", - "apply-default-markdown-style": "应用默认Markdown样式", - "markdown-css": "Markdown/HTML CSS" - }, - "simple-card": { - "label": "标签", - "label-position": "标签位置", - "label-position-left": "左侧", - "label-position-top": "顶部" - }, - "single-switch": { - "behavior": "行为", - "layout": "布局", - "layout-right": "居右", - "layout-left": "居左", - "layout-centered": "居中", - "auto-scale": "自动", - "label": "标签", - "icon": "图标", - "switch-color": "开关颜色", - "on": "打开", - "off": "关闭", - "disabled": "禁用", - "tumbler-color": "缩略图颜色", - "on-label": "打开标签", - "off-label": "闭关标签", - "switch": "开关" - }, - "slider": { - "behavior": "行为", - "initial-value": "初始值", - "initial-value-hint": "获取滑块的初始值。", - "on-value-change": "设置值", - "on-value-change-hint": "更改滑块数值时触发操作。", - "layout": "布局", - "layout-default": "默认", - "layout-extended": "扩展", - "layout-simplified": "精简", - "auto-scale": "自动", - "icon": "图标", - "value": "数值", - "range": "范围", - "min": "最小值", - "max": "最大值", - "range-ticks": "刻度范围", - "tick-marks": "刻度线", - "colors": "颜色", - "main": "前景色", - "background": "背景色", - "left-icon": "左边图标", - "right-icon": "右边图标", - "slider": "滑块" + "path": { + "path": "路径", + "path-decorator": "路径装饰器", + "decorator-symbol": "装饰器符号", + "decorator-symbol-arrow-head": "箭头", + "decorator-symbol-dash": "虚线", + "decorator-arrangement": "装饰器排列", + "decorator-offset": "起始", + "decorator-end-offset": "结束", + "decorator-repeat": "重复" }, - "value-card": { - "layout": "布局", - "layout-square": "正方形", - "layout-vertical": "垂直", - "layout-centered": "居中", - "layout-simplified": "简化", - "layout-horizontal": "水平", - "layout-horizontal-reversed": "水平翻转", - "label": "标签", - "icon": "图标", - "value": "数值", - "date": "日期", - "value-card-style": "数值卡片样式", - "auto-scale": "自动缩放" + "points": { + "points": "点", + "point-tooltip": "点提示框" }, - "label-card": { - "auto-scale": "自动", - "label": "标签", - "icon": "图标", - "label-card-style": "样式" + "shape": { + "fill": "填充", + "fill-type-color": "颜色", + "fill-type-stripe": "条纹", + "fill-type-image": "图片", + "color": "颜色", + "stripe": "条纹", + "image": "图片", + "stroke": "描边", + "fill-image": "填充图片", + "fill-image-type-image": "图片", + "fill-image-type-function": "函数", + "preserve-aspect-ratio": "保持宽高比", + "opacity": "不透明度", + "angle": "旋转角度", + "scale": "缩放", + "fill-image-function": "形状填充图片函数", + "fill-images": "形状填充图片", + "stripe-pattern": "条纹图案", + "first-stripe": "第一条纹", + "second-stripe": "第二条纹" }, - "label-value-card": { - "value": "数值", - "label-value-card-style": "标签数值样式" + "polygon": { + "polygon-key": "多边形键", + "polygon-key-required": "多边形键为必填项", + "no-polygons": "未配置多边形", + "add-polygon": "添加多边形", + "polygon-configuration": "多边形配置", + "remove-polygon": "移除多边形", + "edit": "编辑多边形", + "remove-polygon-for": "移除“{{entityName}}”的多边形", + "cut": "裁剪多边形区域", + "rotate": "旋转多边形", + "draw-rectangle": "绘制矩形", + "draw-polygon": "绘制多边形", + "polygon-place-first-point-cut-hint": "点击以放置第一个点", + "continue-polygon-cut-hint": "点击以继续绘制", + "finish-polygon-cut-hint": "点击第一个标记以完成并保存", + "polygon-place-first-point-hint": "多边形:点击以放置第一个点", + "polygon-place-first-point-hint-with-entity": "“{{entityName}}”的多边形:点击以放置第一个点", + "continue-polygon-hint": "多边形:点击以继续绘制", + "continue-polygon-hint-with-entity": "“{{entityName}}”的多边形:点击以继续绘制", + "finish-polygon-hint": "多边形:点击第一个标记以完成绘制", + "finish-polygon-hint-with-entity": "“{{entityName}}”的多边形:点击第一个标记以完成并保存", + "rectangle-place-first-point-hint": "矩形:点击以放置第一个点", + "rectangle-place-first-point-hint-with-entity": "“{{entityName}}”的矩形:点击以放置第一个点", + "finish-rectangle-hint": "矩形:点击以完成绘制", + "finish-rectangle-hint-with-entity": "“{{entityName}}”的矩形:点击以完成并保存" }, - "liquid-level-card": { - "layout-simple": "简单", - "layout-percentage": "百分比", - "layout-absolute": "绝对值", - "layout": "布局", - "background-overlay": "值背景叠加", - "total-volume": "总体积", - "total-volume-units": "总体积单位", - "tank": "容器", - "shape": "形状", - "datasource-units": "数据源单位", - "widget-units": "部件单位", - "decimals": "小数位数", - "liquid": "液体", - "liquid-color": "液体颜色", - "value": "数值", - "value-font": "值字体", - "level": "水位", - "last-update": "最后更新", - "shape-by-attribute": "按属性名称设置储罐形状", - "tooltip-background": "背景颜色", - "background-blur": "背景模糊", - "tank-color": "容器颜色", - "static": "静态", - "see-examples": "查看示例", - "attribute": "属性", - "shape-type": "类型", - "v-oval": "垂直椭圆", - "v-cylinder": "垂直圆柱体", - "v-capsule": "垂直胶囊", - "rectangle": "矩形", - "h-oval": "水平椭圆", - "h-ellipse": "水平椭圆", - "h-dish-ends": "水平盘形", - "h-cylinder": "水平圆柱体", - "h-capsule": "水平胶囊", - "h-elliptical_2_1": "水平2:1椭圆", - "icon": "图标", - "title": "标题", - "units": "单位", - "color-and-font": "颜色和字体", - "shape-attribute-name": "属性名称", - "total-volume-required": "需要总体积。", - "attribute-name-required": "需要属性名称。", - "attribute-key-not-set": "未设置属性'{{attributeName}}'键", - "attribute-key-invalid": "属性'{{attributeName}}'键无效" + "circle": { + "circle-key": "圆形键", + "circle-key-required": "圆形键为必填项", + "no-circles": "未配置圆形", + "add-circle": "添加圆形", + "circle-configuration": "圆形配置", + "remove-circle": "移除圆形", + "edit": "编辑圆形", + "remove-circle-for": "移除“{{entityName}}”的圆形", + "draw-circle": "绘制圆形", + "place-circle-center-hint-with-entity": "“{{entityName}}”的圆形:点击以放置圆心", + "place-circle-center-hint": "圆形:点击以放置圆心", + "finish-circle-hint-with-entity": "“{{entityName}}”的圆形:点击以完成并保存", + "finish-circle-hint": "圆形:点击以完成绘制" }, - "aggregated-value-card": { - "subtitle": "副标题", - "chart": "图表", - "values": "数值", - "value-appearance": "数值外观", - "position": "位置", - "position-center": "中心", - "position-right-top": "右上", - "position-right-bottom": "右下", - "position-left-top": "左上", - "position-left-bottom": "左下", - "font": "字体", - "color": "颜色", - "arrow": "箭头", - "display-up-down-arrow": "显示向上/向下箭头", - "add-value": "添加数值", - "remove-value": "移除数值", - "no-values": "未配置数值", - "aggregation": "聚合", - "aggregated-value-card-style": "聚合数值卡片样式", - "auto-scale": "自动缩放" + "polyline": { + "polyline-key": "折线键", + "polyline-key-required": "折线键为必填项", + "no-polylines": "未配置折线", + "add-polylines": "添加折线", + "polyline-configuration": "折线配置", + "remove-polyline": "移除折线", + "edit": "编辑折线", + "cut": "裁剪折线区域", + "rotate": "旋转折线", + "remove-polyline-for": "移除“{{entityName}}”的折线", + "draw-polyline": "绘制折线", + "polyline-place-first-point-hint-with-entity": "“{{entityName}}”的折线:点击以放置第一个点", + "polyline-place-first-point-hint": "折线:点击以放置第一个点", + "finish-polyline-hint-with-entity": "“{{entityName}}”的折线:点击以完成绘制", + "finish-polyline-hint": "折线:点击以完成绘制", + "polyline-place-first-point-cut-hint": "点击以放置第一个点", + "finish-polyline-cut-hint": "点击第一个标记以完成并保存" }, - "value-chart-card": { - "layout": "布局", - "layout-left": "左侧", - "layout-right": "右侧", - "auto-scale": "自动缩放", - "icon": "图标", - "value": "数值", - "chart": "图表", - "value-chart-card-style": "数值图表卡片样式" - }, - "progress-bar": { - "layout": "布局", - "layout-default": "默认", - "layout-simplified": "简化", - "auto-scale": "自动缩放", - "icon": "图标", - "value": "数值", - "range": "范围", - "min": "最小值", - "max": "最大值", - "range-ticks": "刻度范围", - "bar": "条形", - "bar-color": "条形颜色", - "bar-background": "条形背景色", - "progress-bar-card-style": "条形卡片样式" - }, - "notification": { - "max-notification-display": "显示的最大通知数量", - "counter": "计数提示", - "counter-hint": "如果启用部件标题将显示通知计数", - "icon": "图标", - "counter-value": "数值", - "counter-color": "颜色", - "notification-button": "通知按钮", - "button-view-all": "查看全部", - "button-filter": "过滤", - "type-filter": "类型", - "button-mark-read": "全部已读", - "notification-types": "通知类型", - "notification-type": "通知类型", - "search-type": "查询类型", - "any-type": "任意类型" - }, - "alarm-count": { - "alarm-count-card-style": "告警告计数卡片样式" - }, - "entity-count": { - "entity-count-card-style": "实体计数卡片样式" - }, - "count": { - "layout": "布局", - "layout-column": "列", - "layout-row": "行", - "label": "标签", - "icon": "图标", - "icon-background": "图标背景", - "value": "数值", - "chevron": "箭头", - "auto-scale": "自动缩放" - }, - "table": { - "common-table-settings": "常规设置", - "enable-search": "启用搜索", - "enable-sticky-header": "显示表头", - "enable-sticky-action": "显示操作列", - "hidden-cell-button-display-mode": "隐藏单元格按钮操作显示模式", - "show-empty-space-hidden-action": "显示空白区域而不是隐藏单元格按钮操作", - "dont-reserve-space-hidden-action": "不为隐藏的操作按钮预留空间", - "display-timestamp": "显示时间", - "display-pagination": "显示分页", - "default-page-size": "默认大小", - "use-entity-label-tab-name": "在选项卡名称中使用实体标签", - "hide-empty-lines": "隐藏空行", - "row-style": "行样式", - "use-row-style-function": "使用行样式函数", - "row-style-function": "行样式函数", - "cell-style": "单元格样式", - "use-cell-style-function": "使用单元格样式函数", - "cell-style-function": "单元格样式函数", - "cell-content": "单元格内容", - "use-cell-content-function": "使用单元格内容函数", - "cell-content-function": "单元格内容函数", - "show-latest-data-column": "显示最新数据列", - "latest-data-column-order": "最新数据列顺序", - "entities-table-title": "实体表标题", - "enable-select-column-display": "启用选择要显示的列", - "display-entity-name": "显示实体名称列", - "entity-name-column-title": "实体名称列标题", - "display-entity-label": "显示实体标签列", - "entity-label-column-title": "实体标签列标题", - "display-entity-type": "显示实体类型列", - "default-sort-order": "默认排序顺序", - "custom-title": "自定义表头标题", - "column-width": "列宽度(px或%)", - "default-column-visibility": "默认显示", - "column-visibility-visible": "显示", - "column-visibility-hidden": "隐藏", - "column-visibility-hidden-mobile": "在移动模式下隐藏", - "column-selection-to-display": "'显示列'中的列选择", - "column-selection-to-display-enabled": "启用", - "column-selection-to-display-disabled": "禁用", - "alarms-table-title": "告警表格标题", - "enable-alarms-selection": "启用告警选择", - "enable-alarms-search": "启用告警搜索", - "enable-alarm-filter": "启用告警过滤", - "display-alarm-details": "显示告警详细信息", - "allow-alarms-ack": "允许确认告警", - "allow-alarms-clear": "允许清除告警", - "display-alarm-activity": "显示活动告警", - "allow-alarms-assign": "允许分配告警", - "columns": "列", - "column-settings": "列设置", - "remove-column": "移除列", - "add-column": "添加列", - "no-columns": "没有配置列", - "columns-to-display": "显示的列", - "table-header": "表头", - "header-buttons": "表头按钮", - "table-buttons": "表格按钮", - "pagination": "分页", - "rows": "行", - "timeseries-column-error": "必须指定一个时间序序列", - "alarm-column-error": "必须指定一个告警数据列", - "table-tabs": "标签", - "show-cell-actions-menu-mobile": "在移动模式下显示单元格操作下拉菜单" - }, - "latest-chart": { - "total": "总数", - "auto-scale": "自动", - "clockwise-layout": "顺时针方向", - "sort-series": "标签排序", - "tooltip-value-type-absolute": "绝对", - "tooltip-value-type-percentage": "百分比" - }, - "pie-chart": { - "pie-chart-appearance": "外观", - "label": "标签", - "border": "标签", - "radius": "圆角", - "pie-chart-card-style": "样式" - }, - "radar-chart": { - "radar-appearance": "外观", - "shape": "形状", - "shape-polygon": "多边形", - "shape-circle": "圆形", - "color": "颜色", - "line": "线条", - "points": "点", - "points-label": "点标签", - "radar-axis": "雷达轴", - "axis-label": "轴标签", - "ticks-label": "刻度标签", - "radar-chart-style": "样式" - }, - "time-series-chart": { - "chart": "图表", - "chart-style": "样式", - "data-zoom": "数据缩放", - "stack-mode": "堆叠模式", - "stack-mode-hint": "图表上的堆栈具有同一单元的序列将放置在一起。", - "axes": "坐标", - "y-axes": "Y轴", - "line-type": "线条类型", - "line-width": "线条宽度", - "type-line": "线条", - "type-bar": "条形", - "type-point": "点", - "no-aggregation-bar-width-strategy": "非聚合数据的条形宽度", - "no-aggregation-bar-width-strategy-group": "分组", - "no-aggregation-bar-width-strategy-separate": "分隔", - "bar-group-width": "条形分组宽度", - "bar-width": "条形宽度", - "bar-width-relative": "百分比", - "bar-width-absolute": "绝对(ms)", - "comparison": { - "comparison": "数据比较", - "comparison-hint": "仅与历史数据一起比较!", - "show": "显示", - "settings": "比较设置", - "show-values-for-comparison": "显示历史数据进行比较", - "comparison-values-label": "数据键标签", - "comparison-values-label-auto": "自动", - "comparison-data-color": "颜色" - }, - "threshold": { - "thresholds": "阈值", - "source": "源", - "key-value": "键/值", - "no-thresholds": "未配置阈值", - "add-threshold": "添加", - "type-constant": "常量", - "type-latest-key": "键", - "type-entity": "实体", - "threshold-settings": "设置阈值", - "remove-threshold": "移除阈值", - "threshold-value-required": "阈值必填。", - "key-required": "键必填。", - "entity-key-required": "实体必填。", - "line-appearance": "线条外观", - "line-color": "线条颜色", - "start-symbol": "起始", - "end-symbol": "结束", - "symbol-size": "尺寸", - "label": "标签", - "label-position-start": "起始", - "label-position-middle": "中间", - "label-position-end": "结束", - "label-position-inside-start": "起始", - "label-position-inside-start-top": "起始上", - "label-position-inside-start-bottom": "起始下", - "label-position-inside-middle": "中间", - "label-position-inside-middle-top": "中间上", - "label-position-inside-middle-bottom": "中间下", - "label-position-inside-end": "结束", - "label-position-inside-end-top": "结束上", - "label-position-inside-end-bottom": "结束下", - "label-background": "标签背景" - }, - "state": { - "states": "状态", - "label": "标签", - "ticks-value": "刻度", - "source": "源", - "value-range": "值/范围", - "no-states": "未配置状态", - "add-state": "添加", - "type-constant": "常量", - "type-range": "范围", - "from": "从", - "to": "到", - "remove-state": "移除" - }, - "grid": { - "grid": "网格", - "background-color": "背景颜色", - "border": "边框" - }, - "axis": { - "axes": "坐标", - "x-axis": "X轴", - "y-axis": "Y轴", - "y-axis-settings": "Y轴设置", - "comparison-x-axis-settings": "比较X轴设置", - "remove-y-axis": "移除Y轴", - "id": "编号", - "label": "标签", - "position": "位置", - "position-left": "左", - "position-right": "右", - "position-top": "上", - "position-bottom": "下", - "tick-labels": "刻度标签", - "ticks-formatter-function": "刻度格式化函数", - "ticks-generator-function": "刻度生成函数", - "show-ticks": "显示刻度", - "show-line": "显示线条", - "show-split-lines": "显示分隔线", - "show-split-lines-x-axis-hint": "启用则显示垂直线。", - "show-split-lines-y-axis-hint": "启用则显示水平线。", - "ticks-interval": "刻度间隔", - "ticks-interval-hint": "强制设置轴的分段间隔。", - "split-number": "分隔号码", - "split-number-hint": "轴分成的多少段数量。", - "min": "最小值", - "max": "最大值", - "show": "显示", - "add-y-axis": "添加" - }, - "series": { - "legend-settings": "设置图例", - "show-in-legend": "显示图例", - "show-in-legend-hint": "在图例中显示系列名称和数据。", - "hidden-by-default": "默认情况下隐藏", - "hidden-by-default-hint": "默认情况下使系列隐藏在图例中。", - "series-type": "序列类型", - "type": "类型", - "type-line": "线条类型", - "type-bar": "条形", - "line": { - "line": "线条", - "show-line": "显示线条", - "step-line": "斜线", - "step-type-start": "起始", - "step-type-middle": "中间", - "step-type-end": "结束", - "smooth-line": "流畅" - }, - "point": { - "points": "点", - "show-points": "显示", - "point-label": "标签", - "point-label-hint": "显示具有超过序列点的值的标签。", - "point-label-background": "背景", - "point-shape": "形状", - "point-size": "尺寸" - } - } - }, - "wind-speed-direction": { - "layout": "布局", - "layout-default": "默认", - "layout-advanced": "高级", - "layout-simplified": "简化", - "values": "数值", - "wind-direction": "风向", - "center-value": "中心数值", - "icon": "图标", - "arrow": "箭头", - "ticks": "刻度", - "labels-type": "标签类型", - "directional-names": "方向名称", - "degrees": "度数", - "major-ticks": "主要刻度", - "minor-ticks": "次要刻度", - "wind-speed-direction-card-style": "风速和风向卡片样式", - "ticks-color": "刻度颜色", - "ticks-labels-type": "刻度标签类型", - "arrow-color": "箭头颜色" - }, - "value-source": { - "value-source": "值来源", - "predefined-value": "预定义值", - "entity-attribute": "从实体属性中获取的值", - "value": "数值", - "value-required": "数值必填。", - "key-required": "键必填。", - "entity-key-required": "实体必填。", - "source-entity-alias": "源实体别名", - "source-entity-attribute": "源实体属性", - "type-constant": "常量", - "type-latest-key": "键", - "type-entity": "实体" - }, - "rpc-state": { - "initial-state": "初始状态", - "initial-state-hint": "获取组件的初始状态(开/关)。", - "disabled-state": "禁用状态", - "disabled-state-hint": "配置禁用条件。", - "turn-on": "打开", - "turn-on-hint": "当滑块切换至“开”时触发的操作", - "turn-off": "关闭", - "turn-off-hint": "当滑块切换至“关闭”时触发的操作", - "on": "打开", - "off": "关闭", - "disabled": "禁用" - }, - "value-action": { - "do-nothing": "无任何动作", - "execute-rpc": "执行RPC", - "get-attribute": "获取属性", - "set-attribute": "设置属性", - "get-time-series": "获取遥测", - "get-alarm-status": "获取告警状态", - "get-dashboard-state": "获取仪表板状态", - "add-time-series": "添加遥测", - "execute-rpc-text": "执行RPC方法'{{methodName}}'", - "get-time-series-text": "使用遥测'{{key}}'", - "get-attribute-text": "使用属性'{{key}}'", - "get-alarm-status-text": "使用告警状态", - "get-dashboard-state-text": "使用仪表板状态", - "when-dashboard-state-is-text": "当仪表板状态为'{{state}}'", - "when-dashboard-state-function-is-text": "当(仪表板状态)是'{{state}}'", - "set-attribute-to-value-text": "设置'{{key}}'属性值:{{value}}", - "add-time-series-value-text": "添加'{{key}}'遥测值:{{value}}", - "set-attribute-text": "设置'{{key}}'属性", - "add-time-series-text": "添加'{{key}}'遥测", - "action": "动作", - "value": "数值", - "init-value-hint": "在设备发送数据之前将值设置。", - "method": "方法", - "method-name-required": "方法名称必填。", - "request-timeout-ms": "RPC请求超时(ms)", - "request-timeout-required": "RPC请求超时必填。", - "min-request-timeout-error": "请求超时值应更大或等于5000(5秒)。", - "request-persistent": "RPC请求持久化", - "persistent-polling-interval": "持久化的轮训间隔(ms)", - "persistent-polling-interval-hint": "轮询获取持久化RPC的命令响应", - "persistent-polling-interval-required": "轮询获取持久化必填。", - "min-persistent-polling-interval-error": "持续的轮询间隔值应>=1000 ms(1秒)。", - "attribute-scope": "作用域", - "attribute-key": "键名称", - "attribute-key-required": "键名称必填。", - "time-series-key": "键名称", - "time-series-key-required": "键名称必填。", - "action-result-converter": "动作转换", - "converter-none": "无", - "converter-function": "函数", - "converter-constant": "常量", - "converter-value": "数值", - "parse-value-function": "解析函数", - "state-when-result-is": "'{{state}}'结果是", - "parameters": "参数", - "convert-value-function": "转换函数", - "error": { - "target-entity-is-not-set": "目标实体未设置!", - "failed-to-perform-action": "无法执行{{ actionLabel }}操作。", - "invalid-attribute-scope": " {{entityType}}实体不支持{{scope}}属性作用域。" - } - }, - "widget-font": { - "font-settings": "字体设置", - "font-family": "字体", - "size": "大小", - "relative-font-size": "相对字体大小(百分比)", - "font-style": "样式", - "font-style-normal": "正常", - "font-style-italic": "斜体", - "font-style-oblique": "倾斜", - "font-weight": "粗细", - "font-weight-normal": "正常", - "font-weight-bold": "粗体", - "font-weight-bolder": "更粗", - "font-weight-lighter": "更轻", - "color": "颜色", - "shadow-color": "阴影颜色", - "preview": "预览", - "line-height": "行高", - "auto": "自动" - }, - "home": { - "no-data-available": "暂无数据" - }, - "system-info": { - "cpu": "CPU", - "ram": "内存", - "disk": "磁盘", - "cpu-warning-text": "CPU使用率过高为了避免系统故障,请优化系统性能。", - "cpu-critical-text": "CPU使用率严重过高为了避免系统故障,请优化系统性能。", - "ram-warning-text": "内存储备不足为了避免系统故障,请优化系统性能或增加内存大小。", - "ram-critical-text": "内存储备严重不足为了避免系统故障,请优化系统性能或增加内存大小。", - "disk-warning-text": "磁盘空间不足为了避免数据丢失,请释放或扩展磁盘空间。", - "disk-critical-text": "磁盘空间严重不足为了避免数据丢失,请释放或扩展磁盘空间。" - }, - "cluster-info": { - "service-id": "服务ID", - "service-type": "服务类型", - "no-data": "无数据" - }, - "transport-messages": { - "title": "传输消息", - "info": "来自设备的所有消息" + "select-entity": "选择实体", + "select-entity-hint": "提示:选择后点击地图以设置位置" + }, + "select-entity": "选择实体", + "select-entity-hint": "提示:选择后点击地图以设置位置", + "tooltips": { + "placeMarker": "点击以放置“{{entityName}}”实体", + "firstVertex": "“{{entityName}}”的多边形:点击以放置第一个点", + "firstVertex-cut": "点击以放置第一个点", + "continueLine": "“{{entityName}}”的多边形:点击以继续绘制", + "continueLine-cut": "点击以继续绘制", + "finishLine": "点击任意现有标记以完成", + "finishPoly": "“{{entityName}}”的多边形:点击第一个标记以完成并保存", + "finishPoly-cut": "点击第一个标记以完成并保存", + "finishRect": "“{{entityName}}”的多边形:点击以完成并保存", + "startCircle": "“{{entityName}}”的圆形:点击以放置圆心", + "finishCircle": "“{{entityName}}”的圆形:点击以完成圆形", + "placeCircleMarker": "点击以放置圆形标记" + }, + "actions": { + "finish": "完成", + "cancel": "取消", + "removeLastVertex": "移除最后一个点" + }, + "buttonTitles": { + "drawMarkerButton": "放置实体", + "drawPolyButton": "创建多边形", + "drawLineButton": "创建折线", + "drawCircleButton": "创建圆形", + "drawRectButton": "创建矩形", + "editButton": "编辑模式", + "dragButton": "拖放模式", + "cutButton": "裁剪多边形区域", + "deleteButton": "移除", + "drawCircleMarkerButton": "创建圆形标记", + "rotateButton": "旋转多边形" + }, + "map-provider-settings": "地图提供商设置", + "map-provider": "地图提供商", + "map-provider-google": "Google 地图", + "map-provider-openstreet": "OpenStreet 地图", + "map-provider-here": "HERE 地图", + "map-provider-image": "图片地图", + "map-provider-tencent": "腾讯地图", + "openstreet-provider": "OpenStreet 地图提供商", + "openstreet-provider-mapnik": "OpenStreetMap.Mapnik(默认)", + "openstreet-provider-hot": "OpenStreetMap.HOT", + "openstreet-provider-esri-street": "Esri.WorldStreetMap", + "openstreet-provider-esri-topo": "Esri.WorldTopoMap", + "openstreet-provider-esri-imagery": "Esri.WorldImagery", + "openstreet-provider-cartodb-positron": "CartoDB.Positron", + "openstreet-provider-cartodb-dark-matter": "CartoDB.DarkMatter", + "use-custom-provider": "使用自定义提供商", + "custom-provider-tile-url": "自定义提供商瓦片 URL", + "google-maps-api-key": "Google Maps API 密钥", + "default-map-type": "默认地图类型", + "google-map-type-roadmap": "路线图", + "google-map-type-satelite": "卫星图", + "google-map-type-hybrid": "混合图", + "google-map-type-terrain": "地形图", + "map-layer": "地图图层", + "here-map-normal-day": "HERE.normalDay(默认)", + "here-map-normal-night": "HERE.normalNight", + "here-map-hybrid-day": "HERE.hybridDay", + "here-map-terrain-day": "HERE.terrainDay", + "credentials": "凭据", + "here-app-id": "HERE 应用 ID", + "here-app-code": "HERE 应用代码", + "here-api-key": "HERE API 密钥", + "here-use-new-version-api-3": "使用 API 版本 3", + "tencent-maps-api-key": "腾讯地图 API 密钥", + "tencent-map-type-roadmap": "路线图", + "tencent-map-type-satelite": "卫星图", + "tencent-map-type-hybrid": "混合图", + "image-map-background": "图片地图背景", + "image-map-background-from-entity-attribute": "从实体属性获取图片地图背景", + "image-url-source-entity-alias": "图片 URL 来源实体别名", + "image-url-source-entity-attribute": "图片 URL 来源实体属性", + "common-map-settings": "通用地图设置", + "x-pos-key-name": "X 位置键名称", + "y-pos-key-name": "Y 位置键名称", + "latitude-key-name": "纬度键名称", + "longitude-key-name": "经度键名称", + "default-map-zoom-level": "默认地图缩放级别(0 - 20)", + "default-map-center-position": "默认地图中心位置(0,0)", + "disable-scroll-zooming": "禁用滚动缩放", + "disable-double-click-zooming": "禁用双击缩放", + "disable-zoom-control-buttons": "禁用缩放控制按钮", + "fit-map-bounds": "调整地图范围以覆盖所有标记", + "use-default-map-center-position": "使用默认地图中心位置", + "entities-limit": "加载实体数量限制", + "markers-settings": "标记设置", + "marker-offset-x": "标记 X 偏移(相对于位置乘以标记宽度)", + "marker-offset-y": "标记 Y 偏移(相对于位置乘以标记高度)", + "position-function": "位置转换函数,应返回 x、y 坐标,每个值为 0 到 1 之间的双精度数", + "draggable-marker": "可拖动标记", + "label": "标签", + "show-label": "显示标签", + "use-label-function": "使用标签函数", + "label-pattern": "标签(模式示例:'${entityName}','${entityName}: (Text ${keyName} units.)')", + "label-function": "标签函数", + "tooltip": "提示框", + "show-tooltip": "显示提示框", + "show-tooltip-action": "显示提示框的操作", + "show-tooltip-action-click": "点击时显示提示框(默认)", + "show-tooltip-action-hover": "悬停时显示提示框", + "auto-close-tooltips": "自动关闭提示框", + "use-tooltip-function": "使用提示框函数", + "tooltip-pattern": "提示框(例如 'Text ${keyName} units.' 或 Link text')", + "tooltip-function": "提示框函数", + "tooltip-offset-x": "提示框 X 偏移(相对于标记锚点乘以标记宽度)", + "tooltip-offset-y": "提示框 Y 偏移(相对于标记锚点乘以标记高度)", + "color": "颜色", + "use-color-function": "使用颜色函数", + "color-function": "颜色函数", + "marker-image": "标记图片", + "use-marker-image-function": "使用标记图片函数", + "custom-marker-image": "自定义标记图片", + "custom-marker-image-size": "自定义标记图片大小(像素)", + "marker-image-function": "标记图片函数", + "marker-images": "标记图片", + "polygon-settings": "多边形设置", + "show-polygon": "显示多边形", + "polygon-key-name": "多边形键名称", + "enable-polygon-edit": "启用多边形编辑", + "polygon-label": "多边形标签", + "show-polygon-label": "显示多边形标签", + "use-polygon-label-function": "使用多边形标签函数", + "polygon-label-pattern": "多边形标签(模式示例:'${entityName}','${entityName}: (Text ${keyName} units.)')", + "polygon-label-function": "多边形标签函数", + "polygon-tooltip": "多边形提示框", + "show-polygon-tooltip": "显示多边形提示框", + "auto-close-polygon-tooltips": "自动关闭多边形提示框", + "use-polygon-tooltip-function": "使用多边形提示框函数", + "polygon-tooltip-pattern": "提示框(例如 'Text ${keyName} units.' 或 Link text')", + "polygon-tooltip-function": "多边形提示框函数", + "polygon-color": "多边形颜色", + "polygon-opacity": "多边形不透明度", + "use-polygon-color-function": "使用多边形颜色函数", + "polygon-color-function": "多边形颜色函数", + "polygon-stroke": "多边形描边", + "stroke-color": "描边颜色", + "stroke-opacity": "描边不透明度", + "stroke-weight": "描边粗细", + "use-polygon-stroke-color-function": "使用多边形描边颜色函数", + "polygon-stroke-color-function": "多边形描边颜色函数", + "circle-settings": "圆形设置", + "show-circle": "显示圆形", + "circle-key-name": "圆形键名称", + "enable-circle-edit": "启用圆形编辑", + "circle-label": "圆形标签", + "show-circle-label": "显示圆形标签", + "use-circle-label-function": "使用圆形标签函数", + "circle-label-pattern": "圆形标签(模式示例:'${entityName}','${entityName}: (Text ${keyName} units.)')", + "circle-label-function": "圆形标签函数", + "circle-tooltip": "圆形提示框", + "show-circle-tooltip": "显示圆形提示框", + "auto-close-circle-tooltips": "自动关闭圆形提示框", + "use-circle-tooltip-function": "使用圆形提示框函数", + "circle-tooltip-pattern": "提示框(例如 'Text ${keyName} units.' 或 Link text')", + "circle-tooltip-function": "圆形提示框函数", + "circle-fill-color": "圆形填充颜色", + "circle-fill-color-opacity": "圆形填充颜色不透明度", + "use-circle-fill-color-function": "使用圆形填充颜色函数", + "circle-fill-color-function": "圆形填充颜色函数", + "circle-stroke": "圆形描边", + "use-circle-stroke-color-function": "使用圆形描边颜色函数", + "circle-stroke-color-function": "圆形描边颜色函数", + "markers-clustering-settings": "标记聚合设置", + "use-map-markers-clustering": "使用地图标记聚合", + "zoom-on-cluster-click": "点击聚合时缩放", + "max-cluster-zoom": "标记可成为聚合一部分的最大缩放级别(0 - 18)", + "max-cluster-radius-pixels": "聚合覆盖的最大半径(像素)", + "cluster-zoom-animation": "缩放时显示标记动画", + "show-markers-bounds-on-cluster-mouse-over": "鼠标悬停聚合时显示标记边界", + "spiderfy-max-zoom-level": "在最大缩放级别时展开(以查看所有聚合标记)", + "load-optimization": "加载优化", + "cluster-chunked-loading": "使用分块添加标记以避免页面冻结", + "cluster-markers-lazy-load": "使用懒加载添加标记", + "editor-settings": "编辑器设置", + "enable-snapping": "启用对齐到其他顶点以精确绘制", + "init-draggable-mode": "以拖拽模式初始化地图", + "hide-all-edit-buttons": "隐藏所有编辑控制按钮", + "hide-draw-buttons": "隐藏绘制按钮", + "hide-edit-buttons": "隐藏编辑按钮", + "hide-remove-button": "隐藏移除按钮", + "route-map-settings": "路线地图设置", + "trip-animation-settings": "行程动画设置", + "normalization-step": "数据标准化步长(毫秒)", + "tooltip-background-color": "提示框背景颜色", + "tooltip-font-color": "提示框字体颜色", + "tooltip-opacity": "提示框不透明度(0-1)", + "auto-close-tooltip": "自动关闭提示框", + "rotation-angle": "设置标记的附加旋转角度(度)", + "path-settings": "路径设置", + "path-color": "路径颜色", + "use-path-color-function": "使用路径颜色函数", + "path-color-function": "路径颜色函数", + "path-decorator": "路径装饰器", + "use-path-decorator": "使用路径装饰器", + "decorator-symbol": "装饰器符号", + "decorator-symbol-arrow-head": "箭头", + "decorator-symbol-dash": "虚线", + "decorator-symbol-size": "装饰器符号大小(像素)", + "use-path-decorator-custom-color": "使用路径装饰器自定义颜色", + "decorator-custom-color": "装饰器自定义颜色", + "decorator-offset": "装饰器偏移", + "end-decorator-offset": "结束装饰器偏移", + "decorator-repeat": "装饰器重复", + "points-settings": "点设置", + "show-points": "显示点", + "point-color": "点颜色", + "point-size": "点大小(像素)", + "use-point-color-function": "使用点颜色函数", + "point-color-function": "点颜色函数", + "use-point-as-anchor": "使用点作为锚点", + "point-as-anchor-function": "点作为锚点函数", + "independent-point-tooltip": "独立点提示框", + "clustering-markers": "标记聚合", + "use-icon-create-function": "使用标记颜色函数", + "marker-color-function": "标记颜色函数" + }, + "markdown": { + "use-markdown-text-function": "使用 Markdown/HTML 值函数", + "markdown-text-function": "Markdown/HTML 值函数", + "markdown-text-pattern": "Markdown/HTML 模式(Markdown 或带变量的 HTML,例如 '${entityName} or ${keyName} - some text.')", + "apply-default-markdown-style": "应用默认 Markdown 样式", + "markdown-css": "Markdown/HTML CSS" + }, + "simple-card": { + "label": "标签", + "label-position": "标签位置", + "label-position-left": "左侧", + "label-position-top": "顶部" + }, + "single-switch": { + "behavior": "行为", + "layout": "布局", + "layout-right": "右侧", + "layout-left": "左侧", + "layout-centered": "居中", + "auto-scale": "自动缩放", + "label": "标签", + "icon": "图标", + "switch-color": "开关颜色", + "on": "开", + "off": "关", + "disabled": "禁用", + "tumbler-color": "拨动器颜色", + "on-label": "开启标签", + "off-label": "关闭标签", + "switch": "开关" + }, + "slider": { + "behavior": "行为", + "initial-value": "初始值", + "initial-value-hint": "获取滑块初始值的操作。", + "on-value-change": "值变更时", + "on-value-change-hint": "滑块值变更时触发的操作。", + "layout": "布局", + "layout-default": "默认", + "layout-extended": "扩展", + "layout-simplified": "简化", + "auto-scale": "自动缩放", + "icon": "图标", + "value": "值", + "range": "范围", + "min": "最小", + "max": "最大", + "range-ticks": "范围刻度", + "tick-marks": "刻度标记", + "colors": "颜色", + "main": "主要", + "background": "背景", + "left-icon": "左侧图标", + "right-icon": "右侧图标", + "slider": "滑块" + }, + "value-card": { + "layout": "布局", + "layout-square": "方形", + "layout-vertical": "垂直", + "layout-centered": "居中", + "layout-simplified": "简化", + "layout-horizontal": "水平", + "layout-horizontal-reversed": "水平反向", + "label": "标签", + "icon": "图标", + "value": "值", + "date": "日期", + "value-card-style": "值卡片样式", + "auto-scale": "自动缩放" + }, + "label-card": { + "auto-scale": "自动缩放", + "label": "标签", + "icon": "图标", + "label-card-style": "标签卡片样式" + }, + "label-value-card": { + "value": "值", + "label-value-card-style": "标签和值卡片样式" + }, + "liquid-level-card": { + "layout-simple": "简单", + "layout-percentage": "百分比", + "layout-absolute": "绝对值", + "layout": "布局", + "background-overlay": "值背景覆盖", + "total-volume": "总容量", + "total-volume-units": "总容量单位", + "tank": "容器", + "shape": "形状", + "datasource-units": "源单位", + "widget-units": "部件单位", + "decimals": "小数位数", + "liquid": "液体", + "liquid-color": "液体颜色", + "value": "值", + "value-font": "值字体", + "level": "液位", + "last-update": "最后更新", + "shape-by-attribute": "通过属性名称设置容器形状", + "tooltip-background": "背景颜色", + "background-blur": "背景模糊", + "tank-color": "容器颜色", + "static": "静态", + "see-examples": "查看示例", + "attribute": "属性", + "shape-type": "类型", + "v-oval": "垂直椭圆", + "v-cylinder": "垂直圆柱", + "v-capsule": "垂直胶囊", + "rectangle": "矩形", + "h-oval": "水平椭圆", + "h-ellipse": "水平椭圆形", + "h-dish-ends": "水平碟形封头", + "h-cylinder": "水平圆柱", + "h-capsule": "水平胶囊", + "h-elliptical_2_1": "水平 2:1 椭圆形", + "icon": "卡片图标", + "title": "卡片标题", + "units": "单位", + "color-and-font": "颜色和字体", + "shape-attribute-name": "属性名称", + "total-volume-required": "总容量为必填项。", + "attribute-name-required": "属性名称为必填项。", + "attribute-key-not-set": "属性“{{attributeName}}”键未设置", + "attribute-key-invalid": "属性“{{attributeName}}”键无效" + }, + "aggregated-value-card": { + "subtitle": "副标题", + "chart": "图表", + "values": "值", + "value-appearance": "值外观", + "position": "位置", + "position-center": "居中", + "position-right-top": "右上", + "position-right-bottom": "右下", + "position-left-top": "左上", + "position-left-bottom": "左下", + "font": "字体", + "color": "颜色", + "arrow": "箭头", + "display-up-down-arrow": "显示上/下箭头", + "add-value": "添加值", + "remove-value": "移除值", + "no-values": "未配置值", + "aggregation": "聚合", + "aggregated-value-card-style": "聚合值卡片样式", + "auto-scale": "自动缩放" + }, + "value-chart-card": { + "layout": "布局", + "layout-left": "左", + "layout-right": "右", + "auto-scale": "自动缩放", + "icon": "图标", + "value": "值", + "chart": "图表", + "value-chart-card-style": "值图表卡片样式" + }, + "progress-bar": { + "layout": "布局", + "layout-default": "默认", + "layout-simplified": "简化", + "auto-scale": "自动缩放", + "icon": "图标", + "value": "值", + "range": "范围", + "min": "最小值", + "max": "最大值", + "range-ticks": "范围刻度", + "bar": "条形", + "bar-color": "条形颜色", + "bar-background": "条形背景", + "progress-bar-card-style": "进度条卡片样式" + }, + "notification": { + "max-notification-display": "最大通知显示数量", + "counter": "计数器", + "counter-hint": "当启用“部件标题”时将显示计数器", + "icon": "图标", + "counter-value": "值", + "counter-color": "颜色", + "notification-button": "通知按钮", + "button-view-all": "查看全部", + "button-filter": "筛选", + "type-filter": "类型筛选", + "button-mark-read": "全部标记为已读", + "notification-types": "通知类型", + "notification-type": "通知类型", + "search-type": "搜索类型", + "any-type": "任意类型" + }, + "alarm-count": { + "alarm-count-card-style": "告警计数卡片样式" + }, + "entity-count": { + "entity-count-card-style": "实体计数卡片样式" + }, + "count": { + "layout": "布局", + "layout-column": "列", + "layout-row": "行", + "label": "标签", + "icon": "图标", + "icon-background": "图标背景", + "value": "值", + "chevron": "箭头指示", + "auto-scale": "自动缩放" + }, + "table": { + "common-table-settings": "通用表格设置", + "enable-search": "启用搜索", + "enable-sticky-header": "始终显示表头", + "enable-sticky-action": "始终显示操作列", + "hidden-cell-button-display-mode": "隐藏单元格按钮操作显示模式", + "show-empty-space-hidden-action": "显示空白代替隐藏的单元格按钮操作", + "dont-reserve-space-hidden-action": "不为隐藏的操作按钮预留空间", + "display-timestamp": "时间戳", + "timestamp-column-name": "时间戳", + "display-pagination": "显示分页", + "default-page-size": "默认页面大小", + "page-step-settings": "分页步长设置", + "page-step-count": "步数", + "page-step-increment": "步长增量", + "page-step-count-format-message": "应为 1 到 100 之间的整数值。", + "page-step-increment-format-message": "应为大于或等于 1 的整数值。", + "use-entity-label-tab-name": "在标签页名称中使用实体标签", + "hide-empty-lines": "隐藏空行", + "row-style": "行样式", + "use-row-style-function": "使用行样式函数", + "row-style-function": "行样式函数", + "cell-style": "单元格样式", + "use-cell-style-function": "使用单元格样式函数", + "cell-style-function": "单元格样式函数", + "cell-content": "单元格内容", + "use-cell-content-function": "使用单元格内容函数", + "cell-content-function": "单元格内容函数", + "show-latest-data-column": "显示最新数据列", + "latest-data-column-order": "最新数据列顺序", + "entities-table-title": "实体表格标题", + "enable-select-column-display": "启用选择显示列", + "display-entity-name": "显示实体名称列", + "entity-name-column-title": "实体名称列标题", + "display-entity-label": "显示实体标签列", + "entity-label-column-title": "实体标签列标题", + "display-entity-type": "显示实体类型列", + "default-sort-order": "默认排序", + "custom-title": "自定义表头标题", + "column-width": "列宽(px 或 %)", + "default-column-visibility": "默认列可见性", + "column-visibility-visible": "可见", + "column-visibility-hidden": "隐藏", + "column-visibility-hidden-mobile": "在移动模式下隐藏", + "column-selection-to-display": "在“显示列”中的列选择", + "column-selection-to-display-enabled": "启用", + "column-selection-to-display-disabled": "禁用", + "alarms-table-title": "告警表格标题", + "enable-alarms-selection": "启用告警选择", + "enable-alarms-search": "启用告警搜索", + "enable-alarm-filter": "启用告警筛选", + "display-alarm-details": "显示告警详情", + "allow-alarms-ack": "允许告警确认", + "allow-alarms-clear": "允许告警清除", + "display-alarm-activity": "显示告警活动", + "allow-alarms-assign": "允许告警分配", + "columns": "列", + "column-settings": "列设置", + "remove-column": "移除列", + "add-column": "添加列", + "no-columns": "未配置列", + "columns-to-display": "显示列", + "table-header": "表头", + "header-buttons": "表头按钮", + "table-buttons": "表格按钮", + "pagination": "分页", + "rows": "行", + "timeseries-column-error": "至少应指定一个时间序列列", + "alarm-column-error": "至少应指定一个告警列", + "table-tabs": "表格标签页", + "show-cell-actions-menu-mobile": "在移动模式下显示单元格操作下拉菜单", + "disable-sorting": "禁用排序", + "sort-by": "标签页排序方式", + "sort-timestamp-option": "创建时间" + }, + "latest-chart": { + "total": "总计", + "auto-scale": "自动缩放", + "clockwise-layout": "顺时针布局", + "sort-series": "按标签排序系列", + "tooltip-value-type-absolute": "绝对值", + "tooltip-value-type-percentage": "百分比" + }, + "pie-chart": { + "pie-chart-appearance": "饼图外观", + "label": "标签", + "border": "边框", + "radius": "半径", + "pie-chart-card-style": "饼图卡片样式" + }, + "radar-chart": { + "radar-appearance": "雷达图外观", + "shape": "形状", + "shape-polygon": "多边形", + "shape-circle": "圆形", + "color": "颜色", + "line": "线条", + "points": "数据点", + "points-label": "数据点标签", + "radar-axis": "雷达轴", + "axis-label": "轴标签", + "ticks-label": "刻度标签", + "radar-chart-style": "雷达图样式", + "max-axes-scaling": "最大轴缩放", + "max-axes-scaling-hint": "选择每个雷达轴是有独立的最大值(独立)还是共享基于部件数据集的所有轴中的最大值(共用)。", + "separate": "独立", + "common": "共用" + }, + "time-series-chart": { + "chart": "图表", + "chart-style": "图表样式", + "data-zoom": "数据缩放", + "stack-mode": "堆叠模式", + "stack-mode-hint": "在图表上堆叠系列。具有相同单位的系列将叠放在一起。", + "axes": "轴", + "y-axes": "Y 轴", + "line-type": "线条类型", + "line-width": "线条宽度", + "type-line": "折线", + "type-bar": "柱状", + "type-point": "散点", + "no-aggregation-bar-width-strategy": "非聚合数据的柱宽策略", + "no-aggregation-bar-width-strategy-group": "分组", + "no-aggregation-bar-width-strategy-separate": "独立", + "bar-group-width": "柱组宽度", + "bar-width": "柱宽度", + "bar-width-relative": "时间窗口百分比", + "bar-width-absolute": "绝对值(毫秒)", + "comparison": { + "comparison": "对比", + "comparison-hint": "对比仅适用于历史数据!", + "show": "显示", + "settings": "对比设置", + "show-values-for-comparison": "显示用于对比的历史数据", + "comparison-values-label": "对比数据键标签", + "comparison-values-label-auto": "自动", + "comparison-data-color": "对比数据颜色" + }, + "threshold": { + "thresholds": "阈值", + "source": "来源", + "key-value": "键 / 值", + "no-thresholds": "未配置阈值", + "add-threshold": "添加阈值", + "type-constant": "常量", + "type-latest-key": "键", + "type-entity": "实体", + "threshold-settings": "阈值设置", + "remove-threshold": "移除阈值", + "threshold-value-required": "阈值为必填项。", + "key-required": "键为必填项。", + "entity-key-required": "实体键为必填项。", + "line-appearance": "线条外观", + "line-color": "线条颜色", + "start-symbol": "起始符号", + "end-symbol": "结束符号", + "symbol-size": "大小", + "label": "标签", + "label-position-start": "起始", + "label-position-middle": "中间", + "label-position-end": "末尾", + "label-position-inside-start": "内部起始", + "label-position-inside-start-top": "内部起始上方", + "label-position-inside-start-bottom": "内部起始下方", + "label-position-inside-middle": "内部中间", + "label-position-inside-middle-top": "内部中间上方", + "label-position-inside-middle-bottom": "内部中间下方", + "label-position-inside-end": "内部末尾", + "label-position-inside-end-top": "内部末尾上方", + "label-position-inside-end-bottom": "内部末尾下方", + "label-background": "标签背景" + }, + "state": { + "states": "状态", + "label": "标签", + "ticks-value": "刻度值", + "source": "来源", + "value-range": "值 / 范围", + "no-states": "未配置状态", + "add-state": "添加状态", + "type-constant": "常量", + "type-range": "范围", + "from": "从", + "to": "到", + "remove-state": "移除状态" + }, + "grid": { + "grid": "网格", + "background-color": "背景颜色", + "border": "边框" + }, + "axis": { + "axes": "轴", + "x-axis": "X 轴", + "y-axis": "Y 轴", + "y-axis-settings": "Y 轴设置", + "comparison-x-axis-settings": "对比 X 轴设置", + "remove-y-axis": "移除 Y 轴", + "id": "Id", + "label": "标签", + "position": "位置", + "position-left": "左", + "position-right": "右", + "position-top": "上", + "position-bottom": "下", + "tick-labels": "刻度标签", + "ticks-formatter-function": "刻度格式化函数", + "ticks-generator-function": "刻度生成器函数", + "show-ticks": "显示刻度", + "show-line": "显示线条", + "show-split-lines": "显示分隔线", + "show-split-lines-x-axis-hint": "启用后,图表上将显示垂直线。", + "show-split-lines-y-axis-hint": "启用后,图表上将显示水平线。", + "ticks-interval": "刻度间隔", + "ticks-interval-hint": "强制设置轴的分段间隔。", + "split-number": "分段数", + "split-number-hint": "轴被分割的段数。", + "min": "最小值", + "max": "最大值", + "show": "显示", + "add-y-axis": "添加 Y 轴" + }, + "series": { + "legend-settings": "图例设置", + "show-in-legend": "在图例中显示", + "show-in-legend-hint": "在图例中显示系列名称和数据。", + "hidden-by-default": "默认隐藏", + "hidden-by-default-hint": "默认在图例中隐藏系列。", + "series-type": "系列类型", + "type": "类型", + "type-line": "折线", + "type-bar": "柱状", + "line": { + "line": "线条", + "show-line": "显示线条", + "step-line": "阶梯线", + "step-type-start": "起始", + "step-type-middle": "中间", + "step-type-end": "末尾", + "smooth-line": "平滑线" }, - "activity": { - "title": "活动" + "point": { + "points": "数据点", + "show-points": "显示数据点", + "point-label": "数据点标签", + "point-label-hint": "在系列数据点上方显示带有值的标签。", + "point-label-background": "数据点标签背景", + "point-shape": "数据点形状", + "point-size": "数据点大小" + } + } + }, + "wind-speed-direction": { + "layout": "布局", + "layout-default": "默认", + "layout-advanced": "高级", + "layout-simplified": "简化", + "values": "值", + "wind-direction": "风向", + "center-value": "中心值", + "icon": "图标", + "arrow": "箭头", + "ticks": "刻度", + "labels-type": "标签类型", + "directional-names": "方向名称", + "degrees": "度数", + "major-ticks": "主刻度", + "minor-ticks": "次刻度", + "wind-speed-direction-card-style": "风速和风向卡片样式", + "ticks-color": "刻度颜色", + "ticks-labels-type": "刻度标签类型", + "arrow-color": "箭头颜色" + }, + "value-source": { + "value-source": "值来源", + "predefined-value": "常量", + "entity-attribute": "实体属性", + "value": "值", + "value-required": "值为必填项。", + "key-required": "键为必填项。", + "entity-key-required": "实体键为必填项。", + "source-entity-alias": "源实体别名", + "source-entity-attribute": "源实体属性", + "type-constant": "常量", + "type-latest-key": "键", + "type-entity": "实体" + }, + "rpc-state": { + "initial-state": "初始状态", + "initial-state-hint": "获取组件初始状态(开/关)的操作。", + "disabled-state": "禁用状态", + "disabled-state-hint": "配置组件被禁用的条件。", + "turn-on": "开启", + "turn-on-hint": "当滑块切换为“开”时触发的操作", + "turn-off": "关闭", + "turn-off-hint": "当滑块切换为“关”时触发的操作", + "on": "开", + "off": "关", + "disabled": "已禁用" + }, + "value-action": { + "do-nothing": "不执行操作", + "execute-rpc": "执行 RPC", + "get-attribute": "获取属性", + "set-attribute": "设置属性", + "get-time-series": "获取时间序列", + "get-alarm-status": "获取告警状态", + "get-dashboard-state": "获取仪表板状态 ID", + "get-dashboard-state-object": "获取仪表板状态对象", + "add-time-series": "添加时间序列", + "execute-rpc-text": "执行 RPC 方法“{{methodName}}”", + "get-time-series-text": "使用时间序列“{{key}}”", + "get-attribute-text": "使用属性“{{key}}”", + "get-alarm-status-text": "使用告警状态", + "get-dashboard-state-text": "使用仪表板状态", + "get-dashboard-state-object-text": "使用仪表板状态对象", + "when-dashboard-state-is-text": "当仪表板状态 ID 为“{{state}}”时", + "when-dashboard-state-function-is-text": "当 f(仪表板状态 ID) 为“{{state}}”时", + "when-dashboard-state-object-function-is-text": "当 f(仪表板状态对象) 为“{{state}}”时", + "set-attribute-to-value-text": "将属性“{{key}}”设置为:{{value}}", + "add-time-series-value-text": "添加时间序列“{{key}}”值:{{value}}", + "set-attribute-text": "设置属性“{{key}}”", + "add-time-series-text": "添加时间序列“{{key}}”", + "action": "操作", + "value": "值", + "init-value-hint": "在设备发送数据之前将设置的值。", + "method": "方法", + "method-name-required": "方法名称为必填项。", + "request-timeout-ms": "RPC 请求超时(毫秒)", + "request-timeout-required": "请求超时为必填项。", + "min-request-timeout-error": "请求超时值应大于或等于 5000 毫秒(5 秒)。", + "request-persistent": "RPC 请求持久化", + "persistent-polling-interval": "持久化轮询间隔(毫秒)", + "persistent-polling-interval-hint": "获取持久化 RPC 命令响应的轮询间隔(毫秒)", + "persistent-polling-interval-required": "持久化轮询间隔为必填项。", + "min-persistent-polling-interval-error": "持久化轮询间隔值应大于或等于 1000 毫秒(1 秒)。", + "attribute-scope": "属性范围", + "attribute-key": "属性键", + "attribute-key-required": "属性键为必填项。", + "time-series-key": "时间序列键", + "time-series-key-required": "时间序列键为必填项。", + "action-result-converter": "操作结果转换器", + "converter-none": "无", + "converter-function": "函数", + "converter-constant": "常量", + "converter-value": "值", + "parse-value-function": "解析值函数", + "state-when-result-is": "当结果为“{{state}}”时", + "parameters": "参数", + "convert-value-function": "转换值函数", + "error": { + "target-entity-is-not-set": "未设置目标实体!", + "failed-to-perform-action": "执行 {{ actionLabel }} 操作失败。", + "invalid-attribute-scope": "{{entityType}} 实体不支持 {{scope}} 属性范围。" + } + }, + "widget-font": { + "font-settings": "字体设置", + "font-family": "字体族", + "size": "大小", + "relative-font-size": "相对字体大小(百分比)", + "font-style": "样式", + "font-style-normal": "常规", + "font-style-italic": "斜体", + "font-style-oblique": "倾斜", + "font-weight": "字重", + "font-weight-normal": "常规", + "font-weight-bold": "粗体", + "font-weight-bolder": "更粗", + "font-weight-lighter": "更细", + "color": "颜色", + "shadow-color": "阴影颜色", + "preview": "预览", + "line-height": "行高", + "auto": "自动" + }, + "home": { + "no-data-available": "暂无数据" + }, + "system-info": { + "cpu": "CPU", + "ram": "RAM", + "disk": "磁盘", + "cpu-warning-text": "CPU 使用率偏高。为避免系统故障,请优化系统性能。", + "cpu-critical-text": "CPU 使用率严重偏高。为避免系统故障,请优化系统性能。", + "ram-warning-text": "RAM 剩余空间不足。为避免系统故障,请优化系统性能或增加 RAM 容量。", + "ram-critical-text": "RAM 剩余空间严重不足。为避免系统故障,请优化系统性能或增加 RAM 容量。", + "disk-warning-text": "磁盘空间不足。为避免数据丢失,请释放或扩展磁盘空间。", + "disk-critical-text": "磁盘空间严重不足。为避免数据丢失,请释放或扩展磁盘空间。" + }, + "cluster-info": { + "service-id": "服务 ID", + "service-type": "服务类型", + "no-data": "暂无数据" + }, + "transport-messages": { + "title": "传输消息", + "info": "来自设备的所有消息" + }, + "activity": { + "title": "活动" + }, + "documentation": { + "title": "文档", + "add-link": "添加链接", + "add-link-title": "添加文档链接", + "name": "名称", + "name-required": "名称为必填项。", + "link": "链接", + "link-required": "链接为必填项。", + "columns": "列数" + }, + "quick-links": { + "title": "快速链接", + "add-link": "添加链接", + "add-link-title": "添加快速链接", + "quick-link": "快速链接", + "quick-link-required": "快速链接为必填项。", + "no-links-matching": "未找到与“{{name}}”匹配的链接。", + "columns": "列数" + }, + "recent-dashboards": { + "title": "仪表板", + "last": "最近查看", + "starred": "已收藏", + "name": "名称", + "last-viewed": "最近查看", + "no-last-viewed-dashboards": "暂无最近查看的仪表板" + }, + "configured-features": { + "title": "已配置功能", + "info": "需要配置的功能状态", + "email-feature": "Email", + "sms-feature": "短信", + "slack-feature": "Slack", + "oauth2-feature": "OAuth 2", + "2fa-feature": "双因素认证", + "feature-configured": "功能已配置。\n点击进行设置", + "feature-not-configured": "功能未配置。\n点击进行设置" + }, + "version-info": { + "title": "版本", + "contact-us": "联系我们", + "current-version": "当前版本", + "current": "当前", + "available-version": "可用版本", + "available": "可用", + "upgrade": "升级", + "version-is-up-to-date": "版本已是最新" + }, + "usage-info": { + "title": "使用情况", + "entities": "实体", + "api-calls": "API 调用" + }, + "functions": { + "title": "功能", + "pe-feature-tooltip": "仅适用于 ThingsBoard\nProfessional Edition", + "switch-to-pe": "切换到 PE", + "alarms": "告警", + "dashboards": "仪表板", + "entities-and-relations": "实体与关联", + "profiles": "配置", + "advanced-features": "高级功能", + "notification-center": "通知中心", + "api-usage": "API 使用情况", + "customers": "客户", + "customers-hierarchy": "客户层级", + "roles-and-permissions": "角色与权限", + "groups": "分组", + "integrations": "集成", + "solution-templates": "解决方案模板", + "scheduler": "调度器", + "white-labeling": "白标" + }, + "devices": { + "view-docs": "查看文档", + "inactive": "不活跃", + "active": "活跃", + "total": "总计" + }, + "alarms": { + "critical": "严重", + "assigned-to-me": "分配给我", + "total": "总计" + }, + "getting-started": { + "get-started": "开始使用", + "finish": "完成", + "done-welcome-title": "欢迎加入", + "done-welcome-text": "您做得非常棒!", + "sys-admin": { + "step1": { + "title": "创建租户和租户管理员", + "content": "

租户是拥有或管理设备和资产的个人或组织。租户可以拥有多个租户管理员用户、客户、设备和资产。

租户管理员可以在租户账户内创建和管理设备、资产、客户和仪表板。

请参考以下文档了解操作方法:

", + "how-to-create-tenant": "如何创建租户和租户管理员" }, - "documentation": { - "title": "文档", - "add-link": "添加链接", - "add-link-title": "添加文档链接", - "name": "名称", - "name-required": "名称是必填项。", - "link": "链接", - "link-required": "链接是必填项。", - "columns": "列" + "step2": { + "title": "配置功能:邮件服务器", + "content": "

邮件服务器配置对于用户激活、密码恢复和告警通知发送至关重要。

请参考以下文档了解操作方法:

", + "how-to-configure-mail-server": "如何配置邮件服务器" }, - "quick-links": { - "title": "快速链接", - "add-link": "添加链接", - "add-link-title": "添加快速链接", - "quick-link": "快速链接", - "quick-link-required": "快速链接是必填项。", - "no-links-matching": "找不到与'{{name}}'匹配的链接。", - "columns": "列" + "step3": { + "title": "配置功能:短信提供商", + "content": "

配置短信提供商,以便通过短信通知客户有关告警的信息。

请参考以下文档了解操作方法:

", + "how-to-configure-sms-provider": "如何配置短信提供商" }, - "recent-dashboards": { - "title": "仪表盘", - "last": "最近查看", - "starred": "已收藏", - "name": "名称", - "last-viewed": "最近查看", - "no-last-viewed-dashboards": "暂无最近查看的仪表盘" + "step4": { + "title": "配置功能:白标", + "content": "

无需编写代码,无需重启服务,即可轻松自定义您公司或产品的徽标和配色方案。

请参考以下文档了解操作方法:

" }, - "configured-features": { - "title": "配置的功能", - "info": "需要配置的功能状态", - "email-feature": "电子邮件", - "sms-feature": "短信", - "slack-feature": "Slack", - "oauth2-feature": "OAuth2.0", - "2fa-feature": "两步验证", - "feature-configured": "功能已配置", - "feature-not-configured": "功能未配置" + "step5": { + "title": "配置功能:双因素认证", + "content": "

通过双因素认证提高平台账户的安全性。

请参考以下文档了解操作方法:

" }, - "version-info": { - "title": "版本", - "contact-us": "联系我们", - "current-version": "当前版本", - "current": "当前", - "available-version": "可用版本", - "available": "可用", - "upgrade": "升级", - "version-is-up-to-date": "已经是最新版本" + "step6": { + "title": "配置功能:OAuth 2", + "content": "

通过 OAuth 2.0 单点登录功能简化租户和客户用户的登录流程。

请参考以下文档了解操作方法:

" + } + }, + "tenant-admin": { + "step1": { + "title": "创建设备", + "content": "

让我们通过界面将您的第一个设备接入平台。请参考以下文档了解操作方法:

", + "how-to-create-device": "如何创建设备" }, - "usage-info": { - "title": "使用情况", - "entities": "实体", - "api-calls": "API调用" + "step2": { + "title": "连接设备", + "content-before": "

要连接设备,您需要获取设备凭据。本指南建议使用默认自动生成的凭据,即访问令牌。

使用简单命令通过 HTTP 发布数据。请将 $ACCESS_TOKEN 替换为您的设备访问令牌:

", + "ubuntu": { + "install-curl": "为 Ubuntu 安装 cURL:" + }, + "macos": { + "install-curl": "为 MacOS 安装 cURL:" + }, + "windows": { + "install-curl": "从 Windows 10 b17063 开始,cURL 已默认可用。" + }, + "replace-access-token": "将 $ACCESS_TOKEN 替换为您的设备令牌:", + "content-after": "

您也可以使用其他协议,例如 MQTT、CoAP 等。

请参考以下文档了解操作方法:

", + "how-to-connect-device": "如何连接设备" }, - "functions": { - "title": "功能", - "pe-feature-tooltip": "仅适用于ThingsBoard专业版", - "switch-to-pe": "切换专业版", - "alarms": "告警", - "dashboards": "仪表盘", - "entities-and-relations": "实体和关系", - "profiles": "配置", - "advanced-features": "高级功能", - "notification-center": "通知中心", - "api-usage": "API使用情况", - "customers": "客户", - "customers-hierarchy": "客户层级", - "roles-and-permissions": "角色和权限", - "groups": "群组", - "integrations": "集成", - "solution-templates": "解决方案模板", - "scheduler": "调度器", - "white-labeling": "白标" + "step3": { + "title": "创建仪表板", + "content": "

创建仪表板以可视化来自资产、设备等实体的数据。

请参考以下文档了解操作方法:

", + "how-to-create-dashboard": "如何创建仪表板" }, - "devices": { - "view-docs": "查看文档", - "inactive": "非活动", - "active": "活动", - "total": "总数" + "step4": { + "title": "配置告警规则", + "alarm-rules": "告警规则", + "content": "

让我们在温度达到 25°C 时触发告警。请参考以下文档了解操作方法:

", + "how-to-configure-alarm-rules": "如何配置告警规则" }, - "alarms": { - "critical": "严重", - "assigned-to-me": "分配给我", - "total": "总数" + "step5": { + "title": "创建告警", + "content-before": "

要触发告警,请发送 26°C 或更高的遥测值。

", + "replace-access-token": "将 $ACCESS_TOKEN 替换为您的设备令牌:", + "content-after": "

请参考以下文档了解操作方法:

", + "how-to-create-alarm": "如何创建告警" }, - "getting-started": { - "get-started": "开始", - "finish": "完成", - "done-welcome-title": "欢迎加入我们", - "done-welcome-text": "你做得很好!", - "sys-admin": { - "step1": { - "title": "创建租户和租户管理员", - "content": "

租户是拥有或生产设备和资产的个人或组织,租户可以有多个租户管理员用户、客户、设备和资产。

租户管理员可以在租户账户中创建和管理设备、资产、客户和仪表板。

请按照文档进行操作:

", - "how-to-create-tenant": "如何创建租户和租户管理员" - }, - "step2": { - "title": "配置功能:邮件服务", - "content": "

邮件服务配置对于用户激活、密码恢复和报警通知的发送非常重要。

请按照文档进行操作:

", - "how-to-configure-mail-server": "如何配置邮件服务器" - }, - "step3": { - "title": "配置功能:短信提供商", - "content": "

配置短信提供商,通过短信向客户发送报警通知。

请按照文档进行操作:

", - "how-to-configure-sms-provider": "如何配置短信提供商" - }, - "step4": { - "title": "配置功能:双因素认证", - "content": "

通过双因素认证提高平台账户的安全性。

请按照文档进行操作:

", - "how-to-configure-2fa": "如何配置双因素认证" - }, - "step5": { - "title": "配置功能:OAuth 2", - "content": "

通过OAuth 2.0的单点登录功能,简化租户和客户用户的登录过程。

请按照文档进行操作:

", - "how-to-configure-oauth2": "如何配置OAuth 2" - }, - "step6": { - "title": "配置功能:Slack", - "content": "

根据设置的通知规则,通过Slack向租户和客户用户发送通知。

请按照文档进行操作:

", - "how-to-configure-notifications": "如何配置Slack" - } - }, - "tenant-admin": { - "step1": { - "title": "创建设备", - "content": "

让我们通过用户界面将您的第一个设备添加到平台。请按照文档进行操作:

", - "how-to-create-device": "如何创建设备" - }, - "step2": { - "title": "连接设备", - "content-before": "

要连接设备,您需要获取设备凭据。我们建议在本指南中使用默认生成的凭据,即访问令牌。

使用简单的命令通过HTTP发布数据。不要忘记将$ACCESS_TOKEN替换为您的设备访问令牌:

", - "ubuntu": { - "install-curl": "Ubuntu上安装cURL:" - }, - "macos": { - "install-curl": "MacOS上安装cURL:" - }, - "windows": { - "install-curl": "从Windows 10 b17063开始,cURL已默认可用。" - }, - "replace-access-token": "将$ACCESS_TOKEN替换为您的设备令牌:", - "content-after": "

您还可以使用其他协议如MQTT、CoAP等。

请按照文档进行操作:

", - "how-to-connect-device": "如何连接设备" - }, - "step3": { - "title": "创建仪表板", - "content": "

创建一个仪表板,用于可视化来自实体(如资产、设备等)的数据。

请按照文档进行操作:

", - "how-to-create-dashboard": "如何创建仪表板" - }, - "step4": { - "title": "配置报警规则", - "alarm-rules": "报警规则", - "content": "

当温度达到25°C时,让我们触发一个报警。请按照文档进行操作:

", - "how-to-configure-alarm-rules": "如何配置报警规则" - }, - "step5": { - "title": "创建报警", - "content-before": "

要触发报警,请发送一个新的温度值,该值为26℃或更高。

", - "replace-access-token": "将$ACCESS_TOKEN替换为您的设备令牌:", - "content-after": "

请按照文档进行操作:

", - "how-to-create-alarm": "如何创建报警" - }, - "step6": { - "title": "创建客户并分配仪表板", - "content": "

通过创建终端用户仪表板,客户用户只能查看自己的设备,另一个客户的数据将被隐藏。

请按照文档进行操作:

", - "how-to-create-customer-and-assign-dashboard": "如何创建客户并分配仪表板" - } - } + "step6": { + "title": "创建客户并共享仪表板", + "content": "

通过创建终端用户仪表板,客户用户只能查看自己的设备,其他客户的数据将被隐藏。

请参考以下文档了解操作方法:

" } + } }, - "color": { - "color": "颜色" - }, - "icon": { - "icon": "图标", - "icons": "图标", - "select-icon": "选择图标", - "material-icons": "素材图标", - "show-all": "显示所有图标", - "search-icon": "搜索图标", - "no-icons-found": "没有找到符合'{{iconSearch}}'的图标" - }, - "phone-input": { - "phone-input-label": "手机号码", - "phone-input-required": "手机号码必填", - "phone-input-validation": "手机号码无效或不存在", - "phone-input-pattern": "无效的手机号码应为E.164格式例如:{{phoneNumber}}", - "phone-input-hint": "E.164格式手机号码例如:{{phoneNumber}}" - }, - "custom": { - "widget-action": { - "action-cell-button": "动作单元格按钮", - "row-click": "点击行时", - "cell-click": "点击单元格时", - "polygon-click": "点击多边形时", - "marker-click": "点击标记时", - "circle-click": "点击圆圈时", - "tooltip-tag-action": "文字提示标签操作", - "node-selected": "选择节点时", - "element-click": "点击HTML元素时", - "pie-slice-click": "点击切片时", - "row-double-click": "双击行时", - "cell-double-click": "双击单元格时", - "card-click": "点击卡片时", - "click": "点击时" - } - }, - "paginator": { - "items-per-page": "每页数量:", - "first-page-label": "首页", - "last-page-label": "尾页", - "next-page-label": "下一页", - "previous-page-label": "上一页", - "items-per-page-separator": "至" - }, - "language": { - "language": "语言" + "api-usage": { + "api-usage": "API 使用情况", + "label": "标签", + "state-name": "状态名称", + "status": "状态", + "status-required": "状态为必填项。", + "limit": "最大限制", + "limit-required": "最大限制为必填项。", + "current-number": "当前数量", + "current-number-required": "当前数量为必填项。", + "add-key": "添加键", + "no-key": "无键", + "delete-key": "删除键", + "target-dashboard-state": "目标仪表板状态", + "go-to-main-state": "前往默认视图" + } + }, + "icon": { + "icon": "图标", + "icons": "图标", + "custom": "自定义", + "select-icon": "选择图标", + "material-icons": "Material 图标", + "show-all": "显示全部图标", + "search-icon": "搜索图标", + "no-icons-found": "未找到与“{{iconSearch}}”匹配的图标" + }, + "phone-input": { + "phone-input-label": "电话号码", + "phone-input-required": "电话号码为必填项", + "phone-input-validation": "电话号码无效或不存在", + "phone-input-pattern": "电话号码无效。应为 E.164 格式,例如 {{phoneNumber}}", + "phone-input-hint": "E.164 格式的电话号码,例如 {{phoneNumber}}" + }, + "custom": { + "widget-action": { + "action-cell-button": "操作单元格按钮", + "row-click": "单击行时", + "cell-click": "单击单元格时", + "polygon-click": "单击多边形时", + "marker-click": "单击标记时", + "circle-click": "单击圆形时", + "tooltip-tag-action": "提示标签操作", + "node-selected": "选中节点时", + "element-click": "单击 HTML 元素时", + "pie-slice-click": "单击扇区时", + "row-double-click": "双击行时", + "cell-double-click": "双击单元格时", + "card-click": "单击卡片时", + "click": "单击时" } -} + }, + "paginator": { + "items-per-page": "每页条目数:", + "first-page-label": "第一页", + "last-page-label": "最后一页", + "next-page-label": "下一页", + "previous-page-label": "上一页", + "items-per-page-separator": "/" + }, + "language": { + "auto": "自动", + "language": "语言" + } +} \ No newline at end of file