UNPKG

@mono.co/connect-react-native

Version:

Easily add mono connect widget to your react-native app and get access to users' financial data.

37 lines (36 loc) 1.01 kB
function createUrl(qs) { let base = "https://connect.mono.co/?"; const valid = validate(qs); if (valid) { for (const k in qs) { const value = typeof (qs[k]) === "object" ? JSON.stringify(qs[k]) : qs[k]; base = base.concat(`${k}=${value}&`); } return base.slice(0, -1); } throw new Error("Invalid config object"); } function validate(config) { switch (config.scope) { case "payments": return validatePaymentsData(config.data); default: return true; } } function validatePaymentsData(data) { data = Object.assign({ payment_id: undefined }, data); const requiredFields = ["payment_id"]; for (let param in data) { if (requiredFields.includes(param)) { checkRequiredParam(param, data[param]); } } return true; } function checkRequiredParam(name, value) { if (!value) { throw new Error(`${name} is required!`); } } export { createUrl };