Improve upload progress on android due to null asset IDs.
This commit is contained in:
@@ -32,14 +32,14 @@ const photosReducer = (state = INITIAL_STATE, action) => {
|
||||
case PhotosActionTypes.MEDIA_UPLOAD_PROGRESS_UPDATE_ONE:
|
||||
return {
|
||||
...state,
|
||||
progress: { ...state.progress, [action.payload.assetId]: { ...state.progress[action.payload.assetId], ...action.payload } }
|
||||
progress: { ...state.progress, [action.payload.assetId || action.payload.fileName]: { ...state.progress[action.payload.assetId || action.payload.fileName], ...action.payload } }
|
||||
};
|
||||
case PhotosActionTypes.MEDIA_UPLOAD_SUCCESS_ONE:
|
||||
const { [action.payload.assetId]: _, ...remainingTasks } = state.cancelTasks;
|
||||
const { [action.payload.assetId || action.payload.fileName]: _, ...remainingTasks } = state.cancelTasks;
|
||||
|
||||
return {
|
||||
...state,
|
||||
progress: { ...state.progress, [action.payload.assetId]: { ...state.progress[action.payload.assetId], progress: 1, status: 'completed', endTime: new Date() } },
|
||||
progress: { ...state.progress, [action.payload.assetId || action.payload.fileName]: { ...state.progress[action.payload.assetId || action.payload.fileName], progress: 1, status: 'completed', endTime: new Date() } },
|
||||
cancelTasks: remainingTasks
|
||||
};
|
||||
case PhotosActionTypes.MEDIA_UPLOAD_PROGRESS_UPDATE_BULK:
|
||||
@@ -69,11 +69,11 @@ const photosReducer = (state = INITIAL_STATE, action) => {
|
||||
...state,
|
||||
cancelTasks: {
|
||||
...state.cancelTasks,
|
||||
[action.payload.assetId]: action.payload.cancelTask,
|
||||
[action.payload.assetId || action.payload.fileName]: action.payload.cancelTask,
|
||||
},
|
||||
};
|
||||
case PhotosActionTypes.REMOVE_UPLOAD_CANCEL_TASK:
|
||||
const { [action.payload.assetId]: _2, ...remainingTasks2 } = state.cancelTasks; //2 added for scoped variable conflict.
|
||||
const { [action.payload.assetId || action.payload.fileName]: _2, ...remainingTasks2 } = state.cancelTasks; //2 added for scoped variable conflict.
|
||||
return {
|
||||
...state,
|
||||
cancelTasks: remainingTasks2,
|
||||
|
||||
@@ -85,7 +85,12 @@ export function* openImagePickerAction({ payload: jobid }) {
|
||||
exif: true,
|
||||
});
|
||||
if (!(result.canceled)) {
|
||||
yield put(mediaUploadStart({ photos: result.assets, jobid, progress: _.keyBy(result.assets, 'assetId') }));
|
||||
yield put(mediaUploadStart({
|
||||
photos: result.assets, jobid, progress: _.keyBy(result.assets, (item) => {
|
||||
// If item.id is null or undefined, use a fallback string like 'no_id'
|
||||
return item.assetId === null || item.assetId === undefined || item.assetId === "" ? item.fileName : item.assetId;
|
||||
})
|
||||
}));
|
||||
}
|
||||
} catch (error) {
|
||||
console.log("Saga Error: open Picker", error);
|
||||
|
||||
Reference in New Issue
Block a user