2026-10-12 06:59:38 +00:00
// Module ID: 18137
// Function ID: 18138
2026-07-20 16:05:17 +00:00
// Name: useFileUploadComponentState
2026-10-12 06:59:38 +00:00
// Dependencies: [19, 7244, 7908, 8250, 38, 1998, 2]
2026-07-20 16:05:17 +00:00
// Exports: useFileUploadComponentState
2026-10-12 06:59:38 +00:00
// Module 18137 (useFileUploadComponentState)
2026-10-09 10:00:15 +00:00
import Server from "Server" /* 1998 */ ;
2026-10-12 06:59:38 +00:00
import DraftStore from "DraftStore" /* 7244 */ ;
2026-10-03 08:58:59 +00:00
import react from "react" /* 19 */ ;
2026-10-12 06:59:38 +00:00
import UploadAttachmentStore from "UploadAttachmentStore" /* 7908 */ ;
2026-10-03 08:58:59 +00:00
import size from "module_2" /* 2 */ ;
2026-07-23 10:11:24 +00:00
2026-10-03 08:58:59 +00:00
const DraftType = DraftStore . DraftType ;
2026-09-10 05:38:07 +00:00
const result = size . fileFinishedImporting ( "modules/interaction_components/useFileUploadComponentState.tsx" ) ;
2026-07-20 16:05:17 +00:00
export const useFileUploadComponentState = function useFileUploadComponentState ( maxValues ) {
2026-10-03 08:58:59 +00:00
let currentUploads ;
let executeStateUpdate ;
let setUploadIds ;
let state ;
let uploadIds ;
let uploads ;
let obj = state ( uploadIds [ 3 ] ) ;
const componentStateContext = obj . useComponentStateContext ( ) ;
const tmp = executeStateUpdate ( uploadIds [ 4 ] ) ( null != componentStateContext , "useFileUploadComponentState must be used within a ComponentStateContextProvider" ) ;
2026-07-20 16:05:17 +00:00
const channelId = componentStateContext . channelId ;
2026-07-23 10:11:24 +00:00
executeStateUpdate ( uploadIds [ 4 ] ) ( null != channelId , "useFileUploadComponentState must be used inside a channel" ) ;
2026-10-03 08:58:59 +00:00
const componentState = componentStateContext . useComponentState ( maxValues ) ;
state = componentState . state ;
executeStateUpdate = componentState . executeStateUpdate ;
2026-07-20 16:05:17 +00:00
const items = [ state ] ;
2026-10-03 08:58:59 +00:00
const error = componentState . error ;
2026-07-23 10:11:24 +00:00
uploadIds = uploads . useMemo ( ( ) = > {
2026-07-20 16:05:17 +00:00
let type ;
2026-07-29 08:29:29 +00:00
if ( state != null ) {
type = tmp . type ;
2026-07-20 16:05:17 +00:00
}
2026-09-10 05:38:07 +00:00
return type === Server . ComponentType . FILE_UPLOAD ? state . uploadIds : [ ] ;
2026-07-20 16:05:17 +00:00
} , items ) ;
2026-07-23 10:11:24 +00:00
uploads = setUploadIds . getUploads ( channelId , currentUploads . InteractionModal ) ;
2026-07-20 16:05:17 +00:00
const items1 = [ uploadIds , uploads ] ;
2026-07-23 10:11:24 +00:00
currentUploads = uploads . useMemo ( ( ) = > {
2026-09-10 05:38:07 +00:00
const mapped = uploadIds . map ( ( item ) = > {
2026-10-03 08:58:59 +00:00
let closure_0 = item ;
2026-09-10 05:38:07 +00:00
return uploads . find ( ( id ) = > id . id === closure_0 ) ;
2026-07-23 10:11:24 +00:00
} ) ;
2026-09-10 05:38:07 +00:00
return mapped . filter ( ( item ) = > null != item ) ;
2026-07-20 16:05:17 +00:00
} , items1 ) ;
const items2 = [ executeStateUpdate ] ;
2026-10-03 08:58:59 +00:00
setUploadIds = uploads . useCallback ( ( uploadIds ) = > {
const obj = { type : Server . ComponentType . FILE_UPLOAD , uploadIds } ;
return executeStateUpdate ( obj ) ;
} , items2 ) ;
2026-07-20 16:05:17 +00:00
const items3 = [ uploadIds , currentUploads , setUploadIds ] ;
2026-07-23 10:11:24 +00:00
const effect = uploads . useEffect ( ( ) = > {
2026-10-03 08:58:59 +00:00
const arr = uploadIds ;
2026-07-20 16:05:17 +00:00
if ( uploadIds . length > currentUploads . length ) {
2026-10-03 08:58:59 +00:00
setUploadIds ( arr . filter ( ( item ) = > {
let closure_0 = item ;
2026-09-10 05:38:07 +00:00
return currentUploads . some ( ( id ) = > id . id === closure_0 ) ;
2026-07-23 10:11:24 +00:00
} ) ) ;
2026-07-20 16:05:17 +00:00
}
} , items3 ) ;
2026-10-03 08:58:59 +00:00
return { uploadIds , setUploadIds , currentUploads , error } ;
2026-07-20 16:05:17 +00:00
} ;