UNPKG

@adyen/adyen-web

Version:

[![npm](https://img.shields.io/npm/v/@adyen/adyen-web.svg)](https://www.npmjs.com/package/@adyen/adyen-web)

3 lines (2 loc) 802 B
import{electronicFormat as t,getCountryCode as n,iso13616Prepare as e,iso7064Mod97_10 as i,getIbanCountrySpecification as l,regex as s}from"./utils.js";import{isEmpty as o}from"../../../utils/validator-utils.js";function r(t,n=null){this.status=t,this.code=n}const a=n=>{const l=t(n),o=e(l);return 1===i(o)&&(t=>{const n=t.slice(0,2),e=s(t,n);return e.test&&e.test(t.slice(4))||!1})(l)},u=e=>{const i=t(e);if(e.length<2)return new r("no-validate","TOO_SHORT");const s=n(i),o=l(s);return o?i.length>o.length?new r("invalid","TOO_LONG"):i.length===o.length?a(e)?new r("valid","VALID"):new r("invalid","INVALID_IBAN"):new r("no-validate","UNKNOWN"):new r("invalid","INVALID_COUNTRY")},c=t=>!o(t)||null;export{u as checkIbanStatus,c as isValidHolder,a as isValidIBAN}; //# sourceMappingURL=validate.js.map