import { MutationTree } from 'vuex';
import { DraggablesTypes, draggableElement } from './DraggablesTypes';

export const mutations: MutationTree<DraggablesTypes> = {
  setPosition: (state, value: draggableElement) => {
    const element = state.elements.find(e => e.name == value.name);
    if (element) {
      element.position = value.position;
    } else {
      state.elements.push(value)
    }
  },
  removeElement(state, name: string) {
    const index = state.elements.findIndex(e => e.name == name);
    if (index >= 0)
      state.elements.splice(index, 1);
  },
  setElement: (state, value: draggableElement) => {
    const element = state.elements.find(e => e.name == value.name);
    if (!element)
      state.elements.push(value)
  },
}
