@@ -282,7 +282,8 @@ const useAttachmentSelectorActionsFiltered = (original: AttachmentSelectorAction
282282 ShareLocationDialog = DefaultLocationDialog ,
283283 } = useComponentContext ( ) ;
284284 const { channelCapabilities } = useChannelStateContext ( ) ;
285- const { isUploadEnabled } = useAttachmentManagerState ( ) ;
285+ const { hasAvailableUploadSlots, hasCustomDoUploadRequest, isUploadEnabled } =
286+ useAttachmentManagerState ( ) ;
286287 const messageComposer = useMessageComposerController ( ) ;
287288 const channelConfig = messageComposer . channel . getConfig ( ) ;
288289
@@ -292,9 +293,8 @@ const useAttachmentSelectorActionsFiltered = (original: AttachmentSelectorAction
292293 . filter ( ( action ) => {
293294 if ( action . type === 'uploadFile' )
294295 return (
295- channelCapabilities [ 'upload-file' ] &&
296- channelConfig ?. uploads &&
297- isUploadEnabled
296+ ( ! hasCustomDoUploadRequest && channelConfig ?. uploads && isUploadEnabled ) ||
297+ ( hasCustomDoUploadRequest && hasAvailableUploadSlots )
298298 ) ;
299299
300300 if ( action . type === 'createPoll' )
@@ -328,6 +328,8 @@ const useAttachmentSelectorActionsFiltered = (original: AttachmentSelectorAction
328328 ShareLocationDialog ,
329329 channelCapabilities ,
330330 channelConfig ,
331+ hasAvailableUploadSlots ,
332+ hasCustomDoUploadRequest ,
331333 isUploadEnabled ,
332334 messageComposer . threadId ,
333335 original ,
@@ -343,7 +345,6 @@ export const AttachmentSelector = ({
343345 const { t } = useTranslationContext ( ) ;
344346 const { ContextMenu : ContextMenuComponent = ContextMenu , Modal = GlobalModal } =
345347 useComponentContext ( ) ;
346- const { channelCapabilities } = useChannelStateContext ( ) ;
347348 const messageComposer = useMessageComposerController ( ) ;
348349 const isCooldownActive = useIsCooldownActive ( ) ;
349350 const { command } = useStateStore (
@@ -434,7 +435,7 @@ export const AttachmentSelector = ({
434435 return (
435436 < AttachmentSelectorContextProvider value = { { fileInput } } >
436437 < div className = 'str-chat__attachment-selector' { ...inertProps } >
437- { channelCapabilities [ 'upload-file' ] && < UploadFileInput ref = { setFileInput } /> }
438+ < UploadFileInput ref = { setFileInput } />
438439 < AttachmentSelectorButton
439440 { ...buttonProps }
440441 aria-expanded = { menuDialogIsOpen }
0 commit comments