feat: add withdraw functionality and related enums

- Introduced WithdrawMethodEnum and ChainEnum in enum.ts for withdrawal methods and blockchain types.
- Updated types.ts to include WithdrawBody type for withdrawal requests.
- Created a new useResetRef composable for managing form state resets.
- Added a withdraw page with form handling in index.vue, including validation and submission logic.
- Integrated the new withdraw functionality into the wallet card component.
- Updated the main.ts file to include Pinia for state management.
- Created a wallet store to manage user balances.
- Modified the deposit page to improve user experience and validation.
- Added number pattern validation for input fields.
- Updated the router to include a new route for the withdraw page.
- Refactored input-label component styles for better layout.
- Added a new rules.ts file for future validation rules.
This commit is contained in:
2025-12-14 18:31:57 +07:00
parent 49414095f1
commit 28ddf12d45
22 changed files with 1838 additions and 95 deletions

1
src/store/index.ts Normal file
View File

@@ -0,0 +1 @@
export * from "./wallet";

16
src/store/wallet.ts Normal file
View File

@@ -0,0 +1,16 @@
import type { BalancesData } from "@/api/types";
import { defineStore } from "pinia";
interface State {
balances: BalancesData | null;
}
export const useWalletStore = defineStore("wallet", () => {
const state = reactive<State>({
balances: null,
});
return {
state,
};
});