- Nginx: проксирование /api на backend (единая точка входа) - История: стрелки ← → для переключения недель/месяцев/годов - История: сохранение фильтров и пагинации в URL при F5 - Импорт: миграция 003 — дефолтные правила категорий (PYATEROCHK, AUCHAN и др.) - Настройки: вкладка «Данные» с кнопкой «Очистить историю» - Backend: DELETE /api/transactions для удаления всех транзакций - ClearHistoryModal: подтверждение чекбоксами и вводом «УДАЛИТЬ»
38 lines
1.1 KiB
TypeScript
38 lines
1.1 KiB
TypeScript
import { useState } from 'react';
|
||
import { useNavigate } from 'react-router-dom';
|
||
import { ClearHistoryModal } from './ClearHistoryModal';
|
||
|
||
export function DataSection() {
|
||
const [showClearModal, setShowClearModal] = useState(false);
|
||
const navigate = useNavigate();
|
||
|
||
return (
|
||
<div className="data-section">
|
||
<div className="section-block">
|
||
<h3>Очистка данных</h3>
|
||
<p className="section-desc">
|
||
Очистить историю операций (все транзакции). Счета, категории и
|
||
правила сохранятся.
|
||
</p>
|
||
<button
|
||
type="button"
|
||
className="btn btn-danger"
|
||
onClick={() => setShowClearModal(true)}
|
||
>
|
||
Очистить историю
|
||
</button>
|
||
</div>
|
||
|
||
{showClearModal && (
|
||
<ClearHistoryModal
|
||
onClose={() => setShowClearModal(false)}
|
||
onDone={() => {
|
||
setShowClearModal(false);
|
||
navigate('/history');
|
||
}}
|
||
/>
|
||
)}
|
||
</div>
|
||
);
|
||
}
|