/* Metro module 8228; source: modules/replies/canReplyToMessage.tsx; dependencies: [57, 3784, 1878, 661, 482, 671, 6860, 8229, 566, 2] */ import Module00057 from '../../by-id/module-00057.js'; /* Metro dependency 57 */ import UserStore from '../../stores/UserStore.tsx'; /* Metro dependency 1878 */ import PermissionStore from '../../stores/PermissionStore.tsx'; /* Metro dependency 3784 */ import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */ import * as ConstantsModule from '../../external/discord_common/js/shared/Constants.tsx'; /* Metro dependency 482 */ import * as ConstantsModule2 from '../../Constants.tsx'; /* Metro dependency 661 */ import * as ThreadHooksModule from '../threads/ThreadHooks.tsx'; /* Metro dependency 6860 */ import * as UseUserCommunicationDisabledModule from '../guild_communication_disabled/useUserCommunicationDisabled.tsx'; /* Metro dependency 8229 */ 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 constantsModule = ConstantsModule2; const env0_5 = constantsModule.MessageFlags; const env0_6 = constantsModule.MessageStates; (FileImportTrackerModule).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 = (ThreadHooksModule).useCanUnarchiveThread(a0); const useCurrentUserCommunicationDisabled = UseUserCommunicationDisabledModule.useCurrentUserCommunicationDisabled; return a0 != null && a1 != null && _canReplyToMessage(a0, a1, (require(566) /* metro dependency 566: flux */).useStateFromStores([PermissionStore], _fun65836), Module00057(Reflect.apply(useCurrentUserCommunicationDisabled, UseUserCommunicationDisabledModule, [(a0 == null ? value2 : a0.getGuildId()) ?? value2]), 2)[1], value3); 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); } } 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 = (ThreadHooksModule).canUnarchiveThread(a0); const hasReplyPermission2 = hasReplyPermission(a0, a1, PermissionStore); const currentUser = UserStore.getCurrentUser(); const userCommunicationDisabled = UseUserCommunicationDisabledModule.userCommunicationDisabled; return _canReplyToMessage(a0, a1, hasReplyPermission2, Module00057(Reflect.apply(userCommunicationDisabled, UseUserCommunicationDisabledModule, [currentUser == null ? value2 : currentUser.id, a0.getGuildId() ?? value2]), 2)[1], canUnarchiveThread2); } } global.__d(_fun65832, 8228, [57, 3784, 1878, 661, 482, 671, 6860, 8229, 566, 2]) /* metro module 8228, dependencies: [57, 3784, 1878, 661, 482, 671, 6860, 8229, 566, 2] */;