decord/source/modules/user_profile/native/UserProfileActivityBadges.tsx

125 lines
4.5 KiB
TypeScript
Raw Normal View History

// Module ID: 13098
// Function ID: 13099
// Name: UserProfileActivityBadges
// Dependencies: [19, 17, 1074, 21, 4606, 9120, 7811, 5157, 10972, 10002, 9313, 13099, 13100, 576, 13101, 8220, 5140, 4602, 11746, 2]
2026-07-20 16:05:17 +00:00
// Exports: EpisodeBadge, PartyBadge, TimestampBadge
// Module 13098 (UserProfileActivityBadges)
import nativeDefault from "native" /* 576 */;
import isEmbeddedActivityDefault from "isEmbeddedActivity" /* 7811 */;
import utils from "utils" /* 8220 */;
import shouldShowActivityTimeBarDefault from "shouldShowActivityTimeBar" /* 13100 */;
import noop from "module_19" /* 19 */;
2026-07-23 10:11:24 +00:00
require = fn;
const View = fn(17).View;
const ActivityTypes = fn(1074).ActivityTypes;
const jsxProd = fn(21);
({ jsx: hasOwnProperty, jsxs: metroRequire } = jsxProd);
const createStyles = fn(4606);
let closure_7 = createStyles.createStyles({ container: { display: "flex", flexDirection: "row", alignItems: "center", gap: 4 }, bold: { fontWeight: "bold" } });
const size = fn(2);
const result = size.fileFinishedImporting("modules/user_profile/native/UserProfileActivityBadges.tsx");
2026-07-20 16:05:17 +00:00
export const TimestampBadge = function TimestampBadge(activity) {
activity = activity.activity;
const tmp = closure_7();
2026-07-20 16:05:17 +00:00
const timestamps = activity.timestamps;
let start;
2026-07-29 08:29:29 +00:00
if (timestamps != null) {
2026-07-20 16:05:17 +00:00
start = timestamps.start;
}
2026-07-29 08:29:29 +00:00
if (start == null) {
2026-07-20 16:05:17 +00:00
start = activity.created_at;
}
if (null != start) {
2026-08-24 06:08:38 +00:00
if (!shouldShowActivityTimeBarDefault(activity)) {
2026-07-20 16:05:17 +00:00
const timestamps2 = activity.timestamps;
let end;
2026-07-29 08:29:29 +00:00
if (timestamps2 != null) {
2026-07-20 16:05:17 +00:00
end = timestamps2.end;
}
const timestamps3 = activity.timestamps;
2026-07-29 08:29:29 +00:00
let flag;
if (timestamps3 != null) {
flag = timestamps3.isCountDown;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
if (flag == null) {
flag = false;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
let flag2 = flag;
2026-07-20 16:05:17 +00:00
if (flag) {
2026-07-29 08:29:29 +00:00
flag2 = null != end;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
if (flag2) {
flag2 = end > obj.useTimestampTickedNow().now;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
if (flag2 === undefined) {
flag2 = false;
}
if (flag2) {
let GameControllerIcon = tmp2(9120).HourglassIcon;
} else if (tmp10(7811)(activity)) {
GameControllerIcon = tmp2(5157).AppsIcon;
2026-07-20 16:05:17 +00:00
} else if (activity.type === ActivityTypes.WATCHING) {
GameControllerIcon = tmp2(10972).TvIcon;
2026-07-29 08:29:29 +00:00
} else if (activity.type === tmp6.LISTENING) {
GameControllerIcon = tmp2(10002).MusicIcon;
2026-07-20 16:05:17 +00:00
} else {
GameControllerIcon = tmp2(9313).GameControllerIcon;
2026-07-20 16:05:17 +00:00
}
const obj2 = { style: tmp.container, children: null };
const obj3 = { size: "xxs", color: tmp10(576).colors.TEXT_FEEDBACK_POSITIVE };
const items = [hasOwnProperty(GameControllerIcon, obj3), ];
const obj4 = { entry: null, style: null };
const obj5 = { start, end, isCountDown: flag };
obj4.entry = obj5;
obj4.style = tmp.bold;
items[1] = hasOwnProperty(tmp2(13101).ActiveTimestamp, obj4);
obj2.children = items;
return timestampProducer(View, obj2);
2026-07-20 16:05:17 +00:00
}
}
return null;
};
export const PartyBadge = function PartyBadge(activity) {
activity = activity.activity;
2026-08-24 06:08:38 +00:00
if (!isEmbeddedActivityDefault(activity)) {
2026-07-20 16:05:17 +00:00
if (null != activity.party) {
const richGameStateBadgeText = utils.getRichGameStateBadgeText(activity.state, activity.party);
2026-07-29 08:29:29 +00:00
let tmp8 = null;
2026-07-20 16:05:17 +00:00
if (null != richGameStateBadgeText) {
const obj = { style: tmp.container, children: null };
const obj2 = { size: "xxs", color: nativeDefault.colors.TEXT_MUTED };
const items = [hasOwnProperty(tmp9(5140).GroupIcon, obj2), ];
const obj3 = { variant: "text-sm/medium", color: "text-muted", children: richGameStateBadgeText };
items[1] = hasOwnProperty(tmp9(4602).Text, obj3);
obj.children = items;
tmp8 = timestampProducer(View, obj);
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
return tmp8;
2026-07-20 16:05:17 +00:00
}
}
return null;
};
export const EpisodeBadge = function EpisodeBadge(activity) {
const tmp = closure_7();
2026-07-20 16:05:17 +00:00
const assets = activity.activity.assets;
let large_text;
2026-07-29 08:29:29 +00:00
if (assets != null) {
2026-07-20 16:05:17 +00:00
large_text = assets.large_text;
}
const episodeBadgeText = utils.getEpisodeBadgeText(large_text);
2026-07-29 08:29:29 +00:00
let tmp6 = null;
2026-07-20 16:05:17 +00:00
if (null != episodeBadgeText) {
const obj2 = { style: tmp.container, children: null };
const obj3 = { size: "xxs", color: nativeDefault.colors.TEXT_MUTED };
const items = [hasOwnProperty(tmp2(11746).TopicsIcon, obj3), ];
const obj4 = { variant: "text-sm/medium", color: "text-muted", children: episodeBadgeText };
items[1] = hasOwnProperty(tmp2(4602).Text, obj4);
obj2.children = items;
tmp6 = timestampProducer(View, obj2);
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
return tmp6;
2026-07-20 16:05:17 +00:00
};