diff --git a/jslib b/jslib index 9aa3cbf73d9..f44e99d74dc 160000 --- a/jslib +++ b/jslib @@ -1 +1 @@ -Subproject commit 9aa3cbf73d9df9a2641654270911359593bcb5c5 +Subproject commit f44e99d74dc011c026525d171f7d2940b60b6587 diff --git a/scripts/snap-update.ps1 b/scripts/snap-update.ps1 index c312b3ccc6f..095c61a3935 100644 --- a/scripts/snap-update.ps1 +++ b/scripts/snap-update.ps1 @@ -25,4 +25,4 @@ $uri = "https://github.com/bitwarden/desktop/releases/download/v" + $version + " [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 Invoke-RestMethod -Uri $uri -OutFile $distSnap -snapcraft push $distSnap --release stable +snapcraft upload $distSnap --release stable diff --git a/src/app/app.module.ts b/src/app/app.module.ts index 149cd5934cd..17854135e98 100644 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -90,6 +90,7 @@ import localePtBr from '@angular/common/locales/pt'; import localePtPt from '@angular/common/locales/pt-PT'; import localeRo from '@angular/common/locales/ro'; import localeRu from '@angular/common/locales/ru'; +import localeSr from '@angular/common/locales/sr'; import localeSk from '@angular/common/locales/sk'; import localeSv from '@angular/common/locales/sv'; import localeTh from '@angular/common/locales/th'; @@ -127,6 +128,7 @@ registerLocaleData(localePtPt, 'pt-PT'); registerLocaleData(localeRo, 'ro'); registerLocaleData(localeRu, 'ru'); registerLocaleData(localeSk, 'sk'); +registerLocaleData(localeSr, 'sr'); registerLocaleData(localeSv, 'sv'); registerLocaleData(localeTh, 'th'); registerLocaleData(localeTr, 'tr'); diff --git a/src/app/services.module.ts b/src/app/services.module.ts index d966f3385b5..bf841c8c7c3 100644 --- a/src/app/services.module.ts +++ b/src/app/services.module.ts @@ -43,6 +43,7 @@ import { NotificationsService } from 'jslib/services/notifications.service'; import { PasswordGenerationService } from 'jslib/services/passwordGeneration.service'; import { PolicyService } from 'jslib/services/policy.service'; import { SearchService } from 'jslib/services/search.service'; +import { SendService } from 'jslib/services/send.service'; import { SettingsService } from 'jslib/services/settings.service'; import { StateService } from 'jslib/services/state.service'; import { SyncService } from 'jslib/services/sync.service'; @@ -75,6 +76,7 @@ import { import { PlatformUtilsService as PlatformUtilsServiceAbstraction } from 'jslib/abstractions/platformUtils.service'; import { PolicyService as PolicyServiceAbstraction } from 'jslib/abstractions/policy.service'; import { SearchService as SearchServiceAbstraction } from 'jslib/abstractions/search.service'; +import { SendService as SendServiceAbstraction } from 'jslib/abstractions/send.service'; import { SettingsService as SettingsServiceAbstraction } from 'jslib/abstractions/settings.service'; import { StateService as StateServiceAbstraction } from 'jslib/abstractions/state.service'; import { StorageService as StorageServiceAbstraction } from 'jslib/abstractions/storage.service'; @@ -109,13 +111,15 @@ const folderService = new FolderService(cryptoService, userService, apiService, i18nService, cipherService); const collectionService = new CollectionService(cryptoService, userService, storageService, i18nService); searchService = new SearchService(cipherService); +const sendService = new SendService(cryptoService, userService, apiService, storageService, + i18nService, cryptoFunctionService); const policyService = new PolicyService(userService, storageService); const vaultTimeoutService = new VaultTimeoutService(cipherService, folderService, collectionService, cryptoService, platformUtilsService, storageService, messagingService, searchService, userService, tokenService, null, async () => messagingService.send('logout', { expired: false })); const syncService = new SyncService(userService, apiService, settingsService, folderService, cipherService, cryptoService, collectionService, storageService, messagingService, policyService, - async (expired: boolean) => messagingService.send('logout', { expired: expired })); + sendService, async (expired: boolean) => messagingService.send('logout', { expired: expired })); const passwordGenerationService = new PasswordGenerationService(cryptoService, storageService, policyService); const totpService = new TotpService(storageService, cryptoFunctionService); const containerService = new ContainerService(cryptoService); @@ -212,6 +216,7 @@ export function initFactory(): Function { { provide: SystemServiceAbstraction, useValue: systemService }, { provide: EventServiceAbstraction, useValue: eventService }, { provide: PolicyServiceAbstraction, useValue: policyService }, + { provide: SendServiceAbstraction, useValue: sendService }, { provide: CryptoFunctionServiceAbstraction, useValue: cryptoFunctionService }, { provide: NativeMessagingService, useValue: nativeMessagingService }, { diff --git a/src/locales/en/messages.json b/src/locales/en/messages.json index f401a74cca0..ef069d03484 100644 --- a/src/locales/en/messages.json +++ b/src/locales/en/messages.json @@ -340,7 +340,7 @@ "message": "Delete Attachment" }, "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" diff --git a/src/package.json b/src/package.json index 7cb1060fdc7..303c07a55a5 100644 --- a/src/package.json +++ b/src/package.json @@ -2,7 +2,7 @@ "name": "bitwarden", "productName": "Bitwarden", "description": "A secure and free password manager for all of your devices.", - "version": "1.22.2", + "version": "1.23.0", "author": "Bitwarden Inc. (https://bitwarden.com)", "homepage": "https://bitwarden.com", "license": "GPL-3.0", diff --git a/src/services/i18n.service.ts b/src/services/i18n.service.ts index a09c8427ac0..f894557cbeb 100644 --- a/src/services/i18n.service.ts +++ b/src/services/i18n.service.ts @@ -14,8 +14,8 @@ export class I18nService extends BaseI18nService { this.supportedTranslationLocales = [ 'en', 'be', 'bg', 'ca', 'cs', 'da', 'de', 'el', 'en-GB', 'es', 'et', 'fa', 'fi', 'fr', 'hr', 'hu', 'id', - 'it', 'ja', 'ko', 'ml', 'nb', 'nl', 'pl', 'pt-BR', 'pt-PT', 'ro', 'ru', 'sk', 'sv', 'th', 'tr', 'uk', 'vi', - 'zh-CN', 'zh-TW', + 'it', 'ja', 'ko', 'ml', 'nb', 'nl', 'pl', 'pt-BR', 'pt-PT', 'ro', 'ru', 'sk', 'sr', 'sv', 'th', 'tr', 'uk', + 'vi', 'zh-CN', 'zh-TW', ]; } }