Merge branch 'master' into bugfix-attachments-in-popup

This commit is contained in:
Thomas Rittson 2021-02-04 17:01:57 +10:00
commit 4a815e001a
119 changed files with 6638 additions and 2646 deletions

View File

@ -30,13 +30,6 @@ const filters = {
safari: [
'!build/safari/**/*'
],
webExt: [
'!build/manifest.json'
],
nonSafariApp: [
'!build/background.html',
'!build/popup/index.html'
],
};
function buildString() {
@ -65,6 +58,7 @@ function dist(browserName, manifest) {
function distFirefox() {
return dist('firefox', (manifest) => {
delete manifest.content_security_policy;
delete manifest.optional_permissions;
removeShortcuts(manifest);
return manifest;
});
@ -186,6 +180,7 @@ function safariCopyAssets(source, dest) {
.on('error', reject)
.pipe(gulpif('safari/Info.plist', replace('0.0.1', manifest.version)))
.pipe(gulpif('safari/Info.plist', replace('0.0.2', process.env.BUILD_NUMBER || manifest.version)))
.pipe(gulpif('desktop.xcodeproj/project.pbxproj', replace('../../../build', '../safari/app')))
.pipe(gulp.dest(dest))
.on('end', resolve);
});
@ -195,8 +190,8 @@ function safariCopyBuild(source, dest) {
return new Promise((resolve, reject) => {
gulp.src(source)
.on('error', reject)
.pipe(filter(['**'].concat(filters.fonts)
.concat(filters.webExt).concat(filters.nonSafariApp)))
.pipe(filter(['**'].concat(filters.fonts)))
.pipe(gulpif('popup/index.html', replace('__BROWSER__', 'browser_safari')))
.pipe(gulp.dest(dest))
.on('end', resolve);
});

2
jslib

@ -1 +1 @@
Subproject commit 6ac6df75d7a9bd5ea58f5d8310f1b3e34abd2bde
Subproject commit 11249e34441ea747f53fcb0b6e38f690366b46b5

8
package-lock.json generated
View File

@ -1894,10 +1894,10 @@
"integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=",
"dev": true
},
"browser-process-hrtime": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz",
"integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow=="
"browser-hrtime": {
"version": "1.1.8",
"resolved": "https://registry.npmjs.org/browser-hrtime/-/browser-hrtime-1.1.8.tgz",
"integrity": "sha512-kzXheikaJsBtzUBlyVtPIY5r0soQePzjwVwT4IlDpU2RvfB5Py52gpU98M77rgqMCheoSSZvrcrdj3t6cZ3suA=="
},
"browser-resolve": {
"version": "1.11.3",

View File

@ -13,6 +13,7 @@
"build:watch": "gulp build && webpack --watch",
"build:prod": "gulp build && cross-env NODE_ENV=production webpack",
"build:prod:watch": "gulp build && cross-env NODE_ENV=production webpack --watch",
"build:xcode": "npm run build && rsync -av build/./ src/safari/safari/app --exclude popup/index.html",
"clean:l10n": "git push origin --delete l10n_master",
"dist": "npm run build:prod && gulp dist",
"dist:firefox": "npm run build:prod && gulp dist:firefox",
@ -94,7 +95,7 @@
"angular2-toaster": "8.0.0",
"angulartics2": "9.1.0",
"big-integer": "1.6.36",
"browser-process-hrtime": "1.0.0",
"browser-hrtime": "^1.1.8",
"core-js": "2.6.2",
"duo_web_sdk": "git+https://github.com/duosecurity/duo_web_sdk.git",
"font-awesome": "4.7.0",

View File

@ -20,7 +20,7 @@
"message": "Увайсці"
},
"enterpriseSingleSignOn": {
"message": "Enterprise Single Sign-On"
"message": "Адзіны ўваход у карпаратыўную сістэму (SSO)."
},
"cancel": {
"message": "Скасаваць"
@ -89,7 +89,7 @@
"message": "Стварыць пароль (з капіяваннем)"
},
"noMatchingLogins": {
"message": "Няма падыходных імён карыстальнікаў."
"message": "Няма падыходных уліковых даных."
},
"vaultLocked": {
"message": "Сховішча заблакіравана."
@ -98,10 +98,10 @@
"message": "Вы выйшлі са сховішча."
},
"autoFillInfo": {
"message": "Няма імён карыстальніка, даступных для аўтазапаўнення ў бягучую ўкладку браўзера."
"message": "Няма ўліковых даных, даступных для аўтазапаўнення ў бягучую ўкладку браўзера."
},
"addLogin": {
"message": "Дадаць імя карыстальніка"
"message": "Дадаць ўліковыя даныя"
},
"addItem": {
"message": "Дадаць элемент"
@ -188,7 +188,7 @@
"description": "Short for 'Password Generator'."
},
"passGenInfo": {
"message": "Аўтаматычна ствараць моцныя, унікальныя паролі для вашых імён карыстальніка."
"message": "Аўтаматычна ствараць моцныя, унікальныя паролі для вашых уліковых даных."
},
"bitWebVault": {
"message": "Вэб-сховішча Bitwarden"
@ -328,7 +328,7 @@
"message": "Памылковы асноўны пароль"
},
"vaultTimeout": {
"message": "Таймаўт сховішча"
"message": "Тайм-аўт сховішча"
},
"lockNow": {
"message": "Заблакіраваць зараз"
@ -523,10 +523,10 @@
"description": "This is the folder for uncategorized items"
},
"disableAddLoginNotification": {
"message": "Адключыць апавяшчэнне аб даданні імя карыстальніка"
"message": "Адключыць апавяшчэнне аб даданні ўліковых даных"
},
"addLoginNotificationDesc": {
"message": "Апавяшчэнне аб даданні імя карыстальніка аўтаматычна прапануе вам захаваць новыя імёны карыстальніка ў сховішчы."
"message": "Апавяшчэнне аб даданні ўліковых даных аўтаматычна прапануе вам захаваць новыя ўліковыя даныя ў сховішчы."
},
"dontShowCardsCurrentTab": {
"message": "Не паказваць карткі на панэлі ўкладак"
@ -573,14 +573,14 @@
"message": "Адключыць параметры кантэкстнага меню"
},
"disableContextMenuItemDesc": {
"message": "Параметры кантэкстнага меню забяспечваюць хуткі доступ да генератара пароляў і імёнам карыстальніка для сайта на бягучай укладцы."
"message": "Параметры кантэкстнага меню забяспечваюць хуткі доступ да генератара пароляў і ўліковых даных для сайта на бягучай укладцы."
},
"defaultUriMatchDetection": {
"message": "Выяўленне супадзення URI па змаўчанні",
"description": "Default URI match detection for auto-fill."
},
"defaultUriMatchDetectionDesc": {
"message": "Абярыце спосаб па змаўчанні, які выкарыстоўваецца пры вызначэнні адпаведнасці URI для імён карыстальніка пры выкананні такіх дзеянняў, як аўтаматычнае запаўненне."
"message": "Выберыце спосаб па змаўчанні, які выкарыстоўваецца пры вызначэнні адпаведнасці URI для ўліковых даных пры выкананні такіх дзеянняў, як аўтаматычнае запаўненне."
},
"theme": {
"message": "Тэма"
@ -606,9 +606,15 @@
"message": "УВАГА",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "Экспартуемы файл утрымлівае даныя вашага сховішча ў незашыфраваным фармаце. Яго не варта захоўваць ці адпраўляць па небяспечным каналам (напрыклад, па электроннай пошце). Выдаліце яго адразу пасля выкарыстання."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "Увядзіце ваш асноўны пароль для экспарту даных са сховішча."
},
@ -709,7 +715,7 @@
"message": "Гігіена пароляў, здароўе ўліковага запісу і справаздачы аб уцечках даных для забеспячэння бяспекі вашага сховішча."
},
"ppremiumSignUpTotp": {
"message": "TOTP-генератар кодаў (2ФА) для імён карыстальнікаў вашага сховішча."
"message": "TOTP-генератар кодаў (2ФА) для ўліковых даных вашага сховішча."
},
"ppremiumSignUpSupport": {
"message": "Прыярытэтная падтрымка."
@ -745,7 +751,7 @@
"message": "Адключыць аўтаматычнае капіяванне TOTP"
},
"disableAutoTotpCopyDesc": {
"message": "Калі да вашага імя карыстальніка прымацаваны ключ праверкі сапраўднасці, то код пацвярджэння TOTP будзе скапіяваны пры аўтазапаўненні імені карыстальніка."
"message": "Калі да вашых уліковых даных прымацаваны ключ праверкі сапраўднасці, то код пацвярджэння TOTP будзе скапіяваны пры аўтазапаўненні ўліковых даных."
},
"premiumRequired": {
"message": "Патрабуецца прэміяльны статус"
@ -796,7 +802,7 @@
"message": "У гэтага ўліковага запісу ўключаны двухэтапны ўваход, аднак ні адзін з наладжаных варыянтаў не падтрымліваецца гэтым вэб-браўзерам."
},
"noTwoStepProviders2": {
"message": "Выкарыстоўвайце актуальын вэб-браўзар (напрыклад, Chrome) і/або дадайце дадатковыя варыянты праверкі сапраўднасці, якія падтрымліваюцца ў вэб-браўзерах (напрыклад, праграма для праверкі сапраўднасці)."
"message": "Выкарыстоўвайце актуальны вэб-браўзер (напрыклад, Chrome) і/або дадайце дадатковыя варыянты праверкі сапраўднасці, якія падтрымліваюцца ў вэб-браўзерах (напрыклад, праграма для праверкі сапраўднасці)."
},
"twoStepOptions": {
"message": "Параметры двухэтапнага ўваходу"
@ -883,19 +889,19 @@
"message": "Гэта эксперыментальная функцыя. Выкарыстоўвайце на свой страх і рызыку."
},
"commandOpenPopup": {
"message": "Адчыніць сховішча ва ўсплываючым акне"
"message": "Адкрыць сховішча ва ўсплывальным акне"
},
"commandOpenSidebar": {
"message": "Адчыніць сховішча ў бакавой панэлі"
"message": "Адкрыць сховішча ў бакавой панэлі"
},
"commandAutofillDesc": {
"message": "Аўтазапаўненне апошняга скарыстанага імя карыстальніка для бягучага вэб-сайта."
"message": "Аўтазапаўненне апошніх скарыстаных уліковых даных для бягучага вэб-сайта."
},
"commandGeneratePasswordDesc": {
"message": "Стварыць і капіяваць новы выпадковы парольу буфер абмену."
},
"commandLockVaultDesc": {
"message": "Lock the vault"
"message": "Заблакіраваць сховішча"
},
"privateModeMessage": {
"message": "На жаль, гэта акно недаступна ў прыватным акне гэтага браўзара."
@ -1069,10 +1075,10 @@
"message": "Тып"
},
"typeLogin": {
"message": "Імя карыстальніка"
"message": "Уліковыя даныя"
},
"typeLogins": {
"message": "Імёны карыстальніка"
"message": "Уліковыя даныя"
},
"typeSecureNote": {
"message": "Бяспечныя нататкі"
@ -1108,7 +1114,7 @@
"message": "Пасведчанні"
},
"logins": {
"message": "Імёны карыстальніка"
"message": "Уліковыя даныя"
},
"secureNotes": {
"message": "Бяспечныя нататкі"
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Ваша сховішча заблакіравана. Каб працягнуць, увядзіце PIN-код."
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "Блакіраваць асноўным паролем пры перазапуску браўзера"
},
@ -1266,7 +1281,7 @@
"message": "На налады генератара ўплываюць адна або некалькі палітык арганізацый."
},
"vaultTimeoutAction": {
"message": "Дзеянне пры таймаўце"
"message": "Дзеянне пры тайм-аўце"
},
"lock": {
"message": "Заблакіраваць",
@ -1292,25 +1307,25 @@
"message": "Аднавіць элемент"
},
"restoreItemConfirmation": {
"message": "Вы сапраўды жадаеце аднавіць гэты запіс?"
"message": "Вы сапраўды жадаеце аднавіць гэты элемент?"
},
"restoredItem": {
"message": "Элемент адноўлены"
},
"vaultTimeoutLogOutConfirmation": {
"message": "Выхад з сістэмы выдаліць доступ да сховішча і патрабуе анлайн-аутэнтыфікацію па заканчэнні перыяду чакання. Вы сапраўды жадаеце ўключыць гэтую наладу?"
"message": "Выхад з сістэмы выдаліць доступ да сховішча і спатрабуе праверку сапраўднасці анлайн па заканчэнні перыяду чакання. Вы сапраўды жадаеце ўключыць гэтую наладу?"
},
"vaultTimeoutLogOutConfirmationTitle": {
"message": "Пацвярджэнне дзеяння для таймаута"
"message": "Пацвярджэнне дзеяння для тайм-аута"
},
"autoFillAndSave": {
"message": "Запоўніць і захаваць"
},
"autoFillSuccessAndSavedUri": {
"message": "Auto-filled Item and Saved URI"
"message": "Аўтазапоўнены элемент і захаваны URI"
},
"autoFillSuccess": {
"message": "Auto-filled Item"
"message": "Аўтазапоўнены элемент"
},
"setMasterPassword": {
"message": "Задаць асноўны пароль"
@ -1319,7 +1334,7 @@
"message": "Згодна з адной або некалькімі палітыкамі арганізацыі неабходна, каб ваш асноўны пароль адказваў наступным патрабаванням:"
},
"policyInEffectMinComplexity": {
"message": "Minimum complexity score of $SCORE$",
"message": "Мінімальны ўзровень складанасці $SCORE$",
"placeholders": {
"score": {
"content": "$1",
@ -1328,7 +1343,7 @@
}
},
"policyInEffectMinLength": {
"message": "Minimum length of $LENGTH$",
"message": "Мінімальная даўжыня $LENGTH$",
"placeholders": {
"length": {
"content": "$1",
@ -1337,16 +1352,16 @@
}
},
"policyInEffectUppercase": {
"message": "Contain one or more uppercase characters"
"message": "Уключыць адну ці больш прапісных літар"
},
"policyInEffectLowercase": {
"message": "Contain one or more lowercase characters"
"message": "Уключыць адну ці больш малых літар"
},
"policyInEffectNumbers": {
"message": "Contain one or more numbers"
"message": "Уключыць адну ці больш лічбаў"
},
"policyInEffectSpecial": {
"message": "Contain one or more of the following special characters $CHARS$",
"message": "Уключаць хаця б адзін з наступных спецыяльных сімвалаў $CHARS$",
"placeholders": {
"chars": {
"content": "$1",
@ -1358,15 +1373,81 @@
"message": "Ваш новы асноўны пароль не адпавядае патрабаванням палітыкі арганізацыі."
},
"acceptPolicies": {
"message": "By checking this box you agree to the following:"
"message": "Ставіўшы гэты сцяжок вы пагаджаецеся з наступным:"
},
"acceptPoliciesError": {
"message": "Terms of Service and Privacy Policy have not been acknowledged."
"message": "Умовы выкарыстання і Палітыка прыватнасці не былі пацверджаны."
},
"termsOfService": {
"message": "Terms of Service"
"message": "Умовы выкарыстання"
},
"privacyPolicy": {
"message": "Privacy Policy"
"message": "Палітыка прыватнасці"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "ОК"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

View File

@ -606,9 +606,15 @@
"message": "ВНИМАНИЕ",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "Данните от трезора ви ще се изнесат в незащитен формат. Не го пращайте по незащитени канали като е-поща. Изтрийте файла незабавно след като свършите работата си с него."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "Въведете главната парола, за да изнесете данните."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Трезорът е заключен. Въведете своя ПИН, за да продължите."
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "Заключване с главната парола при повторно пускане на браузъра"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Privacy Policy"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

View File

@ -606,9 +606,15 @@
"message": "ADVERTIMENT",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirma l'exportació de la Caixa forta"
},
"exportWarningDesc": {
"message": "Aquesta exportació conté les dades de la vostra caixa forta en un format no xifrat. No hauríeu d'emmagatzemar o enviar el fitxer exportat a través de canals no segurs (com ara el correu electrònic). Elimineu-lo immediatament després d'haver acabat d'usar-lo."
},
"encExportWarningDesc": {
"message": "Aquesta exportació xifra les vostres dades mitjançant la vostra clau de xifratge. Si alguna vegada gireu eixa clau, hauríeu d'exportar de nou, ja que no podreu desxifrar aquest fitxer d'exportació."
},
"exportMasterPassword": {
"message": "Introduïu la contrasenya mestra per exportar les dades de la caixa forta."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "La caixa forta està bloquejada. Verifiqueu El codi PIN per continuar."
},
"unlockWithBiometrics": {
"message": "Desbloqueja amb biomètrica"
},
"awaitDesktop": {
"message": "Sespera confirmació des de lescriptori"
},
"awaitDesktopDesc": {
"message": "Confirmeu que utilitzeu la biomètrica a l'aplicació Bitwarden Desktop per habilitar la biomètrica per al navegador."
},
"lockWithMasterPassOnRestart": {
"message": "Bloqueja amb la contrasenya mestra en reiniciar el navegador"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Declaració de privadesa"
},
"hintEqualsPassword": {
"message": "El vostre suggeriment de contrasenya no pot ser el mateix que la vostra contrasenya."
},
"ok": {
"message": "Dacord"
},
"desktopSyncVerificationTitle": {
"message": "Verificació de sincronització d'escriptori"
},
"desktopIntegrationVerificationText": {
"message": "Verifiqueu que l'aplicació d'escriptori mostre aquesta empremta digital:"
},
"desktopIntegrationDisabledTitle": {
"message": "La integració en el navegador no està habilitada"
},
"desktopIntegrationDisabledDesc": {
"message": "La integració del navegador no està habilitada a l'aplicació Bitwarden Desktop. Activeu-la a la configuració de l'aplicació d'escriptori."
},
"startDesktopTitle": {
"message": "Inicia l'aplicació Bitwarden Desktop"
},
"startDesktopDesc": {
"message": "Per poder utilitzar aquesta funció, cal iniciar l'aplicació Bitwarden Desktop."
},
"errorEnableBiometricTitle": {
"message": "No es pot habilitar la biomètrica"
},
"errorEnableBiometricDesc": {
"message": "L'aplicació d'escriptori ha cancel·lat l'acció"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "L'aplicació d'escriptori ha invalidat el canal de comunicació segur. Torneu a provar aquesta operació"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "S'ha interromput la comunicació d'escriptori"
},
"nativeMessagingWrongUserDesc": {
"message": "L'aplicació d'escriptori està iniciada en un compte diferent. Assegureu-vos que totes dues aplicacions estiguen connectades al mateix compte."
},
"nativeMessagingWrongUserTitle": {
"message": "El compte no coincideix"
},
"biometricsNotEnabledTitle": {
"message": "La biomètrica no està habilitada"
},
"biometricsNotEnabledDesc": {
"message": "La biometria del navegador primer necessita habilitar la biomètrica descriptori a la configuració."
},
"biometricsNotSupportedTitle": {
"message": "La biomètrica no és compatible"
},
"biometricsNotSupportedDesc": {
"message": "La biometria del navegador no és compatible amb aquest dispositiu."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "A causa d'una política empresarial, no podeu guardar elements a la vostra caixa forta personal. Canvieu l'opció Propietat en organització i trieu entre les col·leccions disponibles."
},
"personalOwnershipPolicyInEffect": {
"message": "Una política dorganització afecta les vostres opcions de propietat."
}
}

View File

@ -606,9 +606,15 @@
"message": "VAROVÁNÍ",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "Tento export obsahuje data vašeho trezoru v nezašifrovaném formátu. Soubor exportu byste neměli ukládat ani odesílat přes nezabezpečené kanály (např. e-mailem). Odstraňte jej okamžitě po jeho použití."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "Zadejte své hlavní heslo pro export dat."
},
@ -895,7 +901,7 @@
"message": "Vygenerovat a zkopírovat nové náhodné heslo do schránky."
},
"commandLockVaultDesc": {
"message": "Lock the vault"
"message": "Zamknout trezor"
},
"privateModeMessage": {
"message": "Bohužel toto okno není v tomto prohlížeči k dispozici v soukromém režimu."
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Váš trezor je uzamčen. Pro pokračování musíte zadat PIN."
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "Zamknout trezor při restartu prohlížeče pomocí hlavního hesla"
},
@ -1358,15 +1373,81 @@
"message": "Vaše nové hlavní heslo nesplňuje požadavky zásad."
},
"acceptPolicies": {
"message": "By checking this box you agree to the following:"
"message": "Zaškrtnutím tohoto políčka souhlasím s následujícím:"
},
"acceptPoliciesError": {
"message": "Terms of Service and Privacy Policy have not been acknowledged."
"message": "Podmínky služby a zásady ochrany osobních údajů nebyly uznány."
},
"termsOfService": {
"message": "Terms of Service"
"message": "Podmínky použití"
},
"privacyPolicy": {
"message": "Privacy Policy"
"message": "Zásady ochrany osobních údajů"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

View File

@ -498,7 +498,7 @@
"message": "Redigerede element"
},
"deleteItemConfirmation": {
"message": "Er du sikker på, at du vil slette dette element?"
"message": "Er du sikker på, at du sende til papirkurven?"
},
"deletedItem": {
"message": "Element sendt til papirkurven"
@ -606,9 +606,15 @@
"message": "ADVARSEL",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Bekræft eksport af boks"
},
"exportWarningDesc": {
"message": "Denne eksport indeholder dine boksdata i ukrypteret form. Du bør ikke gemme eller sende den eksporterede fil over usikre kanaler (f.eks. e-mail). Slet den straks efter at du er færdig med at bruge den."
},
"encExportWarningDesc": {
"message": "Denne eksport krypterer dine data vha. din kontos krypteringsnøgle. Roterer du på et tidspunkt denne krypteringsnøgle, skal du eksportere igen, da du ellers ikke vil kunne dekryptere denne eksportfil."
},
"exportMasterPassword": {
"message": "Indtast din hovedadgangskode for at eksportere dine data fra boksen."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Din boks er låst. Bekræft din pinkode for at fortsætte."
},
"unlockWithBiometrics": {
"message": "Lås op med biometri"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "Lås med hovedadgangskode ved genstart af browseren"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Fortrolighedspolitik"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

View File

@ -498,7 +498,7 @@
"message": "Eintrag bearbeitet"
},
"deleteItemConfirmation": {
"message": "Soll dieser Eintrag wirklich gelöscht werden?"
"message": "Soll dieser Eintrag wirklich in den Papierkorb verschoben werden?"
},
"deletedItem": {
"message": "Eintrag in Papierkorb legen"
@ -606,9 +606,15 @@
"message": "ACHTUNG",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Tresor-Export bestätigen"
},
"exportWarningDesc": {
"message": "Dieser Export enthält deine unverschlüsselten Daten im Csv-Format. Du solltest sie nicht speichern oder über unsichere Kanäle (z. B. E-Mail) senden. Lösche sie sofort nach ihrer Verwendung."
},
"encExportWarningDesc": {
"message": "Dieser Export verschlüsselt Ihre Daten mit dem Verschlüsselungscode Ihres Kontos. Falls Sie Ihren Verschlüsselungscode erneuern, sollten Sie den Export erneut durchführen, da Sie die zuvor erstellte Datei ansonsten nicht mehr entschlüsseln können."
},
"exportMasterPassword": {
"message": "Gib das Masterpasswort ein, um deine Tresordaten zu exportieren."
},
@ -1099,7 +1105,7 @@
"message": "In einem neuen Fenster öffnen"
},
"refresh": {
"message": "Aktuaklisieren"
"message": "Aktualisieren"
},
"cards": {
"message": "Karten"
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Dein Tresor ist gesperrt. Gebe deinen PIN-Code ein um fortzufahren."
},
"unlockWithBiometrics": {
"message": "Mit Biometrie entsperren"
},
"awaitDesktop": {
"message": "Warte auf Bestätigung vom Desktop"
},
"awaitDesktopDesc": {
"message": "Bitte bestätigen Sie die Verwendung von Biometrie in der Bitwarden Desktop-Anwendung, um Biometrie für den Browser zu aktivieren."
},
"lockWithMasterPassOnRestart": {
"message": "Bei Neustart des Browsers mit Master-Passwort sperren"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Datenschutzbestimmungen"
},
"hintEqualsPassword": {
"message": "Ihr Passwort-Hinweis darf nicht identisch mit Ihrem Passwort sein."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Desktop-Sync-Überprüfung"
},
"desktopIntegrationVerificationText": {
"message": "Bitte bestätigen Sie, dass die Desktop-Anwendung diesen Prüfschlüssel anzeigt: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser-Einbindung ist nicht aktiviert"
},
"desktopIntegrationDisabledDesc": {
"message": "Die Browser-Einbindung ist in der Bitwarden Desktop-Anwendung nicht aktiviert. Bitte aktivieren Sie diese in den Einstellungen innerhalb der Desktop-Anwendung."
},
"startDesktopTitle": {
"message": "Bitwarden Desktop-Anwendung starten"
},
"startDesktopDesc": {
"message": "Die Bitwarden Desktop-Anwendung muss gestartet werden, bevor diese Funktion verwendet werden kann."
},
"errorEnableBiometricTitle": {
"message": "Biometrie kann nicht aktiviert werden"
},
"errorEnableBiometricDesc": {
"message": "Die Aktion wurde von der Desktop-Anwendung abgebrochen"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Die Desktop-Anwendung hat den sicheren Kommunikationskanal für ungültig erklärt. Bitte starten Sie den Vorgang erneut"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop-Kommunikation unterbrochen"
},
"nativeMessagingWrongUserDesc": {
"message": "Die Desktop-Anwendung ist in ein anderes Konto eingeloggt. Bitte stellen Sie sicher, dass beide Anwendungen mit demselben Konto angemeldet sind."
},
"nativeMessagingWrongUserTitle": {
"message": "Konten stimmen nicht überein"
},
"biometricsNotEnabledTitle": {
"message": "Biometrie ist nicht aktiviert"
},
"biometricsNotEnabledDesc": {
"message": "Biometrie im Browser setzt voraus, dass Biometrie zuerst in den Einstellungen der Desktop-Anwendung aktiviert ist."
},
"biometricsNotSupportedTitle": {
"message": "Biometrie wird nicht unterstützt"
},
"biometricsNotSupportedDesc": {
"message": "Biometrie im Browser wird auf diesem Gerät nicht unterstützt."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Berechtigung nicht erteilt"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Ohne die Berechtigung zur Kommunikation mit der Bitwarden Desktop-Anwendung können wir keine Biometrie in der Browser-Erweiterung anbieten. Bitte versuchen Sie es erneut."
},
"personalOwnershipSubmitError": {
"message": "Aufgrund einer Unternehmensrichtlinie dürfen Sie keine Einträge in Ihrem persönlichen Tresor speichern. Ändern Sie die Eigentümer-Option in eine Organisation und wählen Sie aus den verfügbaren Sammlungen."
},
"personalOwnershipPolicyInEffect": {
"message": "Eine Organisationsrichtlinie beeinflusst Ihre Eigentümer-Optionen."
}
}

View File

