HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //home/arjun/projects/buyercall/buyercall/assets/vue/widgets/Channels/store/root/actions.js
import _ from 'lodash';
import moment from 'moment';

import {
  ROOT_ACTION_GET_AGENTS,
  ROOT_ACTION_ADD_NEW_SOURCE,
  ROOT_ACTION_GET_SOURCES,
  ROOT_ACTION_SELECT_SOURCE,
  ROOT_ACTION_SET_WINDOW_WIDTH,
  ROOT_ACTION_RESET_SUCCESS_AND_ERROR_MESSAGE,
  ROOT_MUTATION_SET_AGENTS,
  ROOT_MUTATION_SET_AGENTS_LOADING,
  ROOT_MUTATION_SET_SOURCES_LOADING,
  ROOT_MUTATION_SET_ERROR_MESSAGE,
  ROOT_MUTATION_SET_SUCCESS_MESSAGE,
  ROOT_MUTATION_SET_SOURCES,
  ROOT_MUTATION_ADD_NEW_SOURCE,
  ROOT_MUTATION_SELECT_SOURCE,
  ROOT_MUTATION_SET_WINDOW_WIDTH,
  ROOT_ACTION_SET_SUCCESS_MESSAGE,
  ROOT_ACTION_SET_ERROR_MESSAGE,
  ROOT_ACTION_SET_BREADCRUMB,
  ROOT_MUTATION_SET_BREADCRUMB,
  SOURCE_MUTATION_RESET_SELECTED_CHANNEL,
  PHONEWIDGET_MUTATION_RESET_PHONE_WIDGET,
  SOURCE_MUTATION_RESET,
} from '../../constants';

import SourceService from '../../../../service/source';

export default {
  async [ROOT_ACTION_GET_SOURCES]({ commit }) {
    commit(ROOT_MUTATION_SET_SOURCES_LOADING, true);
    const {
      data: { data, message, success },
    } = await SourceService.getSources();
    if (!success) {
      commit(ROOT_MUTATION_SET_ERROR_MESSAGE, message);
    } else {
      commit(
        ROOT_MUTATION_SET_SOURCES,
        _.map(data, d => ({
          ...d,
          createdOn: moment(d.created_at).format('MMM Do'),
          updatedOn: moment(d.updated_at).format('MMM Do'),
        })),
      );
    }
    commit(ROOT_MUTATION_SET_SOURCES_LOADING, false);
  },
  async [ROOT_ACTION_GET_AGENTS]({ commit }) {
    commit(ROOT_MUTATION_SET_AGENTS_LOADING, true);
    const {
      data: { data, message, success },
    } = await SourceService.getAgents();
    if (!success) {
      commit(ROOT_MUTATION_SET_ERROR_MESSAGE, message);
    } else {
      commit(ROOT_MUTATION_SET_AGENTS, data);
    }
    commit(ROOT_MUTATION_SET_AGENTS_LOADING, false);
  },
  [ROOT_ACTION_ADD_NEW_SOURCE]({ commit }) {
    commit(ROOT_MUTATION_ADD_NEW_SOURCE, true);
  },
  [ROOT_ACTION_SELECT_SOURCE]({ commit }, payload) {
    commit(ROOT_MUTATION_SELECT_SOURCE, payload);
  },
  [ROOT_ACTION_SET_WINDOW_WIDTH]({ commit }, payload) {
    commit(ROOT_MUTATION_SET_WINDOW_WIDTH, payload);
  },
  [ROOT_ACTION_SET_BREADCRUMB]({ commit }, payload) {
    switch (payload) {
      case 'source-list':
        //reset source
        commit(`source/${SOURCE_MUTATION_RESET}`, false, {
          root: true,
        });
        commit(ROOT_MUTATION_SELECT_SOURCE, null);

        // reset phone widget
        commit(
          `phonewidget/${PHONEWIDGET_MUTATION_RESET_PHONE_WIDGET}`,
          false,
          {
            root: true,
          },
        );
        break;
      case 'source-add':
        //reset source
        commit(`source/${SOURCE_MUTATION_RESET}`, false, {
          root: true,
        });
        // reset phone widget
        commit(
          `phonewidget/${PHONEWIDGET_MUTATION_RESET_PHONE_WIDGET}`,
          false,
          {
            root: true,
          },
        );
        commit(ROOT_MUTATION_SELECT_SOURCE, null);
        break;
      case 'source-edit':
        // reset phone widget
        commit(
          `phonewidget/${PHONEWIDGET_MUTATION_RESET_PHONE_WIDGET}`,
          false,
          {
            root: true,
          },
        );
        break;
    }

    commit(ROOT_MUTATION_SET_BREADCRUMB, payload);
  },
  [ROOT_ACTION_RESET_SUCCESS_AND_ERROR_MESSAGE]({ commit }) {
    commit(ROOT_MUTATION_SET_ERROR_MESSAGE, null);
    commit(ROOT_MUTATION_SET_SUCCESS_MESSAGE, null);
  },
  [ROOT_ACTION_SET_SUCCESS_MESSAGE]({ commit }, payload) {
    commit(ROOT_MUTATION_SET_SUCCESS_MESSAGE, payload);
  },
  [ROOT_ACTION_SET_ERROR_MESSAGE]({ commit }, payload) {
    commit(ROOT_MUTATION_SET_ERROR_MESSAGE, payload);
  },
};