constructor()

in src/amo/components/PermissionsCard/permissions.js [20:62]


  constructor(i18n: I18nType) {
    this.i18n = i18n;
    // These should be kept in sync with Firefox's strings for webextension
    // permissions which can be found in:
    // https://searchfox.org/mozilla-central/rev/b0b003e992b199fd8e13999bd5d06d06c84a3fd2/toolkit/components/extensions/ExtensionPermissionMessages.sys.mjs#32
    // https://searchfox.org/mozilla-central/rev/b0b003e992b199fd8e13999bd5d06d06c84a3fd2/toolkit/locales/en-US/toolkit/global/extensionPermissions.ftl
    this.permissionStrings = {
      bookmarks: i18n.gettext('Read and modify bookmarks'),
      browserSettings: i18n.gettext('Read and modify browser settings'),
      browsingData: i18n.gettext(
        'Clear recent browsing history, cookies, and related data',
      ),
      clipboardRead: i18n.gettext('Get data from the clipboard'),
      clipboardWrite: i18n.gettext('Input data to the clipboard'),
      declarativeNetRequest: i18n.gettext('Block content on any page'),
      declarativeNetRequestFeedback: i18n.gettext('Read your browsing history'),
      devtools: i18n.gettext(
        'Extend developer tools to access your data in open tabs',
      ),
      downloads: i18n.gettext(
        'Download files and read and modify the browser’s download history',
      ),
      'downloads.open': i18n.gettext('Open files downloaded to your computer'),
      find: i18n.gettext('Read the text of all open tabs'),
      geolocation: i18n.gettext('Access your location'),
      history: i18n.gettext('Access browsing history'),
      management: i18n.gettext('Monitor extension usage and manage themes'),
      // In Firefox the following message replaces the name "Firefox" with the
      // current brand name, e.g., "Nightly", but we do not need to do that.
      nativeMessaging: i18n.gettext(
        'Exchange messages with programs other than Firefox',
      ),
      notifications: i18n.gettext('Display notifications to you'),
      pkcs11: i18n.gettext('Provide cryptographic authentication services'),
      proxy: i18n.gettext('Control browser proxy settings'),
      privacy: i18n.gettext('Read and modify privacy settings'),
      sessions: i18n.gettext('Access recently closed tabs'),
      tabs: i18n.gettext('Access browser tabs'),
      tabHide: i18n.gettext('Hide and show browser tabs'),
      topSites: i18n.gettext('Access browsing history'),
      webNavigation: i18n.gettext('Access browser activity during navigation'),
    };
  }