chore: Move referrerHost to appConfig store (#3433)

This commit is contained in:
Pranav Raj S
2021-11-22 15:05:29 +05:30
committed by GitHub
parent 1be7c2d72c
commit 1a8b8f0900
11 changed files with 138 additions and 81 deletions

View File

@@ -1,23 +1,31 @@
import { SET_WIDGET_COLOR } from '../types';
import { SET_REFERRER_HOST, SET_WIDGET_COLOR } from '../types';
const state = {
widgetColor: '',
referrerHost: '',
};
const getters = {
export const getters = {
getWidgetColor: $state => $state.widgetColor,
getReferrerHost: $state => $state.referrerHost,
};
const actions = {
export const actions = {
setWidgetColor({ commit }, data) {
commit(SET_WIDGET_COLOR, data);
},
setReferrerHost({ commit }, referrerHost) {
commit(SET_REFERRER_HOST, referrerHost);
},
};
const mutations = {
export const mutations = {
[SET_WIDGET_COLOR]($state, data) {
$state.widgetColor = data.widgetColor;
},
[SET_REFERRER_HOST]($state, referrerHost) {
$state.referrerHost = referrerHost;
},
};
export default {

View File

@@ -0,0 +1,22 @@
import { actions } from '../../appConfig';
const commit = jest.fn();
describe('#actions', () => {
describe('#setReferrerHost', () => {
it('creates actions properly', () => {
actions.setReferrerHost({ commit }, 'www.chatwoot.com');
expect(commit.mock.calls).toEqual([
['SET_REFERRER_HOST', 'www.chatwoot.com'],
]);
});
});
describe('#setWidgetColor', () => {
it('creates actions properly', () => {
actions.setWidgetColor({ commit }, { widgetColor: '#eaeaea' });
expect(commit.mock.calls).toEqual([
['SET_WIDGET_COLOR', { widgetColor: '#eaeaea' }],
]);
});
});
});

View File

@@ -0,0 +1,16 @@
import { getters } from '../../appConfig';
describe('#getters', () => {
describe('#getWidgetColor', () => {
it('returns correct value', () => {
const state = { widgetColor: '#00bcd4' };
expect(getters.getWidgetColor(state)).toEqual('#00bcd4');
});
});
describe('#getReferrerHost', () => {
it('returns correct value', () => {
const state = { referrerHost: 'www.chatwoot.com' };
expect(getters.getReferrerHost(state)).toEqual('www.chatwoot.com');
});
});
});

View File

@@ -0,0 +1,19 @@
import { mutations } from '../../appConfig';
describe('#mutations', () => {
describe('#SET_REFERRER_HOST', () => {
it('sets referrer host properly', () => {
const state = { referrerHost: '' };
mutations.SET_REFERRER_HOST(state, 'www.chatwoot.com');
expect(state.referrerHost).toEqual('www.chatwoot.com');
});
});
describe('#SET_WIDGET_COLOR', () => {
it('sets widget color properly', () => {
const state = { widgetColor: '' };
mutations.SET_WIDGET_COLOR(state, { widgetColor: '#00bcd4' });
expect(state.widgetColor).toEqual('#00bcd4');
});
});
});

View File

@@ -1,4 +1,6 @@
export const SET_WIDGET_COLOR = 'SET_WIDGET_COLOR';
export const SET_REFERRER_HOST = 'SET_REFERRER_HOST';
export const SET_CONVERSATION_ATTRIBUTES = 'SET_CONVERSATION_ATTRIBUTES';
export const UPDATE_CONVERSATION_ATTRIBUTES = 'UPDATE_CONVERSATION_ATTRIBUTES';
export const CLEAR_CONVERSATION_ATTRIBUTES = 'CLEAR_CONVERSATION_ATTRIBUTES';