@cuenca-mx/cuenca-js
Advanced tools
Comparing version 0.0.14-dev5 to 0.0.14-dev6
@@ -1,1 +0,1 @@ | ||
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("axios"),require("buffer")):"function"==typeof define&&define.amd?define(["exports","axios","buffer"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).cuenca={},t.axios,t.Buffer)}(this,(function(t,e,s){"use strict";function i(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var r=i(e),a=i(s);class n extends Error{constructor(t){super(t),Object.setPrototypeOf(this,n.prototype)}}class c extends n{constructor(t,e){super(`Cuenca Response Error: ${e}`),this.name="CuencaResponseError",this.data=t,this.status=e,Object.setPrototypeOf(this,c.prototype)}}class o extends n{constructor(){super("No results were found"),this.name="NoResultFound",Object.setPrototypeOf(this,o.prototype)}}class d extends n{constructor(){super("One result was expected but multiple were found"),this.name="MultipleResultsFound",Object.setPrototypeOf(this,d.prototype)}}class u extends n{constructor(){super("An invalid JWT token was obtained during authentication"),this.name="MalformedJwtToken",Object.setPrototypeOf(this,u.prototype)}}class h extends n{constructor(){super("Invalid password"),this.name="InvalidPassword",Object.setPrototypeOf(this,h.prototype)}}class l extends Error{constructor(t){super(t),Object.setPrototypeOf(this,l.prototype)}}const p="undefined"!=typeof window&&void 0!==window.document,m="undefined"!=typeof process&&"[object process]"===Object.prototype.toString.call(process),f=p,w=m;class _{constructor(t,e){this.expiresAt=t,this.token=e}get isExpired(){const t=new Date;return(this.expiresAt.valueOf()-t.valueOf())/6e4<=5}static getExpirationDate=t=>{let e;try{const[,s]=t.split(".");e=JSON.parse(a.default.Buffer.from(`${s}==`,"base64").toString())}catch(t){throw new u}const{exp:s}=e;return new Date(new Date(1e3*s).toUTCString())};static create=async t=>{const e=t;e.jwtToken=null;const s=e.deleteRequestHeader("X-Cuenca-Token"),{token:i}=await t.post("token",{});s.eject();const r=_.getExpirationDate(i);return new _(r,i)}}class b{static Created=new b("created");static ReadyForAnalysis=new b("ready_for_analysis");static Analysis=new b("analysis");static Dictum=new b("dictum");static Justified=new b("justified");static Unusual=new b("unusual");static Reported=new b("reported");constructor(t){this.value=t}}class g{static Succeeded=new g("succeeded");static NotValidated=new g("not_validated");static Failed=new g("failed");static OnWaitList=new g("on_wait_list");constructor(t){this.value=t}}class y{static Created=new y("created");static Failed=new y("failed");static Pending=new y("pending");static Succeeded=new y("succeeded");constructor(t){this.value=t}}class v{static Blocked=new v("blocked");static Comunication=new v("comunication");static ContactlesAmountLimit=new v("contactles_amount_limit");static FraudDetection=new v("fraud_detection");static FraudDetectionUncertain=new v("fraud_detection_uncertain");static InsufficientFounds=new v("insufficient_founds");static InvalidPin=new v("invalid_pin");static Notification=new v("notification");static NotificationDeactivatedCard=new v("notification_deactivated_card");constructor(t){this.value=t}}class O{static Credit=new O("credit");static Debit=new O("debit");constructor(t){this.value=t}}class A{static Accendo=new A("accendo");static Cuenca=new A("cuenca");constructor(t){this.value=t}}class j{static Buy=new j("buy");static Sell=new j("sell");constructor(t){this.value=t}}class x{static Active=new x("active");static Blocked=new x("blocked");static Created=new x("created");static Deactivated=new x("deactivated");static Printing=new x("printing");constructor(t){this.value=t}}class I{static Auth=new I("auth");static Capture=new I("capture");static Chargeback=new I("chargeback");static Expiration=new I("expiration");static Refund=new I("refund");static Void=new I("void");constructor(t){this.value=t}}class k{static Mxn=new k("mxn");static Usdc=new k("usdc");static Sol=new k("sol");constructor(t){this.value=t}}class C{static Physical=new C("physical");static Virtual=new C("virtual");constructor(t){this.value=t}}class N{static CardRequest=new N("card_request");static CashDeposit=new N("cash_deposit");static OutgoingSpei=new N("outgoing_spei");constructor(t){this.value=t}}class T{static Cash=new T("cash");static Internal=new T("internal");static Spei=new T("spei");constructor(t){this.value=t}}class S{static Credit=new S("credit");static Debit=new S("debit");constructor(t){this.value=t}}class U{static Pdf=new U("application/pdf");static Xml=new U("application/xml");static Json=new U("application/json");static Any=new U("*/*");constructor(t){this.value=t}}class D{static Curp=new D("curp");static Dni=new D("dni");static Ine=new D("ine");static Passport=new D("passport");static Residency=new D("residency");static MatriculaConsular=new D("matricula_consular");static ProofOfLiveness=new D("proof_of_liveness");static ProofOfAddress=new D("proof_of_address");constructor(t){this.value=t}}class P{static Low=new P("low");static Medium=new P("medium");static High=new P("high");constructor(t){this.value=t}}class q{static Deposit=new q("deposit");static Withdrawal=new q("withdrawal");constructor(t){this.value=t}}class B{static Bimester=new B("bimester");static Trimester=new B("trimester");static Semester=new B("semester");constructor(t){this.value=t}}class L{static Polygon=new L("polygon");static Solana=new L("solana");constructor(t){this.value=t}}class M{static Sandbox=new M("sandbox-api");static Stage=new M("stage-api");static Api=new M("api");constructor(t){this.value=t}}class ${static Amount=new $("amount");static Volume=new $("volume");constructor(t){this.value=t}}class E{static Cable=new E("cable");static CreditCard=new E("credit_card");static Electricity=new E("electricity");static Gas=new E("gas");static Internet=new E("internet");static LandlineTelephone=new E("landline_telephone");static MobileTelephonePostpaid=new E("mobile_telephone_postpaid");static MobileTelephonePrepaid=new E("mobile_telephone_prepaid");static SateliteTelevision=new E("satelite_television");static Water=new E("water");constructor(t){this.value=t}}class K{static General=new K("general");static Home=new K("home");static Vehicle=new K("vehicle");static Travel=new K("travel");static Clothing=new K("clothing");static Other=new K("other");static Medical=new K("medical");static Accident=new K("accident");static Education=new K("education");constructor(t){this.value=t}}class F{static AccountEntries=new F("session.account_entries");static DownloadFile=new F("session.download_file");static Registration=new F("session.registration");static ShowCard=new F("session.show_card");static UploadFile=new F("session.upload_file");constructor(t){this.value=t}}class R{static Chester=new R("chester");static External=new R("external");static Manual=new R("Manual");constructor(t){this.value=t}}class V{static NotSet=new V("not_set");static Terminal=new V("terminal");static Manual=new V("manual");static Unknown=new V("unknown");static Contactless=new V("contactless");static FallBack=new V("fall_back");static MagneticStripe=new V("magnetic_stripe");static RecurringCharge=new V("recurring_charge");constructor(t){this.value=t}}class H{static Created=new H("created");static Failed=new H("failed");static InReview=new H("in_review");static Submitted=new H("submitted");static Succeeded=new H("succeeded");constructor(t){this.value=t}}class Y{static Internal=new Y("internal");static Spei=new Y("spei");constructor(t){this.value=t}}class Q{static Active=new Q("active");static Deactivated=new Q("deactivated");static Fraud=new Q("fraud");static PldBlocked=new Q("pld_blocked");constructor(t){this.value=t}}class W{static Created=new W("created");static NotVerified=new W("not_verified");static Rejected=new W("rejected");static ReviewNeeded=new W("review_needed");static Submitted=new W("submitted");static Succeeded=new W("succeeded");static UploadAgain=new W("upload_again");constructor(t){this.value=t}}class z{static Phone=new z("phone");static Email=new z("email");constructor(t){this.value=t}}class X{static Deposit=new X("deposit");static Withdrawal=new X("withdrawal");constructor(t){this.value=t}}const G=t=>{if(!t)return null;const e=new Date(t);return new Date(e.getTime())},J=(t,e)=>Object.values(t).find((t=>t.value===e));class Z{constructor({createdAfter:t,createdBefore:e,limit:s,pageSize:i,relatedTransaction:r,userId:a,count:n=!1}){this.createdAfter=t,this.createdBefore=e,this._lmt=s,this.relatedTransaction=r,this.userId=a,this.count=n,this.pageSize=i}get limit(){return this._limit}set _lmt(t){let e=null;t&&t>=0&&(e=t),this._limit=e}toObject(){return{created_after:this.createdAfter,created_before:this.createdBefore,limit:this.limit,related_transaction:this.relatedTransaction,user_id:this.userId,page_size:this.pageSize&&this.pageSize.size}}toParams(){const t={...this.toObject()};return this.count&&(t.count=1),Object.keys(t).forEach((e=>{null==t[e]&&delete t[e]})),t}toQueryString(){return new URLSearchParams(this.toParams()).toString()}}class tt extends Z{constructor({accountNumber:t,...e}){super(e),this.accountNumber=t}toObject(){return Object.assign(super.toObject(),{account_number:this.accountNumber})}}class et extends Z{constructor({active:t,...e}){super(e),this.active=t}toObject(){return Object.assign(super.toObject(),{active:this.active})}}class st extends Z{constructor({status:t,...e}){super(e),this.status=t}toObject(){return Object.assign(super.toObject(),{status:this.status})}}class it extends st{constructor({trackingKey:t,network:e,...s}){super(s),this.trackingKey=t,this.network=e}toObject(){return Object.assign(super.toObject(),{tracking_key:this.trackingKey,network:this.network})}}class rt extends st{constructor({accountNumber:t,idempotencyKey:e,trackingKey:s,network:i,...r}){super(r),this.accountNumber=t,this.idempotencyKey=e,this.trackingKey=s,this.network=i}toObject(){return Object.assign(super.toObject(),{account_number:this.accountNumber,idempotency_key:this.idempotencyKey,tracking_key:this.trackingKey,network:this.network})}}class at extends Z{constructor({fundingInstrumentUri:t,count:e=!1,walletId:s="default",...i}){super(i),this.fundingInstrumentUri=t,this.count=e,this.walletId=s}toObject(){return Object.assign(super.toObject(),{wallet_id:this.walletId,funding_instrument_uri:this.fundingInstrumentUri,count:this.count})}}class nt extends Z{constructor({aggent:t,comments:e,committeeMeetingDate:s,count:i,hasQuestionnaire:r,inProcess:a,status:n,typeOfFilter:c,transactionDate:o,...d}){super(d),this.aggent=t,this.comments=e,this.committeeMeetingDate=s,this.count=i,this.hasQuestionnaire=r,this.inProcess=a,this.status=n,this.typeOfFilter=c,this.transactionDate=o}toObject(){return Object.assign(super.toObject(),{aggent:this.aggent,comments:this.comments,committee_meeting_date:this.committeeMeetingDate,count:this.count,has_questionnaire:this.hasQuestionnaire,in_process:this.inProcess,status:this.status,transaction_date:this.transactionDate,type_of_filter:this.typeOfFilter})}}class ct extends Z{constructor({accountNumber:t,...e}){super(e),this.accountNumber=t}toObject(){return Object.assign(super.toObject(),{account_number:this.accountNumber})}}class ot extends Z{constructor({cardUri:t,...e}){super(e),this.cardUri=t}toObject(){return Object.assign(super.toObject(),{card_uri:this.cardUri})}}class dt extends Z{constructor({cardUri:t,count:e=!1,...s}){super(s),this.cardUri=t,this.count=e}toObject(){return Object.assign(super.toObject(),{card_uri:this.cardUri,count:this.count})}}class ut extends Z{constructor({walletUri:t,...e}){super(e),this.walletUri=t}toObject(){return Object.assign(super.toObject(),{wallet_uri:this.walletUri})}}class ht extends Z{constructor({emailAddress:t,hasCurpDocument:e,phoneNumber:s,status:i,...r}){super(r),this.emailAddress=t,this.hasCurpDocument=e,this.phoneNumber=s,this.status=i}toObject(){return Object.assign(super.toObject(),{email_address:this.emailAddress,has_curp_document:this.hasCurpDocument,phone_number:this.phoneNumber,status:this.status})}}class lt extends Z{constructor({active:t,...e}){super(e),this.active=t}toObject(){return Object.assign(super.toObject(),{active:this.active})}}class pt extends Z{constructor({month:t,year:e,...s}){super(s),this.d={month:t,year:e}}get month(){return this._date.month}get year(){return this._date.year}set d({month:t,year:e}){const s=G(Date.now());s.setUTCDate(1);if(G(`${e}-${t}-01`).getTime()>=s.getTime())throw new l(`${e}-${t} is not a valid year-month pair`);this._date={month:t,year:e}}toObject(){return Object.assign(super.toObject(),{month:this.month,year:this.year})}}class mt extends Z{constructor({emailAddress:t,...e}){super(e),this.emailAddress=t}toObject(){return Object.assign(super.toObject(),{email_address:this.emailAddress})}}class ft extends Z{constructor({accountId:t,...e}){super(e),this.accountId=t}toObject(){return Object.assign(super.toObject(),{account:this.accountId})}}class wt extends Z{constructor({accountId:t,...e}){super(e),this.accountId=t}toObject(){return Object.assign(super.toObject(),{account_id:this.accountId})}}class _t extends ft{constructor({status:t,type:e,...s}){super(s),this.status=t,this.type=e}toObject(){return Object.assign(super.toObject(),{status:this.status,type:this.type})}}class bt{constructor({ip:t,location:e,type:s,version:i}){this.ip=t,this.location=e,this.type=s,this.version=i}static fromObject=({ip:t,location:e,type:s,version:i})=>new bt({ip:t,location:e,type:s,version:i})}class gt{constructor({code:t,error:e,identifier:s,message:i}){this.code=t,this.error=e,this.identifier=s,this.message=i}static fromObject=({code:t,error:e,identifier:s,message:i})=>new gt({code:t,error:e,identifier:s,message:i})}class yt{constructor({data:t,errors:e,isMx:s,status:i,type:r,uriBack:a,uriFront:n}){this.data=t,this.isMx=s,this.status=J(W,i),this.type=J(D,r),this.uriBack=a,this.uriFront=n,e&&e.length>0&&(this.errors=e.map((t=>gt.fromObject(t))))}static fromObject=({data:t,errors:e,status:s,type:i,...r})=>new yt({data:t,errors:e,status:s,type:i,isMx:r.is_mx,uriBack:r.uri_back,uriFront:r.uri_front})}class vt{constructor({city:t,colonia:e,country:s,createdAt:i,extNumber:r,fullName:a,intNumber:n,postalCode:c,state:o,street:d}){this.city=t,this.colonia=e,this.country=s,this.createdAt=G(i),this.extNumber=r,this.fullName=a,this.intNumber=n,this.postalCode=c,this.state=o,this.street=d}static fromObject=({city:t,colonia:e,country:s,state:i,street:r,...a})=>new vt({city:t,colonia:e,country:s,state:i,street:r,createdAt:a.created_at,extNumber:a.ext_number,fullName:a.full_name,intNumber:a.int_number,postalCode:a.postal_code})}class Ot{constructor({aggent:t,createdAt:e,status:s,updatedAt:i}){this.aggent=t,this.createdAt=G(e),this.updatedAt=G(i),this.status=J(b,s)}static fromObject=({aggent:t,status:e,...s})=>new Ot({aggent:t,status:e,createdAt:s.createdAt,updatedAt:s.updatedAt})}var At="0.0.14-dev5";class jt{constructor({apiKey:t,apiSecret:e,language:s="en",phase:i=M.Sandbox}={}){this.phase=i,this.basicAuth={apiKey:t,apiSecret:e},this.jwtToken=null,this._session=r.default.create({headers:{"Accept-Language":s},timeout:45e3})}get session(){return this._session}get origin(){return`https://${this.phase.value}.arteria.xyz`}get authHeader(){const{apiKey:t,apiSecret:e}=this.basicAuth;return t&&e?`Basic ${a.default.Buffer.from(`${t}:${e}`,"utf-8").toString("base64")}`:""}addHeadersToRequest(t){const e=this._session.interceptors.request.use((e=>{const s=e,{headers:{common:i}}=s;return Object.keys(t).forEach((e=>i[e]=t[e])),s}));return{interceptorId:e,eject:()=>this._session.interceptors.request.eject(e)}}deleteRequestHeader(t){const e=this._session.interceptors.request.use((e=>{const s=e,{headers:{common:i}}=s;return delete i[t],s}));return{interceptorId:e,eject:()=>this._session.interceptors.request.eject(e)}}addConfigToRequest(t){const e=this._session.interceptors.request.use((e=>{const s=e;return Object.keys(t).forEach((e=>s[e]=t[e])),s}));return{interceptorId:e,eject:()=>this._session.interceptors.request.eject(e)}}async configure({apiKey:t,apiSecret:e,loginToken:s,phase:i,sessionId:r,useJwt:a=!1}){this.basicAuth={apiKey:t||this.basicAuth.apiKey,apiSecret:e||this.basicAuth.apiSecret},i&&(this.phase=i),a&&(this.jwtToken=await _.create(this)),s&&this.addHeadersToRequest({"X-Cuenca-LoginToken":s}),r&&this.addHeadersToRequest({"X-Cuenca-SessionId":r})}async get({endpoint:t,format:e,params:s}){return this.request({endpoint:t,format:e,params:s})}async post({endpoint:t,data:e,multipart:s}){return this.request({method:"POST",endpoint:t,data:e,multipart:s})}async patch({endpoint:t,data:e}){return this.request({method:"PATCH",endpoint:t,data:e})}async delete({endpoint:t,data:e}){return this.request({method:"DELETE",endpoint:t,data:e})}async request({endpoint:t,data:e=null,format:s=U.Json,method:i="GET",multipart:r=!1,params:a=null}){let o={};r||(o={"Content-Type":"application/json",Accept:`application/${s.value}`}),this.authHeader&&(o.Authorization=this.authHeader),w?o["User-Agent"]=`cuenca-js/${At}`:f&&(o["X-User-Agent"]=`cuenca-js/${At}`),this.jwtToken&&(this.jwtToken.isExpired&&(this.jwtToken=await _.create(this)),o["X-Cuenca-Token"]=this.jwtToken.token);const d=this.addHeadersToRequest(o),u=e;u&&!r&&Object.keys(u).forEach((t=>{u[t]instanceof Date&&(u[t]=u[t].toISOString())}));const h=this.addConfigToRequest({method:i,params:a,data:u,url:t});let l;try{l=await this._session.request({baseURL:this.origin})}catch(t){throw t.response?new c(t.response.data,t.response.status):t.request?new n(`No response received: ${t.errno}: ${t.code}`):new n(t.message)}finally{d.eject(),h.eject()}return l.data}}class xt{constructor({accountNumber:t,createdAt:e,id:s,institutionName:i,name:r,userId:a}){this.accountNumber=t,this.createdAt=G(e),this.id=s,this.institutionName=i,this.name=r,this.userId=a}static fromObject=({id:t,name:e,...s})=>new xt({id:t,name:e,accountNumber:s.account_number,createdAt:s.created_at,institutionName:s.institution_name,userId:s.user_id})}class It{constructor({aggent:t,accountNumber:e,actualPeriodCount:s,actualPeriodSum:i,aggregationType:r,changeLog:a,comments:n,committeeMeetingDate:c,createdAt:o,questionnaireId:d,description:u,hasQuestionnaire:h,id:l,institutionName:p,level:m,name:f,period:w,periodNumber:_,status:g,sourceType:y,transactionDate:v,type:O,typeOfFilter:A,userId:j,updatedAt:x}){this.accountNumber=e,this.actualPeriodCount=s,this.actualPeriodSum=i,this.aggent=t,this.aggregationType=r,this.comments=n,this.committeeMeetingDate=G(c),this.createdAt=G(o),this.questionnaireId=d,this.description=u,this.hasQuestionnaire=h,this.id=l,this.institutionName=p,this.level=J(P,m),this.name=f,this.period=J(B,w),this.periodNumber=_,this.status=J(b,g),this.sourceType=J(R,y),this.transactionDate=G(v),this.type=J(q,O),this.typeOfFilter=J($,A),this.updatedAt=G(x),this.userId=j,this.setChangeLog=a}static fromObject=({aggent:t,comments:e,description:s,id:i,level:r,name:a,period:n,status:c,type:o,...d})=>new It({aggent:t,comments:e,description:s,id:i,level:r,name:a,period:n,status:c,type:o,accountNumber:d.account_number,actualPeriodCount:d.actual_period_count,actualPeriodSum:d.actual_period_sum,aggregationType:d.aggregation_type,changeLog:d.change_log,committeeMeetingDate:d.committee_meeting_date,createdAt:d.created_at,questionnaireId:d.questionnaire_id,hasQuestionnaire:d.has_questionnaire,institutionName:d.institution_name,periodNumber:d.period_number,sourceType:d.source_type,transactionDate:d.transaction_date,typeOfFilter:d.type_of_filter,updatedAt:d.updated_at,userId:d.user_id});get changeLog(){return this._changeLog}set setChangeLog(t){t&&0!==Object.keys(t).length&&(this._changeLog=Ot.fromObject(t))}}class kt{constructor({createdAt:t,deactivatedAt:e,id:s,secret:i,userId:r,updatedAt:a}){this.createdAt=G(t),this.deactivatedAt=G(e),this.id=s,this.secret=i,this.userId=r,this.updatedAt=G(a)}static fromObject=({id:t,secret:e,...s})=>new kt({id:t,secret:e,createdAt:s.created_at,deactivatedAt:s.deactivated_at,userId:s.user_id,updatedAt:s.updated_at});get isActive(){const t=G(Date.now());return!this.deactivatedAt||this.deactivatedAt.getTime()>t.getTime()}}class Ct{constructor({arpc:t,createdAt:e,cardUri:s,isValidArqc:i}){this.arpc=t,this.createdAt=G(e),this.cardUri=s,this.isValidArqc=i}static fromObject=({arpc:t,...e})=>new Ct({arpc:t,createdAt:e.created_at,cardUri:e.card_uri,isValidArqc:e.is_valid_arqc})}class Nt{constructor({amount:t,createdAt:e,descriptor:s,entryType:i,fundingInstrumentUri:r,id:a,name:n,relatedTransactionUri:c,rollingBalance:o}){this.amount=t,this.createdAt=G(e),this.descriptor=s,this.entryType=J(S,i),this.fundingInstrumentUri=r,this.id=a,this.name=n,this.relatedTransactionUri=c,this.rollingBalance=o}static fromObject=({amount:t,descriptor:e,id:s,name:i,type:r,...a})=>new Nt({amount:t,descriptor:e,name:i,id:s,createdAt:a.created_at,entryType:r,fundingInstrumentUri:a.funding_instrument_uri,relatedTransactionUri:a.related_transaction_uri,rollingBalance:a.rolling_balance})}class Tt{constructor({amount:t,createdAt:e,descriptor:s,status:i,userId:r}){this.amount=t,this.createdAt=G(e),this.descriptor=s,this.status=J(H,i),this.userId=r}}class St extends Tt{constructor({amount:t,accountNumber:e,createdAt:s,descriptor:i,id:r,providerUri:a,status:n,userId:c}){super({amount:t,createdAt:s,descriptor:i,status:n,userId:c}),this.accountNumber=e,this.id=r,this.providerUri=a}static fromObject=({amount:t,descriptor:e,id:s,status:i,...r})=>new St({amount:t,descriptor:e,id:s,status:i,accountNumber:r.account_number,createdAt:r.created_at,providerUri:r.provider_uri,userId:r.user_id})}class Ut{constructor({id:t,createdAt:e,updatedAt:s,names:i,firstSurname:r,secondSurname:a,dateOfBirth:n,countryOfBirth:c,rfc:o,curp:d,userId:u,gender:h,phoneNumber:l,emailAddress:p,clientClabe:m,govtId:f,proofOfAddress:w,status:_,termsOfService:b,address:y}){this.id=t,this.createdAt=G(e),this.updatedAt=G(s),this.emailAddress=p,this.clientClabe=m,this.setGovtId=f,this.names=i,this.firstSurname=r,this.secondSurname=a,this.dateOfBirth=n,this.countryOfBirth=c,this.rfc=o,this.curp=d,this.userId=u,this.gender=h,this.phoneNumber=l,this.setProofOfAddress=w,this.status=J(g,_),this.setTerms=b,this.setAddress=y}static fromObject=({status:t,address:e,...s})=>new Ut({address:e,status:t,id:s.id,createdAt:s.created_at,updatedAt:s.updated_at,clientClabe:s.client_clabe,names:s.names,firstSurname:s.first_surname,secondSurname:s.second_surname,dateOfBirth:s.date_of_birth,countryOfBirth:s.country_of_birth,rfc:s.rfc,curp:s.curp,userId:s.user_id,gender:s.gender,govtId:s.govt_id,emailAddress:s.email_address,phoneNumber:s.phone_number,proofOfAddress:s.proof_of_address,termsOfService:s.terms_of_service});get address(){return this._address}set setAddress(t){t&&0!==Object.keys(t).length&&(this._address=vt.fromObject(t))}get proofOfAddress(){return this._proofOfAddress}set setProofOfAddress(t){t&&0!==Object.keys(t).length&&(this._proofOfAddress=yt.fromObject(t))}get govtId(){return this._govtId}set setGovtId(t){t&&0!==Object.keys(t).length&&(this._govtId=yt.fromObject(t))}get termsOfService(){return this._termsOfService}set setTerms(t){t&&0!==Object.keys(t).length&&(this._termsOfService=bt.fromObject(t))}}class Dt{constructor({clabe:t,createdAt:e,curp:s,error:i,firstName:r,id:a,names:n,rfc:c,secondSurname:o,status:d}){this.clabe=t,this.createdAt=G(e),this.curp=s,this.error=i,this.firstName=r,this.id=a,this.names=n,this.rfc=c,this.secondSurname=o,this.status=J(y,d)}static fromObject=({clabe:t,curp:e,error:s,id:i,names:r,rfc:a,status:n,...c})=>new Dt({clabe:t,curp:e,error:s,id:i,names:r,rfc:a,status:n,createdAt:c.created_at,firstName:c.first_name,secondSurname:c.second_surname})}class Pt{constructor({account:t,clabe:e,currency:s,id:i,network:r,platformId:a}){this.account=t,this.clabe=e,this.currency=J(k,s),this.id=i,this.network=J(L,r),this.platformId=a}static fromObject=({clabe:t,currency:e,id:s,network:i,...r})=>new Pt({clabe:t,currency:e,id:s,network:i,account:r.account_uri.split("/")[2],platformId:r.platform_id})}class qt{constructor({id:t,createdAt:e,platformId:s,type:i,status:r,accountUri:a,quoteUri:n,currency:c,network:o,sourceWallet:d,destinationWallet:u,bankAccountUri:h,cuencaId:l,cuentaOrdenante:p,cuentaBeneficiario:m,nombreOrdenante:f,claveRastreo:w,rfcCurpOrdenante:_,concepto:b,referenciaNumerica:g,signature:y,trackingLink:v,fromCurrency:O,toCurrency:A,fromAmount:x,toAmount:I}){this.id=t,this.createdAt=G(e),this.platformId=s,this.type=J(j,i),this.status=J(H,r),this.accountUri=a,this.quoteUri=n,this.currency=J(k,c),this.network=J(L,o),this.sourceWallet=d,this.destinationWallet=u,this.bankAccountUri=h,this.cuencaId=l,this.cuentaOrdenante=p,this.cuentaBeneficiario=m,this.nombreOrdenante=f,this.claveRastreo=w,this.rfcCurpOrdenante=_,this.concepto=b,this.referenciaNumerica=g,this.signature=y,this.trackingLink=v,this.fromCurrency=J(k,O),this.toCurrency=J(k,A),this.fromAmount=x,this.toAmount=I}static fromObject=({type:t,status:e,currency:s,network:i,concepto:r,signature:a,...n})=>new qt({id:n.id,createdAt:n.created_at,platformId:n.platform_id,accountUri:n.account_uri,quoteUri:n.quote_uri,sourceWallet:n.source_wallet,destinationWallet:n.destination_wallet,bankAccountUri:n.bank_account_uri,cuencaId:n.cuenca_id,cuentaOrdenante:n.cuenta_ordenante,cuentaBeneficiario:n.cuenta_beneficiario,nombreOrdenante:n.nombre_ordenante,claveRastreo:n.clave_rastreo,rfcCurpOrdenante:n.rfc_curp_ordenante,referenciaNumerica:n.referencia_numerica,trackingLink:n.tracking_link,fromCurrency:n.from_currency,toCurrency:n.to_currency,fromAmount:n.from_amount,toAmount:n.to_amount,type:t,status:e,currency:s,network:i,concepto:r,signature:a})}class Bt{constructor({createdAt:t,cvv2:e,expMonth:s,expYear:i,fundingType:r,id:a,issuer:n,number:c,pin:o,status:d,type:u,updatedAt:h,userId:l}){this.createdAt=G(t),this.cvv2=e,this.expMonth=s,this.expYear=i,this.fundingType=J(O,r),this.id=a,this.issuer=J(A,n),this.number=c,this.pin=o,this.status=J(x,d),this.type=J(C,u),this.updatedAt=G(h),this.userId=l}static fromObject=({cvv2:t,id:e,issuer:s,number:i,pin:r,status:a,type:n,...c})=>new Bt({cvv2:t,id:e,issuer:s,number:i,pin:r,status:a,type:n,createdAt:c.created_at,expMonth:c.exp_month,expYear:c.exp_year,fundingType:c.funding_type,updatedAt:c.updated_at,userId:c.user_id})}class Lt{constructor({cardUri:t,createdAt:e,id:s,ipAddress:i,success:r,userId:a}){this.cardUri=t,this.createdAt=G(e),this.id=s,this.ipAddress=i,this.success=r,this.userId=a}static fromObject=({id:t,success:e,...s})=>new Lt({id:t,success:e,cardUri:s.card_uri,createdAt:s.created_at,ipAddress:s.ip_address,userId:s.user_id})}class Mt extends Tt{constructor({amount:t,cardErrorType:e,cardLastFour:s,cardType:i,cardUri:r,createdAt:a,descriptor:n,metadata:c,network:o,relatedCardTransactionsUris:d,status:u,type:h,userId:l}){super({amount:t,createdAt:a,descriptor:n,status:u,userId:l}),this.cardErrorType=J(v,e),this.cardLastFour=s,this.cardType=J(C,i),this.cardUri=r,this.metadata=c,this.network=o,this.relatedCardTransactionsUris=d,this.type=J(I,h)}static fromObject=({amount:t,descriptor:e,metadata:s,network:i,status:r,type:a,...n})=>new Mt({amount:t,descriptor:e,metadata:s,network:i,status:r,type:a,cardErrorType:n.error_type,cardLastFour:n.card_last4,cardType:n.card_type,cardUri:n.card_uri,createdAt:n.created_at,relatedCardTransactionsUris:n.related_card_transaction,userId:n.user_id})}class $t{constructor({cardStatus:t,cardType:e,cardUri:s,createdAt:i,isExpired:r,isPinAttemptsExceeded:a,isValidCvv:n,isValidCvv2:c,isValidExpDate:o,isValidIcvv:d,isValidPinBlock:u,userId:h}){this.cardStatus=J(x,t),this.cardType=J(C,e),this.cardUri=s,this.createdAt=G(i),this.isExpired=r,this.isPinAttemptsExceeded=a,this.isValidCvv=n,this.isValidCvv2=c,this.isValidExpDate=o,this.isValidIcvv=d,this.isValidPinBlock=u,this.userId=h}static fromObject=({...t})=>new $t({cardStatus:t.card_status,cardType:t.card_type,cardUri:t.card_uri,createdAt:t.created_at,isExpired:t.is_expired,isPinAttemptsExceeded:t.is_pin_attempts_exceeded,isValidCvv:t.is_valid_cvv,isValidCvv2:t.is_valid_cvv2,isValidExpDate:t.is_valid_exp_date,isValidIcvv:t.is_valid_icvv,isValidPinBlock:t.is_valid_pin_block,userId:t.user_id});get isActive(){return this.cardStatus===x.Active}}class Et extends Tt{constructor({amount:t,createdAt:e,descriptor:s,relatedTransactionUri:i,status:r,type:a,userId:n}){super({amount:t,createdAt:e,descriptor:s,status:r,userId:n}),this.relatedTransactionUri=i,this.type=J(N,a)}static fromObject=({amount:t,descriptor:e,status:s,type:i,...r})=>new Et({amount:t,descriptor:e,status:s,type:i,createdAt:r.created_at,relatedTransactionUri:r.related_transaction_uri,userId:r.user_id})}class Kt extends Tt{constructor({amount:t,createdAt:e,descriptor:s,id:i,network:r,status:a,sourceUri:n,trackingKey:c,userId:o}){super({amount:t,createdAt:e,descriptor:s,status:a,userId:o}),this.id=i,this.network=J(T,r),this.sourceUri=n,this.trackingKey=c}static fromObject=({amount:t,descriptor:e,id:s,network:i,status:r,...a})=>new Kt({amount:t,descriptor:e,id:s,network:i,status:r,createdAt:a.created_at,sourceUri:a.source_uri,trackingKey:a.tracking_key,userId:a.user_id})}class Ft{constructor({extension:t,type:e,url:s,userId:i}){this.extension=t,this.type=J(D,e),this.url=s,this.userId=i}static fromObject=({extension:t,type:e,url:s,...i})=>new Ft({extension:t,type:e,url:s,userId:i.user_id})}class Rt{constructor({platformId:t,attemps:e,verificationId:s,filesUri:i}){this.attemps=e,this.filesUri=i,this.platformId=t,this.verificationId=s}static fromObject=({attemps:t,...e})=>new Rt({attemps:t,filesUri:e.files_uri,platformId:e.platform_id,verificationId:e.verification_id})}class Vt{constructor({id:t}){this.id=t}static fromObject=({id:t})=>new Vt({id:t})}class Ht{constructor({balance:t,createdAt:e,deactivatedAt:s,id:i,userId:r,updatedAt:a}){this.balance=t,this.createdAt=G(e),this.deactivatedAt=G(s),this.id=i,this.userId=r,this.updatedAt=G(a)}}class Yt extends Ht{constructor({balance:t,category:e,createdAt:s,deactivatedAt:i,goalAmount:r,goalDate:a,id:n,name:c,userId:o,updatedAt:d}){super({balance:t,createdAt:s,deactivatedAt:i,id:n,userId:o,updatedAt:d}),this.category=J(K,e),this.goalAmount=r,this.goalDate=G(a),this.name=c}static fromObject=({balance:t,category:e,id:s,name:i,...r})=>new Yt({balance:t,category:e,id:s,name:i,createdAt:r.created_at,deactivatedAt:r.deactivated_at,goalAmount:r.goal_amount,goalDate:r.goal_date,userId:r.user_id,updatedAt:r.updated_at})}class Qt{constructor({categories:t,id:e,name:s,providerKey:i}){var r;this.categories=null==(r=t)?[]:r.map((t=>J(E,t))),this.id=e,this.name=s,this.providerKey=i}static fromObject=({categories:t,id:e,name:s,...i})=>new Qt({categories:t,id:e,name:s,providerKey:i.provider_key})}class Wt{constructor({createdAt:t,expiresAt:e,failureUrl:s,id:i,platformId:r,successUrl:a,type:n,userId:c}){this.createdAt=G(t),this.expiresAt=G(e),this.failureUrl=s,this.id=i,this.platformId=r,this.successUrl=a,this.type=J(F,n),this.userId=c}static fromObject=({id:t,type:e,...s})=>new Wt({id:t,type:e,createdAt:s.created_at,expiresAt:s.expires_at,failureUrl:s.failure_url,platformId:s.platform_id,successUrl:s.success_url,userId:s.user_id})}class zt{constructor({createdAt:t,id:e,month:s,year:i}){this.createdAt=G(t),this.id=e,this.month=s,this.year=i}static fromObject=({id:t,month:e,year:s,...i})=>new zt({id:t,month:e,year:s,createdAt:i.created_at})}class Xt extends Tt{constructor({accountNumber:t,amount:e,createdAt:s,descriptor:i,destinationUri:r,id:a,idempotencyKey:n,network:c,recipientName:o,status:d,trackingKey:u,updatedAt:h,userId:l}){super({amount:e,createdAt:s,descriptor:i,status:d,userId:l}),this.accountNumber=t,this.destinationUri=r,this.id=a,this.idempotencyKey=n,this.network=J(Y,c),this.recipientName=o,this.trackingKey=u,this.updatedAt=G(h)}static fromObject=({amount:t,descriptor:e,id:s,network:i,status:r,...a})=>new Xt({amount:t,descriptor:e,id:s,network:i,status:r,accountNumber:a.account_number,createdAt:a.created_at,destinationUri:a.destination_uri,idempotencyKey:a.idempotency_key,recipientName:a.recipient_name,trackingKey:a.tracking_key,updatedAt:a.updated_at,userId:a.user_id})}class Gt{constructor({address:t,blacklistValidationStatus:e,clabe:s,countryOfBirth:i,createdAt:r,curp:a,curpDocument:n,dateOfBirth:c,emailAddress:o,firstSurname:d,gender:u,govtId:h,id:l,level:p,names:m,nationality:f,phoneNumber:w,proofOfAddress:_,proofOfLife:b,requiredLevel:g,rfc:y,secondSurname:v,stateOfBirth:O,status:A,termsOfService:j,updatedAt:x,verificationId:I}){this.setAddress=t,this.blacklistValidationStatus=J(W,e),this.clabe=s,this.countryOfBirth=i,this.createdAt=G(r),this.curp=a,this.setCurpDoc=n,this.dateOfBirth=c,this.emailAddress=o,this.firstSurname=d,this.gender=u,this.id=l,this.level=p,this.names=m,this.nationality=f,this.phoneNumber=w,this.setGovtId=h,this.setProofOfAddress=_,this.setProofOfLife=b,this.requiredLevel=g,this.rfc=y,this.secondSurname=v,this.stateOfBirth=O,this.status=J(Q,A),this.setTerms=j,this.updatedAt=G(x),this.verificationId=I}get address(){return this._address}set setAddress(t){t&&(this._address=vt.fromObject(t))}get proofOfAddress(){return this._proofOfAddress}set setProofOfAddress(t){t&&(this._proofOfAddress=yt.fromObject(t))}get proofOfLife(){return this._proofOfLife}set setProofOfLife(t){t&&(this._proofOfLife=yt.fromObject(t))}get govtId(){return this._govtId}set setGovtId(t){t&&(this._govtId=yt.fromObject(t))}get termsOfService(){return this._termsOfService}set setTerms(t){t&&(this._termsOfService=bt.fromObject(t))}get curpDocument(){return this._curpDocument}set setCurpDoc(t){t&&(this._curpDocument=yt.fromObject(t))}static fromObject=({address:t,clabe:e,curp:s,gender:i,id:r,level:a,names:n,nationality:c,rfc:o,status:d,...u})=>new Gt({address:t,clabe:e,curp:s,gender:i,id:r,level:a,names:n,nationality:c,rfc:o,status:d,blacklistValidationStatus:u.blacklist_validation_status,countryOfBirth:u.country_of_birth,createdAt:u.created_at,curpDocument:u.curp_document,dateOfBirth:u.date_of_birth,emailAddress:u.email_address,firstSurname:u.first_surname,govtId:u.govt_id,phoneNumber:u.phone_number,proofOfAddress:u.proof_of_address,proofOfLife:u.proof_of_life,requiredLevel:u.required_level,secondSurname:u.second_surname,stateOfBirth:u.state_of_birth,termsOfService:u.terms_of_service,updatedAt:u.updated_at,verificationId:u.verification_id})}class Jt{constructor({createdAt:t,id:e,isActive:s,updatedAt:i}){this.createdAt=G(t),this.id=e,this.isActive=s,this.updatedAt=G(i)}static fromObject=({id:t,...e})=>new Jt({id:t,createdAt:e.created_at,isActive:e.is_active,updatedAt:e.updated_at})}class Zt{constructor({id:t,lastLoginAt:e,success:s}){this.id=t,this.lastLoginAt=G(e),this.success=s}static fromObject=({id:t,success:e,...s})=>new Zt({id:t,success:e,lastLoginAt:s.last_login_at})}class te{constructor({createdAt:t,id:e,platformId:s,recipient:i,type:r,updatedAt:a}){this.createdAt=G(t),this.id=e,this.platformId=s,this.recipient=i,this.type=J(z,r),this.updatedAt=G(a)}static fromObject=({id:t,recipient:e,type:s,...i})=>new te({id:t,recipient:e,type:s,createdAt:i.created_at,platformId:i.platform_id,updatedAt:i.updated_at})}class ee extends Tt{constructor({amount:t,createdAt:e,descriptor:s,id:i,status:r,transactionType:a,userId:n,walletUri:c}){super({amount:t,createdAt:e,descriptor:s,status:r,userId:n}),this.id=i,this.transactionType=J(X,a),this.walletUri=c}static fromObject=({amount:t,descriptor:e,id:s,status:i,...r})=>new ee({amount:t,descriptor:e,id:s,status:i,createdAt:r.created_at,transactionType:r.transaction_type,userId:r.user_id,walletUri:r.wallet_uri})}class se extends Tt{constructor({amount:t,claimUrl:e,createdAt:s,descriptor:i,destinationUri:r,expiresAt:a,id:n,network:c,phoneNumber:o,recipientName:d,status:u,trackingKey:h,updatedAt:l,userId:p}){super({amount:t,createdAt:s,descriptor:i,status:u,userId:p}),this.claimUrl=e,this.destinationUri=r,this.id=n,this.expiresAt=G(a),this.network=J(Y,c),this.phoneNumber=o,this.recipientName=d,this.trackingKey=h,this.updatedAt=G(l)}static fromObject=({amount:t,descriptor:e,id:s,network:i,status:r,...a})=>new se({amount:t,descriptor:e,id:s,network:i,status:r,createdAt:a.created_at,claimUrl:a.claim_url,destinationUri:a.destination_uri,expiresAt:a.expires_at,phoneNumber:a.phone_number,recipientName:a.recipient_name,trackingKey:a.tracking_key,updatedAt:a.updated_at,userId:a.user_id})}class ie{constructor(t){this.superclass=t}with(...t){return t.reduce(((t,e)=>e(t)),this.superclass)}}const re=t=>new ie(t),ae=(t,e)=>({accounts:()=>xt.fromObject(e),alerts:()=>It.fromObject(e),api_keys:()=>kt.fromObject(e),arpc:()=>Ct.fromObject(e),balance_entries:()=>Nt.fromObject(e),bill_payments:()=>St.fromObject(e),"bridge/accounts":()=>Ut.fromObject(e),"bridge/bank_accounts":()=>Dt.fromObject(e),"bridge/clabes":()=>Pt.fromObject(e),"bridge/kyc_validations":()=>Rt.fromObject(e),"bridge/sessions":()=>Wt.fromObject(e),"bridge/transactions":()=>qt.fromObject(e),cards:()=>Bt.fromObject(e),card_activations:()=>Lt.fromObject(e),card_transactions:()=>Mt.fromObject(e),card_validations:()=>$t.fromObject(e),commissions:()=>Et.fromObject(e),deposits:()=>Kt.fromObject(e),files:()=>Ft.fromObject(e),kyc_validations:()=>Rt.fromObject(e),login_tokens:()=>Vt.fromObject(e),savings:()=>Yt.fromObject(e),service_providers:()=>Qt.fromObject(e),sessions:()=>Wt.fromObject(e),statements:()=>zt.fromObject(e),transfers:()=>Xt.fromObject(e),users:()=>Gt.fromObject(e),user_credentials:()=>Jt.fromObject(e),user_logins:()=>Zt.fromObject(e),verifications:()=>te.fromObject(e),wallet_transactions:()=>ee.fromObject(e),whatsapp_transfers:()=>se.fromObject(e)}[t]()),ne=t=>{if(null===t||""===t)return null;const e=t.match("/(.*?)/");return null===e?null:e[0].replaceAll("/","")};class ce{constructor(t,e,s){this.path=t,this.QueryParams=e,this.client=s}}const oe=t=>class extends t{async retrieve(t){const e=await this.client.get({endpoint:`/${this.path}/${t}`});return ae(this.path,e)}},de=t=>class extends t{async _create(t){const e=await this.client.post({endpoint:`/${this.path}`,data:t});return ae(this.path,e)}},ue=t=>class extends t{async _update(t,e){const s=await this.client.patch({endpoint:`/${this.path}/${t}`,data:e});return ae(this.path,s)}},he=t=>class extends t{async _upload(t){const e=await this.client.post({endpoint:`/${this.path}`,data:t,multipart:!0});return ae(this.path,e)}},le=t=>class extends t{async _deactivate(t,e){const s=await this.client.delete({endpoint:`/${this.path}/${t}`,data:e});return ae(this.path,s)}},pe=t=>class extends t{async _download(t,e){return await this.client.get({endpoint:`/${this.path}/${t}`,format:e})}},me=t=>class extends t{async one(t=new this.QueryParams({})){const{items:e}=await this.client.get({endpoint:`/${this.path}`,params:t.toParams()});if(!e||!e.length)throw new o;if(e.length>1)throw new d;const[s]=e;return ae(this.path,s)}async first(t=new this.QueryParams({})){const{items:e}=await this.client.get({endpoint:`/${this.path}`,params:t.toParams()});if(!e||!e[0])return null;const[s]=e;return ae(this.path,s)}async count(t=new this.QueryParams({})){t.count=!0;const{count:e}=await this.client.get({endpoint:`/${this.path}`,params:t.toParams()});return e||0}async*all(t=new this.QueryParams({})){let e=`/${this.path}?${t.toQueryString()}`;for(;e;){const t=await this.client.get({endpoint:e});if(t.items)for(const e of t.items){const t=ae(this.path,e);yield t}e=t.next_page_uri}}};class fe extends(re(ce).with(me,oe)){constructor(t){super("accounts",tt,t)}}class we{toObject(){return{}}toCleanObject(){const t=this.toObject();return Object.keys(t).forEach((e=>{null==t[e]&&delete t[e]})),t}}class _e extends we{constructor({accountNumber:t,actualPeriodCount:e,actualPeriodSum:s,aggent:i,aggregationType:r,changeLog:a,committeeMeetingDate:n,comments:c,createdAt:o,description:d,id:u,institutionName:h,level:l,manualScenario:p,name:m,period:f,periodNumber:w,status:_,sourceType:b,transactionDate:g,type:y,typeOfFilter:v,updatedAt:O,userId:A}={}){super(),this.accountNumber=t,this.actualPeriodCount=e,this.actualPeriodSum=s,this.aggent=i,this.aggregationType=r,this.changeLog=a,this.committeeMeetingDate=n,this.createdAt=o,this.comments=c,this.description=d,this.id=u,this.institutionName=h,this.level=l,this.name=m,this.manualScenario=p,this.period=f,this.periodNumber=w,this.status=_,this.sourceType=b,this.transactionDate=g,this.type=y,this.typeOfFilter=v,this.updatedAt=O,this.userId=A}toObject(){return{aggent:this.aggent,change_log:this.changeLog,comments:this.comments,description:this.description,id:this.id,level:this.level,name:this.name,period:this.period,status:this.status,type:this.type,account_number:this.accountNumber,actual_period_count:this.actualPeriodCount,actual_period_sum:this.actualPeriodSum,aggregation_type:this.aggregationType,committee_meeting_date:this.committeeMeetingDate,created_at:this.createdAt,institution_name:this.institutionName,manual_scenario:this.manualScenario,period_number:this.periodNumber,transaction_date:this.transactionDate,source_type:this.sourceType,type_of_filter:this.typeOfFilter,updated_at:this.updatedAt,user_id:this.userId}}}class be extends(re(ce).with(de,me,oe,ue)){constructor(t){super("alerts",nt,t)}async create(...t){const e=new _e(t);return await this._create(e.toObject())}async update(t,{...e}){const s=new _e(e);return await this._update(t,s.toObject())}}class ge extends we{constructor(t,e){super(),this.userId=t,this.metadata=e}toObject(){return{user_id:this.userId,metadata:this.metadata}}}class ye extends we{constructor(t,e,s){super(),this.userId=t,this.issuer=e,this.fundingType=s}toObject(){return{user_id:this.userId,issuer:this.issuer,funding_type:this.fundingType}}}class ve extends we{constructor(t,e){super(),this.status=t,this.pinBlock=e}toObject(){return{status:this.status,pin_block:this.pinBlock}}}class Oe extends we{constructor(t,e,s,i){super(),this.n=t,this.eM=e,this.eY=s,this.c2=i}get number(){return this._number}set n(t){if([!!t,16===t.length,/^\d{16}/.test(t)].some((t=>!t)))throw new l("Invalid number");this._number=t.trim()}get expMonth(){return this._expMonth}set eM(t){if([!!t,t>=1,t<=12].some((t=>!t)))throw new l("Invalid expiration month");this._expMonth=t}get expYear(){return this._expYear}set eY(t){if([!!t,t>=18,t<=99].some((t=>!t)))throw new l("Invalid expiration year");this._expYear=t}get cvv2(){return this._cvv2}set c2(t){if([!!t,3===t.length,/^\d{3}/.test(t)].some((t=>!t)))throw new l("Invalid cvv2");this._cvv2=t}toObject(){return{number:this.number,exp_month:this.expMonth,exp_year:this.expYear,cvv2:this.cvv2}}}class Ae extends we{constructor({cvv:t,cvv2:e,expMonth:s,expYear:i,icvv:r,number:a,pinBlock:n,pinAttemptsExceeded:c}){super(),this.c=t,this.c2=e,this.em=s,this.ey=i,this.ic=r,this.n=a,this.pinBloc=n,this.pinAttemptsExceeded=c}get cvv(){return this._cvv}set c(t){if(!t)return;if([3===t.length].some((t=>!t)))throw new l("Invalid cvv");this._cvv=t}get cvv2(){return this._cvv2}set c2(t){if(!t)return;if([3===t.length].some((t=>!t)))throw new l("Invalid cvv2");this._cvv2=t}get expMonth(){return this._expMonth}set em(t){if(!t)return;if([t>=1,t<=12].some((t=>!t)))throw new l("Invalid expiration month");this._expMonth=t}get expYear(){return this._expYear}set ey(t){if(!t)return;if([t>=18,t<=99].some((t=>!t)))throw new l("Invalid expiration year");this._expYear=t}get icvv(){return this._icvv}set ic(t){if(!t)return;if([3===t.length].some((t=>!t)))throw new l("Invalid icvv");this._icvv=t}get number(){return this._number}set n(t){if([!!t,16===t.length,/^\d{16}/.test(t)].some((t=>!t)))throw new l("Invalid number");this._number=t}toObject(){return{cvv:this.cvv,cvv2:this.cvv2,exp_month:this.expMonth,exp_year:this.expYear,icvv:this.icvv,number:this.number,pin_block:this.pinBloc,pin_attempts_exceeded:this.pinAttemptsExceeded}}}class je extends we{constructor({userId:t,force:e,isBridge:s=!1}){super(),this.force=e,this.userId=t,this.isBridge=s}toObject(){return{force:this.force,[this.isBridge?"account_id":"user_id"]:this.userId}}}class xe extends we{constructor(t,e,s,i){super(),this.category=t,this.name=i,this.goalAmount=e,this.validDate=s}get goalDate(){return this._goalDate}set validDate(t){if(t){if(G(t).getTime()<=G(Date.now()).getTime())throw new l("The goal_date always need to be higher than now");this._goalDate=t}}toObject(){return{category:this.category,goal_amount:this.goalAmount,goal_date:this.goalDate,name:this.name}}}class Ie extends we{constructor({failureUrl:t,successUrl:e,type:s,userId:i,isBridge:r=!1}){super(),this.failureUrl=t,this.successUrl=e,this.type=s,this.userId=i,this.isBridge=r}toObject(){return{failure_url:this.failureUrl,success_url:this.successUrl,type:this.type,[this.isBridge?"account_id":"user_id"]:this.userId}}}class ke extends we{constructor(t,e,s,i,r){super(),this.accountNumber=t,this.amount=e,this.descriptor=s,this.idempotencyKey=i,this.recipientName=r}toObject(){return{account_number:this.accountNumber,amount:this.amount,descriptor:this.descriptor,idempotency_key:this.idempotencyKey,recipient_name:this.recipientName}}}class Ce extends we{constructor(t){super(),this.pwd=t}get password(){return this._password}set pwd(t){if([!!t,t.length>=6].some((t=>!t)))throw new l("Invalid password");this._password=t}toObject(){return{password:this.password}}}class Ne extends we{constructor(t,e){super(),this.pwd=t,this.isActive=e,this.req={password:this.password,isActive:this.isActive}}get password(){return this._password}get request(){return this._request}set pwd(t){if(!t)return void(this._password=t);if([t.length>=6].some((t=>!t)))throw new l("Invalid password");this._password=t}set req(t){if(t.password&&null!=t.isActive)throw new l("Only one property can be updated at a time");this._request=t}toObject(){return{password:this.request.password,is_active:this.request.isActive}}}class Te extends we{constructor(t,e="me"){super(),this.pwd=t,this.userId=e}get password(){return this._password}set pwd(t){if([!!t,6===t.length,/^\d{6}$/.test(t)].some((t=>!t)))throw new l("Invalid password");this._password=t}toObject(){return{password:this.password,user_id:this.userId}}}class Se extends we{constructor({ip:t,location:e,type:s,version:i}){super(),this.ipAddress=t,this.location=e,this.type=s,this.version=i}get ip(){return this._ip}set ipAddress(t){if(!t)throw new l("missing ip address");if(!t.split(".").every((t=>t>=0&&t<=255)))throw new l("Invalid ip address");this._ip=t}toObject(){return{ip:this.ip,location:this.location,type:this.type,version:this.version}}}class Ue extends we{constructor({city:t,colonia:e,country:s,extNumber:i,fullName:r,intNumber:a,postalCode:n,state:c,street:o}={}){super(),this.city=t,this.colonia=e,this.country=s,this.extNumber=i,this.fullName=r,this.intNumber=a,this.postalCode=n,this.state=c,this.street=o}toObject(){return{city:this.city,colonia:this.colonia,country:this.country,ext_number:this.extNumber,full_name:this.fullName,int_number:this.intNumber,postal_code:this.postalCode,state:this.state,street:this.street}}}class De extends we{constructor({data:t,isMx:e,status:s,type:i,uriBack:r,uriFront:a}){super(),this.data=t,this.isMx=e,this.status=s,this.type=i,this.uriBack=r,this.uriFront=a}toObject(){return{data:this.data,is_mx:this.isMx,status:this.status,type:this.type,uri_back:this.uriBack,uri_front:this.uriFront}}}class Pe extends we{constructor({address:t,curpDocumentUri:e,govtId:s,profession:i,proofOfAddress:r,proofOfLife:a,requiredLevel:n,termsOfService:c,verificationId:o}){super(),this.adrs=t,this.curpDocumentUri=e,this.govstIds=s,this.profession=i,this.addressProofs=r,this.lifeProofs=a,this.requiredLevel=n,this.terms=c,this.verificationId=o}get termsOfService(){return this._termsOfService}set terms(t){t&&(this._termsOfService=new Se(t).toObject())}get address(){return this._address}set adrs(t){t&&(this._address=new Ue(t).toCleanObject())}get proofOfLife(){return this._proofOfLife}set lifeProofs(t){t&&(this._proofOfLife=new De(t).toCleanObject())}get proofOfAddress(){return this._proofOfAddress}set addressProofs(t){t&&(this._proofOfAddress=new De(t).toCleanObject())}get govtId(){return this._govtId}set govstIds(t){t&&(this._govtId=new De(t).toCleanObject())}toObject(){return{address:this.address,curp_document_uri:this.curpDocumentUri,profession:this.profession,requiredLevel:this.requiredLevel,terms_of_service:this.termsOfService,verification_id:this.verificationId,proof_of_life:this.proofOfLife,proof_of_address:this.proofOfAddress,govt_id:this.govtId}}}class qe extends we{constructor({platformId:t,recipient:e,type:s}){super(),this.platformId=t,this.type=s,this.recipients=e}get recipient(){return this._recipient}set recipients(t){switch(J(z,this.type)){case z.Email:if(!t.match(/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/))throw new l("Invalid email address");this._recipient=t;break;case z.Phone:if(!t.match(/^\+?[0-9]{10,15}$/))throw new l("Invalid Phone Number");this._recipient=t}}toObject(){return{platform_id:this.platformId,recipient:this.recipient,type:this.type}}}class Be extends we{constructor({code:t}){super(),this.code=t}toObject(){return{code:this.code}}}class Le extends we{constructor(t,e,s){super(),this.amount=t,this.transactionType=e,this.walletUri=s}toObject(){return{amount:this.amount,transaction_type:this.transactionType,wallet_uri:this.walletUri}}}class Me extends(re(ce).with(de,le,me,oe,ue)){constructor(t){super("api_keys",et,t)}async create(){return await this._create()}async deactivate(t,e=0){return await this._deactivate(t,{minutes:e})}async update(t,e,s){const i=new ge(s,e);return await this._update(t,i.toCleanObject())}}class $e extends(re(ce).with(de)){constructor(t){super("arpc",Object,t)}async create({number:t,arqc:e,arpcMethod:s,transactionData:i,responseCode:r,transactionCounter:a,panSequence:n,uniqueNumber:c,trackDataMethod:o}){const d=new ArpcRequest({number:t,arqc:e,arpcMethod:s,transactionData:i,responseCode:r,transactionCounter:a,panSequence:n,uniqueNumber:c,trackDataMethod:o});return await this._create(d.toObject())}}class Ee extends(re(ce).with(me,oe)){constructor(t){super("balance_entries",at,t)}async relatedTransaction(t){const e=ne(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return ae(`${e}`,s)}async fundingInstrument(t){const e=ne(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return ae(`${e}`,s)}}class Ke extends(re(ce).with(me,oe)){constructor(t){super("bill_payments",ct,t)}async serviceProvider(t){const e=ne(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return ae(`${e}`,s)}}class Fe extends(re(ce).with(me,ue,oe)){constructor(t){super("bridge/accounts",mt,t)}async update({userId:t="me",...e}){const s=new Pe(e);return await this._update(t,s.toCleanObject())}}class Re extends(re(ce).with(me,oe)){constructor(t){super("bridge/bank_accounts",wt,t)}}class Ve extends(re(ce).with(me)){constructor(t){super("bridge/clabes",ft,t)}}class He extends(re(ce).with(me,oe)){constructor(t){super("bridge/transactions",_t,t)}}class Ye extends(re(ce).with(de)){constructor(t){super("card_activations",Object,t)}async create({number:t,expMonth:e,expYear:s,cvv2:i}){const r=new Oe(t,e,s,i);return await this._create(r.toCleanObject())}async card(t){if(!t)return null;const e=await this.client.get({endpoint:t});return Bt.fromObject(e)}}class Qe extends(re(ce).with(de,le,me,oe,ue)){constructor(t){super("cards",dt,t)}async create(t,e,s){const i=new ye(t,e,s);return await this._create(i.toCleanObject())}async deactivate(t){return await this._deactivate(t)}async update(t,e,s){const i=new ve(e,s);return await this._update(t,i.toCleanObject())}}class We extends(re(ce).with(me,oe)){constructor(t){super("card_transactions",ot,t)}async relatedCard(t){const e=ne(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return ae(`${e}`,s)}}class ze extends(re(ce).with(de)){constructor(t){super("card_validations",Object,t)}async create({cvv:t,cvv2:e,expMonth:s,expYear:i,icvv:r,number:a,pinBlock:n,pinAttemptsExceeded:c}){const o=new Ae({cvv:t,cvv2:e,expMonth:s,expYear:i,icvv:r,number:a,pinBlock:n,pinAttemptsExceeded:c});return await this._create(o.toCleanObject())}async card(t){if(!t)return null;const e=await this.client.get({endpoint:t});return Bt.fromObject(e)}}class Xe extends(re(ce).with(me,oe)){constructor(t){super("commissions",Z,t)}async relatedTransaction(t){const e=ne(t);if(null==e)return null;const s=await this.client.get(t);return ae(`${e}`,s)}}class Ge extends(re(ce).with(me,oe)){constructor(t){super("deposits",it,t)}async source(t){const e=await this.client.get({endpoint:t});return xt.fromObject(e)}}class Je extends(re(ce).with(pe,he)){constructor(t){super("files",Object,t)}async download(t){return await this._download(t,U.Any)}async upload(t){return await this._upload(t)}}class Ze extends(re(ce).with(de,oe,me)){constructor(t,e=!1){super(e?"bridge/kyc_validations":"kyc_validations",Object,t),this.isBridge=e}async create(t="me",e=!1){const s=new je({force:e,userId:t,isBridge:this.isBridge});return await this._create(s.toCleanObject())}}class ts extends(re(ce).with(de)){constructor(t){super("login_tokens",Object,t)}async create(){return await this._create()}}class es extends(re(ce).with(de,le,me,oe,ue)){constructor(t){super("savings",lt,t)}async create(t,e,s,i){const r=new xe(t,e,s,i);return await this._create(r.toObject())}async deactivate(t){return await this._deactivate(t)}async update(t,e,s,i,r){const a=new xe(e,s,i,r);return await this._update(t,a.toObject())}}class ss extends(re(ce).with(me,oe)){constructor(t){super("service_providers",Z,t)}}class is extends(re(ce).with(de,oe,me)){constructor(t,e=!1){super(e?"bridge/sessions":"sessions",Object,t),this.isBridge=e}async create(t,e,s,i){const r=new Ie({failureUrl:i,successUrl:s,type:e,userId:t,isBridge:this.isBridge});return await this._create(r.toCleanObject())}}class rs extends(re(ce).with(pe,me)){constructor(t){super("statements",pt,t)}async pdf(t){return await this._download(t,U.Pdf)}async xml(t){return await this._download(t,U.Xml)}}class as extends(re(ce).with(de,me,oe)){constructor(t){super("transfers",rt,t)}async destination(t){const e=await this.client.get({endpoint:t});return xt.fromObject(e)}async create({accountNumber:t,amount:e,descriptor:s,recipientName:i,idempotencyKey:r}){const a=r||this.constructor._genIdempotencyKey(t,e),n=new ke(t,e,s,a,i);return await this._create(n.toCleanObject())}async createMany(t){if(!t||!Array.isArray(t)||!t.length)return{};const e={submitted:[],errors:[]};return await Promise.all(t.map((async({accountNumber:t,amount:s,descriptor:i,idempotencyKey:r,recipientName:a})=>{const n=new ke(t,s,i,r||this.constructor._genIdempotencyKey(t,s),a);let c;try{c=await this._create(n.toCleanObject())}catch(t){return void e.errors.push({actualRequest:n,error:t})}e.submitted.push(c)}))),e}static _genIdempotencyKey(t,e){const[s]=G(Date.now()).toISOString().split("T");return`${s}:${t}:${e}`}}class ns extends(re(ce).with(de,ue)){constructor(t){super("user_credentials",Object,t)}async create(t){const e=new Ce(t);return await this._create(e.toObject())}async update({isActive:t,password:e,userId:s="me"}){const i=new Ne(e,t);return await this._update(s,i.toCleanObject())}}class cs extends(re(ce).with(de,le)){constructor(t){super("user_logins",Object,t),this.loginIdInHeaders=null}async create(t,e){const s=new Te(t,e),i=await this._create(s.toObject());if(!i.success)throw new h;return this.loginIdInHeaders=this.client.addHeadersToRequest({"X-Cuenca-LoginId":i.id}),i}async logOut(t="me"){return await this._deactivate(t,{}),this.loginIdInHeaders&&this.loginIdInHeaders.eject(),!0}}class os extends(re(ce).with(me,ue,oe)){constructor(t){super("users",ht,t)}async update({userId:t="me",...e}){const s=new Pe(e);return await this._update(t,s.toCleanObject())}}class ds extends(re(ce).with(de,ue)){constructor(t){super("verifications",Object,t)}async create({platformId:t,recipient:e,type:s}){const i=new qe({platformId:t,recipient:e,type:s});return await this._create(i.toObject())}async update({code:t,id:e}){const s=new Be({code:t});return await this._update(e,s.toObject())}}class us extends(re(ce).with(de,me,oe)){constructor(t){super("wallet_transactions",ut,t)}async create(t,e,s){const i=new Le(t,e,s);return await this._create(i.toObject())}async realtedWallet(t){const e=ne(t);if(null==e)return null;const s=await this.client.get(t);return ae(`${e}`,s)}}class hs extends(re(ce).with(me,oe)){constructor(t){super("whatsapp_transfers",Z,t)}async accountDestination(t){const e=ne(t);if(null==e)return null;const s=await this.client.get(t);return ae(`${e}`,s)}}t.Cuenca=class{constructor({apiKey:t,apiSecret:e,language:s="en",phase:i=M.Sandbox}={}){this.client=new jt({apiKey:t,apiSecret:e,language:s,phase:i}),this.withClient(this.client)}withClient(t){this.accounts=new fe(t),this.alerts=new be(t),this.apiKeys=new Me(t),this.balanceEntries=new Ee(t),this.billPayments=new Ke(t),this.bridgeAccounts=new Fe(t),this.bridgeBankAccounts=new Re(t),this.bridgeClabes=new Ve(t),this.bridgeKycValidations=new Ze(t,!0),this.bridgeSessions=new is(t,!0),this.bridgeTransactions=new He(t),this.cardActivations=new Ye(t),this.cards=new Qe(t),this.cardTransactions=new We(t),this.cardValidations=new ze(t),this.commissions=new Xe(t),this.deposits=new Ge(t),this.files=new Je(t),this.kycValidations=new Ze(t),this.loginTokens=new ts(t),this.savings=new es(t),this.serviceProviders=new ss(t),this.sessions=new is(t),this.statements=new rs(t),this.transfers=new as(t),this.userCredentials=new ns(t),this.userLogins=new cs(t),this.users=new os(t),this.verifications=new ds(t),this.walletTransactions=new us(t),this.whatsAppTransfers=new hs(t)}}})); | ||
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("axios"),require("buffer")):"function"==typeof define&&define.amd?define(["exports","axios","buffer"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).cuenca={},t.axios,t.Buffer)}(this,(function(t,e,s){"use strict";function i(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var r=i(e),a=i(s);class n extends Error{constructor(t){super(t),Object.setPrototypeOf(this,n.prototype)}}class c extends n{constructor(t,e){super(`Cuenca Response Error: ${e}`),this.name="CuencaResponseError",this.data=t,this.status=e,Object.setPrototypeOf(this,c.prototype)}}class o extends n{constructor(){super("No results were found"),this.name="NoResultFound",Object.setPrototypeOf(this,o.prototype)}}class d extends n{constructor(){super("One result was expected but multiple were found"),this.name="MultipleResultsFound",Object.setPrototypeOf(this,d.prototype)}}class u extends n{constructor(){super("An invalid JWT token was obtained during authentication"),this.name="MalformedJwtToken",Object.setPrototypeOf(this,u.prototype)}}class h extends n{constructor(){super("Invalid password"),this.name="InvalidPassword",Object.setPrototypeOf(this,h.prototype)}}class l extends Error{constructor(t){super(t),Object.setPrototypeOf(this,l.prototype)}}const p="undefined"!=typeof window&&void 0!==window.document,m="undefined"!=typeof process&&"[object process]"===Object.prototype.toString.call(process),f=p,w=m;class _{constructor(t,e){this.expiresAt=t,this.token=e}get isExpired(){const t=new Date;return(this.expiresAt.valueOf()-t.valueOf())/6e4<=5}static getExpirationDate=t=>{let e;try{const[,s]=t.split(".");e=JSON.parse(a.default.Buffer.from(`${s}==`,"base64").toString())}catch(t){throw new u}const{exp:s}=e;return new Date(new Date(1e3*s).toUTCString())};static create=async t=>{const e=t;e.jwtToken=null;const s=e.deleteRequestHeader("X-Cuenca-Token"),{token:i}=await t.post("token",{});s.eject();const r=_.getExpirationDate(i);return new _(r,i)}}class b{static Created=new b("created");static ReadyForAnalysis=new b("ready_for_analysis");static Analysis=new b("analysis");static Dictum=new b("dictum");static Justified=new b("justified");static Unusual=new b("unusual");static Reported=new b("reported");constructor(t){this.value=t}}class g{static Succeeded=new g("succeeded");static NotValidated=new g("not_validated");static Failed=new g("failed");static OnWaitList=new g("on_wait_list");constructor(t){this.value=t}}class y{static Created=new y("created");static Failed=new y("failed");static Pending=new y("pending");static Succeeded=new y("succeeded");constructor(t){this.value=t}}class v{static Blocked=new v("blocked");static Comunication=new v("comunication");static ContactlesAmountLimit=new v("contactles_amount_limit");static FraudDetection=new v("fraud_detection");static FraudDetectionUncertain=new v("fraud_detection_uncertain");static InsufficientFounds=new v("insufficient_founds");static InvalidPin=new v("invalid_pin");static Notification=new v("notification");static NotificationDeactivatedCard=new v("notification_deactivated_card");constructor(t){this.value=t}}class O{static Credit=new O("credit");static Debit=new O("debit");constructor(t){this.value=t}}class A{static Accendo=new A("accendo");static Cuenca=new A("cuenca");constructor(t){this.value=t}}class j{static Buy=new j("buy");static Sell=new j("sell");constructor(t){this.value=t}}class x{static Active=new x("active");static Blocked=new x("blocked");static Created=new x("created");static Deactivated=new x("deactivated");static Printing=new x("printing");constructor(t){this.value=t}}class I{static Auth=new I("auth");static Capture=new I("capture");static Chargeback=new I("chargeback");static Expiration=new I("expiration");static Refund=new I("refund");static Void=new I("void");constructor(t){this.value=t}}class k{static Mxn=new k("mxn");static Usdc=new k("usdc");static Sol=new k("sol");constructor(t){this.value=t}}class C{static Physical=new C("physical");static Virtual=new C("virtual");constructor(t){this.value=t}}class N{static CardRequest=new N("card_request");static CashDeposit=new N("cash_deposit");static OutgoingSpei=new N("outgoing_spei");constructor(t){this.value=t}}class T{static Cash=new T("cash");static Internal=new T("internal");static Spei=new T("spei");constructor(t){this.value=t}}class S{static Credit=new S("credit");static Debit=new S("debit");constructor(t){this.value=t}}class U{static Pdf=new U("application/pdf");static Xml=new U("application/xml");static Json=new U("application/json");static Any=new U("*/*");constructor(t){this.value=t}}class D{static Curp=new D("curp");static Dni=new D("dni");static Ine=new D("ine");static Passport=new D("passport");static Residency=new D("residency");static MatriculaConsular=new D("matricula_consular");static ProofOfLiveness=new D("proof_of_liveness");static ProofOfAddress=new D("proof_of_address");constructor(t){this.value=t}}class P{static Low=new P("low");static Medium=new P("medium");static High=new P("high");constructor(t){this.value=t}}class q{static Deposit=new q("deposit");static Withdrawal=new q("withdrawal");constructor(t){this.value=t}}class B{static Bimester=new B("bimester");static Trimester=new B("trimester");static Semester=new B("semester");constructor(t){this.value=t}}class L{static Polygon=new L("polygon");static Solana=new L("solana");constructor(t){this.value=t}}class M{static Sandbox=new M("sandbox-api");static Stage=new M("stage-api");static Api=new M("api");constructor(t){this.value=t}}class ${static Amount=new $("amount");static Volume=new $("volume");constructor(t){this.value=t}}class E{static Cable=new E("cable");static CreditCard=new E("credit_card");static Electricity=new E("electricity");static Gas=new E("gas");static Internet=new E("internet");static LandlineTelephone=new E("landline_telephone");static MobileTelephonePostpaid=new E("mobile_telephone_postpaid");static MobileTelephonePrepaid=new E("mobile_telephone_prepaid");static SateliteTelevision=new E("satelite_television");static Water=new E("water");constructor(t){this.value=t}}class K{static General=new K("general");static Home=new K("home");static Vehicle=new K("vehicle");static Travel=new K("travel");static Clothing=new K("clothing");static Other=new K("other");static Medical=new K("medical");static Accident=new K("accident");static Education=new K("education");constructor(t){this.value=t}}class F{static AccountEntries=new F("session.account_entries");static DownloadFile=new F("session.download_file");static Registration=new F("session.registration");static ShowCard=new F("session.show_card");static UploadFile=new F("session.upload_file");constructor(t){this.value=t}}class R{static Chester=new R("chester");static External=new R("external");static Manual=new R("Manual");constructor(t){this.value=t}}class V{static NotSet=new V("not_set");static Terminal=new V("terminal");static Manual=new V("manual");static Unknown=new V("unknown");static Contactless=new V("contactless");static FallBack=new V("fall_back");static MagneticStripe=new V("magnetic_stripe");static RecurringCharge=new V("recurring_charge");constructor(t){this.value=t}}class H{static Created=new H("created");static Failed=new H("failed");static InReview=new H("in_review");static Submitted=new H("submitted");static Succeeded=new H("succeeded");constructor(t){this.value=t}}class Y{static Internal=new Y("internal");static Spei=new Y("spei");constructor(t){this.value=t}}class Q{static Active=new Q("active");static Deactivated=new Q("deactivated");static Fraud=new Q("fraud");static PldBlocked=new Q("pld_blocked");constructor(t){this.value=t}}class W{static Created=new W("created");static NotVerified=new W("not_verified");static Rejected=new W("rejected");static ReviewNeeded=new W("review_needed");static Submitted=new W("submitted");static Succeeded=new W("succeeded");static UploadAgain=new W("upload_again");constructor(t){this.value=t}}class z{static Phone=new z("phone");static Email=new z("email");constructor(t){this.value=t}}class X{static Deposit=new X("deposit");static Withdrawal=new X("withdrawal");constructor(t){this.value=t}}const G=t=>{if(!t)return null;const e=new Date(t);return new Date(e.getTime())},J=(t,e)=>Object.values(t).find((t=>t.value===e));class Z{constructor({createdAfter:t,createdBefore:e,limit:s,pageSize:i,relatedTransaction:r,userId:a,count:n=!1}){this.createdAfter=t,this.createdBefore=e,this._lmt=s,this.relatedTransaction=r,this.userId=a,this.count=n,this.pageSize=i}get limit(){return this._limit}set _lmt(t){let e=null;t&&t>=0&&(e=t),this._limit=e}toObject(){return{created_after:this.createdAfter,created_before:this.createdBefore,limit:this.limit,related_transaction:this.relatedTransaction,user_id:this.userId,page_size:this.pageSize&&this.pageSize.size}}toParams(){const t={...this.toObject()};return this.count&&(t.count=1),Object.keys(t).forEach((e=>{null==t[e]&&delete t[e]})),t}toQueryString(){return new URLSearchParams(this.toParams()).toString()}}class tt extends Z{constructor({accountNumber:t,...e}){super(e),this.accountNumber=t}toObject(){return Object.assign(super.toObject(),{account_number:this.accountNumber})}}class et extends Z{constructor({active:t,...e}){super(e),this.active=t}toObject(){return Object.assign(super.toObject(),{active:this.active})}}class st extends Z{constructor({status:t,...e}){super(e),this.status=t}toObject(){return Object.assign(super.toObject(),{status:this.status})}}class it extends st{constructor({trackingKey:t,network:e,...s}){super(s),this.trackingKey=t,this.network=e}toObject(){return Object.assign(super.toObject(),{tracking_key:this.trackingKey,network:this.network})}}class rt extends st{constructor({accountNumber:t,idempotencyKey:e,trackingKey:s,network:i,...r}){super(r),this.accountNumber=t,this.idempotencyKey=e,this.trackingKey=s,this.network=i}toObject(){return Object.assign(super.toObject(),{account_number:this.accountNumber,idempotency_key:this.idempotencyKey,tracking_key:this.trackingKey,network:this.network})}}class at extends Z{constructor({fundingInstrumentUri:t,count:e=!1,walletId:s="default",...i}){super(i),this.fundingInstrumentUri=t,this.count=e,this.walletId=s}toObject(){return Object.assign(super.toObject(),{wallet_id:this.walletId,funding_instrument_uri:this.fundingInstrumentUri,count:this.count})}}class nt extends Z{constructor({aggent:t,comments:e,committeeMeetingDate:s,count:i,hasQuestionnaire:r,inProcess:a,status:n,typeOfFilter:c,transactionDate:o,...d}){super(d),this.aggent=t,this.comments=e,this.committeeMeetingDate=s,this.count=i,this.hasQuestionnaire=r,this.inProcess=a,this.status=n,this.typeOfFilter=c,this.transactionDate=o}toObject(){return Object.assign(super.toObject(),{aggent:this.aggent,comments:this.comments,committee_meeting_date:this.committeeMeetingDate,count:this.count,has_questionnaire:this.hasQuestionnaire,in_process:this.inProcess,status:this.status,transaction_date:this.transactionDate,type_of_filter:this.typeOfFilter})}}class ct extends Z{constructor({accountNumber:t,...e}){super(e),this.accountNumber=t}toObject(){return Object.assign(super.toObject(),{account_number:this.accountNumber})}}class ot extends Z{constructor({cardUri:t,...e}){super(e),this.cardUri=t}toObject(){return Object.assign(super.toObject(),{card_uri:this.cardUri})}}class dt extends Z{constructor({cardUri:t,count:e=!1,...s}){super(s),this.cardUri=t,this.count=e}toObject(){return Object.assign(super.toObject(),{card_uri:this.cardUri,count:this.count})}}class ut extends Z{constructor({walletUri:t,...e}){super(e),this.walletUri=t}toObject(){return Object.assign(super.toObject(),{wallet_uri:this.walletUri})}}class ht extends Z{constructor({emailAddress:t,hasCurpDocument:e,phoneNumber:s,status:i,...r}){super(r),this.emailAddress=t,this.hasCurpDocument=e,this.phoneNumber=s,this.status=i}toObject(){return Object.assign(super.toObject(),{email_address:this.emailAddress,has_curp_document:this.hasCurpDocument,phone_number:this.phoneNumber,status:this.status})}}class lt extends Z{constructor({active:t,...e}){super(e),this.active=t}toObject(){return Object.assign(super.toObject(),{active:this.active})}}class pt extends Z{constructor({month:t,year:e,...s}){super(s),this.d={month:t,year:e}}get month(){return this._date.month}get year(){return this._date.year}set d({month:t,year:e}){const s=G(Date.now());s.setUTCDate(1);if(G(`${e}-${t}-01`).getTime()>=s.getTime())throw new l(`${e}-${t} is not a valid year-month pair`);this._date={month:t,year:e}}toObject(){return Object.assign(super.toObject(),{month:this.month,year:this.year})}}class mt extends Z{constructor({emailAddress:t,...e}){super(e),this.emailAddress=t}toObject(){return Object.assign(super.toObject(),{email_address:this.emailAddress})}}class ft extends Z{constructor({accountId:t,...e}){super(e),this.accountId=t}toObject(){return Object.assign(super.toObject(),{account:this.accountId})}}class wt extends Z{constructor({accountId:t,...e}){super(e),this.accountId=t}toObject(){return Object.assign(super.toObject(),{account_id:this.accountId})}}class _t extends ft{constructor({status:t,type:e,...s}){super(s),this.status=t,this.type=e}toObject(){return Object.assign(super.toObject(),{status:this.status,type:this.type})}}class bt{constructor({ip:t,location:e,type:s,version:i}){this.ip=t,this.location=e,this.type=s,this.version=i}static fromObject=({ip:t,location:e,type:s,version:i})=>new bt({ip:t,location:e,type:s,version:i})}class gt{constructor({code:t,error:e,identifier:s,message:i}){this.code=t,this.error=e,this.identifier=s,this.message=i}static fromObject=({code:t,error:e,identifier:s,message:i})=>new gt({code:t,error:e,identifier:s,message:i})}class yt{constructor({data:t,errors:e,isMx:s,status:i,type:r,uriBack:a,uriFront:n}){this.data=t,this.isMx=s,this.status=J(W,i),this.type=J(D,r),this.uriBack=a,this.uriFront=n,e&&e.length>0&&(this.errors=e.map((t=>gt.fromObject(t))))}static fromObject=({data:t,errors:e,status:s,type:i,...r})=>new yt({data:t,errors:e,status:s,type:i,isMx:r.is_mx,uriBack:r.uri_back,uriFront:r.uri_front})}class vt{constructor({city:t,colonia:e,country:s,createdAt:i,extNumber:r,fullName:a,intNumber:n,postalCode:c,state:o,street:d}){this.city=t,this.colonia=e,this.country=s,this.createdAt=G(i),this.extNumber=r,this.fullName=a,this.intNumber=n,this.postalCode=c,this.state=o,this.street=d}static fromObject=({city:t,colonia:e,country:s,state:i,street:r,...a})=>new vt({city:t,colonia:e,country:s,state:i,street:r,createdAt:a.created_at,extNumber:a.ext_number,fullName:a.full_name,intNumber:a.int_number,postalCode:a.postal_code})}class Ot{constructor({aggent:t,createdAt:e,status:s,updatedAt:i}){this.aggent=t,this.createdAt=G(e),this.updatedAt=G(i),this.status=J(b,s)}static fromObject=({aggent:t,status:e,...s})=>new Ot({aggent:t,status:e,createdAt:s.createdAt,updatedAt:s.updatedAt})}var At="0.0.14-dev6";class jt{constructor({apiKey:t,apiSecret:e,language:s="en",phase:i=M.Sandbox}={}){this.phase=i,this.basicAuth={apiKey:t,apiSecret:e},this.jwtToken=null,this._session=r.default.create({headers:{"Accept-Language":s},timeout:45e3})}get session(){return this._session}get origin(){return`https://${this.phase.value}.arteria.xyz`}get authHeader(){const{apiKey:t,apiSecret:e}=this.basicAuth;return t&&e?`Basic ${a.default.Buffer.from(`${t}:${e}`,"utf-8").toString("base64")}`:""}addHeadersToRequest(t){const e=this._session.interceptors.request.use((e=>{const s=e,{headers:{common:i}}=s;return Object.keys(t).forEach((e=>i[e]=t[e])),s}));return{interceptorId:e,eject:()=>this._session.interceptors.request.eject(e)}}deleteRequestHeader(t){const e=this._session.interceptors.request.use((e=>{const s=e,{headers:{common:i}}=s;return delete i[t],s}));return{interceptorId:e,eject:()=>this._session.interceptors.request.eject(e)}}addConfigToRequest(t){const e=this._session.interceptors.request.use((e=>{const s=e;return Object.keys(t).forEach((e=>s[e]=t[e])),s}));return{interceptorId:e,eject:()=>this._session.interceptors.request.eject(e)}}async configure({apiKey:t,apiSecret:e,loginToken:s,phase:i,sessionId:r,useJwt:a=!1}){this.basicAuth={apiKey:t||this.basicAuth.apiKey,apiSecret:e||this.basicAuth.apiSecret},i&&(this.phase=i),a&&(this.jwtToken=await _.create(this)),s&&this.addHeadersToRequest({"X-Cuenca-LoginToken":s}),r&&this.addHeadersToRequest({"X-Cuenca-SessionId":r})}async get({endpoint:t,format:e,params:s}){return this.request({endpoint:t,format:e,params:s})}async post({endpoint:t,data:e,multipart:s}){return this.request({method:"POST",endpoint:t,data:e,multipart:s})}async patch({endpoint:t,data:e}){return this.request({method:"PATCH",endpoint:t,data:e})}async delete({endpoint:t,data:e}){return this.request({method:"DELETE",endpoint:t,data:e})}async request({endpoint:t,data:e=null,format:s=U.Json,method:i="GET",multipart:r=!1,params:a=null}){let o={};r||(o={"Content-Type":"application/json",Accept:`application/${s.value}`}),this.authHeader&&(o.Authorization=this.authHeader),w?o["User-Agent"]=`cuenca-js/${At}`:f&&(o["X-User-Agent"]=`cuenca-js/${At}`),this.jwtToken&&(this.jwtToken.isExpired&&(this.jwtToken=await _.create(this)),o["X-Cuenca-Token"]=this.jwtToken.token);const d=this.addHeadersToRequest(o),u=e;u&&!r&&Object.keys(u).forEach((t=>{u[t]instanceof Date&&(u[t]=u[t].toISOString())}));const h=this.addConfigToRequest({method:i,params:a,data:u,url:t});let l;try{l=await this._session.request({baseURL:this.origin})}catch(t){throw t.response?new c(t.response.data,t.response.status):t.request?new n(`No response received: ${t.errno}: ${t.code}`):new n(t.message)}finally{d.eject(),h.eject()}return l.data}}class xt{constructor({accountNumber:t,createdAt:e,id:s,institutionName:i,name:r,userId:a}){this.accountNumber=t,this.createdAt=G(e),this.id=s,this.institutionName=i,this.name=r,this.userId=a}static fromObject=({id:t,name:e,...s})=>new xt({id:t,name:e,accountNumber:s.account_number,createdAt:s.created_at,institutionName:s.institution_name,userId:s.user_id})}class It{constructor({aggent:t,accountNumber:e,actualPeriodCount:s,actualPeriodSum:i,aggregationType:r,changeLog:a,comments:n,committeeMeetingDate:c,createdAt:o,questionnaireId:d,description:u,hasQuestionnaire:h,id:l,institutionName:p,level:m,name:f,period:w,periodNumber:_,status:g,sourceType:y,transactionDate:v,type:O,typeOfFilter:A,userId:j,updatedAt:x}){this.accountNumber=e,this.actualPeriodCount=s,this.actualPeriodSum=i,this.aggent=t,this.aggregationType=r,this.comments=n,this.committeeMeetingDate=G(c),this.createdAt=G(o),this.questionnaireId=d,this.description=u,this.hasQuestionnaire=h,this.id=l,this.institutionName=p,this.level=J(P,m),this.name=f,this.period=J(B,w),this.periodNumber=_,this.status=J(b,g),this.sourceType=J(R,y),this.transactionDate=G(v),this.type=J(q,O),this.typeOfFilter=J($,A),this.updatedAt=G(x),this.userId=j,this.setChangeLog=a}static fromObject=({aggent:t,comments:e,description:s,id:i,level:r,name:a,period:n,status:c,type:o,...d})=>new It({aggent:t,comments:e,description:s,id:i,level:r,name:a,period:n,status:c,type:o,accountNumber:d.account_number,actualPeriodCount:d.actual_period_count,actualPeriodSum:d.actual_period_sum,aggregationType:d.aggregation_type,changeLog:d.change_log,committeeMeetingDate:d.committee_meeting_date,createdAt:d.created_at,questionnaireId:d.questionnaire_id,hasQuestionnaire:d.has_questionnaire,institutionName:d.institution_name,periodNumber:d.period_number,sourceType:d.source_type,transactionDate:d.transaction_date,typeOfFilter:d.type_of_filter,updatedAt:d.updated_at,userId:d.user_id});get changeLog(){return this._changeLog}set setChangeLog(t){t&&0!==Object.keys(t).length&&(this._changeLog=Ot.fromObject(t))}}class kt{constructor({createdAt:t,deactivatedAt:e,id:s,secret:i,userId:r,updatedAt:a}){this.createdAt=G(t),this.deactivatedAt=G(e),this.id=s,this.secret=i,this.userId=r,this.updatedAt=G(a)}static fromObject=({id:t,secret:e,...s})=>new kt({id:t,secret:e,createdAt:s.created_at,deactivatedAt:s.deactivated_at,userId:s.user_id,updatedAt:s.updated_at});get isActive(){const t=G(Date.now());return!this.deactivatedAt||this.deactivatedAt.getTime()>t.getTime()}}class Ct{constructor({arpc:t,createdAt:e,cardUri:s,isValidArqc:i}){this.arpc=t,this.createdAt=G(e),this.cardUri=s,this.isValidArqc=i}static fromObject=({arpc:t,...e})=>new Ct({arpc:t,createdAt:e.created_at,cardUri:e.card_uri,isValidArqc:e.is_valid_arqc})}class Nt{constructor({amount:t,createdAt:e,descriptor:s,entryType:i,fundingInstrumentUri:r,id:a,name:n,relatedTransactionUri:c,rollingBalance:o}){this.amount=t,this.createdAt=G(e),this.descriptor=s,this.entryType=J(S,i),this.fundingInstrumentUri=r,this.id=a,this.name=n,this.relatedTransactionUri=c,this.rollingBalance=o}static fromObject=({amount:t,descriptor:e,id:s,name:i,type:r,...a})=>new Nt({amount:t,descriptor:e,name:i,id:s,createdAt:a.created_at,entryType:r,fundingInstrumentUri:a.funding_instrument_uri,relatedTransactionUri:a.related_transaction_uri,rollingBalance:a.rolling_balance})}class Tt{constructor({amount:t,createdAt:e,descriptor:s,status:i,userId:r}){this.amount=t,this.createdAt=G(e),this.descriptor=s,this.status=J(H,i),this.userId=r}}class St extends Tt{constructor({amount:t,accountNumber:e,createdAt:s,descriptor:i,id:r,providerUri:a,status:n,userId:c}){super({amount:t,createdAt:s,descriptor:i,status:n,userId:c}),this.accountNumber=e,this.id=r,this.providerUri=a}static fromObject=({amount:t,descriptor:e,id:s,status:i,...r})=>new St({amount:t,descriptor:e,id:s,status:i,accountNumber:r.account_number,createdAt:r.created_at,providerUri:r.provider_uri,userId:r.user_id})}class Ut{constructor({id:t,createdAt:e,updatedAt:s,names:i,firstSurname:r,secondSurname:a,dateOfBirth:n,countryOfBirth:c,rfc:o,curp:d,userId:u,gender:h,phoneNumber:l,emailAddress:p,clientClabe:m,govtId:f,proofOfAddress:w,status:_,termsOfService:b,address:y}){this.id=t,this.createdAt=G(e),this.updatedAt=G(s),this.emailAddress=p,this.clientClabe=m,this.setGovtId=f,this.names=i,this.firstSurname=r,this.secondSurname=a,this.dateOfBirth=n,this.countryOfBirth=c,this.rfc=o,this.curp=d,this.userId=u,this.gender=h,this.phoneNumber=l,this.setProofOfAddress=w,this.status=J(g,_),this.setTerms=b,this.setAddress=y}static fromObject=({status:t,address:e,...s})=>new Ut({address:e,status:t,id:s.id,createdAt:s.created_at,updatedAt:s.updated_at,clientClabe:s.client_clabe,names:s.names,firstSurname:s.first_surname,secondSurname:s.second_surname,dateOfBirth:s.date_of_birth,countryOfBirth:s.country_of_birth,rfc:s.rfc,curp:s.curp,userId:s.user_id,gender:s.gender,govtId:s.govt_id,emailAddress:s.email_address,phoneNumber:s.phone_number,proofOfAddress:s.proof_of_address,termsOfService:s.terms_of_service});get address(){return this._address}set setAddress(t){t&&0!==Object.keys(t).length&&(this._address=vt.fromObject(t))}get proofOfAddress(){return this._proofOfAddress}set setProofOfAddress(t){t&&0!==Object.keys(t).length&&(this._proofOfAddress=yt.fromObject(t))}get govtId(){return this._govtId}set setGovtId(t){t&&0!==Object.keys(t).length&&(this._govtId=yt.fromObject(t))}get termsOfService(){return this._termsOfService}set setTerms(t){t&&0!==Object.keys(t).length&&(this._termsOfService=bt.fromObject(t))}}class Dt{constructor({clabe:t,createdAt:e,curp:s,error:i,firstName:r,id:a,names:n,rfc:c,secondSurname:o,status:d}){this.clabe=t,this.createdAt=G(e),this.curp=s,this.error=i,this.firstName=r,this.id=a,this.names=n,this.rfc=c,this.secondSurname=o,this.status=J(y,d)}static fromObject=({clabe:t,curp:e,error:s,id:i,names:r,rfc:a,status:n,...c})=>new Dt({clabe:t,curp:e,error:s,id:i,names:r,rfc:a,status:n,createdAt:c.created_at,firstName:c.first_name,secondSurname:c.second_surname})}class Pt{constructor({account:t,clabe:e,currency:s,id:i,network:r,platformId:a}){this.account=t,this.clabe=e,this.currency=J(k,s),this.id=i,this.network=J(L,r),this.platformId=a}static fromObject=({clabe:t,currency:e,id:s,network:i,...r})=>new Pt({clabe:t,currency:e,id:s,network:i,account:r.account_uri.split("/")[2],platformId:r.platform_id})}class qt{constructor({id:t,createdAt:e,platformId:s,type:i,status:r,accountUri:a,quoteUri:n,currency:c,network:o,sourceWallet:d,destinationWallet:u,bankAccountUri:h,cuencaId:l,cuentaOrdenante:p,cuentaBeneficiario:m,nombreOrdenante:f,claveRastreo:w,rfcCurpOrdenante:_,concepto:b,referenciaNumerica:g,signature:y,trackingLink:v,fromCurrency:O,toCurrency:A,fromAmount:x,toAmount:I}){this.id=t,this.createdAt=G(e),this.platformId=s,this.type=J(j,i),this.status=J(H,r),this.accountUri=a,this.quoteUri=n,this.currency=J(k,c),this.network=J(L,o),this.sourceWallet=d,this.destinationWallet=u,this.bankAccountUri=h,this.cuencaId=l,this.cuentaOrdenante=p,this.cuentaBeneficiario=m,this.nombreOrdenante=f,this.claveRastreo=w,this.rfcCurpOrdenante=_,this.concepto=b,this.referenciaNumerica=g,this.signature=y,this.trackingLink=v,this.fromCurrency=J(k,O),this.toCurrency=J(k,A),this.fromAmount=x,this.toAmount=I}static fromObject=({type:t,status:e,currency:s,network:i,concepto:r,signature:a,...n})=>new qt({id:n.id,createdAt:n.created_at,platformId:n.platform_id,accountUri:n.account_uri,quoteUri:n.quote_uri,sourceWallet:n.source_wallet,destinationWallet:n.destination_wallet,bankAccountUri:n.bank_account_uri,cuencaId:n.cuenca_id,cuentaOrdenante:n.cuenta_ordenante,cuentaBeneficiario:n.cuenta_beneficiario,nombreOrdenante:n.nombre_ordenante,claveRastreo:n.clave_rastreo,rfcCurpOrdenante:n.rfc_curp_ordenante,referenciaNumerica:n.referencia_numerica,trackingLink:n.tracking_link,fromCurrency:n.from_currency,toCurrency:n.to_currency,fromAmount:n.from_amount,toAmount:n.to_amount,type:t,status:e,currency:s,network:i,concepto:r,signature:a})}class Bt{constructor({createdAt:t,cvv2:e,expMonth:s,expYear:i,fundingType:r,id:a,issuer:n,number:c,pin:o,status:d,type:u,updatedAt:h,userId:l}){this.createdAt=G(t),this.cvv2=e,this.expMonth=s,this.expYear=i,this.fundingType=J(O,r),this.id=a,this.issuer=J(A,n),this.number=c,this.pin=o,this.status=J(x,d),this.type=J(C,u),this.updatedAt=G(h),this.userId=l}static fromObject=({cvv2:t,id:e,issuer:s,number:i,pin:r,status:a,type:n,...c})=>new Bt({cvv2:t,id:e,issuer:s,number:i,pin:r,status:a,type:n,createdAt:c.created_at,expMonth:c.exp_month,expYear:c.exp_year,fundingType:c.funding_type,updatedAt:c.updated_at,userId:c.user_id})}class Lt{constructor({cardUri:t,createdAt:e,id:s,ipAddress:i,success:r,userId:a}){this.cardUri=t,this.createdAt=G(e),this.id=s,this.ipAddress=i,this.success=r,this.userId=a}static fromObject=({id:t,success:e,...s})=>new Lt({id:t,success:e,cardUri:s.card_uri,createdAt:s.created_at,ipAddress:s.ip_address,userId:s.user_id})}class Mt extends Tt{constructor({amount:t,cardErrorType:e,cardLastFour:s,cardType:i,cardUri:r,createdAt:a,descriptor:n,metadata:c,network:o,relatedCardTransactionsUris:d,status:u,type:h,userId:l}){super({amount:t,createdAt:a,descriptor:n,status:u,userId:l}),this.cardErrorType=J(v,e),this.cardLastFour=s,this.cardType=J(C,i),this.cardUri=r,this.metadata=c,this.network=o,this.relatedCardTransactionsUris=d,this.type=J(I,h)}static fromObject=({amount:t,descriptor:e,metadata:s,network:i,status:r,type:a,...n})=>new Mt({amount:t,descriptor:e,metadata:s,network:i,status:r,type:a,cardErrorType:n.error_type,cardLastFour:n.card_last4,cardType:n.card_type,cardUri:n.card_uri,createdAt:n.created_at,relatedCardTransactionsUris:n.related_card_transaction,userId:n.user_id})}class $t{constructor({cardStatus:t,cardType:e,cardUri:s,createdAt:i,isExpired:r,isPinAttemptsExceeded:a,isValidCvv:n,isValidCvv2:c,isValidExpDate:o,isValidIcvv:d,isValidPinBlock:u,userId:h}){this.cardStatus=J(x,t),this.cardType=J(C,e),this.cardUri=s,this.createdAt=G(i),this.isExpired=r,this.isPinAttemptsExceeded=a,this.isValidCvv=n,this.isValidCvv2=c,this.isValidExpDate=o,this.isValidIcvv=d,this.isValidPinBlock=u,this.userId=h}static fromObject=({...t})=>new $t({cardStatus:t.card_status,cardType:t.card_type,cardUri:t.card_uri,createdAt:t.created_at,isExpired:t.is_expired,isPinAttemptsExceeded:t.is_pin_attempts_exceeded,isValidCvv:t.is_valid_cvv,isValidCvv2:t.is_valid_cvv2,isValidExpDate:t.is_valid_exp_date,isValidIcvv:t.is_valid_icvv,isValidPinBlock:t.is_valid_pin_block,userId:t.user_id});get isActive(){return this.cardStatus===x.Active}}class Et extends Tt{constructor({amount:t,createdAt:e,descriptor:s,relatedTransactionUri:i,status:r,type:a,userId:n}){super({amount:t,createdAt:e,descriptor:s,status:r,userId:n}),this.relatedTransactionUri=i,this.type=J(N,a)}static fromObject=({amount:t,descriptor:e,status:s,type:i,...r})=>new Et({amount:t,descriptor:e,status:s,type:i,createdAt:r.created_at,relatedTransactionUri:r.related_transaction_uri,userId:r.user_id})}class Kt extends Tt{constructor({amount:t,createdAt:e,descriptor:s,id:i,network:r,status:a,sourceUri:n,trackingKey:c,userId:o}){super({amount:t,createdAt:e,descriptor:s,status:a,userId:o}),this.id=i,this.network=J(T,r),this.sourceUri=n,this.trackingKey=c}static fromObject=({amount:t,descriptor:e,id:s,network:i,status:r,...a})=>new Kt({amount:t,descriptor:e,id:s,network:i,status:r,createdAt:a.created_at,sourceUri:a.source_uri,trackingKey:a.tracking_key,userId:a.user_id})}class Ft{constructor({extension:t,type:e,url:s,userId:i}){this.extension=t,this.type=J(D,e),this.url=s,this.userId=i}static fromObject=({extension:t,type:e,url:s,...i})=>new Ft({extension:t,type:e,url:s,userId:i.user_id})}class Rt{constructor({platformId:t,attemps:e,verificationId:s,filesUri:i}){this.attemps=e,this.filesUri=i,this.platformId=t,this.verificationId=s}static fromObject=({attemps:t,...e})=>new Rt({attemps:t,filesUri:e.files_uri,platformId:e.platform_id,verificationId:e.verification_id})}class Vt{constructor({id:t}){this.id=t}static fromObject=({id:t})=>new Vt({id:t})}class Ht{constructor({balance:t,createdAt:e,deactivatedAt:s,id:i,userId:r,updatedAt:a}){this.balance=t,this.createdAt=G(e),this.deactivatedAt=G(s),this.id=i,this.userId=r,this.updatedAt=G(a)}}class Yt extends Ht{constructor({balance:t,category:e,createdAt:s,deactivatedAt:i,goalAmount:r,goalDate:a,id:n,name:c,userId:o,updatedAt:d}){super({balance:t,createdAt:s,deactivatedAt:i,id:n,userId:o,updatedAt:d}),this.category=J(K,e),this.goalAmount=r,this.goalDate=G(a),this.name=c}static fromObject=({balance:t,category:e,id:s,name:i,...r})=>new Yt({balance:t,category:e,id:s,name:i,createdAt:r.created_at,deactivatedAt:r.deactivated_at,goalAmount:r.goal_amount,goalDate:r.goal_date,userId:r.user_id,updatedAt:r.updated_at})}class Qt{constructor({categories:t,id:e,name:s,providerKey:i}){var r;this.categories=null==(r=t)?[]:r.map((t=>J(E,t))),this.id=e,this.name=s,this.providerKey=i}static fromObject=({categories:t,id:e,name:s,...i})=>new Qt({categories:t,id:e,name:s,providerKey:i.provider_key})}class Wt{constructor({createdAt:t,expiresAt:e,failureUrl:s,id:i,platformId:r,successUrl:a,type:n,userId:c}){this.createdAt=G(t),this.expiresAt=G(e),this.failureUrl=s,this.id=i,this.platformId=r,this.successUrl=a,this.type=J(F,n),this.userId=c}static fromObject=({id:t,type:e,...s})=>new Wt({id:t,type:e,createdAt:s.created_at,expiresAt:s.expires_at,failureUrl:s.failure_url,platformId:s.platform_id,successUrl:s.success_url,userId:s.user_id})}class zt{constructor({createdAt:t,id:e,month:s,year:i}){this.createdAt=G(t),this.id=e,this.month=s,this.year=i}static fromObject=({id:t,month:e,year:s,...i})=>new zt({id:t,month:e,year:s,createdAt:i.created_at})}class Xt extends Tt{constructor({accountNumber:t,amount:e,createdAt:s,descriptor:i,destinationUri:r,id:a,idempotencyKey:n,network:c,recipientName:o,status:d,trackingKey:u,updatedAt:h,userId:l}){super({amount:e,createdAt:s,descriptor:i,status:d,userId:l}),this.accountNumber=t,this.destinationUri=r,this.id=a,this.idempotencyKey=n,this.network=J(Y,c),this.recipientName=o,this.trackingKey=u,this.updatedAt=G(h)}static fromObject=({amount:t,descriptor:e,id:s,network:i,status:r,...a})=>new Xt({amount:t,descriptor:e,id:s,network:i,status:r,accountNumber:a.account_number,createdAt:a.created_at,destinationUri:a.destination_uri,idempotencyKey:a.idempotency_key,recipientName:a.recipient_name,trackingKey:a.tracking_key,updatedAt:a.updated_at,userId:a.user_id})}class Gt{constructor({address:t,blacklistValidationStatus:e,clabe:s,countryOfBirth:i,createdAt:r,curp:a,curpDocument:n,dateOfBirth:c,emailAddress:o,firstSurname:d,gender:u,govtId:h,id:l,level:p,names:m,nationality:f,phoneNumber:w,proofOfAddress:_,proofOfLife:b,requiredLevel:g,rfc:y,secondSurname:v,stateOfBirth:O,status:A,termsOfService:j,updatedAt:x,verificationId:I}){this.setAddress=t,this.blacklistValidationStatus=J(W,e),this.clabe=s,this.countryOfBirth=i,this.createdAt=G(r),this.curp=a,this.setCurpDoc=n,this.dateOfBirth=c,this.emailAddress=o,this.firstSurname=d,this.gender=u,this.id=l,this.level=p,this.names=m,this.nationality=f,this.phoneNumber=w,this.setGovtId=h,this.setProofOfAddress=_,this.setProofOfLife=b,this.requiredLevel=g,this.rfc=y,this.secondSurname=v,this.stateOfBirth=O,this.status=J(Q,A),this.setTerms=j,this.updatedAt=G(x),this.verificationId=I}get address(){return this._address}set setAddress(t){t&&(this._address=vt.fromObject(t))}get proofOfAddress(){return this._proofOfAddress}set setProofOfAddress(t){t&&(this._proofOfAddress=yt.fromObject(t))}get proofOfLife(){return this._proofOfLife}set setProofOfLife(t){t&&(this._proofOfLife=yt.fromObject(t))}get govtId(){return this._govtId}set setGovtId(t){t&&(this._govtId=yt.fromObject(t))}get termsOfService(){return this._termsOfService}set setTerms(t){t&&(this._termsOfService=bt.fromObject(t))}get curpDocument(){return this._curpDocument}set setCurpDoc(t){t&&(this._curpDocument=yt.fromObject(t))}static fromObject=({address:t,clabe:e,curp:s,gender:i,id:r,level:a,names:n,nationality:c,rfc:o,status:d,...u})=>new Gt({address:t,clabe:e,curp:s,gender:i,id:r,level:a,names:n,nationality:c,rfc:o,status:d,blacklistValidationStatus:u.blacklist_validation_status,countryOfBirth:u.country_of_birth,createdAt:u.created_at,curpDocument:u.curp_document,dateOfBirth:u.date_of_birth,emailAddress:u.email_address,firstSurname:u.first_surname,govtId:u.govt_id,phoneNumber:u.phone_number,proofOfAddress:u.proof_of_address,proofOfLife:u.proof_of_life,requiredLevel:u.required_level,secondSurname:u.second_surname,stateOfBirth:u.state_of_birth,termsOfService:u.terms_of_service,updatedAt:u.updated_at,verificationId:u.verification_id})}class Jt{constructor({createdAt:t,id:e,isActive:s,updatedAt:i}){this.createdAt=G(t),this.id=e,this.isActive=s,this.updatedAt=G(i)}static fromObject=({id:t,...e})=>new Jt({id:t,createdAt:e.created_at,isActive:e.is_active,updatedAt:e.updated_at})}class Zt{constructor({id:t,lastLoginAt:e,success:s}){this.id=t,this.lastLoginAt=G(e),this.success=s}static fromObject=({id:t,success:e,...s})=>new Zt({id:t,success:e,lastLoginAt:s.last_login_at})}class te{constructor({createdAt:t,id:e,platformId:s,recipient:i,type:r,updatedAt:a}){this.createdAt=G(t),this.id=e,this.platformId=s,this.recipient=i,this.type=J(z,r),this.updatedAt=G(a)}static fromObject=({id:t,recipient:e,type:s,...i})=>new te({id:t,recipient:e,type:s,createdAt:i.created_at,platformId:i.platform_id,updatedAt:i.updated_at})}class ee extends Tt{constructor({amount:t,createdAt:e,descriptor:s,id:i,status:r,transactionType:a,userId:n,walletUri:c}){super({amount:t,createdAt:e,descriptor:s,status:r,userId:n}),this.id=i,this.transactionType=J(X,a),this.walletUri=c}static fromObject=({amount:t,descriptor:e,id:s,status:i,...r})=>new ee({amount:t,descriptor:e,id:s,status:i,createdAt:r.created_at,transactionType:r.transaction_type,userId:r.user_id,walletUri:r.wallet_uri})}class se extends Tt{constructor({amount:t,claimUrl:e,createdAt:s,descriptor:i,destinationUri:r,expiresAt:a,id:n,network:c,phoneNumber:o,recipientName:d,status:u,trackingKey:h,updatedAt:l,userId:p}){super({amount:t,createdAt:s,descriptor:i,status:u,userId:p}),this.claimUrl=e,this.destinationUri=r,this.id=n,this.expiresAt=G(a),this.network=J(Y,c),this.phoneNumber=o,this.recipientName=d,this.trackingKey=h,this.updatedAt=G(l)}static fromObject=({amount:t,descriptor:e,id:s,network:i,status:r,...a})=>new se({amount:t,descriptor:e,id:s,network:i,status:r,createdAt:a.created_at,claimUrl:a.claim_url,destinationUri:a.destination_uri,expiresAt:a.expires_at,phoneNumber:a.phone_number,recipientName:a.recipient_name,trackingKey:a.tracking_key,updatedAt:a.updated_at,userId:a.user_id})}class ie{constructor(t){this.superclass=t}with(...t){return t.reduce(((t,e)=>e(t)),this.superclass)}}const re=t=>new ie(t),ae=(t,e)=>({accounts:()=>xt.fromObject(e),alerts:()=>It.fromObject(e),api_keys:()=>kt.fromObject(e),arpc:()=>Ct.fromObject(e),balance_entries:()=>Nt.fromObject(e),bill_payments:()=>St.fromObject(e),"bridge/accounts":()=>Ut.fromObject(e),"bridge/bank_accounts":()=>Dt.fromObject(e),"bridge/clabes":()=>Pt.fromObject(e),"bridge/kyc_validations":()=>Rt.fromObject(e),"bridge/sessions":()=>Wt.fromObject(e),"bridge/transactions":()=>qt.fromObject(e),cards:()=>Bt.fromObject(e),card_activations:()=>Lt.fromObject(e),card_transactions:()=>Mt.fromObject(e),card_validations:()=>$t.fromObject(e),commissions:()=>Et.fromObject(e),deposits:()=>Kt.fromObject(e),files:()=>Ft.fromObject(e),kyc_validations:()=>Rt.fromObject(e),login_tokens:()=>Vt.fromObject(e),savings:()=>Yt.fromObject(e),service_providers:()=>Qt.fromObject(e),sessions:()=>Wt.fromObject(e),statements:()=>zt.fromObject(e),transfers:()=>Xt.fromObject(e),users:()=>Gt.fromObject(e),user_credentials:()=>Jt.fromObject(e),user_logins:()=>Zt.fromObject(e),verifications:()=>te.fromObject(e),wallet_transactions:()=>ee.fromObject(e),whatsapp_transfers:()=>se.fromObject(e)}[t]()),ne=t=>{if(null===t||""===t)return null;const e=t.match("/(.*?)/");return null===e?null:e[0].replaceAll("/","")};class ce{constructor(t,e,s){this.path=t,this.QueryParams=e,this.client=s}}const oe=t=>class extends t{async retrieve(t){const e=await this.client.get({endpoint:`/${this.path}/${t}`});return ae(this.path,e)}},de=t=>class extends t{async _create(t){const e=await this.client.post({endpoint:`/${this.path}`,data:t});return ae(this.path,e)}},ue=t=>class extends t{async _update(t,e){const s=await this.client.patch({endpoint:`/${this.path}/${t}`,data:e});return ae(this.path,s)}},he=t=>class extends t{async _upload(t){const e=await this.client.post({endpoint:`/${this.path}`,data:t,multipart:!0});return ae(this.path,e)}},le=t=>class extends t{async _deactivate(t,e){const s=await this.client.delete({endpoint:`/${this.path}/${t}`,data:e});return ae(this.path,s)}},pe=t=>class extends t{async _download(t,e){return await this.client.get({endpoint:`/${this.path}/${t}`,format:e})}},me=t=>class extends t{async one(t=new this.QueryParams({})){const{items:e}=await this.client.get({endpoint:`/${this.path}`,params:t.toParams()});if(!e||!e.length)throw new o;if(e.length>1)throw new d;const[s]=e;return ae(this.path,s)}async first(t=new this.QueryParams({})){const{items:e}=await this.client.get({endpoint:`/${this.path}`,params:t.toParams()});if(!e||!e[0])return null;const[s]=e;return ae(this.path,s)}async count(t=new this.QueryParams({})){t.count=!0;const{count:e}=await this.client.get({endpoint:`/${this.path}`,params:t.toParams()});return e||0}async*all(t=new this.QueryParams({})){let e=`/${this.path}?${t.toQueryString()}`;for(;e;){const t=await this.client.get({endpoint:e});if(t.items)for(const e of t.items){const t=ae(this.path,e);yield t}e=t.next_page_uri}}};class fe extends(re(ce).with(me,oe)){constructor(t){super("accounts",tt,t)}}class we{toObject(){return{}}toCleanObject(){const t=this.toObject();return Object.keys(t).forEach((e=>{null==t[e]&&delete t[e]})),t}}class _e extends we{constructor({accountNumber:t,actualPeriodCount:e,actualPeriodSum:s,aggent:i,aggregationType:r,changeLog:a,committeeMeetingDate:n,comments:c,createdAt:o,description:d,id:u,institutionName:h,level:l,manualScenario:p,name:m,period:f,periodNumber:w,status:_,sourceType:b,transactionDate:g,type:y,typeOfFilter:v,updatedAt:O,userId:A}={}){super(),this.accountNumber=t,this.actualPeriodCount=e,this.actualPeriodSum=s,this.aggent=i,this.aggregationType=r,this.changeLog=a,this.committeeMeetingDate=n,this.createdAt=o,this.comments=c,this.description=d,this.id=u,this.institutionName=h,this.level=l,this.name=m,this.manualScenario=p,this.period=f,this.periodNumber=w,this.status=_,this.sourceType=b,this.transactionDate=g,this.type=y,this.typeOfFilter=v,this.updatedAt=O,this.userId=A}toObject(){return{aggent:this.aggent,change_log:this.changeLog,comments:this.comments,description:this.description,id:this.id,level:this.level,name:this.name,period:this.period,status:this.status,type:this.type,account_number:this.accountNumber,actual_period_count:this.actualPeriodCount,actual_period_sum:this.actualPeriodSum,aggregation_type:this.aggregationType,committee_meeting_date:this.committeeMeetingDate,created_at:this.createdAt,institution_name:this.institutionName,manual_scenario:this.manualScenario,period_number:this.periodNumber,transaction_date:this.transactionDate,source_type:this.sourceType,type_of_filter:this.typeOfFilter,updated_at:this.updatedAt,user_id:this.userId}}}class be extends(re(ce).with(de,me,oe,ue)){constructor(t){super("alerts",nt,t)}async create(...t){const e=new _e(...t);return await this._create(e.toObject())}async update(t,{...e}){const s=new _e(e);return await this._update(t,s.toObject())}}class ge extends we{constructor(t,e){super(),this.userId=t,this.metadata=e}toObject(){return{user_id:this.userId,metadata:this.metadata}}}class ye extends we{constructor(t,e,s){super(),this.userId=t,this.issuer=e,this.fundingType=s}toObject(){return{user_id:this.userId,issuer:this.issuer,funding_type:this.fundingType}}}class ve extends we{constructor(t,e){super(),this.status=t,this.pinBlock=e}toObject(){return{status:this.status,pin_block:this.pinBlock}}}class Oe extends we{constructor(t,e,s,i){super(),this.n=t,this.eM=e,this.eY=s,this.c2=i}get number(){return this._number}set n(t){if([!!t,16===t.length,/^\d{16}/.test(t)].some((t=>!t)))throw new l("Invalid number");this._number=t.trim()}get expMonth(){return this._expMonth}set eM(t){if([!!t,t>=1,t<=12].some((t=>!t)))throw new l("Invalid expiration month");this._expMonth=t}get expYear(){return this._expYear}set eY(t){if([!!t,t>=18,t<=99].some((t=>!t)))throw new l("Invalid expiration year");this._expYear=t}get cvv2(){return this._cvv2}set c2(t){if([!!t,3===t.length,/^\d{3}/.test(t)].some((t=>!t)))throw new l("Invalid cvv2");this._cvv2=t}toObject(){return{number:this.number,exp_month:this.expMonth,exp_year:this.expYear,cvv2:this.cvv2}}}class Ae extends we{constructor({cvv:t,cvv2:e,expMonth:s,expYear:i,icvv:r,number:a,pinBlock:n,pinAttemptsExceeded:c}){super(),this.c=t,this.c2=e,this.em=s,this.ey=i,this.ic=r,this.n=a,this.pinBloc=n,this.pinAttemptsExceeded=c}get cvv(){return this._cvv}set c(t){if(!t)return;if([3===t.length].some((t=>!t)))throw new l("Invalid cvv");this._cvv=t}get cvv2(){return this._cvv2}set c2(t){if(!t)return;if([3===t.length].some((t=>!t)))throw new l("Invalid cvv2");this._cvv2=t}get expMonth(){return this._expMonth}set em(t){if(!t)return;if([t>=1,t<=12].some((t=>!t)))throw new l("Invalid expiration month");this._expMonth=t}get expYear(){return this._expYear}set ey(t){if(!t)return;if([t>=18,t<=99].some((t=>!t)))throw new l("Invalid expiration year");this._expYear=t}get icvv(){return this._icvv}set ic(t){if(!t)return;if([3===t.length].some((t=>!t)))throw new l("Invalid icvv");this._icvv=t}get number(){return this._number}set n(t){if([!!t,16===t.length,/^\d{16}/.test(t)].some((t=>!t)))throw new l("Invalid number");this._number=t}toObject(){return{cvv:this.cvv,cvv2:this.cvv2,exp_month:this.expMonth,exp_year:this.expYear,icvv:this.icvv,number:this.number,pin_block:this.pinBloc,pin_attempts_exceeded:this.pinAttemptsExceeded}}}class je extends we{constructor({userId:t,force:e,isBridge:s=!1}){super(),this.force=e,this.userId=t,this.isBridge=s}toObject(){return{force:this.force,[this.isBridge?"account_id":"user_id"]:this.userId}}}class xe extends we{constructor(t,e,s,i){super(),this.category=t,this.name=i,this.goalAmount=e,this.validDate=s}get goalDate(){return this._goalDate}set validDate(t){if(t){if(G(t).getTime()<=G(Date.now()).getTime())throw new l("The goal_date always need to be higher than now");this._goalDate=t}}toObject(){return{category:this.category,goal_amount:this.goalAmount,goal_date:this.goalDate,name:this.name}}}class Ie extends we{constructor({failureUrl:t,successUrl:e,type:s,userId:i,isBridge:r=!1}){super(),this.failureUrl=t,this.successUrl=e,this.type=s,this.userId=i,this.isBridge=r}toObject(){return{failure_url:this.failureUrl,success_url:this.successUrl,type:this.type,[this.isBridge?"account_id":"user_id"]:this.userId}}}class ke extends we{constructor(t,e,s,i,r){super(),this.accountNumber=t,this.amount=e,this.descriptor=s,this.idempotencyKey=i,this.recipientName=r}toObject(){return{account_number:this.accountNumber,amount:this.amount,descriptor:this.descriptor,idempotency_key:this.idempotencyKey,recipient_name:this.recipientName}}}class Ce extends we{constructor(t){super(),this.pwd=t}get password(){return this._password}set pwd(t){if([!!t,t.length>=6].some((t=>!t)))throw new l("Invalid password");this._password=t}toObject(){return{password:this.password}}}class Ne extends we{constructor(t,e){super(),this.pwd=t,this.isActive=e,this.req={password:this.password,isActive:this.isActive}}get password(){return this._password}get request(){return this._request}set pwd(t){if(!t)return void(this._password=t);if([t.length>=6].some((t=>!t)))throw new l("Invalid password");this._password=t}set req(t){if(t.password&&null!=t.isActive)throw new l("Only one property can be updated at a time");this._request=t}toObject(){return{password:this.request.password,is_active:this.request.isActive}}}class Te extends we{constructor(t,e="me"){super(),this.pwd=t,this.userId=e}get password(){return this._password}set pwd(t){if([!!t,6===t.length,/^\d{6}$/.test(t)].some((t=>!t)))throw new l("Invalid password");this._password=t}toObject(){return{password:this.password,user_id:this.userId}}}class Se extends we{constructor({ip:t,location:e,type:s,version:i}){super(),this.ipAddress=t,this.location=e,this.type=s,this.version=i}get ip(){return this._ip}set ipAddress(t){if(!t)throw new l("missing ip address");if(!t.split(".").every((t=>t>=0&&t<=255)))throw new l("Invalid ip address");this._ip=t}toObject(){return{ip:this.ip,location:this.location,type:this.type,version:this.version}}}class Ue extends we{constructor({city:t,colonia:e,country:s,extNumber:i,fullName:r,intNumber:a,postalCode:n,state:c,street:o}={}){super(),this.city=t,this.colonia=e,this.country=s,this.extNumber=i,this.fullName=r,this.intNumber=a,this.postalCode=n,this.state=c,this.street=o}toObject(){return{city:this.city,colonia:this.colonia,country:this.country,ext_number:this.extNumber,full_name:this.fullName,int_number:this.intNumber,postal_code:this.postalCode,state:this.state,street:this.street}}}class De extends we{constructor({data:t,isMx:e,status:s,type:i,uriBack:r,uriFront:a}){super(),this.data=t,this.isMx=e,this.status=s,this.type=i,this.uriBack=r,this.uriFront=a}toObject(){return{data:this.data,is_mx:this.isMx,status:this.status,type:this.type,uri_back:this.uriBack,uri_front:this.uriFront}}}class Pe extends we{constructor({address:t,curpDocumentUri:e,govtId:s,profession:i,proofOfAddress:r,proofOfLife:a,requiredLevel:n,termsOfService:c,verificationId:o}){super(),this.adrs=t,this.curpDocumentUri=e,this.govstIds=s,this.profession=i,this.addressProofs=r,this.lifeProofs=a,this.requiredLevel=n,this.terms=c,this.verificationId=o}get termsOfService(){return this._termsOfService}set terms(t){t&&(this._termsOfService=new Se(t).toObject())}get address(){return this._address}set adrs(t){t&&(this._address=new Ue(t).toCleanObject())}get proofOfLife(){return this._proofOfLife}set lifeProofs(t){t&&(this._proofOfLife=new De(t).toCleanObject())}get proofOfAddress(){return this._proofOfAddress}set addressProofs(t){t&&(this._proofOfAddress=new De(t).toCleanObject())}get govtId(){return this._govtId}set govstIds(t){t&&(this._govtId=new De(t).toCleanObject())}toObject(){return{address:this.address,curp_document_uri:this.curpDocumentUri,profession:this.profession,requiredLevel:this.requiredLevel,terms_of_service:this.termsOfService,verification_id:this.verificationId,proof_of_life:this.proofOfLife,proof_of_address:this.proofOfAddress,govt_id:this.govtId}}}class qe extends we{constructor({platformId:t,recipient:e,type:s}){super(),this.platformId=t,this.type=s,this.recipients=e}get recipient(){return this._recipient}set recipients(t){switch(J(z,this.type)){case z.Email:if(!t.match(/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/))throw new l("Invalid email address");this._recipient=t;break;case z.Phone:if(!t.match(/^\+?[0-9]{10,15}$/))throw new l("Invalid Phone Number");this._recipient=t}}toObject(){return{platform_id:this.platformId,recipient:this.recipient,type:this.type}}}class Be extends we{constructor({code:t}){super(),this.code=t}toObject(){return{code:this.code}}}class Le extends we{constructor(t,e,s){super(),this.amount=t,this.transactionType=e,this.walletUri=s}toObject(){return{amount:this.amount,transaction_type:this.transactionType,wallet_uri:this.walletUri}}}class Me extends(re(ce).with(de,le,me,oe,ue)){constructor(t){super("api_keys",et,t)}async create(){return await this._create()}async deactivate(t,e=0){return await this._deactivate(t,{minutes:e})}async update(t,e,s){const i=new ge(s,e);return await this._update(t,i.toCleanObject())}}class $e extends(re(ce).with(de)){constructor(t){super("arpc",Object,t)}async create({number:t,arqc:e,arpcMethod:s,transactionData:i,responseCode:r,transactionCounter:a,panSequence:n,uniqueNumber:c,trackDataMethod:o}){const d=new ArpcRequest({number:t,arqc:e,arpcMethod:s,transactionData:i,responseCode:r,transactionCounter:a,panSequence:n,uniqueNumber:c,trackDataMethod:o});return await this._create(d.toObject())}}class Ee extends(re(ce).with(me,oe)){constructor(t){super("balance_entries",at,t)}async relatedTransaction(t){const e=ne(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return ae(`${e}`,s)}async fundingInstrument(t){const e=ne(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return ae(`${e}`,s)}}class Ke extends(re(ce).with(me,oe)){constructor(t){super("bill_payments",ct,t)}async serviceProvider(t){const e=ne(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return ae(`${e}`,s)}}class Fe extends(re(ce).with(me,ue,oe)){constructor(t){super("bridge/accounts",mt,t)}async update({userId:t="me",...e}){const s=new Pe(e);return await this._update(t,s.toCleanObject())}}class Re extends(re(ce).with(me,oe)){constructor(t){super("bridge/bank_accounts",wt,t)}}class Ve extends(re(ce).with(me)){constructor(t){super("bridge/clabes",ft,t)}}class He extends(re(ce).with(me,oe)){constructor(t){super("bridge/transactions",_t,t)}}class Ye extends(re(ce).with(de)){constructor(t){super("card_activations",Object,t)}async create({number:t,expMonth:e,expYear:s,cvv2:i}){const r=new Oe(t,e,s,i);return await this._create(r.toCleanObject())}async card(t){if(!t)return null;const e=await this.client.get({endpoint:t});return Bt.fromObject(e)}}class Qe extends(re(ce).with(de,le,me,oe,ue)){constructor(t){super("cards",dt,t)}async create(t,e,s){const i=new ye(t,e,s);return await this._create(i.toCleanObject())}async deactivate(t){return await this._deactivate(t)}async update(t,e,s){const i=new ve(e,s);return await this._update(t,i.toCleanObject())}}class We extends(re(ce).with(me,oe)){constructor(t){super("card_transactions",ot,t)}async relatedCard(t){const e=ne(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return ae(`${e}`,s)}}class ze extends(re(ce).with(de)){constructor(t){super("card_validations",Object,t)}async create({cvv:t,cvv2:e,expMonth:s,expYear:i,icvv:r,number:a,pinBlock:n,pinAttemptsExceeded:c}){const o=new Ae({cvv:t,cvv2:e,expMonth:s,expYear:i,icvv:r,number:a,pinBlock:n,pinAttemptsExceeded:c});return await this._create(o.toCleanObject())}async card(t){if(!t)return null;const e=await this.client.get({endpoint:t});return Bt.fromObject(e)}}class Xe extends(re(ce).with(me,oe)){constructor(t){super("commissions",Z,t)}async relatedTransaction(t){const e=ne(t);if(null==e)return null;const s=await this.client.get(t);return ae(`${e}`,s)}}class Ge extends(re(ce).with(me,oe)){constructor(t){super("deposits",it,t)}async source(t){const e=await this.client.get({endpoint:t});return xt.fromObject(e)}}class Je extends(re(ce).with(pe,he)){constructor(t){super("files",Object,t)}async download(t){return await this._download(t,U.Any)}async upload(t){return await this._upload(t)}}class Ze extends(re(ce).with(de,oe,me)){constructor(t,e=!1){super(e?"bridge/kyc_validations":"kyc_validations",Object,t),this.isBridge=e}async create(t="me",e=!1){const s=new je({force:e,userId:t,isBridge:this.isBridge});return await this._create(s.toCleanObject())}}class ts extends(re(ce).with(de)){constructor(t){super("login_tokens",Object,t)}async create(){return await this._create()}}class es extends(re(ce).with(de,le,me,oe,ue)){constructor(t){super("savings",lt,t)}async create(t,e,s,i){const r=new xe(t,e,s,i);return await this._create(r.toObject())}async deactivate(t){return await this._deactivate(t)}async update(t,e,s,i,r){const a=new xe(e,s,i,r);return await this._update(t,a.toObject())}}class ss extends(re(ce).with(me,oe)){constructor(t){super("service_providers",Z,t)}}class is extends(re(ce).with(de,oe,me)){constructor(t,e=!1){super(e?"bridge/sessions":"sessions",Object,t),this.isBridge=e}async create(t,e,s,i){const r=new Ie({failureUrl:i,successUrl:s,type:e,userId:t,isBridge:this.isBridge});return await this._create(r.toCleanObject())}}class rs extends(re(ce).with(pe,me)){constructor(t){super("statements",pt,t)}async pdf(t){return await this._download(t,U.Pdf)}async xml(t){return await this._download(t,U.Xml)}}class as extends(re(ce).with(de,me,oe)){constructor(t){super("transfers",rt,t)}async destination(t){const e=await this.client.get({endpoint:t});return xt.fromObject(e)}async create({accountNumber:t,amount:e,descriptor:s,recipientName:i,idempotencyKey:r}){const a=r||this.constructor._genIdempotencyKey(t,e),n=new ke(t,e,s,a,i);return await this._create(n.toCleanObject())}async createMany(t){if(!t||!Array.isArray(t)||!t.length)return{};const e={submitted:[],errors:[]};return await Promise.all(t.map((async({accountNumber:t,amount:s,descriptor:i,idempotencyKey:r,recipientName:a})=>{const n=new ke(t,s,i,r||this.constructor._genIdempotencyKey(t,s),a);let c;try{c=await this._create(n.toCleanObject())}catch(t){return void e.errors.push({actualRequest:n,error:t})}e.submitted.push(c)}))),e}static _genIdempotencyKey(t,e){const[s]=G(Date.now()).toISOString().split("T");return`${s}:${t}:${e}`}}class ns extends(re(ce).with(de,ue)){constructor(t){super("user_credentials",Object,t)}async create(t){const e=new Ce(t);return await this._create(e.toObject())}async update({isActive:t,password:e,userId:s="me"}){const i=new Ne(e,t);return await this._update(s,i.toCleanObject())}}class cs extends(re(ce).with(de,le)){constructor(t){super("user_logins",Object,t),this.loginIdInHeaders=null}async create(t,e){const s=new Te(t,e),i=await this._create(s.toObject());if(!i.success)throw new h;return this.loginIdInHeaders=this.client.addHeadersToRequest({"X-Cuenca-LoginId":i.id}),i}async logOut(t="me"){return await this._deactivate(t,{}),this.loginIdInHeaders&&this.loginIdInHeaders.eject(),!0}}class os extends(re(ce).with(me,ue,oe)){constructor(t){super("users",ht,t)}async update({userId:t="me",...e}){const s=new Pe(e);return await this._update(t,s.toCleanObject())}}class ds extends(re(ce).with(de,ue)){constructor(t){super("verifications",Object,t)}async create({platformId:t,recipient:e,type:s}){const i=new qe({platformId:t,recipient:e,type:s});return await this._create(i.toObject())}async update({code:t,id:e}){const s=new Be({code:t});return await this._update(e,s.toObject())}}class us extends(re(ce).with(de,me,oe)){constructor(t){super("wallet_transactions",ut,t)}async create(t,e,s){const i=new Le(t,e,s);return await this._create(i.toObject())}async realtedWallet(t){const e=ne(t);if(null==e)return null;const s=await this.client.get(t);return ae(`${e}`,s)}}class hs extends(re(ce).with(me,oe)){constructor(t){super("whatsapp_transfers",Z,t)}async accountDestination(t){const e=ne(t);if(null==e)return null;const s=await this.client.get(t);return ae(`${e}`,s)}}t.Cuenca=class{constructor({apiKey:t,apiSecret:e,language:s="en",phase:i=M.Sandbox}={}){this.client=new jt({apiKey:t,apiSecret:e,language:s,phase:i}),this.withClient(this.client)}withClient(t){this.accounts=new fe(t),this.alerts=new be(t),this.apiKeys=new Me(t),this.balanceEntries=new Ee(t),this.billPayments=new Ke(t),this.bridgeAccounts=new Fe(t),this.bridgeBankAccounts=new Re(t),this.bridgeClabes=new Ve(t),this.bridgeKycValidations=new Ze(t,!0),this.bridgeSessions=new is(t,!0),this.bridgeTransactions=new He(t),this.cardActivations=new Ye(t),this.cards=new Qe(t),this.cardTransactions=new We(t),this.cardValidations=new ze(t),this.commissions=new Xe(t),this.deposits=new Ge(t),this.files=new Je(t),this.kycValidations=new Ze(t),this.loginTokens=new ts(t),this.savings=new es(t),this.serviceProviders=new ss(t),this.sessions=new is(t),this.statements=new rs(t),this.transfers=new as(t),this.userCredentials=new ns(t),this.userLogins=new cs(t),this.users=new os(t),this.verifications=new ds(t),this.walletTransactions=new us(t),this.whatsAppTransfers=new hs(t)}}})); |
{ | ||
"name": "@cuenca-mx/cuenca-js", | ||
"version": "0.0.14-dev5", | ||
"version": "0.0.14-dev6", | ||
"description": "Cuenca client for JS", | ||
@@ -5,0 +5,0 @@ "main": "./build/index.cjs", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
287968