Files
discord-decomp/sources/modules/user_profile/native/UserProfileActivityBadges.tsx
T
2026-07-27 16:20:00 +03:00

90 lines
5.6 KiB
TypeScript

/* Metro module 10221; source: modules/user_profile/native/UserProfileActivityBadges.tsx; dependencies: [31, 27, 661, 33, 4501, 10222, 6885, 8840, 8835, 8841, 8658, 10224, 10225, 697, 10226, 8375, 6699, 4573, 10236, 2] */
function _fun79510(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#79510, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10407:6, offset: 0x01e55dbb, size: 278 bytes, params: 8, frame: 20
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_3 = (require(27) /* metro dependency 27 */).View;
const env0_4 = (require(661) /* metro dependency 661: Constants */).ActivityTypes;
const value = require(33) /* metro dependency 33 */;
const env0_5 = value.jsx;
const env0_6 = value.jsxs;
const env0_7 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({container: {'display': 'flex',
'flexDirection': 'row', 'alignItems': 'center', 'gap': 4}, bold: {fontWeight: 'bold'}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileActivityBadges.tsx');
exports.TimestampBadge = TimestampBadge;
exports.PartyBadge = PartyBadge;
exports.EpisodeBadge = EpisodeBadge;
}
function TimestampBadge({activity}) { // fn#79511, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10407:403, offset: 0x01e55ed1, size: 574 bytes, params: 2, frame: 25
const styles = useStyles();
const useTimestampTickedNowModule = require(10224) /* metro dependency 10224: useTimestampTickedNow */;
const useTimestampTickedNow = useTimestampTickedNowModule.useTimestampTickedNow;
const now = Reflect.apply(useTimestampTickedNow, useTimestampTickedNowModule, []).now;
const r13 = activity.timestamps?.start ?? activity.created_at;
if (r13 == null) {
return null;
}
if ((importDefault(10225) /* metro dependency 10225: shouldShowActivityTimeBar */)(activity)) {
return null;
}
const end = activity.timestamps?.end;
const isCountDown = activity.timestamps?.isCountDown;
const r11 = isCountDown != null && isCountDown;
let r2 = r11 && end != null && end > now;
r2 = !(r2 === undefined) && r2;
const r7 = r2 ? (require(10222) /* metro dependency 10222: HourglassIcon */).HourglassIcon : (importDefault(6885) /* metro dependency 6885: isEmbeddedActivity */)(activity) ? (require(8840) /* metro dependency 8840: AppsIcon */).AppsIcon : activity.type === ActivityTypes.WATCHING ? (require(8835) /* metro dependency 8835: TvIcon */).TvIcon : activity.type === ActivityTypes.LISTENING ? (require(8841) /* metro dependency 8841: MusicIcon */).MusicIcon : (require(8658) /* metro dependency 8658: GameControllerIcon */).GameControllerIcon;
const TEXT_FEEDBACK_POSITIVE = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_FEEDBACK_POSITIVE;
const value7 = ((Component) => <Component size="xxs" color={TEXT_FEEDBACK_POSITIVE} />)(r7);
const ActiveTimestamp = (require(10226) /* metro dependency 10226: Badges */).ActiveTimestamp;
return (
<View style={styles.container}>
{value7}
<ActiveTimestamp entry={{start: r13, end: end, isCountDown: r11}} style={styles.bold} />
</View>
);
}
function PartyBadge({activity}) { // fn#79512, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10407:1088, offset: 0x01e5610f, size: 288 bytes, params: 2, frame: 22
var r0;
var value;
const styles = useStyles();
if ((importDefault(6885) /* metro dependency 6885: isEmbeddedActivity */)(activity)) {
return null;
}
if (activity.party == null) {
return null;
}
const richGameStateBadgeText = (require(8375) /* metro dependency 8375: utils */).getRichGameStateBadgeText(activity.state,
activity.party);
if (richGameStateBadgeText == null) {
r0 = null;
} else {
var viewBindingProps = {style: styles.container};
const GroupIcon = (require(6699) /* metro dependency 6699: GroupIcon */).GroupIcon;
value = <GroupIcon size="xxs" color={(importDefault(697) /* metro dependency 697: native */).colors.TEXT_MUTED} />;
value = <View {...viewBindingProps}>{value}{((Text) => <Text variant="text-sm/medium" color="text-muted">{richGameStateBadgeText}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}</View>;
r0 = value;
}
return r0;
}
function EpisodeBadge({activity}) { // fn#79513, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10407:1445, offset: 0x01e5622f, size: 249 bytes, params: 2, frame: 22
var r0;
var value;
const styles = useStyles();
const episodeBadgeText = (require(8375) /* metro dependency 8375: utils */).getEpisodeBadgeText(activity.assets?.large_text);
if (episodeBadgeText == null) {
r0 = null;
} else {
var viewBindingProps = {style: styles.container};
const TopicsIcon = (require(10236) /* metro dependency 10236: TopicsIcon */).TopicsIcon;
value = <TopicsIcon size="xxs" color={(importDefault(697) /* metro dependency 697: native */).colors.TEXT_MUTED} />;
value = <View {...viewBindingProps}>{value}{((Text) => <Text variant="text-sm/medium" color="text-muted">{episodeBadgeText}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}</View>;
r0 = value;
}
return r0;
}