Viewing File: /home/ubuntu/efiexchange-node-base/src/routes/userApp.routes.ts
import express, { Request, Response, NextFunction } from "express";
import {
transferTokensHandler,
getTransactionDetails,
generateWalletAddress,
transferTokensToAdmin,
fetchChildWallets,
fetchChildWalletsRange,
generateHDWalletAddress,
} from "../controllers/userApp/user.controller";
import {
transferSolanaTokensHandler,
getSolanaTransactionDetails,
generateSolanaWalletAddress,
fetchSolanaChildWallets,
fetchSolanaChildWalletsRange,
generateSolanaHDWalletAddress,
} from "../controllers/userApp/solana.controller";
import {
transferTronTokensHandler,
getTronTransactionDetails,
generateTronWalletAddress,
transferTronTokensToAdmin,
fetchTronChildWallets,
fetchTronChildWalletsRange,
generateTronHDWalletAddress,
} from "../controllers/userApp/tron.controller";
import { authRequest, authVerification } from "src/middleware/auth.middleware";
import {encrypt} from "src/utils/decrypt";
const Route = express.Router();
const asyncHandler =
(fn: (req: Request, res: Response, next: NextFunction) => Promise<void>) =>
(req: Request, res: Response, next: NextFunction) => {
Promise.resolve(fn(req, res, next)).catch(next);
};
// Base route
Route.get("/", (req: Request, res: Response) => {
res.sendResponse({ key: "Exchange user Routes" }, "Exchange user routes");
});
// Ethereum-related routes
Route.post("/transfer_tokens", asyncHandler(transferTokensHandler));
Route.post("/get_transaction_details", asyncHandler(getTransactionDetails));
Route.post("/generate_wallet_address", authVerification, asyncHandler(generateWalletAddress));
Route.post("/generate_hd_wallet_address", authVerification, asyncHandler(generateHDWalletAddress));
Route.post("/admin_transfer", asyncHandler(transferTokensToAdmin));
Route.post("/fetch_child_wallets", asyncHandler(fetchChildWallets));
Route.post("/fetch_child_wallets_range", asyncHandler(fetchChildWalletsRange));
// Solana-related routes
Route.post("/transfer_solana_tokens", asyncHandler(transferSolanaTokensHandler));
Route.post("/get_solana_transaction_details", asyncHandler(getSolanaTransactionDetails));
Route.post("/generate_solana_wallet_address", authVerification, asyncHandler(generateSolanaWalletAddress));
Route.post("/generate_solana_hd_wallet_address", authVerification, asyncHandler(generateSolanaHDWalletAddress));
// Route.post("/solana_admin_transfer", asyncHandler(transferTokensToAdmin));
Route.post("/fetch_solana_child_wallets", asyncHandler(fetchSolanaChildWallets));
Route.post("/fetch_solana_child_wallets_range", asyncHandler(fetchSolanaChildWalletsRange));
// Tron-related routes
Route.post("/transfer_tron_tokens", asyncHandler(transferTronTokensHandler));
Route.post("/get_tron_transaction_details", asyncHandler(getTronTransactionDetails));
Route.post("/generate_tron_wallet_address",authVerification, asyncHandler(generateTronWalletAddress));
Route.post("/generate_tron_hd_wallet_address",authVerification, asyncHandler(generateTronHDWalletAddress));
Route.post("/tron_admin_transfer", asyncHandler(transferTronTokensToAdmin));
Route.post("/fetch_tron_child_wallets", asyncHandler(fetchTronChildWallets));
Route.post("/fetch_tron_child_wallets_range", asyncHandler(fetchTronChildWalletsRange));
Route.post("/encrypt", asyncHandler(encrypt));
export default Route;
Back to Directory
File Manager