@ -20,7 +20,7 @@
"message": "Σύνδεση"
},
"enterpriseSingleSignOn": {
"message": "Enterprise Single Sign-On"
"message": "Ενιαία είσοδος για επιχειρήσεις"
},
"cancel": {
"message": "Ακύρωση"
@ -606,9 +606,15 @@
"message": "ΠΡΟΕΙΔΟΠΟΙΗΣΗ",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Επιβεβαίωση εξαγωγής Vault"
},
"exportWarningDesc": {
"message": "Αυτή η εξαγωγή περιέχει τα δεδομένα σε μη κρυπτογραφημένη μορφή. Δεν πρέπει να αποθηκεύετε ή να στείλετε το εξαγόμενο αρχείο μέσω μη ασφαλών τρόπων (όπως μέσω email). Διαγράψτε το αμέσως μόλις τελειώσετε με τη χρήση του."
},
"encExportWarningDesc": {
"message": "Αυτή η εξαγωγή κρυπτογραφεί τα δεδομένα σας χρησιμοποιώντας το κλειδί κρυπτογράφησης του λογαριασμού σας. Εάν ποτέ περιστρέψετε το κλειδί κρυπτογράφησης του λογαριασμού σας, θα πρέπει να κάνετε εξαγωγή ξανά, καθώς δεν θα μπορείτε να αποκρυπτογραφήσετε αυτό το αρχείο εξαγωγής."
},
"exportMasterPassword": {
"message": "Πληκτρολογήστε τον κύριο κωδικό για εξαγωγή δεδομένων vault."
},
@ -895,7 +901,7 @@
"message": "Δημιουργήστε και αντιγράψτε έναν νέο τυχαίο κωδικό πρόσβασης στο πρόχειρο"
},
"commandLockVaultDesc": {
"message": "Lock the vault"
"message": "Κλειδώστε το vault"
},
"privateModeMessage": {
"message": "Δυστυχώς, αυτό το παράθυρο δεν είναι διαθέσιμο σε ιδιωτική λειτουργία για αυτό το πρόγραμμα περιήγησης."
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Το vault σας είναι κλειδωμένο. Επαληθεύστε τον κωδικό PIN για να συνεχίσετε."
},
"unlockWithBiometrics": {
"message": "Ξεκλείδωμα με βιομετρικά στοιχεία"
},
"awaitDesktop": {
"message": "Αναμονή επιβεβαίωσης από την επιφάνεια εργασίας"
},
"awaitDesktopDesc": {
"message": "Παρακαλώ επιβεβαιώστε τη χρήση βιομετρικών στοιχείων στην εφαρμογή Bitwarden Desktop για να ενεργοποιήσετε τα βιομετρικά στοιχεία για το πρόγραμμα περιήγησης."
},
"lockWithMasterPassOnRestart": {
"message": "Κλείδωμα με κύριο κωδικό πρόσβασης στην επανεκκίνηση του προγράμματος περιήγησης"
},
@ -1304,22 +1319,22 @@
"message": "Επιβεβαίωση Ενέργειας Χρονικού Ορίου"
},
"autoFillAndSave": {
"message": "Auto-fill and Save"
"message": "Αυτόματη συμπλήρωση και αποθήκευση"
},
"autoFillSuccessAndSavedUri": {
"message": "Auto-filled Item and Saved URI"
"message": "Αυτόματη συμπλήρωση στοιχείου και αποθηκευμένο URI"
},
"autoFillSuccess": {
"message": "Auto-filled Item"
"message": "Αυτόματη συμπλήρωση αντικειμένου"
},
"setMasterPassword": {
"message": "Set Master Password"
"message": "Ορισμός Κύριου Κωδικού"
},
"masterPasswordPolicyInEffect": {
"message": "One or more organization policies require your master password to meet the following requirements:"
"message": "Σε μία ή περισσότερες πολιτικές του οργανισμού απαιτείται ο κύριος κωδικός να πληρεί τις ακόλουθες απαιτήσεις:"
},
"policyInEffectMinComplexity": {
"message": "Minimum complexity score of $SCORE$",
"message": "Ελάχιστος βαθμός πολυπλοκότητας: $SCORE$",
"placeholders": {
"score": {
"content": "$1",
@ -1328,7 +1343,7 @@
}
},
"policyInEffectMinLength": {
"message": "Minimum length of $LENGTH$",
"message": "Ελάχιστο μήκος: $LENGTH$",
"placeholders": {
"length": {
"content": "$1",
@ -1337,16 +1352,16 @@
}
},
"policyInEffectUppercase": {
"message": "Contain one or more uppercase characters"
"message": "Να περιέχει έναν ή περισσότερους κεφαλαίους χαρακτήρες"
},
"policyInEffectLowercase": {
"message": "Contain one or more lowercase characters"
"message": "Να περιέχει έναν ή περισσότερους πεζούς χαρακτήρες"
},
"policyInEffectNumbers": {
"message": "Contain one or more numbers"
"message": "Να περιέχει έναν ή περισσότερους αριθμούς"
},
"policyInEffectSpecial": {
"message": "Contain one or more of the following special characters $CHARS$",
"message": "Να περιέχει έναν ή περισσότερους από τους ακόλουθους ειδικούς χαρακτήρες $CHARS$",
"placeholders": {
"chars": {
"content": "$1",
@ -1355,18 +1370,84 @@
}
},
"masterPasswordPolicyRequirementsNotMet": {
"message": "Your new master password does not meet the policy requirements."
"message": "Ο νέος κύριος κωδικός δεν πληροί τις απαιτήσεις πολιτικής."
},
"acceptPolicies": {
"message": "By checking this box you agree to the following:"
"message": "Επιλέγοντας αυτό το πλαίσιο, συμφωνείτε με τα εξής:"
},
"acceptPoliciesError": {
"message": "Terms of Service and Privacy Policy have not been acknowledged."
"message": "Οι Όροι Παροχής Υπηρεσιών και η Πολιτική Απορρήτου δεν έχουν αναγνωριστεί."
},
"termsOfService": {
"message": "Terms of Service"
"message": "Όροι Χρήσης"
},
"privacyPolicy": {
"message": "Privacy Policy"
"message": "Πολιτική Απορρήτου"
},
"hintEqualsPassword": {
"message": "Η υπόδειξη κωδικού πρόσβασης, δεν μπορεί να είναι η ίδια με τον κωδικό πρόσβασης σας."
},
"ok": {
"message": "Οκ"
},
"desktopSyncVerificationTitle": {
"message": "Επιβεβαίωση συγχρονισμού επιφάνειας εργασίας"
},
"desktopIntegrationVerificationText": {
"message": "Παρακαλώ επιβεβαιώστε ότι η εφαρμογή επιφάνειας εργασίας εμφανίζει αυτό το αποτύπωμα: "
},
"desktopIntegrationDisabledTitle": {
"message": "Η ενσωμάτωση του περιηγητή δεν είναι ενεργοποιημένη"
},
"desktopIntegrationDisabledDesc": {
"message": "Η ενσωμάτωση του προγράμματος περιήγησης δεν είναι ενεργοποιημένη στην εφαρμογή Bitwarden Desktop. Παρακαλώ ενεργοποιήστε την στις ρυθμίσεις της εφαρμογής desktop."
},
"startDesktopTitle": {
"message": "Ξεκινήστε την εφαρμογή Bitwarden Επιφάνεια εργασίας"
},
"startDesktopDesc": {
"message": "Η εφαρμογή Bitwarden Desktop πρέπει να ξεκινήσει για να μπορεί να χρησιμοποιηθεί αυτή η λειτουργία."
},
"errorEnableBiometricTitle": {
"message": "Αδυναμία ενεργοποίησης βιομετρικών στοιχείων"
},
"errorEnableBiometricDesc": {
"message": "Η ενέργεια ακυρώθηκε από την εφαρμογή επιφάνειας εργασίας"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Η εφαρμογή επιφάνειας εργασίας ακυρώνει το ασφαλές κανάλι επικοινωνίας. Παρακαλώ δοκιμάστε ξανά αυτή τη λειτουργία"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Η επικοινωνία επιφάνειας εργασίας διακόπηκε"
},
"nativeMessagingWrongUserDesc": {
"message": "Η εφαρμογή επιφάνειας εργασίας είναι συνδεδεμένη σε διαφορετικό λογαριασμό. Παρακαλώ βεβαιωθείτε ότι και οι δύο εφαρμογές είναι συνδεδεμένες στον ίδιο λογαριασμό."
},
"nativeMessagingWrongUserTitle": {
"message": "Απόρριψη λογαριασμού"
},
"biometricsNotEnabledTitle": {
"message": "Η βιομετρική δεν είναι ενεργοποιημένη"
},
"biometricsNotEnabledDesc": {
"message": "Τα βιομετρικά στοιχεία του προγράμματος περιήγησης απαιτούν την ενεργοποίηση της βιομετρικής επιφάνειας εργασίας στις ρυθμίσεις πρώτα."
},
"biometricsNotSupportedTitle": {
"message": "Δεν υποστηρίζεται η βιομετρική"
},
"biometricsNotSupportedDesc": {
"message": "Τα βιομετρικά στοιχεία του προγράμματος περιήγησης δεν υποστηρίζονται σε αυτήν τη συσκευή."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Λόγω μιας Πολιτικής Επιχειρήσεων, δεν επιτρέπεται η αποθήκευση στοιχείων στο προσωπικό σας vault. Αλλάξτε την επιλογή Ιδιοκτησίας σε έναν οργανισμό και επιλέξτε από τις διαθέσιμες Συλλογές."
},
"personalOwnershipPolicyInEffect": {
"message": "Μια πολιτική του οργανισμού, επηρεάζει τις επιλογές ιδιοκτησίας σας."
}
}

View File

@ -1420,6 +1420,12 @@
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
@ -1432,10 +1438,41 @@
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessagingPermissionPromptTitle": {
"message": "Additional Permission required"
},
"nativeMessagingPermissionPromptDesc": {
"message": "To enable browser biometrics we need to request an additional permission. Once allowed, the browser extension will reload and you may need to unlock your vault again."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
},
"excludedDomains": {
"message": "Excluded Domains"
},
"excludedDomainsDesc": {
"message": "Bitwarden will not ask to save login details for these domains. You must refresh the page for changes to take effect."
},
"excludedDomainsInvalidDomain": {
"message": "$DOMAIN$ is not a valid domain",
"placeholders": {
"domain": {
"content": "$1",
"example": "googlecom"
}
}
},
"send": {
"message": "Send",
"description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated."
}
}

View File

@ -606,9 +606,15 @@
"message": "WARNING",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "This export contains your vault data in an unencrypted format. You should not store or send the exported file over insecure channels (such as email). Delete it immediately after you are done using it."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "Enter your master password to export your vault data."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Your vault is locked. Verify your PIN code to continue."
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "Lock with master password on browser restart"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Privacy policy"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "OK"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was cancelled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account mismatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organisation and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organisation policy is affecting your ownership options."
}
}

View File

@ -101,7 +101,7 @@
"message": "There are no logins available to auto-fill for the current browser tab."
},
"addLogin": {
"message": "ഒരു പ്രവേശനം ചേർക്കുക"
"message": "Add a login"
},
"addItem": {
"message": "Add item"
@ -136,10 +136,10 @@
"description": "A 'fingerprint phrase' is a unique word phrase (similar to a passphrase) that a user can use to authenticate their public key with another user, for the purposes of sharing."
},
"twoStepLogin": {
"message": "രണ്ട്-ഘട്ട പ്രവേശനം"
"message": "Two-step login"
},
"logOut": {
"message": "ലോഗ് ഔട്ട്"
"message": "Log out"
},
"about": {
"message": "About"
@ -606,9 +606,15 @@
"message": "WARNING",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "This export contains your vault data in an unencrypted format. You should not store or send the exported file over insecure channels (such as email). Delete it immediately after you are done using it."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "Enter your master password to export your vault data."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Your vault is locked. Verify your PIN code to continue."
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "Lock with master password on browser restart"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Privacy Policy"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "OK"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

View File

@ -606,9 +606,15 @@
"message": "ADVERTENCIA",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "Esta exportación contiene los datos de tu caja fuerte en un formato no cifrado. No deberías almacenar o enviar el archivo exportado por canales no seguros (como el correo electrónico). Elimínalo inmediatamente cuando termines de utilizarlo."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "Introduce tu contraseña maestra para exportar la información de tu caja fuerte."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Tu caja fuerte está bloqueada. Verifica tu código PIN para continuar."
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "Bloquear con contraseña maestra al reiniciar el navegador"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Política de privacidad"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

View File

@ -246,7 +246,7 @@
"message": "Puuduvad kirjed, mida kuvada."
},
"itemInformation": {
"message": "Kirje informatsioon"
"message": "Kirje andmed"
},
"username": {
"message": "Kasutajanimi"
@ -331,7 +331,7 @@
"message": "Hoidla ajalõpp"
},
"lockNow": {
"message": "Kliki paroolihoidla lukustamiseks"
"message": "Lukusta paroolihoidla"
},
"immediately": {
"message": "Koheselt"
@ -403,7 +403,7 @@
"message": "Ülemparooli vihje saadeti sinu e-postile."
},
"verificationCodeRequired": {
"message": "Nõuatav on kinnituskood."
"message": "Nõutav on kinnituskood."
},
"valueCopied": {
"message": "$VALUE$ on kopeeritud",
@ -535,7 +535,7 @@
"message": "Krediit- ja teiste kaartide andmed kuvatakse vaikeseadena \"Kaart\" vaates, et neid oleks lihtsam sisestada."
},
"dontShowIdentitiesCurrentTab": {
"message": "Ära kuva \"Kaart\" vaates Identiteete"
"message": "Ära kuva \"Kaart\" vaates identiteete"
},
"dontShowIdentitiesCurrentTabDesc": {
"message": "Identiteediandmeid kuvatakse vaikeseadena \"Kaart\" vaates, et neid oleks lihtsam sisestada."
@ -576,11 +576,11 @@
"message": "Parema kliki menüü abil saad kiiresti parooli genereerida ja konkreetse veebilehe kasutajakonto andmeid sisestada."
},
"defaultUriMatchDetection": {
"message": "Vaikse URL-i sobivuse tuvastamine",
"message": "Vaikse URI sobivuse tuvastamine",
"description": "Default URI match detection for auto-fill."
},
"defaultUriMatchDetectionDesc": {
"message": "Vali vaikeviis, kuidas kirje ja URL-i sobivus tuvastatakse. Seda kasutatakse näiteks siis, kui lehele üritatakse automaatselt andmeid sisestada."
"message": "Vali vaikeviis, kuidas kirje ja URI sobivus tuvastatakse. Seda kasutatakse näiteks siis, kui lehele üritatakse automaatselt andmeid sisestada."
},
"theme": {
"message": "Teema"
@ -606,9 +606,15 @@
"message": "HOIATUS",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Hoidla eksportimise kinnitamine"
},
"exportWarningDesc": {
"message": "Eksporditav fail sisaldab hoidla sisu, mis on krüpteeringuta. Seda faili ei tohiks kaua käidelda ning mitte mingil juhul ebaturvaliselt saata (näiteks e-postiga). Kustuta see koheselt pärast kasutamist."
},
"encExportWarningDesc": {
"message": "Eksporditavate andmete krüpteerimiseks kasutatakse kontol olevat krüpteerimisvõtit. Kui sa peaksid seda krüpteerimise võtit roteerima, ei saa sa järgnevalt eksporditavaid andmeid enam dekrüpteerida."
},
"exportMasterPassword": {
"message": "Hoidlas olevate andmete eksportimiseks on vajalik ülemparooli sisestamine."
},
@ -709,7 +715,7 @@
"message": "Parooli hügieen, konto seisukord ja andmelekete raportid aitavad hoidlat turvalisena hoida."
},
"ppremiumSignUpTotp": {
"message": "TOTP kinnituskoodide (2FA) genereeria hoidlas olevatele kasutajakontodele."
"message": "TOTP kinnituskoodide (2FA) genereerija hoidlas olevatele kasutajakontodele."
},
"ppremiumSignUpSupport": {
"message": "Kiirema kasutajatoe."
@ -895,7 +901,7 @@
"message": "Loo ja kopeeri uus juhuslikult koostatud parool lõikepuhvrisse."
},
"commandLockVaultDesc": {
"message": "Lock the vault"
"message": "Lukusta hoidla"
},
"privateModeMessage": {
"message": "Kahjuks ei toeta kasutatav brauser seda akent privaatses režiimis."
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Hoidla on lukus. Jätkamiseks sisesta PIN kood."
},
"unlockWithBiometrics": {
"message": "Ava biomeetriaga"
},
"awaitDesktop": {
"message": "Kinnituse ootamine töölaua rakenduselt"
},
"awaitDesktopDesc": {
"message": "Kinnitamiseks kasuta biomeetrilist lahtilukustamist Bitwardeni töölaua rakenduses."
},
"lockWithMasterPassOnRestart": {
"message": "Nõua ülemparooli, kui brauser taaskäivitatakse"
},
@ -1358,15 +1373,81 @@
"message": "Uus ülemparool ei vasta eeskirjades väljatoodud tingimustele."
},
"acceptPolicies": {
"message": "By checking this box you agree to the following:"
"message": "Märkeruudu markeerimisel nõustud järgnevaga:"
},
"acceptPoliciesError": {
"message": "Terms of Service and Privacy Policy have not been acknowledged."
"message": "Kasutustingimuste ja Privaatsuspoliitikaga pole nõustutud."
},
"termsOfService": {
"message": "Terms of Service"
"message": "Kasutustingimused"
},
"privacyPolicy": {
"message": "Privacy Policy"
"message": "Privaatsuspoliitika"
},
"hintEqualsPassword": {
"message": "Parooli vihje ei saa olla sama mis parool ise."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Töölaua sünkroonimise kinnitamine"
},
"desktopIntegrationVerificationText": {
"message": "Veendu, et töölaua rakendus kuvab järgnevat sõrmejälge: "
},
"desktopIntegrationDisabledTitle": {
"message": "Brauseri integratsioon ei ole sisse lülitatud"
},
"desktopIntegrationDisabledDesc": {
"message": "Brauseri integratsioon ei ole Bitwardeni töölaua rakenduses sisse lülitatud. Palun lülita see töölaua rakenduse seadetes sisse."
},
"startDesktopTitle": {
"message": "Käivita Bitwardeni töölaua rakendus"
},
"startDesktopDesc": {
"message": "Enne selle funktsiooni sisselülitamist peab käivitama Bitwardeni töölaua rakenduse."
},
"errorEnableBiometricTitle": {
"message": "Biomeetria sisselülitamine nurjus"
},
"errorEnableBiometricDesc": {
"message": "Töölaua rakendus tühistas tegevuse"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Töölaua rakendusel ei õnnestunud turvalist ühenduskanalit luua. Palun proovi uuesti"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Suhtlus töölaua rakendusega katkes"
},
"nativeMessagingWrongUserDesc": {
"message": "Töölaua rakenduses on sisse logitud teise kasutajaga. Veendu, et oled mõlemas rakenduses sisse loginud ühe ja sama kontoga."
},
"nativeMessagingWrongUserTitle": {
"message": "Kontod ei ühti"
},
"biometricsNotEnabledTitle": {
"message": "Biomeetria ei ole sisse lülitatud"
},
"biometricsNotEnabledDesc": {
"message": "Biomeetria kasutamiseks brauseris peab esmalt Bitwardeni töölaua rakenduse seadetes biomeetria lubama."
},
"biometricsNotSupportedTitle": {
"message": "Biomeetriat ei toetata"
},
"biometricsNotSupportedDesc": {
"message": "Brauseri biomeetria ei ole selles seadmes toetatud"
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Ettevõtte poliitika tõttu ei saa sa andmeid oma personaalsesse Hoidlasse salvestada. Vali Omanikuks organisatsioon ja vali mõni saadavaolevatest Kogumikest."
},
"personalOwnershipPolicyInEffect": {
"message": "Organisatsiooni poliitika on seadnud omaniku valikutele piirangu."
}
}

View File

@ -606,9 +606,15 @@
"message": "اخطار",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "صادرات گاوصندوق را تأیید کنید"
},
"exportWarningDesc": {
"message": "This export contains your vault data in an unencrypted format. You should not store or send the exported file over unsecure channels (such as email). Delete it immediately after you are done using it."
},
"encExportWarningDesc": {
"message": "این صادرات با استفاده از کلید رمزگذاری حساب شما ، اطلاعات شما را رمزگذاری می کند. اگر حتی کلید رمزگذاری حساب خود را بچرخانید ، باید دوباره صادر کنید چون قادر به رمزگشایی این پرونده صادراتی نخواهید بود."
},
"exportMasterPassword": {
"message": "کلمه عبور اصلی خود را برای صادرات داده ها از گاوصندوقتان وارد کنید."
},
@ -895,7 +901,7 @@
"message": "یک کلمه عبور تصادفی جدید ایجاد کنید و آن را در کلیپ بورد کپی کنید."
},
"commandLockVaultDesc": {
"message": "Lock the vault"
"message": "قفل گاوصندوق"
},
"privateModeMessage": {
"message": "متأسفانه این پنجره در حالت خصوصی برای این مرورگر در دسترس نیست."
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "گاوصندوق شما قفل شده است. برای ادامه کد پین خود را تایید کنید."
},
"unlockWithBiometrics": {
"message": "با استفاده از بیومتریک باز کنید"
},
"awaitDesktop": {
"message": "در انتظار تأیید از دسکتاپ"
},
"awaitDesktopDesc": {
"message": "لطفاً استفاده از بیومتریک را در برنامه دسکتاپ Bitwarden تأیید کنید تا بیومتریک را برای مرورگر فعال کنید."
},
"lockWithMasterPassOnRestart": {
"message": "در زمان شروع مجدد مرورگر، با رمز اصلی قفل کن"
},
@ -1358,15 +1373,81 @@
"message": "کلمه عبور اصلی جدید شما از شرایط سیاست پپیروی نمی کند."
},
"acceptPolicies": {
"message": "By checking this box you agree to the following:"
"message": "با علامت زدن این کادر با موارد زیر موافقت می کنید:"
},
"acceptPoliciesError": {
"message": "Terms of Service and Privacy Policy have not been acknowledged."
"message": "شرایط خدمات و سیاست حفظ حریم خصوصی تأیید نشده است."
},
"termsOfService": {
"message": "Terms of Service"
"message": "شرایط استفاده از خدمات"
},
"privacyPolicy": {
"message": "Privacy Policy"
"message": "سیاست حفظ حریم خصوصی"
},
"hintEqualsPassword": {
"message": "نکته رمز عبور شما نمی تواند همان رمز عبور شما باشد."
},
"ok": {
"message": "تایید"
},
"desktopSyncVerificationTitle": {
"message": "تأیید همگام سازی دسکتاپ"
},
"desktopIntegrationVerificationText": {
"message": "لطفاً تأیید کنید که برنامه دسکتاپ این اثر انگشت را نشان می دهد:"
},
"desktopIntegrationDisabledTitle": {
"message": "ادغام مرورگر فعال نیست"
},
"desktopIntegrationDisabledDesc": {
"message": "ادغام مرورگر در برنامه دسکتاپ Bitwarden فعال نیست. لطفاً آن را در تنظیمات موجود در برنامه دسکتاپ فعال کنید."
},
"startDesktopTitle": {
"message": "برنامه دسکتاپ Bitwarden را شروع کنید"
},
"startDesktopDesc": {
"message": "قبل از استفاده از این عملکرد، برنامه دسکتاپ Bitwarden باید شروع شود."
},
"errorEnableBiometricTitle": {
"message": "بیومتریک فعال نیست"
},
"errorEnableBiometricDesc": {
"message": "فعالیت توسط برنامه دسکتاپ لغو شد"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "برنامه دسکتاپ کانال ارتباط امن را نامعتبر کرد. لطفاً این عملیات را دوباره امتحان کنید"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "ارتباط دسکتاپ قطع شد"
},
"nativeMessagingWrongUserDesc": {
"message": "برنامه دسکتاپ به یک حساب دیگر وارد شده است. لطفاً اطمینان حاصل کنید که هر دو برنامه به یک حساب وارد شده اند."
},
"nativeMessagingWrongUserTitle": {
"message": "عدم تطابق حساب"
},
"biometricsNotEnabledTitle": {
"message": "بیومتریک فعال نیست"
},
"biometricsNotEnabledDesc": {
"message": "بیومتریک مرورگر ابتدا نیاز به فعالسازی بیومتریک دسکتاپ در تنظیمات دارد."
},
"biometricsNotSupportedTitle": {
"message": "بیومتریک پشتیبانی نمی شود"
},
"biometricsNotSupportedDesc": {
"message": "بیومتریک مرورگر در این دستگاه پشتیبانی نمی شود."
},
"nativeMessaginPermissionErrorTitle": {
"message": "مجوز ارائه نشده است"
},
"nativeMessaginPermissionErrorDesc": {
"message": "بدون اجازه ارتباط با برنامه دسکتاپ Bitwarden ، نمی توانیم بیومتریک را در افزونه مرورگر ارائه دهیم. لطفا دوباره تلاش کنید."
},
"personalOwnershipSubmitError": {
"message": "به دلیل خط مشی Enterprise ، برای ذخیره موارد در گاوصندوق شخصی خود محدود شده اید. گزینه مالکیت را به یک سازمان تغییر دهید و مجموعه های موجود را انتخاب کنید."
},
"personalOwnershipPolicyInEffect": {
"message": "خط مشی سازمانی بر تنظیمات مالکیت شما تأثیر می گذارد."
}
}

File diff suppressed because it is too large Load Diff

View File

@ -498,7 +498,7 @@
"message": "Identifiant modifié"
},
"deleteItemConfirmation": {
"message": "Êtes-vous sûr(e) de vouloir supprimer cet identifiant ?"
"message": "Êtes-vous sûr•e de vouloir supprimer cet identifiant ?"
},
"deletedItem": {
"message": "L'élément a été envoyé dans la corbeille"
@ -606,9 +606,15 @@
"message": "AVERTISSEMENT",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirmer l'export du coffre"
},
"exportWarningDesc": {
"message": "Cet export contient les données de votre coffre dans un format non chiffré. Vous ne devriez ni le stocker ni l'envoyer via des canaux non sécurisés (tel que l'e-mail). Supprimez-le immédiatement après l'avoir utilisé."
},
"encExportWarningDesc": {
"message": "Cet export chiffre vos données en utilisant la clé de chiffrement de votre compte. Si jamais vous modifiez la clé de chiffrement de votre compte, vous devriez exporter à nouveau car vous ne pourrez pas déchiffrer ce fichier."
},
"exportMasterPassword": {
"message": "Saisissez votre mot de passe maître pour exporter les données de votre coffre."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Votre coffre est verrouillé. Saisissez votre code PIN pour continuer."
},
"unlockWithBiometrics": {
"message": "Déverrouiller par biométrie"
},
"awaitDesktop": {
"message": "En attente de confirmation de l'application de bureau"
},
"awaitDesktopDesc": {
"message": "Veuillez confirmer l'utilisation de la biométrie dans l'application Bitwarden de bureau pour activer la biométrie dans le navigateur."
},
"lockWithMasterPassOnRestart": {
"message": "Verrouiller avec le mot de passe maître lors du redémarrage"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Politique de confidentialité"
},
"hintEqualsPassword": {
"message": "Votre indice de mot de passe ne peut pas être identique à votre mot de passe."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Vérification de la synchronisation avec l'application de bureau"
},
"desktopIntegrationVerificationText": {
"message": "Veuillez vérifier que l'application de bureau affiche cette phrase d'empreinte : "
},
"desktopIntegrationDisabledTitle": {
"message": "L'intégration avec le navigateur n'est pas activée"
},
"desktopIntegrationDisabledDesc": {
"message": "L'intégration avec le navigateur n'est pas activée dans l'application de bureau Bitwarden. Veuillez l'activer dans les paramètres de l'application de bureau."
},
"startDesktopTitle": {
"message": "Démarrer l'application de bureau Bitwarden."
},
"startDesktopDesc": {
"message": "L'application de bureau Bitwarden doit être démarrée avant que cette fonction puisse être utilisée."
},
"errorEnableBiometricTitle": {
"message": "Impossible d'activer la biométrie"
},
"errorEnableBiometricDesc": {
"message": "L'action a été annulée par l'application de bureau"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "L'application de bureau a invalidé le canal de communication sécurisé. Veuillez réessayer cette opération"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Communication interrompue avec l'application de bureau"
},
"nativeMessagingWrongUserDesc": {
"message": "L'application de bureau est connectée à un autre compte. Veuillez vous assurer que les deux applications sont connectées au même compte."
},
"nativeMessagingWrongUserTitle": {
"message": "Erreur de correspondance entre les comptes"
},
"biometricsNotEnabledTitle": {
"message": "Le déverrouillage biométrique n'est pas activé"
},
"biometricsNotEnabledDesc": {
"message": "Les options de biométrie dans le navigateur nécessitent au préalable l'activation des options de biométrie dans l'application de bureau."
},
"biometricsNotSupportedTitle": {
"message": "Le déverrouillage biométrique n'est pas pris en charge"
},
"biometricsNotSupportedDesc": {
"message": "Le déverrouillage biométrique dans le navigateur nest pas pris en charge sur cet appareil"
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission non accordée"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Sans la permission de communiquer avec l'application de bureau Bitwarden, nous ne pouvons pas activer le déverrouillage biométrique dans l'extension navigateur. Veuillez réessayer."
},
"personalOwnershipSubmitError": {
"message": "En raison d'une politique d'entreprise, il vous est interdit d'enregistrer des éléments dans votre coffre personnel. Sélectionnez une organisation dans l'option Propriété et choisissez parmi les collections disponibles."
},
"personalOwnershipPolicyInEffect": {
"message": "Une politique d'organisation affecte vos options de propriété."
}
}

View File

