mirror of
https://gitlab.com/soapbox-pub/ditto.git
synced 2025-12-06 03:19:46 +00:00
Return streak data through the accounts API
This commit is contained in:
parent
b15838a08f
commit
430fd196d7
2 changed files with 13 additions and 0 deletions
|
|
@ -36,6 +36,10 @@ export interface MastodonAccount {
|
||||||
};
|
};
|
||||||
ditto: {
|
ditto: {
|
||||||
captcha_solved: boolean;
|
captcha_solved: boolean;
|
||||||
|
streak: {
|
||||||
|
days: number;
|
||||||
|
broken: number;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
statuses_count: number;
|
statuses_count: number;
|
||||||
|
|
|
||||||
|
|
@ -69,6 +69,11 @@ async function renderAccount(
|
||||||
verified_at: null,
|
verified_at: null,
|
||||||
})) ?? [];
|
})) ?? [];
|
||||||
|
|
||||||
|
const streakStart = parseInt(event.user?.tags.find(([name]) => name === 'ditto.streak.start')?.[1]!);
|
||||||
|
const streakEnd = parseInt(event.user?.tags.find(([name]) => name === 'ditto.streak.end')?.[1]!);
|
||||||
|
const streakDays = Math.ceil((streakEnd - streakStart) / 86400);
|
||||||
|
const streakBroken = Math.floor((nostrNow() - streakEnd) / 86400);
|
||||||
|
|
||||||
return {
|
return {
|
||||||
id: pubkey,
|
id: pubkey,
|
||||||
acct,
|
acct,
|
||||||
|
|
@ -103,6 +108,10 @@ async function renderAccount(
|
||||||
},
|
},
|
||||||
ditto: {
|
ditto: {
|
||||||
captcha_solved: names.has('captcha_solved'),
|
captcha_solved: names.has('captcha_solved'),
|
||||||
|
streak: {
|
||||||
|
days: streakDays || 0,
|
||||||
|
broken: streakBroken || 0,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue