export default (getCopyOrCutNode, items, node) => {
  const nodeToCopyOrCut = getCopyOrCutNode();
  const CopyTyp = nodeToCopyOrCut.type;
  const Copynode = nodeToCopyOrCut.value;
  if (node.type.substr(3, 4) === 'x') {
    delete items.InsItem;
    delete items.InsLink;
    delete items.CutItem;
    delete items.CopyItem;
    delete items.spezial;
    delete items.NewItem;
    delete items.ImpItem;
    delete items.ExpItem;
    delete items.DelItem;
    delete items.Empty;
    delete items.ImpModule;
  } else if (node.type.substr(0, 3) === 'TRS') {
    delete items.InsItem;
    delete items.InsLink;
    delete items.CutItem;
    delete items.CopyItem;
    delete items.spezial;
    delete items.NewItem;
    delete items.ImpItem;
    delete items.ExpItem;
    delete items.DelItem;
    delete items.UnDel;
    delete items.ImpModule;
  } else {
    delete items.UnDel;
    delete items.Empty;
  }
  if (node.id.substr(0, 3) === 'AGB') {
    delete items.NewItem;
    delete items.spezial;
    delete items.ImpItem;
    delete items.InsItem;
    delete items.InsLink;
  } else if (
    node.type === 'GRP' ||
    (node.type === 'GRPi' && typeof items.NewItem !== 'undefined')
  ) {
    if (Copynode === '' && typeof items.NewItem !== 'undefined') {
      delete items.InsItem;
      delete items.InsLink;
      delete items.NewItem.submenu.NewBer;
    } else {
      if (
        CopyTyp === 'DYN' ||
        CopyTyp === 'REP' ||
        CopyTyp === 'pdf' ||
        CopyTyp === 'DEX' ||
        CopyTyp === 'LGC' ||
        CopyTyp === 'STT' ||
        CopyTyp === 'INF' ||
        CopyTyp === 'BSW' ||
        CopyTyp === 'html' ||
        CopyTyp === 'xls'
      ) {
        delete items.InsLink;
      } else {
        // alert(" + "+CopyTyp);
      }
    }
  } else if (node.type === 'BER') {
    if (Copynode.substring(0, 3) === 'AGB' || Copynode === '') {
      delete items.InsItem;
      delete items.InsLink;
    }

    if (typeof items.NewItem !== 'undefined') {
      delete items.NewItem.submenu.NewDYN;
      delete items.NewItem.submenu.NewMWT;
      delete items.NewItem.submenu.NewWTG;
      delete items.NewItem.submenu.NewVBG;
      delete items.NewItem.submenu.NewSTR;
      delete items.NewItem.submenu.NewMLD;
      delete items.NewItem.submenu.NewBST;
      delete items.NewItem.submenu.NewSTR;
      delete items.NewItem.submenu.NewSTR;
    }

    if (typeof items.spezial !== 'undefined') {
      delete items.spezial.submenu.NewBEM;
      delete items.spezial.submenu.NewREP;
      delete items.spezial.submenu.NewEXT;
      delete items.spezial.submenu.NewSTT;
      delete items.spezial.submenu.NewRWG;
      delete items.spezial.submenu.NewCST;
      delete items.spezial.submenu.NewLGK;
      delete items.spezial.submenu.NewBSW;
      delete items.spezial.submenu.NewINF;
      delete items.spezial;
    }

    delete items.CutItem;
    delete items.CopyItem;
  } else if (
    node.type === 'REP' ||
    node.type === 'DEX' ||
    node.type === 'pdf' ||
    node.type === 'html' ||
    node.type === 'xls'
  ) {
    delete items.InsItem;
    delete items.InsLink;
    delete items.NewItem;
    delete items.ImpItem;
    delete items.ImpModule;
    if (Copynode === '') {
      delete items.ExpItem;
    }
  } else {
    // alert("TT"+node.type);
  }
  // Additional condition for 'RWG' type node
  if (node.type === 'RWG' || node.type === 'RWGi') {
    delete items.CopyItem;
    delete items.ImpModule;
  }

  return items;
};
