Fix incompatibility with ZeroTier 1.12

This commit is contained in:
Niels Martignène 2023-08-27 18:40:21 +02:00
parent 42248c1359
commit 7b3a21a15c

View file

@ -17,15 +17,26 @@ async function get_network_with_members(nwid) {
zt.network_detail(nwid), zt.network_detail(nwid),
zt.peers(), zt.peers(),
zt.members(nwid) zt.members(nwid)
.then(member_ids => .then(member_ids => {
Promise.all( // Fix weird data returned by ZeroTier 1.12
if (Array.isArray(member_ids)) {
let obj = {};
for (let id of member_ids) {
let key = Object.keys(id)[0];
let value = Object.values(id)[0];
obj[key] = value;
}
member_ids = obj;
}
return Promise.all(
Object.keys(member_ids) Object.keys(member_ids)
.map(id => Promise.all([ .map(id => Promise.all([
zt.member_detail(nwid, id), zt.member_detail(nwid, id),
storage.getItem(id) storage.getItem(id)
])) ]))
) );
).then(results => results.map(([member, name]) => { }).then(results => results.map(([member, name]) => {
member.name = name || ''; member.name = name || '';
return member; return member;
})) }))