catalyst-voices
catalyst-voices copied to clipboard
🛠️ [TASK] : Implement Create/Edit/Delete Proposal
Summary
Implement Create/Edit/Delete Proposal
Description
- Create a form for entering proposal details.
- Include validation for the form fields to ensure that all required fields are filled out before submission.
- Provide a Submit button for creating the proposal. Upon successful submission, the user should be redirected back to the home page, and the new proposal should be displayed in the proposals list.
- Implement a Cancel option that allows users to return to the home page without creating a new proposal.
- Allow users to edit or delete their proposals from the list of proposals.
- Editing a proposal should reuse the Proposal Form Screen with fields pre-filled with the existing proposal details.
- Ensure there is a confirmation prompt before deleting a proposal to prevent accidental deletions.
- Implement the necessary backend integration for creating, updating, and deleting proposals. Ensure that changes are reflected in real-time across the app.
- Handle errors gracefully, providing users with clear error messages for issues like network errors or validation failures.
- Write unit and integration tests for the new functionalities, ensuring a robust and error-free user experience.
- Tests should cover happy paths, edge cases, and error-handling scenarios.
Resources
- API documentation for listing and creating proposals is available at [API Documentation Link]. @TODO: @minikin
- UX/UI for the home page and proposal submission form are located in the [Design Folder Link]. @TODO: @mike-mcnulty
Additional Notes
- Please adhere to our project's coding and UI design standards.
- Update the README.md with any new setup instructions or dependencies.
Deliverables
- Source code for the new functionalities.
- Unit and integration tests covering the added features.
- Updated README.md (if applicable).
Acceptance Criteria
- The Add Proposal button is visible and functional on the home page.
- Users can create, edit, and delete proposals without issues.
- Form validations are correctly implemented, ensuring no empty submissions.
- Proposals are correctly added to the backend and are visible on the home page.
- Edited proposals should reflect changes immediately across the app.
- Deleted proposals are removed from the list without residual data.
- The application handles all operations gracefully, providing appropriate user feedback for success and error states.