/* Metro module 8228; source: modules/replies/canReplyToMessage.tsx; dependencies: [57, 3784, 1878, 661, 482, 671, 6860, 8229, 566, 2] */ function _fun65832(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#65832, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8413:6, offset: 0x01be1253, size: 235 bytes, params: 8, frame: 19 const env0_0 = require; const _canReplyToMessage = function(a0, a1, a2, a3, a4) { var value = a2; var value2 = a4; var hasFlag = a1.hasFlag(MessageFlags.EPHEMERAL); var value4 = a1.state === MessageStates.SENT; var isArchivedThread = a0.isArchivedThread(); var r1 = isArchivedThread ? value2 : !isArchivedThread; var r0 = value && value4 && !hasFlag; r0 = r0 && !a3 && r1; return r0; }; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const env0_2 = importDefault(57) /* metro dependency 57 */; const permissionStore = importDefault(3784) /* metro dependency 3784: PermissionStore */; const userStore = importDefault(1878) /* metro dependency 1878: UserStore */; const constantsModule = require(661) /* metro dependency 661: Constants */; const env0_5 = constantsModule.MessageFlags; const env0_6 = constantsModule.MessageStates; const env0_7 = (require(482) /* metro dependency 482: Constants */).Permissions; (require(2) /* metro dependency 2 */).fileFinishedImporting('modules/replies/canReplyToMessage.tsx'); exports.useCanReplyToMessage = useCanReplyToMessage; exports.canReplyToMessage = canReplyToMessage; } function hasReplyPermission(a0, a1, a2) { // fn#65833, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8413:193, offset: 0x01be133e, size: 144 bytes, params: 4, frame: 14 var REPLYABLE; let r0 = a0.isPrivate() ? !a0.isSystemDM() : a2.can(Permissions.SEND_MESSAGES, a0) && a2.can(Permissions.READ_MESSAGE_HISTORY, a0); if (r0) { REPLYABLE = (require(671) /* metro dependency 671: MessageTypes */).MessageTypesSets.REPLYABLE; r0 = REPLYABLE.has(a1.type); } return r0; } function useCanReplyToMessage(a0, a1) { // fn#65835, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8413:603, offset: 0x01be1435, size: 219 bytes, params: 3, frame: 24 const env0_0 = a0; const env0_1 = a1; const value2 = undefined; const value3 = (require(6860) /* metro dependency 6860: ThreadHooks */).useCanUnarchiveThread(a0); const useUserCommunicationDisabledModule = require(8229) /* metro dependency 8229: useUserCommunicationDisabled */; const useCurrentUserCommunicationDisabled = useUserCommunicationDisabledModule.useCurrentUserCommunicationDisabled; return a0 != null && a1 != null && _canReplyToMessage(a0, a1, (require(566) /* metro dependency 566: flux */).useStateFromStores([PermissionStore], _fun65836), env0_2(Reflect.apply(useCurrentUserCommunicationDisabled, useUserCommunicationDisabledModule, [(a0 == null ? value2 : a0.getGuildId()) ?? value2]), 2)[1], value3); } function canReplyToMessage(a0, a1) { // fn#65837, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8413:947, offset: 0x01be1549, size: 176 bytes, params: 3, frame: 24 const value2 = undefined; const canUnarchiveThread2 = (require(6860) /* metro dependency 6860: ThreadHooks */).canUnarchiveThread(a0); const hasReplyPermission2 = hasReplyPermission(a0, a1, PermissionStore); const currentUser = UserStore.getCurrentUser(); const useUserCommunicationDisabledModule = require(8229) /* metro dependency 8229: useUserCommunicationDisabled */; const userCommunicationDisabled = useUserCommunicationDisabledModule.userCommunicationDisabled; return _canReplyToMessage(a0, a1, hasReplyPermission2, env0_2(Reflect.apply(userCommunicationDisabled, useUserCommunicationDisabledModule, [currentUser == null ? value2 : currentUser.id, a0.getGuildId() ?? value2]), 2)[1], canUnarchiveThread2); } function _fun65836() { // fn#65836, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8413:821, offset: 0x01be1510, size: 57 bytes, params: 1, frame: 16 return env0_0 != null && require != null && hasReplyPermission(env0_0, require, PermissionStore); }