import { useTranslation } from "react-i18next"; import ArrowUpIcon from "#/icons/u-arrow-up.svg?react"; import { cn, getGitPushPrompt } from "#/utils/utils"; import { gitControlBarActionButtonClassName, gitControlBarActionIconColor, gitControlBarActionLabelClassName, } from "#/utils/git-control-bar-classes"; import { I18nKey } from "#/i18n/declaration"; import { Provider } from "#/types/settings"; import { useTracking } from "#/hooks/use-tracking"; interface GitControlBarPushButtonProps { onSuggestionsClick: (value: string) => void; hasRepository: boolean; providerTokensReady: boolean; currentGitProvider: Provider; isConversationReady?: boolean; } export function GitControlBarPushButton({ onSuggestionsClick, hasRepository, providerTokensReady, currentGitProvider, isConversationReady = true, }: GitControlBarPushButtonProps) { const { t } = useTranslation("openhands"); const { trackPushButtonClick } = useTracking(); const isButtonEnabled = providerTokensReady && hasRepository && isConversationReady; const handlePushClick = () => { trackPushButtonClick(); onSuggestionsClick(getGitPushPrompt(currentGitProvider)); }; return ( ); }