Example #1
0
export default function (state = defaultState, action) {
  switch (action.type) {
    case TOGGLE_PANEL:
      return {...state, isPanelOpen: !state.isPanelOpen}

    case SELECT_LANGUAGE:
      return {...state, lang: action.lang}

    case SELECT_MODE:
      return {...state, auto: action.auto}

    case flow(SEARCH_SUBTITLES, 'REQUEST'):
      return {...state, isPanelOpen: true}

    default:
      return state
  }
}
Example #2
0
export default function (state = defaultState, action) {

  var list

  switch (action.type) {
    case flow(SEARCH_SUBTITLES, 'REQUEST'):
      return {...state, isSearching: true}

    case flow(DOWNLOAD_SUBTITLE, 'REQUEST'):
      list = mutateList(state.list, action.params.id, {isDownloading: true})
      return {...state, list}

    case flow(SEARCH_SUBTITLES, 'FAILURE'):
      return {...state, isSearching: false}

    case flow(DOWNLOAD_SUBTITLE, 'FAILURE'):
      list = mutateList(state.list, action.result.id, {isDownloading: false})
      return {...state, list}

    case flow(DOWNLOAD_SUBTITLE, 'SUCCESS'):
      list = mutateList(state.list, action.result.id, {
        downloaded: true,
        isDownloading: false
      })
      return {...state, list}

    case flow(SEARCH_SUBTITLES, 'SUCCESS'):
      return {
        ...state,
        list: [...[action.result], ...state.list],
        cursor: action.result,
        isSearching: false
      }

    default:
      return state
  }
}