@ -606,9 +606,15 @@
"message": "אזהרה",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "אישור ייצוא כספת"
},
"exportWarningDesc": {
"message": "הקובץ מכיל את פרטי הכספת שלך בפורמט לא מוצפן. מומלץ להעביר את הקובץ רק בדרכים מוצפנות, ומאוד לא מומלץ לשמור או לשלוח את הקובץ הזה בדרכים לא מוצפנות (כדוגמת סתם אימייל). מחק את הקובץ מיד לאחר שסיימת את השימוש בו."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "הזן את הסיסמה הראשית שלך עבור יצוא המידע מהכספת."
},
@ -895,7 +901,7 @@
"message": "צור והעתק סיסמה רנדומלית חדשה."
},
"commandLockVaultDesc": {
"message": "נעילת הכספת"
"message": "נעל את הכספת"
},
"privateModeMessage": {
"message": "לצערנו חלון זה אינו זמין במצב גלישה פרטית בדפדפן זה."
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "הכספת שלך נעולה. הזן את קוד הPIN שלך כדי להמשיך."
},
"unlockWithBiometrics": {
"message": "ביטול נעילה עם זיהוי ביומטרי"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "נעל בעזרת הסיסמה הראשית בהפעלת הדפדפן מחדש"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "מדיניות הפרטיות"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "אוקי"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "אינטרציית דפדפן לא מאופשרת"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "לא ניתן להפעיל זיהוי ביומטרי"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "זיהוי בימוטרי לא מאופשר."
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "אין תמיכה באמצעי זיהוי ביומטרים"
},
"biometricsNotSupportedDesc": {
"message": "אין תמיכה בזיהוי ביומטרי בדפדפן במכשיר זה."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

View File

@ -498,7 +498,7 @@
"message": "Edited item"
},
"deleteItemConfirmation": {
"message": "Are you sure you want to delete this item?"
"message": "Do you really want to send to the trash?"
},
"deletedItem": {
"message": "Sent item to trash"
@ -606,9 +606,15 @@
"message": "WARNING",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "This export contains your vault data in an unencrypted format. You should not store or send the exported file over unsecure channels (such as email). Delete it immediately after you are done using it."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "Enter your master password to export your vault data."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Your vault is locked. Verify your PIN code to continue."
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "Lock with master password on browser restart"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Privacy Policy"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

View File

@ -606,9 +606,15 @@
"message": "UPOZORENJE",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "Ovaj izvoz sadrži podatke trezora u nešifriranom obliku. Izvezenu datoteku ne smijete pohranjivati ili slati preko nesigurnih kanala (kao što je e-pošta). Izbrišite je odmah nakon završetka korištenja."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "Unesite glavnu lozinku za izvoz podataka iz trezora."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Vaš trezor je zaključan. Potvrdite Vaš PIN da biste nastavili."
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "Zaključaj s glavnom lozinkom kod ponovnog pokretanja preglednika"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Privacy Policy"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

View File

@ -11,7 +11,7 @@
"description": "Extension description"
},
"loginOrCreateNewAccount": {
"message": "Jelentkezz be vagy készíts új felhasználót a biztonsági széfed eléréshez."
"message": "Bejelentkezés vagy új fiók létrehozása a biztonsági széf eléréséhez."
},
"createAccount": {
"message": "Fiók létrehozása"
@ -498,7 +498,7 @@
"message": "Elem szerkesztve"
},
"deleteItemConfirmation": {
"message": "Biztosan törlöd ezt az elemet?"
"message": "Biztosan törlésre kerüljön ezt az elem?"
},
"deletedItem": {
"message": "Az elem törlésre került."
@ -606,8 +606,14 @@
"message": "FIGYELEM",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Széf exportálás megerősítése"
},
"exportWarningDesc": {
"message": "Ez az exportálás titkosítás nélkül tartalmazza a széfadatokat.Nem célszerű az exportált fájlt nem biztonságos csatornákon tárolni és továbbküldeni (például emailben). A felhasználás után erősen ajánlott a törlés."
"message": "Ez az exportálás titkosítás nélkül tartalmazza a széfadatokat. Nem célszerű az exportált fájlt nem biztonságos csatornákon tárolni és tovább küldeni (például emailben). A felhasználás után erősen ajánlott a törlés."
},
"encExportWarningDesc": {
"message": "Ez az exportálás titkosítja az adatokat a fiók titkosítási kulcsával. Ha valaha a fiók forgatási kulcsa más lesz, akkor újra exportálni kell, mert nem lehet visszafejteni ezt az exportálási fájlt."
},
"exportMasterPassword": {
"message": "Add meg a jelszavad a széf adataid exportálásához."
@ -847,7 +853,7 @@
"message": "A helyileg működtetett Bitwarden telepítés alap webcímének megadása."
},
"customEnvironment": {
"message": "Egyéni környezet"
"message": "Egyedi környezet"
},
"customEnvironmentFooter": {
"message": "Haladó felhasználóknak. Minden egyes szolgáltatás alap URL-jét külön megadhatod."
@ -991,10 +997,10 @@
"message": "December"
},
"securityCode": {
"message": "Biztonsági Kód"
"message": "Biztonsági kód"
},
"ex": {
"message": "pl."
"message": "példa:"
},
"title": {
"message": "Titulus"
@ -1136,7 +1142,7 @@
"message": "Alap domain"
},
"host": {
"message": "Gazdagép",
"message": "Kiszolgáló",
"description": "A URL's host value. For example, the host of https://sub.domain.com:443 is 'sub.domain.com:443'."
},
"exact": {
@ -1245,11 +1251,20 @@
"message": "A pinkód érvénytelen."
},
"verifyPin": {
"message": "Pnkód ellenőrzése"
"message": "Pinkód ellenőrzése"
},
"yourVaultIsLockedPinCode": {
"message": "A széf zárolásra került. A folytatáshoz meg kell adni a pinkódot."
},
"unlockWithBiometrics": {
"message": "Biometrikus feloldás"
},
"awaitDesktop": {
"message": "Várakozás megerősítésre az asztali alkalmazásból"
},
"awaitDesktopDesc": {
"message": "Erősítsük meg a biometrikus adatok használatát a Bitwarden asztali alkalmazásban a biometrikus adatok engedélyezéséhez a böngészőben."
},
"lockWithMasterPassOnRestart": {
"message": "Lezárás mesterjelszóval a böngésző újraindításakor"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Adatvédelem"
},
"hintEqualsPassword": {
"message": "A jelszavas tipp nem lehet azonos a jelszóval."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Asztali szinkronizálás ellenőrzés"
},
"desktopIntegrationVerificationText": {
"message": "Ellenőrizzük, hogy az asztali alkalmazás megjeleníti-e ezt az ujjlenyomatot: "
},
"desktopIntegrationDisabledTitle": {
"message": "A böngésző integráció nem engedélyezett."
},
"desktopIntegrationDisabledDesc": {
"message": "A böngésző integráció nincs engedélyezve a Bitwarden asztali alkalmazásban. Engedélyezzük az asztali alkalmazás beállításai között."
},
"startDesktopTitle": {
"message": "A Bitwarden asztali alkalmazás indítása"
},
"startDesktopDesc": {
"message": "A funkció használatához el kell indítani a Bitwarden asztali alkalmazást."
},
"errorEnableBiometricTitle": {
"message": "Nem lehet engedélyezni a biometrikus adatokat."
},
"errorEnableBiometricDesc": {
"message": "A műveletet az asztali alkalmazás törölte."
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Az asztali alkalmazás érvénytelenítette a biztonságos kommunikációs csatornát. Próbálkozzunk újra ezzel a művelettel"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Az asztali kommunikáció megszakadt."
},
"nativeMessagingWrongUserDesc": {
"message": "Az asztali alkalmazás egy másik fiókba van bejelentkezve. Ellenőrizzük, hogy mindkét alkalmazást azonos fiókba van bejelentkezve."
},
"nativeMessagingWrongUserTitle": {
"message": "A fiók nem egyezik."
},
"biometricsNotEnabledTitle": {
"message": "A biometrikus adatok nincsenek engedélyezve."
},
"biometricsNotEnabledDesc": {
"message": "A böngésző biometrikus adataihoz először az asztali biometrikus adatokat kell engedélyezni a beállításokban."
},
"biometricsNotSupportedTitle": {
"message": "A biometrikus adatok nem támogatottak."
},
"biometricsNotSupportedDesc": {
"message": "A böngésző biometrikus adatait ez az eszköz nem támogatja."
},
"nativeMessaginPermissionErrorTitle": {
"message": "A jogosultság nincs megadva."
},
"nativeMessaginPermissionErrorDesc": {
"message": "A Bitwarden Desktop alkalmazással való kommunikáció engedélye nélkül nem adhatunk meg biometrikus adatokat a böngésző kiterjesztésében. Próbáljuk újra."
},
"personalOwnershipSubmitError": {
"message": "Egy vállalati házirend miatt korlátozásra került az elemek személyes tárolóba történő mentése. Módosítsuk a Tulajdon opciót egy szervezetre és válasszunk az elérhető gyűjtemények közül."
},
"personalOwnershipPolicyInEffect": {
"message": "A szervezeti házirend befolyásolja a tulajdonosi opciókat."
}
}

View File

@ -606,9 +606,15 @@
"message": "PERINGATAN",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Konfirmasi Ekspor Vault"
},
"exportWarningDesc": {
"message": "This export contains your vault data in an unencrypted format. You should not store or send the exported file over unsecure channels (such as email). Delete it immediately after you are done using it."
},
"encExportWarningDesc": {
"message": "Ekspor ini mengenkripsi data Anda menggunakan kunci enkripsi akun Anda. Jika Anda pernah merotasi kunci enkripsi akun Anda, Anda harus mengekspor lagi karena Anda tidak akan dapat mendekripsi file ekspor ini."
},
"exportMasterPassword": {
"message": "Masukkan sandi utama Anda untuk mengekspor data brankas Anda."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Brankas Anda terkunci. Verifikasi kode PIN Anda untuk melanjutkan."
},
"unlockWithBiometrics": {
"message": "Buka kunci dengan biometrik"
},
"awaitDesktop": {
"message": "Menunggu konfirmasi dari desktop"
},
"awaitDesktopDesc": {
"message": "Harap konfirmasi menggunakan biometrik di aplikasi Bitwarden Desktop untuk mengaktifkan biometrik untuk browser."
},
"lockWithMasterPassOnRestart": {
"message": "Kunci dengan kata sandi utama saat browser dihidupkan ulang"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Kebijakan Privasi"
},
"hintEqualsPassword": {
"message": "Petunjuk kata sandi Anda tidak boleh sama dengan kata sandi Anda."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Verifikasi sinkronisasi desktop"
},
"desktopIntegrationVerificationText": {
"message": "Harap verifikasi bahwa aplikasi desktop menunjukkan sidik jari ini:"
},
"desktopIntegrationDisabledTitle": {
"message": "Integrasi browser tidak diaktifkan"
},
"desktopIntegrationDisabledDesc": {
"message": "Integrasi browser tidak diaktifkan di aplikasi Bitwarden Desktop. Harap aktifkan di pengaturan dalam aplikasi desktop."
},
"startDesktopTitle": {
"message": "Jalankan aplikasi Bitwarden Desktop"
},
"startDesktopDesc": {
"message": "Aplikasi Bitwarden Desktop harus dijalankan sebelum fungsi ini dapat digunakan."
},
"errorEnableBiometricTitle": {
"message": "Tidak dapat mengaktifkan biometrik"
},
"errorEnableBiometricDesc": {
"message": "Tindakan dibatalkan oleh aplikasi desktop"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Aplikasi desktop membatalkan saluran komunikasi aman. Silakan coba lagi operasi ini"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Komunikasi desktop terputus"
},
"nativeMessagingWrongUserDesc": {
"message": "Aplikasi desktop masuk ke akun yang berbeda. Harap pastikan kedua aplikasi masuk ke akun yang sama."
},
"nativeMessagingWrongUserTitle": {
"message": "Akun tidak cocok"
},
"biometricsNotEnabledTitle": {
"message": "Biometrik tidak diaktifkan"
},
"biometricsNotEnabledDesc": {
"message": "Biometrik browser mengharuskan biometrik desktop diaktifkan di pengaturan terlebih dahulu."
},
"biometricsNotSupportedTitle": {
"message": "Biometrik tidak didukung"
},
"biometricsNotSupportedDesc": {
"message": "Biometrik browser tidak didukung di perangkat ini."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Karena Kebijakan Perusahaan, Anda dilarang menyimpan item ke lemari besi pribadi Anda. Ubah opsi Kepemilikan ke organisasi dan pilih dari Koleksi yang tersedia."
},
"personalOwnershipPolicyInEffect": {
"message": "Kebijakan organisasi memengaruhi opsi kepemilikan Anda."
}
}

View File

@ -501,7 +501,7 @@
"message": "Sei sicuro di voler eliminare questo elemento?"
},
"deletedItem": {
"message": "Elemento eliminato"
"message": "Elemento spostato nel cestino"
},
"overwritePassword": {
"message": "Sovrascrivi password"
@ -606,9 +606,15 @@
"message": "ATTENZIONE",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Conferma esportazione della Cassaforte"
},
"exportWarningDesc": {
"message": "Questa esportazione contiene i dati del tuo portachiavi in un formato non criptato. Non salvare o inviare il file esportato su canali non protetti (come la posta elettronica). Eliminalo immediatamente dopo aver finito di usarlo."
},
"encExportWarningDesc": {
"message": "Questa esportazione cifra i tuoi dati utilizzando la chiave di crittografia del tuo account. Se cambi la chiave di crittografia del tuo account, non sarai più in grado di decifrare il file esportato e sarà necessario eseguire nuovo export."
},
"exportMasterPassword": {
"message": "Inserisci la tua password principale per esportare i dati della tua cassaforte."
},
@ -895,7 +901,7 @@
"message": "Genera e copia una nuova password casuale negli appunti."
},
"commandLockVaultDesc": {
"message": "Blocca il portachiavi"
"message": "Blocca la cassaforte"
},
"privateModeMessage": {
"message": "Purtroppo questa finestra non è disponibile nella modalità anonima per questo browser."
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Il tuo portachiavi è bloccato. Inserisci il tuo codice PIN per continuare."
},
"unlockWithBiometrics": {
"message": "Sblocca utilizzando l'autenticazione biometrica"
},
"awaitDesktop": {
"message": "In attesa di conferma dal desktop"
},
"awaitDesktopDesc": {
"message": "Si prega di confermare utilizzando l'autenticazione biometrica nell'applicazione Bitwarden Desktop per abilitare l'autenticazione biometrica per il browser."
},
"lockWithMasterPassOnRestart": {
"message": "Blocca con la password principale al riavvio del browser"
},
@ -1263,7 +1278,7 @@
"message": "Clona"
},
"passwordGeneratorPolicyInEffect": {
"message": "Una o più politiche dell'organizzazione stanno influenzando le impostazioni del tuo generatore."
"message": "Una o più policy dell'organizzazione controllano le impostazioni del tuo generatore."
},
"vaultTimeoutAction": {
"message": "Azione Timeout Portachiavi"
@ -1358,7 +1373,7 @@
"message": "La tua nuova password principale non soddisfa i requisiti di sicurezza."
},
"acceptPolicies": {
"message": "Selezionando questa casella accetti quanto segue:"
"message": "Selezionando la casella accetti quanto segue:"
},
"acceptPoliciesError": {
"message": "I Termini di Servizio e l'Informativa sulla Privacy non sono stati accettati."
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Informativa sulla privacy"
},
"hintEqualsPassword": {
"message": "Il suggerimento password non può essere uguale alla password."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Verifica sincronizzazione desktop"
},
"desktopIntegrationVerificationText": {
"message": "Verifica che l'applicazione desktop mostri questa impronta digitale: "
},
"desktopIntegrationDisabledTitle": {
"message": "L'integrazione del browser non è abilitata"
},
"desktopIntegrationDisabledDesc": {
"message": "L'integrazione del browser non è abilitata nell'applicazione Bitwarden Desktop. Si prega di attivarla nelle impostazioni all'interno dell'applicazione desktop."
},
"startDesktopTitle": {
"message": "Avvia l'applicazione desktop Bitwarden"
},
"startDesktopDesc": {
"message": "L'applicazione Bitwarden Desktop deve essere avviata prima che questa funzione possa essere utilizzata."
},
"errorEnableBiometricTitle": {
"message": "Impossibile abilitare l'autenticazione biometrica"
},
"errorEnableBiometricDesc": {
"message": "L'azione è stata annullata dall'applicazione desktop"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "L'applicazione desktop ha invalidato il canale di comunicazione sicuro. Ritenta l'operazione"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Comunicazione desktop interrotta"
},
"nativeMessagingWrongUserDesc": {
"message": "L'applicazione desktop è collegata a un account diverso. Assicurarsi che entrambe le applicazioni siano collegate allo stesso account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account non corrispondente"
},
"biometricsNotEnabledTitle": {
"message": "Autenticazione biometrica non abilitata"
},
"biometricsNotEnabledDesc": {
"message": "L'autenticazione biometrica del browser richiede che l'autenticazione biometrica del desktop sia prima abilitata nelle impostazioni."
},
"biometricsNotSupportedTitle": {
"message": "Autenticazione biometrica non supportata"
},
"biometricsNotSupportedDesc": {
"message": "L'autenticazione biometrica del browser non è supportata su questo dispositivo."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permesso non concesso"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Senza l'autorizzazione per comunicare con l'applicazione Bitwarden Desktop non è possibile fornire l'autenticazione biometrica nell'estensione del browser.\nRiprova di nuovo."
},
"personalOwnershipSubmitError": {
"message": "A causa di una policy aziendale, non è possibile salvare elementi nella tua cassaforte personale. Cambia l'opzione proprietà in un'organizzazione e scegli tra le raccolte disponibili."
},
"personalOwnershipPolicyInEffect": {
"message": "Una policy dell'organizzazione controlla le opzioni di proprietà."
}
}

View File

@ -606,9 +606,15 @@
"message": "警告",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "保管庫のエクスポートの確認"
},
"exportWarningDesc": {
"message": "このエクスポートデータは暗号化されていない形式の保管庫データを含んでいます。メールなどのセキュリティ保護されていない方法で共有したり保管したりしないでください。使用した後はすぐに削除してください。"
},
"encExportWarningDesc": {
"message": "このエクスポートは、アカウントの暗号化キーを使用してデータを暗号化します。 暗号化キーをローテーションした場合は、このエクスポートファイルを復号することはできなくなるので、もう一度エクスポートする必要があります。"
},
"exportMasterPassword": {
"message": "保管庫のデータをエクスポートするにはマスターパスワードを入力してください。"
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "保管庫がロックされています。PIN コードで認証してください。"
},
"unlockWithBiometrics": {
"message": "生体認証でロック解除"
},
"awaitDesktop": {
"message": "デスクトップからの確認待ち"
},
"awaitDesktopDesc": {
"message": "ブラウザの生体認証を有効にするには、Bitwarden デスクトップアプリの生体認証を使用してください。"
},
"lockWithMasterPassOnRestart": {
"message": "ブラウザー再起動時にマスターパスワードでロック"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "プライバシーポリシー"
},
"hintEqualsPassword": {
"message": "パスワードのヒントをパスワードと同じにすることはできません。"
},
"ok": {
"message": "OK"
},
"desktopSyncVerificationTitle": {
"message": "デスクトップ同期の検証"
},
"desktopIntegrationVerificationText": {
"message": "デスクトップアプリにこの指紋が表示されていることを確認してください: "
},
"desktopIntegrationDisabledTitle": {
"message": "ブラウザ統合が有効になっていません"
},
"desktopIntegrationDisabledDesc": {
"message": "Bitwarden デスクトップアプリでブラウザ統合が有効になっていません。デスクトップアプリの設定で有効にしてください。"
},
"startDesktopTitle": {
"message": "Bitwarden デスクトップアプリを起動"
},
"startDesktopDesc": {
"message": "この機能を使用するには、Bitwarden デスクトップアプリを起動してください。"
},
"errorEnableBiometricTitle": {
"message": "生体認証を有効にできません"
},
"errorEnableBiometricDesc": {
"message": "デスクトップアプリによってアクションがキャンセルされました"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "デスクトップアプリが安全な通信チャネルを無効にしました。操作をやり直してください。"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "デスクトップ通信が中断されました"
},
"nativeMessagingWrongUserDesc": {
"message": "デスクトップアプリは別のアカウントにログインしています。両方のアプリが同じアカウントにログインしているか確認してください。"
},
"nativeMessagingWrongUserTitle": {
"message": "アカウントが一致しません"
},
"biometricsNotEnabledTitle": {
"message": "生体認証が有効になっていません"
},
"biometricsNotEnabledDesc": {
"message": "ブラウザ生体認証を利用するには、まず設定でデスクトップ生体認証を有効にする必要があります。"
},
"biometricsNotSupportedTitle": {
"message": "生体認証に対応していません"
},
"biometricsNotSupportedDesc": {
"message": "このデバイスではブラウザの生体認証に対応していません。"
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "組織のポリシーにより、個人の保管庫へのアイテムの保存が制限されています。 所有権を組織に変更し、利用可能なコレクションから選択してください。"
},
"personalOwnershipPolicyInEffect": {
"message": "組織のポリシーが所有者のオプションに影響を与えています。"
}
}

View File

@ -498,7 +498,7 @@
"message": "항목 편집함"
},
"deleteItemConfirmation": {
"message": "정말 이 항목을 삭제하시겠습니까?"
"message": "정말로 휴지통으로 이동시킬까요?"
},
"deletedItem": {
"message": "항목 삭제함"
@ -580,7 +580,7 @@
"description": "Default URI match detection for auto-fill."
},
"defaultUriMatchDetectionDesc": {
"message": "자동 완성같은 작업을 수행할 때 로그인에 대해 URI 일치 감지가 처리되는 기본 방법을 선택하십시오."
"message": "자동 완성 등의 작업에서 각 로그인 항목의 URI 일치 감지를 처리할 기본 방법을 선택하세요."
},
"theme": {
"message": "테마"
@ -606,9 +606,15 @@
"message": "경고",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "보관함 내보내기 확인"
},
"exportWarningDesc": {
"message": "내보내기는 보관함 데이터가 암호화되지 않은 형식으로 포함됩니다. 내보낸 파일을 안전하지 않은 채널(예: 이메일)을 통해 저장하거나 보내지 마십시오. 사용이 끝난 후에는 즉시 삭제하십시오."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "보관함 데이터를 내보내려면 마스터 비밀번호를 입력하세요."
},
@ -895,7 +901,7 @@
"message": "새 무작위 비밀번호를 만들고 클립보드에 복사합니다."
},
"commandLockVaultDesc": {
"message": "Lock the vault"
"message": "보관함 잠그기"
},
"privateModeMessage": {
"message": "죄송합니다. 이 브라우저에서는 시크릿 창에서 이 창을 사용할 수 없습니다."
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "보관함이 잠겨 있습니다. PIN 코드를 입력하여 계속하세요."
},
"unlockWithBiometrics": {
"message": "생체 인식을 사용하여 잠금 해제"
},
"awaitDesktop": {
"message": "데스크톱으로부터의 확인을 대기 중"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "브라우저 다시 시작 시 마스터 비밀번호로 잠금"
},
@ -1358,15 +1373,81 @@
"message": "새 마스터 비밀번호가 정책 요구 사항을 따르지 않습니다."
},
"acceptPolicies": {
"message": "By checking this box you agree to the following:"
"message": "이 박스를 체크하면 다음에 동의하는 것으로 간주됩니다:"
},
"acceptPoliciesError": {
"message": "Terms of Service and Privacy Policy have not been acknowledged."
"message": "서비스 약관 및 개인 정보 보호 정책을 확인하지 않았습니다."
},
"termsOfService": {
"message": "Terms of Service"
"message": "서비스 약관"
},
"privacyPolicy": {
"message": "Privacy Policy"
"message": "개인 정보 보호 정책"
},
"hintEqualsPassword": {
"message": "비밀번호 힌트는 비밀번호와 같을 수 없습니다."
},
"ok": {
"message": "확인"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "브라우저와 연결이 활성화되지 않았습니다"
},
"desktopIntegrationDisabledDesc": {
"message": "브라우저와 연결이 Bitwarden 데스크톱 앱에서 활성화되지 않았습니다. 데스크톱 앱의 설정에서 브라우저와 연결을 활성화해주세요."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "이 기능을 사용하기 위해서는 Bitwarden 데스크톱 앱이 먼저 실행되어 있어야 합니다."
},
"errorEnableBiometricTitle": {
"message": "생체 인식을 활성화할 수 없음"
},
"errorEnableBiometricDesc": {
"message": "데스크톱 앱에서 작업이 취소되었습니다"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "데스크톱 앱에 다른 계정으로 로그인된 상태입니다. 두 앱에 같은 계정으로 로그인되어 있는지 확인해주세요."
},
"nativeMessagingWrongUserTitle": {
"message": "계정이 일치하지 않음"
},
"biometricsNotEnabledTitle": {
"message": "생체 인식이 활성화되지 않음"
},
"biometricsNotEnabledDesc": {
"message": "브라우저에서 생체 인식을 사용하기 위해서는 설정에서 데스크톱 생체 인식을 먼저 활성화해야 합니다."
},
"biometricsNotSupportedTitle": {
"message": "생체 인식이 지원되지 않음"
},
"biometricsNotSupportedDesc": {
"message": "이 기기에서는 생체 인식이 지원되지 않습니다."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "엔터프라이즈 정책으로 인해 개인 보관함에 항목을 저장할 수 없습니다. 조직에서 소유권 설정을 변경한 다음, 사용 가능한 컬렉션 중에서 선택해주세요."
},
"personalOwnershipPolicyInEffect": {
"message": "조직의 정책이 소유권 설정에 영향을 미치고 있습니다."
}
}

View File

@ -606,9 +606,15 @@
"message": "UZMANĪBU",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "Šis eksports satur jūsu datus nešifrētā formātā. Eksportēto failu nevajadzētu saglabāt vai sūtīt izmantojot nedrošus kanālus (piemēram E-pastu). Izdzēsiet to līdzko esiet beidzis to izmantot."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "Ievadiet savu galveno paroli lai eksportētu sava seifa datus."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Jūsu seifs ir slēgts. Ievadiet savu PIN kodu lai turpinātu."
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "Aizslēgt ar galveno paroli pēc pārlūka atsāknēšanas"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Privacy Policy"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

View File

@ -606,9 +606,15 @@
"message": "മുന്നറിയിപ്പ്",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "ഈ എക്‌സ്‌പോർട്ടിൽ എൻക്രിപ്റ്റ് ചെയ്യാത്ത ഫോർമാറ്റിൽ നിങ്ങളുടെ വാൾട് ഡാറ്റ അടങ്ങിയിരിക്കുന്നു. എക്‌സ്‌പോർട് ചെയ്ത ഫയൽ സുരക്ഷിതമല്ലാത്ത ചാനലുകളിൽ (ഇമെയിൽ പോലുള്ളവ) നിങ്ങൾ സംഭരിക്കുകയോ അയയ്ക്കുകയോ ചെയ്യരുത്. നിങ്ങൾ ഇത് ഉപയോഗിച്ചുകഴിഞ്ഞാലുടൻ അത് മായ്ച്ചുകളയണം."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "നിങ്ങളുടെ വാൾട് ഡാറ്റ എക്‌സ്‌പോർട്ടുചെയ്യാൻ പ്രാഥമിക പാസ്‌വേഡ് നൽകുക."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "നിങ്ങളുടെ വാൾട് പൂട്ടിയിരിക്കുന്നു. തുടരാൻ പിൻ കോഡ് സ്ഥിരീകരിക്കുക."
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "ബ്രൌസർ പുനരാരംഭത്തിൽ പ്രാഥമിക പാസ്‌വേഡ് ഉപയോഗിച്ച് ലോക്ക് ചെയ്യുക"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "സ്വകാര്യതാനയം"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

View File

