|
|
@ -1,4 +1,5 @@
|
|
|
|
import api from 'flavours/glitch/util/api';
|
|
|
|
import api from 'flavours/glitch/util/api';
|
|
|
|
|
|
|
|
import { CancelToken } from 'axios';
|
|
|
|
import { throttle } from 'lodash';
|
|
|
|
import { throttle } from 'lodash';
|
|
|
|
import { search as emojiSearch } from 'flavours/glitch/util/emoji/emoji_mart_search_light';
|
|
|
|
import { search as emojiSearch } from 'flavours/glitch/util/emoji/emoji_mart_search_light';
|
|
|
|
import { useEmoji } from './emojis';
|
|
|
|
import { useEmoji } from './emojis';
|
|
|
@ -11,6 +12,8 @@ import {
|
|
|
|
refreshDirectTimeline,
|
|
|
|
refreshDirectTimeline,
|
|
|
|
} from './timelines';
|
|
|
|
} from './timelines';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
let cancelFetchComposeSuggestionsAccounts;
|
|
|
|
|
|
|
|
|
|
|
|
export const COMPOSE_CHANGE = 'COMPOSE_CHANGE';
|
|
|
|
export const COMPOSE_CHANGE = 'COMPOSE_CHANGE';
|
|
|
|
export const COMPOSE_CYCLE_ELEFRIEND = 'COMPOSE_CYCLE_ELEFRIEND';
|
|
|
|
export const COMPOSE_CYCLE_ELEFRIEND = 'COMPOSE_CYCLE_ELEFRIEND';
|
|
|
|
export const COMPOSE_SUBMIT_REQUEST = 'COMPOSE_SUBMIT_REQUEST';
|
|
|
|
export const COMPOSE_SUBMIT_REQUEST = 'COMPOSE_SUBMIT_REQUEST';
|
|
|
@ -278,13 +281,22 @@ export function undoUploadCompose(media_id) {
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
export function clearComposeSuggestions() {
|
|
|
|
export function clearComposeSuggestions() {
|
|
|
|
|
|
|
|
if (cancelFetchComposeSuggestionsAccounts) {
|
|
|
|
|
|
|
|
cancelFetchComposeSuggestionsAccounts();
|
|
|
|
|
|
|
|
}
|
|
|
|
return {
|
|
|
|
return {
|
|
|
|
type: COMPOSE_SUGGESTIONS_CLEAR,
|
|
|
|
type: COMPOSE_SUGGESTIONS_CLEAR,
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
const fetchComposeSuggestionsAccounts = throttle((dispatch, getState, token) => {
|
|
|
|
const fetchComposeSuggestionsAccounts = throttle((dispatch, getState, token) => {
|
|
|
|
|
|
|
|
if (cancelFetchComposeSuggestionsAccounts) {
|
|
|
|
|
|
|
|
cancelFetchComposeSuggestionsAccounts();
|
|
|
|
|
|
|
|
}
|
|
|
|
api(getState).get('/api/v1/accounts/search', {
|
|
|
|
api(getState).get('/api/v1/accounts/search', {
|
|
|
|
|
|
|
|
cancelToken: new CancelToken(cancel => {
|
|
|
|
|
|
|
|
cancelFetchComposeSuggestionsAccounts = cancel;
|
|
|
|
|
|
|
|
}),
|
|
|
|
params: {
|
|
|
|
params: {
|
|
|
|
q: token.slice(1),
|
|
|
|
q: token.slice(1),
|
|
|
|
resolve: false,
|
|
|
|
resolve: false,
|
|
|
|