mirror of
https://github.com/bitwarden/browser.git
synced 2024-09-27 04:03:00 +02:00
Make nativeMessaging optional on all platforms except firefox (#1565)
Make nativeMessaging optional on all platforms except firefox
This commit is contained in:
parent
c6af9266b7
commit
54da244340
11
gulpfile.js
11
gulpfile.js
@ -75,6 +75,7 @@ function distOpera() {
|
|||||||
delete manifest.applications;
|
delete manifest.applications;
|
||||||
delete manifest.content_security_policy;
|
delete manifest.content_security_policy;
|
||||||
removeShortcuts(manifest);
|
removeShortcuts(manifest);
|
||||||
|
moveNativeMessagingToOptional(manifest);
|
||||||
return manifest;
|
return manifest;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -85,6 +86,7 @@ function distChrome() {
|
|||||||
delete manifest.content_security_policy;
|
delete manifest.content_security_policy;
|
||||||
delete manifest.sidebar_action;
|
delete manifest.sidebar_action;
|
||||||
delete manifest.commands._execute_sidebar_action;
|
delete manifest.commands._execute_sidebar_action;
|
||||||
|
moveNativeMessagingToOptional(manifest);
|
||||||
return manifest;
|
return manifest;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -95,6 +97,7 @@ function distEdge() {
|
|||||||
delete manifest.content_security_policy;
|
delete manifest.content_security_policy;
|
||||||
delete manifest.sidebar_action;
|
delete manifest.sidebar_action;
|
||||||
delete manifest.commands._execute_sidebar_action;
|
delete manifest.commands._execute_sidebar_action;
|
||||||
|
moveNativeMessagingToOptional(manifest);
|
||||||
return manifest;
|
return manifest;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -108,6 +111,14 @@ function removeShortcuts(manifest) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function moveNativeMessagingToOptional(manifest) {
|
||||||
|
const index = manifest.permissions.indexOf("nativeMessaging");
|
||||||
|
index > -1 ? manifest.permissions.splice(index, 1) : false
|
||||||
|
manifest.optional_permissions = [
|
||||||
|
"nativeMessaging"
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
function distSafariMas(cb) {
|
function distSafariMas(cb) {
|
||||||
return distSafariApp(cb, 'mas');
|
return distSafariApp(cb, 'mas');
|
||||||
}
|
}
|
||||||
|
@ -1438,6 +1438,12 @@
|
|||||||
"biometricsNotSupportedDesc": {
|
"biometricsNotSupportedDesc": {
|
||||||
"message": "Browser biometrics is not supported on this device."
|
"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": {
|
"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."
|
"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."
|
||||||
},
|
},
|
||||||
|
@ -23,6 +23,7 @@ import { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';
|
|||||||
import { StorageService } from 'jslib/abstractions/storage.service';
|
import { StorageService } from 'jslib/abstractions/storage.service';
|
||||||
import { UserService } from 'jslib/abstractions/user.service';
|
import { UserService } from 'jslib/abstractions/user.service';
|
||||||
import { VaultTimeoutService } from 'jslib/abstractions/vaultTimeout.service';
|
import { VaultTimeoutService } from 'jslib/abstractions/vaultTimeout.service';
|
||||||
|
import { resolve } from '@angular/compiler-cli/src/ngtsc/file_system';
|
||||||
|
|
||||||
const RateUrls = {
|
const RateUrls = {
|
||||||
[DeviceType.ChromeExtension]:
|
[DeviceType.ChromeExtension]:
|
||||||
@ -208,6 +209,24 @@ export class SettingsComponent implements OnInit {
|
|||||||
|
|
||||||
async updateBiometric() {
|
async updateBiometric() {
|
||||||
if (this.biometric) {
|
if (this.biometric) {
|
||||||
|
|
||||||
|
// Request permission to use the optional permission for nativeMessaging
|
||||||
|
if (!this.platformUtilsService.isFirefox()) {
|
||||||
|
const granted = await new Promise((resolve, reject) => {
|
||||||
|
chrome.permissions.request({permissions: ['nativeMessaging']}, function(granted) {
|
||||||
|
resolve(granted);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
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({
|
const submitted = Swal.fire({
|
||||||
heightAuto: false,
|
heightAuto: false,
|
||||||
buttonsStyling: false,
|
buttonsStyling: false,
|
||||||
|
Loading…
Reference in New Issue
Block a user