@ -17,10 +17,10 @@
"message": "Opprett en konto"
},
"login": {
"message": "Logg "
"message": "Logg inn"
},
"enterpriseSingleSignOn": {
"message": "Enterprise Single Sign-On"
"message": "Bedriftsinnlogging (SSO)"
},
"cancel": {
"message": "Lukk"
@ -104,7 +104,7 @@
"message": "Legg til en innlogging"
},
"addItem": {
"message": "Legg til et objekt"
"message": "Legg til en gjenstand"
},
"passwordHint": {
"message": "Passordhint"
@ -139,7 +139,7 @@
"message": "2-trinnsinnlogging"
},
"logOut": {
"message": "Logg av"
"message": "Logg ut"
},
"about": {
"message": "Om"
@ -194,7 +194,7 @@
"message": "Bitwarden netthvelv"
},
"importItems": {
"message": "Importer objekter"
"message": "Importer gjenstander"
},
"select": {
"message": "Velg"
@ -231,7 +231,7 @@
"message": "Minste antall spesialtegn"
},
"avoidAmbChar": {
"message": "Unngå tegn som kan forveksles"
"message": "Unngå tvetydige tegn"
},
"searchVault": {
"message": "Søk i hvelvet"
@ -246,7 +246,7 @@
"message": "Det er ingen gjenstander å liste opp."
},
"itemInformation": {
"message": "Objektinformasjon"
"message": "Gjenstandsinformasjon"
},
"username": {
"message": "Brukernavn"
@ -306,7 +306,7 @@
"message": "Verifiser hovedpassordet"
},
"yourVaultIsLocked": {
"message": "Hvelvet ditt er låst. Kontroller superpassordet ditt for å fortsette."
"message": "Hvelvet ditt er låst. Kontroller hovedpassordet ditt for å fortsette."
},
"unlock": {
"message": "Lås opp"
@ -498,7 +498,7 @@
"message": "Redigerte gjenstanden"
},
"deleteItemConfirmation": {
"message": "Er du sikker på at du vil slette denne gjenstanden?"
"message": "Er du sikker på at du vil slette dette objektet?"
},
"deletedItem": {
"message": "Slettet objektet"
@ -606,9 +606,15 @@
"message": "ADVARSEL",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "Eksporten inneholder dine hvelvdataer i et ukryptert format. Du burde ikke lagre eller sende den eksporterte filen over usikre tjenester (f.eks. E-post). Slett det umiddelbart etter at du er ferdig med å bruke dem."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "Skriv inn ditt superpassord for å eksportere dine hvelvdataer."
},
@ -895,7 +901,7 @@
"message": "Generer og kopier et nytt tilfeldig passord til utklippstavlen."
},
"commandLockVaultDesc": {
"message": "Lock the vault"
"message": "Lås hvelvet"
},
"privateModeMessage": {
"message": "Dessverre er dette vinduet ikke tilgjengelig i privat modus for denne nettleseren."
@ -1233,7 +1239,7 @@
"description": "PIN code. Ex. The short code (often numeric) that you use to unlock a device."
},
"unlockWithPin": {
"message": "Lås opp med PIN"
"message": "Lås opp med PIN-kode"
},
"setYourPinCode": {
"message": "Angi PIN-koden din for å låse opp Bitwarden. PIN-innstillingene tilbakestilles hvis du logger deg helt ut av programmet."
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Hvelvet ditt er låst. Kontroller PIN-koden din for å fortsette."
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "Lås med hovedpassordet når du starter nettleseren på nytt"
},
@ -1304,22 +1319,22 @@
"message": "Bekreftelse på handling ved tidsavbrudd"
},
"autoFillAndSave": {
"message": "Auto-fill and Save"
"message": "Autofyll og lagre"
},
"autoFillSuccessAndSavedUri": {
"message": "Auto-filled Item and Saved URI"
"message": "Autoutfylt element og lagret URI"
},
"autoFillSuccess": {
"message": "Auto-filled Item"
"message": "Autoutfylt gjenstand"
},
"setMasterPassword": {
"message": "Set Master Password"
"message": "Angi hovedpassord"
},
"masterPasswordPolicyInEffect": {
"message": "One or more organization policies require your master password to meet the following requirements:"
"message": "Ett eller flere av organisasjonens vilkår krever at hovedpassordet oppfyller følgende krav:"
},
"policyInEffectMinComplexity": {
"message": "Minimum complexity score of $SCORE$",
"message": "Minimumspoengsum for kompleksistet er $SCORE$",
"placeholders": {
"score": {
"content": "$1",
@ -1328,7 +1343,7 @@
}
},
"policyInEffectMinLength": {
"message": "Minimum length of $LENGTH$",
"message": "Minimumslengde på $LENGTH$",
"placeholders": {
"length": {
"content": "$1",
@ -1337,16 +1352,16 @@
}
},
"policyInEffectUppercase": {
"message": "Contain one or more uppercase characters"
"message": "Inneholde én eller flere store bokstaver"
},
"policyInEffectLowercase": {
"message": "Contain one or more lowercase characters"
"message": "Inneholde én eller flere små bokstaver"
},
"policyInEffectNumbers": {
"message": "Contain one or more numbers"
"message": "Inneholde ett eller flere tall"
},
"policyInEffectSpecial": {
"message": "Contain one or more of the following special characters $CHARS$",
"message": "Inneholde ett eller flere av følgende spesialtegn $CHARS$",
"placeholders": {
"chars": {
"content": "$1",
@ -1355,18 +1370,84 @@
}
},
"masterPasswordPolicyRequirementsNotMet": {
"message": "Your new master password does not meet the policy requirements."
"message": "Det nye hovedpassordet ditt oppfyller ikke vilkårene."
},
"acceptPolicies": {
"message": "By checking this box you agree to the following:"
"message": "Ved å merke av denne boksen sier du deg enig i følgende:"
},
"acceptPoliciesError": {
"message": "Terms of Service and Privacy Policy have not been acknowledged."
"message": "Vilkårene for bruk og personvernerklæring er ikke akseptert."
},
"termsOfService": {
"message": "Terms of Service"
"message": "Vilkår for bruk"
},
"privacyPolicy": {
"message": "Privacy Policy"
"message": "Personvernerklæring"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

View File

@ -312,7 +312,7 @@
"message": "Ontgrendelen"
},
"loggedInAsOn": {
"message": "Ingelogd als $EMAIL$ op $HOSTNAME$.",
"message": "Aangemeld als $EMAIL$ op $HOSTNAME$.",
"placeholders": {
"email": {
"content": "$1",
@ -606,9 +606,15 @@
"message": "WAARSCHUWING",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Kluisexport bevestigen"
},
"exportWarningDesc": {
"message": "Deze export bevat jouw kluisgegevens in een niet-versleutelde opmaak. Je moet het geëxporteerde bestand niet opslaan of verzenden over onbeveiligde kanalen (zoals e-mail). Verwijder het exportbestand direct na gebruik."
},
"encExportWarningDesc": {
"message": "Deze export versleutelt je gegevens met de encryptiesleutel van je account. Als je je encryptiesleutel verandert moet je opnieuw exporteren, omdat je deze export dan niet meer kunt ontcijferen."
},
"exportMasterPassword": {
"message": "Voer je hoofdwachtwoord in om de kluisgegevens te exporteren."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Je kluis is vergrendeld. Voer je PIN-code in om door te gaan."
},
"unlockWithBiometrics": {
"message": "Biometrisch ontgrendelen"
},
"awaitDesktop": {
"message": "Wacht op bevestiging van de desktop"
},
"awaitDesktopDesc": {
"message": "Bevestig het gebruik van biometrie in de Bitwarden-desktopapplicatie om biometrie voor de browser in te schakelen."
},
"lockWithMasterPassOnRestart": {
"message": "Vergrendelen met hoofdwachtwoord bij herstart browser"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Privacybeleid"
},
"hintEqualsPassword": {
"message": "Je wachtwoordhint moet anders zijn dan je wachtwoord."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Desktopsynchronisatieverificatie"
},
"desktopIntegrationVerificationText": {
"message": "Controleer of de desktopapplicatie deze vingerafdruk weergeeft: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browserintegratie is niet ingeschakeld"
},
"desktopIntegrationDisabledDesc": {
"message": "Browserintegratie is niet ingeschakeld in de Bitwarden-desktopapplicatie. Schakel deze optie in de instellingen binnen de desktop-applicatie in."
},
"startDesktopTitle": {
"message": "Bitwarden-desktopapplicatie opstarten"
},
"startDesktopDesc": {
"message": "Je moet de Bitwarden-desktopapplicatie starten om deze functie te gebruiken."
},
"errorEnableBiometricTitle": {
"message": "Kon biometrie niet inschakelen"
},
"errorEnableBiometricDesc": {
"message": "Actie is geannuleerd door de desktopapplicatie"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "De desktopapplicatie heeft het beveiligde communicatiekanaal ongeldig verklaard. Probeer het opnieuw"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktopcommunicatie onderbroken"
},
"nativeMessagingWrongUserDesc": {
"message": "De desktopapplicatie is aangemeld bij een ander account. Zorg ervoor dat beide applicaties op hetzelfde account zijn aangemeld."
},
"nativeMessagingWrongUserTitle": {
"message": "Accounts komt niet overeen"
},
"biometricsNotEnabledTitle": {
"message": "Biometrie niet ingeschakeld"
},
"biometricsNotEnabledDesc": {
"message": "Voor browserbiometrie moet je eerst desktopbiometrie inschakelen in de instellingen."
},
"biometricsNotSupportedTitle": {
"message": "Biometrie niet ondersteund"
},
"biometricsNotSupportedDesc": {
"message": "Dit apparaat ondersteunt geen browserbiometrie."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Toestemming niet verleend"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Zonder toestemming om te communiceren met de Bitwarden Desktop-applicatie, kunnen we biometrisch inloggen in de browserextensie niet leveren. Probeer het opnieuw."
},
"personalOwnershipSubmitError": {
"message": "Wegens bedrijfsbeleid mag je geen wachtwoorden opslaan in je persoonlijke kluis. Verander het eigenaarschap naar een organisatie en kies uit een van de beschikbare collecties."
},
"personalOwnershipPolicyInEffect": {
"message": "Een organisatiebeleid heeft invloed op je eigendomsopties."
}
}

View File

@ -606,9 +606,15 @@
"message": "UWAGA",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Potwierdź eksportowanie sejfu"
},
"exportWarningDesc": {
"message": "Plik zawiera dane sejfu w niezaszyfrowanym formacie. Nie powinieneś go przechowywać, ani przesyłać poprzez niezabezpieczone kanały (takie jak poczta e-mail). Skasuj go natychmiast po użyciu."
},
"encExportWarningDesc": {
"message": "Dane eksportu zostaną zaszyfrowane za pomocą klucza szyfrowania konta. Jeśli kiedykolwiek zmienisz ten klucz, wyeksportuj dane ponownie, ponieważ nie będziesz w stanie odszyfrować tego pliku."
},
"exportMasterPassword": {
"message": "Wpisz hasło główne, aby wyeksportować dane z sejfu."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Sejf jest zablokowany. Wpisz kod PIN, aby kontynuować."
},
"unlockWithBiometrics": {
"message": "Odblokuj danymi biometrycznymi"
},
"awaitDesktop": {
"message": "Oczekiwanie na potwierdzenie z aplikacji desktopowej"
},
"awaitDesktopDesc": {
"message": "Włącz dane biometryczne w aplikacji desktopowej Bitwarden, aby włączyć tę samą funkcję w przeglądarce."
},
"lockWithMasterPassOnRestart": {
"message": "Zablokuj hasłem głównym po uruchomieniu przeglądarki"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Polityka prywatności"
},
"hintEqualsPassword": {
"message": "Podpowiedź do hasła nie może być taka sama jak hasło."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Weryfikacja synchronizacji z aplikacją desktopową"
},
"desktopIntegrationVerificationText": {
"message": "Zweryfikuj aplikację desktopową z wyświetlonym identyfikatorem: "
},
"desktopIntegrationDisabledTitle": {
"message": "Połączenie z przeglądarką jest wyłączone"
},
"desktopIntegrationDisabledDesc": {
"message": "Połączenie z przeglądarką jest wyłączone. Włącz funkcję w ustawieniach aplikacji desktopowej Bitwarden."
},
"startDesktopTitle": {
"message": "Uruchom aplikację desktopową Bitwarden"
},
"startDesktopDesc": {
"message": "Aplikacja desktopowa Bitwarden musi zostać uruchomiona przed użyciem tej funkcji."
},
"errorEnableBiometricTitle": {
"message": "Nie można włączyć danych biometrycznych"
},
"errorEnableBiometricDesc": {
"message": "Operacja została anulowana przez aplikację desktopową"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Aplikacja desktopowa unieważniła bezpieczny kanał komunikacji. Spróbuj ponownie wykonać tę operację"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Komunikacja z aplikacją desktopową została przerwana"
},
"nativeMessagingWrongUserDesc": {
"message": "W aplikacji desktopowej jesteś zalogowany na inne konto. Upewnij się, że w obu aplikacjach jesteś zalogowany na te same konto."
},
"nativeMessagingWrongUserTitle": {
"message": "Konto jest niezgodne"
},
"biometricsNotEnabledTitle": {
"message": "Dane biometryczne są wyłączone"
},
"biometricsNotEnabledDesc": {
"message": "Aby włączyć dane biometryczne w przeglądarce, musisz włączyć tę samą funkcję w ustawianiach aplikacji desktopowej."
},
"biometricsNotSupportedTitle": {
"message": "Dane biometryczne nie są obsługiwane"
},
"biometricsNotSupportedDesc": {
"message": "Dane biometryczne przeglądarki nie są obsługiwane na tym urządzenie."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Uprawnienie nie zostało przyznane"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Bez uprawnienia do komunikowania się z aplikacją desktopową Bitwarden nie możemy dostarczyć obsługi danych biometrycznych w rozszerzeniu przeglądarki. Spróbuj ponownie."
},
"personalOwnershipSubmitError": {
"message": "Ze względu na zasadę przedsiębiorstwa nie możesz zapisywać elementów w osobistym sejfie. Zmień właściciela elementu na organizację i wybierz jedną z dostępnych kolekcji."
},
"personalOwnershipPolicyInEffect": {
"message": "Zasada organizacji ma wpływ na opcję własności elementów."
}
}

View File

@ -20,7 +20,7 @@
"message": "Iniciar Sessão"
},
"enterpriseSingleSignOn": {
"message": "Início de sessão empresarial"
"message": "Iniciar Sessão Empresarial Única"
},
"cancel": {
"message": "Cancelar"
@ -498,10 +498,10 @@
"message": "Item editado"
},
"deleteItemConfirmation": {
"message": "Você tem certeza que deseja excluir este item?"
"message": "Tem certeza de que pretende apagar este item?"
},
"deletedItem": {
"message": "Item excluído"
"message": "Enviar item para lixeira"
},
"overwritePassword": {
"message": "Sobrescrever Senha"
@ -606,9 +606,15 @@
"message": "AVISO",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirmar Exportação do Cofre"
},
"exportWarningDesc": {
"message": "Esta exportação contém os dados do seu cofre em um formato não criptografado. Você não deve armazenar ou enviar o arquivo exportado por canais inseguros (como e-mail). Exclua o arquivo imediatamente após terminar de usá-lo."
},
"encExportWarningDesc": {
"message": "Esta exportação criptografa seus dados usando a chave de criptografia da sua conta. Se você rotacionar a chave de criptografia da sua conta, você deve exportar novamente, já que você não será capaz de descriptografar este arquivo de exportação."
},
"exportMasterPassword": {
"message": "Insira a sua senha mestra para exportar os dados do seu cofre."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "O seu cofre está bloqueado. Verifique o seu PIN para continuar."
},
"unlockWithBiometrics": {
"message": "Desbloquear com a biometria"
},
"awaitDesktop": {
"message": "Aguardando confirmação do desktop"
},
"awaitDesktopDesc": {
"message": "Por favor, confirme o uso de dados biométricos no aplicativo Bitwarden Desktop para habilitar os dados biométricos para o navegador."
},
"lockWithMasterPassOnRestart": {
"message": "Bloquear com senha mestra ao reiniciar o navegador"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Política de Privacidade"
},
"hintEqualsPassword": {
"message": "Sua dica de senha senha não pode ser a mesma que a sua senha."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Verificação de sincronização do Desktop"
},
"desktopIntegrationVerificationText": {
"message": "Por favor, verifique se o aplicativo desktop mostra esta impressão digital: "
},
"desktopIntegrationDisabledTitle": {
"message": "A integração com o navegador não está ativada"
},
"desktopIntegrationDisabledDesc": {
"message": "A integração com o navegador não está habilitada no aplicativo Bitwarden Desktop. Por favor, habilite-a nas configurações do aplicativo desktop."
},
"startDesktopTitle": {
"message": "Iniciar o aplicativo Bitwarden Desktop"
},
"startDesktopDesc": {
"message": "O aplicativo Bitwarden Desktop precisa ser iniciado antes que esta função possa ser usada."
},
"errorEnableBiometricTitle": {
"message": "Não foi possível ativar os dados biométricos"
},
"errorEnableBiometricDesc": {
"message": "Ação foi cancelada pelo desktop"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "O aplicativo desktop invalidou o canal de comunicação seguro. Por favor, tente esta operação novamente"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Comunicação com o desktop interrompida"
},
"nativeMessagingWrongUserDesc": {
"message": "O aplicativo de desktop está conectado em uma conta diferente. Por favor, certifique-se de que ambos os aplicativos estejam conectados na mesma conta."
},
"nativeMessagingWrongUserTitle": {
"message": "A conta não confere"
},
"biometricsNotEnabledTitle": {
"message": "Biometria não habilitada"
},
"biometricsNotEnabledDesc": {
"message": "A biometria com o navegador requer que a biometria de desktop seja ativada nas configurações primeiro."
},
"biometricsNotSupportedTitle": {
"message": "Biometria não suportada"
},
"biometricsNotSupportedDesc": {
"message": "A biometria com o navegador não é suportada neste dispositivo."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Devido a uma Política Empresarial, você está restrito de salvar itens para seu cofre pessoal. Altere a opção de Propriedade para uma organização e escolha entre as Coleções disponíveis."
},
"personalOwnershipPolicyInEffect": {
"message": "Uma política de organização está afetando suas opções de propriedade."
}
}

View File

@ -498,7 +498,7 @@
"message": "Item editado"
},
"deleteItemConfirmation": {
"message": "Tem a certeza de que pretende eliminar este item?"
"message": "Tem a certeza de que pretende apagar este item?"
},
"deletedItem": {
"message": "Item enviado para o lixo"
@ -606,9 +606,15 @@
"message": "AVISO",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "Esta exportação contém os seus dados do cofre num formato desencriptado. Não deve armazenar ou enviar o ficheiro exportado através de canais inseguros (como email). Apague-a imediatamente após a utilizar."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "Introduza a sua palavra-passe mestra para exportar os dados do seu cofre."
},
@ -895,7 +901,7 @@
"message": "Gerar e copiar uma nova palavra-passe aleatória para a área de transferência"
},
"commandLockVaultDesc": {
"message": "Lock the vault"
"message": "Bloquear o cofre"
},
"privateModeMessage": {
"message": "Infelizmente esta janela não está disponível no modo privado para este navegador."
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "O seu cofre está bloqueado. Verifique o seu PIN para continuar."
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "Bloquear com palavra-passe mestra quando reiniciar o navegador"
},
@ -1361,12 +1376,78 @@
"message": "Ao marcar esta caixa concorda com o seguinte:"
},
"acceptPoliciesError": {
"message": "Terms of Service and Privacy Policy have not been acknowledged."
"message": "Os Termos de Serviço e a Política de Privacidade não foram aceites."
},
"termsOfService": {
"message": "Termos de serviço"
},
"privacyPolicy": {
"message": "Política de privacidade"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

File diff suppressed because it is too large Load Diff

View File

@ -498,7 +498,7 @@
"message": "Элемент изменен"
},
"deleteItemConfirmation": {
"message": "Вы действительно хотите удалить этот элемент?"
"message": "Вы действительно хотите отправить в корзину?"
},
"deletedItem": {
"message": "Элемент отправлен в корзину"
@ -606,9 +606,15 @@
"message": "ВНИМАНИЕ",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Подтвердить экспорт хранилища"
},
"exportWarningDesc": {
"message": "Экспортируемый файл содержит данные вашего хранилища в незашифрованном формате. Его не следует хранить или отправлять по небезопасным каналам (например, по электронной почте). Удалите его сразу после использования."
},
"encExportWarningDesc": {
"message": "При экспорте данные шифруются с помощью ключа шифрования учетной записи. Если вы когда-либо повернете ключ шифрования учетной записи, вам следует экспортировать данные повторно, поскольку вы не сможете расшифровать этот файл экспорта."
},
"exportMasterPassword": {
"message": "Для экспорта данных из хранилища введите мастер-пароль."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Ваше хранилище заблокировано. Для продолжения введите PIN-код."
},
"unlockWithBiometrics": {
"message": "Разблокировать с помощью биометрии"
},
"awaitDesktop": {
"message": "Ожидание подтверждения с компьютера"
},
"awaitDesktopDesc": {
"message": "Для включения биометрии в браузере, подтвердите это в приложении Bitwarden для компьютера."
},
"lockWithMasterPassOnRestart": {
"message": "Блокировать мастер-паролем при перезапуске браузера"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Политика конфиденциальности"
},
"hintEqualsPassword": {
"message": "Подсказка для пароля не может совпадать с паролем."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Проверка синхронизации на компьютере"
},
"desktopIntegrationVerificationText": {
"message": "Пожалуйста, убедитесь, что приложение для компьютера отображает этот отпечаток: "
},
"desktopIntegrationDisabledTitle": {
"message": "Интеграция с браузером не включена"
},
"desktopIntegrationDisabledDesc": {
"message": "Интеграция браузера не включена в приложении Bitwarden для компьютера. Пожалуйста, включите ее в настройках приложения для компьютера."
},
"startDesktopTitle": {
"message": "Запустить приложение Bitwarden для компьютера"
},
"startDesktopDesc": {
"message": "Перед использованием этой функции необходимо запустить приложение Bitwarden для компьютера."
},
"errorEnableBiometricTitle": {
"message": "Не удается включить биометрию"
},
"errorEnableBiometricDesc": {
"message": "Действие было отменено приложением для компьютера"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Приложению для компьютера не удалось создать защищенный канал подключения. Пожалуйста, попробуйте еще раз"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Соединение с приложением для компьютера прервано"
},
"nativeMessagingWrongUserDesc": {
"message": "Приложение для компьютера авторизовано под другим аккаунтом. Необходимо чтобы оба приложения были авторизованы под одной учетной записью."
},
"nativeMessagingWrongUserTitle": {
"message": "Несоответствие аккаунта"
},
"biometricsNotEnabledTitle": {
"message": "Биометрия не включена"
},
"biometricsNotEnabledDesc": {
"message": "Для активации биометрии в браузере сначала необходимо включить биометрию в приложении для компьютера."
},
"biometricsNotSupportedTitle": {
"message": "Биометрия не поддерживается"
},
"biometricsNotSupportedDesc": {
"message": "Биометрия в браузере не поддерживается этом устройстве."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Разрешение не представлено"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Без разрешения на взаимодействие с Bitwarden для компьютера биометрия в расширении браузера работать не сможет. Попробуйте еще раз."
},
"personalOwnershipSubmitError": {
"message": "В соответствии с корпоративной политикой вам запрещено сохранять элементы в личном хранилище. Измените владельца на организацию и выберите из доступных Коллекций."
},
"personalOwnershipPolicyInEffect": {
"message": "Политика организации влияет на ваши варианты владения."
}
}

View File

@ -1,6 +1,6 @@
{
"appName": {
"message": "Bitwarden"
"message": "බිට්වාඩන්"
},
"extName": {
"message": "Bitwarden - Free Password Manager",
@ -17,7 +17,7 @@
"message": "ගිණුමක් නිර්මාණය කරන්න"
},
"login": {
"message": "Log In"
"message": "පිවිසෙන්න"
},
"enterpriseSingleSignOn": {
"message": "Enterprise Single Sign-On"
@ -498,7 +498,7 @@
"message": "Edited item"
},
"deleteItemConfirmation": {
"message": "Are you sure you want to delete this item?"
"message": "Do you really want to send to the trash?"
},
"deletedItem": {
"message": "Sent item to trash"
@ -606,9 +606,15 @@
"message": "WARNING",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "This export contains your vault data in an unencrypted format. You should not store or send the exported file over unsecure channels (such as email). Delete it immediately after you are done using it."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "Enter your master password to export your vault data."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Your vault is locked. Verify your PIN code to continue."
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "Lock with master password on browser restart"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Privacy Policy"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

View File

@ -191,7 +191,7 @@
"message": "Automaticky generovať silné a unikátne heslá k prihlasovacím údajom."
},
"bitWebVault": {
"message": "bitwarden webový trezor"
"message": "Webový trezor Bitwarden"
},
"importItems": {
"message": "Importovať položky"
@ -549,7 +549,7 @@
"description": "Clipboard is the operating system thing where you copy/paste data to on your device."
},
"notificationAddDesc": {
"message": "Má si bitwarden zapamätať toto heslo?"
"message": "Má si pre vás Bitwarden zapamätať toto heslo?"
},
"notificationAddSave": {
"message": "Áno, uložiť teraz"
@ -606,9 +606,15 @@
"message": "UPOZORNENIE",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "Tento export obsahuje vaše dáta v nešifrovanom formáte. Nemali by ste ich ukladať, ani posielať cez nezabezpečené kanály (napr. email). Okamžite ho odstráňte, keď ho prestanete používať."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "Zadajte vaše hlavné heslo pre export údajov trezoru."
},
@ -619,7 +625,7 @@
"message": "Zdieľať trezor"
},
"shareVaultConfirmation": {
"message": "Bitwarden vám umožňuje zdieľať váš trezor s ostatnými ak používate konto v Organizácii. Chcete navštíviť stránku bitwarden.com a dozvedieť sa viac?"
"message": "Bitwarden vám umožňuje zdieľať váš trezor s ostatnými použitím konta v organizácii. Chcete navštíviť stránku bitwarden.com a dozvedieť sa viac?"
},
"shareItem": {
"message": "Zdieľať položku"
@ -727,7 +733,7 @@
"message": "Ste prémiovým členom!"
},
"premiumCurrentMemberThanks": {
"message": "Ďakujeme, že podporujete bitwarden."
"message": "Ďakujeme, že podporujete Bitwarden."
},
"premiumPrice": {
"message": "Všetko len za %price% /rok!",
@ -844,7 +850,7 @@
"message": "Sebou hosťované prostredie"
},
"selfHostedEnvironmentFooter": {
"message": "Špecifikujte základnú URL lokálne hosťovanej inštalácie bitwarden."
"message": "Zadajte základnú URL adresu lokálne hosťovanej inštalácie Bitwarden."
},
"customEnvironment": {
"message": "Vlastné prostredie"
@ -1226,7 +1232,7 @@
"message": "Slabé hlavné heslo"
},
"weakMasterPasswordDesc": {
"message": "Hlavné heslo ktoré ste zadali je slabé. Mali by ste použiť silné heslo (alebo frázu) aby ste spoľahlivo ochránili váš Bitwarden účet. Naozaj chcete použiť toto heslo?"
"message": "Hlavné heslo, ktoré ste zadali, je slabé. Mali by ste použiť silné heslo (alebo frázu), aby ste spoľahlivo ochránili váš Bitwarden účet. Naozaj chcete použiť toto heslo?"
},
"pin": {
"message": "PIN",
@ -1236,7 +1242,7 @@
"message": "Odomknúť s PIN"
},
"setYourPinCode": {
"message": "Nastaviť kód PIN na odomknutie Bitwarden. Nastavenie PIN sa vynuluje, ak úplne odhlásite z aplikácie."
"message": "Nastaviť kód PIN na odomykanie Bitwardenu. Nastavenie PIN sa vynuluje, ak sa úplne odhlásite z aplikácie."
},
"pinRequired": {
"message": "Kód PIN je povinný."
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Váš trezor je uzamknutý. Overte sa PIN kódom ak chcete pokračovať."
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "Pri reštarte prehliadača zamknúť s hlavným heslom"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Zásady ochrany osobných údajov"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

File diff suppressed because it is too large Load Diff

View File

@ -50,7 +50,7 @@
"message": "Савет Главне Лозинке (опционо)"
},
"tab": {
"message": "Картица"
"message": "Језичак"
},
"myVault": {
"message": "Мој Сеф"
@ -62,7 +62,7 @@
"message": "Подешавања"
},
"currentTab": {
"message": "Тренутна картица"
"message": "Тренутни језичак"
},
"copyPassword": {
"message": "Копирај лозинку"
@ -71,7 +71,7 @@
"message": "Копирај белешку"
},
"copyUri": {
"message": "Копирај везу"
"message": "Копирај УРЛ"
},
"copyUsername": {
"message": "Копирај име"
@ -98,7 +98,7 @@
"message": "Одјављени сте од сефа."
},
"autoFillInfo": {
"message": "Нема доступне пријаве за ауто-пуњење за за тренутну картицу прегледача."
"message": "Нема доступне пријаве за ауто-пуњење за тренутни језичак прегледача."
},
"addLogin": {
"message": "Додај Пријаву"
@ -125,7 +125,7 @@
"message": "Налог"
},
"changeMasterPassword": {
"message": "Промени Главну Лозинку"
"message": "Промени главну лозинку"
},
"fingerprintPhrase": {
"message": "Сигурносна Фраза Сефа",
@ -172,10 +172,10 @@
"message": "Помоћ и подршка"
},
"sync": {
"message": "Синхронизуј"
"message": "Синхронизација"
},
"syncVaultNow": {
"message": "Синхронизуј сеф одмах"
"message": "Одмах синхронизуј сеф"
},
"lastSync": {
"message": "Задња синронизација:"
@ -191,10 +191,10 @@
"message": "Аутоматски генеришите јаке, јединствене лозинке за ваше пријаве."
},
"bitWebVault": {
"message": "Bitwarden Сеф"
"message": "Bitwarden Интернет Сеф"
},
"importItems": {
"message": "Увоз ставка"
"message": "Увоз ставки"
},
"select": {
"message": "Изабери"
@ -218,7 +218,7 @@
"message": "Одвајач речи"
},
"capitalize": {
"message": "Велика слова",
"message": "Прво слово велико",
"description": "Make the first letter of a work uppercase."
},
"includeNumber": {
@ -234,7 +234,7 @@
"message": "Избегавајте двосмислене знакове"
},
"searchVault": {
"message": "Претраћи сеф"
"message": "Претражи сеф"
},
"edit": {
"message": "Уреди"
@ -246,7 +246,7 @@
"message": "Нама ставке у листи."
},
"itemInformation": {
"message": "Ставка Информације"
"message": "Инфо о ставци"
},
"username": {
"message": "Корисничко име"
@ -255,7 +255,7 @@
"message": "Лозинка"
},
"passphrase": {
"message": "Реченица"
"message": "Фраза лозинка"
},
"favorite": {
"message": "Омиљено"
@ -279,7 +279,7 @@
"message": "Види ставку"
},
"launch": {
"message": "Покрени"
"message": "Отвори"
},
"website": {
"message": "Веб сајт"
@ -288,7 +288,7 @@
"message": "Пребаци видљивост"
},
"manage": {
"message": "Управљај"
"message": "Управљати"
},
"other": {
"message": "Остало"
@ -303,10 +303,10 @@
"message": "Ваш прегледач не подржава једноставно копирање клипборда. Уместо тога копирајте га ручно."
},
"verifyMasterPassword": {
"message": "Проверити Главну Лозинку"
"message": "Верификујте Главну Лозинку"
},
"yourVaultIsLocked": {
"message": "Сеф је блокиран. Проверити главну лозинку за наставак."
"message": "Сеф је блокиран. Унесите главну лозинку за наставак."
},
"unlock": {
"message": "Откључај"
@ -443,7 +443,7 @@
"message": "Фасцикла додата"
},
"changeMasterPass": {
"message": "Промени Главну Лозинку"
"message": "Промени главну лозинку"
},
"changeMasterPasswordConfirmation": {
"message": "Можете променити главну лозинку у Вашем сефу на bitwarden.com. Да ли желите да посетите веб страницу сада?"
@ -501,7 +501,7 @@
"message": "Сигурно избрисати ову ставку?"
},
"deletedItem": {
"message": "Пошаљи ставку у Ђубре"
"message": "Пошаљи ставку у Отпад"
},
"overwritePassword": {
"message": "Препиши лозинку"
@ -519,20 +519,20 @@
"message": "Тип претраге"
},
"noneFolder": {
"message": "Нема фасцикле",
"message": "Без фасцикле",
"description": "This is the folder for uncategorized items"
},
"disableAddLoginNotification": {
"message": "Онемогући обавештење Додај Пријаву"
},
"addLoginNotificationDesc": {
"message": "\"Нотификације Додај Лозинку\" аутоматски тражи да сачувате нове пријаве у сефу кад год се први пут пријавите на њих."
"message": "„Нотификације Додај Лозинку“ аутоматски тражи да сачувате нове пријаве у сефу кад год се први пут пријавите на њих."
},
"dontShowCardsCurrentTab": {
"message": "Не приказуј картице на страници"
"message": "Не приказуј кредитне картице на страници"
},
"dontShowCardsCurrentTabDesc": {
"message": "Ставке картица из вашег сефа наведене су на страници „Тренутна картица“ ради једноставног приступа аутоматског попуњавања."
"message": "Ставке кредитне картице из вашег сефа наведене су на страници „Тренутна картица“ ради једноставног приступа аутоматског попуњавања."
},
"dontShowIdentitiesCurrentTab": {
"message": "Не приказуј идентитете на страници"
@ -561,7 +561,7 @@
"message": "Угаси Нотификацију Промењена Лозинка"
},
"disableChangedPasswordNotificationDesc": {
"message": "\"Нотификација Промењена Лозинка\" аутоматски тражи да ажурирате лозинку за пријављивање у сефу сваки пут када открије да сте је променили на веб сајту."
"message": "„Нотификација Промењена Лозинка“ аутоматски тражи да ажурирате лозинку за пријављивање у сефу сваки пут када открије да сте је променили на веб сајту."
},
"notificationChangeDesc": {
"message": "Да се ажурира ова лозинка у Bitwarden?"
@ -589,11 +589,11 @@
"message": "Промени боје апликације"
},
"dark": {
"message": "Тамно",
"message": "Тамна",
"description": "Dark color"
},
"light": {
"message": "Светло",
"message": "Светла",
"description": "Light color"
},
"exportVault": {
@ -606,9 +606,15 @@
"message": "УПОЗОРЕЊЕ",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Потврдите извоз сефа"
},
"exportWarningDesc": {
"message": "Овај извоз садржи податке сефа у нешифрираном формату. Не бисте смели да сачувате или шаљете извезену датотеку преко несигурних канала (као што је имејл). Избришите датотеку одмах након што завршите са коришћењем."
},
"encExportWarningDesc": {
"message": "Овај извоз шифрује податке користећи кључ за шифровање вашег налога. Ако икада промените кључ за шифровање свог налога, требало би да поново извезете, јер нећете моћи да дешифрујете овај извоз."
},
"exportMasterPassword": {
"message": "Унети главну лозинку за извиз сефа."
},
@ -637,13 +643,13 @@
"message": "Сазнај више"
},
"authenticatorKeyTotp": {
"message": "Кључ аутентификације (TOTP)"
"message": "Једнократни код"
},
"verificationCodeTotp": {
"message": "Верификациони код (TOTP)"
"message": "Једнократни код"
},
"copyVerificationCode": {
"message": "Копирај Верификациони код"
"message": "Копирај верификациони код"
},
"attachments": {
"message": "Прилози"
@ -694,10 +700,10 @@
"message": "Освежите чланство"
},
"premiumNotCurrentMember": {
"message": "Тренутно нисте премиум члан."
"message": "Тренутно нисте премијум члан."
},
"premiumSignUpAndGet": {
"message": "Пријавите се за премиум чланство и добијте:"
"message": "Пријавите се за премијум чланство и добијте:"
},
"ppremiumSignUpStorage": {
"message": "1ГБ шифровано складиште за прилоге."
@ -709,22 +715,22 @@
"message": "Извештаји о хигијени лозинки, здравственом стању налога и кршењу података да бисте заштитили сеф."
},
"ppremiumSignUpTotp": {
"message": "Генератор TOTP верификационог кода (2FA) за пријаве из сефа."
"message": "Генератор једнократног кода (2FA) за пријаве из сефа."
},
"ppremiumSignUpSupport": {
"message": "Приоритетна корисничка подршка."
},
"ppremiumSignUpFuture": {
"message": "Све будуће премиум функције. Више ускоро!"
"message": "Све будуће премијум функције. Више долазе ускоро!"
},
"premiumPurchase": {
"message": "Купити премијум"
},
"premiumPurchaseAlert": {
"message": "Можете купити премиум претплату на bitwarden.com. Да ли желите да посетите веб сајт сада?"
"message": "Можете купити премијум претплату на bitwarden.com. Да ли желите да посетите веб сајт сада?"
},
"premiumCurrentMember": {
"message": "Ви сте премиум члан!"
"message": "Ви сте премијум члан!"
},
"premiumCurrentMemberThanks": {
"message": "Хвала Вам за подршку Bitwarden-а."
@ -742,10 +748,10 @@
"message": "Освежавање је завршено"
},
"disableAutoTotpCopy": {
"message": "Угаси аутоматско копирање TOTP"
"message": "Угаси аутоматско копирање једнократног кода"
},
"disableAutoTotpCopyDesc": {
"message": "Ако је за вашу пријаву приложен аутентификациони кључ, TOTP верификациони код се аутоматски копира у вашем клипборду кад год ауто-попуните пријаву."
"message": "Ако је за вашу пријаву приложен аутентификациони кључ, једнократни код се аутоматски копира у вашем клипборду кад год ауто-попуните пријаву."
},
"premiumRequired": {
"message": "Потребан Премијум"
@ -1078,7 +1084,7 @@
"message": "Сигурносна белешка"
},
"typeCard": {
"message": "Картица"
"message": "Кредитна Картица"
},
"typeIdentity": {
"message": "Идентитет"
@ -1102,7 +1108,7 @@
"message": "Освежи"
},
"cards": {
"message": "Картице"
"message": "Кредитне Картице"
},
"identities": {
"message": "Идентитети"
@ -1150,7 +1156,7 @@
"description": "A programming term, also known as 'RegEx'."
},
"matchDetection": {
"message": "Налажење везе",
"message": "Налажење УРЛ",
"description": "URI match detection for auto-fill."
},
"defaultMatchDetection": {
@ -1188,7 +1194,7 @@
"message": "Подразумевано"
},
"dateUpdated": {
"message": "Ажурирано",
"message": "Промењено",
"description": "ex. Date this item was updated"
},
"datePasswordUpdated": {
@ -1226,14 +1232,14 @@
"message": "Слаба Главна Лозинка"
},
"weakMasterPasswordDesc": {
"message": "Главна лозинка коју сте одабрали је слаба. Требали бисте користити јаку главну лозинку (или приступну фразу) да бисте правилно заштитили свој налог. Да ли сте сигурни да желите да користите ову главну лозинку?"
"message": "Главна лозинка коју сте одабрали је слаба. Требали бисте користити јаку главну лозинку (или фразу лозинке) да бисте правилно заштитили свој налог. Да ли сте сигурни да желите да користите ову главну лозинку?"
},
"pin": {
"message": "ПИН",
"description": "PIN code. Ex. The short code (often numeric) that you use to unlock a device."
},
"unlockWithPin": {
"message": "Деблокирај са ПИН"
"message": "Откључај са ПИН"
},
"setYourPinCode": {
"message": "Поставите свој ПИН код за откључавање Bitwarden-а. Поставке ПИН-а ће се ресетовати ако се икада потпуно одјавите из апликације."
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Сеф је блокиран. Проверити ПИН код за наставак."
},
"unlockWithBiometrics": {
"message": "Откључавајте помоћу биометрије"
},
"awaitDesktop": {
"message": "Чекање потврде са десктопа"
},
"awaitDesktopDesc": {
"message": "Потврдити са биометриком у Bitwarden Desktop апликацији да би упалили биометрику у претраживачу."
},
"lockWithMasterPassOnRestart": {
"message": "Закључајте са главном лозинком при поновном покретању прегледача"
},
@ -1257,7 +1272,7 @@
"message": "Морате одабрати макар једну колекцију."
},
"cloneItem": {
"message": "Цлонирај ставку"
"message": "Клонирај ставку"
},
"clone": {
"message": "Клонирај"
@ -1273,11 +1288,11 @@
"description": "Verb form: to make secure or inaccesible by"
},
"trash": {
"message": "Смеће",
"message": "Отпад",
"description": "Noun: a special folder to hold deleted items"
},
"searchTrash": {
"message": "Тражи смеће"
"message": "Тражи отпад"
},
"permanentlyDeleteItem": {
"message": "Трајно избрисати ставку"
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Политика приватности"
},
"hintEqualsPassword": {
"message": "Ваша помоћ за лозинку не може да буде иста као лозинка."
},
"ok": {
"message": "У реду"
},
"desktopSyncVerificationTitle": {
"message": "Провера синх Desktop-а"
},
"desktopIntegrationVerificationText": {
"message": "Проверите да десктоп апликација показује овај отисак: "
},
"desktopIntegrationDisabledTitle": {
"message": "Интеграција претраживача није омогућена"
},
"desktopIntegrationDisabledDesc": {
"message": "Интеграција претраживача није омогућена у Bitwarden Desktop. Омогућите је у подешавања из Bitwarden Desktop апликације."
},
"startDesktopTitle": {
"message": "Покрени Bitwarden Desktop апликацију"
},
"startDesktopDesc": {
"message": "Bitwarden Desktop апликација треба да се покрене пре употребе ове функције."
},
"errorEnableBiometricTitle": {
"message": "Погрешно омогућавање биометрике"
},
"errorEnableBiometricDesc": {
"message": "Desktop апликација је поништила акцију"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop апликација је онемогућила безбедни комуникациони канал. Поновите ову операцију"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop комуникација прекинута"
},
"nativeMessagingWrongUserDesc": {
"message": "Desktop апликација је пријављена на други налог. Проверите да су обе апликације са истим налогом."
},
"nativeMessagingWrongUserTitle": {
"message": "Неподударање налога"
},
"biometricsNotEnabledTitle": {
"message": "Биометрија није омогућена"
},
"biometricsNotEnabledDesc": {
"message": "Биометрија прегледача захтева да у поставкама прво буде омогућена биометрија desktop-а."
},
"biometricsNotSupportedTitle": {
"message": "Биометрија није подржана"
},
"biometricsNotSupportedDesc": {
"message": "Биометрија прегледача није подржана на овом уређају."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Због смерница за предузећа, ограничено вам је чување предмета у вашем личном трезору. Промените опцију власништва у организацију и изаберите из доступних колекција."
},
"personalOwnershipPolicyInEffect": {
"message": "Политика организације утичу на ваше могућности власништва."
}
}

