decord/stable/source/modules/stickers/native/StickersUtils.tsx
github-actions 57c2214117 chore: update source for stable 347.12
Skipped 1 file(s) >100MB (GitHub limit): source/__polyfill/04xxx/module_4973.js (118.4 MB)
2026-09-29 21:26:22 +00:00

119 lines
4.8 KiB
TypeScript

// Module ID: 10684
// Function ID: 10685
// Name: stickers/StickersUtils
// Dependencies: [19, 17, 2063, 1372, 10685, 1074, 1218, 5517, 7611, 10682, 504, 9467, 10686, 10687, 1610, 2]
// Exports: dropPreloadedSticker, openStickerPickerToPackId, preloadSticker, useStickerCategories
// Module 10684 (stickers/StickersUtils)
import KeyboardTypes from "KeyboardTypes" /* 1610 */;
import noop from "module_19" /* 19 */;
import GuildStore from "GuildStore" /* 2063 */;
import UserStore from "UserStore" /* 1372 */;
const require = globalThis.__r;
require = fn;
const NativeModules = fn(17).NativeModules;
const useStickerPickerStore = fn(10685).useStickerPickerStore;
const GuildNSFWContentLevel = fn(1074).GuildNSFWContentLevel;
const ExpressionPickerViewType = fn(1218).ExpressionPickerViewType;
const size = fn(2);
const result = size.fileFinishedImporting("modules/stickers/native/StickersUtils.tsx");
export const useStickerCategories = function useStickerCategories(channel) {
_require = channel;
const stickerPackCategories = require("StickersHooks").useStickerPackCategories(channel);
let obj = require("StickersHooks");
const items = [UserStore];
stateFromStores = require("initialize").useStateFromStores(items, () => currentUser.getCurrentUser());
const guilds = GuildStore.getGuilds();
let obj2 = require("initialize");
const mobileStickerPickerUpsellRestyleEnabled = require("MobileStickerPickerUpsellRestyleExperiment").useMobileStickerPickerUpsellRestyleEnabled("native.StickerPicker");
const items1 = [channel, guilds, stickerPackCategories, mobileStickerPickerUpsellRestyleEnabled, stateFromStores];
return guilds.useMemo(() => {
const found = stickerPackCategories.filter((stickers) => stickers.stickers.length > 0);
const found1 = found.filter((type) => {
let tmp2 = type.type !== closure_0(stateFromStores[7]).StickerCategoryTypes.GUILD;
if (!tmp2) {
nsfwAllowed = undefined;
if (nsfwAllowed != null) {
nsfwAllowed = nsfwAllowed.nsfwAllowed;
}
tmp2 = nsfwAllowed;
}
if (!tmp2) {
tmp2 = null == tmp;
}
if (!tmp2) {
tmp2 = tmp.nsfwLevel !== constants.AGE_RESTRICTED && tmp.nsfwLevel !== tmp6.EXPLICIT;
const tmp7 = tmp.nsfwLevel !== constants.AGE_RESTRICTED && tmp.nsfwLevel !== tmp6.EXPLICIT;
}
return tmp2;
});
return found1.map((type) => {
let tmp = mobileStickerPickerUpsellRestyleEnabled;
if (mobileStickerPickerUpsellRestyleEnabled) {
closure_0 = nsfwAllowed;
closure_1 = channel;
let everyResult = type.type === closure_0(stateFromStores[7]).StickerCategoryTypes.GUILD;
if (everyResult) {
everyResult = 0 !== type.stickers.length;
}
if (everyResult) {
const stickers = type.stickers;
everyResult = stickers.every((item) => {
const stickerSendability = channel(nsfwAllowed[8]).getStickerSendability(item, closure_0, closure_1);
return stickerSendability === channel(nsfwAllowed[8]).StickerSendability.SENDABLE_WITH_PREMIUM;
});
}
tmp = everyResult;
}
if (type.type !== closure_0(stateFromStores[7]).StickerCategoryTypes.FAVORITE) {
if (type.type !== closure_0(stateFromStores[7]).StickerCategoryTypes.RECENT) {
let tmp9 = type;
if (tmp) {
const obj = {};
const merged = Object.assign(type);
obj.isNitroLocked = tmp;
tmp9 = obj;
}
return tmp9;
}
}
if (type.type === closure_0(stateFromStores[7]).StickerCategoryTypes.FAVORITE) {
let tmp15 = stickerPackCategories(stateFromStores[12]);
} else {
tmp15 = stickerPackCategories(stateFromStores[13]);
}
const obj2 = {};
const merged1 = Object.assign(type);
obj2.icon = tmp15;
if (tmp) {
obj2.isNitroLocked = tmp;
let tmp19 = obj2;
} else {
tmp19 = obj2;
}
return tmp19;
});
}, items1);
};
export const preloadSticker = function preloadSticker(hash) {
const NativeLottieUtils = NativeModules.NativeLottieUtils;
NativeLottieUtils.preload(hash.hash, hash.url, hash.width, hash.height, hash.frames, hash.callback);
};
export const dropPreloadedSticker = function dropPreloadedSticker(arg0) {
const NativeLottieUtils = NativeModules.NativeLottieUtils;
NativeLottieUtils.dropPreload(arg0);
};
export const openStickerPickerToPackId = function openStickerPickerToPackId(arg0, dependencyMap) {
const state = useStickerPickerStore.getState();
state.setPackToScrollTo(dependencyMap);
const timerId = setTimeout(() => {
const current = ref.current;
if (current != null) {
const obj = { type: KeyboardTypes.KeyboardTypes.EXPRESSION, context: ExpressionPickerViewType.STICKER };
current.openCustomKeyboard(obj);
}
}, 1);
};