{
  "appName": {
    "message": "Traducerea textul selectat",
    "description": "The app name"
  },
  "appBetaName": {
    "message": "Traducerea textului selectat (Beta)",
    "description": "The beta app name"
  },
  "appCanaryName": {
    "message": "Traducerea textul selectat (Canary)",
    "description": "The beta app name"
  },
  "appDescription": {
    "message": "Traduceți textul selectat cu Google Translate",
    "description": "The app description"
  },
  "contextmenu_title": {
    "message": "Traduceți selecția în...",
    "description": "Title of the context menu that appears when selecting text in a website and then right clicking it. Inside this parent item there are the target languages."
  },
  "contextmenu_title2": {
    "message": "Traduceți selecția în '$language$'",
    "description": "Title of the context menu that appears after selecting text in a website and right clicking it, when only one target language has been configured.",
    "placeholders": {
      "language": {
        "content": "$1",
        "example": "Language to translate into."
      }
    }
  },
  "contextmenu_edit": {
    "message": "Editare limbi...",
    "description": "Title of the item inside the 'Translate section into...' context menu which is used to go to the options page."
  },
  "options_welcome": {
    "message": "Bine ați venit!",
    "description": "Title of the options page which welcomes users"
  },
  "options_introduction": {
    "message": "Vă rugăm să selectați limbile care doriți să apară în meniul \"traduce\".",
    "description": "Introduction paragraph in the options page preceding the language list."
  },
  "options_languageselectheader": {
    "message": "Limbi:",
    "description": "Header of the selected languages list."
  },
  "options_otheroptionsheader": {
    "message": "Alte opțiuni:",
    "description": "Subheader in the options page before the options to choose where should the translation be shown.."
  },
  "options_tabsoption_1": {
    "message": "Deschide Google Translate într-o filă nouă pentru fiecare traducere.",
    "description": "Option which defines where should the translations be shown (in this case, each translation will be opened in a new tab)."
  },
  "options_tabsoption_2": {
    "message": "Deschide Google Translate într-o filă unică și în loc să se deschidă mai multe file, suprascrie ultima traducere.",
    "description": "Option which defines where should the translations be shown (in this case, each translation will be opened in the same tab used for the previous translation, or will open a new tab if there aren't any translation tabs open)."
  },
  "options_savebutton": {
    "message": "Salvați",
    "description": "Save button in the settings page"
  },
  "options_addlanguage": {
    "message": "Adaugă limbă",
    "description": "Title for the 'Add language' dialog"
  },
  "options_addlanguage_addbutton": {
    "message": "Adaugă",
    "description": "'Add' button in the footer of the languages list which is used to show a dialog with a list of potential languages to add. In the dialog, this message is also shown inside a button which is used to confirm the action."
  },
  "options_language_label": {
    "message": "Limbă:",
    "description": "Label for the language selector in the 'Add language' dialog"
  },
  "options_credits": {
    "message": "Credite",
    "description": "Message for the link to the credits dialog, and also the title for the credits dialog, which shows a list of open source projects used inside the extension and a list of translators/contributors."
  },
  "options_credits_homepage": {
    "message": "pagină principală",
    "description": "Text shown for links to go to each homepage of open source projects in the credits. NOTE: put in in lowercase letters"
  },
  "options_credits_by": {
    "message": "de",
    "description": "Fragment of the author statement in an item of the credits. NOTE: put in in lowercase letters. EXAMPLE: '{{options_credits_by}} Adrià Vilanova Martínez'"
  },
  "options_credits_translations": {
    "message": "Traduceri",
    "description": "Header for the section in the credits dialog which recognizes translators."
  },
  "options_ok": {
    "message": "OK",
    "description": "OK button in informative dialogs, which is used to close them (no action is done when pressing these buttons)"
  },
  "options_cancel": {
    "message": "Anulare",
    "description": "Cancel button in the dialogs, to reject an action."
  },
  "notification_install_title": {
    "message": "Vă mulțumim pentru că ați instalat 'Translate Selected Text'"
  },
  "notification_install_message": {
    "message": "Apăsați pe această notificare pentru a o configura."
  }
}
