* Fix EmojiFormatter failure * Add notification_emails.warning setting default value * Fix list spec failure and add antennas for spec response * Fix domain block spec failure to add kb custom response * Fix SearchQueryTransformer spec failure * Fix Account#matches_display_name spec failure * Fix UpdateStatusService changes mentions spec failure * Fix RuboCop Lint * Ignore brakeman warning * Fix CI failure for ignore brakeman warning * Fix migration failure * Fix README * Fix migration CI failure * Fix some spec failure * Format code for RuboCop lint failure * Fix ESlint failure * Fix haml-lint failure
180 lines
5.9 KiB
JavaScript
180 lines
5.9 KiB
JavaScript
import api from '../api';
|
|
|
|
import { importFetchedAccounts } from './importer';
|
|
|
|
export const ANTENNAS_FETCH_REQUEST = 'ANTENNAS_FETCH_REQUEST';
|
|
export const ANTENNAS_FETCH_SUCCESS = 'ANTENNAS_FETCH_SUCCESS';
|
|
export const ANTENNAS_FETCH_FAIL = 'ANTENNAS_FETCH_FAIL';
|
|
|
|
export const ANTENNA_ACCOUNTS_FETCH_REQUEST = 'ANTENNA_ACCOUNTS_FETCH_REQUEST';
|
|
export const ANTENNA_ACCOUNTS_FETCH_SUCCESS = 'ANTENNA_ACCOUNTS_FETCH_SUCCESS';
|
|
export const ANTENNA_ACCOUNTS_FETCH_FAIL = 'ANTENNA_ACCOUNTS_FETCH_FAIL';
|
|
|
|
export const ANTENNA_EDITOR_ADD_ACCOUNT_REQUEST = 'ANTENNA_EDITOR_ADD_ACCOUNT_REQUEST';
|
|
export const ANTENNA_EDITOR_ADD_ACCOUNT_SUCCESS = 'ANTENNA_EDITOR_ADD_ACCOUNT_SUCCESS';
|
|
export const ANTENNA_EDITOR_ADD_ACCOUNT_FAIL = 'ANTENNA_EDITOR_ADD_ACCOUNT_FAIL';
|
|
|
|
export const ANTENNA_EDITOR_REMOVE_ACCOUNT_REQUEST = 'ANTENNA_EDITOR_REMOVE_ACCOUNT_REQUEST';
|
|
export const ANTENNA_EDITOR_REMOVE_ACCOUNT_SUCCESS = 'ANTENNA_EDITOR_REMOVE_ACCOUNT_SUCCESS';
|
|
export const ANTENNA_EDITOR_REMOVE_ACCOUNT_FAIL = 'ANTENNA_EDITOR_REMOVE_ACCOUNT_FAIL';
|
|
|
|
export const ANTENNA_ADDER_ANTENNAS_FETCH_REQUEST = 'ANTENNA_ADDER_ANTENNAS_FETCH_REQUEST';
|
|
export const ANTENNA_ADDER_ANTENNAS_FETCH_SUCCESS = 'ANTENNA_ADDER_ANTENNAS_FETCH_SUCCESS';
|
|
export const ANTENNA_ADDER_ANTENNAS_FETCH_FAIL = 'ANTENNA_ADDER_ANTENNAS_FETCH_FAIL';
|
|
|
|
export const ANTENNA_ADDER_RESET = 'ANTENNA_ADDER_RESET';
|
|
export const ANTENNA_ADDER_SETUP = 'ANTENNA_ADDER_SETUP';
|
|
|
|
export const fetchAntennas = () => (dispatch, getState) => {
|
|
dispatch(fetchAntennasRequest());
|
|
|
|
api(getState).get('/api/v1/antennas')
|
|
.then(({ data }) => dispatch(fetchAntennasSuccess(data)))
|
|
.catch(err => dispatch(fetchAntennasFail(err)));
|
|
};
|
|
|
|
export const fetchAntennasRequest = () => ({
|
|
type: ANTENNAS_FETCH_REQUEST,
|
|
});
|
|
|
|
export const fetchAntennasSuccess = antennas => ({
|
|
type: ANTENNAS_FETCH_SUCCESS,
|
|
antennas,
|
|
});
|
|
|
|
export const fetchAntennasFail = error => ({
|
|
type: ANTENNAS_FETCH_FAIL,
|
|
error,
|
|
});
|
|
|
|
export const fetchAntennaAccounts = antennaId => (dispatch, getState) => {
|
|
dispatch(fetchAntennaAccountsRequest(antennaId));
|
|
|
|
api(getState).get(`/api/v1/antennas/${antennaId}/accounts`, { params: { limit: 0 } }).then(({ data }) => {
|
|
dispatch(importFetchedAccounts(data));
|
|
dispatch(fetchAntennaAccountsSuccess(antennaId, data));
|
|
}).catch(err => dispatch(fetchAntennaAccountsFail(antennaId, err)));
|
|
};
|
|
|
|
export const fetchAntennaAccountsRequest = id => ({
|
|
type: ANTENNA_ACCOUNTS_FETCH_REQUEST,
|
|
id,
|
|
});
|
|
|
|
export const fetchAntennaAccountsSuccess = (id, accounts, next) => ({
|
|
type: ANTENNA_ACCOUNTS_FETCH_SUCCESS,
|
|
id,
|
|
accounts,
|
|
next,
|
|
});
|
|
|
|
export const fetchAntennaAccountsFail = (id, error) => ({
|
|
type: ANTENNA_ACCOUNTS_FETCH_FAIL,
|
|
id,
|
|
error,
|
|
});
|
|
|
|
export const addAccountToAntenna = (antennaId, accountId) => (dispatch, getState) => {
|
|
dispatch(addAccountToAntennaRequest(antennaId, accountId));
|
|
|
|
api(getState).post(`/api/v1/antennas/${antennaId}/accounts`, { account_ids: [accountId] })
|
|
.then(() => dispatch(addAccountToAntennaSuccess(antennaId, accountId)))
|
|
.catch(err => dispatch(addAccountToAntennaFail(antennaId, accountId, err)));
|
|
};
|
|
|
|
export const addAccountToAntennaRequest = (antennaId, accountId) => ({
|
|
type: ANTENNA_EDITOR_ADD_ACCOUNT_REQUEST,
|
|
antennaId,
|
|
accountId,
|
|
});
|
|
|
|
export const addAccountToAntennaSuccess = (antennaId, accountId) => ({
|
|
type: ANTENNA_EDITOR_ADD_ACCOUNT_SUCCESS,
|
|
antennaId,
|
|
accountId,
|
|
});
|
|
|
|
export const addAccountToAntennaFail = (antennaId, accountId, error) => ({
|
|
type: ANTENNA_EDITOR_ADD_ACCOUNT_FAIL,
|
|
antennaId,
|
|
accountId,
|
|
error,
|
|
});
|
|
|
|
export const removeAccountFromAntennaEditor = accountId => (dispatch, getState) => {
|
|
dispatch(removeAccountFromAntenna(getState().getIn(['antennaEditor', 'antennaId']), accountId));
|
|
};
|
|
|
|
export const removeAccountFromAntenna = (antennaId, accountId) => (dispatch, getState) => {
|
|
dispatch(removeAccountFromAntennaRequest(antennaId, accountId));
|
|
|
|
api(getState).delete(`/api/v1/antennas/${antennaId}/accounts`, { params: { account_ids: [accountId] } })
|
|
.then(() => dispatch(removeAccountFromAntennaSuccess(antennaId, accountId)))
|
|
.catch(err => dispatch(removeAccountFromAntennaFail(antennaId, accountId, err)));
|
|
};
|
|
|
|
export const removeAccountFromAntennaRequest = (antennaId, accountId) => ({
|
|
type: ANTENNA_EDITOR_REMOVE_ACCOUNT_REQUEST,
|
|
antennaId,
|
|
accountId,
|
|
});
|
|
|
|
export const removeAccountFromAntennaSuccess = (antennaId, accountId) => ({
|
|
type: ANTENNA_EDITOR_REMOVE_ACCOUNT_SUCCESS,
|
|
antennaId,
|
|
accountId,
|
|
});
|
|
|
|
export const removeAccountFromAntennaFail = (antennaId, accountId, error) => ({
|
|
type: ANTENNA_EDITOR_REMOVE_ACCOUNT_FAIL,
|
|
antennaId,
|
|
accountId,
|
|
error,
|
|
});
|
|
|
|
export const addToAntennaAdder = antennaId => (dispatch, getState) => {
|
|
dispatch(addAccountToAntenna(antennaId, getState().getIn(['antennaAdder', 'accountId'])));
|
|
};
|
|
|
|
export const removeFromAntennaAdder = antennaId => (dispatch, getState) => {
|
|
dispatch(removeAccountFromAntenna(antennaId, getState().getIn(['antennaAdder', 'accountId'])));
|
|
};
|
|
|
|
export const fetchAccountAntennas = accountId => (dispatch, getState) => {
|
|
dispatch(fetchAccountAntennasRequest(accountId));
|
|
|
|
api(getState).get(`/api/v1/accounts/${accountId}/antennas`)
|
|
.then(({ data }) => dispatch(fetchAccountAntennasSuccess(accountId, data)))
|
|
.catch(err => dispatch(fetchAccountAntennasFail(accountId, err)));
|
|
};
|
|
|
|
export const fetchAccountAntennasRequest = id => ({
|
|
type: ANTENNA_ADDER_ANTENNAS_FETCH_REQUEST,
|
|
id,
|
|
});
|
|
|
|
export const fetchAccountAntennasSuccess = (id, antennas) => ({
|
|
type: ANTENNA_ADDER_ANTENNAS_FETCH_SUCCESS,
|
|
id,
|
|
antennas,
|
|
});
|
|
|
|
export const fetchAccountAntennasFail = (id, err) => ({
|
|
type: ANTENNA_ADDER_ANTENNAS_FETCH_FAIL,
|
|
id,
|
|
err,
|
|
});
|
|
|
|
export const resetAntennaAdder = () => ({
|
|
type: ANTENNA_ADDER_RESET,
|
|
});
|
|
|
|
export const setupAntennaAdder = accountId => (dispatch, getState) => {
|
|
dispatch({
|
|
type: ANTENNA_ADDER_SETUP,
|
|
account: getState().getIn(['accounts', accountId]),
|
|
});
|
|
dispatch(fetchAntennas());
|
|
dispatch(fetchAccountAntennas(accountId));
|
|
};
|
|
|