This commit is contained in:
NightFeather
2023-11-30 23:57:40 +08:00
parent 54b80f3d8f
commit bfe9d17abd

View File

@@ -16,6 +16,7 @@ type Parameters = {
hideBadges?: string;
hideProfile?: string;
hideActivity?: string;
ignoreAppId?: string;
showDisplayName?: string;
borderRadius?: string;
idleMessage?: string;
@@ -23,6 +24,11 @@ type Parameters = {
const parseBool = (string: string | undefined): boolean => string === "true" ? true : false;
const parseAppId = (string: string | undefined): Array<string> => {
if (string === undefined) return [];
return string.split(",");
}
const elapsedTime = (timestamp: any) => {
let startTime = timestamp;
let endTime = Number(new Date());
@@ -63,6 +69,7 @@ const renderCard = async (body: LanyardTypes.Root, params: Parameters): Promise<
let hideBadges = parseBool(params.hideBadges);
let hideProfile = parseBool(params.hideProfile);
let hideActivity = params.hideActivity ?? "false";
let ignoreAppId = parseAppId(params.ignoreAppId);
let hideDiscrim = parseBool(params.hideDiscrim);
let showDisplayName = parseBool(params.showDisplayName);
@@ -115,8 +122,11 @@ const renderCard = async (body: LanyardTypes.Root, params: Parameters): Promise<
let userStatus: Record<string, any> | null = null;
if (data.activities[0] && data.activities[0].type === 4) userStatus = data.activities[0];
// Filter only type 0
const activities = data.activities.filter(activity => activity.type === 0);
const activities = data.activities
// Filter only type 0
.filter(activity => activity.type === 0)
// Filter ignored app ID
.filter(activity => !ignoreAppId.includes(activity.application_id ?? ""));
// Take the highest one
activity = Array.isArray(activities) ? activities[0] : activities;