decord/source/modules/interaction_components/useFileUploadComponentState.tsx

53 lines
2.2 KiB
TypeScript
Raw Normal View History

// Module ID: 17399
// Function ID: 17400
2026-07-20 16:05:17 +00:00
// Name: useFileUploadComponentState
// Dependencies: [19, 4901, 4900, 8112, 38, 1894, 2]
2026-07-20 16:05:17 +00:00
// Exports: useFileUploadComponentState
// Module 17399 (useFileUploadComponentState)
2026-08-24 06:08:38 +00:00
import closure_3 from "noop" /* 19 */;
import { DraftType } from "handleChanged" /* 4901 */;
import closure_5 from "map" /* 4900 */;
2026-07-23 10:11:24 +00:00
const require = arg1;
2026-08-24 06:08:38 +00:00
const result = require("set").fileFinishedImporting("modules/interaction_components/useFileUploadComponentState.tsx");
2026-07-20 16:05:17 +00:00
export const useFileUploadComponentState = function useFileUploadComponentState(maxValues) {
2026-07-23 10:11:24 +00:00
const componentStateContext = state(uploadIds[3]).useComponentStateContext();
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-08-24 06:08:38 +00:00
error = componentStateContext.useComponentState(maxValues);
2026-07-23 10:11:24 +00:00
state = error.state;
executeStateUpdate = error.executeStateUpdate;
2026-07-20 16:05:17 +00:00
const items = [state];
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-07-29 08:29:29 +00:00
return type === state(uploadIds[5]).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(() => {
const mapped = uploadIds.map((arg0) => {
2026-08-24 06:08:38 +00:00
closure_0 = arg0;
return closure_3.find((id) => id.id === closure_0);
2026-07-23 10:11:24 +00:00
});
2026-07-20 16:05:17 +00:00
return mapped.filter((arg0) => null != arg0);
}, items1);
const items2 = [executeStateUpdate];
2026-07-23 10:11:24 +00:00
setUploadIds = uploads.useCallback((uploadIds) => executeStateUpdate({ type: state(uploadIds[5]).ComponentType.FILE_UPLOAD, uploadIds }), 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-07-20 16:05:17 +00:00
if (uploadIds.length > currentUploads.length) {
2026-07-23 10:11:24 +00:00
setUploadIds(uploadIds.filter((arg0) => {
2026-08-24 06:08:38 +00:00
closure_0 = arg0;
2026-07-29 08:29:29 +00:00
return closure_4.some((id) => id.id === closure_0);
2026-07-23 10:11:24 +00:00
}));
2026-07-20 16:05:17 +00:00
}
}, items3);
return { uploadIds, setUploadIds, currentUploads, error: error.error };
};