diff --git a/.gitignore b/.gitignore index 707bc016..69c4b762 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,5 @@ .DS_Storecss/*.map node_modules dist -extension.zip \ No newline at end of file +extension.zip +package-lock.json \ No newline at end of file diff --git a/.jshintrc b/.jshintrc index 27b74555..c43e7e9f 100644 --- a/.jshintrc +++ b/.jshintrc @@ -1,9 +1,11 @@ { + "esversion" : 8, "maxerr" : 50, "jquery" : true, // jQuery "globals" : { "angular": true, "PassmanImporter": true, + "PassmanExporter": true, "C_Promise": true, "window": true, "PAPI": true, diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index f25f68d1..00000000 --- a/.travis.yml +++ /dev/null @@ -1,11 +0,0 @@ -language: node_js -before_install: - - export DISPLAY=:99.0 - - sh -e /etc/init.d/xvfb start -before_script: - - npm install -script: - - grunt test - -addons: - firefox: "latest" \ No newline at end of file diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index bd1f9e0a..00000000 --- a/Dockerfile +++ /dev/null @@ -1,27 +0,0 @@ -FROM node:lts-stretch-slim - -# Install Ruby & Bourbon -# Only required once to init project -# RUN apk update && apk upgrade && apk --update add \ -# ruby ruby-dev ruby-ffi ruby-irb ruby-rake ruby-io-console ruby-bigdecimal ruby-json ruby-bundler \ -# libstdc++ tzdata bash ca-certificates \ -# && echo 'gem: --no-document' > /etc/gemrc -# RUN gem install bourbon - -RUN apt-get update && \ - apt-get install -y chromium firefox-esr && \ - rm -rf /var/lib/apt/ - -# Install node packages -RUN npm install -g grunt-cli - -# Environment vars -ENV DOCKER="True" - -# Copy files -RUN mkdir -p /passman -WORKDIR /passman -COPY . /passman - -# Install project dependencies -RUN npm install diff --git a/Gruntfile.js b/Gruntfile.js index 2bb4b227..7d892dc6 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -1,5 +1,7 @@ module.exports = function (grunt) { var jsResources = []; + const sass = require('node-sass'); + require('load-grunt-tasks')(grunt); // Project configuration. grunt.initConfig({ @@ -13,12 +15,9 @@ module.exports = function (grunt) { eqeqeq: true, eqnull: true, browser: true, + jshintrc: true, globals: { - "angular": true, - "PassmanImporter": true, - "PassmanExporter": true, "OC": true, - "window": true, "console": true, "CRYPTO": true, "C_Promise": true, @@ -34,6 +33,7 @@ module.exports = function (grunt) { }, sass: { options: { + implementation: sass, sourceMap: true }, dist: { @@ -86,25 +86,21 @@ module.exports = function (grunt) { '!.scrutinizer.yml', '!.travis.yml', '!Gruntfile.js', - '!karma.conf.js', '!launch_phpunit.sh', '!Makefile', '!package.json', + '!package-lock.json', '!phpunit.*', '!Dockerfile', '!*.md', '!*.zip', '!swagger.yaml', - '!.tx' + '!.tx', + 'node_modules/@protontech/**/worker/*.js', + 'node_modules/@protontech/**/worker/*.wasm' ], dest: 'dist/' - } - }, - karma: { - unit: { - configFile: './karma.conf.js', - background: false - } + } }, compress: { dist: { @@ -119,26 +115,18 @@ module.exports = function (grunt) { clean: { dist: ['dist'] }, - execute: { + exec: { fixLocale: { - src: ['fixLocale.js'] + cmd: 'node fixLocale.js' + // stdout: false, + // stderr: false } } }); - grunt.loadNpmTasks('grunt-mkdir'); - grunt.loadNpmTasks('grunt-contrib-compress'); - grunt.loadNpmTasks('grunt-contrib-copy'); - grunt.loadNpmTasks('grunt-contrib-jshint'); - grunt.loadNpmTasks('grunt-contrib-clean'); - grunt.loadNpmTasks('grunt-execute'); - grunt.loadNpmTasks('grunt-karma'); - grunt.loadNpmTasks('grunt-sass'); - grunt.loadNpmTasks('grunt-contrib-watch'); - // Default task(s). - - grunt.registerTask('test', ['karma', 'jshint']); - grunt.registerTask('build', ['execute:fixLocale', 'sass', 'jshint', 'clean:dist', 'mkdir:dist', 'copy:dist', 'compress:dist']); + grunt.registerTask('default', ['jshint']); + grunt.registerTask('test', ['jshint']); + grunt.registerTask('build', ['exec', 'sass', 'jshint', 'clean:dist', 'mkdir:dist', 'copy:dist', 'compress:dist']); grunt.registerTask('dist', ['']); }; diff --git a/_locales/af/messages.json b/_locales/af/messages.json index fa03b940..bc53989b 100644 --- a/_locales/af/messages.json +++ b/_locales/af/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - Die wagwoordbestuurder vir NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Ongeldige respons van bediener: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Please enter your Nextcloud / ownCloud credentials", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ found for this page", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Vergrendeld", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "We've found $AMOUNT$ credentials for this site", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Save to $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Saving to $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credentials in the database", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman is logging you in as $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Vault", @@ -534,9 +588,5 @@ "text": { "message": "text", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/ar/messages.json b/_locales/ar/messages.json index 75952a74..7b6f388f 100644 --- a/_locales/ar/messages.json +++ b/_locales/ar/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "تطبيق إدارة كلمات المرور Passman", + "description": "Extension name" + }, "extDescription": { "message": "تطبيق Passman - مدير كلمات المرور لخادم نكست كلود/ أون كلود ", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "استجابة غير صالحة من الخادم: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "الرجاء إدخال بيانات اعتماد المرور لخادم نكست كلود/ أون كلود الخاصة بك", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "تطبيق إدارة كلمات المرور باس مان \"Passman\"- تم العثور على $CREDENTIAL_AMOUNT$ $PLURAL$لهذه الصفحة", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "تطبيق إدارة كلمات المرور Passman - مغلق", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "لقد وجدنا $AMOUNT$بيانات اعتماد لهذا الموقع", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "حفظ في $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "حفظ في $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "بيانات اعتماد $AMOUNT$ في قاعدة البيانات", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "يقوم تطبيق إدارة كلمات المرور Passman بتسجيل دخولك كـ $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "خزينة", @@ -534,9 +588,5 @@ "text": { "message": "نص", "description": "To describe a textual input field" - }, - "extName": { - "message": "تطبيق إدارة كلمات المرور Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/bg/messages.json b/_locales/bg/messages.json index 50b7c839..95eb411b 100644 --- a/_locales/bg/messages.json +++ b/_locales/bg/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - Диспечерът на пароли за NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Невалиден отговор от сървъра: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Въведете потребител и парола за Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ регистраци за страницата", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Заключено", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Открити са $AMOUNT$ регистрации за страницата", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Запазване в $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Запазване в $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "Налични са $AMOUNT$ регистрации", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman ви вписва като $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Хранилище", @@ -534,9 +588,5 @@ "text": { "message": "текст", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/ca/messages.json b/_locales/ca/messages.json index 21f17a0e..b1869cf8 100644 --- a/_locales/ca/messages.json +++ b/_locales/ca/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El gestor de contrasenyes per a NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Resposta no vàlida del servidor: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Introduïu les vostres credencials de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ trobats per a aquesta pàgina", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Blocat", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Hem trobat $AMOUNT$ credencials per a aquest lloc", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Desa a $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "S'està desant a $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credencials a la base de dades", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman us està iniciant la sessió com a $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Cripta", @@ -534,9 +588,5 @@ "text": { "message": "text", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/cs/messages.json b/_locales/cs/messages.json index 47bb9f47..720c9632 100644 --- a/_locales/cs/messages.json +++ b/_locales/cs/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman – správce hesel pro Nextcloud/ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Neplatná odpověď serveru: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Zadejte své přístupové údaje k Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passsman – pro tuto stránku bylo nalezeno $CREDENTIAL_AMOUNT$ $PLURAL$ ", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman ‒ uzamčeno", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Pro tuto stránku bylo nalezeno $AMOUNT$ přihlašovacích údajů", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Uložit do $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Ukládá se do $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ přihlašovacích údajů v databázi", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman vás přihlašuje jako $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Trezor", @@ -534,9 +588,5 @@ "text": { "message": "text", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/da/messages.json b/_locales/da/messages.json index 6e252508..affafc46 100644 --- a/_locales/da/messages.json +++ b/_locales/da/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - The password manager for NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Invalid response from server: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Please enter your Nextcloud / ownCloud credentials", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ fundet for denne side", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Låst", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "We've found $AMOUNT$ credentials for this site", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Save to $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Saving to $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credentials in the database", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman is logging you in as $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Vault", @@ -534,9 +588,5 @@ "text": { "message": "tekst", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/de/messages.json b/_locales/de/messages.json index e5eedc93..a2b9c75f 100644 --- a/_locales/de/messages.json +++ b/_locales/de/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - Der Passwortmanager für NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Ungültige Antwort des Servers: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Bitte Nextcloud / ownCloud-Zugangsdaten eingeben", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ Zugangsdaten für diese Seite gefunden", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Gesperrt", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Wir haben $AMOUNT$ Zugangsdaten für diese Seite gefunde", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Speichern in $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Speichere in $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ Zugangsdaten in der Datenbank", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman protokolliert dich als $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Tresor", @@ -534,9 +588,5 @@ "text": { "message": "Text", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/de_DE/messages.json b/_locales/de_DE/messages.json index 1035044e..ac270fd1 100644 --- a/_locales/de_DE/messages.json +++ b/_locales/de_DE/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - Der Passwort-Manager für NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Ungültige Antwort des Servers: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Bitte geben Sie Ihre Anmeldeinformationen für Nextcloud / ownCloud ein", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ für diese Seite gefunden", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Gesperrt", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Es wurden $AMOUNT$ Anmeldeinformationen für diese Seite gefunden", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Speichern in $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Speichere in $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ Anmeldeinformationen in der Datenbank", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman meldet Sie an als $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Tresor", @@ -534,9 +588,5 @@ "text": { "message": "Text", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/el/messages.json b/_locales/el/messages.json index 40c1bde8..9cc11a2f 100644 --- a/_locales/el/messages.json +++ b/_locales/el/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - Ο διαχειριστής συνθηματικών για το NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Μη έγκυρη απάντηση διακομιστή: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Παρακαλούμε εισάγετε τα διαπιστευτήριά σας για το Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ βρέθηκαν για αυτή τη σελίδα", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Κλειδώθηκε", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Βρήκαμε $AMOUNT$ διαπιστευτήρια για αυτόν τον ιστότοπο", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Αποθήκευση στο $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Αποθήκευση στο $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ διαπιστευτήρια στην βάση δεδομένων", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Το Passman σας συνδέει ώς $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Κρύπτη", @@ -534,9 +588,5 @@ "text": { "message": "κείμενο", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/en_GB/messages.json b/_locales/en_GB/messages.json index d65743ea..1c574d7b 100644 --- a/_locales/en_GB/messages.json +++ b/_locales/en_GB/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - The password manager for NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Invalid response from server: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Please enter your Nextcloud / ownCloud credentials", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ found for this page", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Locked", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "We've found $AMOUNT$ credentials for this site", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Save to $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Saving to $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credentials in the database", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman is logging you in as $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Vault", @@ -534,9 +588,5 @@ "text": { "message": "text", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es/messages.json b/_locales/es/messages.json index 15dc82fd..85a36c1c 100644 --- a/_locales/es/messages.json +++ b/_locales/es/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El gestor de contraseñas para Nextcloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta no válida del servidor: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor, introduce tus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontradas para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueada", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Hemos encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Guardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Guardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman te está iniciando sesión como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Caja fuerte", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es_419/messages.json b/_locales/es_419/messages.json index 8f8a1b2b..5cd1ee21 100644 --- a/_locales/es_419/messages.json +++ b/_locales/es_419/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El adminsitrador de contraseñas para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta inválida del servidor : [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor ingresa tus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Se han encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Guardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Guardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman te está registrando como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Bóveda", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es_AR/messages.json b/_locales/es_AR/messages.json index f78e039d..d64c2227 100644 --- a/_locales/es_AR/messages.json +++ b/_locales/es_AR/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El adminsitrador de contraseñas para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta del servidor inválida :[$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Favor de ingresas sus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Se han encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Save to $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Saving to $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman is logging you in as $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Vault", @@ -534,9 +588,5 @@ "text": { "message": "text", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es_CL/messages.json b/_locales/es_CL/messages.json index 8f8a1b2b..5cd1ee21 100644 --- a/_locales/es_CL/messages.json +++ b/_locales/es_CL/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El adminsitrador de contraseñas para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta inválida del servidor : [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor ingresa tus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Se han encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Guardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Guardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman te está registrando como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Bóveda", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es_CO/messages.json b/_locales/es_CO/messages.json index 8f8a1b2b..5cd1ee21 100644 --- a/_locales/es_CO/messages.json +++ b/_locales/es_CO/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El adminsitrador de contraseñas para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta inválida del servidor : [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor ingresa tus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Se han encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Guardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Guardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman te está registrando como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Bóveda", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es_CR/messages.json b/_locales/es_CR/messages.json index 8f8a1b2b..5cd1ee21 100644 --- a/_locales/es_CR/messages.json +++ b/_locales/es_CR/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El adminsitrador de contraseñas para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta inválida del servidor : [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor ingresa tus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Se han encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Guardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Guardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman te está registrando como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Bóveda", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es_DO/messages.json b/_locales/es_DO/messages.json index 8f8a1b2b..5cd1ee21 100644 --- a/_locales/es_DO/messages.json +++ b/_locales/es_DO/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El adminsitrador de contraseñas para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta inválida del servidor : [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor ingresa tus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Se han encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Guardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Guardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman te está registrando como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Bóveda", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es_EC/messages.json b/_locales/es_EC/messages.json index 8f8a1b2b..5cd1ee21 100644 --- a/_locales/es_EC/messages.json +++ b/_locales/es_EC/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El adminsitrador de contraseñas para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta inválida del servidor : [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor ingresa tus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Se han encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Guardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Guardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman te está registrando como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Bóveda", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es_GT/messages.json b/_locales/es_GT/messages.json index 8f8a1b2b..5cd1ee21 100644 --- a/_locales/es_GT/messages.json +++ b/_locales/es_GT/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El adminsitrador de contraseñas para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta inválida del servidor : [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor ingresa tus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Se han encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Guardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Guardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman te está registrando como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Bóveda", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es_HN/messages.json b/_locales/es_HN/messages.json index 4b7aedff..a47c8b18 100644 --- a/_locales/es_HN/messages.json +++ b/_locales/es_HN/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El adminsitrador de contraseñas para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta inválida del servidor : [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor ingresa tus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Se han encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Guardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Guardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman te está registrando como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Bóveda", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es_MX/messages.json b/_locales/es_MX/messages.json index 8f8a1b2b..5cd1ee21 100644 --- a/_locales/es_MX/messages.json +++ b/_locales/es_MX/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El adminsitrador de contraseñas para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta inválida del servidor : [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor ingresa tus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Se han encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Guardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Guardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman te está registrando como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Bóveda", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es_NI/messages.json b/_locales/es_NI/messages.json index 4b7aedff..a47c8b18 100644 --- a/_locales/es_NI/messages.json +++ b/_locales/es_NI/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El adminsitrador de contraseñas para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta inválida del servidor : [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor ingresa tus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Se han encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Guardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Guardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman te está registrando como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Bóveda", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es_PA/messages.json b/_locales/es_PA/messages.json index 4b7aedff..a47c8b18 100644 --- a/_locales/es_PA/messages.json +++ b/_locales/es_PA/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El adminsitrador de contraseñas para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta inválida del servidor : [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor ingresa tus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Se han encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Guardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Guardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman te está registrando como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Bóveda", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es_PE/messages.json b/_locales/es_PE/messages.json index 4b7aedff..a47c8b18 100644 --- a/_locales/es_PE/messages.json +++ b/_locales/es_PE/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El adminsitrador de contraseñas para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta inválida del servidor : [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor ingresa tus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Se han encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Guardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Guardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman te está registrando como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Bóveda", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es_PR/messages.json b/_locales/es_PR/messages.json index 4b7aedff..a47c8b18 100644 --- a/_locales/es_PR/messages.json +++ b/_locales/es_PR/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El adminsitrador de contraseñas para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta inválida del servidor : [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor ingresa tus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Se han encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Guardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Guardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman te está registrando como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Bóveda", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es_PY/messages.json b/_locales/es_PY/messages.json index 4b7aedff..a47c8b18 100644 --- a/_locales/es_PY/messages.json +++ b/_locales/es_PY/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El adminsitrador de contraseñas para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta inválida del servidor : [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor ingresa tus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Se han encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Guardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Guardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman te está registrando como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Bóveda", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es_SV/messages.json b/_locales/es_SV/messages.json index 8f8a1b2b..5cd1ee21 100644 --- a/_locales/es_SV/messages.json +++ b/_locales/es_SV/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El adminsitrador de contraseñas para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta inválida del servidor : [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor ingresa tus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Se han encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Guardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Guardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman te está registrando como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Bóveda", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/es_UY/messages.json b/_locales/es_UY/messages.json index 4b7aedff..a47c8b18 100644 --- a/_locales/es_UY/messages.json +++ b/_locales/es_UY/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - El adminsitrador de contraseñas para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Respuesta inválida del servidor : [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor ingresa tus credenciales de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Se han encontrado $AMOUNT$ credenciales para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Guardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Guardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciales en la base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman te está registrando como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Bóveda", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/eu/messages.json b/_locales/eu/messages.json index ac96f300..f77a230f 100644 --- a/_locales/eu/messages.json +++ b/_locales/eu/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - NextCloud / ownCloud-entzako pasahitz-kudeatzailea", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Zerbitzariaren erantzun baliogabea: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Sartu zure Nextcloud /ownCloud kredentzialak", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ aurkitu dira orri honentzat", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Blokeatuta", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": " $AMOUNT$ kredentzial aurkitu ditugu gune honentzat", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Gorde $VAULT_NAME$ gordailura", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": " $VAULT_NAME$ gordailura gordetzen", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ kredentzial datu-basean", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman-ek zu $USERNAME$gisa hasi du saioa", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Gordailua", @@ -534,9 +588,5 @@ "text": { "message": "testua", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/fa/messages.json b/_locales/fa/messages.json index 24ffc30d..fe6476d6 100644 --- a/_locales/fa/messages.json +++ b/_locales/fa/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "رهگذر", + "description": "Extension name" + }, "extDescription": { "message": "Passman - مدیر رمز عبور برای نکست کلود / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "پاسخ نامعتبر از سرور:[$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "لطفاً اعتبارنامه نکست کلود / ownCloud خود را وارد کنید", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ برای این صفحه یافت شد", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - قفل شده است", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "ما پیدا کرده ایم $AMOUNT$ اعتبار این سایت", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "ذخیره در $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "صرفه جویی در $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ اعتبارنامه در پایگاه داده", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman شما را به عنوان ورود به سیستم وارد می کند $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "طاق", @@ -534,9 +588,5 @@ "text": { "message": "متن", "description": "To describe a textual input field" - }, - "extName": { - "message": "رهگذر", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/fi/messages.json b/_locales/fi/messages.json index 5bd6c239..05f6845a 100644 --- a/_locales/fi/messages.json +++ b/_locales/fi/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - Salasanojen hallinta NextCloudille / ownCloudille", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Virheellinen vastaus palvelimelta: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Anna Nextcloudin / ownCloudin tilitietosi", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ found for this page", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Lukittu", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Tälle sivustolle löytyi $AMOUNT$ kirjautumistieto(a)", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Tallenna holviin $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Tallennetaan holviin $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ kirjautumistietoa tietokannassa", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman kirjaa sinut sisään käyttäjänä $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Holvi", @@ -534,9 +588,5 @@ "text": { "message": "text", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/fr/messages.json b/_locales/fr/messages.json index d22d8732..1c98c142 100644 --- a/_locales/fr/messages.json +++ b/_locales/fr/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - Le gestionnaire de mot de passe pour NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Réponse du serveur invalide : [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Veuillez saisir votre information d'identification Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ trouvé pour cette page", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Verrouillé", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Il y a $AMOUNT$ informations d'identification pour ce site", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Sauvegarder dans $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Sauvegarder dans $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ informations d'identification dans la base", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman vous connecte en tant que $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Coffre-fort", @@ -534,9 +588,5 @@ "text": { "message": "texte", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/gl/messages.json b/_locales/gl/messages.json index caa56366..11eaf89b 100644 --- a/_locales/gl/messages.json +++ b/_locales/gl/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - O xestor de contrasinais para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Resposta incorrecta do servidor: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Introduza os seus credenciais de Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ atopado para esta páxina", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Atopáronse $AMOUNT$ credenciais para este sitio", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Gardar en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Gardando en $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciais nla base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman estalle a acceder como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Bóveda", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/he/messages.json b/_locales/he/messages.json index c987cf0b..4ccb321e 100644 --- a/_locales/he/messages.json +++ b/_locales/he/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - מנהל הססמאות עבור NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "תגובה שגויה מהשרת: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "נא להקליד את פרטי הגישה שלך ל־Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ נמצאו לעמוד זה", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - נעול", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "מצאנו $AMOUNT$ פרטי גישה לאתר הזה", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "שמירה אל $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "נשמר אל $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ פרטי גישה במסד הנתונים", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman מכניס אותך בתור $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "כספת", @@ -534,9 +588,5 @@ "text": { "message": "טקסט", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/hr/messages.json b/_locales/hr/messages.json index a1832857..90c44316 100644 --- a/_locales/hr/messages.json +++ b/_locales/hr/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman – upravitelj zaporkama za NextCloud/ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Nevažeći odgovor poslužitelja: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Unesite svoje vjerodajnice za Nextcloud/ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Za ovu je stranicu pronađen Passman – $CREDENTIAL_AMOUNT$ $PLURAL$", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman – zaključano", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Pronašli smo $AMOUNT$ vjerodajnica za ovo web-mjesto", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Spremi u $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Spremanje u $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ vjerodajnica u bazi podataka", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman vas prijavljuje kao $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Trezor", @@ -534,9 +588,5 @@ "text": { "message": "tekst", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/hu/messages.json b/_locales/hu/messages.json index 091667a2..bc9bd3f2 100644 --- a/_locales/hu/messages.json +++ b/_locales/hu/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman – Jelszókezelő a Nextcloudhoz/ownCloudhoz", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Érvénytelen kiszolgálóválasz: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Adja meg a Nextcloud/ownCloud hitelesítő adatok", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman – $CREDENTIAL_AMOUNT$ $PLURAL$ találva az oldalhoz", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman – zárolva", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Összesen $AMOUNT$ hitelesítő adat található ehhez az oldalhoz", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Mentés ide: $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Mentés ide: $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ hitelesítő adat az adatbázisban", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "A Passman $USERNAME$ néven jelentkezteti be.", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Széf", @@ -534,9 +588,5 @@ "text": { "message": "szöveg", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/is/messages.json b/_locales/is/messages.json index 4812be3e..a4ce1d1b 100644 --- a/_locales/is/messages.json +++ b/_locales/is/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - Lykilorðastýring fyrir NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Ógilt svar frá þjóni: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Settu inn auðkenni þín á Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - fann $CREDENTIAL_AMOUNT$ $PLURAL$ fyrir þessa síðu", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Læst", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Við fundum $AMOUNT$ auðkenni fyrir þetta vefsvæði", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Vista í $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Vista í $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ auðkenni í gagnagrunninum\n ", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman er að skrá þig inn sem $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Lykilorðageymsla", @@ -534,9 +588,5 @@ "text": { "message": "texti", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/it/messages.json b/_locales/it/messages.json index e33d5a51..c4dad63c 100644 --- a/_locales/it/messages.json +++ b/_locales/it/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - Il gestore delle password per NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Risposta non valida dal server: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Digita le tue credenziali di Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ trovate per questa pagina", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloccato", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Abbiamo trovato $AMOUNT$ credenziali per questo sito", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Salva in $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Salvataggio in $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenziali nel database", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman sta eseguendo il tuo accesso come $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Cassaforte", @@ -534,9 +588,5 @@ "text": { "message": "testo", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/ja/messages.json b/_locales/ja/messages.json index b12631b7..631eff6a 100644 --- a/_locales/ja/messages.json +++ b/_locales/ja/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - NextCloud / ownCloudのパスワードマネージャー", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "サーバーからの無効な応答:[$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Nextcloud / Owncloud 資格情報を入力してください", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - このページで $CREDENTIAL_AMOUNT$個の$PLURAL$が見つかりました", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman -ロックされました", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "このサイトに$AMOUNT$個の認証情報が見つかりました", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "$VAULT_NAME$ に保存", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "$VAULT_NAME$ に保存", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "データベース内に$AMOUNT$個の認証情報", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passmanに$USERNAME$としてログインしています", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "保管庫", @@ -534,9 +588,5 @@ "text": { "message": "テキスト", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/ka_GE/messages.json b/_locales/ka_GE/messages.json index 84473571..c9fd0101 100644 --- a/_locales/ka_GE/messages.json +++ b/_locales/ka_GE/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - პაროლების მენეჯერი Nextcloud / ownCloud-ისთვის", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "სერვიდან მიღებულია არასწორი პასუხი [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "შეიყვანეთ თქვენი Nextcloud / ownCloud უფლებამოსილებები", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - ამ გვერდისთვის ნაპოვნია $CREDENTIAL_AMOUNT$ $PLURAL$", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - ჩაკეტილია", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "ამ საიტზე ვიპოვეთ $AMOUNT$ უფლებამოსილება", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "შევინახოთ $VAULT_NAME$-ში", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "ვინახავთ $VAULT_NAME$-ში", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "ბაზაშია $AMOUNT$ უფლებამოსილება", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman-ს შეყავხართ როგორც $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "სეიფი", @@ -534,9 +588,5 @@ "text": { "message": "ტექსტი", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/ko/messages.json b/_locales/ko/messages.json index 8baa1fe9..578d7d96 100644 --- a/_locales/ko/messages.json +++ b/_locales/ko/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - NextCloud / ownCloud 암호 관리자", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "서버에서 잘못된 응답을 반환함: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Nextcloud / ownCloud 인증 정보를 입력하십시오", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - 이 페이지에서 $CREDENTIAL_AMOUNT$ $PLURAL$개 찾음", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - 잠김", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "이 사이트의 인증 정보 $AMOUNT$개를 찾았습니다", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "$VAULT_NAME$에 저장", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "$VAULT_NAME$에 저장", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "데이터베이스에 인증 정보 $AMOUNT$개 있음", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman에서 $USERNAME$(으)로 로그인함", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "비밀 저장소", @@ -534,9 +588,5 @@ "text": { "message": "텍스트", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/lt_LT/messages.json b/_locales/lt_LT/messages.json index f60db5a5..0c1af4bd 100644 --- a/_locales/lt_LT/messages.json +++ b/_locales/lt_LT/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - The password manager for NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Neteisingas atsakymas iš serverio: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Please enter your Nextcloud / ownCloud credentials", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ found for this page", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Slaptažodžių tvarkyklė užrakinta", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "We've found $AMOUNT$ credentials for this site", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Įrašyti į $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Įrašoma į $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credentials in the database", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman is logging you in as $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Slėptuvė", @@ -534,9 +588,5 @@ "text": { "message": "text", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/nb/messages.json b/_locales/nb/messages.json index 9b37703c..248c12b4 100644 --- a/_locales/nb/messages.json +++ b/_locales/nb/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - Passordbehandler for NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Ugyldig svar fra server: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Skriv inn dine Nextcloud / ownCloud -påloggingsdetaljer", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ funnet for denne siden", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Låst", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Vi har funnet $AMOUNT$ påloggingsdetaljer for denne siden", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Lagre til $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Lagrer til $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ påloggingsdetaljer i databasen", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman logger deg inn som $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Hvelv", @@ -534,9 +588,5 @@ "text": { "message": "tekst", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/nl/messages.json b/_locales/nl/messages.json index 5fb8521b..43e65fec 100644 --- a/_locales/nl/messages.json +++ b/_locales/nl/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - de wachtwoordbeheerder voor NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Foute reactie van de server: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Voer je Nextcloud / ownCloud inloggegevens in", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman -$CREDENTIAL_AMOUNT$ $PLURAL$ gevonden voor deze pagina", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Vergrendeld", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "We vonden $AMOUNT$ inloggegevens voor deze site", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Opslaan in $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Opgeslagen in $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ inloggegevens in de database", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman logt je in als $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Kluis", @@ -534,9 +588,5 @@ "text": { "message": "tekst", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/pl/messages.json b/_locales/pl/messages.json index c9837c57..62f10d86 100644 --- a/_locales/pl/messages.json +++ b/_locales/pl/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - Menedżer haseł dla Nextcloud/ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Nieprawidłowa odpowiedź serwera: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Wprowadź dane poświadczające Nextcloud/ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - znaleziono $CREDENTIAL_AMOUNT$ $PLURAL$ dla tej strony", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Zablokowany", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Znaleziono $AMOUNT$ poświadczeń dla tej strony", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Zapisz do $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Zapisywanie do $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ poświadczeń w bazie danych", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman loguje Ciebie jako $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Sejf", @@ -534,9 +588,5 @@ "text": { "message": "tekst", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/pt_BR/messages.json b/_locales/pt_BR/messages.json index 61a31ba2..63bb2014 100644 --- a/_locales/pt_BR/messages.json +++ b/_locales/pt_BR/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - O gerenciador de senha para NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Resposta inválida do servidor: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Por favor entre suas credenciais Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ encontrado para esta página", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Bloqueado", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Foram encontradas $AMOUNT$ credenciais para este site", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Salvo em $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Salvando em $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credenciais no banco de dados", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman está logando você como $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Cofre", @@ -534,9 +588,5 @@ "text": { "message": "texto", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/ro/messages.json b/_locales/ro/messages.json index 9eee027a..e1436997 100644 --- a/_locales/ro/messages.json +++ b/_locales/ro/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - Manager de parole pentru NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Raspuns invalid de la server:[$STATUS_CODE$]$STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Please enter your Nextcloud / ownCloud credentials", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ gasit pentru aceasta pagina", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Incuiat", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Am gasit $AMOUNT$ date de autentifiare pentru aceasta pagina", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Save to $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Saving to $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ date de autentificare in baza de date", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman is logging you in as $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Vault", @@ -534,9 +588,5 @@ "text": { "message": "text", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/ru/messages.json b/_locales/ru/messages.json index 41fcc521..f89dd14f 100644 --- a/_locales/ru/messages.json +++ b/_locales/ru/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman — Управление паролями для NextCloud и ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Неверный ответ сервера: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Введите свои данные для входа в Nextcloud или ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ найдено для этой страницы", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman — Заблокировано", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Найдено $AMOUNT$ записей для этого сайта", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Сохранить в $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Сохранение в $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ записей в базе данных", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Менеджер паролей авторизует Вас как $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Хранилице", @@ -534,9 +588,5 @@ "text": { "message": "текст", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/sc/messages.json b/_locales/sc/messages.json index 08bb25d7..66c2a185 100644 --- a/_locales/sc/messages.json +++ b/_locales/sc/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - S'organizadore de craes pro Nextcloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Risposta no bàlida dae su serbidore: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Inserta•nche is credentziales de Nextcloud / ownCloud tuas", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ agatados pro custa pàgina", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Blocadu", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Amus agatadu $AMOUNT$ credentziales pro custu situ", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Sarva in $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Sarvende in $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$credentziales in sa base de datos", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman est esecutende s'atzessu tuo comente $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Cassaforte", @@ -534,9 +588,5 @@ "text": { "message": "testu", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/sk/messages.json b/_locales/sk/messages.json index 0fb4aca3..57e35c5a 100644 --- a/_locales/sk/messages.json +++ b/_locales/sk/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - manažér hesiel pre NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Neplatná odpoveď zo servra\" [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Zadajte prosím prihlasovacie údaje pre svoj Nextcloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ nájdené pre túto stránku", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - zamknutý", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Pre túto stránku boli nájdené $AMOUNT$ prístupové údaje", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Uložiť do $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Ukladá sa do $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ prihlasovacích údajov v databáze", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman vás prihlasuje ako $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Trezor", @@ -534,9 +588,5 @@ "text": { "message": "text", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/sl/messages.json b/_locales/sl/messages.json index ce4524d0..9e008c89 100644 --- a/_locales/sl/messages.json +++ b/_locales/sl/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman – Upravljalnik gesel za okolja NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Neveljaven odziv strežnika: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Vpis poveril strežnika Nextcloud / ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman – najdenih je $CREDENTIAL_AMOUNT$ $PLURAL$ za to stran.", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman – Zakljenjeno", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Za to stran so najdena poverila: $AMOUNT$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Shrani v $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Poteka shranjevanje v trezor $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "V zbirki je $AMOUNT$ poveril.", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Program Passman vas beleži kot $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Trezor", @@ -534,9 +588,5 @@ "text": { "message": "besedilo", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/sq/messages.json b/_locales/sq/messages.json index 64ec3885..71a56055 100644 --- a/_locales/sq/messages.json +++ b/_locales/sq/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - Manaxheri i fjalëkalimeve për NextCloud/ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Përgjigja e pavlefshme nga serveri: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Ju lutem futni kredencialet tuaja të Nextcloud/ownCloud", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ të gjetur në këtë faqe", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - I kyçur", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Kemi gjetur $AMOUNT$ kredenciale për këtë faqe", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Ruaje tek $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Dua u ruajtur tek $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$kredenciale në databazë", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman po ju lidh brenda si $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Kasafortë", @@ -534,9 +588,5 @@ "text": { "message": "text", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/sr/messages.json b/_locales/sr/messages.json index a53776c8..b850890d 100644 --- a/_locales/sr/messages.json +++ b/_locales/sr/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Менаџер Лозинки", + "description": "Extension name" + }, "extDescription": { "message": "Менаџер Лозинки - управљање лозинкама за Некстклауд / Оунклауд", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Неисправан одговор са сервера: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Унесите Ваше Некстлауд / Оунклауд акредитиве", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Менаџер Лозинки - $CREDENTIAL_AMOUNT$ $PLURAL$ нађено за ову страну", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Менаџер Лозинки - откључан", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Нашли смо $AMOUNT$ акредитива за овај сајт", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Сними у сеф $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Снимам у $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ акредитива у бази", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Менаџер Лозинки ће Вас пријавити као $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Сеф", @@ -534,9 +588,5 @@ "text": { "message": "текст", "description": "To describe a textual input field" - }, - "extName": { - "message": "Менаџер Лозинки", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/sv/messages.json b/_locales/sv/messages.json index c50bbce3..651c0ce8 100644 --- a/_locales/sv/messages.json +++ b/_locales/sv/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - Lösenordshanteraren för Nextcloud/ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Ogiltigt svar från server: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Vänligen ange dina Nextcloud/ownCloud-uppgifter", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ hittades för denna sida", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Låst", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Vi hittade $AMOUNT$ uppgifter för denna plats", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Spara i $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Sparar i $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ uppgifter i databasen", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman loggar in dig som $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Valv", @@ -534,9 +588,5 @@ "text": { "message": "text", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/ta/messages.json b/_locales/ta/messages.json index 5e97b043..d9d3911c 100644 --- a/_locales/ta/messages.json +++ b/_locales/ta/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - The password manager for NextCloud / ownCloud", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Invalid response from server: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Please enter your Nextcloud / ownCloud credentials", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ found for this page", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Locked", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "We've found $AMOUNT$ credentials for this site", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "Save to $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "Saving to $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ credentials in the database", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman is logging you in as $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Vault", @@ -534,9 +588,5 @@ "text": { "message": "text", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/tr/messages.json b/_locales/tr/messages.json index a9116b12..9dcbf54d 100644 --- a/_locales/tr/messages.json +++ b/_locales/tr/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - Nextcloud / OwnCloud için Parola Yönetimi", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "Sunucudan alınan yanıt geçersiz: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "Nextcloud / ownCloud kimlik doğrulama bilgilerinizi yazın", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - bu sayfa için $CREDENTIAL_AMOUNT$ $PLURAL$ buldu", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - Kilitlendi", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "Bu site için $AMOUNT$ bulundu", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "$VAULT_NAME$ üzerine kaydet", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "$VAULT_NAME$ üzerine kaydediliyor", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "Veri tabanında $AMOUNT$ kimlik doğrulama bilgisi var", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman sizi $USERNAME$ olarak izliyor", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "Kasa", @@ -534,9 +588,5 @@ "text": { "message": "metin", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/zh_CN/messages.json b/_locales/zh_CN/messages.json index 48b8fab6..c300cebd 100644 --- a/_locales/zh_CN/messages.json +++ b/_locales/zh_CN/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - NextCloud 或 ownCloud 的密码管理器", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "服务器响应无效:[$STATUS_CODE$]$STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "请输入您的 Nextcloud 或 ownCloud 凭证", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - $CREDENTIAL_AMOUNT$ $PLURAL$ 找到这个页面", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - 锁定", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "我们已经找到了$AMOUNT$这个网站的凭据", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "保存到 $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "正在保存到 $VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "$AMOUNT$ 凭据在数据库中", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman 正在登录 $USERNAME$", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "保险箱", @@ -534,9 +588,5 @@ "text": { "message": "文本", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/zh_HK/messages.json b/_locales/zh_HK/messages.json index c60d05c9..4185fad0 100644 --- a/_locales/zh_HK/messages.json +++ b/_locales/zh_HK/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - NextCloud/ownCloud 的密碼管理器", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "來自伺服器的無效回覆: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "請輸入您 Nextcloud/ownCloud 的身分驗證", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - 在頁面中找到$CREDENTIAL_AMOUNT$ $PLURAL$", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - 已上鎖", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "我們在此站點找到了 $AMOUNT$ 個身分驗證", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "儲存至$VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "正儲存至$VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "在數據庫中找到$AMOUNT$個身分驗證", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman 以 $USERNAME$ 的身分登入", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "保險庫", @@ -534,9 +588,5 @@ "text": { "message": "文字", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/_locales/zh_TW/messages.json b/_locales/zh_TW/messages.json index 1bd33b9c..362203d2 100644 --- a/_locales/zh_TW/messages.json +++ b/_locales/zh_TW/messages.json @@ -1,4 +1,8 @@ { + "extName": { + "message": "Passman", + "description": "Extension name" + }, "extDescription": { "message": "Passman - NextCloud/ownCloud 密碼管理器", "description": "Extension description" @@ -21,7 +25,17 @@ }, "invalid_response_from_server": { "message": "來自伺服器的無效回覆: [$STATUS_CODE$] $STATUS_TEXT$", - "description": "No credentials found for the current site" + "description": "No credentials found for the current site", + "placeholders": { + "status_code": { + "content": "$1", + "example": "404" + }, + "status_text": { + "content": "$2", + "example": "Page not found" + } + } }, "please_enter_nextcloud_credentials": { "message": "請輸入您 Nextcloud/ownCloud 憑證", @@ -121,7 +135,17 @@ }, "browser_action_title_login": { "message": "Passman - 在頁面中找到$CREDENTIAL_AMOUNT$ $PLURAL$", - "description": "String for the browser action" + "description": "String for the browser action", + "placeholders": { + "credential_amount": { + "content": "$1", + "example": "4" + }, + "plural": { + "content": "$2", + "example": "credentials" + } + } }, "browser_action_title_locked": { "message": "Passman - 已上鎖", @@ -505,23 +529,53 @@ }, "credentials_found_for_site": { "message": "我們在此站點找到了 $AMOUNT$ 個憑據", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "save_to": { "message": "儲存至$VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "saving_to": { "message": "正儲存至$VAULT_NAME$", - "description": "Amount of the credentials found for the current site" + "description": "Amount of the credentials found for the current site", + "placeholders": { + "vault_name": { + "content": "$1", + "example": "Main vault" + } + } }, "credentials_in_db": { "message": "在資料庫中找到$AMOUNT$憑證", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "amount": { + "content": "$1", + "example": "2" + } + } }, "auto_login": { "message": "Passman 正嘗試以 $USERNAME$ 的身分將您登入", - "description": "Amount of the credentials in the database" + "description": "Amount of the credentials in the database", + "placeholders": { + "username": { + "content": "$1", + "example": "MyUsername" + } + } }, "vault": { "message": "保險庫", @@ -534,9 +588,5 @@ "text": { "message": "文字", "description": "To describe a textual input field" - }, - "extName": { - "message": "Passman", - "description": "Extension name" } } \ No newline at end of file diff --git a/contributing.md b/contributing.md index d2bf3316..0797b7fc 100644 --- a/contributing.md +++ b/contributing.md @@ -2,17 +2,9 @@ If you want to contribute make sure the commits are `verified`. You can read how to GPG sign you commits [here](https://help.github.com/articles/signing-commits-using-gpg/). - # Tools used -[Karma](https://karma-runner.github.io): JS test framework [Bourbon](https://www.bourbon.io/): Sass->css framework [Grunt](https://gruntjs.com/): Automation tool to compile/test/deploy -# Test -With Docker: -``` -docker build . -t passman-dev && docker run -it --rm --user=`id -u` passman-dev grunt test -``` - # Tips Compile scss to scc: `grunt watch` \ No newline at end of file diff --git a/html/browser_action/browser_action.html b/html/browser_action/browser_action.html index 05724644..651fafc4 100644 --- a/html/browser_action/browser_action.html +++ b/html/browser_action/browser_action.html @@ -77,7 +77,7 @@
  • - {{'list' | translate}} + {{'list' | translate}}
  • {{'search' | translate}} @@ -99,13 +99,13 @@ - -
    +
    {{'invalid_master_password' | translate}}
    -
    + +
    diff --git a/js/background/inject/passkey.js b/js/background/inject/passkey.js new file mode 100644 index 00000000..3f76c08d --- /dev/null +++ b/js/background/inject/passkey.js @@ -0,0 +1,242 @@ +/* jshint esversion: 11 */ + +/* injection functions run as eartly as possible */ + +const creds = self.navigator.credentials; +const passkeySupported = + typeof creds?.get === 'function' && + typeof creds?.create === 'function'; + +const prevCreate = creds.create.bind(self.navigator.credentials); +const prevGet = creds.get.bind(self.navigator.credentials); + +function toBase64arr(arr) { + return toBase64arrNoUrl(arr).replaceAll('+', '-') + .replaceAll('/', '_').replaceAll('=', ''); +} + +function toBase64arrNoUrl(arr) { + const bytes = new Uint8Array(arr); + const bs = String.fromCharCode(...bytes); + return btoa(bs); +} + +/* mutate a JSON object to encode all arraybuffers as base64 so that +* JSON.stringify will work on it */ +function toBase64(o) { + for (const k in o) { + + if (o[k].constructor.name === 'ArrayBuffer') { + o[k] = toBase64arrNoUrl(o[k]); + } else if (typeof o === 'object') { + toBase64(o[k]); + } + } +} + +function WArray(arr) { + if (arr == null) + return null; + return new Uint8Array(arr); +} + +function getAttestationResponse(r) { + const response = { + attestationObject: WArray(r.attestation_object).buffer, + clientDataJSON: WArray(r.client_data_json).buffer, + getAuthenticatorData: () => clone(WArray(r.authenticator_data).buffer), + getPublicKey: () => clone(WArray(r.public_key).buffer), + getPublicKeyAlgorithm: () => clone(r.public_key_algorithm), + getTransports: () => clone(r.transports) + }; + response.toJSON = () => ({ + attestationObject: toBase64arr(response.attestationObject), + clientDataJSON: toBase64arr(response.clientDataJSON), + authenticatorData: toBase64arr(response.getAuthenticatorData()), + publicKey: toBase64arr(response.getPublicKey()), + publicKeyAlgorithm: response.getPublicKeyAlgorithm(), + transports: response.getTransports() + }); + Object.setPrototypeOf(response, AuthenticatorAttestationResponse.prototype); + return response; +} + +function getAssertionResponse(r) { + const response = { + clientDataJSON: WArray(r.client_data_json).buffer, + authenticatorData: WArray(r.authenticator_data), + signature: WArray(r.signature), + userHandle: r.user_handle + }; + response.toJSON = () => ({ + clientDataJSON: toBase64arr(response.clientDataJSON), + authenticatorData: toBase64arr(response.authenticatorData), + signature: toBase64arr(response.signature), + userHandle: response.user_handle + }); + Object.setPrototypeOf(response, AuthenticatorAssertionResponse.prototype); + return response; +} + +function getCred(c, r) { + const cred = { + authenticatorAttachment: c.authenticator_attachment, + id: c.id, + rawId: WArray(c.raw_id).buffer, + response: r, + type: c.type, + getClientExtensionResults: () => clone(c.client_extension_results), + }; + cred.toJSON = () => clone({ + authenticatorAttachment: cred.authenticatorAttachment, + id: cred.id, + rawId: toBase64arr(cred.rawId), + response: r.toJSON(), + type: cred.type, + clientExtensionResults: cred.getClientExtensionResults() + }); + Object.setPrototypeOf(cred, PublicKeyCredential.prototype); + + return cred; +} +/* on firefox, data must be cloned to share with a page */ +function clone(o) { + if (typeof window === 'undefined') + return o; + return cloneInto(o, window, {cloneFunctions: true}); +} + +/* firefox can't cloneInto a promise, must use window.Promise */ +function wPromise(f) { + if (typeof window !== 'undefined') + return new window.Promise(f); + else + return new Promise(f); +} + +/* this should be an async function but because of firefox + * permission problems, it has to be a sync function returning + * a cross window promise. Don't ask why firefox couldn't simply + * cloneInto the promise ... + */ +function createCredential(options) { + return wPromise(async function(resolve) { + console.log("create new passkey credential", options); + + var pk = options.publicKey; + + toBase64(pk); + + console.log("request is ", pk); + + const name = pk.user.name ?? pk.user.displayName; + + const keys = await API.runtime.sendMessage(API.runtime.id, + {method: 'passkey.query', + args: { + domain: location.hostname, + userId: pk.user.id + }}); + + if (keys.length != 0) { + alert('passkey already exists for user "' + name + '".'); + resolve(await prevCreate(options)); + } + + if (!confirm('Create a new passkey for user "' + name + '"?')) + resolve(await prevCreate(options)); + + var ret = await API.runtime.sendMessage(API.runtime.id, + {method: 'passkey.generate', + args: { + domain: location.hostname, + request: JSON.stringify(pk) + }}) + .then(async function (ret) { + if (ret != null) + return ret; + else + return await prevCreate(options); + }); + console.log('ret = ', ret); + const c = ret.credential; + const r = c.response; + const response = getAttestationResponse(r); + const cred = getCred(c, response); + resolve(clone(cred)); + }); +} + +function getCredential(options) { + return wPromise(async function(resolve) { + console.log("get passkey credential", options); + + pk = options.publicKey; + toBase64(pk); + + console.log('request is ', pk); + + var keys = await API.runtime.sendMessage(API.runtime.id, + {method: 'passkey.query', + args: { + domain: location.hostname + }}); + if (keys.length == 0) + return prevGet(options); + + if (keys.length == 1) { + const name = keys[0].userName ?? keys[0].userDisplayName; + if (!confirm('Log in to site with passkey for "' + name + '"?')) + return prevGet(options); + } else { + // fixme: need selector for multiple users + return prevGet(options); + } + + var ret = await API.runtime.sendMessage(API.runtime.id, + {method: 'passkey.get', + args: { + domain: location.hostname, + request: pk + }}) + .then(async function (ret) { + if (ret != null) + return ret; + else + return await prevGet(options); + }); + console.log('got ret = ', ret); + const c = ret.credential; + const r = c.response; + const response = getAssertionResponse(r); + const cred = getCred(c, response); + resolve(clone(cred)); + }); +} + +/* firefox uses exportFunctions */ +function exporter(fn, target, options) { + if (globalThis.exportFunction != null) + exportFunction(fn, target, options); + else + target[options.defineAs] = fn; +} + +if (passkeySupported) { + console.log("Passkeys are supported"); + + if (creds != null) { + exporter(createCredential, creds, {defineAs: 'create'}); + exporter(getCredential, creds, {defineAs: 'get'}); + + if (self.PublicKeyCredential) { + console.log("have publickeycredential"); + // required to get the correct client capabilities + exporter(function () { return true; }, self.PublicKeyCredential, {defineAs: 'isConditionalMediationAvailable'}); + exporter(function () { return true; }, self.PublicKeyCredential, {defineAs: 'isUserVerifyingPlatformAuthenticatorAvailable'}); + } else { + console.log("NO publickeycredential"); + } + } +} + diff --git a/js/background/service/background.js b/js/background/service/background.js index 99cd1bea..f60dabc5 100644 --- a/js/background/service/background.js +++ b/js/background/service/background.js @@ -56,8 +56,10 @@ var background = (function () { var testMasterPasswordAgainst; - function isMasterPasswordValid(password) { + async function isMasterPasswordValid(password) { try { + const _settings = await storage.get('settings'); + testMasterPasswordAgainst = _settings.accounts; PAPI.decryptString(testMasterPasswordAgainst, password); return true; } catch (e) { @@ -80,9 +82,11 @@ var background = (function () { if ((!_settings || Object.keys(_settings).length === 0 || !_settings.hasOwnProperty('accounts')) && !master_password) { return; } + + testMasterPasswordAgainst = _settings.accounts; + if (!master_password && _settings.hasOwnProperty('accounts') && _settings.accounts.length > 0) { _self.settings.isInstalled = 1; - testMasterPasswordAgainst = _settings.accounts; return; } @@ -341,8 +345,19 @@ var background = (function () { return getCredentialsByUrl(req.url)[0]; } + function savePasskey(k) { + if (k.account == null) { + k.account = getSetting('accounts')[0]; + k.vault_id = k.account.vault.vault_id; + } + saveCredential(k); + } + _window.getCredentialForHTTPAuth = getCredentialForHTTPAuth; + _window.getCredentialsForPasskey = (dom) => getCredentialsByUrl('https://' + dom); + _window.savePasskey = savePasskey; + var mined_data = []; function minedForm(data, sender) { @@ -626,10 +641,17 @@ var background = (function () { return; } var result = false; - if (_self[msg.method]) { - result = _self[msg.method](msg.args, sender); + var methods = _self; + var call = msg.method; + if (call.startsWith('passkey.')) { + /** global: passkey */ + methods = passkey; + call = call.slice(8); // strip 'passkey.' + } + if (methods[call]) { + result = methods[call](msg.args, sender); } else { - console.warn('[NOT FOUND] Method call', msg.method, 'args: ', msg.args); + console.warn('[NOT FOUND] Method call', call, 'args: ', msg.args); } sendResponse(result); diff --git a/js/background/service/passkey.js b/js/background/service/passkey.js new file mode 100644 index 00000000..9e6f5a71 --- /dev/null +++ b/js/background/service/passkey.js @@ -0,0 +1,140 @@ +/* global API */ +/* jshint esversion: 11 */ + +const passkey = (function () { + var _export = {}; + + var core = {}; + + function toBase64arrNoUrl(arr) { + const bytes = new Uint8Array(arr); + const bs = String.fromCharCode(...bytes); + return btoa(bs); + } + + function urltweak(arr) { + return arr.replaceAll('+', '-') + .replaceAll('/', '_') + .replaceAll('=', ''); + } + + class Passkey { + constructor(ret) { + this.passkey = ret.passkey; + this.domain = ret.domain; + this.id = ret.credential.id; + this.userName = ret.user_name; + this.userDisplayName = ret.user_display_name; + this.userId = toBase64arrNoUrl(ret.user_id); + } + } + + var wasmFile = fetch('/node_modules/@protontech/pass-rust-core/worker/proton_pass_web_bg.wasm'); + var passjs = import('/node_modules/@protontech/pass-rust-core/worker/proton_pass_web_bg.js').then(async function (ret) { + var wasm = await WebAssembly.instantiateStreaming(wasmFile, {'./proton_pass_web_bg.js': ret}) + .then(function (value) { + var exports = value.instance.exports; + + console.log('[passman] wasm instantiated'); + + return exports; + }) + .catch(function (error) { + console.error('[passman] instantiate webassembly failed'); + throw (error); + }); + ret.__wbg_set_wasm(wasm); + core = ret; + console.log('[passman] wasm exports: ', ret.library_version()); + + return ret; + }).catch(function (err) { + console.error('[passman] failed to load js for rust'); + throw (err); + }); + + async function ensureCore() { + await passjs; + } + + function getPasses(domain) { + const logins = background.getCredentialsForPasskey(domain); + return logins.map((x) => x.passkey) + .filter((x) => x != null); + } + + _export.generate = async function (args, sender) { + ensureCore(); + + console.log('in generate_passkey core = ', core != null); + console.log('request = ', args.request); + + request = JSON.parse(args.request); + + const name = request.user.name ?? request.user.displayName; + + var ret = await core.generate_passkey(args.domain, args.request); + if (ret == null) + return ret; + + /* in case we have a non passkey login we're converting to passkey */ + logins = background.getCredentialsForPasskey(args.domain) + .filter((x) => x.username == name); + + var credential; + + if (logins.length == 0) { + credential = PAPI.newCredential(); + credential.passkey = new Passkey(ret); + credential.username = name; + credential.password = ''; + credential.url = 'https://' + args.domain; + credential.label = sender.tab.title; + } else { + credential = logins[0]; + credential.passkey = new Passkey(ret); + } + background.savePasskey(credential); + return ret; + }; + + _export.get = function (args, sender) { + ensureCore(); + + const request = args.request; + + console.log('in passkey get, request =', request); + const passes = getPasses(args.domain); + const keys = passes.filter((p) => + (p.domain == args.domain && + (request.allowCredentials == null || + request.allowCredentials.length == 0 || + request.allowCredentials.find((e) => (urltweak(e.id) == p.id)) !== undefined))); + if (keys.length == 0) { + console.error('no keys found'); + return null; + } + console.log('found key = ', keys[0]); + const content = new Uint8Array(keys[0].passkey); + console.log('content is ', content); + + return core.resolve_passkey_challenge(args.domain, content, JSON.stringify(request)); + }; + + _export.query = function (args, sender) { + ensureCore(); + + console.log('in passkey query, args = ', args); + const passes = getPasses(args.domain); + const keys = passes.filter((p) => (p.domain == args.domain && + (args.userId == null || p.userId == args.userId))) + .map((x) => ({ + userId: x.userId, + userName: x.userName, + userDisplayName: x.userDisplayName + })); + return keys; + }; + + return _export; +}()); diff --git a/js/lib/api.js b/js/lib/api.js index a2e6d5b1..a42adbc3 100644 --- a/js/lib/api.js +++ b/js/lib/api.js @@ -2,6 +2,9 @@ window.PAPI = (function () { var _encryptedFields = ['description', 'username', 'password', 'files', 'custom_fields', 'otp', 'email', 'tags', 'url']; + // label string to identify stored passkey + const PKKEY = '<>PASSKEY<>'; + var encryption_config = { adata: "", iter: 1000, @@ -57,6 +60,13 @@ window.PAPI = (function () { } } + const idx = credential.custom_fields.findIndex((o) => o.label == PKKEY); + if (idx >= 0) { + credential.passkey = JSON.parse(credential.custom_fields[idx].value); + // delete the field so it doesn't show up in the editor + credential.custom_fields.splice(idx, 1); + } + return credential; }, @@ -91,6 +101,14 @@ window.PAPI = (function () { }; }, encryptCredential: function (credential, _key) { + if (credential.passkey != null) { + credential.custom_fields.push({ + label: PKKEY, + value: JSON.stringify(credential.passkey), + }); + delete credential.passkey; + } + for (var i = 0; i < _encryptedFields.length; i++) { var field = _encryptedFields[i]; var fieldValue = credential[field]; diff --git a/js/ui/password_picker/password_picker.js b/js/ui/password_picker/password_picker.js index 7a7623ef..03d4bf6e 100644 --- a/js/ui/password_picker/password_picker.js +++ b/js/ui/password_picker/password_picker.js @@ -2,6 +2,15 @@ $(document).ready(function () { var _this = this; var storage = new API.Storage(); var runtimeSettings = {}; + var IsMasterPasswordSet = true; + + API.runtime.sendMessage(API.runtime.id, {method: 'getMasterPasswordSet'}).then(function (MasterPasswordSet) { + if (!MasterPasswordSet) { + IsMasterPasswordSet = false; + $('.tabs > .tab').not('.close').hide(); + makeTabActive('unlock'); + } + }); API.runtime.sendMessage(API.runtime.id, {'method': 'getRuntimeSettings'}).then(function (settings) { var accounts = settings.accounts; @@ -281,49 +290,52 @@ $(document).ready(function () { disablePassman('url', tab.url); }); - API.runtime.sendMessage(API.runtime.id, { - method: "getCredentialsByUrl", - args: [tab.url] - }).then(function (logins) { - if (logins.length === 0) { - API.runtime.sendMessage(API.runtime.id, { - 'method': 'getSetting', - args: 'no_results_found_tab' - }).then(function (value) { - makeTabActive(value); - }); - return; - } - if (logins.length !== 0) { - picker.find('.tab-list-content').html(''); - if(runtimeSettings.passwordPickerGotoList){ - makeTabActive('list'); + if (IsMasterPasswordSet === false) { + makeTabActive('unlock'); + } else { + API.runtime.sendMessage(API.runtime.id, { + method: "getCredentialsByUrl", + args: [tab.url] + }).then(function (logins) { + if (logins.length === 0) { + API.runtime.sendMessage(API.runtime.id, { + 'method': 'getSetting', + args: 'no_results_found_tab' + }).then(function (value) { + makeTabActive(value); + }); + return; } - } - for (var i = 0; i < logins.length; i++) { - var login = logins[i]; - var div = $('
    ', {class: 'account', text: login.label}); - $('
    ').appendTo(div); - var username = (login.username !== '' ) ? login.username : login.email; - $('').text(username).appendTo(div); - /* jshint ignore:start */ - div.click((function (login) { - return function () { - //enterLoginDetails(login); - //API.runtime.sendMessage(API.runtime.id, {method: 'getMasterPasswordSet'}) - fillLogin(login) - }; - })(login)); - /* jshint ignore:end*/ - - picker.find('.tab-list-content').append(div); - } - }); + if (logins.length !== 0) { + picker.find('.tab-list-content').html(''); + if(runtimeSettings.passwordPickerGotoList){ + makeTabActive('list'); + } + } + for (var i = 0; i < logins.length; i++) { + var login = logins[i]; + var div = $('
    ', {class: 'account', text: login.label}); + $('
    ').appendTo(div); + var username = (login.username !== '' ) ? login.username : login.email; + $('').text(username).appendTo(div); + /* jshint ignore:start */ + div.click((function (login) { + return function () { + //enterLoginDetails(login); + //API.runtime.sendMessage(API.runtime.id, {method: 'getMasterPasswordSet'}) + fillLogin(login) + }; + })(login)); + /* jshint ignore:end*/ + + picker.find('.tab-list-content').append(div); + } + }); + } } _this.returnActiveTab = returnActiveTab; - $('.no-credentials .save').on('click', function () { $('.tab.add').click(); }); diff --git a/js/ui/popup/controllers/list.js b/js/ui/popup/controllers/list.js index 595dc5a7..59e247c1 100644 --- a/js/ui/popup/controllers/list.js +++ b/js/ui/popup/controllers/list.js @@ -44,6 +44,7 @@ API.runtime.sendMessage(API.runtime.id, {method: "getMasterPasswordSet"}).then(function (isPasswordSet) { //First check attributes if (!isPasswordSet) { + window.location = '#!/locked'; return; } diff --git a/js/ui/popup/controllers/main.js b/js/ui/popup/controllers/main.js index 5011f5d5..19e05a01 100644 --- a/js/ui/popup/controllers/main.js +++ b/js/ui/popup/controllers/main.js @@ -57,8 +57,8 @@ var initApp = function () { port.onMessage.addListener(messageParser); API.runtime.sendMessage(API.runtime.id, {method: "getMasterPasswordSet"}).then(function (isPasswordSet) { - //First check attributes if (!isPasswordSet) { + window.location = '#!/locked'; return; } $scope.refreshing_credentials = true; diff --git a/js/ui/popup/controllers/password_prompt.js b/js/ui/popup/controllers/password_prompt.js index f6cd8481..045f2d10 100644 --- a/js/ui/popup/controllers/password_prompt.js +++ b/js/ui/popup/controllers/password_prompt.js @@ -43,32 +43,38 @@ $rootScope.$broadcast('hideHeader'); $scope.master_password_remember = false; $scope.master_password = ''; + $scope.apply_settings = function () { $scope.saving = true; - $scope.inValidPassword = false; - API.runtime.sendMessage(API.runtime.id, { - method: 'isMasterPasswordValid', - args: $scope.master_password - }).then(function (isValid) { - if (isValid) { - API.runtime.sendMessage(API.runtime.id, { - method: "setMasterPassword", - args: {password: $scope.master_password, savePassword: $scope.master_password_remember} - }).then(function () { - setTimeout(function () { - window.location = '#!/'; - $scope.saving = false; - $rootScope.$broadcast('showHeader'); + $scope.invalidPassword = false; - }, 750); - }); - } else { - $scope.saving = false; - $scope.inValidPassword = true; - } - $scope.$apply(); - }); + if ( $scope.master_password ) { + API.runtime.sendMessage(API.runtime.id, { + method: 'isMasterPasswordValid', + args: $scope.master_password + }).then(function (isValid) { + if (isValid) { + API.runtime.sendMessage(API.runtime.id, { + method: "setMasterPassword", + args: {password: $scope.master_password, savePassword: $scope.master_password_remember} + }).then(function () { + setTimeout(function () { + window.location = '#!/'; + $scope.saving = false; + $rootScope.$broadcast('showHeader'); + }, 750); + }); + } else { + $scope.saving = false; + $scope.invalidPassword = true; + } + $scope.$apply(); + }); + } else { + $scope.saving = false; + $scope.invalidPassword = true; + } }; $scope.showResetPassword = function () { $scope.resetPassword = true; diff --git a/js/ui/popup/controllers/search.js b/js/ui/popup/controllers/search.js index 0dd2807b..55870ab9 100644 --- a/js/ui/popup/controllers/search.js +++ b/js/ui/popup/controllers/search.js @@ -34,6 +34,12 @@ */ angular.module('passmanExtension') .controller('SearchCtrl', ['$scope', function ($scope) { + API.runtime.sendMessage(API.runtime.id, {method: 'getMasterPasswordSet'}).then(function (MasterPasswordSet) { + if (!MasterPasswordSet) { + window.location = '#!/locked'; + } + $scope.$apply(); + }); $scope.found_credentials = false; $scope.searchText = ''; $scope.search = function () { diff --git a/js/ui/popup/controllers/setup.js b/js/ui/popup/controllers/setup.js index a7ab4d33..732c906e 100644 --- a/js/ui/popup/controllers/setup.js +++ b/js/ui/popup/controllers/setup.js @@ -202,6 +202,11 @@ }; + $scope.closeWindow = function () { + setTimeout(function () { + window.close(); + }, 500); + }; }]); }()); diff --git a/karma.conf.js b/karma.conf.js deleted file mode 100644 index ea17ed05..00000000 --- a/karma.conf.js +++ /dev/null @@ -1,85 +0,0 @@ -// Karma configuration -// Generated on Mon Oct 17 2016 15:46:52 GMT+0200 (CEST) -var isTravis = (process.env.TRAVIS_BUILD_NUMBER) ? true : false; -var isDocker = (process.env.DOCKER) ? true : false; -var browsers = ['Firefox']; -if(!isTravis){ - browsers = ['Chrome']; -} -if(isDocker){ - browsers = ['Chromium_Docker', 'Firefox_Docker']; -} -module.exports = function (config) { - config.set({ - - // base path that will be used to resolve all patterns (eg. files, exclude) - basePath: '.', - - - // frameworks to use - // available frameworks: https://npmjs.org/browse/keyword/karma-adapter - frameworks: ['jasmine'], - - - // list of files / patterns to load in the browser - files: [ - 'js/lib/data/tlds.js', - 'js/lib/parseTLD.js', - 'js/lib/parseUrl.js', - { pattern: 'tests/**/*.js', included: true } - ], - - - // list of files to exclude - exclude: [ - ], - - - // preprocess matching files before serving them to the browser - // available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor - preprocessors: {}, - - - // test results reporter to use - // possible values: 'dots', 'progress' - // available reporters: https://npmjs.org/browse/keyword/karma-reporter - reporters: ['verbose'], - - - // web server port - port: 9876, - - - // enable / disable colors in the output (reporters and logs) - colors: true, - - - // level of logging - // possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG - logLevel: config.LOG_INFO, - - - // enable / disable watching file and executing tests whenever any file changes - autoWatch: false, - - - // start these browsers - // available browser launchers: https://npmjs.org/browse/keyword/karma-launcher - browsers: browsers, - customLaunchers: { - Chromium_Docker: { - base: 'Chromium', - flags: ['--headless', '--disable-gpu', '--remote-debugging-port=9222', '--no-sandbox'] - }, - Firefox_Docker: { - base: 'Firefox', - flags: ['--headless'] - } - }, - - - // Continuous Integration mode - // if true, Karma captures browsers, runs the tests and exits - singleRun: true - }); -}; \ No newline at end of file diff --git a/manifest.json b/manifest.json index 9a541aec..7a7462d7 100644 --- a/manifest.json +++ b/manifest.json @@ -15,7 +15,7 @@ "128": "icons/icon128.png" }, "externally_connectable": { - "ids": [] + "ids": [""] }, "background": { "scripts": [ @@ -41,6 +41,7 @@ "/js/lib/otp.js", "/js/lib/passwordgen.js", "/js/background/service/contextMenu.js", + "/js/background/service/passkey.js", "/js/background/service/background.js", "/js/background/service/httpAuth.js" ] @@ -70,6 +71,7 @@ "webRequest", "webRequestBlocking" ], + "content_security_policy": "script-src 'self' 'wasm-unsafe-eval'; object-src 'self'", "content_scripts": [ { "matches": [ @@ -77,7 +79,6 @@ "https://*/*" ], "all_frames": true, - "jsBuild": [], "js": [ "/js/lib/promise.js", "/js/vendor/sjcl/sjcl.js", @@ -93,7 +94,8 @@ "/js/lib/parseTLD.js", "/js/lib/data/tlds.js", "/js/lib/domchanged.js", - "/js/background/inject/inject.js" + "/js/background/inject/inject.js", + "/js/background/inject/passkey.js" ], "css":[ "/css/doorhanger-iframe.css" diff --git a/package.json b/package.json index 03100a43..61718dcd 100644 --- a/package.json +++ b/package.json @@ -1,29 +1,24 @@ { "name": "passman-web-extension", "version": "1.0.0", - "description": "Tested on: - Chrome - Firefox - Safari", + "description": "Webextension for the Passman Nextcloud app", "main": "Gruntfile.js", "dependencies": { - "grunt": "~0.4.5", - "grunt-cli": "~1.2.0", - "grunt-contrib-clean": "^1.0.0", - "grunt-contrib-compress": "^1.4.1", + "grunt": "^1.6.1", + "grunt-cli": "^1.4.3", + "grunt-contrib-clean": "^2.0.1", + "grunt-contrib-compress": "^2.0.0", "grunt-contrib-copy": "^1.0.0", - "grunt-contrib-jshint": "^0.12.0", - "grunt-execute": "^0.2.2", - "grunt-karma": "^2.0.0", - "grunt-mkdir": "^1.0.0", - "jasmine-core": "^2.6.1", + "grunt-contrib-jshint": "^3.2.0", + "grunt-contrib-watch": "^1.1.0", + "grunt-exec": "^3.0.0", + "grunt-mkdir": "^1.1.0", + "grunt-sass": "^3.1.0", + "jasmine-core": "^5.1.1", "jshint-stylish": "^2.2.1", - "karma": "^1.7.0", - "karma-chrome-launcher": "^2.1.1", - "karma-firefox-launcher": "^1.0.1", - "karma-jasmine": "^1.1.0", - "karma-verbose-reporter": "0.0.6" - }, - "devDependencies": { - "grunt-contrib-watch": "^1.0.0", - "grunt-sass": "^2.1.0" + "load-grunt-tasks": "^5.1.0", + "node-sass": "^9.0.0", + "@protontech/pass-rust-core": "^0.21.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1"