feat: Implement game restart, battlefield styling with art crops and tapped stacks, and initial draw fixes.
Some checks failed
Build and Deploy / build (push) Failing after 1m10s

This commit is contained in:
2025-12-18 20:26:42 +01:00
parent ca7b5bf7fa
commit bc5eda5e2a
35 changed files with 1337 additions and 634 deletions

View File

@@ -0,0 +1,22 @@
---
title: Fix Cube Session Clear
status: Completed
---
## Objectives
- Fix the "Clear Session" functionality in `CubeManager` which was failing to fully reset the application state.
## Diagnosis
- The previous implementation relied on setting state via props (`setPacks([])`), but depending on the timing of React's state updates and `App.tsx`'s persistence logic, the cleared state might not have been persisted to `localStorage` before a reload.
- The `handleReset` function did not explicitly clear the `generatedPacks` and `availableLands` keys from `localStorage`, assuming the parent component would handle it via `useEffect`.
## Fix Implemented
- Refactored `handleReset` in `CubeManager.tsx`.
- Added explicit `localStorage.removeItem('generatedPacks')` and `localStorage.removeItem('availableLands')` calls.
- Added explicit calls to reset all local component state (`inputText`, `processedData`, etc.) and their respective storage keys.
- Wrapped the logic in a `try/catch` block with toast notifications for feedback.
- This ensures a robust, hard reset of the drafting session.
## Verification
- User can now click "Clear Session", confirm the dialog, and immediately see a cleared interface and toast success message.
- Reloading the page will confirm the session is truly empty.