// Metro module 9652 (f9653). import { useMemo } from "react"; import { useStickerPickerStore } from "./StickerPickerStore"; import { LABEL_HEIGHT, MIN_MARGIN, STICKER_SIZE, ROW_HEIGHT } from "./StickerPickerConstants"; import { PADDING_VERTICAL } from "../../expression_picker/ExpressionPickerConstants"; import { useStickerCategories } from "./StickersUtils"; import Module12 from "../../../_bundle/Module12"; import { intl, t } from "../../../intl/index.native"; import { StickerCategoryTypes } from "../StickersTypes"; import { shouldNSFWGateGuild } from "../../age_gate/native/AgeGateUtils"; function $mk115521($env) { return (a0) => $env[2].includes(a0.format_type); } let env6382 = {}; const c6382_8 = { STICKERS: 0, 0: "STICKERS", NSFW: 1, 1: "NSFW" }; const c6382_9 = LABEL_HEIGHT + 2 * PADDING_VERTICAL; export default function useStickerPickerListData(a0) { let env17374 = { $parent: env6382 }; const { channel, containerWidth } = a0; env17374[0] = containerWidth; const searchResults = a0.searchResults; env17374[1] = searchResults; const stickerFormats = a0.stickerFormats; env17374[2] = stickerFormats; env17374[3] = void 0; env17374[4] = void 0; const stickerCategories = useStickerCategories(channel); env17374[3] = stickerCategories; const r16 = (0, useStickerPickerStore)((a0) => a0.packToScrollTo); env17374[4] = r16; return useMemo(() => { let packToScrollToIndex; const r12 = env17374; const rowSize = Math.floor((env17374[0] - MIN_MARGIN) / (STICKER_SIZE + MIN_MARGIN)); let c26501_0 = rowSize; const sections = []; let c26501_1 = sections; const sectionHeights = []; const sectionLabels = []; let c26501_2 = sectionLabels; const rowsBySection = []; let c26501_3 = rowsBySection; packToScrollToIndex = void 0; const r14 = env17374[1]; if (r14 != null) { let r48 = intl.string(t["zkoeq/"]); if (r48 === void 0) { r48 = ""; } const stickersByRow = Module12.chunk(r14.filter($mk115521(r12)), rowSize); rowsBySection.push({ type: c6382_8.STICKERS, stickersByRow }); sections.push(stickersByRow.length); sectionLabels.push(r48); } else { let c26502_0; env17374[3].map((item, index) => { const r6 = env17374; if (env17374[4] === item.id) { packToScrollToIndex = index; } const r18 = item.type === StickerCategoryTypes.GUILD && shouldNSFWGateGuild(item.id); const { stickers, name = "" } = item; if (r18 === true) { c26501_3.push({ type: c6382_8.NSFW, stickersByRow: [] }); c26501_1.push(1); } else { const stickersByRow = Module12.chunk(stickers.filter($mk115521(r6)), c26501_0); c26501_3.push({ type: c6382_8.STICKERS, stickersByRow }); c26501_1.push(stickersByRow.length); } c26501_2.push(name); }); const push = sectionHeights.push; c26502_0 = 0; push.apply(sectionHeights, [...sections.map((section, index) => { if (index === 0 && section === 0) { return 0; } const r12 = section * ROW_HEIGHT + c6382_9 + 12 + c26502_0; c26502_0 = r12; return r12; })]); } return { sections, sectionHeights, sectionSize: c6382_9, sectionFooterSize: 12, sectionLabels, rowHeight: ROW_HEIGHT, rowSize, rowsBySection, packToScrollToIndex }; }, [containerWidth, stickerCategories, stickerFormats, searchResults, r16]); }; export { c6382_8 as StickerPickerSectionType };