permissions.contains()
Check whether the extension has the permissions listed in the given permissions.Permissions
object.
The Permissions
argument may contain either an origins property, which is an array of host permissions, or a permissions
property, which is an array of API permissions, or both.
This is an asynchronous function that returns a Promise
. The promise is fulfilled with true only if all the extension currently has all the given permissions. For host permissions, if the extension's permissions pattern-match the permissions listed in origins
, then they are considered to match.
Syntax
let getContains = browser.permissions.contains(
permissions // Permissions object
)
Parameters
permissions
-
A
permissions.Permissions
object.
Return value
A Promise
that will be fulfilled with true
if the extension already has all the permissions listed in the permissions
argument, or false
otherwise.
Browser compatibility
BCD tables only load in the browser
Examples
// Extension permissions are:
// "webRequest", "tabs", "*://*.mozilla.org/*"
let testPermissions1 = {
origins: ["*://mozilla.org/"],
permissions: ["tabs"],
};
const testResult1 = await browser.permissions.contains(testPermissions1);
console.log(testResult1); // true
let testPermissions2 = {
origins: ["*://mozilla.org/"],
permissions: ["tabs", "alarms"],
};
const testResult2 = await browser.permissions.contains(testPermissions2);
console.log(testResult2); // false, "alarms" doesn't match
let testPermissions3 = {
origins: ["https://developer.mozilla.org/"],
permissions: ["tabs", "webRequest"],
};
const testResult3 = await browser.permissions.contains(testPermissions3);
console.log(testResult3); // true: "https://developer.mozilla.org/", matches: "*://*.mozilla.org/*"
let testPermissions4 = {
origins: ["https://example.org/"],
};
const testResult4 = await browser.permissions.contains(testPermissions4);
console.log(testResult4); // false: "https://example.org/", `origins` doesn't match
Example extensions
Note:
This API is based on Chromium's chrome.permissions
API.