chore: Add inbox id in get campaigns API (#2278)
This commit is contained in:
parent
60177ef418
commit
18cea3b0ac
6 changed files with 31 additions and 7 deletions
|
@ -9,6 +9,10 @@ class Inboxes extends ApiClient {
|
|||
getAssignableAgents(inboxId) {
|
||||
return axios.get(`${this.url}/${inboxId}/assignable_agents`);
|
||||
}
|
||||
|
||||
getCampaigns(inboxId) {
|
||||
return axios.get(`${this.url}/${inboxId}/campaigns`);
|
||||
}
|
||||
}
|
||||
|
||||
export default new Inboxes();
|
||||
|
|
13
app/javascript/dashboard/api/specs/campaign.spec.js
Normal file
13
app/javascript/dashboard/api/specs/campaign.spec.js
Normal file
|
@ -0,0 +1,13 @@
|
|||
import campaigns from '../campaigns';
|
||||
import ApiClient from '../ApiClient';
|
||||
|
||||
describe('#CampaignAPI', () => {
|
||||
it('creates correct instance', () => {
|
||||
expect(campaigns).toBeInstanceOf(ApiClient);
|
||||
expect(campaigns).toHaveProperty('get');
|
||||
expect(campaigns).toHaveProperty('show');
|
||||
expect(campaigns).toHaveProperty('create');
|
||||
expect(campaigns).toHaveProperty('update');
|
||||
expect(campaigns).toHaveProperty('delete');
|
||||
});
|
||||
});
|
|
@ -335,6 +335,10 @@ export default {
|
|||
if (this.isAWebWidgetInbox) {
|
||||
return [
|
||||
...visibleToAllChannelTabs,
|
||||
{
|
||||
key: 'campaign',
|
||||
name: this.$t('INBOX_MGMT.TABS.CAMPAIGN'),
|
||||
},
|
||||
{
|
||||
key: 'preChatForm',
|
||||
name: this.$t('INBOX_MGMT.TABS.PRE_CHAT_FORM'),
|
||||
|
@ -397,7 +401,7 @@ export default {
|
|||
},
|
||||
toggleInput(selected, current) {
|
||||
if (selected.includes(current)) {
|
||||
const newSelectedFlags = selected.filter((flag) => flag !== current);
|
||||
const newSelectedFlags = selected.filter(flag => flag !== current);
|
||||
return newSelectedFlags;
|
||||
}
|
||||
return [...selected, current];
|
||||
|
@ -438,7 +442,7 @@ export default {
|
|||
}
|
||||
},
|
||||
async updateAgents() {
|
||||
const agentList = this.selectedAgents.map((el) => el.id);
|
||||
const agentList = this.selectedAgents.map(el => el.id);
|
||||
this.isAgentListUpdating = true;
|
||||
try {
|
||||
await this.$store.dispatch('inboxMembers/create', {
|
||||
|
|
|
@ -62,7 +62,9 @@ export default {
|
|||
},
|
||||
},
|
||||
mounted() {
|
||||
this.$store.dispatch('campaigns/get');
|
||||
this.$store.dispatch('campaigns/get', {
|
||||
inboxId: this.$route.params.inboxId,
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
openAddPopup() {
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
import * as MutationHelpers from 'shared/helpers/vuex/mutationHelpers';
|
||||
import types from '../mutation-types';
|
||||
import CampaignsAPI from '../../api/campaigns';
|
||||
import InboxesAPI from '../../api/inboxes';
|
||||
|
||||
export const state = {
|
||||
records: [],
|
||||
|
@ -20,10 +21,10 @@ export const getters = {
|
|||
};
|
||||
|
||||
export const actions = {
|
||||
get: async function getCampaigns({ commit }) {
|
||||
get: async function getCampaigns({ commit }, { inboxId }) {
|
||||
commit(types.SET_CAMPAIGN_UI_FLAG, { isFetching: true });
|
||||
try {
|
||||
const response = await CampaignsAPI.get();
|
||||
const response = await InboxesAPI.getCampaigns(inboxId);
|
||||
commit(types.SET_CAMPAIGNS, response.data);
|
||||
} catch (error) {
|
||||
// Ignore error
|
||||
|
|
|
@ -11,7 +11,7 @@ describe('#actions', () => {
|
|||
describe('#get', () => {
|
||||
it('sends correct actions if API is success', async () => {
|
||||
axios.get.mockResolvedValue({ data: campaignList });
|
||||
await actions.get({ commit });
|
||||
await actions.get({ commit }, { inboxId: 23 });
|
||||
expect(commit.mock.calls).toEqual([
|
||||
[types.default.SET_CAMPAIGN_UI_FLAG, { isFetching: true }],
|
||||
[types.default.SET_CAMPAIGNS, campaignList],
|
||||
|
@ -20,7 +20,7 @@ describe('#actions', () => {
|
|||
});
|
||||
it('sends correct actions if API is error', async () => {
|
||||
axios.get.mockRejectedValue({ message: 'Incorrect header' });
|
||||
await actions.get({ commit });
|
||||
await actions.get({ commit }, { inboxId: 23 });
|
||||
expect(commit.mock.calls).toEqual([
|
||||
[types.default.SET_CAMPAIGN_UI_FLAG, { isFetching: true }],
|
||||
[types.default.SET_CAMPAIGN_UI_FLAG, { isFetching: false }],
|
||||
|
|
Loading…
Reference in a new issue