View File

@ -498,7 +498,7 @@
"message": "Ändrade objekt"
},
"deleteItemConfirmation": {
"message": "Är du säker på att du vill ta bort detta objekt?"
"message": "Är du säker på att du vill radera detta objekt?"
},
"deletedItem": {
"message": "Raderade objekt"
@ -606,9 +606,15 @@
"message": "VARNING",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Bekräfta export av valv"
},
"exportWarningDesc": {
"message": "Den här exporten innehåller ditt valvs okrypterade data i .csv-format. Du bör inte lagra eller skicka filen över osäkra anslutningar (genom t.ex. mejl). Radera filen efter du är färdig med den."
},
"encExportWarningDesc": {
"message": "Denna export krypterar dina data med kontots krypteringsnyckel. Om du någonsin roterar kontots krypteringsnyckel bör du exportera igen eftersom du inte kommer att kunna dekryptera denna exportfil."
},
"exportMasterPassword": {
"message": "Ange ditt huvudlösenord för att exportera ditt valv."
},
@ -895,7 +901,7 @@
"message": "Skapa och kopiera ett nytt slumpmässigt lösenord till urklipp."
},
"commandLockVaultDesc": {
"message": "Lock the vault"
"message": "Lås valvet"
},
"privateModeMessage": {
"message": "Det här fönstret är tyvärr inte tillgängligt i privat läge för denna webbläsare."
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Valvet är låst. Kontrollera din PIN-kod för att fortsätta."
},
"unlockWithBiometrics": {
"message": "Lås upp med biometri"
},
"awaitDesktop": {
"message": "Väntar på bekräftelse från skrivbordsprogrammet"
},
"awaitDesktopDesc": {
"message": "Säkerställ att du använder biometri i Bitwardens skrivbordsprogram för att aktivera biometri för webbläsaren."
},
"lockWithMasterPassOnRestart": {
"message": "Lås med huvudlösenordet vid omstart av webbläsaren"
},
@ -1358,15 +1373,81 @@
"message": "Ditt nya huvudlösenord uppfyller inte kraven i policyn."
},
"acceptPolicies": {
"message": "By checking this box you agree to the following:"
"message": "Genom att markera denna ruta godkänner du följande:"
},
"acceptPoliciesError": {
"message": "Terms of Service and Privacy Policy have not been acknowledged."
"message": "Användarvillkoren och Integritetspolicyn har inte accepterats."
},
"termsOfService": {
"message": "Terms of Service"
"message": "Användarvillkor"
},
"privacyPolicy": {
"message": "Privacy Policy"
"message": "Integritetspolicy"
},
"hintEqualsPassword": {
"message": "Din lösenordsledtråd får inte vara samma som ditt lösenord."
},
"ok": {
"message": "OK"
},
"desktopSyncVerificationTitle": {
"message": "Verifiering av synkronisering med skrivbordsprogrammet"
},
"desktopIntegrationVerificationText": {
"message": "Vänligen bekräfta att skrivbordsprogrammet visar det här fingeravtrycket: "
},
"desktopIntegrationDisabledTitle": {
"message": "Webbläsarintegration är inte aktiverad"
},
"desktopIntegrationDisabledDesc": {
"message": "Webbläsarintegration är inte aktiverad i Bitwardens skrivbordsprogram. Aktivera det i inställningarna i skrivbordsprogrammet."
},
"startDesktopTitle": {
"message": "Starta Bitwardens skrivbordsprogram"
},
"startDesktopDesc": {
"message": "Bitwardens skrivbordsprogram måste köras innan denna funktion kan användas."
},
"errorEnableBiometricTitle": {
"message": "Det gick inte att aktivera biometri"
},
"errorEnableBiometricDesc": {
"message": "Åtgärden avbröts av skrivbordsprogrammet"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Skrivbordsprogrammet ogiltigförklarade den säkra kommunikationskanalen. Försök igen"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Kommunikationen med skrivbordsprogrammet avbröts"
},
"nativeMessagingWrongUserDesc": {
"message": "Skrivbordsprogrammet är inloggat på ett annat konto. Se till att båda applikationerna är inloggade på samma konto."
},
"nativeMessagingWrongUserTitle": {
"message": "Kontoavvikelse"
},
"biometricsNotEnabledTitle": {
"message": "Biometri är inte aktiverat"
},
"biometricsNotEnabledDesc": {
"message": "Biometri i webbläsaren kräver att biometri på skrivbordet aktiveras i inställningarna först."
},
"biometricsNotSupportedTitle": {
"message": "Biometri stöds inte"
},
"biometricsNotSupportedDesc": {
"message": "Biometri i webbläsaren stöds inte på den här enheten."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "På grund av en av företagets policyer är du begränsad från att spara objekt till ditt personliga valv. Ändra ägarskap till en organisation och välj från tillgängliga samlingar."
},
"personalOwnershipPolicyInEffect": {
"message": "En organisationspolicy påverkar dina ägarskapsalternativ."
}
}

View File

@ -29,7 +29,7 @@
"message": "ปิด"
},
"submit": {
"message": "Submit"
"message": "ส่งข้อมูล"
},
"emailAddress": {
"message": "ที่อยู่อีเมล"
@ -264,7 +264,7 @@
"message": "โน้ต"
},
"note": {
"message": "Note"
"message": "โน้ต"
},
"editItem": {
"message": "แก้ไขรายการ"
@ -279,7 +279,7 @@
"message": "ดูรายการ"
},
"launch": {
"message": "Launch"
"message": "เริ่ม"
},
"website": {
"message": "เว็บไซต์"
@ -309,7 +309,7 @@
"message": "Your vault is locked. Verify your master password to continue."
},
"unlock": {
"message": "Unlock"
"message": "ปลดล็อค"
},
"loggedInAsOn": {
"message": "Logged in as $EMAIL$ on $HOSTNAME$.",
@ -325,7 +325,7 @@
}
},
"invalidMasterPassword": {
"message": "Invalid master password"
"message": "รหัสผ่านหลักไม่ถูกต้อง"
},
"vaultTimeout": {
"message": "Vault Timeout"
@ -337,19 +337,19 @@
"message": "ทันที"
},
"tenSeconds": {
"message": "10 seconds"
"message": "10 วินาที"
},
"twentySeconds": {
"message": "20 seconds"
"message": "20 วินาที"
},
"thirtySeconds": {
"message": "30 seconds"
"message": "30 วินาที"
},
"oneMinute": {
"message": "1 นาที"
},
"twoMinutes": {
"message": "2 minutes"
"message": "2 นาที"
},
"fiveMinutes": {
"message": "5 นาที"
@ -373,10 +373,10 @@
"message": "On Restart"
},
"never": {
"message": "Never"
"message": "ไม่อีกเลย"
},
"security": {
"message": "Security"
"message": "ความปลอดภัย"
},
"errorOccurred": {
"message": "An error has occurred"
@ -419,7 +419,7 @@
"message": "Unable to auto-fill the selected login on this page. Copy/paste your username and/or password instead."
},
"loggedOut": {
"message": "Logged out"
"message": "ออกจากระบบ"
},
"loginExpired": {
"message": "Your login session has expired."
@ -498,7 +498,7 @@
"message": "Edited item"
},
"deleteItemConfirmation": {
"message": "Are you sure you want to delete this item?"
"message": "Do you really want to send to the trash?"
},
"deletedItem": {
"message": "Sent item to trash"
@ -606,9 +606,15 @@
"message": "WARNING",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "This export contains your vault data in an unencrypted format. You should not store or send the exported file over unsecure channels (such as email). Delete it immediately after you are done using it."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "Enter your master password to export your vault data."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Your vault is locked. Verify your PIN code to continue."
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "Lock with master password on browser restart"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Privacy Policy"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

View File

@ -523,7 +523,7 @@
"description": "This is the folder for uncategorized items"
},
"disableAddLoginNotification": {
"message": "Giriş Ekleme Bildirimlerini Kapat"
"message": "Hesap Ekle Bildirimlerini Kapat"
},
"addLoginNotificationDesc": {
"message": "\"Hesap Ekle Bildirimi\" otomatik olarak, ilk kez oturum açtığınız hesabınızı kasanıza kaydetmeniz için uyarı verir."
@ -606,9 +606,15 @@
"message": "UYARI",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "This export contains your vault data in an unencrypted format. You should not store or send the exported file over unsecure channels (such as email). Delete it immediately after you are done using it."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "Kasadaki verilerinizi dışa aktarmak için ana parolanızı girin."
},
@ -700,7 +706,7 @@
"message": "Premium üye olun ve ek olarak bu özelliklere sahip olun:"
},
"ppremiumSignUpStorage": {
"message": "1 GB şifreli dosya depolama."
"message": "Dosyalarınız için 1GB şifreli depolama."
},
"ppremiumSignUpTwoStep": {
"message": "İki adımlı oturum açma seçenekleri YubiKey, FIDO U2F ve Duo gibi."
@ -895,7 +901,7 @@
"message": "Rastgele yeni bir parola oluştur ve panoya kopyala."
},
"commandLockVaultDesc": {
"message": "Lock the vault"
"message": "Kasayı kilitle"
},
"privateModeMessage": {
"message": "Ne yazık ki bu pencere bu tarayıcının özel modunda kullanılabilir değildir."
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Kasan kilitlendi. Devam etmek için PIN kodunu doğrula."
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "Tarayıcı yeniden başlatıldığında ana şifre ile kilitle"
},
@ -1358,15 +1373,81 @@
"message": "Yeni ana parolanız ilke gereksinimlerini karşılamıyor."
},
"acceptPolicies": {
"message": "By checking this box you agree to the following:"
"message": "Bu kutuyu işaretleyerek aşağıdakileri kabul etmiş olursunuz:"
},
"acceptPoliciesError": {
"message": "Terms of Service and Privacy Policy have not been acknowledged."
"message": "Hizmet Şartları ve Gizlilik Politikası kabul edilmedi."
},
"termsOfService": {
"message": "Terms of Service"
"message": "Hizmet Şartları"
},
"privacyPolicy": {
"message": "Privacy Policy"
"message": "Gizlilik Politikası"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "Tamam"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

View File

@ -166,7 +166,7 @@
"message": "Теки"
},
"noFolders": {
"message": "Немає тек для відображення."
"message": "Немає тек."
},
"helpFeedback": {
"message": "Допомога і зворотній зв'язок"
@ -243,7 +243,7 @@
"message": "Перегляд"
},
"noItemsInList": {
"message": "Немає записів для відображення."
"message": "Немає записів."
},
"itemInformation": {
"message": "Інформація про запис"
@ -467,7 +467,7 @@
"message": "Перегляньте знайомство, щоб дізнатися про можливості розширення для браузера."
},
"syncingComplete": {
"message": "Синхронізація завершена"
"message": "Синхронізацію завершено"
},
"syncingFailed": {
"message": "Не вдалося синхронізувати"
@ -498,7 +498,7 @@
"message": "Запис змінено"
},
"deleteItemConfirmation": {
"message": "Ви дійсно хочете видалити цей запис?"
"message": "Ви дійсно хочете перенести до смітника?"
},
"deletedItem": {
"message": "Запис перенесено до смітника"
@ -516,14 +516,14 @@
"message": "Пошук в збірках"
},
"searchType": {
"message": "Типу пошуку"
"message": "Пошук за типом"
},
"noneFolder": {
"message": "Без теки",
"description": "This is the folder for uncategorized items"
},
"disableAddLoginNotification": {
"message": "Вимкнути сповіщення про додавання запису"
"message": "Вимкнути сповіщення про новий запис"
},
"addLoginNotificationDesc": {
"message": "Сповіщення про додавання пароля автоматично пропонує зберегти нові паролі у вашому сховищі під час першого входу."
@ -558,10 +558,10 @@
"message": "Ніколи для цього сайту"
},
"disableChangedPasswordNotification": {
"message": "Вимкнути сповіщення про змінений пароль"
"message": "Вимкнути сповіщення зміненого пароля"
},
"disableChangedPasswordNotificationDesc": {
"message": "\"Сповіщення про змінений пароль\" автоматично запитує вас про оновлення пароля у вашому сховищі, коли виявлено зміну пароля на вебсайті."
"message": "Сповіщення зміненого пароля автоматично запитує вас про оновлення пароля у сховищі, коли виявлено його зміну на вебсайті."
},
"notificationChangeDesc": {
"message": "Ви хочете оновити цей пароль в Bitwarden?"
@ -606,9 +606,15 @@
"message": "ПОПЕРЕДЖЕННЯ",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Підтвердити експорт сховища"
},
"exportWarningDesc": {
"message": "Експортовані дані вашого сховища знаходяться в незашифрованому вигляді. Вам не слід зберігати чи надсилати їх через незахищені канали (наприклад, е-поштою). Після використання негайно видаліть їх."
},
"encExportWarningDesc": {
"message": "Цей експорт шифрує ваші дані за допомогою ключа шифрування облікового запису. Якщо ви коли-небудь оновите ключ шифрування облікового запису, ви повинні виконати експорт знову, оскільки не зможете розшифрувати цей файл експорту."
},
"exportMasterPassword": {
"message": "Введіть головний пароль, щоб експортувати дані сховища."
},
@ -874,7 +880,7 @@
"message": "URL-адреси середовища збережено."
},
"enableAutoFillOnPageLoad": {
"message": "Автозаповнення при завантаженні сторінки"
"message": "Автозаповнення на сторінці"
},
"enableAutoFillOnPageLoadDesc": {
"message": "При виявленні форми входу виконувати автоматичне її заповнення під час завантаження сторінки."
@ -1102,7 +1108,7 @@
"message": "Оновити"
},
"cards": {
"message": "Карти"
"message": "Картки"
},
"identities": {
"message": "Особисті дані"
@ -1179,7 +1185,7 @@
"message": "Всі елементи"
},
"noPasswordsInList": {
"message": "Немає паролів для відображення."
"message": "Немає паролів."
},
"remove": {
"message": "Вилучити"
@ -1202,7 +1208,7 @@
"message": "Ви не входите до жодної організації. Організації дозволяють безпечно обмінюватися елементами з іншими користувачами."
},
"noCollectionsInList": {
"message": "Немає збірок для відображення."
"message": "Немає збірок."
},
"ownership": {
"message": "Власник"
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Ваше сховище заблоковане. Для продовження підтвердьте свій PIN-код."
},
"unlockWithBiometrics": {
"message": "Розблокувати з біометрією"
},
"awaitDesktop": {
"message": "Очікується підтвердження з комп'ютера"
},
"awaitDesktopDesc": {
"message": "Для увімкнення біометрії в браузері, будь ласка, підтвердьте це у програмі Bitwarden на комп'ютері."
},
"lockWithMasterPassOnRestart": {
"message": "Блокувати головним паролем при перезапуску браузера"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Політика приватності"
},
"hintEqualsPassword": {
"message": "Підказка для пароля не може бути такою самою, як ваш пароль."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Перевірка синхронізації на комп'ютері"
},
"desktopIntegrationVerificationText": {
"message": "Перевірте, чи програма на комп'ютері показує відбиток: "
},
"desktopIntegrationDisabledTitle": {
"message": "Інтеграція з браузером не увімкнена"
},
"desktopIntegrationDisabledDesc": {
"message": "Інтеграція з браузером не увімкнена в програмі Bitwarden на комп'ютері. Увімкніть її в налаштуваннях програми на комп'ютері."
},
"startDesktopTitle": {
"message": "Запустити програму Bitwarden на комп'ютері"
},
"startDesktopDesc": {
"message": "Для використання цієї функції необхідно запустити програму Bitwarden на комп'ютері."
},
"errorEnableBiometricTitle": {
"message": "Не вдається увімкнути біометрію"
},
"errorEnableBiometricDesc": {
"message": "Дію було скасовано програмою на комп'ютері"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Програма на комп'ютері не схвалила безпечний канал зв'язку. Будь ласка, спробуйте знову"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "З'єднання з комп'ютером перервано"
},
"nativeMessagingWrongUserDesc": {
"message": "Програма на комп'ютері використовує інший обліковий запис. Переконайтеся, що програма й розширення використовують однаковий обліковий запис."
},
"nativeMessagingWrongUserTitle": {
"message": "Невідповідність облікових записів"
},
"biometricsNotEnabledTitle": {
"message": "Біометрію не увімкнено"
},
"biometricsNotEnabledDesc": {
"message": "Для активації біометрії в браузері необхідно спершу увімкнути біометрію в програмі на комп'ютері."
},
"biometricsNotSupportedTitle": {
"message": "Біометрія не підтримується"
},
"biometricsNotSupportedDesc": {
"message": "Біометрія в браузері не підтримується на цьому пристрої."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "У зв'язку з корпоративною політикою, вам не дозволено зберігати записи до особистого сховища. Змініть налаштування власності на організацію та виберіть серед доступних збірок."
},
"personalOwnershipPolicyInEffect": {
"message": "Політика організації впливає на ваші параметри власності."
}
}

View File

@ -606,9 +606,15 @@
"message": "CẢNH BÁO",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "This export contains your vault data in an unencrypted format. You should not store or send the exported file over unsecure channels (such as email). Delete it immediately after you are done using it."
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "Nhập mật khẩu chủ để xuất kho dữ liệu của bạn."
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "Kho của bạn đã bị khóa. Xác minh mã PIN của bạn để mở."
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "Khóa với mật khẩu chính khi trình duyệt khởi động lại"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "Privacy Policy"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

View File

@ -606,9 +606,15 @@
"message": "警告",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "确认密码库导出"
},
"exportWarningDesc": {
"message": "导出的密码库数据包含未加密格式。您不应该通过不安全的渠道(例如电子邮件)来存储或发送导出的文件。用完后请立即将其删除。"
},
"encExportWarningDesc": {
"message": "此导出将使用您账户的加密密钥来加密您的数据。 如果您曾经轮换过账户的加密密钥,您应将其重新导出,否则您将无法解密导出的文件。"
},
"exportMasterPassword": {
"message": "输入主密码来导出你的密码库。"
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "您的密码库已锁定。请验证您的 PIN 码以继续。"
},
"unlockWithBiometrics": {
"message": "使用生物识别解锁"
},
"awaitDesktop": {
"message": "等待来自桌面应用程序的确认"
},
"awaitDesktopDesc": {
"message": "请确认在 Bitwarden 桌面应用程序中使用了生物识别以启用浏览器的生物识别。"
},
"lockWithMasterPassOnRestart": {
"message": "浏览器重启后使用主密码锁定"
},
@ -1368,5 +1383,71 @@
},
"privacyPolicy": {
"message": "隐私政策"
},
"hintEqualsPassword": {
"message": "您的密码提示不能与您的密码相同。"
},
"ok": {
"message": "确定"
},
"desktopSyncVerificationTitle": {
"message": "桌面同步验证"
},
"desktopIntegrationVerificationText": {
"message": "请确认桌面应用程序显示此指纹: "
},
"desktopIntegrationDisabledTitle": {
"message": "浏览器集成未启用"
},
"desktopIntegrationDisabledDesc": {
"message": "浏览器集成在 Bitwarden 桌面应用程序中未启用。请在桌面应用程序的设置中启用它。"
},
"startDesktopTitle": {
"message": "启动 Bitwarden 桌面应用程序"
},
"startDesktopDesc": {
"message": "Bitwarden 桌面应用程序需要以运行才能使用此功能。"
},
"errorEnableBiometricTitle": {
"message": "无法启用生物识别"
},
"errorEnableBiometricDesc": {
"message": "操作被桌面应用程序取消"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "桌面应用程序使安全通道无效。请重试此操作"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "桌面通信已中断"
},
"nativeMessagingWrongUserDesc": {
"message": "桌面应用程序登录到了不同的帐户。请确保两个应用程序都登录到同一个帐户。"
},
"nativeMessagingWrongUserTitle": {
"message": "账户不匹配"
},
"biometricsNotEnabledTitle": {
"message": "生物识别未启用"
},
"biometricsNotEnabledDesc": {
"message": "需要首先在桌面应用程序的设置中启用生物识别才能使用浏览器的生物识别。"
},
"biometricsNotSupportedTitle": {
"message": "不支持生物识别"
},
"biometricsNotSupportedDesc": {
"message": "此设备不支持浏览器生物识别。"
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "由于企业策略,您被限制为保存项目到您的个人密码库。将所有权选项更改为组织,并从可用的集合中选择。"
},
"personalOwnershipPolicyInEffect": {
"message": "一个组织策略正影响您的所有权选项。"
}
}

View File

