49 lines
3.0 KiB
TypeScript
49 lines
3.0 KiB
TypeScript
// Metro module 8172 (f8173).
|
|
import { ActivityTypes } from "../../Constants";
|
|
import { CRUNCHYROLL_CLIENT_ID } from "../connections/CrunchyrollConnectionConstants";
|
|
import { isSpotifyParty } from "../spotify/SpotifyConstants";
|
|
import { isListenedSessionEntry, isTopArtistEntry, isWatchedMediaEntry, isGamingLikeEntry } from "./ContentInventoryTypes";
|
|
import { ContentInventoryListenedMediaProvider } from "../../_bundle/Module8178";
|
|
import isCrunchyrollActivity from "../activities/utils/isCrunchyrollActivity";
|
|
import { isEntryActive } from "./utils";
|
|
const isMatchingListeningActivity = function isMatchingListeningActivity(a0, a1) {
|
|
let r16;
|
|
if (isListenedSessionEntry(a0)) {
|
|
const r26 = a0.extra.entries[0];
|
|
r16 = (r26 == null ? void 0 : r26.media?.provider) === ContentInventoryListenedMediaProvider.SPOTIFY;
|
|
} else {
|
|
r16 = !!isTopArtistEntry(a0) && a0.extra.media.provider === ContentInventoryListenedMediaProvider.SPOTIFY;
|
|
}
|
|
return !!r16 && isSpotifyParty(a1.party?.id);
|
|
};
|
|
export function isSpotifyEntry(a0) {
|
|
let r16;
|
|
if (isListenedSessionEntry(a0)) {
|
|
const r26 = a0.extra.entries[0];
|
|
r16 = (r26 == null ? void 0 : r26.media?.provider) === ContentInventoryListenedMediaProvider.SPOTIFY;
|
|
} else {
|
|
r16 = !!isTopArtistEntry(a0) && a0.extra.media.provider === ContentInventoryListenedMediaProvider.SPOTIFY;
|
|
}
|
|
return r16;
|
|
}
|
|
export function isCrunchyrollEntry(a0) {
|
|
return !!isWatchedMediaEntry(a0) && a0.extra.application_id === CRUNCHYROLL_CLIENT_ID;
|
|
}
|
|
export function isMatchingApplicationActivity({ extra }, a1) {
|
|
return extra != null && ("application_id" in a1 && a1.application_id === extra.application_id || ("game_name" in extra ? a1.name === extra.game_name : "activity_name" in extra && a1.name === extra.activity_name));
|
|
}
|
|
export { isMatchingListeningActivity };
|
|
export function isMatchingWatchActivity(a0, a1) {
|
|
const isCrunchyrollActivity2 = isCrunchyrollActivity(a1);
|
|
const r1 = isCrunchyrollActivity2 ? !(!!isWatchedMediaEntry(a0) && a0.extra.application_id === CRUNCHYROLL_CLIENT_ID) : !isCrunchyrollActivity2;
|
|
return r1 ? !r1 : a0.extra.media_title === a1.details;
|
|
}
|
|
export function findMatchingEntry(a0, a1) {
|
|
const r12 = a0.filter(isEntryActive);
|
|
return a1.type === ActivityTypes.PLAYING ? r12.filter(isGamingLikeEntry).find(({ extra }) => extra != null && ("application_id" in a1 && a1.application_id === extra.application_id || ("game_name" in extra ? a1.name === extra.game_name : "activity_name" in extra && a1.name === extra.activity_name))) : a1.type === ActivityTypes.LISTENING ? r12.filter(isListenedSessionEntry).find((item) => isMatchingListeningActivity(item, a1)) : a1.type === ActivityTypes.WATCHING ? a0.filter(isWatchedMediaEntry).find((item) => {
|
|
const isCrunchyrollActivity2 = isCrunchyrollActivity(a1);
|
|
const r1 = isCrunchyrollActivity2 ? !(!!isWatchedMediaEntry(item) && item.extra.application_id === CRUNCHYROLL_CLIENT_ID) : !isCrunchyrollActivity2;
|
|
return r1 ? !r1 : item.extra.media_title === a1.details;
|
|
}) : void 0;
|
|
}
|