UNPKG

medusa-payment-solana

Version:

Solana crypto currency payment provider for MedusaJS 2.0

31 lines 1.43 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.generatePaymentId = generatePaymentId; exports.createPaymentDescription = createPaymentDescription; exports.isValidSolanaAddress = isValidSolanaAddress; const crypto_1 = __importDefault(require("crypto")); function generatePaymentId() { return `pid_${crypto_1.default.randomBytes(16).toString('hex')}`; } function createPaymentDescription(orderId, amount, currencyCode, solAmount) { return `Payment for order ${orderId}: ${amount} ${currencyCode.toUpperCase()} (${solAmount} SOL)`; } /** * Checks if a given string is a valid Solana address. * A valid address is a base58 encoded string between 32 and 44 characters long. * @param address The address to validate. * @returns True if the address is a valid Solana address, false otherwise. */ function isValidSolanaAddress(address) { if (!address || typeof address !== 'string') { return false; } // Regular expression to check for base58 characters. const base58Regex = /^[1-9A-HJ-NP-Za-km-z]+$/; // Check if the address contains only base58 characters and has a length between 32 and 44. return base58Regex.test(address) && address.length >= 32 && address.length <= 44; } //# sourceMappingURL=utils.js.map