Подтверждение удаления
Сделай компонент с кнопкой «Удалить проект». По клику открывается окно подтверждения с заголовком «Удалить проект?», текстом о том, что действие необратимо, и двумя кнопками: отмена и подтверждение удаления. Подтверждение вызывает переданный колбэк onConfirm.
confirm-delete__docs__claude-code__claude-opus-5__1 · 23.09.2026, 20:16:23 мск
Проверки пройдены
Доки · claude-opus-5 · Claude CodeКонтекст до задачи~22 702
Токенов на прогон47 847
Цена$0.261
Ошибок компилятора0
Первый вызов модели получил 47 356 токенов входа, включая системный промпт Claude Code. Контекст до задачи — оценка по длине текста, для русского текста она занижает число токенов в полтора-два раза.
Компилятор
Ошибок нет: все компоненты и пропсы существуют.
Линтер и покрытие
Замечаний нет.
Компоненты библиотеки
JxButton, JxModal
Ожидались JxModal, JxButton · покрытие 100%
Доки (llms-full.txt, ~22548)
Вход 2 · выход 491 · из кэша 8 233 · в кэш 39 121 · 7 с
Рендер
Код компонента
tsx42 строки
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
import { useState } from 'react';
import { JxButton, JxModal } from '@jinx-ui/react';
interface DeleteProjectButtonProps {
projectName?: string;
onConfirm: () => void;
}
export default function DeleteProjectButton({ projectName, onConfirm }: DeleteProjectButtonProps) {
const [confirmOpen, setConfirmOpen] = useState(false);
const confirm = () => {
setConfirmOpen(false);
onConfirm();
};
return (
<>
<JxButton variant="danger" onClick={() => setConfirmOpen(true)}>
Удалить проект
</JxButton>
<JxModal
open={confirmOpen}
onOpenChange={setConfirmOpen}
intent="danger"
title="Удалить проект?"
message={
projectName
? `Проект «${projectName}» и все его данные будут удалены безвозвратно. Действие нельзя отменить.`
: 'Проект и все его данные будут удалены безвозвратно. Действие нельзя отменить.'
}
>
<JxButton variant="ghost" onClick={() => setConfirmOpen(false)}>
Отмена
</JxButton>
<JxButton variant="danger" onClick={confirm}>
Удалить
</JxButton>
</JxModal>
</>
);
}