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:
14
src/composables/useResetRef.ts
Normal file
14
src/composables/useResetRef.ts
Normal file
@@ -0,0 +1,14 @@
|
||||
import type { MaybeRef } from "vue";
|
||||
import cloneDeepWith from "lodash-es/cloneDeepWith";
|
||||
import { isRef, ref } from "vue";
|
||||
|
||||
export function useResetRef<T>(value: MaybeRef<T>) {
|
||||
const _valueDefine = cloneDeepWith(value as any);
|
||||
const _value = isRef(value) ? value : ref(value);
|
||||
|
||||
function reset(value?: T) {
|
||||
_value.value = value ? cloneDeepWith(value) : cloneDeepWith(_valueDefine);
|
||||
}
|
||||
|
||||
return [_value, reset] as const;
|
||||
}
|
||||
Reference in New Issue
Block a user