Good day, I am working on a mozilla thunderbird addon and would like to make use of the components class. I know the current version of thunderbird is now 78+ so instead of XUL, I should be using HTML then from there make use of javascripts along with web extension APIs. I know i need to usensIMsgAccountManager to get the emails but I can`t make it work in javascript. I always get the error TypeError : Components.classes is undefined can someone help me? my javascript is below.
function populateAccounts() {
var emails;
try {
var acctMgr = Components.classes["@mozilla.org/messenger/account-manager;1"].getService(Components.interfaces.nsIMsgAccountManager);
var accounts = acctMgr.accounts;
if (accounts.queryElementAt) {
// Gecko 17+
for (var i = 0; i < accounts.length; i++) {
var account = accounts.queryElementAt(i, Components.interfaces.nsIMsgAccount);
emails += account.key;
}
} else {
// Gecko < 17
for (var i = 0; i < accounts.Count(); i++) {
var account = accounts.QueryElementAt(i, Components.interfaces.nsIMsgAccount);
emails += account.key;
}
}
} catch (e) {
console.log(e);
emails = e;
}
return emails;
}