{
    "common": {
        "label": {
            "name": "Name",
            "ok": "Ok",
            "done":"Done",
            "cancel": "Cancel",
            "delete": "Delete",
            "close": "Close",
            "load": "Load",
            "save": "Save",
            "import": "Import",
            "export": "Export",
            "back": "Back",
            "next": "Next",
            "clone": "Clone project",
            "cont": "Continue"
        }
    },
    "workspace": {
        "defaultName": "Flow __number__",
        "editFlow": "Edit flow: __name__",
        "confirmDelete": "Confirm delete",
        "delete": "Are you sure you want to delete '__label__'?",
        "dropFlowHere": "Drop the flow here",
        "status": "Status",
        "enabled": "Enabled",
        "disabled":"Disabled",
        "info": "Description",
        "tip": "Description accepts Markdown and will appear in the Info tab."
    },
    "menu": {
        "label": {
            "view": {
                "view": "View",
                "grid": "Grid",
                "showGrid": "Show grid",
                "snapGrid": "Snap to grid",
                "gridSize": "Grid size",
                "textDir": "Text Direction",
                "defaultDir": "Default",
                "ltr": "Left-to-right",
                "rtl": "Right-to-left",
                "auto": "Contextual"
            },
            "sidebar": {
                "show": "Show sidebar"
            },
            "settings": "Settings",
            "userSettings": "User Settings",
            "nodes": "Nodes",
            "displayStatus": "Show node status",
            "displayConfig": "Configuration nodes",
            "import": "Import",
            "export": "Export",
            "search": "Search flows",
            "searchInput": "search your flows",
            "clipboard": "Clipboard",
            "library": "Library",
            "examples": "Examples",
            "subflows": "Subflows",
            "createSubflow": "Create Subflow",
            "selectionToSubflow": "Selection to Subflow",
            "flows": "Flows",
            "add": "Add",
            "rename": "Rename",
            "delete": "Delete",
            "keyboardShortcuts": "Keyboard shortcuts",
            "login": "Login",
            "logout": "Logout",
            "editPalette":"Manage palette",
            "other": "Other",
            "showTips": "Show tips",
            "help": "Node-RED website",
            "projects": "Projects",
            "projects-new": "New",
            "projects-open": "Open",
            "projects-settings": "Project Settings"
        }
    },
    "user": {
        "loggedInAs": "Logged in as __name__",
        "username": "Username",
        "password": "Password",
        "login": "Login",
        "loginFailed": "Login failed",
        "notAuthorized": "Not authorized",
        "errors": {
            "settings": "You must be logged in to access settings",
            "deploy": "You must be logged in to deploy changes",
            "notAuthorized": "You must be logged in to perform this action"
        }
    },
    "notification": {
        "warning": "<strong>Warning</strong>: __message__",
        "warnings": {
            "undeployedChanges": "node has undeployed changes",
            "nodeActionDisabled": "node actions disabled within subflow",
            "missing-types": "<p>Flows stopped due to missing node types.</p>",
            "restartRequired": "Node-RED must be restarted to enable upgraded modules",
            "credentials_load_failed": "<p>Flows stopped as the credentials could not be decrypted.</p><p>The flow credential file is encrypted, but the project's encryption key is missing or invalid.</p>",
            "credentials_load_failed_reset":"<p>Credentials could not be decrypted</p><p>The flow credential file is encrypted, but the project's encryption key is missing or invalid.</p><p>The flow credential file will be reset on the next deployment. Any existing flow credentials will be cleared.</p>",
            "missing_flow_file": "<p>Project flow file not found.</p><p>The project is not configured with a flow file.</p>",
            "missing_package_file": "<p>Project package file not found.</p><p>The project is missing a package.json file.</p>",
            "project_empty": "<p>The project is empty.</p><p>Do you want to create a default set of project files?<br/>Otherwise, you will have to manually add files to the project outside of the editor.</p>",
            "project_not_found": "<p>Project '__project__' not found.</p>",
            "git_merge_conflict": "<p>Automatic merging of changes failed.</p><p>Fix the unmerged conflicts then commit the results.</p>"
        },

        "error": "<strong>Error</strong>: __message__",
        "errors": {
            "lostConnection": "Lost connection to server, reconnecting...",
            "lostConnectionReconnect": "Lost connection to server, reconnecting in __time__s.",
            "lostConnectionTry": "Try now",
            "cannotAddSubflowToItself": "Cannot add subflow to itself",
            "cannotAddCircularReference": "Cannot add subflow - circular reference detected",
            "unsupportedVersion": "<p>Using an unsupported version of Node.js</p><p>You should upgrade to the latest Node.js LTS release</p>",
            "failedToAppendNode": "<p>Failed to load '__module__'</p><p>__error__</p>"
        },
        "project": {
            "change-branch": "Change to local branch '__project__'",
            "merge-abort": "Git merge aborted",
            "loaded": "Project '__project__' loaded",
            "updated": "Project '__project__' updated",
            "pull": "Project '__project__' reloaded",
            "revert": "Project '__project__' reloaded",
            "merge-complete": "Git merge completed"
        },
        "label": {
            "manage-project-dep": "Manage project dependencies",
            "setup-cred": "Setup credentials",
            "setup-project": "Setup project files",
            "create-default-package": "Create default package file",
            "no-thanks": "No thanks",
            "create-default-project": "Create default project files",
            "show-merge-conflicts": "Show merge conflicts"
        }
    },
    "clipboard": {
        "nodes": "Nodes",
        "selectNodes": "Select the text above and copy to the clipboard.",
        "pasteNodes": "Paste nodes here",
        "importNodes": "Import nodes",
        "exportNodes": "Export nodes to clipboard",
        "importUnrecognised": "Imported unrecognised type:",
        "importUnrecognised_plural": "Imported unrecognised types:",
        "nodesExported": "Nodes exported to clipboard",
        "nodeCopied": "__count__ node copied",
        "nodeCopied_plural": "__count__ nodes copied",
        "invalidFlow": "Invalid flow: __message__",
        "export": {
            "selected":"selected nodes",
            "current":"current flow",
            "all":"all flows",
            "compact":"compact",
            "formatted":"formatted",
            "copy": "Export to clipboard"
        },
        "import": {
            "import": "Import to",
            "newFlow": "new flow"
        },
        "copyMessagePath": "Path copied",
        "copyMessageValue": "Value copied",
        "copyMessageValue_truncated": "Truncated value copied"
    },
    "deploy": {
        "deploy": "Deploy",
        "full": "Full",
        "fullDesc": "Deploys everything in the workspace",
        "modifiedFlows": "Modified Flows",
        "modifiedFlowsDesc": "Only deploys flows that contain changed nodes",
        "modifiedNodes": "Modified Nodes",
        "modifiedNodesDesc": "Only deploys nodes that have changed",
        "successfulDeploy": "Successfully deployed",
        "deployFailed": "Deploy failed: __message__",
        "unusedConfigNodes":"You have some unused configuration nodes.",
        "unusedConfigNodesLink":"Click here to see them",
        "errors": {
            "noResponse": "no response from server"
        },
        "confirm": {
            "button": {
                "ignore": "Ignore",
                "confirm": "Confirm deploy",
                "review": "Review changes",
                "cancel": "Cancel",
                "merge": "Merge",
                "overwrite": "Ignore & deploy"
            },
            "undeployedChanges": "You have undeployed changes.\n\nLeaving this page will lose these changes.",
            "improperlyConfigured": "The workspace contains some nodes that are not properly configured:",
            "unknown": "The workspace contains some unknown node types:",
            "confirm": "Are you sure you want to deploy?",
            "doNotWarn": "do not warn about this again",
            "conflict": "The server is running a more recent set of flows.",
            "backgroundUpdate": "The flows on the server have been updated.",
            "conflictChecking": "Checking to see if the changes can be merged automatically",
            "conflictAutoMerge": "The changes include no conflicts and can be merged automatically.",
            "conflictManualMerge": "The changes include conflicts that must be resolved before they can be deployed.",
            "plusNMore": "+ __count__ more"
        }
    },
    "diff": {
        "unresolvedCount": "__count__ unresolved conflict",
        "unresolvedCount_plural": "__count__ unresolved conflicts",
        "globalNodes": "Global nodes",
        "flowProperties": "Flow Properties",
        "type": {
            "added": "added",
            "changed": "changed",
            "unchanged": "unchanged",
            "deleted": "deleted",
            "flowDeleted": "flow deleted",
            "flowAdded": "flow added",
            "movedTo": "moved to __id__",
            "movedFrom": "moved from __id__"
        },
        "nodeCount": "__count__ node",
        "nodeCount_plural": "__count__ nodes",
        "local":"Local changes",
        "remote":"Remote changes",
        "reviewChanges": "Review Changes",
        "noBinaryFileShowed": "Cannot show binary file contents",
        "viewCommitDiff": "View Commit Changes",
        "compareChanges": "Compare Changes",
        "saveConflict": "Save conflict resolution",
        "conflictHeader": "<span>__resolved__</span> of <span>__unresolved__</span> conflicts resolved",
        "commonVersionError": "Common Version doesn't contain valid JSON:",
        "oldVersionError": "Old Version doesn't contain valid JSON:",
        "newVersionError": "New Version doesn't contain valid JSON:"
    },
    "subflow": {
        "editSubflow": "Edit flow template: __name__",
        "edit": "Edit flow template",
        "subflowInstances": "There is __count__ instance of this subflow template",
        "subflowInstances_plural": "There are __count__ instances of this subflow template",
        "editSubflowProperties": "edit properties",
        "input": "inputs:",
        "output": "outputs:",
        "deleteSubflow": "delete subflow",
        "info": "Description",
        "category": "Category",
        "format":"markdown format",
        "errors": {
            "noNodesSelected": "<strong>Cannot create subflow</strong>: no nodes selected",
            "multipleInputsToSelection": "<strong>Cannot create subflow</strong>: multiple inputs to selection"
        }
    },
    "editor": {
        "configEdit": "Edit",
        "configAdd": "Add",
        "configUpdate": "Update",
        "configDelete": "Delete",
        "nodesUse": "__count__ node uses this config",
        "nodesUse_plural": "__count__ nodes use this config",
        "addNewConfig": "Add new __type__ config node",
        "editNode": "Edit __type__ node",
        "editConfig": "Edit __type__ config node",
        "addNewType": "Add new __type__...",
        "nodeProperties": "node properties",
        "portLabels": "node settings",
        "labelInputs": "Inputs",
        "labelOutputs": "Outputs",
        "settingIcon": "Icon",
        "noDefaultLabel": "none",
        "defaultLabel": "use default label",
        "searchIcons": "Search icons",
        "useDefault": "use default",
        "errors": {
            "scopeChange": "Changing the scope will make it unavailable to nodes in other flows that use it"
        }
    },
    "keyboard": {
        "title": "Keyboard Shortcuts",
        "keyboard": "Keyboard",
        "filterActions": "filter actions",
        "shortcut": "shortcut",
        "scope": "scope",
        "unassigned": "Unassigned",
        "global": "global",
        "workspace": "workspace",
        "selectAll": "Select all nodes",
        "selectAllConnected": "Select all connected nodes",
        "addRemoveNode": "Add/remove node from selection",
        "editSelected": "Edit selected node",
        "deleteSelected": "Delete selected nodes or link",
        "importNode": "Import nodes",
        "exportNode": "Export nodes",
        "nudgeNode": "Move selected nodes (1px)",
        "moveNode": "Move selected nodes (20px)",
        "toggleSidebar": "Toggle sidebar",
        "copyNode": "Copy selected nodes",
        "cutNode": "Cut selected nodes",
        "pasteNode": "Paste nodes",
        "undoChange": "Undo the last change performed",
        "searchBox": "Open search box",
        "managePalette": "Manage palette"
    },
    "library": {
        "openLibrary": "Open Library...",
        "saveToLibrary": "Save to Library...",
        "typeLibrary": "__type__ library",
        "unnamedType": "Unnamed __type__",
        "exportToLibrary": "Export nodes to library",
        "dialogSaveOverwrite": "A __libraryType__ called __libraryName__ already exists. Overwrite?",
        "invalidFilename": "Invalid filename",
        "savedNodes": "Saved nodes",
        "savedType": "Saved __type__",
        "saveFailed": "Save failed: __message__",
        "filename": "Filename",
        "folder": "Folder",
        "filenamePlaceholder": "file",
        "fullFilenamePlaceholder": "a/b/file",
        "folderPlaceholder": "a/b",
        "breadcrumb": "Library"
    },
    "palette": {
        "noInfo": "no information available",
        "filter": "filter nodes",
        "search": "search modules",
        "addCategory": "Add new...",
        "label": {
            "subflows": "subflows",
            "input": "input",
            "output": "output",
            "function": "function",
            "social": "social",
            "storage": "storage",
            "analysis": "analysis",
            "advanced": "advanced"
        },
        "event": {
            "nodeAdded": "Node added to palette:",
            "nodeAdded_plural": "Nodes added to palette",
            "nodeRemoved": "Node removed from palette:",
            "nodeRemoved_plural": "Nodes removed from palette:",
            "nodeEnabled": "Node enabled:",
            "nodeEnabled_plural": "Nodes enabled:",
            "nodeDisabled": "Node disabled:",
            "nodeDisabled_plural": "Nodes disabled:",
            "nodeUpgraded": "Node module __module__ upgraded to version __version__"
        },
        "editor": {
            "title": "Manage palette",
            "palette": "Palette",
            "times": {
                "seconds": "seconds ago",
                "minutes": "minutes ago",
                "minutesV": "__count__ minutes ago",
                "hoursV": "__count__ hour ago",
                "hoursV_plural": "__count__ hours ago",
                "daysV": "__count__ day ago",
                "daysV_plural": "__count__ days ago",
                "weeksV": "__count__ week ago",
                "weeksV_plural": "__count__ weeks ago",
                "monthsV": "__count__ month ago",
                "monthsV_plural": "__count__ months ago",
                "yearsV": "__count__ year ago",
                "yearsV_plural": "__count__ years ago",
                "yearMonthsV": "__y__ year, __count__ month ago",
                "yearMonthsV_plural": "__y__ year, __count__ months ago",
                "yearsMonthsV": "__y__ years, __count__ month ago",
                "yearsMonthsV_plural": "__y__ years, __count__ months ago"
            },
            "nodeCount": "__label__ node",
            "nodeCount_plural": "__label__ nodes",
            "moduleCount": "__count__ module available",
            "moduleCount_plural": "__count__ modules available",
            "inuse": "in use",
            "enableall": "enable all",
            "disableall": "disable all",
            "enable": "enable",
            "disable": "disable",
            "remove": "remove",
            "update": "update to __version__",
            "updated": "updated",
            "install": "install",
            "installed": "installed",
            "loading": "Loading catalogues...",
            "tab-nodes": "Nodes",
            "tab-install": "Install",
            "sort": "sort:",
            "sortAZ": "a-z",
            "sortRecent": "recent",
            "more": "+ __count__ more",
            "errors": {
                "catalogLoadFailed": "<p>Failed to load node catalogue.</p><p>Check the browser console for more information</p>",
                "installFailed": "<p>Failed to install: __module__</p><p>__message__</p><p>Check the log for more information</p>",
                "removeFailed": "<p>Failed to remove: __module__</p><p>__message__</p><p>Check the log for more information</p>",
                "updateFailed": "<p>Failed to update: __module__</p><p>__message__</p><p>Check the log for more information</p>",
                "enableFailed": "<p>Failed to enable: __module__</p><p>__message__</p><p>Check the log for more information</p>",
                "disableFailed": "<p>Failed to disable: __module__</p><p>__message__</p><p>Check the log for more information</p>"
            },
            "confirm": {
                "install": {
                    "body":"<p>Installing '__module__'</p><p>Before installing, please read the node's documentation. Some nodes have dependencies that cannot be automatically resolved and can require a restart of Node-RED.</p>",
                    "title": "Install nodes"
                },
                "remove": {
                    "body":"<p>Removing '__module__'</p><p>Removing the node will uninstall it from Node-RED. The node may continue to use resources until Node-RED is restarted.</p>",
                    "title": "Remove nodes"
                },
                "update": {
                    "body":"<p>Updating '__module__'</p><p>Updating the node will require a restart of Node-RED to complete the update. This must be done manually.</p>",
                    "title": "Update nodes"
                },
                "cannotUpdate": {
                    "body":"An update for this node is available, but it is not installed in a location that the palette manager can update.<br/><br/>Please refer to the documentation for how to update this node."
                },
                "button": {
                    "review": "Open node information",
                    "install": "Install",
                    "remove": "Remove",
                    "update": "Update"
                }
            }

        }
    },
    "sidebar": {
        "info": {
            "name": "Node information",
            "tabName": "Name",
            "label": "info",
            "node": "Node",
            "type": "Type",
            "id": "ID",
            "status": "Status",
            "enabled": "Enabled",
            "disabled": "Disabled",
            "subflow": "Subflow",
            "instances": "Instances",
            "properties": "Properties",
            "info": "Information",
            "blank": "blank",
            "null": "null",
            "showMore": "show more",
            "showLess": "show less",
            "flow": "Flow",
            "selection":"Selection",
            "nodes":"__count__ nodes",
            "flowDesc": "Flow Description",
            "subflowDesc": "Subflow Description",
            "nodeHelp": "Node Help",
            "none":"None",
            "arrayItems": "__count__ items",
            "showTips":"You can open the tips from the settings panel"
        },
        "config": {
            "name": "Configuration nodes",
            "label": "config",
            "global": "On all flows",
            "none": "none",
            "subflows": "subflows",
            "flows": "flows",
            "filterUnused":"unused",
            "filterAll":"all",
            "filtered": "__count__ hidden"
        },
        "context": {
            "name":"Context Data",
            "label":"context",
            "none": "none selected",
            "refresh": "refresh to load",
            "empty": "empty",
            "node": "Node",
            "flow": "Flow",
            "global": "Global"
        },
        "palette": {
            "name": "Palette management",
            "label": "palette"
        },
        "project": {
            "label": "project",
            "name": "Project",
            "description": "Description",
            "dependencies": "Dependencies",
            "settings": "Settings",
            "noSummaryAvailable": "No summary available",
            "editDescription": "Edit project description",
            "editDependencies": "Edit project dependencies",
            "editReadme": "Edit README.md",
            "projectSettings": {
                "edit": "edit",
                "none": "None",
                "install": "install",
                "removeFromProject": "remove from project",
                "addToProject": "add to project",
                "files": "Files",
                "flow": "Flow",
                "credentials": "Credentials",
                "invalidEncryptionKey": "Invalid encryption key",
                "encryptionEnabled": "Encryption enabled",
                "encryptionDisabled": "Encryption disabled",
                "setTheEncryptionKey": "Set the encryption key:",
                "resetTheEncryptionKey": "Reset the encryption key:",
                "changeTheEncryptionKey": "Change the encryption key:",
                "currentKey": "Current key",
                "newKey": "New key",
                "credentialsAlert": "This will delete all existing credentials",
                "versionControl": "Version Control",
                "branches": "Branches",
                "noBranches": "No branches",
                "deleteConfirm": "Are you sure you want to delete the local branch '__name__'? This cannot be undone.",
                "unmergedConfirm": "The local branch '__name__' has unmerged changes that will be lost. Are you sure you want to delete it?",
                "deleteUnmergedBranch": "Delete unmerged branch",
                "gitRemotes": "Git remotes",
                "addRemote": "add remote",
                "addRemote2": "Add remote",
                "remoteName": "Remote name",
                "nameRule": "Must contain only A-Z 0-9 _ -",
                "url": "URL",
                "urlRule": "https://, ssh:// or file://",
                "urlRule2": "Do not include the username/password in the URL",
                "noRemotes": "No remotes",
                "deleteRemoteConfrim": "Are you sure you want to delete the remote '__name__'?",
                "deleteRemote": "Delete remote"
            },
            "userSettings": {
                "committerDetail": "Committer Details",
                "committerTip": "Leave blank to use system default",
                "userName": "Username",
                "email": "Email",
                "sshKeys": "SSH Keys",
                "sshKeysTip": "Allows you to create secure connections to remote git repositories.",
                "add": "add key",
                "addSshKey": "Add SSH Key",
                "addSshKeyTip": "Generate a new public/private key pair",
                "name": "Name",
                "nameRule": "Must contain only A-Z 0-9 _ -",
                "passphrase": "Passphrase",
                "passphraseShort": "Passphrase too short",
                "optional": "Optional",
                "cancel": "Cancel",
                "generate": "Generate key",
                "noSshKeys": "No SSH keys",
                "copyPublicKey": "Copy public key to clipboard",
                "delete": "Delete key",
                "gitConfig": "Git config",
                "deleteConfirm": "Are you sure you want to delete the SSH key __name__? This cannot be undone."
            },
            "versionControl": {
                "unstagedChanges": "Unstaged changes",
                "stagedChanges": "Staged changes",
                "resolveConflicts": "Resolve conflicts",
                "head": "HEAD",
                "staged": "Staged",
                "unstaged": "Unstaged",
                "local": "Local",
                "remote": "Remote",
                "revert": "Are you sure you want to revert the changes to '__file__'? This cannot be undone.",
                "revertChanges": "Revert changes",
                "localChanges": "Local Changes",
                "none": "None",
                "conflictResolve": "All conflicts resolved. Commit the changes to complete the merge.",
                "localFiles": "Local files",
                "all": "all",
                "unmergedChanges": "Unmerged changes",
                "abortMerge": "abort merge",
                "commit": "commit",
                "changeToCommit": "Changes to commit",
                "commitPlaceholder": "Enter your commit message",
                "cancelCapital": "Cancel",
                "commitCapital": "Commit",
                "commitHistory": "Commit History",
                "branch": "Branch:",
                "moreCommits": " more commit(s)",
                "changeLocalBranch": "Change local branch",
                "createBranchPlaceholder": "Find or create a branch",
                "upstream": "upstream",
                "localOverwrite": "You have local changes that would be overwritten by changing the branch. You must either commit or undo those changes first.",
                "manageRemoteBranch": "Manage remote branch",
                "unableToAccess": "Unable to access remote repository",
                "retry": "Retry",
                "setUpstreamBranch": "Set as upstream branch",
                "createRemoteBranchPlaceholder": "Find or create a remote branch",
                "trackedUpstreamBranch": "The created branch will be set as the tracked upstream branch.",
                "selectUpstreamBranch": "The branch will be created. Select below to set it as the tracked upstream branch.",
                "pushFailed": "Push failed as the remote has more recent commits. Pull and merge first, then push again.",
                "push": "push",
                "pull": "pull",
                "unablePull": "<p>Unable to pull remote changes; your unstaged local changes would be overwritten.</p><p>Commit your changes and try again.</p>",
                "showUnstagedChanges": "Show unstaged changes",
                "connectionFailed": "Could not connect to remote repository: ",
                "pullUnrelatedHistory": "<p>The remote has an unrelated history of commits.</p><p>Are you sure you want to pull the changes into your local repository?</p>",
                "pullChanges": "Pull changes",
                "history": "history",
                "daysAgo": "__count__ day ago",
                "daysAgo_plural": "__count__ days ago",
                "hoursAgo": "__count__ hour ago",
                "hoursAgo_plural": "__count__ hours ago",
                "minsAgo": "__count__ min ago",
                "minsAgo_plural": "__count__ mins ago",
                "secondsAgo": "Seconds ago",
                "notTracking": "Your local branch is not currently tracking a remote branch.",
                "statusUnmergedChanged": "Your repository has unmerged changes. You need to fix the conflicts and commit the result.",
                "repositoryUpToDate": "Your repository is up to date.",
                "commitsAhead": "Your repository is __count__ commit ahead of the remote. You can push this commit now.",
                "commitsAhead_plural": "Your repository is __count__ commits ahead of the remote. You can push these commits now.",
                "commitsBehind": "Your repository is __count__ commit behind of the remote. You can pull this commit now.",
                "commitsBehind_plural": "Your repository is __count__ commits behind of the remote. You can pull these commits now.",
                "commitsAheadAndBehind1": "Your repository is __count__ commit behind and ",
                "commitsAheadAndBehind1_plural": "Your repository is __count__ commits behind and ",
                "commitsAheadAndBehind2": "__count__ commit ahead of the remote. ",
                "commitsAheadAndBehind2_plural": "__count__ commits ahead of the remote. ",
                "commitsAheadAndBehind3": "You must pull the remote commit down before pushing.",
                "commitsAheadAndBehind3_plural": "You must pull the remote commits down before pushing."
            }
        }
    },
    "typedInput": {
        "type": {
            "str": "string",
            "num": "number",
            "re": "regular expression",
            "bool": "boolean",
            "json": "JSON",
            "bin": "buffer",
            "date": "timestamp",
            "jsonata": "expression",
            "env": "env variable"
        }
    },
    "editableList": {
        "add": "add"
    },
    "search": {
        "empty": "No matches found",
        "addNode": "add a node..."
    },
    "expressionEditor": {
        "functions": "Functions",
        "functionReference": "Function reference",
        "insert": "Insert",
        "title": "JSONata Expression editor",
        "test": "Test",
        "data": "Example message",
        "result": "Result",
        "format": "format expression",
        "compatMode": "Compatibility mode enabled",
        "compatModeDesc": "<h3>JSONata compatibility mode</h3><p> The current expression appears to still reference <code>msg</code> so will be evaluated in compatibility mode. Please update the expression to not use <code>msg</code> as this mode will be removed in the future.</p><p> When JSONata support was first added to Node-RED, it required the expression to reference the <code>msg</code> object. For example <code>msg.payload</code> would be used to access the payload.</p><p> That is no longer necessary as the expression will be evaluated against the message directly. To access the payload, the expression should be just <code>payload</code>.</p>",
        "noMatch": "No matching result",
        "errors": {
            "invalid-expr": "Invalid JSONata expression:\n  __message__",
            "invalid-msg": "Invalid example JSON message:\n  __message__",
            "context-unsupported": "Cannot test context functions\n $flowContext or $globalContext",
            "eval": "Error evaluating expression:\n  __message__"
        }
    },
    "jsEditor": {
        "title": "JavaScript editor"
    },
    "jsonEditor": {
        "title": "JSON editor",
        "format": "format JSON"
    },
    "markdownEditor": {
        "title": "Markdown editor"
    },
    "bufferEditor": {
        "title": "Buffer editor",
        "modeString": "Handle as UTF-8 String",
        "modeArray": "Handle as JSON array",
        "modeDesc":"<h3>Buffer editor</h3><p>The Buffer type is stored as a JSON array of byte values. The editor will attempt to parse the entered value as a JSON array. If it is not valid JSON, it will be treated as a UTF-8 String and converted to an array of the individual character code points.</p><p>For example, a value of <code>Hello World</code> will be converted to the JSON array:<pre>[72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100]</pre></p>"
    },
    "projects": {
        "config-git": "Configure Git client",
        "welcome": {
            "hello": "Hello! We have introduced 'projects' to Node-RED.",
            "desc0": "This is a new way for you to manage your flow files and includes version control of your flows.",
            "desc1": "To get started you can create your first project or clone an existing project from a git repository.",
            "desc2": "If you are not sure, you can skip this for now. You will still be able to create your first project from the 'Projects' menu at any time.",
            "create": "Create Project",
            "clone": "Clone Repository",
            "not-right-now": "Not right now"
        },
        "git-config": {
            "setup": "Setup your version control client",
            "desc0": "Node-RED uses the open source tool Git for version control. It tracks changes to your project files and lets you push them to remote repositories.",
            "desc1": "When you commit a set of changes, Git records who made the changes with a username and email address. The Username can be anything you want - it does not need to be your real name.",
            "desc2": "Your Git client is already configured with the details below.",
            "desc3": "You can change these settings later under the 'Git config' tab of the settings dialog.",
            "username": "Username",
            "email": "Email"
        },
        "project-details": {
            "create": "Create your project",
            "desc0": "A project is maintained as a Git repository. It makes it much easier to share your flows with others and to collaborate on them.",
            "desc1": "You can create multiple projects and quickly switch between them from the editor.",
            "desc2": "To begin, your project needs a name and an optional description.",
            "already-exists": "Project already exists",
            "must-contain": "Must contain only A-Z 0-9 _ -",
            "project-name": "Project name",
            "desc": "Description",
            "opt": "Optional"
        },
        "clone-project": {
            "clone": "Clone a project",
            "desc0": "If you already have a git repository containing a project, you can clone it to get started.",
            "already-exists": "Project already exists",
            "must-contain": "Must contain only A-Z 0-9 _ -",
            "project-name": "Project name",
            "no-info-in-url": "Do not include the username/password in the url",
            "git-url": "Git repository URL",
            "protocols": "https://, ssh:// or file://",
            "auth-failed": "Authentication failed",
            "username": "Username",
            "passwd": "Password",
            "ssh-key": "SSH Key",
            "passphrase": "Passphrase",
            "ssh-key-desc": "Before you can clone a repository over ssh you must add an SSH key to access it.",
            "ssh-key-add": "Add an ssh key",
            "credential-key": "Credentials encryption key",
            "cant-get-ssh-key": "Error! Can't get selected SSH key path.",
            "already-exists2": "already exists",
            "git-error": "git error",
            "connection-failed": "Connection failed",
            "not-git-repo": "Not a git repository",
            "repo-not-found": "Repository not found"
        },
        "default-files": {
            "create": "Create your project files",
            "desc0": "A project contains your flow files, a README file and a package.json file.",
            "desc1": "It can contain any other files you want to maintain in the Git repository.",
            "desc2": "Your existing flow and credential files will be copied into the project.",
            "flow-file": "Flow file",
            "credentials-file": "Credentials file"
        },
        "encryption-config": {
            "setup": "Setup encryption of your credentials file",
            "desc0": "Your flow credentials file can be encrypted to keep its contents secure.",
            "desc1": "If you want to store these credentials in a public Git repository, you must encrypt them by providing a secret key phrase.",
            "desc2": "Your flow credentials file is not currently encrypted.",
            "desc3": "That means its contents, such as passwords and access tokens, can be read by anyone with access to the file.",
            "desc4": "If you want to store these credentials in a public Git repository, you must encrypt them by providing a secret key phrase.",
            "desc5": "Your flow credentials file is currently encrypted using the credentialSecret property from your settings file as the key.",
            "desc6": "Your flow credentials file is currently encrypted using a system-generated key. You should provide a new secret key for this project.",
            "desc7": "The key will be stored separately from your project files. You will need to provide the key to use this project in another instance of Node-RED.",
            "credentials": "Credentials",
            "enable": "Enable encryption",
            "disable": "Disable encryption",
            "disabled": "disabled",
            "copy": "Copy over existing key",
            "use-custom": "Use custom key",
            "desc8": "The credentials file will not be encrypted and its contents easily read",
            "create-project-files": "Create project files",
            "create-project": "Create project",
            "already-exists": "already exists",
            "git-error": "git error",
            "git-auth-error": "git auth error"
        },
        "create-success": {
            "success": "You have successfully created your first project!",
            "desc0": "You can now continue to use Node-RED just as you always have.",
            "desc1": "The 'info' tab in the sidebar shows you what your current active project is. The button next to the name can be used to access the project settings view.",
            "desc2": "The 'history' tab in the sidebar can be used to view files that have changed in your project and to commit them. It shows you a complete history of your commits and allows you to push your changes to a remote repository."
        },
        "create": {
            "projects": "Projects",
            "already-exists": "Project already exists",
            "must-contain": "Must contain only A-Z 0-9 _ -",
            "no-info-in-url": "Do not include the username/password in the url",
            "open": "Open Project",
            "create": "Create Project",
            "clone": "Clone Repository",
            "project-name": "Project name",
            "desc": "Description",
            "opt": "Optional",
            "flow-file": "Flow file",
            "credentials": "Credentials",
            "enable-encryption": "Enable encryption",
            "disable-encryption": "Disable encryption",
            "encryption-key": "Encryption key",
            "desc0": "A phrase to secure your credentials with",
            "desc1": "The credentials file will not be encrypted and its contents easily read",
            "git-url": "Git repository URL",
            "protocols": "https://, ssh:// or file://",
            "auth-failed": "Authentication failed",
            "username": "Username",
            "password": "Password",
            "ssh-key": "SSH Key",
            "passphrase": "Passphrase",
            "desc2": "Before you can clone a repository over ssh you must add an SSH key to access it.",
            "add-ssh-key": "Add an ssh key",
            "credentials-encryption-key": "Credentials encryption key",
            "already-exists-2": "already exists",
            "git-error": "git error",
            "con-failed": "Connection failed",
            "not-git": "Not a git repository",
            "no-resource": "Repository not found",
            "cant-get-ssh-key-path": "Error! Can't get selected SSH key path.",
            "unexpected_error": "unexpected_error"
        },
        "delete": {
            "confirm": "Are you sure you want to delete this project?"
        },
        "create-project-list": {
            "search": "search your projects",
            "current": "current"
        },
        "require-clean": {
            "confirm": "<p>You have undeployed changes that will be lost.</p><p>Do you want to continue?</p>"
        },
        "send-req": {
            "auth-req": "Authentication required for repository",
            "username": "Username",
            "password": "Password",
            "passphrase": "Passphrase",
            "retry": "Retry",
            "update-failed": "Failed to update auth",
            "unhandled": "Unhandled error response"
        },
        "create-branch-list": {
            "invalid": "Invalid branch",
            "create": "Create branch",
            "current": "current"
        },
        "create-default-file-set": {
            "no-active": "Cannot create default file set without an active project",
            "no-empty": "Cannot create default file set on a non-empty project",
            "git-error": "git error"
        },
        "errors" : {
            "no-username-email": "Your Git client is not configured with a username/email.",
            "unexpected": "An unexpected error occurred",
            "code": "code"
        }
    }
}