Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
    • Help
    • Submit feedback
    • Contribute to GitLab
  • Sign in
F
finwise-miniapp-fe
  • Project
    • Project
    • Details
    • Activity
    • Releases
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 0
    • Issues 0
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • ThinhNC
  • finwise-miniapp-fe
  • Merge Requests
  • !10

Merged
Opened Aug 13, 2026 by ThinhNC@ThinhNC
  • Report abuse
Report abuse

feat(fe): implement transaction management module and refactor Select component

Key Changes

1. Core Transaction Module

  • Service Layer: Created transaction.service.ts to define API requests for transactions (CRUD, upload/delete receipt, download receipt).
  • State & Hooks: Added use-transactions.ts utilizing TanStack Query for queries and mutations with proper cache invalidation for transactions and wallets.
  • Types: Added TypeScript interfaces for transaction entities, payloads, and queries in transaction.ts.
  • Views: Implemented TransactionsPage (under transactions/index.tsx) displaying a list of transactions grouped by date, detailed view modal, creation/edition form modal, advanced filtering (by wallets, categories, type, amount, date), sorting, and receipt image attachments.

2. Component Refactoring & Enhancements

  • Select Component: Refactored Select component using React.forwardRef to support standard ref integration (e.g. for form integrations).
  • Category Display Name: Updated getCategoryDisplayName function to handle categories where isSystem is optional or undefined by checking their fallback system name keys.
  • Style Guide: Added a back navigation button in style-guide.tsx to return to the home screen.
  • Navigation & Layout: Registered the transaction page route in layout.tsx and added a link to transactions in index.tsx.

3. Localization & Memory

  • Added Vietnamese and English localization keys for the transactions feature in vi.json and en.json.
  • Documented key design system decisions and transaction feature details in memory.md.

Check out, review, and merge locally

Step 1. Fetch and check out the branch for this merge request

git fetch origin
git checkout -b feat/transaction-management-frontend origin/feat/transaction-management-frontend

Step 2. Review the changes locally

Step 3. Merge the branch and fix any conflicts that come up

git fetch origin
git checkout origin/develop
git merge --no-ff feat/transaction-management-frontend

Step 4. Push the result of the merge to GitLab

git push origin develop

Note that pushing to GitLab requires write access to this repository.

Tip: You can also checkout merge requests locally by following these guidelines.

  • Discussion 0
  • Commits 1
  • Changes 15
Assignee
No assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
0
Labels
None
Assign labels
  • View project labels
Reference: ThinhNC/finwise-miniapp-fe!10

Revert this merge request

This will create a new commit in order to revert the existing changes.

Switch branch
Cancel
A new branch will be created in your fork and a new merge request will be started.

Cherry-pick this merge request

Switch branch
Cancel
A new branch will be created in your fork and a new merge request will be started.