2026-10-07 22:43:51 +00:00
// Module ID: 17526
// Function ID: 17527
2026-09-18 19:45:33 +00:00
// Name: useFileUploadComponentState
2026-10-07 22:43:51 +00:00
// Dependencies: [19, 7031, 7267, 7795, 38, 1985, 2]
2026-09-18 19:45:33 +00:00
// Exports: useFileUploadComponentState
2026-10-07 22:43:51 +00:00
// Module 17526 (useFileUploadComponentState)
2026-10-02 13:37:24 +00:00
import Server from "Server" /* 1985 */ ;
2026-10-07 22:43:51 +00:00
import DraftStore from "DraftStore" /* 7031 */ ;
2026-10-01 14:13:23 +00:00
import react from "react" /* 19 */ ;
2026-10-07 22:43:51 +00:00
import UploadAttachmentStore from "UploadAttachmentStore" /* 7267 */ ;
2026-10-01 14:13:23 +00:00
import size from "module_2" /* 2 */ ;
2026-09-18 19:45:33 +00:00
2026-10-01 14:13:23 +00:00
const DraftType = DraftStore . DraftType ;
2026-09-18 19:45:33 +00:00
const result = size . fileFinishedImporting ( "modules/interaction_components/useFileUploadComponentState.tsx" ) ;
export const useFileUploadComponentState = function useFileUploadComponentState ( maxValues ) {
2026-10-01 14:13:23 +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-09-18 19:45:33 +00:00
const channelId = componentStateContext . channelId ;
executeStateUpdate ( uploadIds [ 4 ] ) ( null != channelId , "useFileUploadComponentState must be used inside a channel" ) ;
2026-10-01 14:13:23 +00:00
const componentState = componentStateContext . useComponentState ( maxValues ) ;
state = componentState . state ;
executeStateUpdate = componentState . executeStateUpdate ;
2026-09-18 19:45:33 +00:00
const items = [ state ] ;
2026-10-01 14:13:23 +00:00
const error = componentState . error ;
2026-09-18 19:45:33 +00:00
uploadIds = uploads . useMemo ( ( ) = > {
let type ;
if ( state != null ) {
type = tmp . type ;
}
return type === Server . ComponentType . FILE_UPLOAD ? state . uploadIds : [ ] ;
} , items ) ;
uploads = setUploadIds . getUploads ( channelId , currentUploads . InteractionModal ) ;
const items1 = [ uploadIds , uploads ] ;
currentUploads = uploads . useMemo ( ( ) = > {
const mapped = uploadIds . map ( ( item ) = > {
2026-10-01 14:13:23 +00:00
let closure_0 = item ;
2026-09-18 19:45:33 +00:00
return uploads . find ( ( id ) = > id . id === closure_0 ) ;
} ) ;
return mapped . filter ( ( item ) = > null != item ) ;
} , items1 ) ;
const items2 = [ executeStateUpdate ] ;
2026-10-01 14:13:23 +00:00
setUploadIds = uploads . useCallback ( ( uploadIds ) = > {
const obj = { type : Server . ComponentType . FILE_UPLOAD , uploadIds } ;
return executeStateUpdate ( obj ) ;
} , items2 ) ;
2026-09-18 19:45:33 +00:00
const items3 = [ uploadIds , currentUploads , setUploadIds ] ;
const effect = uploads . useEffect ( ( ) = > {
2026-10-01 14:13:23 +00:00
const arr = uploadIds ;
2026-09-18 19:45:33 +00:00
if ( uploadIds . length > currentUploads . length ) {
2026-10-01 14:13:23 +00:00
setUploadIds ( arr . filter ( ( item ) = > {
let closure_0 = item ;
2026-09-18 19:45:33 +00:00
return currentUploads . some ( ( id ) = > id . id === closure_0 ) ;
} ) ) ;
}
} , items3 ) ;
2026-10-01 14:13:23 +00:00
return { uploadIds , setUploadIds , currentUploads , error } ;
2026-09-18 19:45:33 +00:00
} ;