|
|
|
@ -56,6 +56,7 @@ const initialState = ImmutableMap({ |
|
|
|
|
privacy: null, |
|
|
|
|
text: '', |
|
|
|
|
focusDate: null, |
|
|
|
|
caretPosition: null, |
|
|
|
|
preselectDate: null, |
|
|
|
|
in_reply_to: null, |
|
|
|
|
is_submitting: false, |
|
|
|
@ -148,6 +149,7 @@ function continueThread (state, status) { |
|
|
|
|
map.update('media_attachments', list => list.clear()); |
|
|
|
|
map.set('idempotencyKey', uuid()); |
|
|
|
|
map.set('focusDate', new Date()); |
|
|
|
|
map.set('caretPosition', null); |
|
|
|
|
map.set('preselectDate', new Date()); |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
@ -159,7 +161,6 @@ function appendMedia(state, media) { |
|
|
|
|
map.update('media_attachments', list => list.push(media)); |
|
|
|
|
map.set('is_uploading', false); |
|
|
|
|
map.set('resetFileKey', Math.floor((Math.random() * 0x10000))); |
|
|
|
|
map.set('focusDate', new Date()); |
|
|
|
|
map.set('idempotencyKey', uuid()); |
|
|
|
|
|
|
|
|
|
if (prevSize === 0 && (state.get('default_sensitive') || state.get('spoiler'))) { |
|
|
|
@ -187,6 +188,7 @@ const insertSuggestion = (state, position, token, completion) => { |
|
|
|
|
map.set('suggestion_token', null); |
|
|
|
|
map.update('suggestions', ImmutableList(), list => list.clear()); |
|
|
|
|
map.set('focusDate', new Date()); |
|
|
|
|
map.set('caretPosition', position + completion.length + 1); |
|
|
|
|
map.set('idempotencyKey', uuid()); |
|
|
|
|
}); |
|
|
|
|
}; |
|
|
|
@ -197,6 +199,7 @@ const insertEmoji = (state, position, emojiData) => { |
|
|
|
|
return state.withMutations(map => { |
|
|
|
|
map.update('text', oldText => `${oldText.slice(0, position)}${emoji}\u200B${oldText.slice(position)}`); |
|
|
|
|
map.set('focusDate', new Date()); |
|
|
|
|
map.set('caretPosition', position + emoji.length + 1); |
|
|
|
|
map.set('idempotencyKey', uuid()); |
|
|
|
|
}); |
|
|
|
|
}; |
|
|
|
@ -278,6 +281,7 @@ export default function compose(state = initialState, action) { |
|
|
|
|
map => map.merge(new ImmutableMap({ do_not_federate: /👁\ufe0f?\u200b?(?:<\/p>)?$/.test(action.status.get('content')) })) |
|
|
|
|
); |
|
|
|
|
map.set('focusDate', new Date()); |
|
|
|
|
map.set('caretPosition', null); |
|
|
|
|
map.set('preselectDate', new Date()); |
|
|
|
|
map.set('idempotencyKey', uuid()); |
|
|
|
|
|
|
|
|
@ -325,6 +329,7 @@ export default function compose(state = initialState, action) { |
|
|
|
|
return state.withMutations(map => { |
|
|
|
|
map.update('text', text => [text.trim(), `@${action.account.get('acct')} `].filter((str) => str.length !== 0).join(' ')); |
|
|
|
|
map.set('focusDate', new Date()); |
|
|
|
|
map.set('caretPosition', null); |
|
|
|
|
map.set('idempotencyKey', uuid()); |
|
|
|
|
}); |
|
|
|
|
case COMPOSE_DIRECT: |
|
|
|
@ -332,6 +337,7 @@ export default function compose(state = initialState, action) { |
|
|
|
|
map.update('text', text => [text.trim(), `@${action.account.get('acct')} `].filter((str) => str.length !== 0).join(' ')); |
|
|
|
|
map.set('privacy', 'direct'); |
|
|
|
|
map.set('focusDate', new Date()); |
|
|
|
|
map.set('caretPosition', null); |
|
|
|
|
map.set('idempotencyKey', uuid()); |
|
|
|
|
}); |
|
|
|
|
case COMPOSE_SUGGESTIONS_CLEAR: |
|
|
|
|