您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

reducer.js 1.2KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /* @flow */
  2. import { assign, ReducerRegistry } from '../base/redux';
  3. import {
  4. CANCEL_LOGIN,
  5. STOP_WAIT_FOR_OWNER,
  6. UPGRADE_ROLE_FINISHED,
  7. UPGRADE_ROLE_LOGIN_OK,
  8. UPGRADE_ROLE_STARTED,
  9. WAIT_FOR_OWNER
  10. } from './actionTypes';
  11. ReducerRegistry.register('features/authentication', (state = {}, action) => {
  12. switch (action.type) {
  13. case CANCEL_LOGIN:
  14. return assign(state, {
  15. upgradeRoleError: undefined,
  16. upgradeRoleInProgress: undefined,
  17. upgradeRoleLoginOk: false
  18. });
  19. case STOP_WAIT_FOR_OWNER:
  20. return assign(state, {
  21. upgradeRoleError: undefined,
  22. waitForOwnerTimeoutID: undefined
  23. });
  24. case UPGRADE_ROLE_FINISHED:
  25. case UPGRADE_ROLE_STARTED:
  26. return assign(state, {
  27. upgradeRoleError: action.error,
  28. upgradeRoleInProgress: action.thenableWithCancel,
  29. upgradeRoleLoginOk: false
  30. });
  31. case UPGRADE_ROLE_LOGIN_OK:
  32. return assign(state, {
  33. upgradeRoleLoginOk: true
  34. });
  35. case WAIT_FOR_OWNER:
  36. return assign(state, {
  37. waitForOwnerTimeoutID: action.waitForOwnerTimeoutID
  38. });
  39. }
  40. return state;
  41. });