@ -606,9 +606,15 @@
"message": "警告",
"description": "WARNING (should stay in capitalized letters if the language permits)"
},
"confirmVaultExport": {
"message": "Confirm Vault Export"
},
"exportWarningDesc": {
"message": "您的密碼將匯出成未加密的. csv 檔案。您不應將它存放或經由未經加密的方式傳送(例如電子郵件)。用完後請立即將它刪除。"
},
"encExportWarningDesc": {
"message": "This export encrypts your data using your account's encryption key. If you ever rotate your account's encryption key you should export again since you will not be able to decrypt this export file."
},
"exportMasterPassword": {
"message": "輸入您的主密碼以匯出密碼庫資料。"
},
@ -1250,6 +1256,15 @@
"yourVaultIsLockedPinCode": {
"message": "密碼庫已鎖定。驗證 PIN 碼以繼續。"
},
"unlockWithBiometrics": {
"message": "Unlock with biometrics"
},
"awaitDesktop": {
"message": "Awaiting confirmation from desktop"
},
"awaitDesktopDesc": {
"message": "Please confirm using biometrics in the Bitwarden Desktop application to enable biometrics for browser."
},
"lockWithMasterPassOnRestart": {
"message": "瀏覽器重啟後使用主密碼鎖定"
},
@ -1367,6 +1382,72 @@
"message": "Terms of Service"
},
"privacyPolicy": {
"message": "Privacy Policy"
"message": "隱私權政策"
},
"hintEqualsPassword": {
"message": "Your password hint cannot be the same as your password."
},
"ok": {
"message": "Ok"
},
"desktopSyncVerificationTitle": {
"message": "Desktop sync verification"
},
"desktopIntegrationVerificationText": {
"message": "Please verify that the desktop application shows this fingerprint: "
},
"desktopIntegrationDisabledTitle": {
"message": "Browser integration is not enabled"
},
"desktopIntegrationDisabledDesc": {
"message": "Browser integration is not enabled in the Bitwarden Desktop application. Please enable it in the settings within the desktop application."
},
"startDesktopTitle": {
"message": "Start the Bitwarden Desktop application"
},
"startDesktopDesc": {
"message": "The Bitwarden Desktop application needs to be started before this function can be used."
},
"errorEnableBiometricTitle": {
"message": "Unable to enable biometrics"
},
"errorEnableBiometricDesc": {
"message": "Action was canceled by the desktop application"
},
"nativeMessagingInvalidEncryptionDesc": {
"message": "Desktop application invalidated the secure communication channel. Please retry this operation"
},
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},
"biometricsNotEnabledDesc": {
"message": "Browser biometrics requires desktop biometric to be enabled in the settings first."
},
"biometricsNotSupportedTitle": {
"message": "Biometrics not supported"
},
"biometricsNotSupportedDesc": {
"message": "Browser biometrics is not supported on this device."
},
"nativeMessaginPermissionErrorTitle": {
"message": "Permission not provided"
},
"nativeMessaginPermissionErrorDesc": {
"message": "Without permission to communicate with the Bitwarden Desktop Application we cannot provide biometrics in the browser extension. Please try again."
},
"personalOwnershipSubmitError": {
"message": "Due to an Enterprise Policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections."
},
"personalOwnershipPolicyInEffect": {
"message": "An organization policy is affecting your ownership options."
}
}

View File

