- Updated @astrojs/cloudflare from ^12.5.1 to ^12.5.3
- Updated @astrojs/node from ^9.2.1 to ^9.2.2
- Updated @astrojs/react from ^4.2.5 to ^4.3.0
- Updated @prisma/client from ^6.7.0 to ^6.8.2
- Updated @radix-ui/react-dialog from ^1.1.13 to ^1.1.14
- Updated @radix-ui/react-dropdown-menu from ^2.1.14 to ^2.1.15
- Updated @radix-ui/react-form from ^0.1.6 to ^0.1.7
- Updated @radix-ui/react-select from ^2.2.4 to ^2.2.5
- Updated @radix-ui/react-toast from ^1.2.13 to ^1.2.14
- Updated @types/react from ^19.1.2 to ^19.1.5
- Updated @types/react-dom from ^19.1.2 to ^19.1.5
- Updated astro from ^5.7.5 to ^5.8.0
- Updated @types/node from ^20.11.0 to ^22.15.21
- Updated @vitejs/plugin-react from ^4.4.1 to ^4.5.0
- Updated @vitest/coverage-v8 from ^3.1.3 to ^3.1.4
- Updated prisma from ^6.7.0 to ^6.8.2
- Updated supertest from ^7.1.0 to ^7.1.1
- Updated vitest from ^3.1.2 to ^3.1.4
- Updated wrangler from ^4.13.1 to ^4.16.1
This commit resolves an issue where the Update button in the transaction form
would remain disabled when attempting to edit a transaction. The problem was
in how the transactionStore was managing state updates during transaction editing.
Key changes:
- Enhanced startEditingTransaction function in transactionStore.ts to ensure proper reactivity
- Added clean copy creation of transaction objects to avoid reference issues
- Implemented a state update cycle with null value first to force reactivity
- Added a small timeout to ensure state changes are properly detected by components
The Transaction form now correctly enables the Update button when in edit mode,
regardless of account selection state.
- Added React testing setup with JSDOM
- Added component tests for AddTransactionForm and TransactionTable
- Improved error handling and success messages in components
- Updated test configuration and dependencies
- Added CSS for error and success states
- Added @nanostores/react for state management.
- Created AccountSummary component to display account balance.
- Replaced AddTransactionForm.astro with AddTransactionForm.tsx for better state handling.
- Introduced TransactionTable.tsx for displaying transactions with edit/delete functionality.
- Updated Sidebar.astro and MainContent.astro to use React components.
- Implemented transactionStore.ts for managing current account ID and transaction editing state.
- Removed obsolete AddTransactionForm.astro and related scripts.
- Enhanced error handling and loading states in transaction forms.
This fixes issues #7, #8, #9, #10, #11
- Updated dependencies in package.json for Astro, React, and testing libraries.
- Added .assetsignore to exclude specific files from asset uploads.
- Refactored AccountSummary, MainContent, and Sidebar components for clarity and maintainability.
- Enhanced tsconfig.json to support React JSX syntax.
- Created wrangler.jsonc for Cloudflare Workers configuration.
- Updated package.json to include Vitest for testing and added necessary devDependencies.
- Created accounts.test.ts to test the accounts API endpoints for listing and retrieving accounts.
- Implemented setup.ts to reset test data before each test run.
- Developed transactions.test.ts to cover creating, updating, and deleting transactions through the API.
- Added vitest.config.ts for configuring Vitest with appropriate settings and coverage options.