Загрузка данных


function getMenuCoords(
  position: DropdownPosition,
  triggerRect: DOMRect,
  anchorRect: DOMRect,
  menuRect: DOMRect,
): Coords {
  const alignedLeft = triggerRect.left;

  if (position === 'top') {
    return {
      top: triggerRect.top - menuRect.height - MENU_GAP,
      left: alignedLeft,
    };
  }

  if (position === 'right') {
    return {
      top: anchorRect.top,
      left: triggerRect.right + MENU_GAP,
    };
  }

  if (position === 'left') {
    return {
      top: anchorRect.top,
      left: triggerRect.left - menuRect.width - MENU_GAP,
    };
  }

  return {
    top: triggerRect.bottom + MENU_GAP,
    left: alignedLeft,
  };
}