import types from '../../types' const samplernnInitialState = { loading: false, error: null, folder: {}, folders: [], files: [], results: [], upload: { loading: true, status: 'Loading...', }, } const samplernnReducer = (state = samplernnInitialState, action) => { console.log(action) switch(action.type) { case types.socket.connect: return { ...state, } case types.task.task_begin: return { ...state, } case types.task.task_finish: return { ...state, } case types.folder.index: console.log(action) return { ...state, folders: action.data, folder: action.data[0], } case types.folder.update: console.log(action) return state case types.file.index: console.log(action) return { ...state, files: action.data } case types.file.create: console.log(action) return { ...state, files: [action.data].concat(this.files) } return case types.folder.upload_loading: return { ...state, upload: { loading: true, status: 'Loading...', }, } case types.folder.upload_error: return { ...state, upload: { loading: false, status: 'Error uploading :(', }, } case types.folder.upload_progress: console.log(action) return { ...state, upload: { loading: true, status: 'Upload progress ' + action.percent + '%', }, } case types.folder.upload_waiting: console.log(action) return { ...state, upload: { loading: true, status: 'Waiting for server to finish processing...', }, } case types.folder.upload_complete: console.log(action) if (state.folder.id === action.folder) { return { ...state, files: state.files.concat(state.file), // sort here also upload: { loading: false, }, } } else { return { ...state, upload: { loading: false, status: 'Upload complete', }, } } case types.socket.status: return samplernnSocket(state, action.data) default: return state } } const samplernnSocket = (state, action) => { console.log(action) switch (action.key) { default: return state } } export default samplernnReducer