diff --git a/packages/cli/src/TranslationHelpers.ts b/packages/cli/src/TranslationHelpers.ts
index 5f152b96e5..547c3e9c30 100644
--- a/packages/cli/src/TranslationHelpers.ts
+++ b/packages/cli/src/TranslationHelpers.ts
@@ -34,6 +34,6 @@ export async function getNodeTranslationPath(
const maxVersion = await getMaxVersion(nodeDir);
return maxVersion
- ? join(nodeDir, `v${maxVersion}`, 'translations', `${language}.js`)
- : join(nodeDir, 'translations', `${language}.js`);
+ ? join(nodeDir, `v${maxVersion}`, 'translations', `${language}.json`)
+ : join(nodeDir, 'translations', `${language}.json`);
}
diff --git a/packages/editor-ui/src/i18n/index.ts b/packages/editor-ui/src/i18n/index.ts
index 8f334ac5c9..5c438d65a6 100644
--- a/packages/editor-ui/src/i18n/index.ts
+++ b/packages/editor-ui/src/i18n/index.ts
@@ -1,6 +1,6 @@
import Vue from 'vue';
import VueI18n from 'vue-i18n';
-import englishBaseText from './locales/en';
+const englishBaseText = require('./locales/en');
import axios from 'axios';
import { INodeTranslationHeaders } from '@/Interface';
@@ -40,7 +40,7 @@ export async function loadLanguage(language?: string) {
return Promise.resolve(setLanguage(language));
}
- const { numberFormats, ...rest } = require(`./locales/${language}`).default;
+ const { numberFormats, ...rest } = require(`./locales/${language}.json`);
i18n.setLocaleMessage(language, rest);
diff --git a/packages/editor-ui/src/i18n/locales/de.json b/packages/editor-ui/src/i18n/locales/de.json
new file mode 100644
index 0000000000..582a5d026b
--- /dev/null
+++ b/packages/editor-ui/src/i18n/locales/de.json
@@ -0,0 +1,1026 @@
+{
+ "numberFormats": {
+ "decimal": {
+ "style": "decimal"
+ }
+ },
+ "reusableBaseText": {
+ "cancel": "π©πͺ Cancel",
+ "name": "π©πͺ Name",
+ "save": "π©πͺ Save"
+ },
+ "reusableDynamicText": {
+ "oauth2": {
+ "clientId": "π©πͺ Client ID",
+ "clientSecret": "π©πͺ Client Secret"
+ }
+ },
+ "about": {
+ "aboutN8n": "π©πͺ About n8n",
+ "apacheWithCommons20Clause": "π©πͺ Apache 2.0 with Commons Clause",
+ "close": "π©πͺ Close",
+ "license": "π©πͺ License",
+ "n8nVersion": "π©πͺ n8n Version",
+ "sourceCode": "π©πͺ Source Code"
+ },
+ "binaryDataDisplay": {
+ "backToList": "π©πͺ Back to list",
+ "backToOverviewPage": "π©πͺ Back to overview page",
+ "noDataFoundToDisplay": "π©πͺ No data found to display",
+ "yourBrowserDoesNotSupport": "π©πͺ Your browser does not support the video element. Kindly update it to latest version."
+ },
+ "codeEdit": {
+ "edit": "π©πͺ Edit"
+ },
+ "collectionParameter": {
+ "choose": "π©πͺ Choose...",
+ "noProperties": "π©πͺ No properties"
+ },
+ "credentialEdit": {
+ "credentialConfig": {
+ "accountConnected": "π©πͺ Account connected",
+ "clickToCopy": "π©πͺ Click To Copy",
+ "connectionTestedSuccessfully": "π©πͺ Connection tested successfully",
+ "couldntConnectWithTheseSettings": "Couldnβt connect with these settings",
+ "needHelpFillingOutTheseFields": "π©πͺ Need help filling out these fields?",
+ "oAuthRedirectUrl": "π©πͺ OAuth Redirect URL",
+ "openDocs": "π©πͺ Open docs",
+ "pleaseCheckTheErrorsBelow": "π©πͺ Please check the errors below",
+ "reconnect": "π©πͺ reconnect",
+ "reconnectOAuth2Credential": "π©πͺ Reconnect OAuth2 Credential",
+ "redirectUrlCopiedToClipboard": "π©πͺ Redirect URL copied to clipboard",
+ "retry": "π©πͺ Retry",
+ "retryCredentialTest": "π©πͺ Retry credential test",
+ "retrying": "π©πͺ Retrying",
+ "subtitle": "π©πͺ In {appName}, use the URL above when prompted to enter an OAuth callback or redirect URL",
+ "theServiceYouReConnectingTo": "π©πͺ the service you're connecting to"
+ },
+ "credentialEdit": {
+ "confirmMessage": {
+ "beforeClose1": {
+ "cancelButtonText": "π©πͺ Keep Editing",
+ "confirmButtonText": "π©πͺ Close",
+ "headline": "π©πͺ Close without saving?",
+ "message": "π©πͺ Are you sure you want to throw away the changes you made to the {credentialDisplayName} credential?"
+ },
+ "beforeClose2": {
+ "cancelButtonText": "π©πͺ Keep Editing",
+ "confirmButtonText": "π©πͺ Close",
+ "headline": "π©πͺ Close without connecting?",
+ "message": "π©πͺ You need to connect your credential for it to work"
+ },
+ "deleteCredential": {
+ "cancelButtonText": "",
+ "confirmButtonText": "π©πͺ Yes, delete!",
+ "headline": "π©πͺ Delete Credential?",
+ "message": "π©πͺ Are you sure you want to delete \"{savedCredentialName}\" credential?"
+ }
+ },
+ "connection": "π©πͺ Connection",
+ "couldNotFindCredentialOfType": "π©πͺ Could not find credential of type",
+ "couldNotFindCredentialWithId": "π©πͺ Could not find credential with ID",
+ "details": "π©πͺ Details",
+ "showError": {
+ "createCredential": {
+ "message": "",
+ "title": "π©πͺ Problem creating credential"
+ },
+ "deleteCredential": {
+ "message": "",
+ "title": "π©πͺ Problem deleting credential"
+ },
+ "generateAuthorizationUrl": {
+ "message": "π©πͺ There was a problem generating the authorization URL",
+ "title": "π©πͺ OAuth Authorization Error"
+ },
+ "loadCredential": {
+ "message": "",
+ "title": "π©πͺ Problem loading credential"
+ },
+ "updateCredential": {
+ "message": "",
+ "title": "π©πͺ Problem updating credential"
+ }
+ },
+ "showMessage": {
+ "message": "π©πͺ The credential {savedCredentialName} was deleted!",
+ "title": "π©πͺ Credential deleted"
+ }
+ },
+ "credentialInfo": {
+ "allowUseBy": "π©πͺ Allow use by",
+ "created": "π©πͺ Created",
+ "id": "π©πͺ ID",
+ "lastModified": "π©πͺ Last modified"
+ },
+ "oAuthButton": {
+ "connectMyAccount": "π©πͺ Connect my account",
+ "signInWithGoogle": "π©πͺ Sign in with Google"
+ }
+ },
+ "credentialSelectModal": {
+ "addNewCredential": "π©πͺ Add new credential",
+ "continue": "π©πͺ Continue",
+ "searchForApp": "π©πͺ Search for app...",
+ "selectAnAppOrServiceToConnectTo": "π©πͺ Select an app or service to connect to"
+ },
+ "credentialsList": {
+ "addNew": "π©πͺ Add New",
+ "confirmMessage": {
+ "cancelButtonText": "",
+ "confirmButtonText": "π©πͺ Yes, delete!",
+ "headline": "π©πͺ Delete Credential?",
+ "message": "π©πͺ Are you sure you want to delete {credentialName} credential?"
+ },
+ "createNewCredential": "π©πͺ Create New Credential",
+ "created": "π©πͺ Created",
+ "credentials": "π©πͺ Credentials",
+ "deleteCredential": "π©πͺ Delete Credential",
+ "editCredential": "π©πͺ Edit Credential",
+ "name": "@:reusableBaseText.name",
+ "operations": "π©πͺ Operations",
+ "showError": {
+ "deleteCredential": {
+ "message": "",
+ "title": "π©πͺ Problem deleting credential"
+ }
+ },
+ "showMessage": {
+ "message": "π©πͺ The credential {credentialName} got deleted!",
+ "title": "π©πͺ Credential deleted"
+ },
+ "type": "π©πͺ Type",
+ "updated": "π©πͺ Updated",
+ "yourSavedCredentials": "π©πͺ Your saved credentials"
+ },
+ "dataDisplay": {
+ "needHelp": "π©πͺ Need help?",
+ "nodeDocumentation": "π©πͺ Node Documentation",
+ "openDocumentationFor": "π©πͺ Open {nodeTypeDisplayName} documentation"
+ },
+ "displayWithChange": {
+ "cancelEdit": "π©πͺ Cancel Edit",
+ "clickToChange": "π©πͺ Click to Change",
+ "setValue": "π©πͺ Set Value"
+ },
+ "duplicateWorkflowDialog": {
+ "cancel": "@:reusableBaseText.cancel",
+ "chooseOrCreateATag": "π©πͺ Choose or create a tag",
+ "duplicateWorkflow": "π©πͺ Duplicate Workflow",
+ "enterWorkflowName": "π©πͺ Enter workflow name",
+ "save": "@:reusableBaseText.save",
+ "showMessage": {
+ "message": "π©πͺ Please enter a name.",
+ "title": "π©πͺ Name missing"
+ }
+ },
+ "executionDetails": {
+ "executionFailed": "π©πͺ Execution failed",
+ "executionId": "π©πͺ Execution ID",
+ "executionWaiting": "π©πͺ Execution waiting",
+ "executionWasSuccessful": "π©πͺ Execution was successful",
+ "openWorkflow": "π©πͺ Open Workflow"
+ },
+ "executionsList": {
+ "allWorkflows": "π©πͺ All Workflows",
+ "anyStatus": "π©πͺ Any Status",
+ "autoRefresh": "π©πͺ Auto refresh",
+ "confirmMessage": {
+ "cancelButtonText": "",
+ "confirmButtonText": "π©πͺ Yes, delete!",
+ "headline": "π©πͺ Delete Executions?",
+ "message": "π©πͺ Are you sure that you want to delete the {numSelected} selected executions?"
+ },
+ "deleteSelected": "π©πͺ Delete Selected",
+ "error": "π©πͺ Error",
+ "filters": "π©πͺ Filters",
+ "loadMore": "π©πͺ Load More",
+ "mode": "π©πͺ Mode",
+ "modes": {
+ "error": "π©πͺ error",
+ "manual": "π©πͺ manual",
+ "retry": "π©πͺ retry",
+ "trigger": "π©πͺ trigger"
+ },
+ "name": "@:reusableBaseText.name",
+ "openPastExecution": "π©πͺ Open Past Execution",
+ "retryExecution": "π©πͺ Retry execution",
+ "retryOf": "π©πͺ Retry of",
+ "retryWithCurrentlySavedWorkflow": "π©πͺ Retry with currently saved workflow",
+ "retryWithOriginalworkflow": "π©πͺ Retry with original workflow",
+ "running": "π©πͺ Running",
+ "runningTime": "π©πͺ Running Time",
+ "selectStatus": "π©πͺ Select Status",
+ "selectWorkflow": "π©πͺ Select Workflow",
+ "selected": "π©πͺ Selected",
+ "showError": {
+ "handleDeleteSelected": {
+ "message": "",
+ "title": "π©πͺ Problem deleting executions"
+ },
+ "loadMore": {
+ "message": "",
+ "title": "π©πͺ Problem loading workflows"
+ },
+ "loadWorkflows": {
+ "message": "",
+ "title": "π©πͺ Problem loading workflows"
+ },
+ "refreshData": {
+ "message": "",
+ "title": "π©πͺ Problem loading data"
+ },
+ "retryExecution": {
+ "message": "",
+ "title": "π©πͺ Problem with retry"
+ },
+ "stopExecution": {
+ "message": "",
+ "title": "π©πͺ Problem stopping execution"
+ }
+ },
+ "showMessage": {
+ "handleDeleteSelected": {
+ "message": "π©πͺ The executions got deleted!",
+ "title": "π©πͺ Execution deleted"
+ },
+ "retrySuccessfulFalse": {
+ "message": "π©πͺ The retry was not successful!",
+ "title": "π©πͺ Retry unsuccessful"
+ },
+ "retrySuccessfulTrue": {
+ "message": "",
+ "title": "π©πͺ Retry successful"
+ },
+ "stopExecution": {
+ "message": "π©πͺ The execution with the ID {activeExecutionId} got stopped!",
+ "title": "π©πͺ Execution stopped"
+ }
+ },
+ "startedAtId": "π©πͺ Started At / ID",
+ "status": "π©πͺ Status",
+ "statusTooltipText": {
+ "theWorkflowExecutionFailed": "π©πͺ The workflow execution failed.",
+ "theWorkflowExecutionFailedButTheRetryWasSuccessful": "π©πͺ The workflow execution failed but the retry {entryRetrySuccessId} was successful.",
+ "theWorkflowExecutionIsProbablyStillRunning": "π©πͺ The workflow execution is probably still running but it may have crashed and n8n cannot safely tell. ",
+ "theWorkflowExecutionWasARetryOfAndFailed": "π©πͺ The workflow execution was a retry of {entryRetryOf} and failed.
New retries have to be,started from the original execution.",
+ "theWorkflowExecutionWasARetryOfAndItWasSuccessful": "π©πͺ The workflow execution was a retry of {entryRetryOf} and it was successful.",
+ "theWorkflowExecutionWasSuccessful": "π©πͺ The worklow execution was successful.",
+ "theWorkflowIsCurrentlyExecuting": "π©πͺ The worklow is currently executing.",
+ "theWorkflowIsWaitingIndefinitely": "π©πͺ The workflow is waiting indefinitely for an incoming webhook call.",
+ "theWorkflowIsWaitingTill": "The worklow is waiting till {waitDateDate} {waitDateTime}."
+ },
+ "stopExecution": "π©πͺ Stop Execution",
+ "success": "π©πͺ Success",
+ "successRetry": "π©πͺ Success retry",
+ "unknown": "π©πͺ Unknown",
+ "unsavedWorkflow": "π©πͺ [UNSAVED WORKFLOW]",
+ "waiting": "π©πͺ Waiting",
+ "workflowExecutions": "π©πͺ Workflow Executions"
+ },
+ "expressionEdit": {
+ "editExpression": "π©πͺ Edit Expression",
+ "expression": "π©πͺ Expression",
+ "result": "π©πͺ Result",
+ "variableSelector": "π©πͺ Variable Selector"
+ },
+ "fixedCollectionParameter": {
+ "choose": "π©πͺ Choose...",
+ "currentlyNoItemsExist": "π©πͺ Currently no items exist",
+ "deleteItem": "π©πͺ Delete item",
+ "moveDown": "π©πͺ Move down",
+ "moveUp": "π©πͺ Move up"
+ },
+ "genericHelpers": {
+ "loading": "π©πͺ Loading",
+ "min": "π©πͺ min.",
+ "sec": "π©πͺ sec.",
+ "showMessage": {
+ "message": "π©πͺ The workflow cannot be edited as a past execution gets displayed. To make changed either open the original workflow of which the execution gets displayed or save it under a new name first.",
+ "title": "π©πͺ Workflow cannot be changed!"
+ }
+ },
+ "mainSidebar": {
+ "aboutN8n": "π©πͺ About n8n",
+ "confirmMessage": {
+ "workflowDelete": {
+ "cancelButtonText": "",
+ "confirmButtonText": "π©πͺ Yes, delete!",
+ "headline": "π©πͺ Delete Workflow?",
+ "message": "π©πͺ Are you sure that you want to delete the workflow {workflowName}?"
+ },
+ "workflowNew": {
+ "cancelButtonText": "",
+ "confirmButtonText": "π©πͺ Yes, switch workflows and forget changes",
+ "headline": "π©πͺ Save your Changes?",
+ "message": "π©πͺ When you switch workflows your current workflow changes will be lost."
+ }
+ },
+ "credentials": "π©πͺ Credentials",
+ "delete": "π©πͺ Delete",
+ "download": "π©πͺ Download",
+ "duplicate": "π©πͺ Duplicate",
+ "executions": "π©πͺ Executions",
+ "help": "π©πͺ Help",
+ "helpMenuItems": {
+ "documentation": "π©πͺ Documentation",
+ "forum": "π©πͺ Forum",
+ "workflows": "π©πͺ Workflows"
+ },
+ "importFromFile": "π©πͺ Import from File",
+ "importFromUrl": "π©πͺ Import from URL",
+ "new": "π©πͺ New",
+ "open": "π©πͺ Open",
+ "prompt": {
+ "cancel": "@:reusableBaseText.cancel",
+ "import": "π©πͺ Import",
+ "importWorkflowFromUrl": "π©πͺ Import Workflow from URL",
+ "invalidUrl": "π©πͺ Invalid URL",
+ "workflowUrl": "π©πͺ Workflow URL"
+ },
+ "save": "@:reusableBaseText.save",
+ "settings": "π©πͺ Settings",
+ "showError": {
+ "stopExecution": {
+ "message": "",
+ "title": "π©πͺ Problem stopping execution"
+ }
+ },
+ "showMessage": {
+ "handleFileImport": {
+ "message": "π©πͺ The file does not contain valid JSON data.",
+ "title": "π©πͺ Could not import file"
+ },
+ "handleSelect1": {
+ "message": "π©πͺ The workflow {workflowName} got deleted.",
+ "title": "π©πͺ Workflow got deleted"
+ },
+ "handleSelect2": {
+ "message": "",
+ "title": "π©πͺ Workflow created"
+ },
+ "handleSelect3": {
+ "message": "",
+ "title": "π©πͺ Workflow created"
+ },
+ "stopExecution": {
+ "message": "π©πͺ Execution with ID {executionId} got stopped!",
+ "title": "π©πͺ Execution stopped"
+ }
+ },
+ "workflows": "π©πͺ Workflows"
+ },
+ "multipleParameter": {
+ "addItem": "π©πͺ Add item",
+ "currentlyNoItemsExist": "π©πͺ Currently no items exist",
+ "deleteItem": "π©πͺ Delete item",
+ "moveDown": "π©πͺ Move down",
+ "moveUp": "π©πͺ Move up"
+ },
+ "noTagsView": {
+ "readyToOrganizeYourWorkflows": "π©πͺ Ready to organize your workflows?",
+ "withWorkflowTagsYouReFree": "π©πͺ With workflow tags, you're free to create the perfect tagging system for your flows"
+ },
+ "node": {
+ "activateDeactivateNode": "π©πͺ Activate/Deactivate Node",
+ "deleteNode": "π©πͺ Delete Node",
+ "disabled": "π©πͺ Disabled",
+ "duplicateNode": "π©πͺ Duplicate Node",
+ "editNode": "π©πͺ Edit Node",
+ "executeNode": "π©πͺ Execute Node",
+ "issues": "π©πͺ Issues",
+ "nodeIsExecuting": "π©πͺ Node is executing",
+ "nodeIsWaitingTill": "π©πͺ Node is waiting till {date} {time}",
+ "theNodeIsWaitingIndefinitelyForAnIncomingWebhookCall": "π©πͺ The node is waiting indefinitely for an incoming webhook call."
+ },
+ "nodeCreator": {
+ "categoryNames": {
+ "analytics": "π©πͺ Analytics",
+ "communication": "π©πͺ Communication",
+ "coreNodes": "π©πͺ Core Nodes",
+ "customNodes": "π©πͺ Custom Nodes",
+ "dataStorage": "π©πͺ Data & Storage",
+ "development": "π©πͺ Development",
+ "financeAccounting": "π©πͺ Finance & Accounting",
+ "marketingContent": "π©πͺ Marketing & Content",
+ "miscellaneous": "π©πͺ Miscellaneous",
+ "productivity": "π©πͺ Productivity",
+ "sales": "π©πͺ Sales",
+ "suggestedNodes": "π©πͺ Suggested Nodes β¨",
+ "utility": "π©πͺ Utility"
+ },
+ "mainPanel": {
+ "all": "π©πͺ All",
+ "regular": "π©πͺ Regular",
+ "trigger": "π©πͺ Trigger"
+ },
+ "noResults": {
+ "dontWorryYouCanProbablyDoItWithThe": "π©πͺ Donβt worry, you can probably do it with the {httpRequest} or {webhook} node",
+ "httpRequest": "π©πͺ HTTP Request",
+ "node": "π©πͺ node",
+ "requestTheNode": "π©πͺ Request the node",
+ "wantUsToMakeItFaster": "π©πͺ Want us to make it faster?",
+ "weDidntMakeThatYet": "π©πͺ We didn't make that... yet",
+ "webhook": "π©πͺ Webhook"
+ },
+ "searchBar": {
+ "searchNodes": "π©πͺ Search nodes..."
+ },
+ "subcategoryDescriptions": {
+ "branches": "π©πͺ Branches, core triggers, merge data",
+ "http": "π©πͺ HTTP Requests (API calls), date and time, scrape HTML",
+ "manipulate": "π©πͺ Manipulate data fields, run code",
+ "work": "π©πͺ Work with CSV, XML, text, images etc."
+ },
+ "subcategoryNames": {
+ "dataTransformation": "π©πͺ Data Transformation",
+ "files": "π©πͺ Files",
+ "flow": "π©πͺ Flow",
+ "helpers": "π©πͺ Helpers"
+ }
+ },
+ "nodeCredentials": {
+ "createNew": "π©πͺ Create New",
+ "credentialFor": "π©πͺ Credential for {credentialType}",
+ "issues": "π©πͺ Issues",
+ "selectCredential": "π©πͺ Select Credential",
+ "showMessage": {
+ "message": "π©πͺ Nodes that used credential \"{oldCredentialName}\" have been updated to use \"{newCredentialName}\"",
+ "title": "π©πͺ Node credential updated"
+ },
+ "updateCredential": "π©πͺ Update Credential"
+ },
+ "nodeErrorView": {
+ "cause": "π©πͺ Cause",
+ "copyToClipboard": "π©πͺ Copy to Clipboard",
+ "dataBelowMayContain": "π©πͺ Data below may contain sensitive information. Proceed with caution when sharing.",
+ "details": "π©πͺ Details",
+ "error": "π©πͺ ERROR",
+ "httpCode": "π©πͺ HTTP Code",
+ "showMessage": {
+ "message": "",
+ "title": "π©πͺ Copied to clipboard"
+ },
+ "stack": "π©πͺ Stack",
+ "theErrorCauseIsTooLargeToBeDisplayed": "π©πͺ The error cause is too large to be displayed.",
+ "time": "π©πͺ Time"
+ },
+ "nodeSettings": {
+ "alwaysOutputData": {
+ "description": "π©πͺ If active, the node will return an empty item even if the
node returns no data during an initial execution. Be careful setting
this on IF-Nodes as it could cause an infinite loop.",
+ "displayName": "π©πͺ Always Output Data"
+ },
+ "clickOnTheQuestionMarkIcon": "π©πͺ Click the '?' icon to open this node on n8n.io",
+ "color": {
+ "description": "π©πͺ The color of the node in the flow.",
+ "displayName": "π©πͺ Node Color"
+ },
+ "continueOnFail": {
+ "description": "π©πͺ If active, the workflow continues even if this node's
execution fails. When this occurs, the node passes along input data from
previous nodes - so your workflow should account for unexpected output data.",
+ "displayName": "π©πͺ Continue On Fail"
+ },
+ "executeOnce": {
+ "description": "π©πͺ If active, the node executes only once, with data
from the first item it recieves.",
+ "displayName": "π©πͺ Execute Once"
+ },
+ "maxTries": {
+ "description": "π©πͺ Number of times Retry On Fail should attempt to execute the node
before stopping and returning the execution as failed.",
+ "displayName": "π©πͺ Max. Tries"
+ },
+ "noDescriptionFound": "π©πͺ No description found",
+ "nodeDescription": "π©πͺ Node Description",
+ "notes": {
+ "description": "π©πͺ Optional note to save with the node.",
+ "displayName": "π©πͺ Notes"
+ },
+ "notesInFlow": {
+ "description": "π©πͺ If active, the note above will display in the flow as a subtitle.",
+ "displayName": "π©πͺ Display note in flow?"
+ },
+ "parameters": "π©πͺ Parameters",
+ "retryOnFail": {
+ "description": "π©πͺ If active, the node tries to execute a failed attempt
multiple times until it succeeds.",
+ "displayName": "π©πͺ Retry On Fail"
+ },
+ "settings": "π©πͺ Settings",
+ "theNodeIsNotValidAsItsTypeIsUnknown": "π©πͺ The node is not valid as its type {nodeType} is unknown.",
+ "thisNodeDoesNotHaveAnyParameters": "π©πͺ This node does not have any parameters.",
+ "waitBetweenTries": {
+ "description": "π©πͺ How long to wait between each attempt. Value in ms.",
+ "displayName": "π©πͺ Wait Between Tries"
+ }
+ },
+ "nodeView": {
+ "addNode": "π©πͺ Add node",
+ "confirmMessage": {
+ "beforeRouteLeave": {
+ "cancelButtonText": "",
+ "confirmButtonText": "π©πͺ Yes, switch workflows and forget changes",
+ "headline": "π©πͺ Save your Changes?",
+ "message": "π©πͺ When you switch workflows your current workflow changes will be lost."
+ },
+ "initView": {
+ "cancelButtonText": "",
+ "confirmButtonText": "π©πͺ Yes, switch workflows and forget changes",
+ "headline": "π©πͺ Save your Changes?",
+ "message": "π©πͺ When you switch workflows your current workflow changes will be lost."
+ },
+ "receivedCopyPasteData": {
+ "cancelButtonText": "",
+ "confirmButtonText": "π©πͺ Yes, import!",
+ "headline": "π©πͺ Import Workflow from URL?",
+ "message": "π©πͺ Import workflow from this URL:
{plainTextData}"
+ }
+ },
+ "couldntImportWorkflow": "Couldn't import workflow",
+ "deletesTheCurrentExecutionData": "π©πͺ Deletes the current Execution Data.",
+ "dropConnectionToAddNode": "π©πͺ Drop connection
to add node",
+ "executesTheWorkflowFromTheStartOrWebhookNode": "π©πͺ Executes the Workflow from the Start or Webhook Node.",
+ "itLooksLikeYouHaveBeenEditingSomething": "π©πͺ It looks like you have been editing something. If you leave before saving, your changes will be lost.",
+ "loadingTemplate": "π©πͺ Loading template",
+ "moreInfo": "π©πͺ More info",
+ "noNodesGivenToAdd": "π©πͺ No nodes given to add!",
+ "prompt": {
+ "cancel": "@:reusableBaseText.cancel",
+ "invalidName": "π©πͺ Invalid Name",
+ "newName": "π©πͺ New Name",
+ "rename": "π©πͺ Rename",
+ "renameNode": "π©πͺ Rename Node"
+ },
+ "refresh": "π©πͺ Refresh",
+ "resetZoom": "π©πͺ Reset Zoom",
+ "runButtonText": {
+ "executeWorkflow": "π©πͺ Execute Workflow",
+ "executingWorkflow": "π©πͺ Executing Workflow",
+ "waitingForWebhookCall": "π©πͺ Waiting for Webhook-Call"
+ },
+ "showError": {
+ "getWorkflowDataFromUrl": {
+ "message": "π©πͺ There was a problem loading the workflow data from URL",
+ "title": "π©πͺ Problem loading workflow"
+ },
+ "importWorkflowData": {
+ "message": "π©πͺ There was a problem importing workflow data",
+ "title": "π©πͺ Problem importing workflow"
+ },
+ "mounted1": {
+ "message": "π©πͺ There was a problem loading init data",
+ "title": "π©πͺ Init Problem"
+ },
+ "mounted2": {
+ "message": "π©πͺ There was a problem initializing the workflow",
+ "title": "π©πͺ Init Problem"
+ },
+ "openExecution": {
+ "message": "",
+ "title": "π©πͺ Problem loading execution"
+ },
+ "openWorkflow": {
+ "message": "",
+ "title": "π©πͺ Problem opening workflow"
+ },
+ "stopExecution": {
+ "message": "",
+ "title": "π©πͺ Problem stopping execution"
+ },
+ "stopWaitingForWebhook": {
+ "message": "",
+ "title": "π©πͺ Problem deleting the test-webhook"
+ }
+ },
+ "showMessage": {
+ "addNodeButton": {
+ "message": "π©πͺ Node of type {nodeTypeName} could not be created as it is not known.",
+ "title": "π©πͺ Could not create node!"
+ },
+ "keyDown": {
+ "message": "",
+ "title": "π©πͺ Workflow created"
+ },
+ "showMaxNodeTypeError": {
+ "message": {
+ "plural": "π©πͺ Node cannot be created because in a workflow max. {maxNodes} nodes of type {nodeTypeDataDisplayName} are allowed!",
+ "singular": "π©πͺ Node cannot be created because in a workflow max. {maxNodes} node of type {nodeTypeDataDisplayName} is allowed!"
+ },
+ "title": "π©πͺ Could not create node!"
+ },
+ "stopExecutionCatch": {
+ "message": "π©πͺ Unable to stop operation in time. Workflow finished executing already.",
+ "title": "π©πͺ Workflow finished executing"
+ },
+ "stopExecutionTry": {
+ "message": "π©πͺ The execution with the id {executionId} got stopped!",
+ "title": "π©πͺ Execution stopped"
+ },
+ "stopWaitingForWebhook": {
+ "message": "",
+ "title": "π©πͺ Webhook got deleted"
+ }
+ },
+ "stopCurrentExecution": "π©πͺ Stop current execution",
+ "stopWaitingForWebhookCall": "π©πͺ Stop waiting for Webhook call",
+ "stoppingCurrentExecution": "π©πͺ Stopping current execution",
+ "thereWasAProblemLoadingTheNodeParametersOfNode": "π©πͺ There was a problem loading the node-parameters of node",
+ "thisExecutionHasntFinishedYet": "This execution hasn't finished yet",
+ "toSeeTheLatestStatus": "π©πͺ to see the latest status",
+ "workflowTemplateWithIdCouldNotBeFound": "π©πͺ Workflow template with id \"{templateId}\" could not be found!",
+ "workflowWithIdCouldNotBeFound": "π©πͺ Workflow with id \"{workflowId}\" could not be found!",
+ "zoomIn": "π©πͺ Zoom In",
+ "zoomOut": "π©πͺ Zoom Out",
+ "zoomToFit": "π©πͺ Zoom to Fit"
+ },
+ "nodeWebhooks": {
+ "clickToCopyWebhookUrls": "π©πͺ Click to copy Webhook URLs",
+ "clickToDisplayWebhookUrls": "π©πͺ Click to display Webhook URLs",
+ "clickToHideWebhookUrls": "π©πͺ Click to hide Webhook URLs",
+ "invalidExpression": "π©πͺ [INVALID EXPRESSION]",
+ "productionUrl": "π©πͺ Production URL",
+ "showMessage": {
+ "message": "π©πͺ The webhook URL was successfully copied!",
+ "title": "π©πͺ Copied"
+ },
+ "testUrl": "π©πͺ Test URL",
+ "webhookUrls": "π©πͺ Webhook URLs"
+ },
+ "parameterInput": {
+ "addExpression": "π©πͺ Add Expression",
+ "error": "π©πͺ ERROR",
+ "issues": "π©πͺ Issues",
+ "loadingOptions": "π©πͺ Loading options...",
+ "openEditWindow": "π©πͺ Open Edit Window",
+ "parameter": "π©πͺ Parameter: \"{shortPath}\"",
+ "parameterHasExpression": "π©πͺ Parameter: \"{shortPath}\" has expression!",
+ "parameterHasIssues": "π©πͺ Parameter: \"{shortPath}\" has issues!",
+ "parameterHasIssuesAndExpression": "π©πͺ Parameter: \"{shortPath}\" has issues and expression!",
+ "parameterOptions": "π©πͺ Parameter Options",
+ "refreshList": "π©πͺ Refresh List",
+ "removeExpression": "π©πͺ Remove Expression",
+ "resetValue": "π©πͺ Reset Value",
+ "selectDateAndTime": "π©πͺ Select date and time"
+ },
+ "parameterInputExpanded": {
+ "openDocs": "π©πͺ Open docs",
+ "thisFieldIsRequired": "π©πͺ This field is required."
+ },
+ "parameterInputList": {
+ "delete": "π©πͺ Delete",
+ "deleteParameter": "π©πͺ Delete Parameter",
+ "parameterOptions": "π©πͺ Parameter Options"
+ },
+ "personalizationModal": {
+ "automationConsulting": "π©πͺ Automation consulting",
+ "continue": "π©πͺ Continue",
+ "errorWhileSubmittingResults": "π©πͺ Error while submitting results",
+ "finance": "π©πͺ finance",
+ "getStarted": "π©πͺ Get started",
+ "howAreYourCodingSkills": "π©πͺ How are your coding skills",
+ "howBigIsYourCompany": "π©πͺ How big is your company",
+ "hr": "π©πͺ HR",
+ "imNotUsingN8nForWork": "I'm not using n8n for work",
+ "itEngineering": "π©πͺ IT / Engineering",
+ "legal": "π©πͺ legal",
+ "lessThan20people": "π©πͺ Less than 20 people",
+ "lookOutForThingsMarked": "π©πͺ Look out for things marked with a β¨. They are personalized to make n8n more relevant to you.",
+ "marketingGrowth": "π©πͺ Marketing / Growth",
+ "neverCoded": "π©πͺ Never coded",
+ "operations": "π©πͺ operations",
+ "otherPleaseSpecify": "π©πͺ Other (please specify)",
+ "people": "π©πͺ people",
+ "proCoder": "π©πͺ Pro coder",
+ "product": "π©πͺ Product",
+ "salesBusinessDevelopment": "π©πͺ Sales / Business Development",
+ "security": "π©πͺ Security",
+ "select": "π©πͺ Select...",
+ "specifyYourWorkArea": "π©πͺ Specify your work area",
+ "support": "π©πͺ Support",
+ "thanks": "π©πͺ Thanks!",
+ "theseQuestionsHelpUs": "π©πͺ These questions help us tailor n8n to you",
+ "whichOfTheseAreasDoYouMainlyWorkIn": "π©πͺ Which of these areas do you mainly work in?"
+ },
+ "pushConnection": {
+ "showMessage": {
+ "message": "",
+ "title": "π©πͺ Workflow executed successfully"
+ }
+ },
+ "pushConnectionTracker": {
+ "cannotConnectToServer": "π©πͺ Cannot connect to server.
It is either down or you have a connection issue.
It should reconnect automatically once the issue is resolved.",
+ "connectionLost": "π©πͺ Connection lost"
+ },
+ "readOnly": {
+ "readOnly": "π©πͺ Read only",
+ "youreViewingTheLogOf": "π©πͺ You're viewing the log of a previous execution. You cannot
\n\t\tmake changes since this execution already occured. Make changes
\n\t\tto this workflow by clicking on its name on the left."
+ },
+ "runData": {
+ "binary": "π©πͺ Binary",
+ "copyItemPath": "π©πͺ Copy Item Path",
+ "copyParameterPath": "π©πͺ Copy Parameter Path",
+ "copyToClipboard": "π©πͺ Copy to Clipboard",
+ "copyValue": "π©πͺ Copy Value",
+ "dataOfExecution": "π©πͺ Data of Execution",
+ "dataReturnedByThisNodeWillDisplayHere": "π©πͺ Data returned by this node will display here.",
+ "displayDataAnyway": "π©πͺ Display Data Anyway",
+ "entriesExistButThey": "π©πͺ Entries exist but they do not contain any JSON data.",
+ "executeNode": "π©πͺ Execute Node",
+ "executesThisNodeAfterExecuting": "π©πͺ Executes this {nodeName} node after executing any previous nodes that have not yet returned data",
+ "executionTime": "π©πͺ Execution Time",
+ "fileExtension": "π©πͺ File Extension",
+ "fileName": "π©πͺ File Name",
+ "items": "π©πͺ Items",
+ "json": "π©πͺ JSON",
+ "mimeType": "π©πͺ Mime Type",
+ "ms": "π©πͺ ms",
+ "noBinaryDataFound": "π©πͺ No binary data found",
+ "noData": "π©πͺ No data",
+ "noTextDataFound": "π©πͺ No text data found",
+ "nodeReturnedALargeAmountOfData": "π©πͺ Node returned a large amount of data",
+ "output": "π©πͺ Output",
+ "showBinaryData": "π©πͺ Show Binary Data",
+ "startTime": "π©πͺ Start Time",
+ "table": "π©πͺ Table",
+ "theNodeContains": "π©πͺ The node contains {numberOfKb} KB of data.
Displaying it could cause problems!
If you do decide to display it, avoid the JSON view!"
+ },
+ "saveButton": {
+ "save": "@:reusableBaseText.save",
+ "saved": "π©πͺ Saved",
+ "saving": "π©πͺ Saving"
+ },
+ "showMessage": {
+ "cancel": "@:reusableBaseText.cancel",
+ "ok": "π©πͺ OK",
+ "showDetails": "π©πͺ Show Details"
+ },
+ "tagsDropdown": {
+ "createTag": "π©πͺ Create tag \"{filter}\"",
+ "manageTags": "π©πͺ Manage tags",
+ "noMatchingTagsExist": "π©πͺ No matching tags exist",
+ "noTagsExist": "π©πͺ No tags exist",
+ "showError": {
+ "message": "π©πͺ A problem occurred when trying to create the {name} tag",
+ "title": "π©πͺ New tag was not created"
+ },
+ "typeToCreateATag": "π©πͺ Type to create a tag"
+ },
+ "tagsManager": {
+ "couldNotDeleteTag": "π©πͺ Could not delete tag",
+ "done": "π©πͺ Done",
+ "manageTags": "π©πͺ Manage tags",
+ "showError": {
+ "onCreate": {
+ "message": "π©πͺ A problem occurred when trying to create the {escapedName} tag",
+ "title": "π©πͺ New tag was not created"
+ },
+ "onDelete": {
+ "message": "π©πͺ A problem occurred when trying to delete the {escapedName} tag",
+ "title": "π©πͺ Tag was not deleted"
+ },
+ "onUpdate": {
+ "message": "π©πͺ A problem occurred when trying to update the {escapedName} tag",
+ "title": "π©πͺ Tag was not updated"
+ }
+ },
+ "showMessage": {
+ "onDelete": {
+ "message": "π©πͺ A problem occurred when trying to delete the {escapedName} tag",
+ "title": "π©πͺ Tag was deleted"
+ },
+ "onUpdate": {
+ "message": "π©πͺ The {escapedOldName} tag was successfully updated to {escapedName}",
+ "title": "π©πͺ Tag was updated"
+ }
+ },
+ "tagNameCannotBeEmpty": "π©πͺ Tag name cannot be empty"
+ },
+ "tagsTable": {
+ "areYouSureYouWantToDeleteThisTag": "π©πͺ Are you sure you want to delete this tag?",
+ "cancel": "@:reusableBaseText.cancel",
+ "createTag": "π©πͺ Create tag",
+ "deleteTag": "π©πͺ Delete tag",
+ "editTag": "π©πͺ Edit Tag",
+ "name": "@:reusableBaseText.name",
+ "noMatchingTagsExist": "π©πͺ No matching tags exist",
+ "saveChanges": "π©πͺ Save changes?",
+ "usage": "π©πͺ Usage"
+ },
+ "tagsTableHeader": {
+ "addNew": "π©πͺ Add new",
+ "searchTags": "π©πͺ Search Tags"
+ },
+ "tagsView": {
+ "inUse": {
+ "plural": "π©πͺ {count} workflows",
+ "singular": "π©πͺ {count} workflow"
+ },
+ "notBeingUsed": "π©πͺ Not being used"
+ },
+ "textEdit": {
+ "edit": "π©πͺ Edit"
+ },
+ "timeAgo": {
+ "daysAgo": "π©πͺ %s days ago",
+ "hoursAgo": "π©πͺ %s hours ago",
+ "inDays": "π©πͺ in %s days",
+ "inHours": "π©πͺ in %s hours",
+ "inMinutes": "π©πͺ in %s minutes",
+ "inMonths": "π©πͺ in %s months",
+ "inOneDay": "π©πͺ in 1 day",
+ "inOneHour": "π©πͺ in 1 hour",
+ "inOneMinute": "π©πͺ in 1 minute",
+ "inOneMonth": "π©πͺ in 1 month",
+ "inOneWeek": "π©πͺ in 1 week",
+ "inOneYear": "π©πͺ in 1 year",
+ "inWeeks": "π©πͺ in %s weeks",
+ "inYears": "π©πͺ in %s years",
+ "justNow": "π©πͺ Just now",
+ "minutesAgo": "π©πͺ %s minutes ago",
+ "monthsAgo": "π©πͺ %s months ago",
+ "oneDayAgo": "π©πͺ 1 day ago",
+ "oneHourAgo": "π©πͺ 1 hour ago",
+ "oneMinuteAgo": "π©πͺ 1 minute ago",
+ "oneMonthAgo": "π©πͺ 1 month ago",
+ "oneWeekAgo": "π©πͺ 1 week ago",
+ "oneYearAgo": "π©πͺ 1 year ago",
+ "rightNow": "π©πͺ Right now",
+ "weeksAgo": "π©πͺ %s weeks ago",
+ "yearsAgo": "π©πͺ %s years ago"
+ },
+ "updatesPanel": {
+ "andIs": "π©πͺ and is",
+ "behindTheLatest": "π©πͺ behind the latest and greatest n8n",
+ "howToUpdateYourN8nVersion": "π©πͺ How to update your n8n version",
+ "version": "π©πͺ {numberOfVersions} version{howManySuffix}",
+ "weVeBeenBusy": "π©πͺ Weβve been busy β¨",
+ "youReOnVersion": "π©πͺ Youβre on {currentVersionName}, which was released"
+ },
+ "variableSelector": {
+ "context": "π©πͺ Context",
+ "currentNode": "π©πͺ Current Node",
+ "nodes": "π©πͺ Nodes",
+ "outputData": "π©πͺ Output Data",
+ "parameters": "π©πͺ Parameters",
+ "variableFilter": "π©πͺ Variable filter..."
+ },
+ "variableSelectorItem": {
+ "empty": "π©πͺ --- EMPTY ---",
+ "selectItem": "π©πͺ Select Item"
+ },
+ "versionCard": {
+ "breakingChanges": "π©πͺ Breaking changes",
+ "released": "π©πͺ Released",
+ "securityUpdate": "π©πͺ Security update",
+ "thisVersionHasASecurityIssue": "π©πͺ This version has a security issue.
It is listed here for completeness.",
+ "unknown": "π©πͺ unknown",
+ "version": "π©πͺ Version"
+ },
+ "workflowActivator": {
+ "activateWorkflow": "π©πͺ Activate workflow",
+ "confirmMessage": {
+ "cancelButtonText": "",
+ "confirmButtonText": "π©πͺ Yes, activate and save!",
+ "headline": "π©πͺ Activate and save?",
+ "message": "π©πͺ When you activate the workflow all currently unsaved changes of the workflow will be saved."
+ },
+ "deactivateWorkflow": "π©πͺ Deactivate workflow",
+ "showError": {
+ "message": "π©πͺ There was a problem and the workflow could not be {newStateName}",
+ "title": "π©πͺ Problem"
+ },
+ "showMessage": {
+ "activeChangedNodesIssuesExistTrue": {
+ "message": "π©πͺ It is only possible to activate a workflow when all issues on all nodes got resolved!",
+ "title": "π©πͺ Problem activating workflow"
+ },
+ "activeChangedWorkflowIdUndefined": {
+ "message": "π©πͺ The workflow did not get saved yet so cannot be set active!",
+ "title": "π©πͺ Problem activating workflow"
+ },
+ "displayActivationError": {
+ "message": {
+ "catchBlock": "π©πͺ Sorry there was a problem requesting the error",
+ "errorDataNotUndefined": "π©πͺ The following error occurred on workflow activation:
{message}",
+ "errorDataUndefined": "π©πͺ Sorry there was a problem. No error got found to display."
+ },
+ "title": "π©πͺ Problem activating workflow"
+ }
+ },
+ "theWorkflowIsSetToBeActiveBut": "π©πͺ The workflow is set to be active but could not be started.
Click to display error message."
+ },
+ "workflowDetails": {
+ "active": "π©πͺ Active",
+ "addTag": "π©πͺ Add tag",
+ "showMessage": {
+ "message": "π©πͺ Please enter a name, or press 'esc' to go back to the old one.",
+ "title": "π©πͺ Name missing"
+ }
+ },
+ "workflowHelpers": {
+ "showMessage": {
+ "message": "",
+ "title": "π©πͺ Problem saving workflow"
+ }
+ },
+ "workflowOpen": {
+ "active": "π©πͺ Active",
+ "confirmMessage": {
+ "cancelButtonText": "",
+ "confirmButtonText": "π©πͺ Yes, switch workflows and forget changes",
+ "headline": "π©πͺ Save your Changes?",
+ "message": "π©πͺ When you switch workflows your current workflow changes will be lost."
+ },
+ "created": "π©πͺ Created",
+ "name": "@:reusableBaseText.name",
+ "openWorkflow": "π©πͺ Open Workflow",
+ "searchWorkflows": "π©πͺ Search workflows...",
+ "showError": {
+ "message": "π©πͺ There was a problem loading the workflows",
+ "title": "π©πͺ Problem loading workflows"
+ },
+ "showMessage": {
+ "message": "π©πͺ This is the current workflow",
+ "title": "π©πͺ Already open"
+ },
+ "updated": "π©πͺ Updated"
+ },
+ "workflowRun": {
+ "noActiveConnectionToTheServer": "π©πͺ No active connection to server. It is maybe down.",
+ "showError": {
+ "message": "",
+ "title": "π©πͺ Problem running workflow"
+ },
+ "showMessage": {
+ "message": "π©πͺ The workflow has issues. Please fix them first",
+ "title": "π©πͺ Workflow cannot be executed"
+ }
+ },
+ "workflowSettings": {
+ "defaultTimezone": "π©πͺ Default - {defaultTimezoneValue}",
+ "defaultTimezoneNotValid": "π©πͺ Default Timezone not valid",
+ "errorWorkflow": "π©πͺ Error Workflow",
+ "helpTexts": {
+ "errorWorkflow": "π©πͺ The workflow to run in case the current one fails.
To function correctly that workflow has to contain an 'Error Trigger' node!",
+ "executionTimeout": "π©πͺ After what time the workflow should timeout.",
+ "executionTimeoutToggle": "π©πͺ Cancel workflow execution after defined time",
+ "saveDataErrorExecution": "π©πͺ If data of executions should be saved in case they failed.",
+ "saveDataSuccessExecution": "π©πͺ If data of executions should be saved in case they succeed.",
+ "saveExecutionProgress": "π©πͺ If data should be saved after each node, allowing you to resume in case of errors from where it stopped. May increase latency.",
+ "saveManualExecutions": "π©πͺ If data of executions should be saved when started manually from the editor.",
+ "timezone": "π©πͺ The timezone in which the workflow should run. Gets for example used by 'Cron' node."
+ },
+ "hours": "π©πͺ hours",
+ "minutes": "π©πͺ minutes",
+ "noWorkflow": "π©πͺ - No Workflow -",
+ "save": "@:reusableBaseText.save",
+ "saveDataErrorExecution": "π©πͺ Save Data Error Execution",
+ "saveDataErrorExecutionOptions": {
+ "defaultSave": "π©πͺ Default - ({defaultValue})",
+ "doNotSave": "π©πͺ Do not save",
+ "save": "@:reusableBaseText.save"
+ },
+ "saveDataSuccessExecution": "π©πͺ Save Data Success Execution",
+ "saveDataSuccessExecutionOptions": {
+ "defaultSave": "π©πͺ Default - ({defaultValue})",
+ "doNotSave": "π©πͺ Do not save",
+ "save": "@:reusableBaseText.save"
+ },
+ "saveExecutionProgress": "π©πͺ Save Execution Progress",
+ "saveExecutionProgressOptions": {
+ "defaultSave": "π©πͺ Default - ({defaultValue})",
+ "no": "π©πͺ No",
+ "yes": "π©πͺ Yes"
+ },
+ "saveManualExecutions": "π©πͺ Save Manual Executions",
+ "saveManualOptions": {
+ "defaultSave": "π©πͺ Default - ({defaultValue})",
+ "no": "π©πͺ No",
+ "yes": "π©πͺ Yes"
+ },
+ "seconds": "π©πͺ seconds",
+ "selectOption": "π©πͺ Select Option",
+ "settingsFor": "π©πͺ Settings for {workflowName} (#{workflowId})",
+ "showError": {
+ "saveSettings1": {
+ "errorMessage": "π©πͺ Timeout is activated but set to 0",
+ "message": "π©πͺ There was a problem saving the settings",
+ "title": "π©πͺ Problem saving settings"
+ },
+ "saveSettings2": {
+ "errorMessage": "π©πͺ Maximum Timeout is: {hours} hours, {minutes} minutes, {seconds} seconds",
+ "message": "π©πͺ Set timeout is exceeding the maximum timeout!",
+ "title": "π©πͺ Problem saving settings"
+ },
+ "saveSettings3": {
+ "message": "π©πͺ There was a problem saving the settings",
+ "title": "π©πͺ Problem saving settings"
+ }
+ },
+ "showMessage": {
+ "saveSettings": {
+ "message": "π©πͺ The workflow settings got saved!",
+ "title": "π©πͺ Settings saved"
+ }
+ },
+ "timeoutAfter": "π©πͺ Timeout After",
+ "timeoutWorkflow": "π©πͺ Timeout Workflow",
+ "timezone": "π©πͺ Timezone"
+ }
+}
\ No newline at end of file
diff --git a/packages/editor-ui/src/i18n/locales/de.ts b/packages/editor-ui/src/i18n/locales/de.ts
deleted file mode 100644
index d6cd51c77b..0000000000
--- a/packages/editor-ui/src/i18n/locales/de.ts
+++ /dev/null
@@ -1,1027 +0,0 @@
-export default {
- numberFormats: {
- decimal: {
- style: 'decimal',
- },
- },
- reusableBaseText: {
- cancel: 'π©πͺ Cancel',
- name: 'π©πͺ Name',
- save: 'π©πͺ Save',
- },
- reusableDynamicText: {
- oauth2: {
- clientId: 'π©πͺ Client ID',
- clientSecret: 'π©πͺ Client Secret',
- },
- },
-
- about: {
- aboutN8n: 'π©πͺ About n8n',
- apacheWithCommons20Clause: 'π©πͺ Apache 2.0 with Commons Clause',
- close: 'π©πͺ Close',
- license: 'π©πͺ License',
- n8nVersion: 'π©πͺ n8n Version',
- sourceCode: 'π©πͺ Source Code',
- },
- binaryDataDisplay: {
- backToList: 'π©πͺ Back to list',
- backToOverviewPage: 'π©πͺ Back to overview page',
- noDataFoundToDisplay: 'π©πͺ No data found to display',
- yourBrowserDoesNotSupport: 'π©πͺ Your browser does not support the video element. Kindly update it to latest version.',
- },
- codeEdit: {
- edit: 'π©πͺ Edit',
- },
- collectionParameter: {
- choose: 'π©πͺ Choose...',
- noProperties: 'π©πͺ No properties',
- },
- credentialEdit: {
- credentialConfig: {
- accountConnected: 'π©πͺ Account connected',
- clickToCopy: 'π©πͺ Click To Copy',
- connectionTestedSuccessfully: 'π©πͺ Connection tested successfully',
- couldntConnectWithTheseSettings: 'Couldnβt connect with these settings',
- needHelpFillingOutTheseFields: 'π©πͺ Need help filling out these fields?',
- oAuthRedirectUrl: 'π©πͺ OAuth Redirect URL',
- openDocs: 'π©πͺ Open docs',
- pleaseCheckTheErrorsBelow: 'π©πͺ Please check the errors below',
- reconnect: 'π©πͺ reconnect',
- reconnectOAuth2Credential: 'π©πͺ Reconnect OAuth2 Credential',
- redirectUrlCopiedToClipboard: 'π©πͺ Redirect URL copied to clipboard',
- retry: 'π©πͺ Retry',
- retryCredentialTest: 'π©πͺ Retry credential test',
- retrying: 'π©πͺ Retrying',
- subtitle: 'π©πͺ In {appName}, use the URL above when prompted to enter an OAuth callback or redirect URL',
- theServiceYouReConnectingTo: "π©πͺ the service you're connecting to",
- },
- credentialEdit: {
- confirmMessage: {
- beforeClose1: {
- cancelButtonText: 'π©πͺ Keep Editing',
- confirmButtonText: 'π©πͺ Close',
- headline: 'π©πͺ Close without saving?',
- message: 'π©πͺ Are you sure you want to throw away the changes you made to the {credentialDisplayName} credential?',
- },
- beforeClose2: {
- cancelButtonText: 'π©πͺ Keep Editing',
- confirmButtonText: 'π©πͺ Close',
- headline: 'π©πͺ Close without connecting?',
- message: 'π©πͺ You need to connect your credential for it to work',
- },
- deleteCredential: {
- cancelButtonText: '',
- confirmButtonText: 'π©πͺ Yes, delete!',
- headline: 'π©πͺ Delete Credential?',
- message: 'π©πͺ Are you sure you want to delete "{savedCredentialName}" credential?',
- },
- },
- connection: 'π©πͺ Connection',
- couldNotFindCredentialOfType: 'π©πͺ Could not find credential of type',
- couldNotFindCredentialWithId: 'π©πͺ Could not find credential with ID',
- details: 'π©πͺ Details',
- showError: {
- createCredential: {
- message: '',
- title: 'π©πͺ Problem creating credential',
- },
- deleteCredential: {
- message: '',
- title: 'π©πͺ Problem deleting credential',
- },
- generateAuthorizationUrl: {
- message: 'π©πͺ There was a problem generating the authorization URL',
- title: 'π©πͺ OAuth Authorization Error',
- },
- loadCredential: {
- message: '',
- title: 'π©πͺ Problem loading credential',
- },
- updateCredential: {
- message: '',
- title: 'π©πͺ Problem updating credential',
- },
- },
- showMessage: {
- message: 'π©πͺ The credential {savedCredentialName} was deleted!',
- title: 'π©πͺ Credential deleted',
- },
- },
- credentialInfo: {
- allowUseBy: 'π©πͺ Allow use by',
- created: 'π©πͺ Created',
- id: 'π©πͺ ID',
- lastModified: 'π©πͺ Last modified',
- },
- oAuthButton: {
- connectMyAccount: 'π©πͺ Connect my account',
- signInWithGoogle: 'π©πͺ Sign in with Google',
- },
- },
- credentialSelectModal: {
- addNewCredential: 'π©πͺ Add new credential',
- continue: 'π©πͺ Continue',
- searchForApp: 'π©πͺ Search for app...',
- selectAnAppOrServiceToConnectTo: 'π©πͺ Select an app or service to connect to',
- },
- credentialsList: {
- addNew: 'π©πͺ Add New',
- confirmMessage: {
- cancelButtonText: '',
- confirmButtonText: 'π©πͺ Yes, delete!',
- headline: 'π©πͺ Delete Credential?',
- message: 'π©πͺ Are you sure you want to delete {credentialName} credential?',
- },
- createNewCredential: 'π©πͺ Create New Credential',
- created: 'π©πͺ Created',
- credentials: 'π©πͺ Credentials',
- deleteCredential: 'π©πͺ Delete Credential',
- editCredential: 'π©πͺ Edit Credential',
- name: '@:reusableBaseText.name',
- operations: 'π©πͺ Operations',
- showError: {
- deleteCredential: {
- message: '',
- title: 'π©πͺ Problem deleting credential',
- },
- },
- showMessage: {
- message: 'π©πͺ The credential {credentialName} got deleted!',
- title: 'π©πͺ Credential deleted',
- },
- type: 'π©πͺ Type',
- updated: 'π©πͺ Updated',
- yourSavedCredentials: 'π©πͺ Your saved credentials',
- },
- dataDisplay: {
- needHelp: 'π©πͺ Need help?',
- nodeDocumentation: 'π©πͺ Node Documentation',
- openDocumentationFor: 'π©πͺ Open {nodeTypeDisplayName} documentation',
- },
- displayWithChange: {
- cancelEdit: 'π©πͺ Cancel Edit',
- clickToChange: 'π©πͺ Click to Change',
- setValue: 'π©πͺ Set Value',
- },
- duplicateWorkflowDialog: {
- cancel: '@:reusableBaseText.cancel',
- chooseOrCreateATag: 'π©πͺ Choose or create a tag',
- duplicateWorkflow: 'π©πͺ Duplicate Workflow',
- enterWorkflowName: 'π©πͺ Enter workflow name',
- save: '@:reusableBaseText.save',
- showMessage: {
- message: 'π©πͺ Please enter a name.',
- title: 'π©πͺ Name missing',
- },
- },
- executionDetails: {
- executionFailed: 'π©πͺ Execution failed',
- executionId: 'π©πͺ Execution ID',
- executionWaiting: 'π©πͺ Execution waiting',
- executionWasSuccessful: 'π©πͺ Execution was successful',
- openWorkflow: 'π©πͺ Open Workflow',
- },
- executionsList: {
- allWorkflows: 'π©πͺ All Workflows',
- anyStatus: 'π©πͺ Any Status',
- autoRefresh: 'π©πͺ Auto refresh',
- confirmMessage: {
- cancelButtonText: '',
- confirmButtonText: 'π©πͺ Yes, delete!',
- headline: 'π©πͺ Delete Executions?',
- message: 'π©πͺ Are you sure that you want to delete the {numSelected} selected executions?',
- },
- deleteSelected: 'π©πͺ Delete Selected',
- error: 'π©πͺ Error',
- filters: 'π©πͺ Filters',
- loadMore: 'π©πͺ Load More',
- mode: 'π©πͺ Mode',
- modes: {
- error: 'π©πͺ error',
- manual: 'π©πͺ manual',
- retry: 'π©πͺ retry',
- trigger: 'π©πͺ trigger',
- },
- name: '@:reusableBaseText.name',
- openPastExecution: 'π©πͺ Open Past Execution',
- retryExecution: 'π©πͺ Retry execution',
- retryOf: 'π©πͺ Retry of',
- retryWithCurrentlySavedWorkflow: 'π©πͺ Retry with currently saved workflow',
- retryWithOriginalworkflow: 'π©πͺ Retry with original workflow',
- running: 'π©πͺ Running',
- runningTime: 'π©πͺ Running Time',
- selectStatus: 'π©πͺ Select Status',
- selectWorkflow: 'π©πͺ Select Workflow',
- selected: 'π©πͺ Selected',
- showError: {
- handleDeleteSelected: {
- message: '',
- title: 'π©πͺ Problem deleting executions',
- },
- loadMore: {
- message: '',
- title: 'π©πͺ Problem loading workflows',
- },
- loadWorkflows: {
- message: '',
- title: 'π©πͺ Problem loading workflows',
- },
- refreshData: {
- message: '',
- title: 'π©πͺ Problem loading data',
- },
- retryExecution: {
- message: '',
- title: 'π©πͺ Problem with retry',
- },
- stopExecution: {
- message: '',
- title: 'π©πͺ Problem stopping execution',
- },
- },
- showMessage: {
- handleDeleteSelected: {
- message: 'π©πͺ The executions got deleted!',
- title: 'π©πͺ Execution deleted',
- },
- retrySuccessfulFalse: {
- message: 'π©πͺ The retry was not successful!',
- title: 'π©πͺ Retry unsuccessful',
- },
- retrySuccessfulTrue: {
- message: '',
- title: 'π©πͺ Retry successful',
- },
- stopExecution: {
- message: 'π©πͺ The execution with the ID {activeExecutionId} got stopped!',
- title: 'π©πͺ Execution stopped',
- },
- },
- startedAtId: 'π©πͺ Started At / ID',
- status: 'π©πͺ Status',
- statusTooltipText: {
- theWorkflowExecutionFailed: 'π©πͺ The workflow execution failed.',
- theWorkflowExecutionFailedButTheRetryWasSuccessful: 'π©πͺ The workflow execution failed but the retry {entryRetrySuccessId} was successful.',
- theWorkflowExecutionIsProbablyStillRunning: 'π©πͺ The workflow execution is probably still running but it may have crashed and n8n cannot safely tell. ',
- theWorkflowExecutionWasARetryOfAndFailed: 'π©πͺ The workflow execution was a retry of {entryRetryOf} and failed.
New retries have to be,started from the original execution.',
- theWorkflowExecutionWasARetryOfAndItWasSuccessful: 'π©πͺ The workflow execution was a retry of {entryRetryOf} and it was successful.',
- theWorkflowExecutionWasSuccessful: 'π©πͺ The worklow execution was successful.',
- theWorkflowIsCurrentlyExecuting: 'π©πͺ The worklow is currently executing.',
- theWorkflowIsWaitingIndefinitely: 'π©πͺ The workflow is waiting indefinitely for an incoming webhook call.',
- theWorkflowIsWaitingTill: 'The worklow is waiting till {waitDateDate} {waitDateTime}.',
- },
- stopExecution: 'π©πͺ Stop Execution',
- success: 'π©πͺ Success',
- successRetry: 'π©πͺ Success retry',
- unknown: 'π©πͺ Unknown',
- unsavedWorkflow: 'π©πͺ [UNSAVED WORKFLOW]',
- waiting: 'π©πͺ Waiting',
- workflowExecutions: 'π©πͺ Workflow Executions',
- },
- expressionEdit: {
- editExpression: 'π©πͺ Edit Expression',
- expression: 'π©πͺ Expression',
- result: 'π©πͺ Result',
- variableSelector: 'π©πͺ Variable Selector',
- },
- fixedCollectionParameter: {
- choose: 'π©πͺ Choose...',
- currentlyNoItemsExist: 'π©πͺ Currently no items exist',
- deleteItem: 'π©πͺ Delete item',
- moveDown: 'π©πͺ Move down',
- moveUp: 'π©πͺ Move up',
- },
- genericHelpers: {
- loading: 'π©πͺ Loading',
- min: 'π©πͺ min.',
- sec: 'π©πͺ sec.',
- showMessage: {
- message: 'π©πͺ The workflow cannot be edited as a past execution gets displayed. To make changed either open the original workflow of which the execution gets displayed or save it under a new name first.',
- title: 'π©πͺ Workflow cannot be changed!',
- },
- },
- mainSidebar: {
- aboutN8n: 'π©πͺ About n8n',
- confirmMessage: {
- workflowDelete: {
- cancelButtonText: '',
- confirmButtonText: 'π©πͺ Yes, delete!',
- headline: 'π©πͺ Delete Workflow?',
- message: 'π©πͺ Are you sure that you want to delete the workflow {workflowName}?',
- },
- workflowNew: {
- cancelButtonText: '',
- confirmButtonText: 'π©πͺ Yes, switch workflows and forget changes',
- headline: 'π©πͺ Save your Changes?',
- message: 'π©πͺ When you switch workflows your current workflow changes will be lost.',
- },
- },
- credentials: 'π©πͺ Credentials',
- delete: 'π©πͺ Delete',
- download: 'π©πͺ Download',
- duplicate: 'π©πͺ Duplicate',
- executions: 'π©πͺ Executions',
- help: 'π©πͺ Help',
- helpMenuItems: {
- documentation: 'π©πͺ Documentation',
- forum: 'π©πͺ Forum',
- workflows: 'π©πͺ Workflows',
- },
- importFromFile: 'π©πͺ Import from File',
- importFromUrl: 'π©πͺ Import from URL',
- new: 'π©πͺ New',
- open: 'π©πͺ Open',
- prompt: {
- cancel: '@:reusableBaseText.cancel',
- import: 'π©πͺ Import',
- importWorkflowFromUrl: 'π©πͺ Import Workflow from URL',
- invalidUrl: 'π©πͺ Invalid URL',
- workflowUrl: 'π©πͺ Workflow URL',
- },
- save: '@:reusableBaseText.save',
- settings: 'π©πͺ Settings',
- showError: {
- stopExecution: {
- message: '',
- title: 'π©πͺ Problem stopping execution',
- },
- },
- showMessage: {
- handleFileImport: {
- message: 'π©πͺ The file does not contain valid JSON data.',
- title: 'π©πͺ Could not import file',
- },
- handleSelect1: {
- message: 'π©πͺ The workflow {workflowName} got deleted.',
- title: 'π©πͺ Workflow got deleted',
- },
- handleSelect2: {
- message: '',
- title: 'π©πͺ Workflow created',
- },
- handleSelect3: {
- message: '',
- title: 'π©πͺ Workflow created',
- },
- stopExecution: {
- message: 'π©πͺ Execution with ID {executionId} got stopped!',
- title: 'π©πͺ Execution stopped',
- },
- },
- workflows: 'π©πͺ Workflows',
- },
- multipleParameter: {
- addItem: 'π©πͺ Add item',
- currentlyNoItemsExist: 'π©πͺ Currently no items exist',
- deleteItem: 'π©πͺ Delete item',
- moveDown: 'π©πͺ Move down',
- moveUp: 'π©πͺ Move up',
- },
- noTagsView: {
- readyToOrganizeYourWorkflows: 'π©πͺ Ready to organize your workflows?',
- withWorkflowTagsYouReFree: "π©πͺ With workflow tags, you're free to create the perfect tagging system for your flows",
- },
- node: {
- activateDeactivateNode: 'π©πͺ Activate/Deactivate Node',
- deleteNode: 'π©πͺ Delete Node',
- disabled: 'π©πͺ Disabled',
- duplicateNode: 'π©πͺ Duplicate Node',
- editNode: 'π©πͺ Edit Node',
- executeNode: 'π©πͺ Execute Node',
- issues: 'π©πͺ Issues',
- nodeIsExecuting: 'π©πͺ Node is executing',
- nodeIsWaitingTill: 'π©πͺ Node is waiting till {date} {time}',
- theNodeIsWaitingIndefinitelyForAnIncomingWebhookCall: 'π©πͺ The node is waiting indefinitely for an incoming webhook call.',
- },
- nodeCreator: {
- categoryNames: {
- analytics: 'π©πͺ Analytics',
- communication: 'π©πͺ Communication',
- coreNodes: 'π©πͺ Core Nodes',
- customNodes: 'π©πͺ Custom Nodes',
- dataStorage: 'π©πͺ Data & Storage',
- development: 'π©πͺ Development',
- financeAccounting: 'π©πͺ Finance & Accounting',
- marketingContent: 'π©πͺ Marketing & Content',
- miscellaneous: 'π©πͺ Miscellaneous',
- productivity: 'π©πͺ Productivity',
- sales: 'π©πͺ Sales',
- suggestedNodes: 'π©πͺ Suggested Nodes β¨',
- utility: 'π©πͺ Utility',
- },
- mainPanel: {
- all: 'π©πͺ All',
- regular: 'π©πͺ Regular',
- trigger: 'π©πͺ Trigger',
- },
- noResults: {
- dontWorryYouCanProbablyDoItWithThe: 'π©πͺ Donβt worry, you can probably do it with the {httpRequest} or {webhook} node',
- httpRequest: 'π©πͺ HTTP Request',
- node: 'π©πͺ node',
- requestTheNode: 'π©πͺ Request the node',
- wantUsToMakeItFaster: 'π©πͺ Want us to make it faster?',
- weDidntMakeThatYet: "π©πͺ We didn't make that... yet",
- webhook: 'π©πͺ Webhook',
- },
- searchBar: {
- searchNodes: 'π©πͺ Search nodes...',
- },
- subcategoryDescriptions: {
- branches: 'π©πͺ Branches, core triggers, merge data',
- http: 'π©πͺ HTTP Requests (API calls), date and time, scrape HTML',
- manipulate: 'π©πͺ Manipulate data fields, run code',
- work: 'π©πͺ Work with CSV, XML, text, images etc.',
- },
- subcategoryNames: {
- dataTransformation: 'π©πͺ Data Transformation',
- files: 'π©πͺ Files',
- flow: 'π©πͺ Flow',
- helpers: 'π©πͺ Helpers',
- },
- },
- nodeCredentials: {
- createNew: 'π©πͺ Create New',
- credentialFor: 'π©πͺ Credential for {credentialType}',
- issues: 'π©πͺ Issues',
- selectCredential: 'π©πͺ Select Credential',
- showMessage: {
- message: 'π©πͺ Nodes that used credential "{oldCredentialName}" have been updated to use "{newCredentialName}"',
- title: 'π©πͺ Node credential updated',
- },
- updateCredential: 'π©πͺ Update Credential',
- },
- nodeErrorView: {
- cause: 'π©πͺ Cause',
- copyToClipboard: 'π©πͺ Copy to Clipboard',
- dataBelowMayContain: 'π©πͺ Data below may contain sensitive information. Proceed with caution when sharing.',
- details: 'π©πͺ Details',
- error: 'π©πͺ ERROR',
- httpCode: 'π©πͺ HTTP Code',
- showMessage: {
- message: '',
- title: 'π©πͺ Copied to clipboard',
- },
- stack: 'π©πͺ Stack',
- theErrorCauseIsTooLargeToBeDisplayed: 'π©πͺ The error cause is too large to be displayed.',
- time: 'π©πͺ Time',
- },
- nodeSettings: {
- alwaysOutputData: {
- description: 'π©πͺ If active, the node will return an empty item even if the
node returns no data during an initial execution. Be careful setting
this on IF-Nodes as it could cause an infinite loop.',
- displayName: 'π©πͺ Always Output Data',
- },
- clickOnTheQuestionMarkIcon: "π©πͺ Click the '?' icon to open this node on n8n.io",
- color: {
- description: 'π©πͺ The color of the node in the flow.',
- displayName: 'π©πͺ Node Color',
- },
- continueOnFail: {
- description: "π©πͺ If active, the workflow continues even if this node's
execution fails. When this occurs, the node passes along input data from
previous nodes - so your workflow should account for unexpected output data.",
- displayName: 'π©πͺ Continue On Fail',
- },
- executeOnce: {
- description: 'π©πͺ If active, the node executes only once, with data
from the first item it recieves.',
- displayName: 'π©πͺ Execute Once',
- },
- maxTries: {
- description: 'π©πͺ Number of times Retry On Fail should attempt to execute the node
before stopping and returning the execution as failed.',
- displayName: 'π©πͺ Max. Tries',
- },
- noDescriptionFound: 'π©πͺ No description found',
- nodeDescription: 'π©πͺ Node Description',
- notes: {
- description: 'π©πͺ Optional note to save with the node.',
- displayName: 'π©πͺ Notes',
- },
- notesInFlow: {
- description: 'π©πͺ If active, the note above will display in the flow as a subtitle.',
- displayName: 'π©πͺ Display note in flow?',
- },
- parameters: 'π©πͺ Parameters',
- retryOnFail: {
- description: 'π©πͺ If active, the node tries to execute a failed attempt
multiple times until it succeeds.',
- displayName: 'π©πͺ Retry On Fail',
- },
- settings: 'π©πͺ Settings',
- theNodeIsNotValidAsItsTypeIsUnknown: 'π©πͺ The node is not valid as its type {nodeType} is unknown.',
- thisNodeDoesNotHaveAnyParameters: 'π©πͺ This node does not have any parameters.',
- waitBetweenTries: {
- description: 'π©πͺ How long to wait between each attempt. Value in ms.',
- displayName: 'π©πͺ Wait Between Tries',
- },
- },
- nodeView: {
- addNode: 'π©πͺ Add node',
- confirmMessage: {
- beforeRouteLeave: {
- cancelButtonText: '',
- confirmButtonText: 'π©πͺ Yes, switch workflows and forget changes',
- headline: 'π©πͺ Save your Changes?',
- message: 'π©πͺ When you switch workflows your current workflow changes will be lost.',
- },
- initView: {
- cancelButtonText: '',
- confirmButtonText: 'π©πͺ Yes, switch workflows and forget changes',
- headline: 'π©πͺ Save your Changes?',
- message: 'π©πͺ When you switch workflows your current workflow changes will be lost.',
- },
- receivedCopyPasteData: {
- cancelButtonText: '',
- confirmButtonText: 'π©πͺ Yes, import!',
- headline: 'π©πͺ Import Workflow from URL?',
- message: 'π©πͺ Import workflow from this URL:
{plainTextData}',
- },
- },
- couldntImportWorkflow: "Couldn't import workflow",
- deletesTheCurrentExecutionData: 'π©πͺ Deletes the current Execution Data.',
- dropConnectionToAddNode: 'π©πͺ Drop connection
to add node',
- executesTheWorkflowFromTheStartOrWebhookNode: 'π©πͺ Executes the Workflow from the Start or Webhook Node.',
- itLooksLikeYouHaveBeenEditingSomething: 'π©πͺ It looks like you have been editing something. If you leave before saving, your changes will be lost.',
- loadingTemplate: 'π©πͺ Loading template',
- moreInfo: 'π©πͺ More info',
- noNodesGivenToAdd: 'π©πͺ No nodes given to add!',
- prompt: {
- cancel: '@:reusableBaseText.cancel',
- invalidName: 'π©πͺ Invalid Name',
- newName: 'π©πͺ New Name',
- rename: 'π©πͺ Rename',
- renameNode: 'π©πͺ Rename Node',
- },
- refresh: 'π©πͺ Refresh',
- resetZoom: 'π©πͺ Reset Zoom',
- runButtonText: {
- executeWorkflow: 'π©πͺ Execute Workflow',
- executingWorkflow: 'π©πͺ Executing Workflow',
- waitingForWebhookCall: 'π©πͺ Waiting for Webhook-Call',
- },
- showError: {
- getWorkflowDataFromUrl: {
- message: 'π©πͺ There was a problem loading the workflow data from URL',
- title: 'π©πͺ Problem loading workflow',
- },
- importWorkflowData: {
- message: 'π©πͺ There was a problem importing workflow data',
- title: 'π©πͺ Problem importing workflow',
- },
- mounted1: {
- message: 'π©πͺ There was a problem loading init data',
- title: 'π©πͺ Init Problem',
- },
- mounted2: {
- message: 'π©πͺ There was a problem initializing the workflow',
- title: 'π©πͺ Init Problem',
- },
- openExecution: {
- message: '',
- title: 'π©πͺ Problem loading execution',
- },
- openWorkflow: {
- message: '',
- title: 'π©πͺ Problem opening workflow',
- },
- stopExecution: {
- message: '',
- title: 'π©πͺ Problem stopping execution',
- },
- stopWaitingForWebhook: {
- message: '',
- title: 'π©πͺ Problem deleting the test-webhook',
- },
- },
- showMessage: {
- addNodeButton: {
- message: 'π©πͺ Node of type {nodeTypeName} could not be created as it is not known.',
- title: 'π©πͺ Could not create node!',
- },
- keyDown: {
- message: '',
- title: 'π©πͺ Workflow created',
- },
- showMaxNodeTypeError: {
- message: {
- plural: 'π©πͺ Node cannot be created because in a workflow max. {maxNodes} nodes of type {nodeTypeDataDisplayName} are allowed!',
- singular: 'π©πͺ Node cannot be created because in a workflow max. {maxNodes} node of type {nodeTypeDataDisplayName} is allowed!',
- },
- title: 'π©πͺ Could not create node!',
- },
- stopExecutionCatch: {
- message: 'π©πͺ Unable to stop operation in time. Workflow finished executing already.',
- title: 'π©πͺ Workflow finished executing',
- },
- stopExecutionTry: {
- message: 'π©πͺ The execution with the id {executionId} got stopped!',
- title: 'π©πͺ Execution stopped',
- },
- stopWaitingForWebhook: {
- message: '',
- title: 'π©πͺ Webhook got deleted',
- },
- },
- stopCurrentExecution: 'π©πͺ Stop current execution',
- stopWaitingForWebhookCall: 'π©πͺ Stop waiting for Webhook call',
- stoppingCurrentExecution: 'π©πͺ Stopping current execution',
- thereWasAProblemLoadingTheNodeParametersOfNode: 'π©πͺ There was a problem loading the node-parameters of node',
- thisExecutionHasntFinishedYet: "This execution hasn't finished yet",
- toSeeTheLatestStatus: 'π©πͺ to see the latest status',
- workflowTemplateWithIdCouldNotBeFound: 'π©πͺ Workflow template with id "{templateId}" could not be found!',
- workflowWithIdCouldNotBeFound: 'π©πͺ Workflow with id "{workflowId}" could not be found!',
- zoomIn: 'π©πͺ Zoom In',
- zoomOut: 'π©πͺ Zoom Out',
- zoomToFit: 'π©πͺ Zoom to Fit',
- },
- nodeWebhooks: {
- clickToCopyWebhookUrls: 'π©πͺ Click to copy Webhook URLs',
- clickToDisplayWebhookUrls: 'π©πͺ Click to display Webhook URLs',
- clickToHideWebhookUrls: 'π©πͺ Click to hide Webhook URLs',
- invalidExpression: 'π©πͺ [INVALID EXPRESSION]',
- productionUrl: 'π©πͺ Production URL',
- showMessage: {
- message: 'π©πͺ The webhook URL was successfully copied!',
- title: 'π©πͺ Copied',
- },
- testUrl: 'π©πͺ Test URL',
- webhookUrls: 'π©πͺ Webhook URLs',
- },
- parameterInput: {
- addExpression: 'π©πͺ Add Expression',
- error: 'π©πͺ ERROR',
- issues: 'π©πͺ Issues',
- loadingOptions: 'π©πͺ Loading options...',
- openEditWindow: 'π©πͺ Open Edit Window',
- parameter: 'π©πͺ Parameter: "{shortPath}"',
- parameterHasExpression: 'π©πͺ Parameter: "{shortPath}" has expression!',
- parameterHasIssues: 'π©πͺ Parameter: "{shortPath}" has issues!',
- parameterHasIssuesAndExpression: 'π©πͺ Parameter: "{shortPath}" has issues and expression!',
- parameterOptions: 'π©πͺ Parameter Options',
- refreshList: 'π©πͺ Refresh List',
- removeExpression: 'π©πͺ Remove Expression',
- resetValue: 'π©πͺ Reset Value',
- selectDateAndTime: 'π©πͺ Select date and time',
- },
- parameterInputExpanded: {
- openDocs: 'π©πͺ Open docs',
- thisFieldIsRequired: 'π©πͺ This field is required.',
- },
- parameterInputList: {
- delete: 'π©πͺ Delete',
- deleteParameter: 'π©πͺ Delete Parameter',
- parameterOptions: 'π©πͺ Parameter Options',
- },
- personalizationModal: {
- automationConsulting: 'π©πͺ Automation consulting',
- continue: 'π©πͺ Continue',
- errorWhileSubmittingResults: 'π©πͺ Error while submitting results',
- finance: 'π©πͺ finance',
- getStarted: 'π©πͺ Get started',
- howAreYourCodingSkills: 'π©πͺ How are your coding skills',
- howBigIsYourCompany: 'π©πͺ How big is your company',
- hr: 'π©πͺ HR',
- imNotUsingN8nForWork: "I'm not using n8n for work",
- itEngineering: 'π©πͺ IT / Engineering',
- legal: 'π©πͺ legal',
- lessThan20people: 'π©πͺ Less than 20 people',
- lookOutForThingsMarked: 'π©πͺ Look out for things marked with a β¨. They are personalized to make n8n more relevant to you.',
- marketingGrowth: 'π©πͺ Marketing / Growth',
- neverCoded: 'π©πͺ Never coded',
- operations: 'π©πͺ operations',
- otherPleaseSpecify: 'π©πͺ Other (please specify)',
- people: 'π©πͺ people',
- proCoder: 'π©πͺ Pro coder',
- product: 'π©πͺ Product',
- salesBusinessDevelopment: 'π©πͺ Sales / Business Development',
- security: 'π©πͺ Security',
- select: 'π©πͺ Select...',
- specifyYourWorkArea: 'π©πͺ Specify your work area',
- support: 'π©πͺ Support',
- thanks: 'π©πͺ Thanks!',
- theseQuestionsHelpUs: 'π©πͺ These questions help us tailor n8n to you',
- whichOfTheseAreasDoYouMainlyWorkIn: 'π©πͺ Which of these areas do you mainly work in?',
- },
- pushConnection: {
- showMessage: {
- message: '',
- title: 'π©πͺ Workflow executed successfully',
- },
- },
- pushConnectionTracker: {
- cannotConnectToServer: 'π©πͺ Cannot connect to server.
It is either down or you have a connection issue.
It should reconnect automatically once the issue is resolved.',
- connectionLost: 'π©πͺ Connection lost',
- },
- readOnly: {
- readOnly: 'π©πͺ Read only',
- youreViewingTheLogOf: "π©πͺ You're viewing the log of a previous execution. You cannot
\n\t\tmake changes since this execution already occured. Make changes
\n\t\tto this workflow by clicking on its name on the left.",
- },
- runData: {
- binary: 'π©πͺ Binary',
- copyItemPath: 'π©πͺ Copy Item Path',
- copyParameterPath: 'π©πͺ Copy Parameter Path',
- copyToClipboard: 'π©πͺ Copy to Clipboard',
- copyValue: 'π©πͺ Copy Value',
- dataOfExecution: 'π©πͺ Data of Execution',
- dataReturnedByThisNodeWillDisplayHere: 'π©πͺ Data returned by this node will display here.',
- displayDataAnyway: 'π©πͺ Display Data Anyway',
- entriesExistButThey: 'π©πͺ Entries exist but they do not contain any JSON data.',
- executeNode: 'π©πͺ Execute Node',
- executesThisNodeAfterExecuting: 'π©πͺ Executes this {nodeName} node after executing any previous nodes that have not yet returned data',
- executionTime: 'π©πͺ Execution Time',
- fileExtension: 'π©πͺ File Extension',
- fileName: 'π©πͺ File Name',
- items: 'π©πͺ Items',
- json: 'π©πͺ JSON',
- mimeType: 'π©πͺ Mime Type',
- ms: 'π©πͺ ms',
- noBinaryDataFound: 'π©πͺ No binary data found',
- noData: 'π©πͺ No data',
- noTextDataFound: 'π©πͺ No text data found',
- nodeReturnedALargeAmountOfData: 'π©πͺ Node returned a large amount of data',
- output: 'π©πͺ Output',
- showBinaryData: 'π©πͺ Show Binary Data',
- startTime: 'π©πͺ Start Time',
- table: 'π©πͺ Table',
- theNodeContains: 'π©πͺ The node contains {numberOfKb} KB of data.
Displaying it could cause problems!
If you do decide to display it, avoid the JSON view!',
- },
- saveButton: {
- save: '@:reusableBaseText.save',
- saved: 'π©πͺ Saved',
- saving: 'π©πͺ Saving',
- },
- showMessage: {
- cancel: '@:reusableBaseText.cancel',
- ok: 'π©πͺ OK',
- showDetails: 'π©πͺ Show Details',
- },
- tagsDropdown: {
- createTag: 'π©πͺ Create tag "{filter}"',
- manageTags: 'π©πͺ Manage tags',
- noMatchingTagsExist: 'π©πͺ No matching tags exist',
- noTagsExist: 'π©πͺ No tags exist',
- showError: {
- message: 'π©πͺ A problem occurred when trying to create the {name} tag',
- title: 'π©πͺ New tag was not created',
- },
- typeToCreateATag: 'π©πͺ Type to create a tag',
- },
- tagsManager: {
- couldNotDeleteTag: 'π©πͺ Could not delete tag',
- done: 'π©πͺ Done',
- manageTags: 'π©πͺ Manage tags',
- showError: {
- onCreate: {
- message: 'π©πͺ A problem occurred when trying to create the {escapedName} tag',
- title: 'π©πͺ New tag was not created',
- },
- onDelete: {
- message: 'π©πͺ A problem occurred when trying to delete the {escapedName} tag',
- title: 'π©πͺ Tag was not deleted',
- },
- onUpdate: {
- message: 'π©πͺ A problem occurred when trying to update the {escapedName} tag',
- title: 'π©πͺ Tag was not updated',
- },
- },
- showMessage: {
- onDelete: {
- message: 'π©πͺ A problem occurred when trying to delete the {escapedName} tag',
- title: 'π©πͺ Tag was deleted',
- },
- onUpdate: {
- message: 'π©πͺ The {escapedOldName} tag was successfully updated to {escapedName}',
- title: 'π©πͺ Tag was updated',
- },
- },
- tagNameCannotBeEmpty: 'π©πͺ Tag name cannot be empty',
- },
- tagsTable: {
- areYouSureYouWantToDeleteThisTag: 'π©πͺ Are you sure you want to delete this tag?',
- cancel: '@:reusableBaseText.cancel',
- createTag: 'π©πͺ Create tag',
- deleteTag: 'π©πͺ Delete tag',
- editTag: 'π©πͺ Edit Tag',
- name: '@:reusableBaseText.name',
- noMatchingTagsExist: 'π©πͺ No matching tags exist',
- saveChanges: 'π©πͺ Save changes?',
- usage: 'π©πͺ Usage',
- },
- tagsTableHeader: {
- addNew: 'π©πͺ Add new',
- searchTags: 'π©πͺ Search Tags',
- },
- tagsView: {
- inUse: {
- plural: 'π©πͺ {count} workflows',
- singular: 'π©πͺ {count} workflow',
- },
- notBeingUsed: 'π©πͺ Not being used',
- },
- textEdit: {
- edit: 'π©πͺ Edit',
- },
- timeAgo: {
- daysAgo: 'π©πͺ %s days ago',
- hoursAgo: 'π©πͺ %s hours ago',
- inDays: 'π©πͺ in %s days',
- inHours: 'π©πͺ in %s hours',
- inMinutes: 'π©πͺ in %s minutes',
- inMonths: 'π©πͺ in %s months',
- inOneDay: 'π©πͺ in 1 day',
- inOneHour: 'π©πͺ in 1 hour',
- inOneMinute: 'π©πͺ in 1 minute',
- inOneMonth: 'π©πͺ in 1 month',
- inOneWeek: 'π©πͺ in 1 week',
- inOneYear: 'π©πͺ in 1 year',
- inWeeks: 'π©πͺ in %s weeks',
- inYears: 'π©πͺ in %s years',
- justNow: 'π©πͺ Just now',
- minutesAgo: 'π©πͺ %s minutes ago',
- monthsAgo: 'π©πͺ %s months ago',
- oneDayAgo: 'π©πͺ 1 day ago',
- oneHourAgo: 'π©πͺ 1 hour ago',
- oneMinuteAgo: 'π©πͺ 1 minute ago',
- oneMonthAgo: 'π©πͺ 1 month ago',
- oneWeekAgo: 'π©πͺ 1 week ago',
- oneYearAgo: 'π©πͺ 1 year ago',
- rightNow: 'π©πͺ Right now',
- weeksAgo: 'π©πͺ %s weeks ago',
- yearsAgo: 'π©πͺ %s years ago',
- },
- updatesPanel: {
- andIs: 'π©πͺ and is',
- behindTheLatest: 'π©πͺ behind the latest and greatest n8n',
- howToUpdateYourN8nVersion: 'π©πͺ How to update your n8n version',
- version: 'π©πͺ {numberOfVersions} version{howManySuffix}',
- weVeBeenBusy: 'π©πͺ Weβve been busy β¨',
- youReOnVersion: 'π©πͺ Youβre on {currentVersionName}, which was released',
- },
- variableSelector: {
- context: 'π©πͺ Context',
- currentNode: 'π©πͺ Current Node',
- nodes: 'π©πͺ Nodes',
- outputData: 'π©πͺ Output Data',
- parameters: 'π©πͺ Parameters',
- variableFilter: 'π©πͺ Variable filter...',
- },
- variableSelectorItem: {
- empty: 'π©πͺ --- EMPTY ---',
- selectItem: 'π©πͺ Select Item',
- },
- versionCard: {
- breakingChanges: 'π©πͺ Breaking changes',
- released: 'π©πͺ Released',
- securityUpdate: 'π©πͺ Security update',
- thisVersionHasASecurityIssue: 'π©πͺ This version has a security issue.
It is listed here for completeness.',
- unknown: 'π©πͺ unknown',
- version: 'π©πͺ Version',
- },
- workflowActivator: {
- activateWorkflow: 'π©πͺ Activate workflow',
- confirmMessage: {
- cancelButtonText: '',
- confirmButtonText: 'π©πͺ Yes, activate and save!',
- headline: 'π©πͺ Activate and save?',
- message: 'π©πͺ When you activate the workflow all currently unsaved changes of the workflow will be saved.',
- },
- deactivateWorkflow: 'π©πͺ Deactivate workflow',
- showError: {
- message: 'π©πͺ There was a problem and the workflow could not be {newStateName}',
- title: 'π©πͺ Problem',
- },
- showMessage: {
- activeChangedNodesIssuesExistTrue: {
- message: 'π©πͺ It is only possible to activate a workflow when all issues on all nodes got resolved!',
- title: 'π©πͺ Problem activating workflow',
- },
- activeChangedWorkflowIdUndefined: {
- message: 'π©πͺ The workflow did not get saved yet so cannot be set active!',
- title: 'π©πͺ Problem activating workflow',
- },
- displayActivationError: {
- message: {
- catchBlock: 'π©πͺ Sorry there was a problem requesting the error',
- errorDataNotUndefined: 'π©πͺ The following error occurred on workflow activation:
{message}',
- errorDataUndefined: 'π©πͺ Sorry there was a problem. No error got found to display.',
- },
- title: 'π©πͺ Problem activating workflow',
- },
- },
- theWorkflowIsSetToBeActiveBut: 'π©πͺ The workflow is set to be active but could not be started.
Click to display error message.',
- },
- workflowDetails: {
- active: 'π©πͺ Active',
- addTag: 'π©πͺ Add tag',
- showMessage: {
- message: "π©πͺ Please enter a name, or press 'esc' to go back to the old one.",
- title: 'π©πͺ Name missing',
- },
- },
- workflowHelpers: {
- showMessage: {
- message: '',
- title: 'π©πͺ Problem saving workflow',
- },
- },
- workflowOpen: {
- active: 'π©πͺ Active',
- confirmMessage: {
- cancelButtonText: '',
- confirmButtonText: 'π©πͺ Yes, switch workflows and forget changes',
- headline: 'π©πͺ Save your Changes?',
- message: 'π©πͺ When you switch workflows your current workflow changes will be lost.',
- },
- created: 'π©πͺ Created',
- name: '@:reusableBaseText.name',
- openWorkflow: 'π©πͺ Open Workflow',
- searchWorkflows: 'π©πͺ Search workflows...',
- showError: {
- message: 'π©πͺ There was a problem loading the workflows',
- title: 'π©πͺ Problem loading workflows',
- },
- showMessage: {
- message: 'π©πͺ This is the current workflow',
- title: 'π©πͺ Already open',
- },
- updated: 'π©πͺ Updated',
- },
- workflowRun: {
- noActiveConnectionToTheServer: 'π©πͺ No active connection to server. It is maybe down.',
- showError: {
- message: '',
- title: 'π©πͺ Problem running workflow',
- },
- showMessage: {
- message: 'π©πͺ The workflow has issues. Please fix them first',
- title: 'π©πͺ Workflow cannot be executed',
- },
- },
- workflowSettings: {
- defaultTimezone: 'π©πͺ Default - {defaultTimezoneValue}',
- defaultTimezoneNotValid: 'π©πͺ Default Timezone not valid',
- errorWorkflow: 'π©πͺ Error Workflow',
- helpTexts: {
- errorWorkflow: "π©πͺ The workflow to run in case the current one fails.
To function correctly that workflow has to contain an 'Error Trigger' node!",
- executionTimeout: 'π©πͺ After what time the workflow should timeout.',
- executionTimeoutToggle: 'π©πͺ Cancel workflow execution after defined time',
- saveDataErrorExecution: 'π©πͺ If data of executions should be saved in case they failed.',
- saveDataSuccessExecution: 'π©πͺ If data of executions should be saved in case they succeed.',
- saveExecutionProgress: 'π©πͺ If data should be saved after each node, allowing you to resume in case of errors from where it stopped. May increase latency.',
- saveManualExecutions: 'π©πͺ If data of executions should be saved when started manually from the editor.',
- timezone: "π©πͺ The timezone in which the workflow should run. Gets for example used by 'Cron' node.",
- },
- hours: 'π©πͺ hours',
- minutes: 'π©πͺ minutes',
- noWorkflow: 'π©πͺ - No Workflow -',
- save: '@:reusableBaseText.save',
- saveDataErrorExecution: 'π©πͺ Save Data Error Execution',
- saveDataErrorExecutionOptions: {
- defaultSave: 'π©πͺ Default - ({defaultValue})',
- doNotSave: 'π©πͺ Do not save',
- save: '@:reusableBaseText.save',
- },
- saveDataSuccessExecution: 'π©πͺ Save Data Success Execution',
- saveDataSuccessExecutionOptions: {
- defaultSave: 'π©πͺ Default - ({defaultValue})',
- doNotSave: 'π©πͺ Do not save',
- save: '@:reusableBaseText.save',
- },
- saveExecutionProgress: 'π©πͺ Save Execution Progress',
- saveExecutionProgressOptions: {
- defaultSave: 'π©πͺ Default - ({defaultValue})',
- no: 'π©πͺ No',
- yes: 'π©πͺ Yes',
- },
- saveManualExecutions: 'π©πͺ Save Manual Executions',
- saveManualOptions: {
- defaultSave: 'π©πͺ Default - ({defaultValue})',
- no: 'π©πͺ No',
- yes: 'π©πͺ Yes',
- },
- seconds: 'π©πͺ seconds',
- selectOption: 'π©πͺ Select Option',
- settingsFor: 'π©πͺ Settings for {workflowName} (#{workflowId})',
- showError: {
- saveSettings1: {
- errorMessage: 'π©πͺ Timeout is activated but set to 0',
- message: 'π©πͺ There was a problem saving the settings',
- title: 'π©πͺ Problem saving settings',
- },
- saveSettings2: {
- errorMessage: 'π©πͺ Maximum Timeout is: {hours} hours, {minutes} minutes, {seconds} seconds',
- message: 'π©πͺ Set timeout is exceeding the maximum timeout!',
- title: 'π©πͺ Problem saving settings',
- },
- saveSettings3: {
- message: 'π©πͺ There was a problem saving the settings',
- title: 'π©πͺ Problem saving settings',
- },
- },
- showMessage: {
- saveSettings: {
- message: 'π©πͺ The workflow settings got saved!',
- title: 'π©πͺ Settings saved',
- },
- },
- timeoutAfter: 'π©πͺ Timeout After',
- timeoutWorkflow: 'π©πͺ Timeout Workflow',
- timezone: 'π©πͺ Timezone',
- },
-};
diff --git a/packages/editor-ui/src/i18n/locales/en.json b/packages/editor-ui/src/i18n/locales/en.json
new file mode 100644
index 0000000000..1f4319ba3d
--- /dev/null
+++ b/packages/editor-ui/src/i18n/locales/en.json
@@ -0,0 +1,1021 @@
+{
+ "about": {
+ "aboutN8n": "About n8n",
+ "apacheWithCommons20Clause": "Apache 2.0 with Commons Clause",
+ "close": "Close",
+ "license": "License",
+ "n8nVersion": "n8n Version",
+ "sourceCode": "Source Code"
+ },
+ "binaryDataDisplay": {
+ "backToList": "Back to list",
+ "backToOverviewPage": "Back to overview page",
+ "noDataFoundToDisplay": "No data found to display",
+ "yourBrowserDoesNotSupport": "Your browser does not support the video element. Kindly update it to latest version."
+ },
+ "codeEdit": {
+ "edit": "Edit"
+ },
+ "collectionParameter": {
+ "choose": "Choose...",
+ "noProperties": "No properties"
+ },
+ "credentialEdit": {
+ "credentialConfig": {
+ "accountConnected": "Account connected",
+ "clickToCopy": "Click To Copy",
+ "connectionTestedSuccessfully": "Connection tested successfully",
+ "couldntConnectWithTheseSettings": "Couldnβt connect with these settings",
+ "needHelpFillingOutTheseFields": "Need help filling out these fields?",
+ "oAuthRedirectUrl": "OAuth Redirect URL",
+ "openDocs": "Open docs",
+ "pleaseCheckTheErrorsBelow": "Please check the errors below",
+ "reconnect": "reconnect",
+ "reconnectOAuth2Credential": "Reconnect OAuth2 Credential",
+ "redirectUrlCopiedToClipboard": "Redirect URL copied to clipboard",
+ "retry": "Retry",
+ "retryCredentialTest": "Retry credential test",
+ "retrying": "Retrying",
+ "subtitle": "In {appName}, use the URL above when prompted to enter an OAuth callback or redirect URL",
+ "theServiceYouReConnectingTo": "the service you're connecting to"
+ },
+ "credentialEdit": {
+ "confirmMessage": {
+ "beforeClose1": {
+ "cancelButtonText": "Keep Editing",
+ "confirmButtonText": "Close",
+ "headline": "Close without saving?",
+ "message": "Are you sure you want to throw away the changes you made to the {credentialDisplayName} credential?"
+ },
+ "beforeClose2": {
+ "cancelButtonText": "Keep Editing",
+ "confirmButtonText": "Close",
+ "headline": "Close without connecting?",
+ "message": "You need to connect your credential for it to work"
+ },
+ "deleteCredential": {
+ "cancelButtonText": "",
+ "confirmButtonText": "Yes, delete!",
+ "headline": "Delete Credential?",
+ "message": "Are you sure you want to delete \"{savedCredentialName}\" credential?"
+ }
+ },
+ "connection": "Connection",
+ "couldNotFindCredentialOfType": "Could not find credential of type",
+ "couldNotFindCredentialWithId": "Could not find credential with ID",
+ "details": "Details",
+ "showError": {
+ "createCredential": {
+ "message": "",
+ "title": "Problem creating credential"
+ },
+ "deleteCredential": {
+ "message": "",
+ "title": "Problem deleting credential"
+ },
+ "generateAuthorizationUrl": {
+ "message": "There was a problem generating the authorization URL",
+ "title": "OAuth Authorization Error"
+ },
+ "loadCredential": {
+ "message": "",
+ "title": "Problem loading credential"
+ },
+ "updateCredential": {
+ "message": "",
+ "title": "Problem updating credential"
+ }
+ },
+ "showMessage": {
+ "message": "The credential {savedCredentialName} was deleted!",
+ "title": "Credential deleted"
+ }
+ },
+ "credentialInfo": {
+ "allowUseBy": "Allow use by",
+ "created": "Created",
+ "id": "ID",
+ "lastModified": "Last modified"
+ },
+ "oAuthButton": {
+ "connectMyAccount": "Connect my account",
+ "signInWithGoogle": "Sign in with Google"
+ }
+ },
+ "credentialSelectModal": {
+ "addNewCredential": "Add new credential",
+ "continue": "Continue",
+ "searchForApp": "Search for app...",
+ "selectAnAppOrServiceToConnectTo": "Select an app or service to connect to"
+ },
+ "credentialsList": {
+ "addNew": "Add New",
+ "confirmMessage": {
+ "cancelButtonText": "",
+ "confirmButtonText": "Yes, delete!",
+ "headline": "Delete Credential?",
+ "message": "Are you sure you want to delete {credentialName} credential?"
+ },
+ "createNewCredential": "Create New Credential",
+ "created": "Created",
+ "credentials": "Credentials",
+ "deleteCredential": "Delete Credential",
+ "editCredential": "Edit Credential",
+ "name": "@:reusableBaseText.name",
+ "operations": "Operations",
+ "showError": {
+ "deleteCredential": {
+ "message": "",
+ "title": "Problem deleting credential"
+ }
+ },
+ "showMessage": {
+ "message": "The credential {credentialName} got deleted!",
+ "title": "Credential deleted"
+ },
+ "type": "Type",
+ "updated": "Updated",
+ "yourSavedCredentials": "Your saved credentials"
+ },
+ "dataDisplay": {
+ "needHelp": "Need help?",
+ "nodeDocumentation": "Node Documentation",
+ "openDocumentationFor": "Open {nodeTypeDisplayName} documentation"
+ },
+ "displayWithChange": {
+ "cancelEdit": "Cancel Edit",
+ "clickToChange": "Click to Change",
+ "setValue": "Set Value"
+ },
+ "duplicateWorkflowDialog": {
+ "cancel": "@:reusableBaseText.cancel",
+ "chooseOrCreateATag": "Choose or create a tag",
+ "duplicateWorkflow": "Duplicate Workflow",
+ "enterWorkflowName": "Enter workflow name",
+ "save": "@:reusableBaseText.save",
+ "showMessage": {
+ "message": "Please enter a name.",
+ "title": "Name missing"
+ }
+ },
+ "executionDetails": {
+ "executionFailed": "Execution failed",
+ "executionId": "Execution ID",
+ "executionWaiting": "Execution waiting",
+ "executionWasSuccessful": "Execution was successful",
+ "openWorkflow": "Open Workflow"
+ },
+ "executionsList": {
+ "allWorkflows": "All Workflows",
+ "anyStatus": "Any Status",
+ "autoRefresh": "Auto refresh",
+ "confirmMessage": {
+ "cancelButtonText": "",
+ "confirmButtonText": "Yes, delete!",
+ "headline": "Delete Executions?",
+ "message": "Are you sure that you want to delete the {numSelected} selected executions?"
+ },
+ "deleteSelected": "Delete Selected",
+ "error": "Error",
+ "filters": "Filters",
+ "loadMore": "Load More",
+ "mode": "Mode",
+ "modes": {
+ "error": "error",
+ "manual": "manual",
+ "retry": "retry",
+ "trigger": "trigger"
+ },
+ "name": "@:reusableBaseText.name",
+ "openPastExecution": "Open Past Execution",
+ "retryExecution": "Retry execution",
+ "retryOf": "Retry of",
+ "retryWithCurrentlySavedWorkflow": "Retry with currently saved workflow",
+ "retryWithOriginalworkflow": "Retry with original workflow",
+ "running": "Running",
+ "runningTime": "Running Time",
+ "selectStatus": "Select Status",
+ "selectWorkflow": "Select Workflow",
+ "selected": "Selected",
+ "showError": {
+ "handleDeleteSelected": {
+ "message": "",
+ "title": "Problem deleting executions"
+ },
+ "loadMore": {
+ "message": "",
+ "title": "Problem loading workflows"
+ },
+ "loadWorkflows": {
+ "message": "",
+ "title": "Problem loading workflows"
+ },
+ "refreshData": {
+ "message": "",
+ "title": "Problem loading data"
+ },
+ "retryExecution": {
+ "message": "",
+ "title": "Problem with retry"
+ },
+ "stopExecution": {
+ "message": "",
+ "title": "Problem stopping execution"
+ }
+ },
+ "showMessage": {
+ "handleDeleteSelected": {
+ "message": "The executions got deleted!",
+ "title": "Execution deleted"
+ },
+ "retrySuccessfulFalse": {
+ "message": "The retry was not successful!",
+ "title": "Retry unsuccessful"
+ },
+ "retrySuccessfulTrue": {
+ "message": "",
+ "title": "Retry successful"
+ },
+ "stopExecution": {
+ "message": "The execution with the ID {activeExecutionId} got stopped!",
+ "title": "Execution stopped"
+ }
+ },
+ "startedAtId": "Started At / ID",
+ "status": "Status",
+ "statusTooltipText": {
+ "theWorkflowExecutionFailed": "The workflow execution failed.",
+ "theWorkflowExecutionFailedButTheRetryWasSuccessful": "The workflow execution failed but the retry {entryRetrySuccessId} was successful.",
+ "theWorkflowExecutionIsProbablyStillRunning": "The workflow execution is probably still running but it may have crashed and n8n cannot safely tell. ",
+ "theWorkflowExecutionWasARetryOfAndFailed": "The workflow execution was a retry of {entryRetryOf} and failed.
New retries have to be,started from the original execution.",
+ "theWorkflowExecutionWasARetryOfAndItWasSuccessful": "The workflow execution was a retry of {entryRetryOf} and it was successful.",
+ "theWorkflowExecutionWasSuccessful": "The worklow execution was successful.",
+ "theWorkflowIsCurrentlyExecuting": "The worklow is currently executing.",
+ "theWorkflowIsWaitingIndefinitely": "The workflow is waiting indefinitely for an incoming webhook call.",
+ "theWorkflowIsWaitingTill": "The worklow is waiting till {waitDateDate} {waitDateTime}."
+ },
+ "stopExecution": "Stop Execution",
+ "success": "Success",
+ "successRetry": "Success retry",
+ "unknown": "Unknown",
+ "unsavedWorkflow": "[UNSAVED WORKFLOW]",
+ "waiting": "Waiting",
+ "workflowExecutions": "Workflow Executions"
+ },
+ "expressionEdit": {
+ "editExpression": "Edit Expression",
+ "expression": "Expression",
+ "result": "Result",
+ "variableSelector": "Variable Selector"
+ },
+ "fixedCollectionParameter": {
+ "choose": "Choose...",
+ "currentlyNoItemsExist": "Currently no items exist",
+ "deleteItem": "Delete item",
+ "moveDown": "Move down",
+ "moveUp": "Move up"
+ },
+ "genericHelpers": {
+ "loading": "Loading",
+ "min": "min.",
+ "sec": "sec.",
+ "showMessage": {
+ "message": "The workflow cannot be edited as a past execution gets displayed. To make changed either open the original workflow of which the execution gets displayed or save it under a new name first.",
+ "title": "Workflow cannot be changed!"
+ }
+ },
+ "mainSidebar": {
+ "aboutN8n": "About n8n",
+ "confirmMessage": {
+ "workflowDelete": {
+ "cancelButtonText": "",
+ "confirmButtonText": "Yes, delete!",
+ "headline": "Delete Workflow?",
+ "message": "Are you sure that you want to delete the workflow {workflowName}?"
+ },
+ "workflowNew": {
+ "cancelButtonText": "",
+ "confirmButtonText": "Yes, switch workflows and forget changes",
+ "headline": "Save your Changes?",
+ "message": "When you switch workflows your current workflow changes will be lost."
+ }
+ },
+ "credentials": "Credentials",
+ "delete": "Delete",
+ "download": "Download",
+ "duplicate": "Duplicate",
+ "executions": "Executions",
+ "help": "Help",
+ "helpMenuItems": {
+ "documentation": "Documentation",
+ "forum": "Forum",
+ "workflows": "Workflows"
+ },
+ "importFromFile": "Import from File",
+ "importFromUrl": "Import from URL",
+ "new": "New",
+ "open": "Open",
+ "prompt": {
+ "cancel": "@:reusableBaseText.cancel",
+ "import": "Import",
+ "importWorkflowFromUrl": "Import Workflow from URL",
+ "invalidUrl": "Invalid URL",
+ "workflowUrl": "Workflow URL"
+ },
+ "save": "@:reusableBaseText.save",
+ "settings": "Settings",
+ "showError": {
+ "stopExecution": {
+ "message": "",
+ "title": "Problem stopping execution"
+ }
+ },
+ "showMessage": {
+ "handleFileImport": {
+ "message": "The file does not contain valid JSON data.",
+ "title": "Could not import file"
+ },
+ "handleSelect1": {
+ "message": "The workflow {workflowName} got deleted.",
+ "title": "Workflow got deleted"
+ },
+ "handleSelect2": {
+ "message": "",
+ "title": "Workflow created"
+ },
+ "handleSelect3": {
+ "message": "",
+ "title": "Workflow created"
+ },
+ "stopExecution": {
+ "message": "Execution with ID {executionId} got stopped!",
+ "title": "Execution stopped"
+ }
+ },
+ "workflows": "Workflows"
+ },
+ "multipleParameter": {
+ "addItem": "Add item",
+ "currentlyNoItemsExist": "Currently no items exist",
+ "deleteItem": "Delete item",
+ "moveDown": "Move down",
+ "moveUp": "Move up"
+ },
+ "noTagsView": {
+ "readyToOrganizeYourWorkflows": "Ready to organize your workflows?",
+ "withWorkflowTagsYouReFree": "With workflow tags, you're free to create the perfect tagging system for your flows"
+ },
+ "node": {
+ "activateDeactivateNode": "Activate/Deactivate Node",
+ "deleteNode": "Delete Node",
+ "disabled": "Disabled",
+ "duplicateNode": "Duplicate Node",
+ "editNode": "Edit Node",
+ "executeNode": "Execute Node",
+ "issues": "Issues",
+ "nodeIsExecuting": "Node is executing",
+ "nodeIsWaitingTill": "Node is waiting till {date} {time}",
+ "theNodeIsWaitingIndefinitelyForAnIncomingWebhookCall": "The node is waiting indefinitely for an incoming webhook call."
+ },
+ "nodeCreator": {
+ "categoryNames": {
+ "analytics": "Analytics",
+ "communication": "Communication",
+ "coreNodes": "Core Nodes",
+ "customNodes": "Custom Nodes",
+ "dataStorage": "Data & Storage",
+ "development": "Development",
+ "financeAccounting": "Finance & Accounting",
+ "marketingContent": "Marketing & Content",
+ "miscellaneous": "Miscellaneous",
+ "productivity": "Productivity",
+ "sales": "Sales",
+ "suggestedNodes": "Suggested Nodes β¨",
+ "utility": "Utility"
+ },
+ "mainPanel": {
+ "all": "All",
+ "regular": "Regular",
+ "trigger": "Trigger"
+ },
+ "noResults": {
+ "dontWorryYouCanProbablyDoItWithThe": "Donβt worry, you can probably do it with the {httpRequest} or {webhook} node",
+ "httpRequest": "HTTP Request",
+ "node": "node",
+ "requestTheNode": "Request the node",
+ "wantUsToMakeItFaster": "Want us to make it faster?",
+ "weDidntMakeThatYet": "We didn't make that... yet",
+ "webhook": "Webhook"
+ },
+ "searchBar": {
+ "searchNodes": "Search nodes..."
+ },
+ "subcategoryDescriptions": {
+ "branches": "Branches, core triggers, merge data",
+ "http": "HTTP Requests (API calls), date and time, scrape HTML",
+ "manipulate": "Manipulate data fields, run code",
+ "work": "Work with CSV, XML, text, images etc."
+ },
+ "subcategoryNames": {
+ "dataTransformation": "Data Transformation",
+ "files": "Files",
+ "flow": "Flow",
+ "helpers": "Helpers"
+ }
+ },
+ "nodeCredentials": {
+ "createNew": "Create New",
+ "credentialFor": "Credential for {credentialType}",
+ "issues": "Issues",
+ "selectCredential": "Select Credential",
+ "showMessage": {
+ "message": "Nodes that used credential \"{oldCredentialName}\" have been updated to use \"{newCredentialName}\"",
+ "title": "Node credential updated"
+ },
+ "updateCredential": "Update Credential"
+ },
+ "nodeErrorView": {
+ "cause": "Cause",
+ "copyToClipboard": "Copy to Clipboard",
+ "dataBelowMayContain": "Data below may contain sensitive information. Proceed with caution when sharing.",
+ "details": "Details",
+ "error": "ERROR",
+ "httpCode": "HTTP Code",
+ "showMessage": {
+ "message": "",
+ "title": "Copied to clipboard"
+ },
+ "stack": "Stack",
+ "theErrorCauseIsTooLargeToBeDisplayed": "The error cause is too large to be displayed.",
+ "time": "Time"
+ },
+ "nodeSettings": {
+ "alwaysOutputData": {
+ "description": "If active, the node will return an empty item even if the
node returns no data during an initial execution. Be careful setting
this on IF-Nodes as it could cause an infinite loop.",
+ "displayName": "Always Output Data"
+ },
+ "clickOnTheQuestionMarkIcon": "Click the '?' icon to open this node on n8n.io",
+ "color": {
+ "description": "The color of the node in the flow.",
+ "displayName": "Node Color"
+ },
+ "continueOnFail": {
+ "description": "If active, the workflow continues even if this node's
execution fails. When this occurs, the node passes along input data from
previous nodes - so your workflow should account for unexpected output data.",
+ "displayName": "Continue On Fail"
+ },
+ "executeOnce": {
+ "description": "If active, the node executes only once, with data
from the first item it recieves.",
+ "displayName": "Execute Once"
+ },
+ "maxTries": {
+ "description": "Number of times Retry On Fail should attempt to execute the node
before stopping and returning the execution as failed.",
+ "displayName": "Max. Tries"
+ },
+ "noDescriptionFound": "No description found",
+ "nodeDescription": "Node Description",
+ "notes": {
+ "description": "Optional note to save with the node.",
+ "displayName": "Notes"
+ },
+ "notesInFlow": {
+ "description": "If active, the note above will display in the flow as a subtitle.",
+ "displayName": "Display note in flow?"
+ },
+ "parameters": "Parameters",
+ "retryOnFail": {
+ "description": "If active, the node tries to execute a failed attempt
multiple times until it succeeds.",
+ "displayName": "Retry On Fail"
+ },
+ "settings": "Settings",
+ "theNodeIsNotValidAsItsTypeIsUnknown": "The node is not valid as its type {nodeType} is unknown.",
+ "thisNodeDoesNotHaveAnyParameters": "This node does not have any parameters.",
+ "waitBetweenTries": {
+ "description": "How long to wait between each attempt. Value in ms.",
+ "displayName": "Wait Between Tries"
+ }
+ },
+ "nodeView": {
+ "addNode": "Add node",
+ "confirmMessage": {
+ "beforeRouteLeave": {
+ "cancelButtonText": "",
+ "confirmButtonText": "Yes, switch workflows and forget changes",
+ "headline": "Save your Changes?",
+ "message": "When you switch workflows your current workflow changes will be lost."
+ },
+ "initView": {
+ "cancelButtonText": "",
+ "confirmButtonText": "Yes, switch workflows and forget changes",
+ "headline": "Save your Changes?",
+ "message": "When you switch workflows your current workflow changes will be lost."
+ },
+ "receivedCopyPasteData": {
+ "cancelButtonText": "",
+ "confirmButtonText": "Yes, import!",
+ "headline": "Import Workflow from URL?",
+ "message": "Import workflow from this URL:
{plainTextData}"
+ }
+ },
+ "couldntImportWorkflow": "Couldn't import workflow",
+ "deletesTheCurrentExecutionData": "Deletes the current Execution Data.",
+ "dropConnectionToAddNode": "Drop connection
to add node",
+ "executesTheWorkflowFromTheStartOrWebhookNode": "Executes the Workflow from the Start or Webhook Node.",
+ "itLooksLikeYouHaveBeenEditingSomething": "It looks like you have been editing something. If you leave before saving, your changes will be lost.",
+ "loadingTemplate": "Loading template",
+ "moreInfo": "More info",
+ "noNodesGivenToAdd": "No nodes given to add!",
+ "prompt": {
+ "cancel": "@:reusableBaseText.cancel",
+ "invalidName": "Invalid Name",
+ "newName": "New Name",
+ "rename": "Rename",
+ "renameNode": "Rename Node"
+ },
+ "refresh": "Refresh",
+ "resetZoom": "Reset Zoom",
+ "runButtonText": {
+ "executeWorkflow": "Execute Workflow",
+ "executingWorkflow": "Executing Workflow",
+ "waitingForWebhookCall": "Waiting for Webhook-Call"
+ },
+ "showError": {
+ "getWorkflowDataFromUrl": {
+ "message": "There was a problem loading the workflow data from URL",
+ "title": "Problem loading workflow"
+ },
+ "importWorkflowData": {
+ "message": "There was a problem importing workflow data",
+ "title": "Problem importing workflow"
+ },
+ "mounted1": {
+ "message": "There was a problem loading init data",
+ "title": "Init Problem"
+ },
+ "mounted2": {
+ "message": "There was a problem initializing the workflow",
+ "title": "Init Problem"
+ },
+ "openExecution": {
+ "message": "",
+ "title": "Problem loading execution"
+ },
+ "openWorkflow": {
+ "message": "",
+ "title": "Problem opening workflow"
+ },
+ "stopExecution": {
+ "message": "",
+ "title": "Problem stopping execution"
+ },
+ "stopWaitingForWebhook": {
+ "message": "",
+ "title": "Problem deleting the test-webhook"
+ }
+ },
+ "showMessage": {
+ "addNodeButton": {
+ "message": "Node of type {nodeTypeName} could not be created as it is not known.",
+ "title": "Could not create node!"
+ },
+ "keyDown": {
+ "message": "",
+ "title": "Workflow created"
+ },
+ "showMaxNodeTypeError": {
+ "message": {
+ "plural": "Node cannot be created because in a workflow max. {maxNodes} nodes of type {nodeTypeDataDisplayName} are allowed!",
+ "singular": "Node cannot be created because in a workflow max. {maxNodes} node of type {nodeTypeDataDisplayName} is allowed!"
+ },
+ "title": "Could not create node!"
+ },
+ "stopExecutionCatch": {
+ "message": "Unable to stop operation in time. Workflow finished executing already.",
+ "title": "Workflow finished executing"
+ },
+ "stopExecutionTry": {
+ "message": "The execution with the id {executionId} got stopped!",
+ "title": "Execution stopped"
+ },
+ "stopWaitingForWebhook": {
+ "message": "",
+ "title": "Webhook got deleted"
+ }
+ },
+ "stopCurrentExecution": "Stop current execution",
+ "stopWaitingForWebhookCall": "Stop waiting for Webhook call",
+ "stoppingCurrentExecution": "Stopping current execution",
+ "thereWasAProblemLoadingTheNodeParametersOfNode": "There was a problem loading the node-parameters of node",
+ "thisExecutionHasntFinishedYet": "This execution hasn't finished yet",
+ "toSeeTheLatestStatus": "to see the latest status",
+ "workflowTemplateWithIdCouldNotBeFound": "Workflow template with id \"{templateId}\" could not be found!",
+ "workflowWithIdCouldNotBeFound": "Workflow with id \"{workflowId}\" could not be found!",
+ "zoomIn": "Zoom In",
+ "zoomOut": "Zoom Out",
+ "zoomToFit": "Zoom to Fit"
+ },
+ "nodeWebhooks": {
+ "clickToCopyWebhookUrls": "Click to copy Webhook URLs",
+ "clickToDisplayWebhookUrls": "Click to display Webhook URLs",
+ "clickToHideWebhookUrls": "Click to hide Webhook URLs",
+ "invalidExpression": "[INVALID EXPRESSION]",
+ "productionUrl": "Production URL",
+ "showMessage": {
+ "message": "The webhook URL was successfully copied!",
+ "title": "Copied"
+ },
+ "testUrl": "Test URL",
+ "webhookUrls": "Webhook URLs"
+ },
+ "parameterInput": {
+ "addExpression": "Add Expression",
+ "error": "ERROR",
+ "issues": "Issues",
+ "loadingOptions": "Loading options...",
+ "openEditWindow": "Open Edit Window",
+ "parameter": "Parameter: \"{shortPath}\"",
+ "parameterHasExpression": "Parameter: \"{shortPath}\" has expression!",
+ "parameterHasIssues": "Parameter: \"{shortPath}\" has issues!",
+ "parameterHasIssuesAndExpression": "Parameter: \"{shortPath}\" has issues and expression!",
+ "parameterOptions": "Parameter Options",
+ "refreshList": "Refresh List",
+ "removeExpression": "Remove Expression",
+ "resetValue": "Reset Value",
+ "selectDateAndTime": "Select date and time"
+ },
+ "parameterInputExpanded": {
+ "openDocs": "Open docs",
+ "thisFieldIsRequired": "This field is required."
+ },
+ "parameterInputList": {
+ "delete": "Delete",
+ "deleteParameter": "Delete Parameter",
+ "parameterOptions": "Parameter Options"
+ },
+ "personalizationModal": {
+ "automationConsulting": "Automation consulting",
+ "continue": "Continue",
+ "errorWhileSubmittingResults": "Error while submitting results",
+ "finance": "finance",
+ "getStarted": "Get started",
+ "howAreYourCodingSkills": "How are your coding skills",
+ "howBigIsYourCompany": "How big is your company",
+ "hr": "HR",
+ "imNotUsingN8nForWork": "I'm not using n8n for work",
+ "itEngineering": "IT / Engineering",
+ "legal": "legal",
+ "lessThan20people": "Less than 20 people",
+ "lookOutForThingsMarked": "Look out for things marked with a β¨. They are personalized to make n8n more relevant to you.",
+ "marketingGrowth": "Marketing / Growth",
+ "neverCoded": "Never coded",
+ "operations": "operations",
+ "otherPleaseSpecify": "Other (please specify)",
+ "people": "people",
+ "proCoder": "Pro coder",
+ "product": "Product",
+ "salesBusinessDevelopment": "Sales / Business Development",
+ "security": "Security",
+ "select": "Select...",
+ "specifyYourWorkArea": "Specify your work area",
+ "support": "Support",
+ "thanks": "Thanks!",
+ "theseQuestionsHelpUs": "These questions help us tailor n8n to you",
+ "whichOfTheseAreasDoYouMainlyWorkIn": "Which of these areas do you mainly work in?"
+ },
+ "pushConnection": {
+ "showMessage": {
+ "message": "",
+ "title": "Workflow executed successfully"
+ }
+ },
+ "pushConnectionTracker": {
+ "cannotConnectToServer": "Cannot connect to server.
It is either down or you have a connection issue.
It should reconnect automatically once the issue is resolved.",
+ "connectionLost": "Connection lost"
+ },
+ "readOnly": {
+ "readOnly": "Read only",
+ "youreViewingTheLogOf": "You're viewing the log of a previous execution. You cannot
\n\t\tmake changes since this execution already occured. Make changes
\n\t\tto this workflow by clicking on its name on the left."
+ },
+ "reusableBaseText": {
+ "cancel": "Cancel",
+ "name": "Name",
+ "save": "Save"
+ },
+ "reusableDynamicText": {
+ "oauth2": {
+ "clientId": "Client ID",
+ "clientSecret": "Client Secret"
+ }
+ },
+ "runData": {
+ "binary": "Binary",
+ "copyItemPath": "Copy Item Path",
+ "copyParameterPath": "Copy Parameter Path",
+ "copyToClipboard": "Copy to Clipboard",
+ "copyValue": "Copy Value",
+ "dataOfExecution": "Data of Execution",
+ "dataReturnedByThisNodeWillDisplayHere": "Data returned by this node will display here.",
+ "displayDataAnyway": "Display Data Anyway",
+ "entriesExistButThey": "Entries exist but they do not contain any JSON data.",
+ "executeNode": "Execute Node",
+ "executesThisNodeAfterExecuting": "Executes this {nodeName} node after executing any previous nodes that have not yet returned data",
+ "executionTime": "Execution Time",
+ "fileExtension": "File Extension",
+ "fileName": "File Name",
+ "items": "Items",
+ "json": "JSON",
+ "mimeType": "Mime Type",
+ "ms": "ms",
+ "noBinaryDataFound": "No binary data found",
+ "noData": "No data",
+ "noTextDataFound": "No text data found",
+ "nodeReturnedALargeAmountOfData": "Node returned a large amount of data",
+ "output": "Output",
+ "showBinaryData": "Show Binary Data",
+ "startTime": "Start Time",
+ "table": "Table",
+ "theNodeContains": "The node contains {numberOfKb} KB of data.
Displaying it could cause problems!
If you do decide to display it, avoid the JSON view!"
+ },
+ "saveButton": {
+ "save": "@:reusableBaseText.save",
+ "saved": "Saved",
+ "saving": "Saving"
+ },
+ "showMessage": {
+ "cancel": "@:reusableBaseText.cancel",
+ "ok": "OK",
+ "showDetails": "Show Details"
+ },
+ "tagsDropdown": {
+ "createTag": "Create tag \"{filter}\"",
+ "manageTags": "Manage tags",
+ "noMatchingTagsExist": "No matching tags exist",
+ "noTagsExist": "No tags exist",
+ "showError": {
+ "message": "A problem occurred when trying to create the {name} tag",
+ "title": "New tag was not created"
+ },
+ "typeToCreateATag": "Type to create a tag"
+ },
+ "tagsManager": {
+ "couldNotDeleteTag": "Could not delete tag",
+ "done": "Done",
+ "manageTags": "Manage tags",
+ "showError": {
+ "onCreate": {
+ "message": "A problem occurred when trying to create the {escapedName} tag",
+ "title": "New tag was not created"
+ },
+ "onDelete": {
+ "message": "A problem occurred when trying to delete the {escapedName} tag",
+ "title": "Tag was not deleted"
+ },
+ "onUpdate": {
+ "message": "A problem occurred when trying to update the {escapedName} tag",
+ "title": "Tag was not updated"
+ }
+ },
+ "showMessage": {
+ "onDelete": {
+ "message": "A problem occurred when trying to delete the {escapedName} tag",
+ "title": "Tag was deleted"
+ },
+ "onUpdate": {
+ "message": "The {escapedOldName} tag was successfully updated to {escapedName}",
+ "title": "Tag was updated"
+ }
+ },
+ "tagNameCannotBeEmpty": "Tag name cannot be empty"
+ },
+ "tagsTable": {
+ "areYouSureYouWantToDeleteThisTag": "Are you sure you want to delete this tag?",
+ "cancel": "@:reusableBaseText.cancel",
+ "createTag": "Create tag",
+ "deleteTag": "Delete tag",
+ "editTag": "Edit Tag",
+ "name": "@:reusableBaseText.name",
+ "noMatchingTagsExist": "No matching tags exist",
+ "saveChanges": "Save changes?",
+ "usage": "Usage"
+ },
+ "tagsTableHeader": {
+ "addNew": "Add new",
+ "searchTags": "Search Tags"
+ },
+ "tagsView": {
+ "inUse": {
+ "plural": "{count} workflows",
+ "singular": "{count} workflow"
+ },
+ "notBeingUsed": "Not being used"
+ },
+ "textEdit": {
+ "edit": "Edit"
+ },
+ "timeAgo": {
+ "daysAgo": "%s days ago",
+ "hoursAgo": "%s hours ago",
+ "inDays": "in %s days",
+ "inHours": "in %s hours",
+ "inMinutes": "in %s minutes",
+ "inMonths": "in %s months",
+ "inOneDay": "in 1 day",
+ "inOneHour": "in 1 hour",
+ "inOneMinute": "in 1 minute",
+ "inOneMonth": "in 1 month",
+ "inOneWeek": "in 1 week",
+ "inOneYear": "in 1 year",
+ "inWeeks": "in %s weeks",
+ "inYears": "in %s years",
+ "justNow": "Just now",
+ "minutesAgo": "%s minutes ago",
+ "monthsAgo": "%s months ago",
+ "oneDayAgo": "1 day ago",
+ "oneHourAgo": "1 hour ago",
+ "oneMinuteAgo": "1 minute ago",
+ "oneMonthAgo": "1 month ago",
+ "oneWeekAgo": "1 week ago",
+ "oneYearAgo": "1 year ago",
+ "rightNow": "Right now",
+ "weeksAgo": "%s weeks ago",
+ "yearsAgo": "%s years ago"
+ },
+ "updatesPanel": {
+ "andIs": "and is",
+ "behindTheLatest": "behind the latest and greatest n8n",
+ "howToUpdateYourN8nVersion": "How to update your n8n version",
+ "version": "{numberOfVersions} version{howManySuffix}",
+ "weVeBeenBusy": "Weβve been busy β¨",
+ "youReOnVersion": "Youβre on {currentVersionName}, which was released"
+ },
+ "variableSelector": {
+ "context": "Context",
+ "currentNode": "Current Node",
+ "nodes": "Nodes",
+ "outputData": "Output Data",
+ "parameters": "Parameters",
+ "variableFilter": "Variable filter..."
+ },
+ "variableSelectorItem": {
+ "empty": "--- EMPTY ---",
+ "selectItem": "Select Item"
+ },
+ "versionCard": {
+ "breakingChanges": "Breaking changes",
+ "released": "Released",
+ "securityUpdate": "Security update",
+ "thisVersionHasASecurityIssue": "This version has a security issue.
It is listed here for completeness.",
+ "unknown": "unknown",
+ "version": "Version"
+ },
+ "workflowActivator": {
+ "activateWorkflow": "Activate workflow",
+ "confirmMessage": {
+ "cancelButtonText": "",
+ "confirmButtonText": "Yes, activate and save!",
+ "headline": "Activate and save?",
+ "message": "When you activate the workflow all currently unsaved changes of the workflow will be saved."
+ },
+ "deactivateWorkflow": "Deactivate workflow",
+ "showError": {
+ "message": "There was a problem and the workflow could not be {newStateName}",
+ "title": "Problem"
+ },
+ "showMessage": {
+ "activeChangedNodesIssuesExistTrue": {
+ "message": "It is only possible to activate a workflow when all issues on all nodes got resolved!",
+ "title": "Problem activating workflow"
+ },
+ "activeChangedWorkflowIdUndefined": {
+ "message": "The workflow did not get saved yet so cannot be set active!",
+ "title": "Problem activating workflow"
+ },
+ "displayActivationError": {
+ "message": {
+ "catchBlock": "Sorry there was a problem requesting the error",
+ "errorDataNotUndefined": "The following error occurred on workflow activation:
{message}",
+ "errorDataUndefined": "Sorry there was a problem. No error got found to display."
+ },
+ "title": "Problem activating workflow"
+ }
+ },
+ "theWorkflowIsSetToBeActiveBut": "The workflow is set to be active but could not be started.
Click to display error message."
+ },
+ "workflowDetails": {
+ "active": "Active",
+ "addTag": "Add tag",
+ "showMessage": {
+ "message": "Please enter a name, or press 'esc' to go back to the old one.",
+ "title": "Name missing"
+ }
+ },
+ "workflowHelpers": {
+ "showMessage": {
+ "message": "",
+ "title": "Problem saving workflow"
+ }
+ },
+ "workflowOpen": {
+ "active": "Active",
+ "confirmMessage": {
+ "cancelButtonText": "",
+ "confirmButtonText": "Yes, switch workflows and forget changes",
+ "headline": "Save your Changes?",
+ "message": "When you switch workflows your current workflow changes will be lost."
+ },
+ "created": "Created",
+ "name": "@:reusableBaseText.name",
+ "openWorkflow": "Open Workflow",
+ "searchWorkflows": "Search workflows...",
+ "showError": {
+ "message": "There was a problem loading the workflows",
+ "title": "Problem loading workflows"
+ },
+ "showMessage": {
+ "message": "This is the current workflow",
+ "title": "Already open"
+ },
+ "updated": "Updated"
+ },
+ "workflowRun": {
+ "noActiveConnectionToTheServer": "No active connection to server. It is maybe down.",
+ "showError": {
+ "message": "",
+ "title": "Problem running workflow"
+ },
+ "showMessage": {
+ "message": "The workflow has issues. Please fix them first",
+ "title": "Workflow cannot be executed"
+ }
+ },
+ "workflowSettings": {
+ "defaultTimezone": "Default - {defaultTimezoneValue}",
+ "defaultTimezoneNotValid": "Default Timezone not valid",
+ "errorWorkflow": "Error Workflow",
+ "helpTexts": {
+ "errorWorkflow": "The workflow to run in case the current one fails.
To function correctly that workflow has to contain an 'Error Trigger' node!",
+ "executionTimeout": "After what time the workflow should timeout.",
+ "executionTimeoutToggle": "Cancel workflow execution after defined time",
+ "saveDataErrorExecution": "If data data of executions should be saved in case they failed.",
+ "saveDataSuccessExecution": "If data data of executions should be saved in case they succeed.",
+ "saveExecutionProgress": "If data should be saved after each node, allowing you to resume in case of errors from where it stopped. May increase latency.",
+ "saveManualExecutions": "If data data of executions should be saved when started manually from the editor.",
+ "timezone": "The timezone in which the workflow should run. Gets for example used by 'Cron' node."
+ },
+ "hours": "hours",
+ "minutes": "minutes",
+ "noWorkflow": "- No Workflow -",
+ "save": "@:reusableBaseText.save",
+ "saveDataErrorExecution": "Save Data Error Execution",
+ "saveDataErrorExecutionOptions": {
+ "defaultSave": "Default - ({defaultValue})",
+ "doNotSave": "Do not save",
+ "save": "@:reusableBaseText.save"
+ },
+ "saveDataSuccessExecution": "Save Data Success Execution",
+ "saveDataSuccessExecutionOptions": {
+ "defaultSave": "Default - ({defaultValue})",
+ "doNotSave": "Do not save",
+ "save": "@:reusableBaseText.save"
+ },
+ "saveExecutionProgress": "Save Execution Progress",
+ "saveExecutionProgressOptions": {
+ "defaultSave": "Default - ({defaultValue})",
+ "no": "No",
+ "yes": "Yes"
+ },
+ "saveManualExecutions": "Save Manual Executions",
+ "saveManualOptions": {
+ "defaultSave": "Default - ({defaultValue})",
+ "no": "No",
+ "yes": "Yes"
+ },
+ "seconds": "seconds",
+ "selectOption": "Select Option",
+ "settingsFor": "Settings for {workflowName} (#{workflowId})",
+ "showError": {
+ "saveSettings1": {
+ "errorMessage": "Timeout is activated but set to 0",
+ "message": "There was a problem saving the settings",
+ "title": "Problem saving settings"
+ },
+ "saveSettings2": {
+ "errorMessage": "Maximum Timeout is: {hours} hours, {minutes} minutes, {seconds} seconds",
+ "message": "Set timeout is exceeding the maximum timeout!",
+ "title": "Problem saving settings"
+ },
+ "saveSettings3": {
+ "message": "There was a problem saving the settings",
+ "title": "Problem saving settings"
+ }
+ },
+ "showMessage": {
+ "saveSettings": {
+ "message": "The workflow settings got saved!",
+ "title": "Settings saved"
+ }
+ },
+ "timeoutAfter": "Timeout After",
+ "timeoutWorkflow": "Timeout Workflow",
+ "timezone": "Timezone"
+ }
+}
\ No newline at end of file
diff --git a/packages/editor-ui/src/i18n/locales/en.ts b/packages/editor-ui/src/i18n/locales/en.ts
deleted file mode 100644
index bfdd3bb3e0..0000000000
--- a/packages/editor-ui/src/i18n/locales/en.ts
+++ /dev/null
@@ -1,1021 +0,0 @@
-export default {
- about: {
- aboutN8n: 'About n8n',
- apacheWithCommons20Clause: 'Apache 2.0 with Commons Clause',
- close: 'Close',
- license: 'License',
- n8nVersion: 'n8n Version',
- sourceCode: 'Source Code',
- },
- binaryDataDisplay: {
- backToList: 'Back to list',
- backToOverviewPage: 'Back to overview page',
- noDataFoundToDisplay: 'No data found to display',
- yourBrowserDoesNotSupport: 'Your browser does not support the video element. Kindly update it to latest version.',
- },
- codeEdit: {
- edit: 'Edit',
- },
- collectionParameter: {
- choose: 'Choose...',
- noProperties: 'No properties',
- },
- credentialEdit: {
- credentialConfig: {
- accountConnected: 'Account connected',
- clickToCopy: 'Click To Copy',
- connectionTestedSuccessfully: 'Connection tested successfully',
- couldntConnectWithTheseSettings: 'Couldnβt connect with these settings',
- needHelpFillingOutTheseFields: 'Need help filling out these fields?',
- oAuthRedirectUrl: 'OAuth Redirect URL',
- openDocs: 'Open docs',
- pleaseCheckTheErrorsBelow: 'Please check the errors below',
- reconnect: 'reconnect',
- reconnectOAuth2Credential: 'Reconnect OAuth2 Credential',
- redirectUrlCopiedToClipboard: 'Redirect URL copied to clipboard',
- retry: 'Retry',
- retryCredentialTest: 'Retry credential test',
- retrying: 'Retrying',
- subtitle: 'In {appName}, use the URL above when prompted to enter an OAuth callback or redirect URL',
- theServiceYouReConnectingTo: "the service you're connecting to",
- },
- credentialEdit: {
- confirmMessage: {
- beforeClose1: {
- cancelButtonText: 'Keep Editing',
- confirmButtonText: 'Close',
- headline: 'Close without saving?',
- message: 'Are you sure you want to throw away the changes you made to the {credentialDisplayName} credential?',
- },
- beforeClose2: {
- cancelButtonText: 'Keep Editing',
- confirmButtonText: 'Close',
- headline: 'Close without connecting?',
- message: 'You need to connect your credential for it to work',
- },
- deleteCredential: {
- cancelButtonText: '',
- confirmButtonText: 'Yes, delete!',
- headline: 'Delete Credential?',
- message: 'Are you sure you want to delete "{savedCredentialName}" credential?',
- },
- },
- connection: 'Connection',
- couldNotFindCredentialOfType: 'Could not find credential of type',
- couldNotFindCredentialWithId: 'Could not find credential with ID',
- details: 'Details',
- showError: {
- createCredential: {
- message: '',
- title: 'Problem creating credential',
- },
- deleteCredential: {
- message: '',
- title: 'Problem deleting credential',
- },
- generateAuthorizationUrl: {
- message: 'There was a problem generating the authorization URL',
- title: 'OAuth Authorization Error',
- },
- loadCredential: {
- message: '',
- title: 'Problem loading credential',
- },
- updateCredential: {
- message: '',
- title: 'Problem updating credential',
- },
- },
- showMessage: {
- message: 'The credential {savedCredentialName} was deleted!',
- title: 'Credential deleted',
- },
- },
- credentialInfo: {
- allowUseBy: 'Allow use by',
- created: 'Created',
- id: 'ID',
- lastModified: 'Last modified',
- },
- oAuthButton: {
- connectMyAccount: 'Connect my account',
- signInWithGoogle: 'Sign in with Google',
- },
- },
- credentialSelectModal: {
- addNewCredential: 'Add new credential',
- continue: 'Continue',
- searchForApp: 'Search for app...',
- selectAnAppOrServiceToConnectTo: 'Select an app or service to connect to',
- },
- credentialsList: {
- addNew: 'Add New',
- confirmMessage: {
- cancelButtonText: '',
- confirmButtonText: 'Yes, delete!',
- headline: 'Delete Credential?',
- message: 'Are you sure you want to delete {credentialName} credential?',
- },
- createNewCredential: 'Create New Credential',
- created: 'Created',
- credentials: 'Credentials',
- deleteCredential: 'Delete Credential',
- editCredential: 'Edit Credential',
- name: '@:reusableBaseText.name',
- operations: 'Operations',
- showError: {
- deleteCredential: {
- message: '',
- title: 'Problem deleting credential',
- },
- },
- showMessage: {
- message: 'The credential {credentialName} got deleted!',
- title: 'Credential deleted',
- },
- type: 'Type',
- updated: 'Updated',
- yourSavedCredentials: 'Your saved credentials',
- },
- dataDisplay: {
- needHelp: 'Need help?',
- nodeDocumentation: 'Node Documentation',
- openDocumentationFor: 'Open {nodeTypeDisplayName} documentation',
- },
- displayWithChange: {
- cancelEdit: 'Cancel Edit',
- clickToChange: 'Click to Change',
- setValue: 'Set Value',
- },
- duplicateWorkflowDialog: {
- cancel: '@:reusableBaseText.cancel',
- chooseOrCreateATag: 'Choose or create a tag',
- duplicateWorkflow: 'Duplicate Workflow',
- enterWorkflowName: 'Enter workflow name',
- save: '@:reusableBaseText.save',
- showMessage: {
- message: 'Please enter a name.',
- title: 'Name missing',
- },
- },
- executionDetails: {
- executionFailed: 'Execution failed',
- executionId: 'Execution ID',
- executionWaiting: 'Execution waiting',
- executionWasSuccessful: 'Execution was successful',
- openWorkflow: 'Open Workflow',
- },
- executionsList: {
- allWorkflows: 'All Workflows',
- anyStatus: 'Any Status',
- autoRefresh: 'Auto refresh',
- confirmMessage: {
- cancelButtonText: '',
- confirmButtonText: 'Yes, delete!',
- headline: 'Delete Executions?',
- message: 'Are you sure that you want to delete the {numSelected} selected executions?',
- },
- deleteSelected: 'Delete Selected',
- error: 'Error',
- filters: 'Filters',
- loadMore: 'Load More',
- mode: 'Mode',
- modes: {
- error: 'error',
- manual: 'manual',
- retry: 'retry',
- trigger: 'trigger',
- },
- name: '@:reusableBaseText.name',
- openPastExecution: 'Open Past Execution',
- retryExecution: 'Retry execution',
- retryOf: 'Retry of',
- retryWithCurrentlySavedWorkflow: 'Retry with currently saved workflow',
- retryWithOriginalworkflow: 'Retry with original workflow',
- running: 'Running',
- runningTime: 'Running Time',
- selectStatus: 'Select Status',
- selectWorkflow: 'Select Workflow',
- selected: 'Selected',
- showError: {
- handleDeleteSelected: {
- message: '',
- title: 'Problem deleting executions',
- },
- loadMore: {
- message: '',
- title: 'Problem loading workflows',
- },
- loadWorkflows: {
- message: '',
- title: 'Problem loading workflows',
- },
- refreshData: {
- message: '',
- title: 'Problem loading data',
- },
- retryExecution: {
- message: '',
- title: 'Problem with retry',
- },
- stopExecution: {
- message: '',
- title: 'Problem stopping execution',
- },
- },
- showMessage: {
- handleDeleteSelected: {
- message: 'The executions got deleted!',
- title: 'Execution deleted',
- },
- retrySuccessfulFalse: {
- message: 'The retry was not successful!',
- title: 'Retry unsuccessful',
- },
- retrySuccessfulTrue: {
- message: '',
- title: 'Retry successful',
- },
- stopExecution: {
- message: 'The execution with the ID {activeExecutionId} got stopped!',
- title: 'Execution stopped',
- },
- },
- startedAtId: 'Started At / ID',
- status: 'Status',
- statusTooltipText: {
- theWorkflowExecutionFailed: 'The workflow execution failed.',
- theWorkflowExecutionFailedButTheRetryWasSuccessful: 'The workflow execution failed but the retry {entryRetrySuccessId} was successful.',
- theWorkflowExecutionIsProbablyStillRunning: 'The workflow execution is probably still running but it may have crashed and n8n cannot safely tell. ',
- theWorkflowExecutionWasARetryOfAndFailed: 'The workflow execution was a retry of {entryRetryOf} and failed.
New retries have to be,started from the original execution.',
- theWorkflowExecutionWasARetryOfAndItWasSuccessful: 'The workflow execution was a retry of {entryRetryOf} and it was successful.',
- theWorkflowExecutionWasSuccessful: 'The worklow execution was successful.',
- theWorkflowIsCurrentlyExecuting: 'The worklow is currently executing.',
- theWorkflowIsWaitingIndefinitely: 'The workflow is waiting indefinitely for an incoming webhook call.',
- theWorkflowIsWaitingTill: 'The worklow is waiting till {waitDateDate} {waitDateTime}.',
- },
- stopExecution: 'Stop Execution',
- success: 'Success',
- successRetry: 'Success retry',
- unknown: 'Unknown',
- unsavedWorkflow: '[UNSAVED WORKFLOW]',
- waiting: 'Waiting',
- workflowExecutions: 'Workflow Executions',
- },
- expressionEdit: {
- editExpression: 'Edit Expression',
- expression: 'Expression',
- result: 'Result',
- variableSelector: 'Variable Selector',
- },
- fixedCollectionParameter: {
- choose: 'Choose...',
- currentlyNoItemsExist: 'Currently no items exist',
- deleteItem: 'Delete item',
- moveDown: 'Move down',
- moveUp: 'Move up',
- },
- genericHelpers: {
- loading: 'Loading',
- min: 'min.',
- sec: 'sec.',
- showMessage: {
- message: 'The workflow cannot be edited as a past execution gets displayed. To make changed either open the original workflow of which the execution gets displayed or save it under a new name first.',
- title: 'Workflow cannot be changed!',
- },
- },
- mainSidebar: {
- aboutN8n: 'About n8n',
- confirmMessage: {
- workflowDelete: {
- cancelButtonText: '',
- confirmButtonText: 'Yes, delete!',
- headline: 'Delete Workflow?',
- message: 'Are you sure that you want to delete the workflow {workflowName}?',
- },
- workflowNew: {
- cancelButtonText: '',
- confirmButtonText: 'Yes, switch workflows and forget changes',
- headline: 'Save your Changes?',
- message: 'When you switch workflows your current workflow changes will be lost.',
- },
- },
- credentials: 'Credentials',
- delete: 'Delete',
- download: 'Download',
- duplicate: 'Duplicate',
- executions: 'Executions',
- help: 'Help',
- helpMenuItems: {
- documentation: 'Documentation',
- forum: 'Forum',
- workflows: 'Workflows',
- },
- importFromFile: 'Import from File',
- importFromUrl: 'Import from URL',
- new: 'New',
- open: 'Open',
- prompt: {
- cancel: '@:reusableBaseText.cancel',
- import: 'Import',
- importWorkflowFromUrl: 'Import Workflow from URL',
- invalidUrl: 'Invalid URL',
- workflowUrl: 'Workflow URL',
- },
- save: '@:reusableBaseText.save',
- settings: 'Settings',
- showError: {
- stopExecution: {
- message: '',
- title: 'Problem stopping execution',
- },
- },
- showMessage: {
- handleFileImport: {
- message: 'The file does not contain valid JSON data.',
- title: 'Could not import file',
- },
- handleSelect1: {
- message: 'The workflow {workflowName} got deleted.',
- title: 'Workflow got deleted',
- },
- handleSelect2: {
- message: '',
- title: 'Workflow created',
- },
- handleSelect3: {
- message: '',
- title: 'Workflow created',
- },
- stopExecution: {
- message: 'Execution with ID {executionId} got stopped!',
- title: 'Execution stopped',
- },
- },
- workflows: 'Workflows',
- },
- multipleParameter: {
- addItem: 'Add item',
- currentlyNoItemsExist: 'Currently no items exist',
- deleteItem: 'Delete item',
- moveDown: 'Move down',
- moveUp: 'Move up',
- },
- noTagsView: {
- readyToOrganizeYourWorkflows: 'Ready to organize your workflows?',
- withWorkflowTagsYouReFree: "With workflow tags, you're free to create the perfect tagging system for your flows",
- },
- node: {
- activateDeactivateNode: 'Activate/Deactivate Node',
- deleteNode: 'Delete Node',
- disabled: 'Disabled',
- duplicateNode: 'Duplicate Node',
- editNode: 'Edit Node',
- executeNode: 'Execute Node',
- issues: 'Issues',
- nodeIsExecuting: 'Node is executing',
- nodeIsWaitingTill: 'Node is waiting till {date} {time}',
- theNodeIsWaitingIndefinitelyForAnIncomingWebhookCall: 'The node is waiting indefinitely for an incoming webhook call.',
- },
- nodeCreator: {
- categoryNames: {
- analytics: 'Analytics',
- communication: 'Communication',
- coreNodes: 'Core Nodes',
- customNodes: 'Custom Nodes',
- dataStorage: 'Data & Storage',
- development: 'Development',
- financeAccounting: 'Finance & Accounting',
- marketingContent: 'Marketing & Content',
- miscellaneous: 'Miscellaneous',
- productivity: 'Productivity',
- sales: 'Sales',
- suggestedNodes: 'Suggested Nodes β¨',
- utility: 'Utility',
- },
- mainPanel: {
- all: 'All',
- regular: 'Regular',
- trigger: 'Trigger',
- },
- noResults: {
- dontWorryYouCanProbablyDoItWithThe: 'Donβt worry, you can probably do it with the {httpRequest} or {webhook} node',
- httpRequest: 'HTTP Request',
- node: 'node',
- requestTheNode: 'Request the node',
- wantUsToMakeItFaster: 'Want us to make it faster?',
- weDidntMakeThatYet: "We didn't make that... yet",
- webhook: 'Webhook',
- },
- searchBar: {
- searchNodes: 'Search nodes...',
- },
- subcategoryDescriptions: {
- branches: 'Branches, core triggers, merge data',
- http: 'HTTP Requests (API calls), date and time, scrape HTML',
- manipulate: 'Manipulate data fields, run code',
- work: 'Work with CSV, XML, text, images etc.',
- },
- subcategoryNames: {
- dataTransformation: 'Data Transformation',
- files: 'Files',
- flow: 'Flow',
- helpers: 'Helpers',
- },
- },
- nodeCredentials: {
- createNew: 'Create New',
- credentialFor: 'Credential for {credentialType}',
- issues: 'Issues',
- selectCredential: 'Select Credential',
- showMessage: {
- message: 'Nodes that used credential "{oldCredentialName}" have been updated to use "{newCredentialName}"',
- title: 'Node credential updated',
- },
- updateCredential: 'Update Credential',
- },
- nodeErrorView: {
- cause: 'Cause',
- copyToClipboard: 'Copy to Clipboard',
- dataBelowMayContain: 'Data below may contain sensitive information. Proceed with caution when sharing.',
- details: 'Details',
- error: 'ERROR',
- httpCode: 'HTTP Code',
- showMessage: {
- message: '',
- title: 'Copied to clipboard',
- },
- stack: 'Stack',
- theErrorCauseIsTooLargeToBeDisplayed: 'The error cause is too large to be displayed.',
- time: 'Time',
- },
- nodeSettings: {
- alwaysOutputData: {
- description: 'If active, the node will return an empty item even if the
node returns no data during an initial execution. Be careful setting
this on IF-Nodes as it could cause an infinite loop.',
- displayName: 'Always Output Data',
- },
- clickOnTheQuestionMarkIcon: "Click the '?' icon to open this node on n8n.io",
- color: {
- description: 'The color of the node in the flow.',
- displayName: 'Node Color',
- },
- continueOnFail: {
- description: "If active, the workflow continues even if this node's
execution fails. When this occurs, the node passes along input data from
previous nodes - so your workflow should account for unexpected output data.",
- displayName: 'Continue On Fail',
- },
- executeOnce: {
- description: 'If active, the node executes only once, with data
from the first item it recieves.',
- displayName: 'Execute Once',
- },
- maxTries: {
- description: 'Number of times Retry On Fail should attempt to execute the node
before stopping and returning the execution as failed.',
- displayName: 'Max. Tries',
- },
- noDescriptionFound: 'No description found',
- nodeDescription: 'Node Description',
- notes: {
- description: 'Optional note to save with the node.',
- displayName: 'Notes',
- },
- notesInFlow: {
- description: 'If active, the note above will display in the flow as a subtitle.',
- displayName: 'Display note in flow?',
- },
- parameters: 'Parameters',
- retryOnFail: {
- description: 'If active, the node tries to execute a failed attempt
multiple times until it succeeds.',
- displayName: 'Retry On Fail',
- },
- settings: 'Settings',
- theNodeIsNotValidAsItsTypeIsUnknown: 'The node is not valid as its type {nodeType} is unknown.',
- thisNodeDoesNotHaveAnyParameters: 'This node does not have any parameters.',
- waitBetweenTries: {
- description: 'How long to wait between each attempt. Value in ms.',
- displayName: 'Wait Between Tries',
- },
- },
- nodeView: {
- addNode: 'Add node',
- confirmMessage: {
- beforeRouteLeave: {
- cancelButtonText: '',
- confirmButtonText: 'Yes, switch workflows and forget changes',
- headline: 'Save your Changes?',
- message: 'When you switch workflows your current workflow changes will be lost.',
- },
- initView: {
- cancelButtonText: '',
- confirmButtonText: 'Yes, switch workflows and forget changes',
- headline: 'Save your Changes?',
- message: 'When you switch workflows your current workflow changes will be lost.',
- },
- receivedCopyPasteData: {
- cancelButtonText: '',
- confirmButtonText: 'Yes, import!',
- headline: 'Import Workflow from URL?',
- message: 'Import workflow from this URL:
{plainTextData}',
- },
- },
- couldntImportWorkflow: "Couldn't import workflow",
- deletesTheCurrentExecutionData: 'Deletes the current Execution Data.',
- dropConnectionToAddNode: 'Drop connection
to add node',
- executesTheWorkflowFromTheStartOrWebhookNode: 'Executes the Workflow from the Start or Webhook Node.',
- itLooksLikeYouHaveBeenEditingSomething: 'It looks like you have been editing something. If you leave before saving, your changes will be lost.',
- loadingTemplate: 'Loading template',
- moreInfo: 'More info',
- noNodesGivenToAdd: 'No nodes given to add!',
- prompt: {
- cancel: '@:reusableBaseText.cancel',
- invalidName: 'Invalid Name',
- newName: 'New Name',
- rename: 'Rename',
- renameNode: 'Rename Node',
- },
- refresh: 'Refresh',
- resetZoom: 'Reset Zoom',
- runButtonText: {
- executeWorkflow: 'Execute Workflow',
- executingWorkflow: 'Executing Workflow',
- waitingForWebhookCall: 'Waiting for Webhook-Call',
- },
- showError: {
- getWorkflowDataFromUrl: {
- message: 'There was a problem loading the workflow data from URL',
- title: 'Problem loading workflow',
- },
- importWorkflowData: {
- message: 'There was a problem importing workflow data',
- title: 'Problem importing workflow',
- },
- mounted1: {
- message: 'There was a problem loading init data',
- title: 'Init Problem',
- },
- mounted2: {
- message: 'There was a problem initializing the workflow',
- title: 'Init Problem',
- },
- openExecution: {
- message: '',
- title: 'Problem loading execution',
- },
- openWorkflow: {
- message: '',
- title: 'Problem opening workflow',
- },
- stopExecution: {
- message: '',
- title: 'Problem stopping execution',
- },
- stopWaitingForWebhook: {
- message: '',
- title: 'Problem deleting the test-webhook',
- },
- },
- showMessage: {
- addNodeButton: {
- message: 'Node of type {nodeTypeName} could not be created as it is not known.',
- title: 'Could not create node!',
- },
- keyDown: {
- message: '',
- title: 'Workflow created',
- },
- showMaxNodeTypeError: {
- message: {
- plural: 'Node cannot be created because in a workflow max. {maxNodes} nodes of type {nodeTypeDataDisplayName} are allowed!',
- singular: 'Node cannot be created because in a workflow max. {maxNodes} node of type {nodeTypeDataDisplayName} is allowed!',
- },
- title: 'Could not create node!',
- },
- stopExecutionCatch: {
- message: 'Unable to stop operation in time. Workflow finished executing already.',
- title: 'Workflow finished executing',
- },
- stopExecutionTry: {
- message: 'The execution with the id {executionId} got stopped!',
- title: 'Execution stopped',
- },
- stopWaitingForWebhook: {
- message: '',
- title: 'Webhook got deleted',
- },
- },
- stopCurrentExecution: 'Stop current execution',
- stopWaitingForWebhookCall: 'Stop waiting for Webhook call',
- stoppingCurrentExecution: 'Stopping current execution',
- thereWasAProblemLoadingTheNodeParametersOfNode: 'There was a problem loading the node-parameters of node',
- thisExecutionHasntFinishedYet: "This execution hasn't finished yet",
- toSeeTheLatestStatus: 'to see the latest status',
- workflowTemplateWithIdCouldNotBeFound: 'Workflow template with id "{templateId}" could not be found!',
- workflowWithIdCouldNotBeFound: 'Workflow with id "{workflowId}" could not be found!',
- zoomIn: 'Zoom In',
- zoomOut: 'Zoom Out',
- zoomToFit: 'Zoom to Fit',
- },
- nodeWebhooks: {
- clickToCopyWebhookUrls: 'Click to copy Webhook URLs',
- clickToDisplayWebhookUrls: 'Click to display Webhook URLs',
- clickToHideWebhookUrls: 'Click to hide Webhook URLs',
- invalidExpression: '[INVALID EXPRESSION]',
- productionUrl: 'Production URL',
- showMessage: {
- message: 'The webhook URL was successfully copied!',
- title: 'Copied',
- },
- testUrl: 'Test URL',
- webhookUrls: 'Webhook URLs',
- },
- parameterInput: {
- addExpression: 'Add Expression',
- error: 'ERROR',
- issues: 'Issues',
- loadingOptions: 'Loading options...',
- openEditWindow: 'Open Edit Window',
- parameter: 'Parameter: "{shortPath}"',
- parameterHasExpression: 'Parameter: "{shortPath}" has expression!',
- parameterHasIssues: 'Parameter: "{shortPath}" has issues!',
- parameterHasIssuesAndExpression: 'Parameter: "{shortPath}" has issues and expression!',
- parameterOptions: 'Parameter Options',
- refreshList: 'Refresh List',
- removeExpression: 'Remove Expression',
- resetValue: 'Reset Value',
- selectDateAndTime: 'Select date and time',
- },
- parameterInputExpanded: {
- openDocs: 'Open docs',
- thisFieldIsRequired: 'This field is required.',
- },
- parameterInputList: {
- delete: 'Delete',
- deleteParameter: 'Delete Parameter',
- parameterOptions: 'Parameter Options',
- },
- personalizationModal: {
- automationConsulting: 'Automation consulting',
- continue: 'Continue',
- errorWhileSubmittingResults: 'Error while submitting results',
- finance: 'finance',
- getStarted: 'Get started',
- howAreYourCodingSkills: 'How are your coding skills',
- howBigIsYourCompany: 'How big is your company',
- hr: 'HR',
- imNotUsingN8nForWork: "I'm not using n8n for work",
- itEngineering: 'IT / Engineering',
- legal: 'legal',
- lessThan20people: 'Less than 20 people',
- lookOutForThingsMarked: 'Look out for things marked with a β¨. They are personalized to make n8n more relevant to you.',
- marketingGrowth: 'Marketing / Growth',
- neverCoded: 'Never coded',
- operations: 'operations',
- otherPleaseSpecify: 'Other (please specify)',
- people: 'people',
- proCoder: 'Pro coder',
- product: 'Product',
- salesBusinessDevelopment: 'Sales / Business Development',
- security: 'Security',
- select: 'Select...',
- specifyYourWorkArea: 'Specify your work area',
- support: 'Support',
- thanks: 'Thanks!',
- theseQuestionsHelpUs: 'These questions help us tailor n8n to you',
- whichOfTheseAreasDoYouMainlyWorkIn: 'Which of these areas do you mainly work in?',
- },
- pushConnection: {
- showMessage: {
- message: '',
- title: 'Workflow executed successfully',
- },
- },
- pushConnectionTracker: {
- cannotConnectToServer: 'Cannot connect to server.
It is either down or you have a connection issue.
It should reconnect automatically once the issue is resolved.',
- connectionLost: 'Connection lost',
- },
- readOnly: {
- readOnly: 'Read only',
- youreViewingTheLogOf: "You're viewing the log of a previous execution. You cannot
\n\t\tmake changes since this execution already occured. Make changes
\n\t\tto this workflow by clicking on its name on the left.",
- },
- reusableBaseText: {
- cancel: 'Cancel',
- name: 'Name',
- save: 'Save',
- },
- reusableDynamicText: {
- oauth2: {
- clientId: 'Client ID',
- clientSecret: 'Client Secret',
- },
- },
- runData: {
- binary: 'Binary',
- copyItemPath: 'Copy Item Path',
- copyParameterPath: 'Copy Parameter Path',
- copyToClipboard: 'Copy to Clipboard',
- copyValue: 'Copy Value',
- dataOfExecution: 'Data of Execution',
- dataReturnedByThisNodeWillDisplayHere: 'Data returned by this node will display here.',
- displayDataAnyway: 'Display Data Anyway',
- entriesExistButThey: 'Entries exist but they do not contain any JSON data.',
- executeNode: 'Execute Node',
- executesThisNodeAfterExecuting: 'Executes this {nodeName} node after executing any previous nodes that have not yet returned data',
- executionTime: 'Execution Time',
- fileExtension: 'File Extension',
- fileName: 'File Name',
- items: 'Items',
- json: 'JSON',
- mimeType: 'Mime Type',
- ms: 'ms',
- noBinaryDataFound: 'No binary data found',
- noData: 'No data',
- noTextDataFound: 'No text data found',
- nodeReturnedALargeAmountOfData: 'Node returned a large amount of data',
- output: 'Output',
- showBinaryData: 'Show Binary Data',
- startTime: 'Start Time',
- table: 'Table',
- theNodeContains: 'The node contains {numberOfKb} KB of data.
Displaying it could cause problems!
If you do decide to display it, avoid the JSON view!',
- },
- saveButton: {
- save: '@:reusableBaseText.save',
- saved: 'Saved',
- saving: 'Saving',
- },
- showMessage: {
- cancel: '@:reusableBaseText.cancel',
- ok: 'OK',
- showDetails: 'Show Details',
- },
- tagsDropdown: {
- createTag: 'Create tag "{filter}"',
- manageTags: 'Manage tags',
- noMatchingTagsExist: 'No matching tags exist',
- noTagsExist: 'No tags exist',
- showError: {
- message: 'A problem occurred when trying to create the {name} tag',
- title: 'New tag was not created',
- },
- typeToCreateATag: 'Type to create a tag',
- },
- tagsManager: {
- couldNotDeleteTag: 'Could not delete tag',
- done: 'Done',
- manageTags: 'Manage tags',
- showError: {
- onCreate: {
- message: 'A problem occurred when trying to create the {escapedName} tag',
- title: 'New tag was not created',
- },
- onDelete: {
- message: 'A problem occurred when trying to delete the {escapedName} tag',
- title: 'Tag was not deleted',
- },
- onUpdate: {
- message: 'A problem occurred when trying to update the {escapedName} tag',
- title: 'Tag was not updated',
- },
- },
- showMessage: {
- onDelete: {
- message: 'A problem occurred when trying to delete the {escapedName} tag',
- title: 'Tag was deleted',
- },
- onUpdate: {
- message: 'The {escapedOldName} tag was successfully updated to {escapedName}',
- title: 'Tag was updated',
- },
- },
- tagNameCannotBeEmpty: 'Tag name cannot be empty',
- },
- tagsTable: {
- areYouSureYouWantToDeleteThisTag: 'Are you sure you want to delete this tag?',
- cancel: '@:reusableBaseText.cancel',
- createTag: 'Create tag',
- deleteTag: 'Delete tag',
- editTag: 'Edit Tag',
- name: '@:reusableBaseText.name',
- noMatchingTagsExist: 'No matching tags exist',
- saveChanges: 'Save changes?',
- usage: 'Usage',
- },
- tagsTableHeader: {
- addNew: 'Add new',
- searchTags: 'Search Tags',
- },
- tagsView: {
- inUse: {
- plural: '{count} workflows',
- singular: '{count} workflow',
- },
- notBeingUsed: 'Not being used',
- },
- textEdit: {
- edit: 'Edit',
- },
- timeAgo: {
- daysAgo: '%s days ago',
- hoursAgo: '%s hours ago',
- inDays: 'in %s days',
- inHours: 'in %s hours',
- inMinutes: 'in %s minutes',
- inMonths: 'in %s months',
- inOneDay: 'in 1 day',
- inOneHour: 'in 1 hour',
- inOneMinute: 'in 1 minute',
- inOneMonth: 'in 1 month',
- inOneWeek: 'in 1 week',
- inOneYear: 'in 1 year',
- inWeeks: 'in %s weeks',
- inYears: 'in %s years',
- justNow: 'Just now',
- minutesAgo: '%s minutes ago',
- monthsAgo: '%s months ago',
- oneDayAgo: '1 day ago',
- oneHourAgo: '1 hour ago',
- oneMinuteAgo: '1 minute ago',
- oneMonthAgo: '1 month ago',
- oneWeekAgo: '1 week ago',
- oneYearAgo: '1 year ago',
- rightNow: 'Right now',
- weeksAgo: '%s weeks ago',
- yearsAgo: '%s years ago',
- },
- updatesPanel: {
- andIs: 'and is',
- behindTheLatest: 'behind the latest and greatest n8n',
- howToUpdateYourN8nVersion: 'How to update your n8n version',
- version: '{numberOfVersions} version{howManySuffix}',
- weVeBeenBusy: 'Weβve been busy β¨',
- youReOnVersion: 'Youβre on {currentVersionName}, which was released',
- },
- variableSelector: {
- context: 'Context',
- currentNode: 'Current Node',
- nodes: 'Nodes',
- outputData: 'Output Data',
- parameters: 'Parameters',
- variableFilter: 'Variable filter...',
- },
- variableSelectorItem: {
- empty: '--- EMPTY ---',
- selectItem: 'Select Item',
- },
- versionCard: {
- breakingChanges: 'Breaking changes',
- released: 'Released',
- securityUpdate: 'Security update',
- thisVersionHasASecurityIssue: 'This version has a security issue.
It is listed here for completeness.',
- unknown: 'unknown',
- version: 'Version',
- },
- workflowActivator: {
- activateWorkflow: 'Activate workflow',
- confirmMessage: {
- cancelButtonText: '',
- confirmButtonText: 'Yes, activate and save!',
- headline: 'Activate and save?',
- message: 'When you activate the workflow all currently unsaved changes of the workflow will be saved.',
- },
- deactivateWorkflow: 'Deactivate workflow',
- showError: {
- message: 'There was a problem and the workflow could not be {newStateName}',
- title: 'Problem',
- },
- showMessage: {
- activeChangedNodesIssuesExistTrue: {
- message: 'It is only possible to activate a workflow when all issues on all nodes got resolved!',
- title: 'Problem activating workflow',
- },
- activeChangedWorkflowIdUndefined: {
- message: 'The workflow did not get saved yet so cannot be set active!',
- title: 'Problem activating workflow',
- },
- displayActivationError: {
- message: {
- catchBlock: 'Sorry there was a problem requesting the error',
- errorDataNotUndefined: 'The following error occurred on workflow activation:
{message}',
- errorDataUndefined: 'Sorry there was a problem. No error got found to display.',
- },
- title: 'Problem activating workflow',
- },
- },
- theWorkflowIsSetToBeActiveBut: 'The workflow is set to be active but could not be started.
Click to display error message.',
- },
- workflowDetails: {
- active: 'Active',
- addTag: 'Add tag',
- showMessage: {
- message: "Please enter a name, or press 'esc' to go back to the old one.",
- title: 'Name missing',
- },
- },
- workflowHelpers: {
- showMessage: {
- message: '',
- title: 'Problem saving workflow',
- },
- },
- workflowOpen: {
- active: 'Active',
- confirmMessage: {
- cancelButtonText: '',
- confirmButtonText: 'Yes, switch workflows and forget changes',
- headline: 'Save your Changes?',
- message: 'When you switch workflows your current workflow changes will be lost.',
- },
- created: 'Created',
- name: '@:reusableBaseText.name',
- openWorkflow: 'Open Workflow',
- searchWorkflows: 'Search workflows...',
- showError: {
- message: 'There was a problem loading the workflows',
- title: 'Problem loading workflows',
- },
- showMessage: {
- message: 'This is the current workflow',
- title: 'Already open',
- },
- updated: 'Updated',
- },
- workflowRun: {
- noActiveConnectionToTheServer: 'No active connection to server. It is maybe down.',
- showError: {
- message: '',
- title: 'Problem running workflow',
- },
- showMessage: {
- message: 'The workflow has issues. Please fix them first',
- title: 'Workflow cannot be executed',
- },
- },
- workflowSettings: {
- defaultTimezone: 'Default - {defaultTimezoneValue}',
- defaultTimezoneNotValid: 'Default Timezone not valid',
- errorWorkflow: 'Error Workflow',
- helpTexts: {
- errorWorkflow: "The workflow to run in case the current one fails.
To function correctly that workflow has to contain an 'Error Trigger' node!",
- executionTimeout: 'After what time the workflow should timeout.',
- executionTimeoutToggle: 'Cancel workflow execution after defined time',
- saveDataErrorExecution: 'If data data of executions should be saved in case they failed.',
- saveDataSuccessExecution: 'If data data of executions should be saved in case they succeed.',
- saveExecutionProgress: 'If data should be saved after each node, allowing you to resume in case of errors from where it stopped. May increase latency.',
- saveManualExecutions: 'If data data of executions should be saved when started manually from the editor.',
- timezone: "The timezone in which the workflow should run. Gets for example used by 'Cron' node.",
- },
- hours: 'hours',
- minutes: 'minutes',
- noWorkflow: '- No Workflow -',
- save: '@:reusableBaseText.save',
- saveDataErrorExecution: 'Save Data Error Execution',
- saveDataErrorExecutionOptions: {
- defaultSave: 'Default - ({defaultValue})',
- doNotSave: 'Do not save',
- save: '@:reusableBaseText.save',
- },
- saveDataSuccessExecution: 'Save Data Success Execution',
- saveDataSuccessExecutionOptions: {
- defaultSave: 'Default - ({defaultValue})',
- doNotSave: 'Do not save',
- save: '@:reusableBaseText.save',
- },
- saveExecutionProgress: 'Save Execution Progress',
- saveExecutionProgressOptions: {
- defaultSave: 'Default - ({defaultValue})',
- no: 'No',
- yes: 'Yes',
- },
- saveManualExecutions: 'Save Manual Executions',
- saveManualOptions: {
- defaultSave: 'Default - ({defaultValue})',
- no: 'No',
- yes: 'Yes',
- },
- seconds: 'seconds',
- selectOption: 'Select Option',
- settingsFor: 'Settings for {workflowName} (#{workflowId})',
- showError: {
- saveSettings1: {
- errorMessage: 'Timeout is activated but set to 0',
- message: 'There was a problem saving the settings',
- title: 'Problem saving settings',
- },
- saveSettings2: {
- errorMessage: 'Maximum Timeout is: {hours} hours, {minutes} minutes, {seconds} seconds',
- message: 'Set timeout is exceeding the maximum timeout!',
- title: 'Problem saving settings',
- },
- saveSettings3: {
- message: 'There was a problem saving the settings',
- title: 'Problem saving settings',
- },
- },
- showMessage: {
- saveSettings: {
- message: 'The workflow settings got saved!',
- title: 'Settings saved',
- },
- },
- timeoutAfter: 'Timeout After',
- timeoutWorkflow: 'Timeout Workflow',
- timezone: 'Timezone',
- },
-};
diff --git a/packages/nodes-base/gulpfile.js b/packages/nodes-base/gulpfile.js
index 2ae4316e22..d47044799c 100644
--- a/packages/nodes-base/gulpfile.js
+++ b/packages/nodes-base/gulpfile.js
@@ -51,7 +51,7 @@ function getTranslationPaths() {
__dirname,
cur.split('/').slice(1, -1).join('/'),
'translations',
- `${locale}.ts`,
+ `${locale}.json`,
);
if (existsSync(sourcePath) && !seen[sourcePath]) {
@@ -61,7 +61,7 @@ function getTranslationPaths() {
__dirname,
cur.split('/').slice(0, -1).join('/'),
'translations',
- `${locale}.js`,
+ `${locale}.json`,
);
acc.push({
diff --git a/packages/nodes-base/nodes/Bitwarden/translations/de.json b/packages/nodes-base/nodes/Bitwarden/translations/de.json
new file mode 100644
index 0000000000..48bd38d49c
--- /dev/null
+++ b/packages/nodes-base/nodes/Bitwarden/translations/de.json
@@ -0,0 +1,26 @@
+{
+ "bitwarden": {
+ "header": {
+ "displayName": "π©πͺ Bitwarden",
+ "description": "π©πͺ Consume Bitwarden API"
+ },
+ "credentialsModal": {
+ "bitwardenApi": {
+ "environment": {
+ "displayName": "π©πͺ Environment",
+ "description": "π©πͺ Description for environment",
+ "options": {
+ "cloudHosted": {
+ "displayName": "π©πͺ Cloud-hosted",
+ "description": "π©πͺ Description for cloud-hosted"
+ },
+ "selfHosted": {
+ "displayName": "π©πͺ Self-hosted"
+ }
+ }
+ }
+ }
+ },
+ "nodeView": {}
+ }
+}
\ No newline at end of file
diff --git a/packages/nodes-base/nodes/Bitwarden/translations/de.ts b/packages/nodes-base/nodes/Bitwarden/translations/de.ts
deleted file mode 100644
index f5856e59c1..0000000000
--- a/packages/nodes-base/nodes/Bitwarden/translations/de.ts
+++ /dev/null
@@ -1,26 +0,0 @@
-module.exports = {
- bitwarden: {
- header: {
- displayName: 'π©πͺ Bitwarden',
- description: 'π©πͺ Consume Bitwarden API',
- },
- credentialsModal: {
- bitwardenApi: {
- environment: {
- displayName: 'π©πͺ Environment',
- description: 'π©πͺ Description for environment',
- options: {
- cloudHosted: {
- displayName: 'π©πͺ Cloud-hosted',
- description: 'π©πͺ Description for cloud-hosted',
- },
- selfHosted: {
- displayName: 'π©πͺ Self-hosted',
- },
- },
- },
- },
- },
- nodeView: {},
- },
-};
diff --git a/packages/nodes-base/nodes/Github/translations/de.json b/packages/nodes-base/nodes/Github/translations/de.json
new file mode 100644
index 0000000000..6a9ff486f4
--- /dev/null
+++ b/packages/nodes-base/nodes/Github/translations/de.json
@@ -0,0 +1,147 @@
+{
+ "githubTrigger": {
+ "header": {
+ "displayName": "π©πͺ GitHub Trigger",
+ "description": "π©πͺ Listen to GitHub events"
+ }
+ },
+ "github": {
+ "header": {
+ "displayName": "π©πͺ GitHub",
+ "description": "π©πͺ Consume GitHub API"
+ },
+ "credentialsModal": {
+ "githubOAuth2Api": {
+ "server": {
+ "displayName": "π©πͺ Github Server",
+ "description": "π©πͺ The server to connect to. Only has to be set if Github Enterprise is used."
+ }
+ },
+ "githubApi": {
+ "server": {
+ "displayName": "π©πͺ Github Server",
+ "description": "π©πͺ The server to connect to. Only has to be set if Github Enterprise is used."
+ },
+ "user": {
+ "placeholder": "π©πͺ Hans"
+ },
+ "accessToken": {
+ "placeholder": "π©πͺ 123"
+ }
+ }
+ },
+ "nodeView": {
+ "authentication": {
+ "displayName": "π©πͺ Authentication",
+ "options": {
+ "accessToken": {
+ "displayName": "π©πͺ Access Token"
+ },
+ "oAuth2": {
+ "displayName": "π©πͺ OAuth2"
+ }
+ }
+ },
+ "resource": {
+ "displayName": "π©πͺ Resource",
+ "description": "π©πͺ The resource to operate on.",
+ "options": {
+ "issue": {
+ "displayName": "π©πͺ Issue"
+ },
+ "file": {
+ "displayName": "π©πͺ File"
+ },
+ "repository": {
+ "displayName": "π©πͺ Repository"
+ },
+ "release": {
+ "displayName": "π©πͺ Release"
+ },
+ "review": {
+ "displayName": "π©πͺ Review"
+ },
+ "user": {
+ "displayName": "π©πͺ User"
+ }
+ }
+ },
+ "operation": {
+ "displayName": "π©πͺ Operation",
+ "options": {
+ "create": {
+ "displayName": "π©πͺ Create",
+ "description": "π©πͺ Create a new issue."
+ },
+ "get": {
+ "displayName": "π©πͺ Get",
+ "description": "π©πͺ Get the data of a single issue."
+ }
+ }
+ },
+ "owner": {
+ "displayName": "π©πͺ Repository Owner",
+ "placeholder": "π©πͺ n8n-io",
+ "description": "π©πͺ Owner of the repository."
+ },
+ "repository": {
+ "displayName": "π©πͺ Repository Name",
+ "placeholder": "π©πͺ n8n"
+ },
+ "title": {
+ "displayName": "π©πͺ Title"
+ },
+ "body": {
+ "displayName": "π©πͺ Body"
+ },
+ "labels": {
+ "displayName": "π©πͺ Labels",
+ "multipleValueButtonText": "π©πͺ Add Label"
+ },
+ "assignees": {
+ "displayName": "π©πͺ Assignees",
+ "multipleValueButtonText": "π©πͺ Add Assignee"
+ },
+ "label": {
+ "displayName": "π©πͺ Label",
+ "description": "π©πͺ Label to add to issue."
+ },
+ "assignee": {
+ "displayName": "π©πͺ Assignee",
+ "description": "π©πͺ User to assign issue to."
+ },
+ "additionalParameters": {
+ "displayName": "π©πͺ Additional Fields",
+ "placeholder": "π©πͺ Add Field",
+ "options": {
+ "author": {
+ "displayName": "π©πͺ Author"
+ },
+ "branch": {
+ "displayName": "π©πͺ Branch"
+ },
+ "committer": {
+ "displayName": "π©πͺ Committer"
+ }
+ }
+ },
+ "author": {
+ "displayName": "π©πͺ Author"
+ },
+ "branch": {
+ "displayName": "π©πͺ Branch"
+ },
+ "committer": {
+ "displayName": "π©πͺ Committer"
+ },
+ "name": {
+ "displayName": "π©πͺ Name",
+ "description": "π©πͺ The name of the author of the commit."
+ },
+ "email": {
+ "displayName": "π©πͺ Email",
+ "description": "π©πͺ The email of the author of the commit."
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/packages/nodes-base/nodes/Github/translations/de.ts b/packages/nodes-base/nodes/Github/translations/de.ts
deleted file mode 100644
index 9a6f10e1c5..0000000000
--- a/packages/nodes-base/nodes/Github/translations/de.ts
+++ /dev/null
@@ -1,156 +0,0 @@
-module.exports = {
- githubTrigger: {
- header: {
- displayName: 'π©πͺ GitHub Trigger',
- description: 'π©πͺ Listen to GitHub events',
- },
- },
- github: {
- header: {
- displayName: 'π©πͺ GitHub',
- description: 'π©πͺ Consume GitHub API',
- },
- credentialsModal: {
- githubOAuth2Api: {
- server: {
- displayName: 'π©πͺ Github Server',
- description: 'π©πͺ The server to connect to. Only has to be set if Github Enterprise is used.',
- },
- },
- githubApi: {
- server: {
- displayName: 'π©πͺ Github Server',
- description: 'π©πͺ The server to connect to. Only has to be set if Github Enterprise is used.',
- },
- user: {
- placeholder: 'π©πͺ Hans',
- },
- accessToken: {
- placeholder: 'π©πͺ 123',
- },
- },
- },
- nodeView: {
- authentication: {
- displayName: 'π©πͺ Authentication',
- options: {
- accessToken: {
- displayName: 'π©πͺ Access Token',
- },
- oAuth2: {
- displayName: 'π©πͺ OAuth2',
- },
- },
- },
- resource: {
- displayName: 'π©πͺ Resource',
- description: 'π©πͺ The resource to operate on.',
- options: {
- issue: {
- displayName: 'π©πͺ Issue',
- },
- file: {
- displayName: 'π©πͺ File',
- },
- repository: {
- displayName: 'π©πͺ Repository',
- },
- release: {
- displayName: 'π©πͺ Release',
- },
- review: {
- displayName: 'π©πͺ Review',
- },
- user: {
- displayName: 'π©πͺ User',
- },
- },
- },
- operation: {
- displayName: 'π©πͺ Operation',
- options: {
- create: {
- displayName: 'π©πͺ Create',
- description: 'π©πͺ Create a new issue.',
- },
- get: {
- displayName: 'π©πͺ Get',
- description: 'π©πͺ Get the data of a single issue.',
- },
- },
- },
-
- owner: {
- displayName: 'π©πͺ Repository Owner',
- placeholder: 'π©πͺ n8n-io',
- description: 'π©πͺ Owner of the repository.',
- },
- repository: {
- displayName: 'π©πͺ Repository Name',
- placeholder: 'π©πͺ n8n',
- },
- title: {
- displayName: 'π©πͺ Title',
- },
- body: {
- displayName: 'π©πͺ Body',
- },
-
- labels: {
- displayName: 'π©πͺ Labels',
- multipleValueButtonText: 'π©πͺ Add Label',
- },
- assignees: {
- displayName: 'π©πͺ Assignees',
- multipleValueButtonText: 'π©πͺ Add Assignee',
- },
-
- label: {
- displayName: 'π©πͺ Label',
- description: 'π©πͺ Label to add to issue.',
- },
- assignee: {
- displayName: 'π©πͺ Assignee',
- description: 'π©πͺ User to assign issue to.',
- },
-
- additionalParameters: {
- displayName: 'π©πͺ Additional Fields',
- placeholder: 'π©πͺ Add Field',
- options: {
- author: {
- displayName: 'π©πͺ Author',
- },
- branch: {
- displayName: 'π©πͺ Branch',
- },
- committer: {
- displayName: 'π©πͺ Committer',
- },
- },
- },
-
- author: {
- displayName: 'π©πͺ Author',
- },
-
- branch: {
- displayName: 'π©πͺ Branch',
- },
-
- committer: {
- displayName: 'π©πͺ Committer',
- },
-
- name: {
- displayName: 'π©πͺ Name',
- description: 'π©πͺ The name of the author of the commit.',
- },
- email: {
- displayName: 'π©πͺ Email',
- description: 'π©πͺ The email of the author of the commit.',
- },
-
- },
- },
-};
diff --git a/packages/nodes-base/nodes/Start/translations/de.json b/packages/nodes-base/nodes/Start/translations/de.json
new file mode 100644
index 0000000000..bd8216705f
--- /dev/null
+++ b/packages/nodes-base/nodes/Start/translations/de.json
@@ -0,0 +1,7 @@
+{
+ "start": {
+ "header": {
+ "displayName": "π©πͺ Start"
+ }
+ }
+}
\ No newline at end of file
diff --git a/packages/nodes-base/nodes/Start/translations/de.ts b/packages/nodes-base/nodes/Start/translations/de.ts
deleted file mode 100644
index a34704eca3..0000000000
--- a/packages/nodes-base/nodes/Start/translations/de.ts
+++ /dev/null
@@ -1,7 +0,0 @@
-module.exports = {
- start: {
- header: {
- displayName: 'π©πͺ Start',
- },
- },
-};