chore: Change the conversation bot status to pending (#2677)

fixes: #2649
This commit is contained in:
Sojan Jose
2021-07-21 22:02:43 +05:30
committed by GitHub
parent a0886d37bc
commit a7ca55c080
22 changed files with 87 additions and 54 deletions

View File

@@ -24,7 +24,7 @@
{{ this.$t('CONVERSATION.HEADER.REOPEN_ACTION') }}
</woot-button>
<woot-button
v-else-if="isBot"
v-else-if="isPending"
class-names="resolve"
color-scheme="primary"
icon="ion-person"
@@ -48,12 +48,12 @@
class="dropdown-pane dropdown-pane--open"
>
<woot-dropdown-menu>
<woot-dropdown-item v-if="!isBot">
<woot-dropdown-item v-if="!isPending">
<woot-button
variant="clear"
@click="() => toggleStatus(STATUS_TYPE.BOT)"
@click="() => toggleStatus(STATUS_TYPE.PENDING)"
>
{{ this.$t('CONVERSATION.RESOLVE_DROPDOWN.OPEN_BOT') }}
{{ this.$t('CONVERSATION.RESOLVE_DROPDOWN.MARK_PENDING') }}
</woot-button>
</woot-dropdown-item>
</woot-dropdown-menu>
@@ -91,20 +91,20 @@ export default {
isOpen() {
return this.currentChat.status === wootConstants.STATUS_TYPE.OPEN;
},
isBot() {
return this.currentChat.status === wootConstants.STATUS_TYPE.BOT;
isPending() {
return this.currentChat.status === wootConstants.STATUS_TYPE.PENDING;
},
isResolved() {
return this.currentChat.status === wootConstants.STATUS_TYPE.RESOLVED;
},
buttonClass() {
if (this.isBot) return 'primary';
if (this.isPending) return 'primary';
if (this.isOpen) return 'success';
if (this.isResolved) return 'warning';
return '';
},
showDropDown() {
return !this.isBot;
return !this.isPending;
},
},
methods: {

View File

@@ -8,7 +8,7 @@ export default {
STATUS_TYPE: {
OPEN: 'open',
RESOLVED: 'resolved',
BOT: 'bot',
PENDING: 'pending',
},
};
export const DEFAULT_REDIRECT_URL = '/app/';

View File

@@ -47,8 +47,8 @@
"VALUE": "resolved"
},
{
"TEXT": "Bot",
"VALUE": "bot"
"TEXT": "Pending",
"VALUE": "pending"
}
],
"ATTACHMENTS": {

View File

@@ -41,7 +41,7 @@
"DETAILS": "details"
},
"RESOLVE_DROPDOWN": {
"OPEN_BOT": "Open with bot"
"MARK_PENDING": "Mark as pending"
},
"FOOTER": {
"MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.",

View File

@@ -7,10 +7,10 @@ jest.mock('widget/helpers/axios');
describe('#actions', () => {
describe('#get attributes', () => {
it('sends mutation if api is success', async () => {
API.get.mockResolvedValue({ data: { id: 1, status: 'bot' } });
API.get.mockResolvedValue({ data: { id: 1, status: 'pending' } });
await actions.getAttributes({ commit });
expect(commit.mock.calls).toEqual([
['SET_CONVERSATION_ATTRIBUTES', { id: 1, status: 'bot' }],
['SET_CONVERSATION_ATTRIBUTES', { id: 1, status: 'pending' }],
['conversation/setMetaUserLastSeenAt', undefined, { root: true }],
]);
});
@@ -23,10 +23,10 @@ describe('#actions', () => {
describe('#update attributes', () => {
it('sends correct mutations', () => {
actions.update({ commit }, { id: 1, status: 'bot' });
actions.update({ commit }, { id: 1, status: 'pending' });
expect(commit).toBeCalledWith('UPDATE_CONVERSATION_ATTRIBUTES', {
id: 1,
status: 'bot',
status: 'pending',
});
});
});

View File

@@ -4,11 +4,11 @@ describe('#getters', () => {
it('getConversationParams', () => {
const state = {
id: 1,
status: 'bot',
status: 'pending',
};
expect(getters.getConversationParams(state)).toEqual({
id: 1,
status: 'bot',
status: 'pending',
});
});
});

View File

@@ -14,7 +14,7 @@ describe('#mutations', () => {
describe('#UPDATE_CONVERSATION_ATTRIBUTES', () => {
it('update status if it is same conversation', () => {
const state = { id: 1, status: 'bot' };
const state = { id: 1, status: 'pending' };
mutations.UPDATE_CONVERSATION_ATTRIBUTES(state, {
id: 1,
status: 'open',
@@ -22,12 +22,12 @@ describe('#mutations', () => {
expect(state).toEqual({ id: 1, status: 'open' });
});
it('doesnot update status if it is not the same conversation', () => {
const state = { id: 1, status: 'bot' };
const state = { id: 1, status: 'pending' };
mutations.UPDATE_CONVERSATION_ATTRIBUTES(state, {
id: 2,
status: 'open',
});
expect(state).toEqual({ id: 1, status: 'bot' });
expect(state).toEqual({ id: 1, status: 'pending' });
});
});