/* Metro module 11248; source: modules/favorites/FavoritesHooks.tsx; dependencies: [3969, 1878, 1382, 11249, 1880, 11250, 566, 1900, 21, 1314, 6892, 2] */ import SnowflakeUtils from '../../utils/SnowflakeUtils.tsx'; /* Metro dependency 21 */ import FavoriteStore from './FavoriteStore.tsx'; /* Metro dependency 1382 */ import UserStore from '../../stores/UserStore.tsx'; /* Metro dependency 1878 */ import PremiumTypeUtils from '../../utils/PremiumTypeUtils.tsx'; /* Metro dependency 1900 */ import SelectedGuildStore from '../../stores/SelectedGuildStore.tsx'; /* Metro dependency 3969 */ import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */ import * as FluxModule from '../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */ import * as PremiumConstantsModule from '../premium/PremiumConstants.tsx'; /* Metro dependency 1880 */ import * as FavoritesNotificationStoreModule from './FavoritesNotificationStore.tsx'; /* Metro dependency 11249 */ import * as FavoritesGuildExperimentModule from './FavoritesGuildExperiment.tsx'; /* Metro dependency 11250 */ function _fun85972(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#85972, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:6, offset: 0x01f8308b, size: 326 bytes, params: 8, frame: 23 let env0_0 = require; const useFavoritesAccess2 = useFavoritesAccess; const closure2 = function() { return require(dependencyMap[6]).useStateFromStoresObject([FavoriteStore], _fun85976); }; const getFavoritesCategories2 = getFavoritesCategories; const useIsFavoritesGuildSelected2 = useIsFavoritesGuildSelected; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); (FileImportTrackerModule).fileFinishedImporting('modules/favorites/FavoritesHooks.tsx'); exports.useFavoritesAccess = useFavoritesAccess2; exports.useFavorites = closure2; exports.useFavorite = function(a0) { var env0_0 = a0; return require(dependencyMap[6]).useStateFromStores([FavoriteStore], _fun85982); }; exports.useFavoritedChannelIds = useFavoritedChannelIds; exports.getFavoritesCategories = getFavoritesCategories2; exports.useFavoritesCategories = function() { return require(dependencyMap[6]).useStateFromStores([FavoriteStore], _fun85985); }; exports.useIsFavoritesGuildSelected = useIsFavoritesGuildSelected2; exports.useFavoritesAwareChannel = useFavoritesAwareChannel; exports.useFavoriteAdded = function() { var object = {}; object.favoriteAdded = useFavoritesNotificationStore(_fun85989); object.notifyFavoriteAdded = useFavoritesNotificationStore(_fun85990); object.clearFavoriteAdded = useFavoritesNotificationStore(_fun85991); return object; }; function useFavoritesAccess(a0) { // fn#85973, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:190, offset: 0x01f831d1, size: 168 bytes, params: 2, frame: 18 const {enabled, hasHigherPrivileges} = (FavoritesGuildExperimentModule).useFavoritesGuildConfig({location: a0}); const currentUser = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore], function() { return UserStore.getCurrentUser(); }); const defaultImport = PremiumTypeUtils; const isPremiumExactly = defaultImport.isPremiumExactly; const TIER_2 = PremiumTypes.TIER_2; return {hasAccess: enabled && Reflect.apply(isPremiumExactly, defaultImport, [currentUser, TIER_2]), isExperimentEnabled: enabled, hasHigherPrivileges: hasHigherPrivileges}; } function useFavorites() { // fn#85975, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:474, offset: 0x01f83279, size: 60 bytes, params: 1, frame: 13 return (require(566) /* metro dependency 566: flux */).useStateFromStoresObject([FavoriteStore], function() { return FavoriteStore.getFavoriteChannels(); }); function _fun85976() { // fn#85976, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:543, offset: 0x01f832b5, size: 19 bytes, params: 1, frame: 9 return FavoriteStore.getFavoriteChannels(); } } function getFavoritesCategories() { // fn#85977, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:573, offset: 0x01f832c8, size: 199 bytes, params: 1, frame: 26 var r7; var r16; var propertyName; var propertyName2; var property; var type; var FavoriteChannelType; var CATEGORY; var push; var id; var nickname; let value = a0; const r13 = value !== undefined ? value : FavoriteStore.getFavoriteChannels(); value = ''; const items2 = [{'id': null, 'name': ''}]; for (propertyName in r13) { property = r13[propertyName]; type = property.type; FavoriteChannelType = (require(1314) /* metro dependency 1314: preloaded_user_settings */).FavoriteChannelType; CATEGORY = FavoriteChannelType.CATEGORY; if (type !== CATEGORY) { r7 = propertyName2; continue; } push = items2.push; id = property.id; nickname = property.nickname; if (nickname != null) { r16 = nickname; continue; } r16 = value; continue; Reflect.apply(push, items2, [{id: id, name: r16}]); r7 = propertyName2; } items2.sort(_fun85978); return items2; function _fun85978({id}, {id}) { // fn#85978, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:800, offset: 0x01f8338f, size: 97 bytes, params: 3, frame: 7 return (env0_0[id]?.order ?? 0) - (env0_0[id]?.order ?? 0); } } function useIsFavoritesGuildSelected() { // fn#85979, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:929, offset: 0x01f833f0, size: 82 bytes, params: 1, frame: 16 const useStateFromStores = FluxModule.useStateFromStores; return (require(6892) /* metro dependency 6892: FavoritesUtils */).isFavoritesGuildId(Reflect.apply(useStateFromStores, FluxModule, [[SelectedGuildStore], function() { return SelectedGuildStore.getGuildId(); }])); } function useFavorite(a0) { // fn#85981, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:1218, offset: 0x01f83455, size: 66 bytes, params: 2, frame: 14 const env0_0 = a0; return (FluxModule).useStateFromStores([FavoriteStore], _fun85982); function _fun85982() { // fn#85982, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:1281, offset: 0x01f83497, size: 27 bytes, params: 1, frame: 11 return FavoriteStore.getFavorite(env0_0); } } function useFavoritedChannelIds() { // fn#85983, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:1330, offset: 0x01f834b2, size: 45 bytes, params: 1, frame: 13 return (SnowflakeUtils).keys(useFavorites()); } function useFavoritesCategories() { // fn#85984, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:1482, offset: 0x01f834df, size: 59 bytes, params: 1, frame: 13 return (FluxModule).useStateFromStores([FavoriteStore], _fun85985); function _fun85985() { // fn#85985, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:1555, offset: 0x01f8351a, size: 30 bytes, params: 1, frame: 11 const value = environment.__proto__; return getFavoritesCategories(FavoriteStore.getFavoriteChannels()); } } function useFavoritesAwareChannel(a0, a1) { // fn#85986, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:1695, offset: 0x01f83538, size: 150 bytes, params: 3, frame: 19 const value = a0; const value3 = useIsFavoritesGuildSelected(); const hasAccess = useFavoritesAccess(a1).hasAccess; const useStateFromStores = FluxModule.useStateFromStores; return value3 ? hasAccess && Reflect.apply(useStateFromStores, FluxModule, [[FavoriteStore], _fun85987, [value]]) ? value == null ? value ?? null : value.isCategory() ? null : value ?? null : null : value ?? null; function _fun85987() { // fn#85987, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:1838, offset: 0x01f835ce, size: 96 bytes, params: 1, frame: 14 return env0_0 != null && (FavoriteStore.isFavorite(env0_0.id) || env0_0.isThread() && FavoriteStore.isFavorite(env0_0.parent_id)); } } function useFavoriteAdded() { // fn#85988, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:2003, offset: 0x01f8362e, size: 66 bytes, params: 1, frame: 13 const object = {}; object.favoriteAdded = useFavoritesNotificationStore(function(a0) { return a0.favoriteAdded; }); object.notifyFavoriteAdded = useFavoritesNotificationStore(function(a0) { return a0.notifyFavoriteAdded; }); object.clearFavoriteAdded = useFavoritesNotificationStore(function(a0) { return a0.clearFavoriteAdded; }); return object; } } function _fun85989(a0) { // fn#85989, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:2055, offset: 0x01f83670, size: 11 bytes, params: 2, frame: 1 return a0.favoriteAdded; } function _fun85990(a0) { // fn#85990, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:2099, offset: 0x01f8367b, size: 11 bytes, params: 2, frame: 1 return a0.notifyFavoriteAdded; } function _fun85991(a0) { // fn#85991, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11434:2148, offset: 0x01f83686, size: 11 bytes, params: 2, frame: 1 return a0.clearFavoriteAdded; } global.__d(_fun85972, 11248, [3969, 1878, 1382, 11249, 1880, 11250, 566, 1900, 21, 1314, 6892, 2]) /* metro module 11248, dependencies: [3969, 1878, 1382, 11249, 1880, 11250, 566, 1900, 21, 1314, 6892, 2] */;