|
|
@ -1,5 +1,6 @@ |
|
|
|
import * as constants from '../actions/compose'; |
|
|
|
import * as constants from '../actions/compose'; |
|
|
|
import Immutable from 'immutable'; |
|
|
|
import { TIMELINE_DELETE } from '../actions/timelines'; |
|
|
|
|
|
|
|
import Immutable from 'immutable'; |
|
|
|
|
|
|
|
|
|
|
|
const initialState = Immutable.Map({ |
|
|
|
const initialState = Immutable.Map({ |
|
|
|
text: '', |
|
|
|
text: '', |
|
|
@ -13,7 +14,8 @@ export default function compose(state = initialState, action) { |
|
|
|
return state.set('text', action.text); |
|
|
|
return state.set('text', action.text); |
|
|
|
case constants.COMPOSE_REPLY: |
|
|
|
case constants.COMPOSE_REPLY: |
|
|
|
return state.withMutations(map => { |
|
|
|
return state.withMutations(map => { |
|
|
|
map.set('in_reply_to', action.payload).set('text', `@${action.payload.getIn(['account', 'acct'])} `); |
|
|
|
map.set('in_reply_to', action.status.get('id')); |
|
|
|
|
|
|
|
map.set('text', `@${action.status.getIn(['account', 'acct'])} `); |
|
|
|
}); |
|
|
|
}); |
|
|
|
case constants.COMPOSE_REPLY_CANCEL: |
|
|
|
case constants.COMPOSE_REPLY_CANCEL: |
|
|
|
return state.withMutations(map => { |
|
|
|
return state.withMutations(map => { |
|
|
@ -27,6 +29,12 @@ export default function compose(state = initialState, action) { |
|
|
|
}); |
|
|
|
}); |
|
|
|
case constants.COMPOSE_SUBMIT_FAIL: |
|
|
|
case constants.COMPOSE_SUBMIT_FAIL: |
|
|
|
return state.set('is_submitting', false); |
|
|
|
return state.set('is_submitting', false); |
|
|
|
|
|
|
|
case TIMELINE_DELETE: |
|
|
|
|
|
|
|
if (action.id === state.get('in_reply_to')) { |
|
|
|
|
|
|
|
return state.set('in_reply_to', null); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
return state; |
|
|
|
|
|
|
|
} |
|
|
|
default: |
|
|
|
default: |
|
|
|
return state; |
|
|
|
return state; |
|
|
|
} |
|
|
|
} |
|
|
|