@cuenca-mx/cuenca-js
Advanced tools
Comparing version 0.0.14-dev8 to 0.0.14-dev9
@@ -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");static Questionary=new b("questionary");static JustifiedBbyTime=new b("justified_by_time");static AditionalInformation=new b("aditional_information");static Documentation=new b("documentation");static Xml=new b("xml");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 T{static CardRequest=new T("card_request");static CashDeposit=new T("cash_deposit");static OutgoingSpei=new T("outgoing_spei");constructor(t){this.value=t}}class N{static Cash=new N("cash");static Internal=new N("internal");static Spei=new N("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 J=t=>{if(!t)return null;const e=new Date(t);return new Date(e.getTime())},G=(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=J(Date.now());s.setUTCDate(1);if(J(`${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=G(W,i),this.type=G(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=J(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=J(e),this.updatedAt=J(i),this.status=G(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-dev8";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=J(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=J(c),this.createdAt=J(o),this.questionnaireId=d,this.description=u,this.hasQuestionnaire=h,this.id=l,this.institutionName=p,this.level=G(P,m),this.name=f,this.period=G(B,w),this.periodNumber=_,this.status=G(b,g),this.sourceType=G(R,y),this.transactionDate=J(v),this.type=G(q,O),this.typeOfFilter=G($,A),this.updatedAt=J(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=J(t),this.deactivatedAt=J(e),this.id=s,this.secret=i,this.userId=r,this.updatedAt=J(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=J(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=J(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 Tt{constructor({amount:t,createdAt:e,descriptor:s,entryType:i,fundingInstrumentUri:r,id:a,name:n,relatedTransactionUri:c,rollingBalance:o}){this.amount=t,this.createdAt=J(e),this.descriptor=s,this.entryType=G(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 Tt({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 Nt{constructor({amount:t,createdAt:e,descriptor:s,status:i,userId:r}){this.amount=t,this.createdAt=J(e),this.descriptor=s,this.status=G(H,i),this.userId=r}}class St extends Nt{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=J(e),this.updatedAt=J(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=G(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=J(e),this.curp=s,this.error=i,this.firstName=r,this.id=a,this.names=n,this.rfc=c,this.secondSurname=o,this.status=G(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=G(k,s),this.id=i,this.network=G(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=J(e),this.platformId=s,this.type=G(j,i),this.status=G(H,r),this.accountUri=a,this.quoteUri=n,this.currency=G(k,c),this.network=G(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=G(k,O),this.toCurrency=G(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=J(t),this.cvv2=e,this.expMonth=s,this.expYear=i,this.fundingType=G(O,r),this.id=a,this.issuer=G(A,n),this.number=c,this.pin=o,this.status=G(x,d),this.type=G(C,u),this.updatedAt=J(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=J(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 Nt{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=G(v,e),this.cardLastFour=s,this.cardType=G(C,i),this.cardUri=r,this.metadata=c,this.network=o,this.relatedCardTransactionsUris=d,this.type=G(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=G(x,t),this.cardType=G(C,e),this.cardUri=s,this.createdAt=J(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 Nt{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=G(T,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 Nt{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=G(N,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=G(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=J(e),this.deactivatedAt=J(s),this.id=i,this.userId=r,this.updatedAt=J(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=G(K,e),this.goalAmount=r,this.goalDate=J(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=>G(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=J(t),this.expiresAt=J(e),this.failureUrl=s,this.id=i,this.platformId=r,this.successUrl=a,this.type=G(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=J(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 Nt{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=G(Y,c),this.recipientName=o,this.trackingKey=u,this.updatedAt=J(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 Jt{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=G(W,e),this.clabe=s,this.countryOfBirth=i,this.createdAt=J(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=G(Q,A),this.setTerms=j,this.updatedAt=J(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 Jt({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 Gt{constructor({createdAt:t,id:e,isActive:s,updatedAt:i}){this.createdAt=J(t),this.id=e,this.isActive=s,this.updatedAt=J(i)}static fromObject=({id:t,...e})=>new Gt({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=J(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=J(t),this.id=e,this.platformId=s,this.recipient=i,this.type=G(z,r),this.updatedAt=J(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 Nt{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=G(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 Nt{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=J(a),this.network=G(Y,c),this.phoneNumber=o,this.recipientName=d,this.trackingKey=h,this.updatedAt=J(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:()=>Tt.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:()=>Jt.fromObject(e),user_credentials:()=>Gt.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(J(t).getTime()<=J(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 Te 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 Ne 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(G(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 Je 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 Ge 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]=J(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 Te(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 Ne(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 Je(t),this.files=new Ge(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");static Questionary=new b("questionary");static JustifiedBbyTime=new b("justified_by_time");static AditionalInformation=new b("aditional_information");static Documentation=new b("documentation");static Xml=new b("xml");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 T{static CardRequest=new T("card_request");static CashDeposit=new T("cash_deposit");static OutgoingSpei=new T("outgoing_spei");constructor(t){this.value=t}}class N{static Cash=new N("cash");static Internal=new N("internal");static Spei=new N("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 J=t=>{if(!t)return null;const e=new Date(t);return new Date(e.getTime())},G=(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=J(Date.now());s.setUTCDate(1);if(J(`${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=G(W,i),this.type=G(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=J(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,comments:r}){this.aggent=t,this.comments=r,this.createdAt=J(e),this.updatedAt=J(i),this.status=G(b,s)}static fromObject=({aggent:t,comments:e,status:s,...i})=>new Ot({aggent:t,comments:e,status:s,createdAt:i.created_at,updatedAt:i.updated_at})}class At{constructor(t){this.changeLog=t.changeLog.map((t=>new Ot(t)))}static fromObject=t=>new At({changeLog:t.map((t=>Ot.fromObject(t)))})}var jt="0.0.14-dev9";class xt{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/${jt}`:f&&(o["X-User-Agent"]=`cuenca-js/${jt}`),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 It{constructor({accountNumber:t,createdAt:e,id:s,institutionName:i,name:r,userId:a}){this.accountNumber=t,this.createdAt=J(e),this.id=s,this.institutionName=i,this.name=r,this.userId=a}static fromObject=({id:t,name:e,...s})=>new It({id:t,name:e,accountNumber:s.account_number,createdAt:s.created_at,institutionName:s.institution_name,userId:s.user_id})}class kt{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=J(c),this.createdAt=J(o),this.questionnaireId=d,this.description=u,this.hasQuestionnaire=h,this.id=l,this.institutionName=p,this.level=G(P,m),this.name=f,this.period=G(B,w),this.periodNumber=_,this.status=G(b,g),this.sourceType=G(R,y),this.transactionDate=J(v),this.type=G(q,O),this.typeOfFilter=G($,A),this.updatedAt=J(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 kt({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=At.fromObject(t))}}class Ct{constructor({createdAt:t,deactivatedAt:e,id:s,secret:i,userId:r,updatedAt:a}){this.createdAt=J(t),this.deactivatedAt=J(e),this.id=s,this.secret=i,this.userId=r,this.updatedAt=J(a)}static fromObject=({id:t,secret:e,...s})=>new Ct({id:t,secret:e,createdAt:s.created_at,deactivatedAt:s.deactivated_at,userId:s.user_id,updatedAt:s.updated_at});get isActive(){const t=J(Date.now());return!this.deactivatedAt||this.deactivatedAt.getTime()>t.getTime()}}class Tt{constructor({arpc:t,createdAt:e,cardUri:s,isValidArqc:i}){this.arpc=t,this.createdAt=J(e),this.cardUri=s,this.isValidArqc=i}static fromObject=({arpc:t,...e})=>new Tt({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=J(e),this.descriptor=s,this.entryType=G(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 St{constructor({amount:t,createdAt:e,descriptor:s,status:i,userId:r}){this.amount=t,this.createdAt=J(e),this.descriptor=s,this.status=G(H,i),this.userId=r}}class Ut extends St{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 Ut({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 Dt{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=J(e),this.updatedAt=J(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=G(g,_),this.setTerms=b,this.setAddress=y}static fromObject=({status:t,address:e,...s})=>new Dt({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 Pt{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=J(e),this.curp=s,this.error=i,this.firstName=r,this.id=a,this.names=n,this.rfc=c,this.secondSurname=o,this.status=G(y,d)}static fromObject=({clabe:t,curp:e,error:s,id:i,names:r,rfc:a,status:n,...c})=>new Pt({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 qt{constructor({account:t,clabe:e,currency:s,id:i,network:r,platformId:a}){this.account=t,this.clabe=e,this.currency=G(k,s),this.id=i,this.network=G(L,r),this.platformId=a}static fromObject=({clabe:t,currency:e,id:s,network:i,...r})=>new qt({clabe:t,currency:e,id:s,network:i,account:r.account_uri.split("/")[2],platformId:r.platform_id})}class Bt{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=J(e),this.platformId=s,this.type=G(j,i),this.status=G(H,r),this.accountUri=a,this.quoteUri=n,this.currency=G(k,c),this.network=G(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=G(k,O),this.toCurrency=G(k,A),this.fromAmount=x,this.toAmount=I}static fromObject=({type:t,status:e,currency:s,network:i,concepto:r,signature:a,...n})=>new Bt({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 Lt{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=J(t),this.cvv2=e,this.expMonth=s,this.expYear=i,this.fundingType=G(O,r),this.id=a,this.issuer=G(A,n),this.number=c,this.pin=o,this.status=G(x,d),this.type=G(C,u),this.updatedAt=J(h),this.userId=l}static fromObject=({cvv2:t,id:e,issuer:s,number:i,pin:r,status:a,type:n,...c})=>new Lt({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 Mt{constructor({cardUri:t,createdAt:e,id:s,ipAddress:i,success:r,userId:a}){this.cardUri=t,this.createdAt=J(e),this.id=s,this.ipAddress=i,this.success=r,this.userId=a}static fromObject=({id:t,success:e,...s})=>new Mt({id:t,success:e,cardUri:s.card_uri,createdAt:s.created_at,ipAddress:s.ip_address,userId:s.user_id})}class $t extends St{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=G(v,e),this.cardLastFour=s,this.cardType=G(C,i),this.cardUri=r,this.metadata=c,this.network=o,this.relatedCardTransactionsUris=d,this.type=G(I,h)}static fromObject=({amount:t,descriptor:e,metadata:s,network:i,status:r,type:a,...n})=>new $t({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 Et{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=G(x,t),this.cardType=G(C,e),this.cardUri=s,this.createdAt=J(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 Et({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 Kt extends St{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=G(T,a)}static fromObject=({amount:t,descriptor:e,status:s,type:i,...r})=>new Kt({amount:t,descriptor:e,status:s,type:i,createdAt:r.created_at,relatedTransactionUri:r.related_transaction_uri,userId:r.user_id})}class Ft extends St{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=G(N,r),this.sourceUri=n,this.trackingKey=c}static fromObject=({amount:t,descriptor:e,id:s,network:i,status:r,...a})=>new Ft({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 Rt{constructor({extension:t,type:e,url:s,userId:i}){this.extension=t,this.type=G(D,e),this.url=s,this.userId=i}static fromObject=({extension:t,type:e,url:s,...i})=>new Rt({extension:t,type:e,url:s,userId:i.user_id})}class Vt{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 Vt({attemps:t,filesUri:e.files_uri,platformId:e.platform_id,verificationId:e.verification_id})}class Ht{constructor({id:t}){this.id=t}static fromObject=({id:t})=>new Ht({id:t})}class Yt{constructor({balance:t,createdAt:e,deactivatedAt:s,id:i,userId:r,updatedAt:a}){this.balance=t,this.createdAt=J(e),this.deactivatedAt=J(s),this.id=i,this.userId=r,this.updatedAt=J(a)}}class Qt extends Yt{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=G(K,e),this.goalAmount=r,this.goalDate=J(a),this.name=c}static fromObject=({balance:t,category:e,id:s,name:i,...r})=>new Qt({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 Wt{constructor({categories:t,id:e,name:s,providerKey:i}){var r;this.categories=null==(r=t)?[]:r.map((t=>G(E,t))),this.id=e,this.name=s,this.providerKey=i}static fromObject=({categories:t,id:e,name:s,...i})=>new Wt({categories:t,id:e,name:s,providerKey:i.provider_key})}class zt{constructor({createdAt:t,expiresAt:e,failureUrl:s,id:i,platformId:r,successUrl:a,type:n,userId:c}){this.createdAt=J(t),this.expiresAt=J(e),this.failureUrl=s,this.id=i,this.platformId=r,this.successUrl=a,this.type=G(F,n),this.userId=c}static fromObject=({id:t,type:e,...s})=>new zt({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 Xt{constructor({createdAt:t,id:e,month:s,year:i}){this.createdAt=J(t),this.id=e,this.month=s,this.year=i}static fromObject=({id:t,month:e,year:s,...i})=>new Xt({id:t,month:e,year:s,createdAt:i.created_at})}class Jt extends St{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=G(Y,c),this.recipientName=o,this.trackingKey=u,this.updatedAt=J(h)}static fromObject=({amount:t,descriptor:e,id:s,network:i,status:r,...a})=>new Jt({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=G(W,e),this.clabe=s,this.countryOfBirth=i,this.createdAt=J(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=G(Q,A),this.setTerms=j,this.updatedAt=J(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 Zt{constructor({createdAt:t,id:e,isActive:s,updatedAt:i}){this.createdAt=J(t),this.id=e,this.isActive=s,this.updatedAt=J(i)}static fromObject=({id:t,...e})=>new Zt({id:t,createdAt:e.created_at,isActive:e.is_active,updatedAt:e.updated_at})}class te{constructor({id:t,lastLoginAt:e,success:s}){this.id=t,this.lastLoginAt=J(e),this.success=s}static fromObject=({id:t,success:e,...s})=>new te({id:t,success:e,lastLoginAt:s.last_login_at})}class ee{constructor({createdAt:t,id:e,platformId:s,recipient:i,type:r,updatedAt:a}){this.createdAt=J(t),this.id=e,this.platformId=s,this.recipient=i,this.type=G(z,r),this.updatedAt=J(a)}static fromObject=({id:t,recipient:e,type:s,...i})=>new ee({id:t,recipient:e,type:s,createdAt:i.created_at,platformId:i.platform_id,updatedAt:i.updated_at})}class se extends St{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=G(X,a),this.walletUri=c}static fromObject=({amount:t,descriptor:e,id:s,status:i,...r})=>new se({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 ie extends St{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=J(a),this.network=G(Y,c),this.phoneNumber=o,this.recipientName=d,this.trackingKey=h,this.updatedAt=J(l)}static fromObject=({amount:t,descriptor:e,id:s,network:i,status:r,...a})=>new ie({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 re{constructor(t){this.superclass=t}with(...t){return t.reduce(((t,e)=>e(t)),this.superclass)}}const ae=t=>new re(t),ne=(t,e)=>({accounts:()=>It.fromObject(e),alerts:()=>kt.fromObject(e),api_keys:()=>Ct.fromObject(e),arpc:()=>Tt.fromObject(e),balance_entries:()=>Nt.fromObject(e),bill_payments:()=>Ut.fromObject(e),"bridge/accounts":()=>Dt.fromObject(e),"bridge/bank_accounts":()=>Pt.fromObject(e),"bridge/clabes":()=>qt.fromObject(e),"bridge/kyc_validations":()=>Vt.fromObject(e),"bridge/sessions":()=>zt.fromObject(e),"bridge/transactions":()=>Bt.fromObject(e),cards:()=>Lt.fromObject(e),card_activations:()=>Mt.fromObject(e),card_transactions:()=>$t.fromObject(e),card_validations:()=>Et.fromObject(e),commissions:()=>Kt.fromObject(e),deposits:()=>Ft.fromObject(e),files:()=>Rt.fromObject(e),kyc_validations:()=>Vt.fromObject(e),login_tokens:()=>Ht.fromObject(e),savings:()=>Qt.fromObject(e),service_providers:()=>Wt.fromObject(e),sessions:()=>zt.fromObject(e),statements:()=>Xt.fromObject(e),transfers:()=>Jt.fromObject(e),users:()=>Gt.fromObject(e),user_credentials:()=>Zt.fromObject(e),user_logins:()=>te.fromObject(e),verifications:()=>ee.fromObject(e),wallet_transactions:()=>se.fromObject(e),whatsapp_transfers:()=>ie.fromObject(e)}[t]()),ce=t=>{if(null===t||""===t)return null;const e=t.match("/(.*?)/");return null===e?null:e[0].replaceAll("/","")};class oe{constructor(t,e,s){this.path=t,this.QueryParams=e,this.client=s}}const de=t=>class extends t{async retrieve(t){const e=await this.client.get({endpoint:`/${this.path}/${t}`});return ne(this.path,e)}},ue=t=>class extends t{async _create(t){const e=await this.client.post({endpoint:`/${this.path}`,data:t});return ne(this.path,e)}},he=t=>class extends t{async _update(t,e){const s=await this.client.patch({endpoint:`/${this.path}/${t}`,data:e});return ne(this.path,s)}},le=t=>class extends t{async _upload(t){const e=await this.client.post({endpoint:`/${this.path}`,data:t,multipart:!0});return ne(this.path,e)}},pe=t=>class extends t{async _deactivate(t,e){const s=await this.client.delete({endpoint:`/${this.path}/${t}`,data:e});return ne(this.path,s)}},me=t=>class extends t{async _download(t,e){return await this.client.get({endpoint:`/${this.path}/${t}`,format:e})}},fe=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 ne(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 ne(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=ne(this.path,e);yield t}e=t.next_page_uri}}};class we extends(ae(oe).with(fe,de)){constructor(t){super("accounts",tt,t)}}class _e{toObject(){return{}}toCleanObject(){const t=this.toObject();return Object.keys(t).forEach((e=>{null==t[e]&&delete t[e]})),t}}class be extends _e{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 ge extends(ae(oe).with(ue,fe,de,he)){constructor(t){super("alerts",nt,t)}async create(...t){const e=new be(...t);return await this._create(e.toObject())}async update(t,{...e}){const s=new be(e);return await this._update(t,s.toObject())}}class ye extends _e{constructor(t,e){super(),this.userId=t,this.metadata=e}toObject(){return{user_id:this.userId,metadata:this.metadata}}}class ve extends _e{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 Oe extends _e{constructor(t,e){super(),this.status=t,this.pinBlock=e}toObject(){return{status:this.status,pin_block:this.pinBlock}}}class Ae extends _e{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 je extends _e{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 xe extends _e{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 Ie extends _e{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(J(t).getTime()<=J(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 ke extends _e{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 Ce extends _e{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 Te extends _e{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 _e{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 Se extends _e{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 Ue extends _e{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 De extends _e{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 Pe extends _e{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 qe extends _e{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 Ue(t).toObject())}get address(){return this._address}set adrs(t){t&&(this._address=new De(t).toCleanObject())}get proofOfLife(){return this._proofOfLife}set lifeProofs(t){t&&(this._proofOfLife=new Pe(t).toCleanObject())}get proofOfAddress(){return this._proofOfAddress}set addressProofs(t){t&&(this._proofOfAddress=new Pe(t).toCleanObject())}get govtId(){return this._govtId}set govstIds(t){t&&(this._govtId=new Pe(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 Be extends _e{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(G(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 Le extends _e{constructor({code:t}){super(),this.code=t}toObject(){return{code:this.code}}}class Me extends _e{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 $e extends(ae(oe).with(ue,pe,fe,de,he)){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 ye(s,e);return await this._update(t,i.toCleanObject())}}class Ee extends(ae(oe).with(ue)){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 Ke extends(ae(oe).with(fe,de)){constructor(t){super("balance_entries",at,t)}async relatedTransaction(t){const e=ce(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return ne(`${e}`,s)}async fundingInstrument(t){const e=ce(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return ne(`${e}`,s)}}class Fe extends(ae(oe).with(fe,de)){constructor(t){super("bill_payments",ct,t)}async serviceProvider(t){const e=ce(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return ne(`${e}`,s)}}class Re extends(ae(oe).with(fe,he,de)){constructor(t){super("bridge/accounts",mt,t)}async update({userId:t="me",...e}){const s=new qe(e);return await this._update(t,s.toCleanObject())}}class Ve extends(ae(oe).with(fe,de)){constructor(t){super("bridge/bank_accounts",wt,t)}}class He extends(ae(oe).with(fe)){constructor(t){super("bridge/clabes",ft,t)}}class Ye extends(ae(oe).with(fe,de)){constructor(t){super("bridge/transactions",_t,t)}}class Qe extends(ae(oe).with(ue)){constructor(t){super("card_activations",Object,t)}async create({number:t,expMonth:e,expYear:s,cvv2:i}){const r=new Ae(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 Lt.fromObject(e)}}class We extends(ae(oe).with(ue,pe,fe,de,he)){constructor(t){super("cards",dt,t)}async create(t,e,s){const i=new ve(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 Oe(e,s);return await this._update(t,i.toCleanObject())}}class ze extends(ae(oe).with(fe,de)){constructor(t){super("card_transactions",ot,t)}async relatedCard(t){const e=ce(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return ne(`${e}`,s)}}class Xe extends(ae(oe).with(ue)){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 je({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 Lt.fromObject(e)}}class Je extends(ae(oe).with(fe,de)){constructor(t){super("commissions",Z,t)}async relatedTransaction(t){const e=ce(t);if(null==e)return null;const s=await this.client.get(t);return ne(`${e}`,s)}}class Ge extends(ae(oe).with(fe,de)){constructor(t){super("deposits",it,t)}async source(t){const e=await this.client.get({endpoint:t});return It.fromObject(e)}}class Ze extends(ae(oe).with(me,le)){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 ts extends(ae(oe).with(ue,de,fe)){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 xe({force:e,userId:t,isBridge:this.isBridge});return await this._create(s.toCleanObject())}}class es extends(ae(oe).with(ue)){constructor(t){super("login_tokens",Object,t)}async create(){return await this._create()}}class ss extends(ae(oe).with(ue,pe,fe,de,he)){constructor(t){super("savings",lt,t)}async create(t,e,s,i){const r=new Ie(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 Ie(e,s,i,r);return await this._update(t,a.toObject())}}class is extends(ae(oe).with(fe,de)){constructor(t){super("service_providers",Z,t)}}class rs extends(ae(oe).with(ue,de,fe)){constructor(t,e=!1){super(e?"bridge/sessions":"sessions",Object,t),this.isBridge=e}async create(t,e,s,i){const r=new ke({failureUrl:i,successUrl:s,type:e,userId:t,isBridge:this.isBridge});return await this._create(r.toCleanObject())}}class as extends(ae(oe).with(me,fe)){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 ns extends(ae(oe).with(ue,fe,de)){constructor(t){super("transfers",rt,t)}async destination(t){const e=await this.client.get({endpoint:t});return It.fromObject(e)}async create({accountNumber:t,amount:e,descriptor:s,recipientName:i,idempotencyKey:r}){const a=r||this.constructor._genIdempotencyKey(t,e),n=new Ce(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 Ce(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]=J(Date.now()).toISOString().split("T");return`${s}:${t}:${e}`}}class cs extends(ae(oe).with(ue,he)){constructor(t){super("user_credentials",Object,t)}async create(t){const e=new Te(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 os extends(ae(oe).with(ue,pe)){constructor(t){super("user_logins",Object,t),this.loginIdInHeaders=null}async create(t,e){const s=new Se(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 ds extends(ae(oe).with(fe,he,de)){constructor(t){super("users",ht,t)}async update({userId:t="me",...e}){const s=new qe(e);return await this._update(t,s.toCleanObject())}}class us extends(ae(oe).with(ue,he)){constructor(t){super("verifications",Object,t)}async create({platformId:t,recipient:e,type:s}){const i=new Be({platformId:t,recipient:e,type:s});return await this._create(i.toObject())}async update({code:t,id:e}){const s=new Le({code:t});return await this._update(e,s.toObject())}}class hs extends(ae(oe).with(ue,fe,de)){constructor(t){super("wallet_transactions",ut,t)}async create(t,e,s){const i=new Me(t,e,s);return await this._create(i.toObject())}async realtedWallet(t){const e=ce(t);if(null==e)return null;const s=await this.client.get(t);return ne(`${e}`,s)}}class ls extends(ae(oe).with(fe,de)){constructor(t){super("whatsapp_transfers",Z,t)}async accountDestination(t){const e=ce(t);if(null==e)return null;const s=await this.client.get(t);return ne(`${e}`,s)}}t.Cuenca=class{constructor({apiKey:t,apiSecret:e,language:s="en",phase:i=M.Sandbox}={}){this.client=new xt({apiKey:t,apiSecret:e,language:s,phase:i}),this.withClient(this.client)}withClient(t){this.accounts=new we(t),this.alerts=new ge(t),this.apiKeys=new $e(t),this.balanceEntries=new Ke(t),this.billPayments=new Fe(t),this.bridgeAccounts=new Re(t),this.bridgeBankAccounts=new Ve(t),this.bridgeClabes=new He(t),this.bridgeKycValidations=new ts(t,!0),this.bridgeSessions=new rs(t,!0),this.bridgeTransactions=new Ye(t),this.cardActivations=new Qe(t),this.cards=new We(t),this.cardTransactions=new ze(t),this.cardValidations=new Xe(t),this.commissions=new Je(t),this.deposits=new Ge(t),this.files=new Ze(t),this.kycValidations=new ts(t),this.loginTokens=new es(t),this.savings=new ss(t),this.serviceProviders=new is(t),this.sessions=new rs(t),this.statements=new as(t),this.transfers=new ns(t),this.userCredentials=new cs(t),this.userLogins=new os(t),this.users=new ds(t),this.verifications=new us(t),this.walletTransactions=new hs(t),this.whatsAppTransfers=new ls(t)}}})); |
{ | ||
"name": "@cuenca-mx/cuenca-js", | ||
"version": "0.0.14-dev8", | ||
"version": "0.0.14-dev9", | ||
"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
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
289748
8073