/* Metro module 11199; source: modules/polls/native/PollVotesActionSheet.tsx; dependencies: [57, 5, 31, 27, 4502, 6540, 1379, 4814, 1878, 33, 4501, 697, 566, 1423, 6739, 1244, 5278, 4573, 7149, 5321, 8431, 6771, 11200, 9839, 7152, 4617, 3995, 6238, 1305, 9210, 8743, 4017, 4504, 8416, 4048, 4002, 11201, 11202, 6789, 4080, 6275, 2] */ function _fun85568(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#85568, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:6, offset: 0x01f73ad3, size: 728 bytes, params: 8, frame: 26 var object2; const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const env0_3 = importDefault(57) /* metro dependency 57 */; const env0_4 = importDefault(5) /* metro dependency 5 */; const value = importAll(31) /* metro dependency 31 */; const value2 = require(27) /* metro dependency 27 */; const env0_6 = value2.Image; const env0_7 = value2.View; const env0_8 = value2.ScrollView; const accessibilityStore = importDefault(4502) /* metro dependency 4502: AccessibilityStore */; const emojiStore = importDefault(6540) /* metro dependency 6540: EmojiStore */; const channelStore = importDefault(1379) /* metro dependency 1379: ChannelStore */; const messageStore = importDefault(4814) /* metro dependency 4814: MessageStore */; const userStore = importDefault(1878) /* metro dependency 1878: UserStore */; const value3 = require(33) /* metro dependency 33 */; const env0_14 = value3.jsx; const env0_15 = value3.jsxs; const createStylesModule = require(4501) /* metro dependency 4501: createStyles */; const createStyles = createStylesModule.createStyles; object2 = {headerText: {'textAlign': 'center', 'paddingHorizontal': 16}, subheaderText: {'textAlign': 'center', 'marginTop': 2, 'paddingHorizontal': 16}}; object2.answerScroll = {marginTop: 24}; object2.answerScrollContainer = {'gap': 4, 'paddingHorizontal': 16}; object2.answerName = {'marginTop': 16, 'marginHorizontal': 16, 'marginBottom': 8}; object2.list = {paddingHorizontal: 16}; const object3 = {'padding': 8, 'flexDirection': 'row', 'alignItems': 'center', 'borderRadius': null, 'maxWidth': 200}; object3.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.xs; object2.answerButton = object3; const BORDER_SUBTLE = (importDefault(697) /* metro dependency 697: native */).colors.BORDER_SUBTLE; object2.answerSelected = {backgroundColor: BORDER_SUBTLE}; object2.answerEmoji = {marginRight: 8}; object2.answerText = {flexShrink: 1}; object2.emojiText = {fontSize: 16}; object2.emojiImage = {'height': 16, 'width': 16, 'flexShrink': 0}; object2.noResultsContainer = {'flexDirection': 'column', 'alignItems': 'center', 'paddingHorizontal': 16}; object2.noResultsImage = {'marginTop': 32, 'width': 138}; object2.noResultsTitle = {'marginTop': 16, 'textAlign': 'center'}; object2.noResultsSubtitle = {'marginTop': 4, 'textAlign': 'center'}; const env0_16 = Reflect.apply(createStyles, createStylesModule, [object2]); const env0_17 = value.forwardRef(_fun85591); object2 = {code: 'function PollVotesActionSheetTsx1(){const{opacity}=this.__closure;return{flex:1,opacity:opacity.get(),marginBottom:32};}'}; (require(2) /* metro dependency 2 */).fileFinishedImporting('modules/polls/native/PollVotesActionSheet.tsx'); exports.default = PollVotesActionSheet; } function PollEmoji({style, emoji}) { // fn#85569, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:1085, offset: 0x01f73dab, size: 153 bytes, params: 2, frame: 20 const styles = useStyles(); return ((Component) => )(importDefault(6739) /* metro dependency 6739: Emoji */); } function PollVotesHeader({message, selectedAnswerId, setSelectedAnswerId}) { // fn#85571, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:2349, offset: 0x01f73edf, size: 621 bytes, params: 2, frame: 32 var r0; const Text = (require(4573) /* metro dependency 4573: Text */).Text; var items2; const intl = (require(1244) /* metro dependency 1244: indexNative */).intl; const t = (require(1244) /* metro dependency 1244: indexNative */).t; var GestureDetector; var object; const styles = useStyles(); const value2 = env0_5Binding.useMemo(_fun85572, [message.reactions]); const value4 = env0_5Binding.useRef(null); const env0_4 = env0_5Binding.useRef(null); var env0_5Binding = env0_5.useRef(false); env0_5Binding.useEffect(_fun85573, [selectedAnswerId]); const value5 = env0_5Binding.useMemo(_fun85582, []); let poll = message.poll; if (poll == null) { r0 = null; } else { poll = message.poll; items2 = [{poll.question.text}]; items2[1] = {intl.format(t.XRkuof, {count: value2})}; GestureDetector = (require(5321) /* metro dependency 5321 */).GestureDetector; object = {gesture: value5}; var scrollViewProps = {'ref': null, 'style': null, 'contentContainerStyle': null, 'horizontal': true, 'showsHorizontalScrollIndicator': false, 'accessibilityRole': 'tablist', ref: value4, style: styles.answerScroll, contentContainerStyle: styles.answerScrollContainer, accessibilityLabel: intl.string(t['qbir+4'])}; poll = message.poll; items2[2] = {poll.answers.map(_fun85583)}; r0 = {items2}; } return r0; } function VotersList({channelId, messageId, reaction}) { // fn#85584, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:4311, offset: 0x01f74551, size: 564 bytes, params: 2, frame: 25 var object2; const styles = useStyles(); const analyticsLocations = (importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */)().analyticsLocations; const {reactors, hasMore} = (importDefault(11200) /* metro dependency 11200: useVoteReactors */)({channelId: channelId, messageId: messageId, reaction: reaction}); const messageReactionsContentModule = require(9839) /* metro dependency 9839: MessageReactionsContent */; const useReactorsOnScrollNative = messageReactionsContentModule.useReactorsOnScrollNative; object2 = {channelId: channelId, messageId: messageId, reactionSelected: reaction, reactors: reactors, reactorsHasMore: hasMore}; const ReactionTypes = (require(7152) /* metro dependency 7152: MessageReactionsTypes */).ReactionTypes; const VOTE = ReactionTypes.VOTE; object2.reactionType = VOTE; const value3 = Reflect.apply(useReactorsOnScrollNative, messageReactionsContentModule, [object2]); const value4 = undefined.useCallback(_fun85586, [(require(566) /* metro dependency 566: flux */).useStateFromStores([ChannelStore], function() { return ChannelStore.getChannel(channelId); }), reactors.length, channelId, messageId, analyticsLocations]); const value7 = (require(4017) /* metro dependency 4017: ReanimatedRexport */).useSharedValue(reactors.length !== 0 ? 1 : 0); value7.useEffect(_fun85588, [value7, reactors.length]); const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */; const useAnimatedStyle = reanimatedRexportModule.useAnimatedStyle; const closure = VotersListB; closure.__closure = {opacity: value7}; closure.__workletHash = 8593850252158; closure.__initData = env0_18; const value8 = Reflect.apply(useAnimatedStyle, reanimatedRexportModule, [closure]); const View = (importDefault(4017) /* metro dependency 4017: ReanimatedRexport */).View; const BottomSheetFlashList = (require(8416) /* metro dependency 8416: flashList */).BottomSheetFlashList; return ( ); } function NoResults_85590() { // fn#85590, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:5717, offset: 0x01f74a38, size: 393 bytes, params: 1, frame: 26 const styles = useStyles(); const items2 = []; const Text = (require(4573) /* metro dependency 4573: Text */).Text; const intl = (require(1244) /* metro dependency 1244: indexNative */).intl; items2[1] = {intl.string((require(1244) /* metro dependency 1244: indexNative */).t.vhQK3o)}; items2[2] = {intl.string((require(1244) /* metro dependency 1244: indexNative */).t.bwytdh)}; return ( {items2} ); } function _fun85591({answer, reaction, selected, setSelectedAnswerId}, a1) { // fn#85591, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:1466, offset: 0x01f74bc1, size: 613 bytes, params: 3, frame: 25 const Text = (require(4573) /* metro dependency 4573: Text */).Text; const styles = useStyles(); const r9 = (reaction == null || reaction.count_details == null ? undefined : reaction.count_details.vote) ?? 0; const value5 = env0_5.useCallback(function() { var setSelectedAnswerIdBinding = setSelectedAnswerId; var String = global.String; setSelectedAnswerIdBinding(String(answer.answer_id)); }, [setSelectedAnswerId, answer.answer_id]); const r8 = selected ? 'interactive-text-active' : 'text-default'; const intl = (require(1244) /* metro dependency 1244: indexNative */).intl; const value8 = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.wqBc7A, {numVotes: r9, option: answer.poll_media.text}); const PressableHighlight = (require(5278) /* metro dependency 5278: Pressables */).PressableHighlight; return ( {answer.poll_media.emoji != null ? : null} {answer.poll_media.text != null ? {answer.poll_media.text} : null} {' '} {'('} {r9.toLocaleString()} {')'} ); } function PollVotesActionSheet({channelId, messageId, initialAnswerId}) { // fn#85593, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:6277, offset: 0x01f74e4d, size: 736 bytes, params: 2, frame: 33 var r17; var r8; var AnalyticsLocationProvider; var BottomSheet; var Text; var items3; var intl; var format; var items2; const styles = useStyles(); const defaultImport = importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */; const POLL_VOTES = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).POLL_VOTES; const analyticsLocations = defaultImport(POLL_VOTES).analyticsLocations; let [property, property2] = env0_3(env0_5.useState(initialAnswerId), 2); const fluxModule = require(566) /* metro dependency 566: flux */; const useStateFromStores = fluxModule.useStateFromStores; let object = [MessageStore]; const message = Reflect.apply(useStateFromStores, fluxModule, [object, function() { return MessageStore.getMessage(channelId, messageId); }]); const r2 = message != null && message.poll != null; env0_5.useEffect(_fun85595, [r2]); const value8 = env0_5.useMemo(_fun85596, [message?.reactions, property]); if (r2) { r17 = message == null || message.poll == null ? undefined : message.poll.answers.find(_fun85597); r8 = (value8 == null || value8.count_details == null ? undefined : value8.count_details.vote) ?? 0; AnalyticsLocationProvider = (require(6771) /* metro dependency 6771: useAnalyticsLocations */).AnalyticsLocationProvider; object = {value: analyticsLocations}; BottomSheet = (require(6275) /* metro dependency 6275: BottomSheetNative */).BottomSheet; var bottomSheetProps = {scrollable: true, header: }; Text = (require(4573) /* metro dependency 4573: Text */).Text; var textProps = {'style': null, 'variant': 'text-sm/semibold', 'color': 'text-default', style: styles.answerName}; items3 = [r17 == null ? undefined : r17.poll_media.text, ' - ']; intl = (require(1244) /* metro dependency 1244: indexNative */).intl; format = intl.format; property = (require(1244) /* metro dependency 1244: indexNative */).t['SG/Cyy']; items3[2] = Reflect.apply(format, intl, [property, {count: r8}]); items2 = [{items3}]; r8 = value8 == null ? : r8 > 0 ? : ; items2[1] = r8; return ( {items2} ); } return null; } function _fun85570() { // fn#85570, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:1168, offset: 0x01f73e44, size: 155 bytes, params: 1, frame: 14 var r3; var value6; if (emoji.id != null) { r3 = emoji.animated || (EmojiStore.getCustomEmojiById(emoji.id)?.animated ?? EmojiStore.getCustomEmojiById(emoji.id)?.animated != null); value6 = environment.__proto__; return (importDefault(1423) /* metro dependency 1423: AvatarUtils */).getEmojiURL({id: emoji.id, animated: r3, size: 16}); } } function _fun85572() { // fn#85572, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:2451, offset: 0x01f7414c, size: 51 bytes, params: 1, frame: 11 const value = environment.__proto__; return (require(7149) /* metro dependency 7149: PollsUtils */).getTotalVotes(message.reactions); } function _fun85573() { // fn#85573, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:2569, offset: 0x01f7417f, size: 41 bytes, params: 1, frame: 13 var environment; const setTimeout = global.setTimeout; const value = environment.__proto__; setTimeout(env1_4(_fun85575), 0); } function _fun85582() { // fn#85582, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:3279, offset: 0x01f7447a, size: 56 bytes, params: 1, frame: 11 const value = environment.__proto__; const Gesture = (require(5321) /* metro dependency 5321 */).Gesture; return Gesture.Native().disallowInterruption(true); } function _fun85583(a0) { // fn#85583, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:3983, offset: 0x01f744b2, size: 159 bytes, params: 2, frame: 21 const selectedAnswerIdBinding = selectedAnswerId; let String = global.String; const answer_id = a0.answer_id; const value2 = undefined; const value3 = selectedAnswerIdBinding === String(answer_id); const binding = env1_17; const bindingProps = {ref: value3 ? env0_4 : value2, answer: a0, selected: value3}; const formatPollMessageChatDataModule = require(8431) /* metro dependency 8431: formatPollMessageChatData */; const reactionForId = formatPollMessageChatDataModule.reactionForId; const reactions = message.reactions; String = global.String; bindingProps.reaction = Reflect.apply(reactionForId, formatPollMessageChatDataModule, [reactions, String(a0.answer_id)]); bindingProps.setSelectedAnswerId = setSelectedAnswerId; return ((Component) => )(binding); } function _fun85586({item, index}) { // fn#85586, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:4712, offset: 0x01f7479f, size: 444 bytes, params: 2, frame: 28 var environment; var r8; let value = environment.__proto__; const r7 = (importDefault(4617) /* metro dependency 4617: NicknameUtils */).getNickname(channel?.guild_id, channel?.id, item) ?? (importDefault(3995) /* metro dependency 3995: UserUtils */).getGlobalName(item); const userTag = (importDefault(3995) /* metro dependency 3995: UserUtils */).getUserTag(item); const user = UserStore.getUser(item.id); const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow; const tableRowProps = {start: index === 0, end: reactors.length - 1 === index}; const Avatar = (require(1305) /* metro dependency 1305: native */).Avatar; const guild_id = channel?.guild_id; const r13 = user ?? item; const AvatarSizes = (require(1305) /* metro dependency 1305: native */).AvatarSizes; const SMALL = AvatarSizes.SMALL; tableRowProps.icon = ; if (r7 != null) { r8 = r7; } else { value = importDefault(9210) /* metro dependency 9210: DiscordTag */; value = ((Component) => )(value); r8 = value; } tableRowProps.label = r8; tableRowProps.subLabel = r7 != null ? userTag : null; tableRowProps.onPress = onPress_85587; return ; } function _fun85588() { // fn#85588, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:5301, offset: 0x01f749ae, size: 100 bytes, params: 1, frame: 15 var binding; var set; var value; if (reactors.length !== 0) { binding = env0_5; set = binding.set; value = environment.__proto__; value = require(4504) /* metro dependency 4504: timing */; Reflect.apply(set, binding, [value.withTiming(1, {duration: 200})]); } else { env0_5.set(0); } } function VotersListB() { // fn#85589, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:5427, owner: VotersList.b, offset: 0x01f74a12, size: 38 bytes, params: 1, frame: 10 const object2 = {'flex': 1, 'opacity': null, 'marginBottom': 32}; object2.opacity = env0_5.get(); return object2; } function _fun85595() { // fn#85595, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:6554, offset: 0x01f7514d, size: 56 bytes, params: 1, frame: 11 var value; if (!env0_4) { value = environment.__proto__; value = importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */; value.hideActionSheet('PollVotesActionSheet'); } } function _fun85596() { // fn#85596, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:6635, offset: 0x01f75185, size: 87 bytes, params: 1, frame: 14 var value3; var moduleValue; const messageBinding = message; const value2 = undefined; if ((messageBinding == null ? value2 : message.reactions) != null) { value3 = environment.__proto__; moduleValue = require(8431) /* metro dependency 8431: formatPollMessageChatData */; return moduleValue.reactionForId(message.reactions, env0_2); } return value2; } function _fun85597({answer_id}) { // fn#85597, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:6830, offset: 0x01f751dc, size: 37 bytes, params: 2, frame: 11 const String = global.String; return String(answer_id) === env0_2; } function* _fun85575() { // fn#85575, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:2588, offset: 0x01f741b3, size: 500 bytes, params: 1, frame: 26 var environment; if (true) { value = environment.__proto__.__proto__; var current = env2_3.current; if (current != null) { if (env2_4.current == null) { return undefined; } var Promise = global.Promise; var prototype = Promise.prototype; var value3 = Object.create(prototype, {constructor: {value: Promise}}); var closure = function(a0) { var env0_0 = a0; current.measure(_fun85577); }; var promise = new Promise(closure); var value4 = promise instanceof Object ? promise : value3; Promise = global.Promise; prototype = Promise.prototype; var value5 = Object.create(prototype, {constructor: {value: Promise}}); closure = function(a0) { var env0_0 = a0; current.measure(_fun85579); }; promise = new Promise(closure); var value6 = promise instanceof Object ? promise : value5; Promise = global.Promise; prototype = Promise.prototype; var value7 = Object.create(prototype, {constructor: {value: Promise}}); closure = function(a0) { var env0_0 = a0; current.measureLayout(current, _fun85581); }; promise = new Promise(closure); var value8 = promise instanceof Object ? promise : value7; Promise = global.Promise; yield Promise.all([value4, value6, value8]); var value9 = undefined; if (false) { return value9; } var value12 = env3_3(value9, 3); var property = value12[0]; var scrollWidth = property.scrollWidth; var scrollPageX = property.scrollPageX; property = value12[1]; var width = property.width; var pageX = property.pageX; var x = value12[2].x; var useReducedMotion = env3_9.useReducedMotion; var value13 = !useReducedMotion; current = env2_5.current; if (current) { if (pageX < scrollPageX) { current = env2_3.current; if (current != null) { current.scrollTo({x: x - 16, y: 0, animated: value13}); } } else if (pageX + width > scrollPageX + scrollWidth) { current = env2_3.current; if (current != null) { current.scrollTo({x: x + width - scrollWidth + 16, y: 0, animated: value13}); } } return undefined; } current = env2_3.current; if (current != null) { current.scrollTo({x: x + width / 2 - scrollWidth / 2, y: 0, animated: value13}); } env2_5.current = true; } } } function onPress_85587() { // fn#85587, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:5129, offset: 0x01f7495b, size: 83 bytes, params: 1, frame: 13 let value = environment.__proto__.__proto__; value = importDefault(8743) /* metro dependency 8743: showUserProfileActionSheet */; const itemBinding = item; return value({userId: itemBinding.id, localUser: itemBinding, sourceAnalyticsLocations: analyticsLocations, channelId: channelId, messageId: messageId}); } function _fun85576(a0) { // fn#85576, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:2672, offset: 0x01f743a7, size: 38 bytes, params: 2, frame: 11 const env0_0 = a0; current.measure(_fun85577); } function _fun85578(a0) { // fn#85578, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:2753, offset: 0x01f743ef, size: 38 bytes, params: 2, frame: 11 const env0_0 = a0; current.measure(_fun85579); } function _fun85580(a0) { // fn#85580, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:2822, offset: 0x01f74436, size: 43 bytes, params: 2, frame: 13 const env0_0 = a0; const currentBinding = current; currentBinding.measureLayout(current, _fun85581); } function _fun85577(a0, a1, a2, a3, a4) { // fn#85577, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:2687, offset: 0x01f743cd, size: 34 bytes, params: 6, frame: 11 return env0_0({scrollWidth: a2, scrollPageX: a4}); } function _fun85579(a0, a1, a2, a3, a4) { // fn#85579, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:2768, offset: 0x01f74415, size: 33 bytes, params: 6, frame: 11 return env0_0({width: a2, pageX: a4}); } function _fun85581(a0) { // fn#85581, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11385:2845, offset: 0x01f74461, size: 25 bytes, params: 2, frame: 11 return env0_0({x: a0}); }