mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-12-12 12:47:14 +01:00
76a2a9bb8b
* @metamask/eslint-config@5.0.0 * Update eslintrc and prettierrc * yarn lint:fix
41 lines
1.3 KiB
JavaScript
41 lines
1.3 KiB
JavaScript
export default function getRestrictedMethods({
|
|
getIdentities,
|
|
getKeyringAccounts,
|
|
}) {
|
|
return {
|
|
eth_accounts: {
|
|
method: async (_, res, __, end) => {
|
|
try {
|
|
const accounts = await getKeyringAccounts();
|
|
const identities = getIdentities();
|
|
res.result = accounts.sort((firstAddress, secondAddress) => {
|
|
if (!identities[firstAddress]) {
|
|
throw new Error(`Missing identity for address ${firstAddress}`);
|
|
} else if (!identities[secondAddress]) {
|
|
throw new Error(`Missing identity for address ${secondAddress}`);
|
|
} else if (
|
|
identities[firstAddress].lastSelected ===
|
|
identities[secondAddress].lastSelected
|
|
) {
|
|
return 0;
|
|
} else if (identities[firstAddress].lastSelected === undefined) {
|
|
return 1;
|
|
} else if (identities[secondAddress].lastSelected === undefined) {
|
|
return -1;
|
|
}
|
|
|
|
return (
|
|
identities[secondAddress].lastSelected -
|
|
identities[firstAddress].lastSelected
|
|
);
|
|
});
|
|
end();
|
|
} catch (err) {
|
|
res.error = err;
|
|
end(err);
|
|
}
|
|
},
|
|
},
|
|
};
|
|
}
|