@ -20,7 +20,7 @@ export default class CommandsBackground {
}
async init() {
if (this.isSafari || this.isVivaldi) {
if (this.isVivaldi) {
BrowserApi.messageListener('commands.background', async (msg: any, sender: any, sendResponse: any) => {
if (msg.command === 'keyboardShortcutTriggered' && msg.shortcut) {
await this.processCommand(msg.shortcut, sender);

View File

@ -167,8 +167,8 @@ export default class MainBackground {
return promise.then((result) => result.response === 'unlocked');
}
});
this.storageService = new BrowserStorageService(this.platformUtilsService);
this.secureStorageService = new BrowserStorageService(this.platformUtilsService);
this.storageService = new BrowserStorageService();
this.secureStorageService = new BrowserStorageService();
this.i18nService = new I18nService(BrowserApi.getUILanguage(window));
this.cryptoFunctionService = new WebCryptoFunctionService(window, this.platformUtilsService);
this.consoleLogService = new ConsoleLogService(false);
@ -252,21 +252,18 @@ export default class MainBackground {
this.commandsBackground = new CommandsBackground(this, this.passwordGenerationService,
this.platformUtilsService, this.analytics, this.vaultTimeoutService);
if (!this.isSafari) {
this.tabsBackground = new TabsBackground(this);
this.contextMenusBackground = new ContextMenusBackground(this, this.cipherService,
this.passwordGenerationService, this.analytics, this.platformUtilsService, this.vaultTimeoutService,
this.eventService, this.totpService);
this.idleBackground = new IdleBackground(this.vaultTimeoutService, this.storageService,
this.notificationsService);
this.webRequestBackground = new WebRequestBackground(this.platformUtilsService, this.cipherService,
this.vaultTimeoutService);
this.windowsBackground = new WindowsBackground(this);
}
this.tabsBackground = new TabsBackground(this);
this.contextMenusBackground = new ContextMenusBackground(this, this.cipherService,
this.passwordGenerationService, this.analytics, this.platformUtilsService, this.vaultTimeoutService,
this.eventService, this.totpService);
this.idleBackground = new IdleBackground(this.vaultTimeoutService, this.storageService,
this.notificationsService);
this.webRequestBackground = new WebRequestBackground(this.platformUtilsService, this.cipherService,
this.vaultTimeoutService);
this.windowsBackground = new WindowsBackground(this);
}
async bootstrap() {
SafariApp.init();
this.analytics.ga('send', 'pageview', '/background.html');
this.containerService.attachToWindow(window);
@ -276,13 +273,11 @@ export default class MainBackground {
await this.runtimeBackground.init();
await this.commandsBackground.init();
if (!this.isSafari) {
await this.tabsBackground.init();
await this.contextMenusBackground.init();
await this.idleBackground.init();
await this.webRequestBackground.init();
await this.windowsBackground.init();
}
await this.tabsBackground.init();
await this.contextMenusBackground.init();
await this.idleBackground.init();
await this.webRequestBackground.init();
await this.windowsBackground.init();
return new Promise((resolve) => {
setTimeout(async () => {
@ -297,7 +292,7 @@ export default class MainBackground {
}
async setIcon() {
if (this.isSafari || (!chrome.browserAction && !this.sidebarAction)) {
if (!chrome.browserAction && !this.sidebarAction) {
return;
}
@ -316,7 +311,7 @@ export default class MainBackground {
}
async refreshBadgeAndMenu(forLocked: boolean = false) {
if (this.isSafari || !chrome.windows || !chrome.contextMenus) {
if (!chrome.windows || !chrome.contextMenus) {
return;
}
@ -447,7 +442,7 @@ export default class MainBackground {
}
private async buildContextMenu() {
if (this.isSafari || !chrome.contextMenus || this.buildingContextMenu) {
if (!chrome.contextMenus || this.buildingContextMenu) {
return;
}

View File

@ -35,6 +35,13 @@ export class NativeMessagingBackground {
private runtimeBackground: RuntimeBackground, private i18nService: I18nService, private userService: UserService,
private messagingService: MessagingService, private appIdService: AppIdService) {
this.storageService.save(ConstantsService.biometricFingerprintValidated, false);
if (BrowserApi.isChromeApi) {
// Reload extension to activate nativeMessaging
chrome.permissions.onAdded.addListener((permissions) => {
BrowserApi.reloadExtension(null);
});
}
}
async connect() {
@ -106,6 +113,13 @@ export class NativeMessagingBackground {
}
break;
}
case 'wrongUserId':
this.messagingService.send('showDialog', {
text: this.i18nService.t('nativeMessagingWrongUserDesc'),
title: this.i18nService.t('nativeMessagingWrongUserTitle'),
confirmText: this.i18nService.t('ok'),
type: 'error',
});
default:
// Ignore since it belongs to another device
if (message.appId !== this.appId) {
@ -247,7 +261,11 @@ export class NativeMessagingBackground {
this.publicKey = publicKey;
this.privateKey = privateKey;
this.sendUnencrypted({command: 'setupEncryption', publicKey: Utils.fromBufferToB64(publicKey)});
this.sendUnencrypted({
command: 'setupEncryption',
publicKey: Utils.fromBufferToB64(publicKey),
userId: await this.userService.getUserId()
});
return new Promise((resolve, reject) => this.secureSetupResolve = resolve);
}

View File

@ -4,7 +4,6 @@ import { CipherView } from 'jslib/models/view/cipherView';
import { LoginUriView } from 'jslib/models/view/loginUriView';
import { LoginView } from 'jslib/models/view/loginView';
import { AuthService } from 'jslib/abstractions/auth.service';
import { AutofillService } from '../services/abstractions/autofill.service';
import BrowserPlatformUtilsService from '../services/browserPlatformUtils.service';
import { CipherService } from 'jslib/abstractions/cipher.service';
@ -13,10 +12,7 @@ import { EnvironmentService } from 'jslib/abstractions/environment.service';
import { I18nService } from 'jslib/abstractions/i18n.service';
import { NotificationsService } from 'jslib/abstractions/notifications.service';
import { PolicyService } from 'jslib/abstractions/policy.service';
import { PopupUtilsService } from '../popup/services/popup-utils.service';
import { StateService } from 'jslib/abstractions/state.service';
import { StorageService } from 'jslib/abstractions/storage.service';
import { SyncService } from 'jslib/abstractions/sync.service';
import { SystemService } from 'jslib/abstractions/system.service';
import { UserService } from 'jslib/abstractions/user.service';
import { VaultTimeoutService } from 'jslib/abstractions/vaultTimeout.service';
@ -24,7 +20,6 @@ import { VaultTimeoutService } from 'jslib/abstractions/vaultTimeout.service';
import { BrowserApi } from '../browser/browserApi';
import MainBackground from './main.background';
import { NativeMessagingBackground } from './nativeMessaging.background';
import { Analytics } from 'jslib/misc';
import { Utils } from 'jslib/misc/utils';
@ -36,7 +31,6 @@ export default class RuntimeBackground {
private runtime: any;
private autofillTimeout: any;
private pageDetailsToAutoFill: any[] = [];
private isSafari: boolean;
private onInstalledReason: string = null;
constructor(private main: MainBackground, private autofillService: AutofillService,
@ -46,19 +40,15 @@ export default class RuntimeBackground {
private systemService: SystemService, private vaultTimeoutService: VaultTimeoutService,
private environmentService: EnvironmentService, private policyService: PolicyService,
private userService: UserService) {
this.isSafari = this.platformUtilsService.isSafari();
this.runtime = this.isSafari ? {} : chrome.runtime;
// onInstalled listener must be wired up before anything else, so we do it in the ctor
if (!this.isSafari) {
this.runtime.onInstalled.addListener((details: any) => {
this.onInstalledReason = details.reason;
});
}
chrome.runtime.onInstalled.addListener((details: any) => {
this.onInstalledReason = details.reason;
});
}
async init() {
if (!this.runtime) {
if (!chrome.runtime) {
return;
}
@ -399,20 +389,6 @@ export default class RuntimeBackground {
}
private async checkOnInstalled() {
if (this.isSafari) {
const installedVersion = await this.storageService.get<string>(ConstantsService.installedVersionKey);
if (installedVersion == null) {
this.onInstalledReason = 'install';
} else if (BrowserApi.getApplicationVersion() !== installedVersion) {
this.onInstalledReason = 'update';
}
if (this.onInstalledReason != null) {
await this.storageService.save(ConstantsService.installedVersionKey,
BrowserApi.getApplicationVersion());
}
}
setTimeout(async () => {
if (this.onInstalledReason != null) {
if (this.onInstalledReason === 'install') {

View File

@ -4,20 +4,18 @@ import { Utils } from 'jslib/misc/utils';
export class BrowserApi {
static isWebExtensionsApi: boolean = (typeof browser !== 'undefined');
static isSafariApi: boolean = (window as any).safariAppExtension === true;
static isSafariApi: boolean = navigator.userAgent.indexOf(' Safari/') !== -1 &&
navigator.userAgent.indexOf(' Chrome/') === -1 &&
navigator.userAgent.indexOf(' Chromium/') === -1;
static isChromeApi: boolean = !BrowserApi.isSafariApi && (typeof chrome !== 'undefined');
static isFirefoxOnAndroid: boolean = navigator.userAgent.indexOf('Firefox/') !== -1 &&
navigator.userAgent.indexOf('Android') !== -1;
static async getTabFromCurrentWindowId(): Promise<any> {
if (BrowserApi.isChromeApi) {
return await BrowserApi.tabsQueryFirst({
active: true,
windowId: chrome.windows.WINDOW_ID_CURRENT,
});
} else if (BrowserApi.isSafariApi) {
return await BrowserApi.getTabFromCurrentWindow();
}
return await BrowserApi.tabsQueryFirst({
active: true,
windowId: chrome.windows.WINDOW_ID_CURRENT,
});
}
static async getTabFromCurrentWindow(): Promise<any> {
@ -34,16 +32,11 @@ export class BrowserApi {
}
static async tabsQuery(options: any): Promise<any[]> {
if (BrowserApi.isChromeApi) {
return new Promise((resolve) => {
chrome.tabs.query(options, (tabs: any[]) => {
resolve(tabs);
});
return new Promise((resolve) => {
chrome.tabs.query(options, (tabs: any[]) => {
resolve(tabs);
});
} else if (BrowserApi.isSafariApi) {
const tabs = await SafariApp.sendMessageToApp('tabs_query', JSON.stringify(options));
return tabs != null ? JSON.parse(tabs) : null;
}
});
}
static async tabsQueryFirst(options: any): Promise<any> {
@ -72,81 +65,36 @@ export class BrowserApi {
return;
}
if (BrowserApi.isChromeApi) {
return new Promise((resolve) => {
chrome.tabs.sendMessage(tab.id, obj, options, () => {
if (chrome.runtime.lastError) {
// Some error happened
}
resolve();
});
return new Promise((resolve) => {
chrome.tabs.sendMessage(tab.id, obj, options, () => {
if (chrome.runtime.lastError) {
// Some error happened
}
resolve();
});
} else if (BrowserApi.isSafariApi) {
if (options != null && options.frameId != null && obj.bitwardenFrameId == null) {
obj.bitwardenFrameId = options.frameId;
}
await SafariApp.sendMessageToApp('tabs_message', JSON.stringify({
tab: tab,
obj: JSON.stringify(obj),
options: options,
}), true);
}
});
}
static getBackgroundPage(): any {
if (BrowserApi.isChromeApi) {
return chrome.extension.getBackgroundPage();
} else if (BrowserApi.isSafariApi) {
return window;
} else {
return null;
}
return chrome.extension.getBackgroundPage();
}
static getApplicationVersion(): string {
if (BrowserApi.isChromeApi) {
return chrome.runtime.getManifest().version;
} else if (BrowserApi.isSafariApi) {
return (window as any).bitwardenApplicationVersion;
} else {
return null;
}
return chrome.runtime.getManifest().version;
}
static async isPopupOpen(): Promise<boolean> {
if (BrowserApi.isChromeApi) {
return Promise.resolve(chrome.extension.getViews({ type: 'popup' }).length > 0);
} else if (BrowserApi.isSafariApi) {
const open = await SafariApp.sendMessageToApp('isPopoverOpen');
return open === 'true';
} else {
return Promise.resolve(false);
}
return Promise.resolve(chrome.extension.getViews({ type: 'popup' }).length > 0);
}
static createNewTab(url: string, extensionPage: boolean = false) {
if (BrowserApi.isChromeApi) {
chrome.tabs.create({ url: url });
} else if (BrowserApi.isSafariApi) {
SafariApp.sendMessageToApp('createNewTab', url, true);
}
chrome.tabs.create({ url: url });
}
static messageListener(name: string, callback: (message: any, sender: any, response: any) => void) {
if (BrowserApi.isChromeApi) {
chrome.runtime.onMessage.addListener((msg: any, sender: any, response: any) => {
callback(msg, sender, response);
});
} else if (BrowserApi.isSafariApi) {
SafariApp.addMessageListener(name, (message: any, sender: any, response: any) => {
if (message.bitwardenFrameId != null) {
if (sender != null && typeof (sender) === 'object' && sender.frameId == null) {
sender.frameId = message.bitwardenFrameId;
}
}
callback(message, sender, response);
});
}
chrome.runtime.onMessage.addListener((msg: any, sender: any, response: any) => {
callback(msg, sender, response);
});
}
static closePopup(win: Window) {
@ -155,10 +103,8 @@ export class BrowserApi {
// condition is only called if the popup wasn't already dismissed (future proofing).
// ref: https://bugzilla.mozilla.org/show_bug.cgi?id=1433604
browser.tabs.update({ active: true }).finally(win.close);
} else if (BrowserApi.isWebExtensionsApi || BrowserApi.isChromeApi) {
} else {
win.close();
} else if (BrowserApi.isSafariApi) {
SafariApp.sendMessageToApp('hidePopover');
}
}
@ -196,30 +142,22 @@ export class BrowserApi {
}
static getUILanguage(win: Window) {
if (BrowserApi.isSafariApi) {
return win.navigator.language;
} else {
return chrome.i18n.getUILanguage();
}
return chrome.i18n.getUILanguage();
}
static reloadExtension(win: Window) {
if (win != null) {
return win.location.reload(true);
} else if (BrowserApi.isSafariApi) {
SafariApp.sendMessageToApp('reloadExtension');
} else if (!BrowserApi.isSafariApi) {
} else {
return chrome.runtime.reload();
}
}
static reloadOpenWindows() {
if (!BrowserApi.isSafariApi) {
const views = chrome.extension.getViews() as Window[];
views.filter((w) => w.location.href != null).forEach((w) => {
w.location.reload();
});
}
const views = chrome.extension.getViews() as Window[];
views.filter((w) => w.location.href != null).forEach((w) => {
w.location.reload();
});
}
static connectNative(application: string): browser.runtime.Port | chrome.runtime.Port {

View File

@ -1,23 +1,6 @@
import { BrowserApi } from './browserApi';
export class SafariApp {
static init() {
if ((window as any).bitwardenSafariAppInited) {
return;
}
(window as any).bitwardenSafariAppInited = true;
if (BrowserApi.isSafariApi) {
(window as any).bitwardenSafariAppRequests =
new Map<string, { resolve: (value?: unknown) => void, timeoutDate: Date }>();
(window as any).bitwardenSafariAppMessageListeners =
new Map<string, (message: any, sender: any, response: any) => void>();
(window as any).bitwardenSafariAppMessageReceiver = (message: any) => {
SafariApp.receiveMessageFromApp(message);
};
setInterval(() => SafariApp.cleanupOldRequests(), 5 * 60000); // every 5 mins
}
}
static sendMessageToApp(command: string, data: any = null, resolveNow = false): Promise<any> {
if (!BrowserApi.isSafariApi) {
return Promise.resolve(null);
@ -25,69 +8,14 @@ export class SafariApp {
return new Promise((resolve) => {
const now = new Date();
const messageId = now.getTime().toString() + '_' + Math.floor(Math.random() * Number.MAX_SAFE_INTEGER);
if (typeof safari === typeof undefined) {
(window as any).webkit.messageHandlers.bitwardenApp.postMessage(JSON.stringify({
id: messageId,
command: command,
data: data,
responseData: null,
}));
} else {
safari.extension.dispatchMessage('bitwarden', {
command: command,
data: data,
responseData: null,
});
}
if (resolveNow) {
resolve();
} else {
(window as any).bitwardenSafariAppRequests.set(messageId, {
resolve: resolve,
timeoutDate: new Date(now.getTime() + 5 * 60000),
});
}
});
}
static addMessageListener(name: string, callback: (message: any, sender: any, response: any) => void) {
(window as any).bitwardenSafariAppMessageListeners.set(name, callback);
}
static sendMessageToListeners(message: any, sender: any, response: any) {
(window as any).bitwardenSafariAppMessageListeners.forEach((f: any) => f(message, sender, response));
}
private static receiveMessageFromApp(message: any) {
if (message == null) {
return;
}
if ((message.id == null || message.id === '') && message.command === 'app_message') {
try {
const msg = JSON.parse(message.data);
SafariApp.sendMessageToListeners(msg, {
id: 'app_message',
tab: message.senderTab,
}, null);
} catch { }
} else if (message.id != null && (window as any).bitwardenSafariAppRequests.has(message.id)) {
const p = (window as any).bitwardenSafariAppRequests.get(message.id);
p.resolve(message.responseData);
(window as any).bitwardenSafariAppRequests.delete(message.id);
}
}
private static cleanupOldRequests() {
const removeIds: string[] = [];
((window as any).bitwardenSafariAppRequests as
Map<string, { resolve: (value?: unknown) => void, timeoutDate: Date }>)
.forEach((v, key) => {
if (v.timeoutDate < new Date()) {
removeIds.push(key);
}
(browser as any).runtime.sendNativeMessage('com.bitwarden.desktop', {
id: messageId,
command: command,
data: data,
responseData: null,
}, (response: any) => {
resolve(response);
});
removeIds.forEach((id) => {
(window as any).bitwardenSafariAppRequests.delete(id);
});
}
}

View File

@ -989,35 +989,6 @@
End 1Password Extension
*/
if ((typeof safari !== 'undefined') && navigator.userAgent.indexOf(' Safari/') !== -1 &&
navigator.userAgent.indexOf('Chrome') === -1) {
if (window.__bitwardenFrameId == null) {
window.__bitwardenFrameId = Math.floor(Math.random() * Math.floor(99999999));
}
safari.self.addEventListener('message', function (msgEvent) {
var msg = JSON.parse(msgEvent.message.msg);
if (msg.bitwardenFrameId != null && window.__bitwardenFrameId !== msg.bitwardenFrameId) {
return;
}
if (msg.command === 'collectPageDetails') {
var pageDetails = collect(document);
var pageDetailsObj = JSON.parse(pageDetails);
safari.extension.dispatchMessage('bitwarden', {
command: 'collectPageDetailsResponse',
tab: msg.tab,
details: pageDetailsObj,
sender: msg.sender,
bitwardenFrameId: window.__bitwardenFrameId
});
}
else if (msg.command === 'fillForm') {
fill(document, msg.fillScript);
}
}, false);
return;
}
chrome.runtime.onMessage.addListener(function (msg, sender, sendResponse) {
if (msg.command === 'collectPageDetails') {
var pageDetails = collect(document);

View File

@ -3,44 +3,17 @@ document.addEventListener('DOMContentLoaded', (event) => {
let filledThisHref = false;
let delayFillTimeout: number;
const isSafari = (typeof safari !== 'undefined') && navigator.userAgent.indexOf(' Safari/') !== -1 &&
navigator.userAgent.indexOf('Chrome') === -1;
if (isSafari) {
if ((window as any).__bitwardenFrameId == null) {
(window as any).__bitwardenFrameId = Math.floor(Math.random() * Math.floor(99999999));
const enabledKey = 'enableAutoFillOnPageLoad';
chrome.storage.local.get(enabledKey, (obj: any) => {
if (obj != null && obj[enabledKey] === true) {
setInterval(() => doFillIfNeeded(), 500);
}
const responseCommand = 'autofillerAutofillOnPageLoadEnabledResponse';
safari.extension.dispatchMessage('bitwarden', {
command: 'bgGetDataForTab',
responseCommand: responseCommand,
bitwardenFrameId: (window as any).__bitwardenFrameId,
});
safari.self.addEventListener('message', (msgEvent: any) => {
const msg = JSON.parse(msgEvent.message.msg);
if (msg.bitwardenFrameId != null && (window as any).__bitwardenFrameId !== msg.bitwardenFrameId) {
return;
}
if (msg.command === responseCommand && msg.data.autofillEnabled === true) {
setInterval(() => doFillIfNeeded(), 500);
} else if (msg.command === 'fillForm' && pageHref === msg.url) {
filledThisHref = true;
}
}, false);
return;
} else {
const enabledKey = 'enableAutoFillOnPageLoad';
chrome.storage.local.get(enabledKey, (obj: any) => {
if (obj != null && obj[enabledKey] === true) {
setInterval(() => doFillIfNeeded(), 500);
}
});
chrome.runtime.onMessage.addListener((msg: any, sender: any, sendResponse: Function) => {
if (msg.command === 'fillForm' && pageHref === msg.url) {
filledThisHref = true;
}
});
}
});
chrome.runtime.onMessage.addListener((msg: any, sender: any, sendResponse: Function) => {
if (msg.command === 'fillForm' && pageHref === msg.url) {
filledThisHref = true;
}
});
function doFillIfNeeded(force: boolean = false) {
if (force || pageHref !== window.location.href) {
@ -64,12 +37,7 @@ document.addEventListener('DOMContentLoaded', (event) => {
sender: 'autofiller',
};
if (isSafari) {
msg.bitwardenFrameId = (window as any).__bitwardenFrameId;
safari.extension.dispatchMessage('bitwarden', msg);
} else {
chrome.runtime.sendMessage(msg);
}
chrome.runtime.sendMessage(msg);
}
}
});

View File

@ -17,71 +17,30 @@ document.addEventListener('DOMContentLoaded', (event) => {
const logInButtonNames = new Set(['log in', 'sign in', 'login', 'go', 'submit', 'continue', 'next']);
const changePasswordButtonNames = new Set(['save password', 'update password', 'change password', 'change']);
const changePasswordButtonContainsNames = new Set(['pass', 'change', 'contras', 'senha']);
let notificationBarData = null;
const isSafari = (typeof safari !== 'undefined') && navigator.userAgent.indexOf(' Safari/') !== -1 &&
navigator.userAgent.indexOf('Chrome') === -1;
let disabledAddLoginNotification = false;
let disabledChangedPasswordNotification = false;
if (isSafari) {
if ((window as any).__bitwardenFrameId == null) {
(window as any).__bitwardenFrameId = Math.floor(Math.random() * Math.floor(99999999));
}
if (inIframe) {
chrome.storage.local.get('neverDomains', (ndObj: any) => {
const domains = ndObj.neverDomains;
if (domains != null && domains.hasOwnProperty(window.location.hostname)) {
return;
}
const responseCommand = 'notificationBarDataResponse';
safari.extension.dispatchMessage('bitwarden', {
command: 'bgGetDataForTab',
responseCommand: responseCommand,
bitwardenFrameId: (window as any).__bitwardenFrameId,
});
safari.self.addEventListener('message', (msgEvent: any) => {
const msg = JSON.parse(msgEvent.message.msg);
if (msg.bitwardenFrameId != null && (window as any).__bitwardenFrameId !== msg.bitwardenFrameId) {
return;
}
if (msg.command === responseCommand && msg.data) {
notificationBarData = msg.data;
if (notificationBarData.neverDomains &&
notificationBarData.neverDomains.hasOwnProperty(window.location.hostname)) {
return;
}
disabledAddLoginNotification = notificationBarData.disabledAddLoginNotification === true;
disabledChangedPasswordNotification = notificationBarData.disabledChangedPasswordNotification === true;
chrome.storage.local.get('disableAddLoginNotification', (disAddObj: any) => {
disabledAddLoginNotification = disAddObj != null && disAddObj.disableAddLoginNotification === true;
chrome.storage.local.get('disableChangedPasswordNotification', (disChangedObj: any) => {
disabledChangedPasswordNotification = disChangedObj != null &&
disChangedObj.disableChangedPasswordNotification === true;
if (!disabledAddLoginNotification || !disabledChangedPasswordNotification) {
collectIfNeededWithTimeout();
}
}
processMessages(msg, () => { /* do nothing on send response for Safari */ });
}, false);
return;
} else {
chrome.storage.local.get('neverDomains', (ndObj: any) => {
const domains = ndObj.neverDomains;
if (domains != null && domains.hasOwnProperty(window.location.hostname)) {
return;
}
chrome.storage.local.get('disableAddLoginNotification', (disAddObj: any) => {
disabledAddLoginNotification = disAddObj != null && disAddObj.disableAddLoginNotification === true;
chrome.storage.local.get('disableChangedPasswordNotification', (disChangedObj: any) => {
disabledChangedPasswordNotification = disChangedObj != null &&
disChangedObj.disableChangedPasswordNotification === true;
if (!disabledAddLoginNotification || !disabledChangedPasswordNotification) {
collectIfNeededWithTimeout();
}
});
});
});
});
chrome.runtime.onMessage.addListener((msg: any, sender: any, sendResponse: Function) => {
processMessages(msg, sendResponse);
});
}
chrome.runtime.onMessage.addListener((msg: any, sender: any, sendResponse: Function) => {
processMessages(msg, sendResponse);
});
function processMessages(msg: any, sendResponse: Function) {
if (msg.command === 'openNotificationBar') {
@ -470,7 +429,7 @@ document.addEventListener('DOMContentLoaded', (event) => {
}
function closeExistingAndOpenBar(type: string, typeData: any) {
let barPage = (isSafari ? 'app/' : '') + 'notification/bar.html';
let barPage = 'notification/bar.html';
switch (type) {
case 'info':
barPage = barPage + '?info=' + typeData.text;
@ -510,7 +469,7 @@ document.addEventListener('DOMContentLoaded', (event) => {
return;
}
const barPageUrl: string = isSafari ? (safari.extension.baseURI + barPage) : chrome.extension.getURL(barPage);
const barPageUrl: string = chrome.extension.getURL(barPage);
const iframe = document.createElement('iframe');
iframe.style.cssText = 'height: 42px; width: 100%; border: 0; min-height: initial;';
@ -580,11 +539,6 @@ document.addEventListener('DOMContentLoaded', (event) => {
}
function sendPlatformMessage(msg: any) {
if (isSafari) {
msg.bitwardenFrameId = (window as any).__bitwardenFrameId;
safari.extension.dispatchMessage('bitwarden', msg);
} else {
chrome.runtime.sendMessage(msg);
}
chrome.runtime.sendMessage(msg);
}
});

View File

@ -45,11 +45,6 @@ document.addEventListener('DOMContentLoaded', (event) => {
shortcut: shortcut,
};
if (isSafari) {
msg.bitwardenFrameId = (window as any).__bitwardenFrameId;
safari.extension.dispatchMessage('bitwarden', msg);
} else {
chrome.runtime.sendMessage(msg);
}
chrome.runtime.sendMessage(msg);
}
});

View File

@ -3,15 +3,6 @@ window.addEventListener('message', (event) => {
return;
if (event.data.command && (event.data.command === 'authResult')) {
if (typeof chrome === typeof undefined) {
safari.extension.dispatchMessage('bitwarden', {
command: event.data.command,
code: event.data.code,
state: event.data.state,
referrer: event.source.location.hostname,
});
return;
}
chrome.runtime.sendMessage({
command: event.data.command,
code: event.data.code,

View File

@ -2,7 +2,7 @@
"manifest_version": 2,
"name": "__MSG_extName__",
"short_name": "__MSG_appName__",
"version": "1.47.1",
"version": "1.48.1",
"description": "__MSG_extDesc__",
"default_locale": "en",
"author": "Bitwarden Inc.",
@ -89,7 +89,9 @@
"http://*/*",
"https://*/*",
"webRequest",
"webRequestBlocking",
"webRequestBlocking"
],
"optional_permissions": [
"nativeMessaging"
],
"content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'",

View File

@ -3,34 +3,21 @@ require('./bar.scss');
document.addEventListener('DOMContentLoaded', () => {
var i18n = {};
var lang = window.navigator.language;
if (typeof safari !== 'undefined') {
const responseCommand = 'notificationBarFrameDataResponse';
sendPlatformMessage({
command: 'bgGetDataForTab',
responseCommand: responseCommand
});
safari.self.addEventListener('message', (msgEvent) => {
const msg = JSON.parse(msgEvent.message.msg);
if (msg.command === responseCommand && msg.data) {
i18n = msg.data.i18n;
load();
}
}, false);
} else {
i18n.appName = chrome.i18n.getMessage('appName');
i18n.close = chrome.i18n.getMessage('close');
i18n.yes = chrome.i18n.getMessage('yes');
i18n.never = chrome.i18n.getMessage('never');
i18n.notificationAddSave = chrome.i18n.getMessage('notificationAddSave');
i18n.notificationNeverSave = chrome.i18n.getMessage('notificationNeverSave');
i18n.notificationAddDesc = chrome.i18n.getMessage('notificationAddDesc');
i18n.notificationChangeSave = chrome.i18n.getMessage('notificationChangeSave');
i18n.notificationChangeDesc = chrome.i18n.getMessage('notificationChangeDesc');
lang = chrome.i18n.getUILanguage();
i18n.appName = chrome.i18n.getMessage('appName');
i18n.close = chrome.i18n.getMessage('close');
i18n.yes = chrome.i18n.getMessage('yes');
i18n.never = chrome.i18n.getMessage('never');
i18n.notificationAddSave = chrome.i18n.getMessage('notificationAddSave');
i18n.notificationNeverSave = chrome.i18n.getMessage('notificationNeverSave');
i18n.notificationAddDesc = chrome.i18n.getMessage('notificationAddDesc');
i18n.notificationChangeSave = chrome.i18n.getMessage('notificationChangeSave');
i18n.notificationChangeDesc = chrome.i18n.getMessage('notificationChangeDesc');
lang = chrome.i18n.getUILanguage();
// delay 50ms so that we get proper body dimensions
setTimeout(load, 50);
}
// delay 50ms so that we get proper body dimensions
setTimeout(load, 50);
function load() {
var closeButton = document.getElementById('close-button'),
@ -131,10 +118,6 @@ document.addEventListener('DOMContentLoaded', () => {
}
function sendPlatformMessage(msg) {
if (typeof safari !== 'undefined') {
safari.extension.dispatchMessage('bitwarden', msg);
} else {
chrome.runtime.sendMessage(msg);
}
chrome.runtime.sendMessage(msg);
}
});

View File

@ -38,7 +38,7 @@
</div>
<div class="box" *ngIf="biometricLock">
<div class="box-footer">
<a class="btn primary block" (click)="unlockBiometric()">{{'unlockWithBiometrics' | i18n}}</a>
<button class="btn primary block" (click)="unlockBiometric()" appStopClick>{{'unlockWithBiometrics' | i18n}}</button>
</div>
</div>
<p class="text-center">

View File

@ -58,13 +58,12 @@ export class TwoFactorComponent extends BaseTwoFactorComponent {
// ref: https://bugzilla.mozilla.org/show_bug.cgi?id=1562620
this.initU2f = false;
}
const isSafari = this.platformUtilsService.isSafari();
await super.ngOnInit();
if (this.selectedProviderType == null) {
return;
}
if (!isSafari && this.selectedProviderType === TwoFactorProviderType.Email &&
if (this.selectedProviderType === TwoFactorProviderType.Email &&
this.popupUtilsService.inPopup(window)) {
const confirmed = await this.platformUtilsService.showDialog(this.i18nService.t('popup2faCloseMessage'),
null, this.i18nService.t('yes'), this.i18nService.t('no'));

View File

@ -185,8 +185,6 @@ export const routerTransition = trigger('routerTransition', [
transition('tabs => premium', inSlideLeft),
transition('premium => tabs', outSlideRight),
]);
if (!BrowserApi.isSafariApi) {
routerTransition.definitions.push(transition('tabs => lock', inSlideDown));
}
transition('tabs => lock', inSlideDown),
]);

View File

@ -20,9 +20,14 @@ import { SetPasswordComponent } from './accounts/set-password.component';
import { TwoFactorOptionsComponent } from './accounts/two-factor-options.component';
import { TwoFactorComponent } from './accounts/two-factor.component';
import { SsoComponent } from './accounts/sso.component';
import { PasswordGeneratorHistoryComponent } from './generator/password-generator-history.component';
import { PasswordGeneratorComponent } from './generator/password-generator.component';
import { PasswordGeneratorHistoryComponent } from './generator/password-generator-history.component';
import { PrivateModeComponent } from './private-mode.component';
import { TabsComponent } from './tabs.component';
import { ExcludedDomainsComponent } from './settings/excluded-domains.component';
import { ExportComponent } from './settings/export.component';
import { FolderAddEditComponent } from './settings/folder-add-edit.component';
import { FoldersComponent } from './settings/folders.component';
@ -30,7 +35,7 @@ import { OptionsComponent } from './settings/options.component';
import { PremiumComponent } from './settings/premium.component';
import { SettingsComponent } from './settings/settings.component';
import { SyncComponent } from './settings/sync.component';
import { TabsComponent } from './tabs.component';
import { AddEditComponent } from './vault/add-edit.component';
import { AttachmentsComponent } from './vault/attachments.component';
import { CiphersComponent } from './vault/ciphers.component';
@ -41,6 +46,8 @@ import { PasswordHistoryComponent } from './vault/password-history.component';
import { ShareComponent } from './vault/share.component';
import { ViewComponent } from './vault/view.component';
import { SendComponent } from './send/send.component';
const routes: Routes = [
{
path: '',
@ -200,6 +207,12 @@ const routes: Routes = [
canActivate: [AuthGuardService],
data: { state: 'sync' },
},
{
path: 'excluded-domains',
component: ExcludedDomainsComponent,
canActivate: [AuthGuardService],
data: { state: 'excluded-domains' },
},
{
path: 'premium',
component: PremiumComponent,
@ -258,6 +271,12 @@ const routes: Routes = [
canActivate: [AuthGuardService],
data: { state: 'tabs_settings' },
},
{
path: 'send',
component: SendComponent,
canActivate: [AuthGuardService],
data: { state: 'tabs_send' },
},
],
},
];

View File

@ -25,10 +25,15 @@ import { SetPasswordComponent } from './accounts/set-password.component';
import { TwoFactorOptionsComponent } from './accounts/two-factor-options.component';
import { TwoFactorComponent } from './accounts/two-factor.component';
import { SsoComponent } from './accounts/sso.component';
import { AppComponent } from './app.component';
import { PasswordGeneratorHistoryComponent } from './generator/password-generator-history.component';
import { PasswordGeneratorComponent } from './generator/password-generator.component';
import { AppComponent } from './app.component';
import { PrivateModeComponent } from './private-mode.component';
import { TabsComponent } from './tabs.component';
import { ExcludedDomainsComponent } from './settings/excluded-domains.component';
import { ExportComponent } from './settings/export.component';
import { FolderAddEditComponent } from './settings/folder-add-edit.component';
import { FoldersComponent } from './settings/folders.component';
@ -36,7 +41,7 @@ import { OptionsComponent } from './settings/options.component';
import { PremiumComponent } from './settings/premium.component';
import { SettingsComponent } from './settings/settings.component';
import { SyncComponent } from './settings/sync.component';
import { TabsComponent } from './tabs.component';
import { AddEditComponent } from './vault/add-edit.component';
import { AttachmentsComponent } from './vault/attachments.component';
import { CiphersComponent } from './vault/ciphers.component';
@ -47,6 +52,8 @@ import { PasswordHistoryComponent } from './vault/password-history.component';
import { ShareComponent } from './vault/share.component';
import { ViewComponent } from './vault/view.component';
import { SendComponent } from './send/send.component';
import { A11yTitleDirective } from 'jslib/angular/directives/a11y-title.directive';
import { ApiActionDirective } from 'jslib/angular/directives/api-action.directive';
import { AutofocusDirective } from 'jslib/angular/directives/autofocus.directive';
@ -181,6 +188,7 @@ registerLocaleData(localeZhTw, 'zh-TW');
ColorPasswordPipe,
CurrentTabComponent,
EnvironmentComponent,
ExcludedDomainsComponent,
ExportComponent,
FallbackSrcDirective,
FolderAddEditComponent,
@ -203,6 +211,7 @@ registerLocaleData(localeZhTw, 'zh-TW');
RegisterComponent,
SearchCiphersPipe,
SelectCopyDirective,
SendComponent,
SettingsComponent,
ShareComponent,
StopClickDirective,

View File

@ -2,7 +2,7 @@
<i class="fa fa-lg fa-list-alt" aria-hidden="true"></i>
</span>
<ng-container *ngIf="cipher.type === cipherType.Login">
<span class="row-btn" appStopClick appStopProp appA11yTitle="{{'launch' | i18n}}" (click)="launch()"
<span class="row-btn" appStopClick appStopProp appA11yTitle="{{'launch' | i18n}}" (click)="launchCipher()"
*ngIf="!showView" [ngClass]="{disabled: !cipher.login.canLaunch}">
<i class="fa fa-lg fa-share-square-o" aria-hidden="true"></i>
</span>

View File

@ -29,6 +29,7 @@ import { PopupUtilsService } from '../services/popup-utils.service';
})
export class ActionButtonsComponent {
@Output() onView = new EventEmitter<CipherView>();
@Output() launchEvent = new EventEmitter<CipherView>();
@Input() cipher: CipherView;
@Input() showView = false;
@ -44,16 +45,8 @@ export class ActionButtonsComponent {
this.userHasPremiumAccess = await this.userService.canAccessPremium();
}
launch() {
if (this.cipher.type !== CipherType.Login || !this.cipher.login.canLaunch) {
return;
}
this.analytics.eventTrack.next({ action: 'Launched URI From Listing' });
BrowserApi.createNewTab(this.cipher.login.launchUri);
if (this.popupUtilsService.inPopup(window)) {
BrowserApi.closePopup(window);
}
launchCipher() {
this.launchEvent.emit(this.cipher);
}
async copy(cipher: CipherView, value: string, typeI18nKey: string, aType: string) {

View File

@ -1,4 +1,4 @@
<a *ngFor="let c of ciphers" (click)="selectCipher(c)" (dblclick)="doubleSelectCipher(c)" href="#" appStopClick
<a *ngFor="let c of ciphers" (click)="selectCipher(c)" (dblclick)="launchCipher(c)" href="#" appStopClick
title="{{title}} - {{c.name}}" class="box-content-row box-content-row-flex">
<div class="row-main">
<app-vault-icon [cipher]="c"></app-vault-icon>
@ -17,6 +17,7 @@
<span class="detail">{{c.subTitle}}</span>
</div>
</div>
<app-action-buttons [cipher]="c" [showView]="showView" (onView)="viewCipher(c)" class="action-buttons">
<app-action-buttons [cipher]="c" [showView]="showView" (onView)="viewCipher(c)" (launchEvent)="launchCipher(c)"
class="action-buttons">
</app-action-buttons>
</a>

View File

@ -15,7 +15,7 @@ import { CipherView } from 'jslib/models/view/cipherView';
})
export class CiphersListComponent {
@Output() onSelected = new EventEmitter<CipherView>();
@Output() onDoubleSelected = new EventEmitter<CipherView>();
@Output() launchEvent = new EventEmitter<CipherView>();
@Output() onView = new EventEmitter<CipherView>();
@Input() ciphers: CipherView[];
@Input() showView = false;
@ -27,8 +27,8 @@ export class CiphersListComponent {
this.onSelected.emit(c);
}
doubleSelectCipher(c: CipherView) {
this.onDoubleSelected.emit(c);
launchCipher(c: CipherView) {
this.launchEvent.emit(c);
}
viewCipher(c: CipherView) {

View File

@ -1,4 +1,4 @@
<ng-container *ngIf="show">
<ng-container>
<button (click)="expand()" appA11yTitle="{{'popOutNewWindow' | i18n}}">
<i class="fa fa-external-link fa-rotate-270 fa-lg fa-fw" aria-hidden="true"></i>
</button>

View File

@ -22,8 +22,7 @@ export class PopOutComponent implements OnInit {
ngOnInit() {
if (this.show) {
this.show = !this.platformUtilsService.isSafari();
if (this.show && this.popupUtilsService.inSidebar(window) && this.platformUtilsService.isFirefox()) {
if (this.popupUtilsService.inSidebar(window) && this.platformUtilsService.isFirefox()) {
this.show = false;
}
}

View File

@ -281,14 +281,13 @@ header {
}
ul {
width: 100%;
display: flex;
list-style: none;
padding: 0;
margin: 0;
li {
width: 25%;
float: left;
flex: 1;
display: inline-block;
padding: 0;
margin: 0;
@ -329,12 +328,6 @@ header {
}
}
}
&.tabs-3 {
ul li {
width: 33.33%;
}
}
}
app-root {
@ -342,6 +335,9 @@ app-root {
width: 100%;
height: 100%;
z-index: 980;
@include themify($themes) {
background-color: themed('backgroundColor');
}
}
content {

View File

@ -378,11 +378,13 @@
&.disabled {
@include themify($themes) {
color: themed('disabledIconColor');
opacity: themed('disabledBoxOpacity');
}
&:hover {
@include themify($themes) {
color: themed('disabledIconColor');
opacity: themed('disabledBoxOpacity');
}
}
}

View File

@ -1,6 +1,18 @@
@import "variables.scss";
html.browser_safari {
body {
height: 360px !important;
&.body-xs {
height: 300px !important;
}
&.body-full {
height: 100% !important;
}
}
header {
.search .fa {
left: 20px;

View File

@ -9,7 +9,8 @@ $text-color: #000000;
$border-color: #f0f0f0;
$border-color-dark: #ddd;
$list-item-hover: #fbfbfb;
$list-icon-color: #c7c7cd;
$list-icon-color: #767679;
$disabled-box-opacity: 1;
$border-radius: 3px;
$line-height-base: 1.42857143;
@ -59,6 +60,7 @@ $themes: (
headerInputPlaceholderColor: lighten($brand-primary, 35%),
listItemBackgroundHoverColor: $list-item-hover,
disabledIconColor: $list-icon-color,
disabledBoxOpacity: $disabled-box-opacity,
headingColor: $gray-light,
labelColor: $gray-light,
mutedColor: $text-muted,
@ -106,7 +108,8 @@ $themes: (
headerInputColor: #ffffff,
headerInputPlaceholderColor: #707070,
listItemBackgroundHoverColor: #3c3c3c,
disabledIconColor: #c7c7cd,
disabledIconColor: #cacaca,
disabledBoxOpacity: 0.5,
headingColor: #a3a3a3,
labelColor: #a3a3a3,
mutedColor: #a3a3a3,
@ -154,7 +157,8 @@ $themes: (
headerInputColor: $nord2,
headerInputPlaceholderColor: $nord3,
listItemBackgroundHoverColor: $nord3,
disabledIconColor: $nord5,
disabledIconColor: $nord4,
disabledBoxOpacity: 0.5,
headingColor: $nord4,
labelColor: $nord4,
mutedColor: $nord4,

View File

@ -0,0 +1,8 @@
<header>
</header>
<content>
<div class="no-items">
<i class="fa fa-smile-o fa-4x"></i>
<p>Coming soon...</p>
</div>
</content>

View File

@ -0,0 +1,35 @@
import {
Component,
NgZone,
} from '@angular/core';
import { SendView } from 'jslib/models/view/sendView';
import { SendComponent as BaseSendComponent } from 'jslib/angular/components/send/send.component';
import { EnvironmentService } from 'jslib/abstractions/environment.service';
import { I18nService } from 'jslib/abstractions/i18n.service';
import { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';
import { SendService } from 'jslib/abstractions/send.service';
import { BroadcasterService } from 'jslib/angular/services/broadcaster.service';
@Component({
selector: 'app-send',
templateUrl: 'send.component.html',
})
export class SendComponent extends BaseSendComponent {
constructor(sendService: SendService, i18nService: I18nService,
platformUtilsService: PlatformUtilsService, environmentService: EnvironmentService,
broadcasterService: BroadcasterService, ngZone: NgZone) {
super(sendService, i18nService, platformUtilsService, environmentService, broadcasterService, ngZone);
}
addSend() {
// TODO
}
editSend(send: SendView) {
// TODO
}
}

View File

@ -71,8 +71,6 @@ export class PopupUtilsService {
chrome.tabs.create({
url: href,
});
} else if ((typeof safari !== 'undefined')) {
// Safari can't open popup in full page tab :(
}
}
}

View File

@ -0,0 +1,53 @@
<form #form (ngSubmit)="submit()">
<header>
<div class="left">
<a routerLink="/tabs/settings">{{'cancel' | i18n}}</a>
</div>
<div class="center">
<span class="title">{{'excludedDomains' | i18n}}</span>
</div>
<div class="right">
<button type="submit" appBlurClick>{{'save' | i18n}}</button>
</div>
</header>
<content>
<div class="box">
<div class="box-content">
<ng-container *ngIf="excludedDomains">
<div class="box-content-row box-content-row-multi" appBoxRow
*ngFor="let domain of excludedDomains; let i = index; trackBy:trackByFunction">
<a href="#" appStopClick (click)="removeUri(i)" appA11yTitle="{{'remove' | i18n}}">
<i class="fa fa-minus-circle fa-lg" aria-hidden="true"></i>
</a>
<div class="row-main">
<label for="excludedDomain{{i}}">{{'uriPosition' | i18n : (i + 1)}}</label>
<input id="excludedDomain{{i}}" name="excludedDomain{{i}}" type="text" [(ngModel)]="domain.uri"
placeholder="{{'ex' | i18n}} https://google.com" inputmode="url" appInputVerbatim>
<label for="currentUris{{i}}" class="sr-only">
{{'currentUri' | i18n}} {{(i + 1)}}
</label>
<select *ngIf="currentUris && currentUris.length" id="currentUris{{i}}"
name="currentUris{{i}}" [(ngModel)]="domain.uri" [hidden]="!domain.showCurrentUris">
<option [ngValue]="null">-- {{'select' | i18n}} --</option>
<option *ngFor="let u of currentUris" [ngValue]="u">{{u}}</option>
</select>
</div>
<div class="action-buttons">
<a *ngIf="currentUris && currentUris.length" class="row-btn" href="#" appStopClick
appBlurClick appA11yTitle="{{'toggleCurrentUris' | i18n}}" (click)="toggleUriInput(domain)">
<i aria-hidden="true" class="fa fa-lg fa-list"></i>
</a>
</div>
</div>
</ng-container>
<a href="#" appStopClick appBlurClick (click)="addUri()"
class="box-content-row box-content-row-newmulti">
<i class="fa fa-plus-circle fa-fw fa-lg" aria-hidden="true"></i> {{'newUri' | i18n}}
</a>
</div>
<div class="box-footer">
{{'excludedDomainsDesc' | i18n}}
</div>
</div>
</content>
</form>

View File

@ -0,0 +1,112 @@
import {
Component,
OnDestroy,
OnInit,
NgZone
} from '@angular/core';
import { Router } from '@angular/router';
import { I18nService } from 'jslib/abstractions/i18n.service';
import { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';
import { StorageService } from 'jslib/abstractions/storage.service';
import { ConstantsService } from 'jslib/services/constants.service';
import { BroadcasterService } from 'jslib/angular/services/broadcaster.service';
import { BrowserApi } from '../../browser/browserApi';
import { Utils } from 'jslib/misc/utils';
interface ExcludedDomain {
uri: string;
showCurrentUris: boolean;
}
const BroadcasterSubscriptionId = 'excludedDomains';
@Component({
selector: 'app-excluded-domains',
templateUrl: 'excluded-domains.component.html',
})
export class ExcludedDomainsComponent implements OnInit, OnDestroy {
excludedDomains: ExcludedDomain[] = [];
currentUris: string[];
loadCurrentUrisTimeout: number;
constructor(private storageService: StorageService,
private i18nService: I18nService, private router: Router,
private broadcasterService: BroadcasterService, private ngZone: NgZone,
private platformUtilsService: PlatformUtilsService) {
}
async ngOnInit() {
const savedDomains = await this.storageService.get<any>(ConstantsService.neverDomainsKey);
if (savedDomains) {
for (const uri of Object.keys(savedDomains)) {
this.excludedDomains.push({ uri: uri, showCurrentUris: false });
}
}
await this.loadCurrentUris();
this.broadcasterService.subscribe(BroadcasterSubscriptionId, (message: any) => {
this.ngZone.run(async () => {
switch (message.command) {
case 'tabChanged':
case 'windowChanged':
if (this.loadCurrentUrisTimeout != null) {
window.clearTimeout(this.loadCurrentUrisTimeout);
}
this.loadCurrentUrisTimeout = window.setTimeout(async () => await this.loadCurrentUris(), 500);
break;
default:
break;
}
});
});
}
ngOnDestroy() {
this.broadcasterService.unsubscribe(BroadcasterSubscriptionId);
}
async addUri() {
this.excludedDomains.push({ uri: '', showCurrentUris: false });
}
async removeUri(i: number) {
this.excludedDomains.splice(i, 1);
}
async submit() {
const savedDomains: { [name: string]: null } = {};
for (const domain of this.excludedDomains) {
if (domain.uri && domain.uri !== '') {
const validDomain = Utils.getHostname(domain.uri);
if (!validDomain) {
this.platformUtilsService.showToast('error', null,
this.i18nService.t('excludedDomainsInvalidDomain', domain.uri));
return;
}
savedDomains[validDomain] = null;
}
}
await this.storageService.save(ConstantsService.neverDomainsKey, savedDomains);
this.router.navigate(['/tabs/settings']);
}
trackByFunction(index: number, item: any) {
return index;
}
toggleUriInput(domain: ExcludedDomain) {
domain.showCurrentUris = !domain.showCurrentUris;
}
async loadCurrentUris() {
const tabs = await BrowserApi.tabsQuery({ windowType: 'normal' });
if (tabs) {
const uriSet = new Set(tabs.map((tab) => Utils.getHostname(tab.url)));
uriSet.delete(null);
this.currentUris = Array.from(uriSet);
}
}
}

View File

@ -96,7 +96,7 @@
</div>
<div class="box-footer">{{'disableChangedPasswordNotificationDesc' | i18n}}</div>
</div>
<div class="box" *ngIf="showDisableContextMenu">
<div class="box">
<div class="box-content">
<div class="box-content-row box-content-row-checkbox" appBoxRow>
<label for="context-menu">{{'disableContextMenuItem' | i18n}}</label>

View File

@ -29,7 +29,6 @@ export class OptionsComponent implements OnInit {
disableChangedPasswordNotification = false;
dontShowCards = false;
dontShowIdentities = false;
showDisableContextMenu = true;
showClearClipboard = true;
theme: string;
themeOptions: any[];
@ -68,8 +67,6 @@ export class OptionsComponent implements OnInit {
}
async ngOnInit() {
this.showDisableContextMenu = !this.platformUtilsService.isSafari();
this.enableAutoFillOnPageLoad = await this.storageService.get<boolean>(
ConstantsService.enableAutoFillOnPageLoadKey);

View File

@ -19,6 +19,10 @@
<div class="row-main">{{'sync' | i18n}}</div>
<i class="fa fa-chevron-right fa-lg row-sub-icon" aria-hidden="true"></i>
</a>
<a class="box-content-row box-content-row-flex text-default" routerLink="/excluded-domains">
<div class="row-main">{{'excludedDomains' | i18n}}</div>
<i class="fa fa-chevron-right fa-lg row-sub-icon" aria-hidden="true"></i>
</a>
</div>
</div>
<div class="box list">
@ -42,7 +46,7 @@
<label for="pin">{{'unlockWithPin' | i18n}}</label>
<input id="pin" type="checkbox" (change)="updatePin()" [(ngModel)]="pin">
</div>
<div class="box-content-row box-content-row-checkbox" appBoxRow>
<div class="box-content-row box-content-row-checkbox" appBoxRow *ngIf="supportsBiometric">
<label for="biometric">{{'unlockWithBiometrics' | i18n}}</label>
<input id="biometric" type="checkbox" (change)="updateBiometric()" [(ngModel)]="biometric">
</div>

View File

@ -51,6 +51,7 @@ export class SettingsComponent implements OnInit {
vaultTimeoutActions: any[];
vaultTimeoutAction: string;
pin: boolean = null;
supportsBiometric: boolean;
biometric: boolean = false;
previousVaultTimeout: number = null;
@ -101,6 +102,8 @@ export class SettingsComponent implements OnInit {
const pinSet = await this.vaultTimeoutService.isPinLockSet();
this.pin = pinSet[0] || pinSet[1];
this.supportsBiometric = await this.platformUtilsService.supportsBiometric();
this.biometric = await this.vaultTimeoutService.isBiometricLockSet();
}
@ -207,7 +210,33 @@ export class SettingsComponent implements OnInit {
}
async updateBiometric() {
if (this.biometric) {
if (this.biometric && this.supportsBiometric) {
// Request permission to use the optional permission for nativeMessaging
if (!this.platformUtilsService.isFirefox()) {
const hasPermission = await new Promise((resolve) => {
chrome.permissions.contains({permissions: ['nativeMessaging']}, resolve);
});
if (!hasPermission) {
await this.platformUtilsService.showDialog(
this.i18nService.t('nativeMessagingPermissionPromptDesc'), this.i18nService.t('nativeMessagingPermissionPromptTitle'),
this.i18nService.t('ok'), null);
const granted = await new Promise((resolve, reject) => {
chrome.permissions.request({permissions: ['nativeMessaging']}, resolve);
});
if (!granted) {
await this.platformUtilsService.showDialog(
this.i18nService.t('nativeMessaginPermissionErrorDesc'), this.i18nService.t('nativeMessaginPermissionErrorTitle'),
this.i18nService.t('ok'), null);
this.biometric = false;
return;
}
}
}
const submitted = Swal.fire({
heightAuto: false,
buttonsStyling: false,

View File

@ -1,6 +1,6 @@
<div class="tab-page">
<router-outlet></router-outlet>
<nav class="tabs" [ngClass]="{'tabs-3': !showCurrentTab}">
<nav class="tabs">
<ul>
<li routerLinkActive="active" *ngIf="showCurrentTab">
<a routerLink="current" appA11yTitle="{{'currentTab' | i18n}}">
@ -12,6 +12,11 @@
<i class="fa fa-lock fa-2x" aria-hidden="true"></i>{{'myVault' | i18n}}
</a>
</li>
<li routerLinkActive="active">
<a routerLink="send" appA11yTitle="{{'send' | i18n}}">
<i class="fa fa-paper-plane fa-2x" aria-hidden="true"></i>{{'send' | i18n}}
</a>
</li>
<li routerLinkActive="active">
<a routerLink="generator" appA11yTitle="{{'passGen' | i18n}}">
<i class="fa fa-refresh fa-2x" aria-hidden="true"></i>{{'generator' | i18n}}

View File

@ -72,7 +72,7 @@
</div>
<div class="box-content">
<app-ciphers-list [ciphers]="filteredCiphers" title="{{'viewItem' | i18n}}"
(onSelected)="selectCipher($event)" (onDoubleSelected)="launchCipher($event)"></app-ciphers-list>
(onSelected)="selectCipher($event)" (launchEvent)="launchCipher($event)"></app-ciphers-list>
</div>
</div>
</ng-container>

View File

@ -1,5 +1,5 @@
<header>
<div class="left" *ngIf="showLeftHeader">
<div class="left">
<app-pop-out [show]="!inSidebar"></app-pop-out>
<button type="button" appBlurClick (click)="refresh()" appA11yTitle="{{'refresh' | i18n}}" *ngIf="inSidebar">
<i class="fa fa-retweet fa-lg fa-fw" aria-hidden="true"></i>

View File

@ -49,7 +49,6 @@ export class CurrentTabComponent implements OnInit, OnDestroy {
hostname: string;
searchText: string;
inSidebar = false;
showLeftHeader = false;
searchTypeSearch = false;
loaded = false;
@ -68,7 +67,7 @@ export class CurrentTabComponent implements OnInit, OnDestroy {
}
async ngOnInit() {
this.showLeftHeader = this.searchTypeSearch = !this.platformUtilsService.isSafari();
this.searchTypeSearch = !this.platformUtilsService.isSafari();
this.inSidebar = this.popupUtilsService.inSidebar(window);
this.broadcasterService.subscribe(BroadcasterSubscriptionId, (message: any) => {

View File

@ -1,5 +1,5 @@
<header>
<div class="left" *ngIf="showLeftHeader">
<div class="left">
<app-pop-out></app-pop-out>
</div>
<div class="search">
@ -30,7 +30,7 @@
</div>
<div class="box-content">
<app-ciphers-list [ciphers]="favoriteCiphers" title="{{'viewItem' | i18n}}"
(onSelected)="selectCipher($event)" (onDoubleSelected)="launchCipher($event)"></app-ciphers-list>
(onSelected)="selectCipher($event)" (launchEvent)="launchCipher($event)"></app-ciphers-list>
</div>
</div>
<div class="box list">
@ -118,7 +118,7 @@
</div>
<div class="box-content">
<app-ciphers-list [ciphers]="noFolderCiphers" title="{{'viewItem' | i18n}}"
(onSelected)="selectCipher($event)" (onDoubleSelected)="launchCipher($event)"></app-ciphers-list>
(onSelected)="selectCipher($event)" (launchEvent)="launchCipher($event)"></app-ciphers-list>
</div>
</div>
<div class="box list" *ngIf="deletedCount">
@ -146,7 +146,7 @@
<div class="box list full-list" *ngIf="ciphers && ciphers.length > 0">
<div class="box-content">
<app-ciphers-list [ciphers]="ciphers" title="{{'viewItem' | i18n}}" (onSelected)="selectCipher($event)"
(onDoubleSelected)="launchCipher($event)"></app-ciphers-list>
(launchEvent)="launchCipher($event)"></app-ciphers-list>
</div>
</div>
</ng-container>

View File

@ -92,8 +92,7 @@ export class GroupingsComponent extends BaseGroupingsComponent implements OnInit
async ngOnInit() {
this.searchTypeSearch = !this.platformUtilsService.isSafari();
this.showLeftHeader = !this.platformUtilsService.isSafari() &&
!(this.popupUtils.inSidebar(window) && this.platformUtilsService.isFirefox());
this.showLeftHeader = !(this.popupUtils.inSidebar(window) && this.platformUtilsService.isFirefox());
this.stateService.remove('CiphersComponent');
this.broadcasterService.subscribe(ComponentId, (message: any) => {

View File

@ -7,37 +7,42 @@
objects = {
/* Begin PBXBuildFile section */
27E5E98D22F3D5B2005EA1D9 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27E5E98C22F3D5B2005EA1D9 /* AppDelegate.swift */; };
27E5E98F22F3D5B2005EA1D9 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27E5E98E22F3D5B2005EA1D9 /* ViewController.swift */; };
27E5E99122F3D5B4005EA1D9 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 27E5E99022F3D5B4005EA1D9 /* Assets.xcassets */; };
27E5E99422F3D5B4005EA1D9 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 27E5E99222F3D5B4005EA1D9 /* Main.storyboard */; };
27E5E9A322F3D5FE005EA1D9 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 27E5E9A222F3D5FE005EA1D9 /* Cocoa.framework */; };
27E5E9A622F3D5FE005EA1D9 /* SafariExtensionHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27E5E9A522F3D5FE005EA1D9 /* SafariExtensionHandler.swift */; };
27E5E9A822F3D5FE005EA1D9 /* SafariExtensionViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27E5E9A722F3D5FE005EA1D9 /* SafariExtensionViewController.swift */; };
27E5E9AB22F3D5FE005EA1D9 /* SafariExtensionViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 27E5E9A922F3D5FE005EA1D9 /* SafariExtensionViewController.xib */; };
27E5E9B022F3D5FE005EA1D9 /* ToolbarItemIcon.pdf in Resources */ = {isa = PBXBuildFile; fileRef = 27E5E9AF22F3D5FE005EA1D9 /* ToolbarItemIcon.pdf */; };
27E5E9B422F3D5FE005EA1D9 /* safari.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 27E5E9A022F3D5FE005EA1D9 /* safari.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
27E5E9BC22F4B9D5005EA1D9 /* app in Resources */ = {isa = PBXBuildFile; fileRef = 27E5E9BB22F4B9D5005EA1D9 /* app */; };
55E0374D2577FA6B00979016 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55E0374C2577FA6B00979016 /* AppDelegate.swift */; };
55E037502577FA6B00979016 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 55E0374E2577FA6B00979016 /* Main.storyboard */; };
55E037522577FA6B00979016 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55E037512577FA6B00979016 /* ViewController.swift */; };
55E037542577FA6E00979016 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 55E037532577FA6E00979016 /* Assets.xcassets */; };
55E0375B2577FA6F00979016 /* safari.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 55E0375A2577FA6F00979016 /* safari.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
55E037602577FA6F00979016 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 55E0375F2577FA6F00979016 /* Cocoa.framework */; };
55E037632577FA6F00979016 /* SafariWebExtensionHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55E037622577FA6F00979016 /* SafariWebExtensionHandler.swift */; };
55E037792577FA6F00979016 /* popup in Resources */ = {isa = PBXBuildFile; fileRef = 55E037702577FA6F00979016 /* popup */; };
55E0377A2577FA6F00979016 /* background.js in Resources */ = {isa = PBXBuildFile; fileRef = 55E037712577FA6F00979016 /* background.js */; };
55E0377B2577FA6F00979016 /* images in Resources */ = {isa = PBXBuildFile; fileRef = 55E037722577FA6F00979016 /* images */; };
55E0377C2577FA6F00979016 /* notification in Resources */ = {isa = PBXBuildFile; fileRef = 55E037732577FA6F00979016 /* notification */; };
55E0377D2577FA6F00979016 /* content in Resources */ = {isa = PBXBuildFile; fileRef = 55E037742577FA6F00979016 /* content */; };
55E0377E2577FA6F00979016 /* vendor.js in Resources */ = {isa = PBXBuildFile; fileRef = 55E037752577FA6F00979016 /* vendor.js */; };
55E0377F2577FA6F00979016 /* manifest.json in Resources */ = {isa = PBXBuildFile; fileRef = 55E037762577FA6F00979016 /* manifest.json */; };
55E037802577FA6F00979016 /* background.html in Resources */ = {isa = PBXBuildFile; fileRef = 55E037772577FA6F00979016 /* background.html */; };
55E037812577FA6F00979016 /* _locales in Resources */ = {isa = PBXBuildFile; fileRef = 55E037782577FA6F00979016 /* _locales */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
27E5E9B222F3D5FE005EA1D9 /* PBXContainerItemProxy */ = {
55E0375C2577FA6F00979016 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 27E5E98122F3D5B2005EA1D9 /* Project object */;
containerPortal = 55E037402577FA6B00979016 /* Project object */;
proxyType = 1;
remoteGlobalIDString = 27E5E99F22F3D5FD005EA1D9;
remoteInfo = safari;
remoteGlobalIDString = 55E037592577FA6F00979016;
remoteInfo = "safari";
};
/* End PBXContainerItemProxy section */
/* Begin PBXCopyFilesBuildPhase section */
27E5E9B822F3D5FE005EA1D9 /* Embed App Extensions */ = {
55E0376B2577FA6F00979016 /* Embed App Extensions */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = "";
dstSubfolderSpec = 13;
files = (
27E5E9B422F3D5FE005EA1D9 /* safari.appex in Embed App Extensions */,
55E0375B2577FA6F00979016 /* safari.appex in Embed App Extensions */,
);
name = "Embed App Extensions";
runOnlyForDeploymentPostprocessing = 0;
@ -45,151 +50,170 @@
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
27E5E98922F3D5B2005EA1D9 /* desktop.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = desktop.app; sourceTree = BUILT_PRODUCTS_DIR; };
27E5E98C22F3D5B2005EA1D9 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
27E5E98E22F3D5B2005EA1D9 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
27E5E99022F3D5B4005EA1D9 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
27E5E99322F3D5B4005EA1D9 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
27E5E99522F3D5B4005EA1D9 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
27E5E99622F3D5B4005EA1D9 /* desktop.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = desktop.entitlements; sourceTree = "<group>"; };
27E5E9A022F3D5FE005EA1D9 /* safari.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = safari.appex; sourceTree = BUILT_PRODUCTS_DIR; };
27E5E9A222F3D5FE005EA1D9 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; };
27E5E9A522F3D5FE005EA1D9 /* SafariExtensionHandler.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SafariExtensionHandler.swift; sourceTree = "<group>"; };
27E5E9A722F3D5FE005EA1D9 /* SafariExtensionViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SafariExtensionViewController.swift; sourceTree = "<group>"; };
27E5E9AA22F3D5FE005EA1D9 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/SafariExtensionViewController.xib; sourceTree = "<group>"; };
27E5E9AC22F3D5FE005EA1D9 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
27E5E9AF22F3D5FE005EA1D9 /* ToolbarItemIcon.pdf */ = {isa = PBXFileReference; lastKnownFileType = image.pdf; path = ToolbarItemIcon.pdf; sourceTree = "<group>"; };
27E5E9B122F3D5FE005EA1D9 /* safari.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = safari.entitlements; sourceTree = "<group>"; };
27E5E9BB22F4B9D5005EA1D9 /* app */ = {isa = PBXFileReference; lastKnownFileType = folder; path = app; sourceTree = "<group>"; };
55E037482577FA6B00979016 /* desktop.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = desktop.app; sourceTree = BUILT_PRODUCTS_DIR; };
55E0374B2577FA6B00979016 /* desktop.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = desktop.entitlements; sourceTree = "<group>"; };
55E0374C2577FA6B00979016 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
55E0374F2577FA6B00979016 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
55E037512577FA6B00979016 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
55E037532577FA6E00979016 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
55E037552577FA6E00979016 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
55E0375A2577FA6F00979016 /* safari.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = safari.appex; sourceTree = BUILT_PRODUCTS_DIR; };
55E0375F2577FA6F00979016 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; };
55E037622577FA6F00979016 /* SafariWebExtensionHandler.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SafariWebExtensionHandler.swift; sourceTree = "<group>"; };
55E037642577FA6F00979016 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
55E037652577FA6F00979016 /* safari.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = safari.entitlements; sourceTree = "<group>"; };
55E037702577FA6F00979016 /* popup */ = {isa = PBXFileReference; lastKnownFileType = folder; name = popup; path = ../../../build/popup; sourceTree = "<group>"; };
55E037712577FA6F00979016 /* background.js */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.javascript; name = background.js; path = ../../../build/background.js; sourceTree = "<group>"; };
55E037722577FA6F00979016 /* images */ = {isa = PBXFileReference; lastKnownFileType = folder; name = images; path = ../../../build/images; sourceTree = "<group>"; };
55E037732577FA6F00979016 /* notification */ = {isa = PBXFileReference; lastKnownFileType = folder; name = notification; path = ../../../build/notification; sourceTree = "<group>"; };
55E037742577FA6F00979016 /* content */ = {isa = PBXFileReference; lastKnownFileType = folder; name = content; path = ../../../build/content; sourceTree = "<group>"; };
55E037752577FA6F00979016 /* vendor.js */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.javascript; name = vendor.js; path = ../../../build/vendor.js; sourceTree = "<group>"; };
55E037762577FA6F00979016 /* manifest.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; name = manifest.json; path = ../../../build/manifest.json; sourceTree = "<group>"; };
55E037772577FA6F00979016 /* background.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = background.html; path = ../../../build/background.html; sourceTree = "<group>"; };
55E037782577FA6F00979016 /* _locales */ = {isa = PBXFileReference; lastKnownFileType = folder; name = _locales; path = ../../../build/_locales; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
27E5E98622F3D5B2005EA1D9 /* Frameworks */ = {
55E037452577FA6B00979016 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
27E5E99D22F3D5FD005EA1D9 /* Frameworks */ = {
55E037572577FA6F00979016 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
27E5E9A322F3D5FE005EA1D9 /* Cocoa.framework in Frameworks */,
55E037602577FA6F00979016 /* Cocoa.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
27E5E98022F3D5B2005EA1D9 = {
55E0373F2577FA6B00979016 = {
isa = PBXGroup;
children = (
27E5E98B22F3D5B2005EA1D9 /* desktop */,
27E5E9A422F3D5FE005EA1D9 /* safari */,
27E5E9A122F3D5FE005EA1D9 /* Frameworks */,
27E5E98A22F3D5B2005EA1D9 /* Products */,
55E0374A2577FA6B00979016 /* desktop */,
55E037612577FA6F00979016 /* safari */,
55E0375E2577FA6F00979016 /* Frameworks */,
55E037492577FA6B00979016 /* Products */,
);
sourceTree = "<group>";
};
27E5E98A22F3D5B2005EA1D9 /* Products */ = {
55E037492577FA6B00979016 /* Products */ = {
isa = PBXGroup;
children = (
27E5E98922F3D5B2005EA1D9 /* desktop.app */,
27E5E9A022F3D5FE005EA1D9 /* safari.appex */,
55E037482577FA6B00979016 /* desktop.app */,
55E0375A2577FA6F00979016 /* safari.appex */,
);
name = Products;
sourceTree = "<group>";
};
27E5E98B22F3D5B2005EA1D9 /* desktop */ = {
55E0374A2577FA6B00979016 /* desktop */ = {
isa = PBXGroup;
children = (
27E5E98C22F3D5B2005EA1D9 /* AppDelegate.swift */,
27E5E98E22F3D5B2005EA1D9 /* ViewController.swift */,
27E5E99022F3D5B4005EA1D9 /* Assets.xcassets */,
27E5E99222F3D5B4005EA1D9 /* Main.storyboard */,
27E5E99522F3D5B4005EA1D9 /* Info.plist */,
27E5E99622F3D5B4005EA1D9 /* desktop.entitlements */,
55E0374B2577FA6B00979016 /* desktop.entitlements */,
55E0374C2577FA6B00979016 /* AppDelegate.swift */,
55E0374E2577FA6B00979016 /* Main.storyboard */,
55E037512577FA6B00979016 /* ViewController.swift */,
55E037532577FA6E00979016 /* Assets.xcassets */,
55E037552577FA6E00979016 /* Info.plist */,
);
path = desktop;
sourceTree = "<group>";
};
27E5E9A122F3D5FE005EA1D9 /* Frameworks */ = {
55E0375E2577FA6F00979016 /* Frameworks */ = {
isa = PBXGroup;
children = (
27E5E9A222F3D5FE005EA1D9 /* Cocoa.framework */,
55E0375F2577FA6F00979016 /* Cocoa.framework */,
);
name = Frameworks;
sourceTree = "<group>";
};
27E5E9A422F3D5FE005EA1D9 /* safari */ = {
55E037612577FA6F00979016 /* safari */ = {
isa = PBXGroup;
children = (
27E5E9BB22F4B9D5005EA1D9 /* app */,
27E5E9A522F3D5FE005EA1D9 /* SafariExtensionHandler.swift */,
27E5E9A722F3D5FE005EA1D9 /* SafariExtensionViewController.swift */,
27E5E9A922F3D5FE005EA1D9 /* SafariExtensionViewController.xib */,
27E5E9AC22F3D5FE005EA1D9 /* Info.plist */,
27E5E9AF22F3D5FE005EA1D9 /* ToolbarItemIcon.pdf */,
27E5E9B122F3D5FE005EA1D9 /* safari.entitlements */,
55E0376F2577FA6F00979016 /* Resources */,
55E037622577FA6F00979016 /* SafariWebExtensionHandler.swift */,
55E037642577FA6F00979016 /* Info.plist */,
55E037652577FA6F00979016 /* safari.entitlements */,
);
path = safari;
sourceTree = "<group>";
};
55E0376F2577FA6F00979016 /* Resources */ = {
isa = PBXGroup;
children = (
55E037702577FA6F00979016 /* popup */,
55E037712577FA6F00979016 /* background.js */,
55E037722577FA6F00979016 /* images */,
55E037732577FA6F00979016 /* notification */,
55E037742577FA6F00979016 /* content */,
55E037752577FA6F00979016 /* vendor.js */,
55E037762577FA6F00979016 /* manifest.json */,
55E037772577FA6F00979016 /* background.html */,
55E037782577FA6F00979016 /* _locales */,
);
name = Resources;
path = "safari";
sourceTree = SOURCE_ROOT;
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
27E5E98822F3D5B2005EA1D9 /* desktop */ = {
55E037472577FA6B00979016 /* desktop */ = {
isa = PBXNativeTarget;
buildConfigurationList = 27E5E99922F3D5B4005EA1D9 /* Build configuration list for PBXNativeTarget "desktop" */;
buildConfigurationList = 55E0376C2577FA6F00979016 /* Build configuration list for PBXNativeTarget "desktop" */;
buildPhases = (
27E5E98522F3D5B2005EA1D9 /* Sources */,
27E5E98622F3D5B2005EA1D9 /* Frameworks */,
27E5E98722F3D5B2005EA1D9 /* Resources */,
27E5E9B822F3D5FE005EA1D9 /* Embed App Extensions */,
55E037442577FA6B00979016 /* Sources */,
55E037452577FA6B00979016 /* Frameworks */,
55E037462577FA6B00979016 /* Resources */,
55E0376B2577FA6F00979016 /* Embed App Extensions */,
);
buildRules = (
);
dependencies = (
27E5E9B322F3D5FE005EA1D9 /* PBXTargetDependency */,
55E0375D2577FA6F00979016 /* PBXTargetDependency */,
);
name = desktop;
productName = desktop;
productReference = 27E5E98922F3D5B2005EA1D9 /* desktop.app */;
productReference = 55E037482577FA6B00979016 /* desktop.app */;
productType = "com.apple.product-type.application";
};
27E5E99F22F3D5FD005EA1D9 /* safari */ = {
55E037592577FA6F00979016 /* safari */ = {
isa = PBXNativeTarget;
buildConfigurationList = 27E5E9B522F3D5FE005EA1D9 /* Build configuration list for PBXNativeTarget "safari" */;
buildConfigurationList = 55E037682577FA6F00979016 /* Build configuration list for PBXNativeTarget "safari" */;
buildPhases = (
27E5E99C22F3D5FD005EA1D9 /* Sources */,
27E5E99D22F3D5FD005EA1D9 /* Frameworks */,
27E5E99E22F3D5FD005EA1D9 /* Resources */,
55E037562577FA6F00979016 /* Sources */,
55E037572577FA6F00979016 /* Frameworks */,
55E037582577FA6F00979016 /* Resources */,
);
buildRules = (
);
dependencies = (
);
name = safari;
productName = safari;
productReference = 27E5E9A022F3D5FE005EA1D9 /* safari.appex */;
productName = "safari";
productReference = 55E0375A2577FA6F00979016 /* safari.appex */;
productType = "com.apple.product-type.app-extension";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
27E5E98122F3D5B2005EA1D9 /* Project object */ = {
55E037402577FA6B00979016 /* Project object */ = {
isa = PBXProject;
attributes = {
LastSwiftUpdateCheck = 1030;
LastUpgradeCheck = 1030;
LastSwiftUpdateCheck = 1220;
LastUpgradeCheck = 1220;
ORGANIZATIONNAME = "8bit Solutions LLC";
TargetAttributes = {
27E5E98822F3D5B2005EA1D9 = {
CreatedOnToolsVersion = 10.3;
55E037472577FA6B00979016 = {
CreatedOnToolsVersion = 12.2;
};
27E5E99F22F3D5FD005EA1D9 = {
CreatedOnToolsVersion = 10.3;
55E037592577FA6F00979016 = {
CreatedOnToolsVersion = 12.2;
SystemCapabilities = {
com.apple.Sandbox = {
enabled = 1;
@ -198,7 +222,7 @@
};
};
};
buildConfigurationList = 27E5E98422F3D5B2005EA1D9 /* Build configuration list for PBXProject "desktop" */;
buildConfigurationList = 55E037432577FA6B00979016 /* Build configuration list for PBXProject "desktop" */;
compatibilityVersion = "Xcode 9.3";
developmentRegion = en;
hasScannedForEncodings = 0;
@ -206,92 +230,88 @@
en,
Base,
);
mainGroup = 27E5E98022F3D5B2005EA1D9;
productRefGroup = 27E5E98A22F3D5B2005EA1D9 /* Products */;
mainGroup = 55E0373F2577FA6B00979016;
productRefGroup = 55E037492577FA6B00979016 /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
27E5E98822F3D5B2005EA1D9 /* desktop */,
27E5E99F22F3D5FD005EA1D9 /* safari */,
55E037472577FA6B00979016 /* desktop */,
55E037592577FA6F00979016 /* safari */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
27E5E98722F3D5B2005EA1D9 /* Resources */ = {
55E037462577FA6B00979016 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
27E5E99122F3D5B4005EA1D9 /* Assets.xcassets in Resources */,
27E5E99422F3D5B4005EA1D9 /* Main.storyboard in Resources */,
55E037542577FA6E00979016 /* Assets.xcassets in Resources */,
55E037502577FA6B00979016 /* Main.storyboard in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
27E5E99E22F3D5FD005EA1D9 /* Resources */ = {
55E037582577FA6F00979016 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
27E5E9BC22F4B9D5005EA1D9 /* app in Resources */,
27E5E9B022F3D5FE005EA1D9 /* ToolbarItemIcon.pdf in Resources */,
27E5E9AB22F3D5FE005EA1D9 /* SafariExtensionViewController.xib in Resources */,
55E037812577FA6F00979016 /* _locales in Resources */,
55E0377B2577FA6F00979016 /* images in Resources */,
55E0377F2577FA6F00979016 /* manifest.json in Resources */,
55E037802577FA6F00979016 /* background.html in Resources */,
55E0377A2577FA6F00979016 /* background.js in Resources */,
55E037792577FA6F00979016 /* popup in Resources */,
55E0377C2577FA6F00979016 /* notification in Resources */,
55E0377E2577FA6F00979016 /* vendor.js in Resources */,
55E0377D2577FA6F00979016 /* content in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
27E5E98522F3D5B2005EA1D9 /* Sources */ = {
55E037442577FA6B00979016 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
27E5E98F22F3D5B2005EA1D9 /* ViewController.swift in Sources */,
27E5E98D22F3D5B2005EA1D9 /* AppDelegate.swift in Sources */,
55E037522577FA6B00979016 /* ViewController.swift in Sources */,
55E0374D2577FA6B00979016 /* AppDelegate.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
27E5E99C22F3D5FD005EA1D9 /* Sources */ = {
55E037562577FA6F00979016 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
27E5E9A822F3D5FE005EA1D9 /* SafariExtensionViewController.swift in Sources */,
27E5E9A622F3D5FE005EA1D9 /* SafariExtensionHandler.swift in Sources */,
55E037632577FA6F00979016 /* SafariWebExtensionHandler.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
27E5E9B322F3D5FE005EA1D9 /* PBXTargetDependency */ = {
55E0375D2577FA6F00979016 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 27E5E99F22F3D5FD005EA1D9 /* safari */;
targetProxy = 27E5E9B222F3D5FE005EA1D9 /* PBXContainerItemProxy */;
target = 55E037592577FA6F00979016 /* safari */;
targetProxy = 55E0375C2577FA6F00979016 /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
/* Begin PBXVariantGroup section */
27E5E99222F3D5B4005EA1D9 /* Main.storyboard */ = {
55E0374E2577FA6B00979016 /* Main.storyboard */ = {
isa = PBXVariantGroup;
children = (
27E5E99322F3D5B4005EA1D9 /* Base */,
55E0374F2577FA6B00979016 /* Base */,
);
name = Main.storyboard;
sourceTree = "<group>";
};
27E5E9A922F3D5FE005EA1D9 /* SafariExtensionViewController.xib */ = {
isa = PBXVariantGroup;
children = (
27E5E9AA22F3D5FE005EA1D9 /* Base */,
);
name = SafariExtensionViewController.xib;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
27E5E99722F3D5B4005EA1D9 /* Debug */ = {
55E037662577FA6F00979016 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
@ -315,6 +335,7 @@
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
@ -340,7 +361,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.11;
MACOSX_DEPLOYMENT_TARGET = 10.15;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
ONLY_ACTIVE_ARCH = YES;
@ -350,10 +371,9 @@
};
name = Debug;
};
27E5E99822F3D5B4005EA1D9 /* Release */ = {
55E037672577FA6F00979016 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
@ -377,6 +397,7 @@
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
@ -396,7 +417,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.11;
MACOSX_DEPLOYMENT_TARGET = 10.15;
MTL_ENABLE_DEBUG_INFO = NO;
MTL_FAST_MATH = YES;
SDKROOT = macosx;
@ -405,11 +426,12 @@
};
name = Release;
};
27E5E99A22F3D5B4005EA1D9 /* Debug */ = {
55E0376D2577FA6F00979016 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
CODE_SIGN_ENTITLEMENTS = desktop/desktop.entitlements;
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
@ -420,19 +442,21 @@
"$(inherited)",
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.11;
MACOSX_DEPLOYMENT_TARGET = 10.14;
PRODUCT_BUNDLE_IDENTIFIER = com.bitwarden.desktop;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 5.0;
};
name = Debug;
};
27E5E99B22F3D5B4005EA1D9 /* Release */ = {
55E0376E2577FA6F00979016 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
CODE_SIGN_ENTITLEMENTS = desktop/desktop.entitlements;
CODE_SIGN_INJECT_BASE_ENTITLEMENTS = NO;
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
DEVELOPMENT_TEAM = LTZ2PFU5D6;
@ -442,28 +466,28 @@
"$(inherited)",
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.11;
MACOSX_DEPLOYMENT_TARGET = 10.14;
PRODUCT_BUNDLE_IDENTIFIER = com.bitwarden.desktop;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 5.0;
};
name = Release;
};
27E5E9B622F3D5FE005EA1D9 /* Debug */ = {
55E037692577FA6F00979016 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CODE_SIGN_ENTITLEMENTS = safari/safari.entitlements;
CODE_SIGN_ENTITLEMENTS = "safari/safari.entitlements";
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = LTZ2PFU5D6;
ENABLE_HARDENED_RUNTIME = YES;
INFOPLIST_FILE = safari/Info.plist;
INFOPLIST_FILE = "safari/Info.plist";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
"@executable_path/../../../../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.11;
MACOSX_DEPLOYMENT_TARGET = 10.14;
PRODUCT_BUNDLE_IDENTIFIER = com.bitwarden.desktop.safari;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
@ -471,21 +495,22 @@
};
name = Debug;
};
27E5E9B722F3D5FE005EA1D9 /* Release */ = {
55E0376A2577FA6F00979016 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CODE_SIGN_ENTITLEMENTS = safari/safari.entitlements;
CODE_SIGN_ENTITLEMENTS = "safari/safari.entitlements";
CODE_SIGN_INJECT_BASE_ENTITLEMENTS = NO;
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = LTZ2PFU5D6;
ENABLE_HARDENED_RUNTIME = YES;
INFOPLIST_FILE = safari/Info.plist;
INFOPLIST_FILE = "safari/Info.plist";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
"@executable_path/../../../../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.11;
MACOSX_DEPLOYMENT_TARGET = 10.14;
PRODUCT_BUNDLE_IDENTIFIER = com.bitwarden.desktop.safari;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
@ -496,34 +521,34 @@
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
27E5E98422F3D5B2005EA1D9 /* Build configuration list for PBXProject "desktop" */ = {
55E037432577FA6B00979016 /* Build configuration list for PBXProject "desktop" */ = {
isa = XCConfigurationList;
buildConfigurations = (
27E5E99722F3D5B4005EA1D9 /* Debug */,
27E5E99822F3D5B4005EA1D9 /* Release */,
55E037662577FA6F00979016 /* Debug */,
55E037672577FA6F00979016 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
27E5E99922F3D5B4005EA1D9 /* Build configuration list for PBXNativeTarget "desktop" */ = {
55E037682577FA6F00979016 /* Build configuration list for PBXNativeTarget "safari" */ = {
isa = XCConfigurationList;
buildConfigurations = (
27E5E99A22F3D5B4005EA1D9 /* Debug */,
27E5E99B22F3D5B4005EA1D9 /* Release */,
55E037692577FA6F00979016 /* Debug */,
55E0376A2577FA6F00979016 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
27E5E9B522F3D5FE005EA1D9 /* Build configuration list for PBXNativeTarget "safari" */ = {
55E0376C2577FA6F00979016 /* Build configuration list for PBXNativeTarget "desktop" */ = {
isa = XCConfigurationList;
buildConfigurations = (
27E5E9B622F3D5FE005EA1D9 /* Debug */,
27E5E9B722F3D5FE005EA1D9 /* Release */,
55E0376D2577FA6F00979016 /* Debug */,
55E0376E2577FA6F00979016 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 27E5E98122F3D5B2005EA1D9 /* Project object */;
rootObject = 55E037402577FA6B00979016 /* Project object */;
}

View File

@ -2,6 +2,6 @@
<Workspace
version = "1.0">
<FileRef
location = "self:desktop.xcodeproj">
location = "self:">
</FileRef>
</Workspace>

View File

@ -0,0 +1,78 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1220"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "55E037472577FA6B00979016"
BuildableName = "desktop.app"
BlueprintName = "desktop"
ReferencedContainer = "container:desktop.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
</Testables>
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "55E037472577FA6B00979016"
BuildableName = "desktop.app"
BlueprintName = "desktop"
ReferencedContainer = "container:desktop.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "55E037472577FA6B00979016"
BuildableName = "desktop.app"
BlueprintName = "desktop"
ReferencedContainer = "container:desktop.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,12 +1,18 @@
import Cocoa
@NSApplicationMain
@main
class AppDelegate: NSObject, NSApplicationDelegate {
func applicationDidFinishLaunching(_: Notification) {
func applicationDidFinishLaunching(_ notification: Notification) {
// Insert code here to initialize your application
}
func applicationWillTerminate(_: Notification) {
func applicationWillTerminate(_ notification: Notification) {
// Insert code here to tear down your application
}
func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool {
return true
}
}

View File

@ -0,0 +1,11 @@
{
"colors" : [
{
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

@ -1,54 +1,58 @@
{
"images" : [
{
"idiom" : "mac",
"size" : "16x16",
"idiom" : "mac",
"filename" : "icon16.png",
"scale" : "1x"
},
{
"idiom" : "mac",
"size" : "16x16",
"idiom" : "mac",
"filename" : "icon32.png",
"scale" : "2x"
},
{
"idiom" : "mac",
"size" : "32x32",
"idiom" : "mac",
"filename" : "icon32.png",
"scale" : "1x"
},
{
"idiom" : "mac",
"size" : "32x32",
"scale" : "2x"
"scale" : "2x",
"size" : "32x32"
},
{
"idiom" : "mac",
"size" : "128x128",
"idiom" : "mac",
"filename" : "icon128.png",
"scale" : "1x"
},
{
"idiom" : "mac",
"size" : "128x128",
"scale" : "2x"
"scale" : "2x",
"size" : "128x128"
},
{
"idiom" : "mac",
"size" : "256x256",
"scale" : "1x"
"scale" : "1x",
"size" : "256x256"
},
{
"idiom" : "mac",
"size" : "256x256",
"scale" : "2x"
"scale" : "2x",
"size" : "256x256"
},
{
"idiom" : "mac",
"size" : "512x512",
"scale" : "1x"
"scale" : "1x",
"size" : "512x512"
},
{
"idiom" : "mac",
"size" : "512x512",
"scale" : "2x"
"scale" : "2x",
"size" : "512x512"
}
],
"info" : {

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@ -1,6 +1,6 @@
{
"info" : {
"version" : 1,
"author" : "xcode"
"author" : "xcode",
"version" : 1
}
}
}

Some files were not shown because too many files have changed in this diff Show More