import { api } from 'src/boot/axios';
import { ActionTree } from 'vuex';
import { run } from '../helpers';
import { SeguimientoQueryParams, SeguimientoState } from './SeguimientoState';

export const actions: ActionTree<SeguimientoState, unknown> = {
  save: async (_, payload) => {
    return await api.post('seguimiento', payload);
  },
  getList: async ({ state }, queryParams: SeguimientoQueryParams) => {
    state.loading = true;
    state.queryParams = queryParams;
    return run(
      api.get('seguimiento', {
        params: queryParams,
      })
    )
      .then(({ items, count }) => {
        if (!items) return { items: [], count: 0 };
        return { items, count };
      })
      .finally(() => (state.loading = false));
  },
};
