@cuenca-mx/cuenca-js 0.0.1-dev.21 → 0.0.1-dev.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -1
- package/build/{queries-c73144c4.mjs → identities-5808ada9.mjs} +47 -1
- package/build/{queries-0c03273e.cjs → identities-89a79d34.cjs} +49 -0
- package/build/index.cjs +81 -46
- package/build/index.mjs +43 -8
- package/build/requests/index.cjs +3 -1
- package/build/requests/index.mjs +1 -1
- package/build/types/index.cjs +34 -31
- package/build/types/index.mjs +1 -1
- package/build/umd/cuenca.umd.js +1 -1
- package/build/{walletTransactionRequest-f549e991.cjs → walletTransactionRequest-507c5996.cjs} +54 -0
- package/build/{walletTransactionRequest-60d3cf69.mjs → walletTransactionRequest-ede62457.mjs} +53 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -61,7 +61,6 @@ To start using the library, the client must be configured with your credentials.
|
|
|
61
61
|
| apiSecret | Secret for the API Key | `undefined` |
|
|
62
62
|
| phase | Used to change the environment for the client (production, stage or sandbox) | `Phase.Sandbox` |
|
|
63
63
|
| loginToken | Login Token, sets `X-Cuenca-LoginToken` on each request | `undefined` |
|
|
64
|
-
| sessionId | Session Id, sets `X-Cuenca-SessionId` on each request | `undefined` |
|
|
65
64
|
| useJwt | If `true`, it will create a JWT for authentification | `false` |
|
|
66
65
|
|
|
67
66
|
### Login
|
|
@@ -255,6 +255,20 @@ class TransferNetwork {
|
|
|
255
255
|
}
|
|
256
256
|
}
|
|
257
257
|
|
|
258
|
+
class UserStatus {
|
|
259
|
+
static Active = new UserStatus('active');
|
|
260
|
+
|
|
261
|
+
static Deactivated = new UserStatus('deactivated');
|
|
262
|
+
|
|
263
|
+
static fraud = new UserStatus('fraud');
|
|
264
|
+
|
|
265
|
+
static pld_blocked = new UserStatus('pld_blocked');
|
|
266
|
+
|
|
267
|
+
constructor(value) {
|
|
268
|
+
this.value = value;
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
|
|
258
272
|
class WalletTransactionType {
|
|
259
273
|
static Deposit = new WalletTransactionType('deposit');
|
|
260
274
|
|
|
@@ -496,6 +510,23 @@ class WalletTransactionQuery extends QueryParams {
|
|
|
496
510
|
}
|
|
497
511
|
}
|
|
498
512
|
|
|
513
|
+
class UserQuery extends QueryParams {
|
|
514
|
+
constructor({ phoneNumber, emailAddress, status, ...args }) {
|
|
515
|
+
super(args);
|
|
516
|
+
this.phoneNumber = phoneNumber;
|
|
517
|
+
this.emailAddress = emailAddress;
|
|
518
|
+
this.status = status;
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
toObject() {
|
|
522
|
+
return Object.assign(super.toObject(), {
|
|
523
|
+
phone_number: this.phoneNumber,
|
|
524
|
+
email_address: this.emailAddress,
|
|
525
|
+
status: this.status,
|
|
526
|
+
});
|
|
527
|
+
}
|
|
528
|
+
}
|
|
529
|
+
|
|
499
530
|
class WalletQuery extends QueryParams {
|
|
500
531
|
constructor({ active, ...args }) {
|
|
501
532
|
super(args);
|
|
@@ -543,4 +574,19 @@ class StatementQuery extends QueryParams {
|
|
|
543
574
|
}
|
|
544
575
|
}
|
|
545
576
|
|
|
546
|
-
|
|
577
|
+
class TOSAgreements {
|
|
578
|
+
constructor({ ip, location, version }) {
|
|
579
|
+
this.ip = ip;
|
|
580
|
+
this.location = location;
|
|
581
|
+
this.version = version;
|
|
582
|
+
}
|
|
583
|
+
|
|
584
|
+
static fromObject = ({ ip, location, version }) =>
|
|
585
|
+
new TOSAgreements({
|
|
586
|
+
ip,
|
|
587
|
+
location,
|
|
588
|
+
version,
|
|
589
|
+
});
|
|
590
|
+
}
|
|
591
|
+
|
|
592
|
+
export { AccountQuery as A, BalanceEntryQuery as B, CardIssuer as C, DepositNetwork as D, EntryType as E, FileFormat as F, Phase as P, QueryParams as Q, SavingCategory as S, TransactionStatus as T, UserStatus as U, WalletTransactionType as W, CardStatus as a, CardType as b, CardFundingType as c, CardErrorType as d, CardTransactionType as e, CommissionType as f, ServiceProviderCategory as g, TransferNetwork as h, TOSAgreements as i, ApiKeyQuery as j, BillPaymentQuery as k, CardsQuery as l, CardTransactionQuery as m, DepositQuery as n, WalletQuery as o, StatementQuery as p, TransferQuery as q, UserQuery as r, WalletTransactionQuery as s, TrackDataMethod as t, PageSize as u };
|
|
@@ -257,6 +257,20 @@ class TransferNetwork {
|
|
|
257
257
|
}
|
|
258
258
|
}
|
|
259
259
|
|
|
260
|
+
class UserStatus {
|
|
261
|
+
static Active = new UserStatus('active');
|
|
262
|
+
|
|
263
|
+
static Deactivated = new UserStatus('deactivated');
|
|
264
|
+
|
|
265
|
+
static fraud = new UserStatus('fraud');
|
|
266
|
+
|
|
267
|
+
static pld_blocked = new UserStatus('pld_blocked');
|
|
268
|
+
|
|
269
|
+
constructor(value) {
|
|
270
|
+
this.value = value;
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
|
|
260
274
|
class WalletTransactionType {
|
|
261
275
|
static Deposit = new WalletTransactionType('deposit');
|
|
262
276
|
|
|
@@ -498,6 +512,23 @@ class WalletTransactionQuery extends QueryParams {
|
|
|
498
512
|
}
|
|
499
513
|
}
|
|
500
514
|
|
|
515
|
+
class UserQuery extends QueryParams {
|
|
516
|
+
constructor({ phoneNumber, emailAddress, status, ...args }) {
|
|
517
|
+
super(args);
|
|
518
|
+
this.phoneNumber = phoneNumber;
|
|
519
|
+
this.emailAddress = emailAddress;
|
|
520
|
+
this.status = status;
|
|
521
|
+
}
|
|
522
|
+
|
|
523
|
+
toObject() {
|
|
524
|
+
return Object.assign(super.toObject(), {
|
|
525
|
+
phone_number: this.phoneNumber,
|
|
526
|
+
email_address: this.emailAddress,
|
|
527
|
+
status: this.status,
|
|
528
|
+
});
|
|
529
|
+
}
|
|
530
|
+
}
|
|
531
|
+
|
|
501
532
|
class WalletQuery extends QueryParams {
|
|
502
533
|
constructor({ active, ...args }) {
|
|
503
534
|
super(args);
|
|
@@ -545,6 +576,21 @@ class StatementQuery extends QueryParams {
|
|
|
545
576
|
}
|
|
546
577
|
}
|
|
547
578
|
|
|
579
|
+
class TOSAgreements {
|
|
580
|
+
constructor({ ip, location, version }) {
|
|
581
|
+
this.ip = ip;
|
|
582
|
+
this.location = location;
|
|
583
|
+
this.version = version;
|
|
584
|
+
}
|
|
585
|
+
|
|
586
|
+
static fromObject = ({ ip, location, version }) =>
|
|
587
|
+
new TOSAgreements({
|
|
588
|
+
ip,
|
|
589
|
+
location,
|
|
590
|
+
version,
|
|
591
|
+
});
|
|
592
|
+
}
|
|
593
|
+
|
|
548
594
|
exports.AccountQuery = AccountQuery;
|
|
549
595
|
exports.ApiKeyQuery = ApiKeyQuery;
|
|
550
596
|
exports.BalanceEntryQuery = BalanceEntryQuery;
|
|
@@ -568,10 +614,13 @@ exports.QueryParams = QueryParams;
|
|
|
568
614
|
exports.SavingCategory = SavingCategory;
|
|
569
615
|
exports.ServiceProviderCategory = ServiceProviderCategory;
|
|
570
616
|
exports.StatementQuery = StatementQuery;
|
|
617
|
+
exports.TOSAgreements = TOSAgreements;
|
|
571
618
|
exports.TrackDataMethod = TrackDataMethod;
|
|
572
619
|
exports.TransactionStatus = TransactionStatus;
|
|
573
620
|
exports.TransferNetwork = TransferNetwork;
|
|
574
621
|
exports.TransferQuery = TransferQuery;
|
|
622
|
+
exports.UserQuery = UserQuery;
|
|
623
|
+
exports.UserStatus = UserStatus;
|
|
575
624
|
exports.WalletQuery = WalletQuery;
|
|
576
625
|
exports.WalletTransactionQuery = WalletTransactionQuery;
|
|
577
626
|
exports.WalletTransactionType = WalletTransactionType;
|
package/build/index.cjs
CHANGED
|
@@ -6,9 +6,9 @@ var axios = require('axios');
|
|
|
6
6
|
var Buffer = require('buffer');
|
|
7
7
|
var errors_index = require('./errors/index.cjs');
|
|
8
8
|
var jwt_index = require('./jwt/index.cjs');
|
|
9
|
-
var
|
|
9
|
+
var identities = require('./identities-89a79d34.cjs');
|
|
10
10
|
var data = require('./data-9edbb2a0.cjs');
|
|
11
|
-
var walletTransactionRequest = require('./walletTransactionRequest-
|
|
11
|
+
var walletTransactionRequest = require('./walletTransactionRequest-507c5996.cjs');
|
|
12
12
|
|
|
13
13
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
14
14
|
|
|
@@ -26,10 +26,10 @@ const isNode =
|
|
|
26
26
|
|
|
27
27
|
const runtimeEnv = { isBrowser, isNode };
|
|
28
28
|
|
|
29
|
-
const name="@cuenca-mx/cuenca-js";const version="0.0.1-dev.
|
|
29
|
+
const name="@cuenca-mx/cuenca-js";const version="0.0.1-dev.24";const description="Cuenca client for JS";const main="./build/index.cjs";const module$1="./build/index.mjs";const browser="./build/umd/cuenca.umd.js";const files=["build/**/*"];const exports$1={".":{"import":"./build/index.mjs",require:"./build/index.cjs"},"./errors":{"import":"./build/errors/index.mjs",require:"./build/errors/index.cjs"},"./jwt":{"import":"./build/jwt/index.mjs",require:"./build/jwt/index.cjs"},"./requests":{"import":"./build/requests/index.mjs",require:"./build/requests/index.cjs"},"./types":{"import":"./build/types/index.mjs",require:"./build/types/index.cjs"}};const packageManager="yarn@3.0.2";const type="module";const repository={type:"git",url:"https://github.com/cuenca-mx/cuenca-js.git",directory:"packages/cuenca-js"};const keywords=["cuenca"];const license="MIT";const bugs={url:"https://github.com/cuenca-mx/cuenca-js/issues"};const homepage="https://cuenca.com";const scripts={build:"rm -rf build/ && yarn rollup --config",test:"yarn node --experimental-vm-modules $(yarn bin jest)",publish:"yarn build && yarn npm publish"};const devDependencies={"@rollup/plugin-json":"^4.1.0","@rollup/plugin-node-resolve":"^13.1.1",jest:"^27.4.5",rollup:"^2.61.1","rollup-plugin-terser":"^7.0.2"};const dependencies={axios:"^0.24.0",buffer:"^6.0.3"};var pkg = {name:name,version:version,description:description,main:main,module:module$1,browser:browser,files:files,exports:exports$1,packageManager:packageManager,type:type,repository:repository,keywords:keywords,license:license,bugs:bugs,homepage:homepage,scripts:scripts,devDependencies:devDependencies,dependencies:dependencies};
|
|
30
30
|
|
|
31
31
|
class Client {
|
|
32
|
-
constructor({ apiKey, apiSecret, phase =
|
|
32
|
+
constructor({ apiKey, apiSecret, phase = identities.Phase.Sandbox } = {}) {
|
|
33
33
|
this.phase = phase;
|
|
34
34
|
this.basicAuth = { apiKey, apiSecret };
|
|
35
35
|
this.jwtToken = null;
|
|
@@ -95,7 +95,7 @@ class Client {
|
|
|
95
95
|
};
|
|
96
96
|
}
|
|
97
97
|
|
|
98
|
-
async configure({ apiKey, apiSecret, loginToken, phase,
|
|
98
|
+
async configure({ apiKey, apiSecret, loginToken, phase, useJwt = false }) {
|
|
99
99
|
this.basicAuth = {
|
|
100
100
|
apiKey: apiKey || this.basicAuth.apiKey,
|
|
101
101
|
apiSecret: apiSecret || this.basicAuth.apiSecret,
|
|
@@ -108,10 +108,6 @@ class Client {
|
|
|
108
108
|
if (loginToken) {
|
|
109
109
|
this.addHeadersToRequest({ 'X-Cuenca-LoginToken': loginToken });
|
|
110
110
|
}
|
|
111
|
-
|
|
112
|
-
if (sessionId) {
|
|
113
|
-
this.addHeadersToRequest({ 'X-Cuenca-SessionId': sessionId });
|
|
114
|
-
}
|
|
115
111
|
}
|
|
116
112
|
|
|
117
113
|
async get({ endpoint, format, params }) {
|
|
@@ -133,7 +129,7 @@ class Client {
|
|
|
133
129
|
async request({
|
|
134
130
|
endpoint,
|
|
135
131
|
data = null,
|
|
136
|
-
format =
|
|
132
|
+
format = identities.FileFormat.Json,
|
|
137
133
|
method = 'GET',
|
|
138
134
|
params = null,
|
|
139
135
|
}) {
|
|
@@ -282,7 +278,7 @@ class BalanceEntry {
|
|
|
282
278
|
this.amount = amount;
|
|
283
279
|
this.createdAt = data.dateToUTC(createdAt);
|
|
284
280
|
this.descriptor = descriptor;
|
|
285
|
-
this.entryType = data.enumValueFromString(
|
|
281
|
+
this.entryType = data.enumValueFromString(identities.EntryType, entryType);
|
|
286
282
|
this.fundingInstrumentUri = fundingInstrumentUri;
|
|
287
283
|
this.id = id;
|
|
288
284
|
this.name = name;
|
|
@@ -309,7 +305,7 @@ class Transaction {
|
|
|
309
305
|
this.amount = amount;
|
|
310
306
|
this.createdAt = data.dateToUTC(createdAt);
|
|
311
307
|
this.descriptor = descriptor;
|
|
312
|
-
this.status = data.enumValueFromString(
|
|
308
|
+
this.status = data.enumValueFromString(identities.TransactionStatus, status);
|
|
313
309
|
this.userId = userId;
|
|
314
310
|
}
|
|
315
311
|
}
|
|
@@ -370,13 +366,13 @@ class Card {
|
|
|
370
366
|
this.cvv2 = cvv2;
|
|
371
367
|
this.expMonth = expMonth;
|
|
372
368
|
this.expYear = expYear;
|
|
373
|
-
this.fundingType = data.enumValueFromString(
|
|
369
|
+
this.fundingType = data.enumValueFromString(identities.CardFundingType, fundingType);
|
|
374
370
|
this.id = id;
|
|
375
|
-
this.issuer = data.enumValueFromString(
|
|
371
|
+
this.issuer = data.enumValueFromString(identities.CardIssuer, issuer);
|
|
376
372
|
this.number = number;
|
|
377
373
|
this.pin = pin;
|
|
378
|
-
this.status = data.enumValueFromString(
|
|
379
|
-
this.type = data.enumValueFromString(
|
|
374
|
+
this.status = data.enumValueFromString(identities.CardStatus, status);
|
|
375
|
+
this.type = data.enumValueFromString(identities.CardType, type);
|
|
380
376
|
this.updatedAt = data.dateToUTC(updatedAt);
|
|
381
377
|
this.userId = userId;
|
|
382
378
|
}
|
|
@@ -452,14 +448,14 @@ class CardTransaction extends Transaction {
|
|
|
452
448
|
status,
|
|
453
449
|
userId,
|
|
454
450
|
});
|
|
455
|
-
this.cardErrorType = data.enumValueFromString(
|
|
451
|
+
this.cardErrorType = data.enumValueFromString(identities.CardErrorType, cardErrorType);
|
|
456
452
|
this.cardLastFour = cardLastFour;
|
|
457
|
-
this.cardType = data.enumValueFromString(
|
|
453
|
+
this.cardType = data.enumValueFromString(identities.CardType, cardType);
|
|
458
454
|
this.cardUri = cardUri;
|
|
459
455
|
this.metadata = metadata;
|
|
460
456
|
this.network = network;
|
|
461
457
|
this.relatedCardTransactionsUris = relatedCardTransactionsUris;
|
|
462
|
-
this.type = data.enumValueFromString(
|
|
458
|
+
this.type = data.enumValueFromString(identities.CardTransactionType, type);
|
|
463
459
|
}
|
|
464
460
|
|
|
465
461
|
static fromObject = ({
|
|
@@ -503,8 +499,8 @@ class CardValidation {
|
|
|
503
499
|
isValidPinBlock,
|
|
504
500
|
userId,
|
|
505
501
|
}) {
|
|
506
|
-
this.cardStatus = data.enumValueFromString(
|
|
507
|
-
this.cardType = data.enumValueFromString(
|
|
502
|
+
this.cardStatus = data.enumValueFromString(identities.CardStatus, cardStatus);
|
|
503
|
+
this.cardType = data.enumValueFromString(identities.CardType, cardType);
|
|
508
504
|
this.cardUri = cardUri;
|
|
509
505
|
this.createdAt = data.dateToUTC(createdAt);
|
|
510
506
|
this.isExpired = isExpired;
|
|
@@ -534,7 +530,7 @@ class CardValidation {
|
|
|
534
530
|
});
|
|
535
531
|
|
|
536
532
|
get isActive() {
|
|
537
|
-
return this.cardStatus ===
|
|
533
|
+
return this.cardStatus === identities.CardStatus.Active;
|
|
538
534
|
}
|
|
539
535
|
}
|
|
540
536
|
|
|
@@ -556,7 +552,7 @@ class Commission extends Transaction {
|
|
|
556
552
|
userId,
|
|
557
553
|
});
|
|
558
554
|
this.relatedTransactionUri = relatedTransactionUri;
|
|
559
|
-
this.type = data.enumValueFromString(
|
|
555
|
+
this.type = data.enumValueFromString(identities.CommissionType, type);
|
|
560
556
|
}
|
|
561
557
|
|
|
562
558
|
static fromObject = ({ amount, descriptor, status, type, ...obj }) =>
|
|
@@ -591,7 +587,7 @@ class Deposit extends Transaction {
|
|
|
591
587
|
userId,
|
|
592
588
|
});
|
|
593
589
|
this.id = id;
|
|
594
|
-
this.network = data.enumValueFromString(
|
|
590
|
+
this.network = data.enumValueFromString(identities.DepositNetwork, network);
|
|
595
591
|
this.sourceUri = sourceUri;
|
|
596
592
|
this.trackingKey = trackingKey;
|
|
597
593
|
}
|
|
@@ -650,7 +646,7 @@ class Saving extends Wallet {
|
|
|
650
646
|
userId,
|
|
651
647
|
updatedAt,
|
|
652
648
|
});
|
|
653
|
-
this.category = data.enumValueFromString(
|
|
649
|
+
this.category = data.enumValueFromString(identities.SavingCategory, category);
|
|
654
650
|
this.goalAmount = goalAmount;
|
|
655
651
|
this.goalDate = data.dateToUTC(goalDate);
|
|
656
652
|
this.name = name;
|
|
@@ -674,7 +670,7 @@ class Saving extends Wallet {
|
|
|
674
670
|
const categoriesFromString = (categoriesList) => {
|
|
675
671
|
if (categoriesList == null) return [];
|
|
676
672
|
return categoriesList.map((category) =>
|
|
677
|
-
data.enumValueFromString(
|
|
673
|
+
data.enumValueFromString(identities.ServiceProviderCategory, category),
|
|
678
674
|
);
|
|
679
675
|
};
|
|
680
676
|
|
|
@@ -739,7 +735,7 @@ class Transfer extends Transaction {
|
|
|
739
735
|
this.destinationUri = destinationUri;
|
|
740
736
|
this.id = id;
|
|
741
737
|
this.idempotencyKey = idempotencyKey;
|
|
742
|
-
this.network = data.enumValueFromString(
|
|
738
|
+
this.network = data.enumValueFromString(identities.TransferNetwork, network);
|
|
743
739
|
this.recipientName = recipientName;
|
|
744
740
|
this.trackingKey = trackingKey;
|
|
745
741
|
this.updatedAt = data.dateToUTC(updatedAt);
|
|
@@ -763,6 +759,31 @@ class Transfer extends Transaction {
|
|
|
763
759
|
});
|
|
764
760
|
}
|
|
765
761
|
|
|
762
|
+
class User {
|
|
763
|
+
constructor({
|
|
764
|
+
emailAddress,
|
|
765
|
+
phoneNumber,
|
|
766
|
+
status,
|
|
767
|
+
termsOfService,
|
|
768
|
+
verificationId,
|
|
769
|
+
}) {
|
|
770
|
+
this.emailAddress = emailAddress;
|
|
771
|
+
this.phoneNumber = phoneNumber;
|
|
772
|
+
this.status = data.enumValueFromString(identities.UserStatus, status);
|
|
773
|
+
this.termsOfService = identities.TOSAgreements.fromObject(termsOfService);
|
|
774
|
+
this.verificationId = verificationId;
|
|
775
|
+
}
|
|
776
|
+
|
|
777
|
+
static fromObject = ({ ...obj }) =>
|
|
778
|
+
new User({
|
|
779
|
+
emailAddress: obj.email_address,
|
|
780
|
+
phoneNumber: obj.phone_number,
|
|
781
|
+
status: obj.status,
|
|
782
|
+
termsOfService: obj.terms_of_service,
|
|
783
|
+
verificationId: obj.verification_id,
|
|
784
|
+
});
|
|
785
|
+
}
|
|
786
|
+
|
|
766
787
|
class UserCredential {
|
|
767
788
|
constructor({ createdAt, id, isActive, updatedAt }) {
|
|
768
789
|
this.createdAt = data.dateToUTC(createdAt);
|
|
@@ -815,7 +836,7 @@ class WalletTransaction extends Transaction {
|
|
|
815
836
|
});
|
|
816
837
|
this.id = id;
|
|
817
838
|
this.transactionType = data.enumValueFromString(
|
|
818
|
-
|
|
839
|
+
identities.WalletTransactionType,
|
|
819
840
|
transactionType,
|
|
820
841
|
);
|
|
821
842
|
this.walletUri = walletUri;
|
|
@@ -862,7 +883,7 @@ class WhatsAppTransfer extends Transaction {
|
|
|
862
883
|
this.destinationUri = destinationUri;
|
|
863
884
|
this.id = id;
|
|
864
885
|
this.expiresAt = data.dateToUTC(expiresAt);
|
|
865
|
-
this.network = data.enumValueFromString(
|
|
886
|
+
this.network = data.enumValueFromString(identities.TransferNetwork, network);
|
|
866
887
|
this.phoneNumber = phoneNumber;
|
|
867
888
|
this.recipientName = recipientName;
|
|
868
889
|
this.trackingKey = trackingKey;
|
|
@@ -918,6 +939,7 @@ const getModelFromPath = (path, obj) => {
|
|
|
918
939
|
service_providers: () => ServiceProvider.fromObject(obj),
|
|
919
940
|
statements: () => Statement.fromObject(obj),
|
|
920
941
|
transfers: () => Transfer.fromObject(obj),
|
|
942
|
+
users: () => User.fromObject(obj),
|
|
921
943
|
user_credentials: () => UserCredential.fromObject(obj),
|
|
922
944
|
user_logins: () => UserLogin.fromObject(obj),
|
|
923
945
|
wallet_transactions: () => WalletTransaction.fromObject(obj),
|
|
@@ -1057,7 +1079,7 @@ const Queryable = (SuperClass) =>
|
|
|
1057
1079
|
|
|
1058
1080
|
class AccountResource extends mix(Resource).with(Queryable, Retrievable) {
|
|
1059
1081
|
constructor(client) {
|
|
1060
|
-
super('accounts',
|
|
1082
|
+
super('accounts', identities.AccountQuery, client);
|
|
1061
1083
|
}
|
|
1062
1084
|
}
|
|
1063
1085
|
|
|
@@ -1069,7 +1091,7 @@ class ApiKeyResource extends mix(Resource).with(
|
|
|
1069
1091
|
Updateable,
|
|
1070
1092
|
) {
|
|
1071
1093
|
constructor(client) {
|
|
1072
|
-
super('api_keys',
|
|
1094
|
+
super('api_keys', identities.ApiKeyQuery, client);
|
|
1073
1095
|
}
|
|
1074
1096
|
|
|
1075
1097
|
async create() {
|
|
@@ -1123,7 +1145,7 @@ class ArpcResource extends mix(Resource).with(Creatable) {
|
|
|
1123
1145
|
|
|
1124
1146
|
class BalanceEntryResource extends mix(Resource).with(Queryable, Retrievable) {
|
|
1125
1147
|
constructor(client) {
|
|
1126
|
-
super('balance_entries',
|
|
1148
|
+
super('balance_entries', identities.BalanceEntryQuery, client);
|
|
1127
1149
|
}
|
|
1128
1150
|
|
|
1129
1151
|
async relatedTransaction(relatedTransactionUri) {
|
|
@@ -1149,7 +1171,7 @@ class BalanceEntryResource extends mix(Resource).with(Queryable, Retrievable) {
|
|
|
1149
1171
|
|
|
1150
1172
|
class BillPaymentResource extends mix(Resource).with(Queryable, Retrievable) {
|
|
1151
1173
|
constructor(client) {
|
|
1152
|
-
super('bill_payments',
|
|
1174
|
+
super('bill_payments', identities.BillPaymentQuery, client);
|
|
1153
1175
|
}
|
|
1154
1176
|
|
|
1155
1177
|
async serviceProvider(providerUri) {
|
|
@@ -1187,7 +1209,7 @@ class CardResource extends mix(Resource).with(
|
|
|
1187
1209
|
Updateable,
|
|
1188
1210
|
) {
|
|
1189
1211
|
constructor(client) {
|
|
1190
|
-
super('cards',
|
|
1212
|
+
super('cards', identities.CardsQuery, client);
|
|
1191
1213
|
}
|
|
1192
1214
|
|
|
1193
1215
|
async create(userId, issuer, fundingType) {
|
|
@@ -1213,7 +1235,7 @@ class CardTransactionResource extends mix(Resource).with(
|
|
|
1213
1235
|
Retrievable,
|
|
1214
1236
|
) {
|
|
1215
1237
|
constructor(client) {
|
|
1216
|
-
super('card_transactions',
|
|
1238
|
+
super('card_transactions', identities.CardTransactionQuery, client);
|
|
1217
1239
|
}
|
|
1218
1240
|
|
|
1219
1241
|
async relatedCard(relatedCardUri) {
|
|
@@ -1265,7 +1287,7 @@ class CardValidationResource extends mix(Resource).with(Creatable) {
|
|
|
1265
1287
|
|
|
1266
1288
|
class CommissionResource extends mix(Resource).with(Queryable, Retrievable) {
|
|
1267
1289
|
constructor(client) {
|
|
1268
|
-
super('commissions',
|
|
1290
|
+
super('commissions', identities.QueryParams, client);
|
|
1269
1291
|
}
|
|
1270
1292
|
|
|
1271
1293
|
async relatedTransaction(relatedTransactionUri) {
|
|
@@ -1279,7 +1301,7 @@ class CommissionResource extends mix(Resource).with(Queryable, Retrievable) {
|
|
|
1279
1301
|
|
|
1280
1302
|
class DepositResource extends mix(Resource).with(Queryable, Retrievable) {
|
|
1281
1303
|
constructor(client) {
|
|
1282
|
-
super('deposits',
|
|
1304
|
+
super('deposits', identities.DepositQuery, client);
|
|
1283
1305
|
}
|
|
1284
1306
|
|
|
1285
1307
|
async source(sourceUri) {
|
|
@@ -1307,7 +1329,7 @@ class SavingResource extends mix(Resource).with(
|
|
|
1307
1329
|
Updateable,
|
|
1308
1330
|
) {
|
|
1309
1331
|
constructor(client) {
|
|
1310
|
-
super('savings',
|
|
1332
|
+
super('savings', identities.WalletQuery, client);
|
|
1311
1333
|
}
|
|
1312
1334
|
|
|
1313
1335
|
async create(category, goalAmount, goalDate, name) {
|
|
@@ -1333,22 +1355,22 @@ class ServiceProviderResource extends mix(Resource).with(
|
|
|
1333
1355
|
Retrievable,
|
|
1334
1356
|
) {
|
|
1335
1357
|
constructor(client) {
|
|
1336
|
-
super('service_providers',
|
|
1358
|
+
super('service_providers', identities.QueryParams, client);
|
|
1337
1359
|
}
|
|
1338
1360
|
}
|
|
1339
1361
|
|
|
1340
1362
|
class StatementResource extends mix(Resource).with(Downlodable, Queryable) {
|
|
1341
1363
|
constructor(client) {
|
|
1342
|
-
super('statements',
|
|
1364
|
+
super('statements', identities.StatementQuery, client);
|
|
1343
1365
|
}
|
|
1344
1366
|
|
|
1345
1367
|
async pdf(id) {
|
|
1346
|
-
const byteString = await this._download(id,
|
|
1368
|
+
const byteString = await this._download(id, identities.FileFormat.Pdf);
|
|
1347
1369
|
return byteString;
|
|
1348
1370
|
}
|
|
1349
1371
|
|
|
1350
1372
|
async xml(id) {
|
|
1351
|
-
const byteString = await this._download(id,
|
|
1373
|
+
const byteString = await this._download(id, identities.FileFormat.Xml);
|
|
1352
1374
|
return byteString;
|
|
1353
1375
|
}
|
|
1354
1376
|
}
|
|
@@ -1359,7 +1381,7 @@ class TransferResource extends mix(Resource).with(
|
|
|
1359
1381
|
Retrievable,
|
|
1360
1382
|
) {
|
|
1361
1383
|
constructor(client) {
|
|
1362
|
-
super('transfers',
|
|
1384
|
+
super('transfers', identities.TransferQuery, client);
|
|
1363
1385
|
}
|
|
1364
1386
|
|
|
1365
1387
|
async destination(destinationUri) {
|
|
@@ -1479,13 +1501,25 @@ class UserLoginResource extends mix(Resource).with(Creatable, Deactivable) {
|
|
|
1479
1501
|
}
|
|
1480
1502
|
}
|
|
1481
1503
|
|
|
1504
|
+
class UserResourse extends mix(Resource).with(Queryable, Updateable) {
|
|
1505
|
+
constructor(client) {
|
|
1506
|
+
super('users', identities.UserQuery, client);
|
|
1507
|
+
}
|
|
1508
|
+
|
|
1509
|
+
async update({ termsOfService, userId = 'me', verificationId }) {
|
|
1510
|
+
const request = new walletTransactionRequest.UserUpdateRequest({ termsOfService, verificationId });
|
|
1511
|
+
const user = await this._update(userId, request.toCleanObject());
|
|
1512
|
+
return user;
|
|
1513
|
+
}
|
|
1514
|
+
}
|
|
1515
|
+
|
|
1482
1516
|
class WalletTransactionsResource extends mix(Resource).with(
|
|
1483
1517
|
Creatable,
|
|
1484
1518
|
Queryable,
|
|
1485
1519
|
Retrievable,
|
|
1486
1520
|
) {
|
|
1487
1521
|
constructor(client) {
|
|
1488
|
-
super('wallet_transactions',
|
|
1522
|
+
super('wallet_transactions', identities.WalletTransactionQuery, client);
|
|
1489
1523
|
}
|
|
1490
1524
|
|
|
1491
1525
|
async create(amount, transactionType, walletUri) {
|
|
@@ -1512,7 +1546,7 @@ class WhatsAppTransferResource extends mix(Resource).with(
|
|
|
1512
1546
|
Retrievable,
|
|
1513
1547
|
) {
|
|
1514
1548
|
constructor(client) {
|
|
1515
|
-
super('whatsapp_transfers',
|
|
1549
|
+
super('whatsapp_transfers', identities.QueryParams, client);
|
|
1516
1550
|
}
|
|
1517
1551
|
|
|
1518
1552
|
async accountDestination(destinationUri) {
|
|
@@ -1525,7 +1559,7 @@ class WhatsAppTransferResource extends mix(Resource).with(
|
|
|
1525
1559
|
}
|
|
1526
1560
|
|
|
1527
1561
|
class Cuenca {
|
|
1528
|
-
constructor(apiKey, apiSecret, phase =
|
|
1562
|
+
constructor(apiKey, apiSecret, phase = identities.Phase.Sandbox) {
|
|
1529
1563
|
this.client = new Client({ apiKey, apiSecret, phase });
|
|
1530
1564
|
this.withClient(this.client);
|
|
1531
1565
|
}
|
|
@@ -1546,6 +1580,7 @@ class Cuenca {
|
|
|
1546
1580
|
this.serviceProviders = new ServiceProviderResource(client);
|
|
1547
1581
|
this.statements = new StatementResource(client);
|
|
1548
1582
|
this.transfers = new TransferResource(client);
|
|
1583
|
+
this.users = new UserResourse(client);
|
|
1549
1584
|
this.userCredentials = new UserCredentialResource(client);
|
|
1550
1585
|
this.userLogins = new UserLoginResource(client);
|
|
1551
1586
|
this.walletTransactions = new WalletTransactionsResource(client);
|
package/build/index.mjs
CHANGED
|
@@ -2,9 +2,9 @@ import axios from 'axios';
|
|
|
2
2
|
import Buffer from 'buffer';
|
|
3
3
|
import { CuencaResponseException, CuencaException, NoResultFound, MultipleResultsFound, InvalidPassword } from './errors/index.mjs';
|
|
4
4
|
import { Jwt } from './jwt/index.mjs';
|
|
5
|
-
import { P as Phase, F as FileFormat, E as EntryType, T as TransactionStatus, C as CardIssuer, a as CardStatus, b as CardType, c as CardFundingType, d as CardErrorType, e as CardTransactionType, f as CommissionType, D as DepositNetwork, S as SavingCategory, g as ServiceProviderCategory, h as TransferNetwork, W as WalletTransactionType, A as AccountQuery,
|
|
5
|
+
import { P as Phase, F as FileFormat, E as EntryType, T as TransactionStatus, C as CardIssuer, a as CardStatus, b as CardType, c as CardFundingType, d as CardErrorType, e as CardTransactionType, f as CommissionType, D as DepositNetwork, S as SavingCategory, g as ServiceProviderCategory, h as TransferNetwork, U as UserStatus, i as TOSAgreements, W as WalletTransactionType, A as AccountQuery, j as ApiKeyQuery, B as BalanceEntryQuery, k as BillPaymentQuery, l as CardsQuery, m as CardTransactionQuery, Q as QueryParams, n as DepositQuery, o as WalletQuery, p as StatementQuery, q as TransferQuery, r as UserQuery, s as WalletTransactionQuery } from './identities-5808ada9.mjs';
|
|
6
6
|
import { d as dateToUTC, e as enumValueFromString } from './data-d5bcb7c8.mjs';
|
|
7
|
-
import { A as ApiKeyUpdateRequest, a as ArpcRequest, C as CardActivationRequest, b as CardRequest, c as CardUpdateRequest, d as CardValidationRequest, S as SavingRequest, T as TransferRequest, U as UserCredentialRequest, e as UserCredentialUpdateRequest, f as UserLoginRequest, W as WalletTransactionRequest } from './walletTransactionRequest-
|
|
7
|
+
import { A as ApiKeyUpdateRequest, a as ArpcRequest, C as CardActivationRequest, b as CardRequest, c as CardUpdateRequest, d as CardValidationRequest, S as SavingRequest, T as TransferRequest, U as UserCredentialRequest, e as UserCredentialUpdateRequest, f as UserLoginRequest, g as UserUpdateRequest, W as WalletTransactionRequest } from './walletTransactionRequest-ede62457.mjs';
|
|
8
8
|
|
|
9
9
|
/* global window */
|
|
10
10
|
|
|
@@ -17,7 +17,7 @@ const isNode =
|
|
|
17
17
|
|
|
18
18
|
const runtimeEnv = { isBrowser, isNode };
|
|
19
19
|
|
|
20
|
-
const name="@cuenca-mx/cuenca-js";const version="0.0.1-dev.
|
|
20
|
+
const name="@cuenca-mx/cuenca-js";const version="0.0.1-dev.24";const description="Cuenca client for JS";const main="./build/index.cjs";const module="./build/index.mjs";const browser="./build/umd/cuenca.umd.js";const files=["build/**/*"];const exports={".":{"import":"./build/index.mjs",require:"./build/index.cjs"},"./errors":{"import":"./build/errors/index.mjs",require:"./build/errors/index.cjs"},"./jwt":{"import":"./build/jwt/index.mjs",require:"./build/jwt/index.cjs"},"./requests":{"import":"./build/requests/index.mjs",require:"./build/requests/index.cjs"},"./types":{"import":"./build/types/index.mjs",require:"./build/types/index.cjs"}};const packageManager="yarn@3.0.2";const type="module";const repository={type:"git",url:"https://github.com/cuenca-mx/cuenca-js.git",directory:"packages/cuenca-js"};const keywords=["cuenca"];const license="MIT";const bugs={url:"https://github.com/cuenca-mx/cuenca-js/issues"};const homepage="https://cuenca.com";const scripts={build:"rm -rf build/ && yarn rollup --config",test:"yarn node --experimental-vm-modules $(yarn bin jest)",publish:"yarn build && yarn npm publish"};const devDependencies={"@rollup/plugin-json":"^4.1.0","@rollup/plugin-node-resolve":"^13.1.1",jest:"^27.4.5",rollup:"^2.61.1","rollup-plugin-terser":"^7.0.2"};const dependencies={axios:"^0.24.0",buffer:"^6.0.3"};var pkg = {name:name,version:version,description:description,main:main,module:module,browser:browser,files:files,exports:exports,packageManager:packageManager,type:type,repository:repository,keywords:keywords,license:license,bugs:bugs,homepage:homepage,scripts:scripts,devDependencies:devDependencies,dependencies:dependencies};
|
|
21
21
|
|
|
22
22
|
class Client {
|
|
23
23
|
constructor({ apiKey, apiSecret, phase = Phase.Sandbox } = {}) {
|
|
@@ -86,7 +86,7 @@ class Client {
|
|
|
86
86
|
};
|
|
87
87
|
}
|
|
88
88
|
|
|
89
|
-
async configure({ apiKey, apiSecret, loginToken, phase,
|
|
89
|
+
async configure({ apiKey, apiSecret, loginToken, phase, useJwt = false }) {
|
|
90
90
|
this.basicAuth = {
|
|
91
91
|
apiKey: apiKey || this.basicAuth.apiKey,
|
|
92
92
|
apiSecret: apiSecret || this.basicAuth.apiSecret,
|
|
@@ -99,10 +99,6 @@ class Client {
|
|
|
99
99
|
if (loginToken) {
|
|
100
100
|
this.addHeadersToRequest({ 'X-Cuenca-LoginToken': loginToken });
|
|
101
101
|
}
|
|
102
|
-
|
|
103
|
-
if (sessionId) {
|
|
104
|
-
this.addHeadersToRequest({ 'X-Cuenca-SessionId': sessionId });
|
|
105
|
-
}
|
|
106
102
|
}
|
|
107
103
|
|
|
108
104
|
async get({ endpoint, format, params }) {
|
|
@@ -754,6 +750,31 @@ class Transfer extends Transaction {
|
|
|
754
750
|
});
|
|
755
751
|
}
|
|
756
752
|
|
|
753
|
+
class User {
|
|
754
|
+
constructor({
|
|
755
|
+
emailAddress,
|
|
756
|
+
phoneNumber,
|
|
757
|
+
status,
|
|
758
|
+
termsOfService,
|
|
759
|
+
verificationId,
|
|
760
|
+
}) {
|
|
761
|
+
this.emailAddress = emailAddress;
|
|
762
|
+
this.phoneNumber = phoneNumber;
|
|
763
|
+
this.status = enumValueFromString(UserStatus, status);
|
|
764
|
+
this.termsOfService = TOSAgreements.fromObject(termsOfService);
|
|
765
|
+
this.verificationId = verificationId;
|
|
766
|
+
}
|
|
767
|
+
|
|
768
|
+
static fromObject = ({ ...obj }) =>
|
|
769
|
+
new User({
|
|
770
|
+
emailAddress: obj.email_address,
|
|
771
|
+
phoneNumber: obj.phone_number,
|
|
772
|
+
status: obj.status,
|
|
773
|
+
termsOfService: obj.terms_of_service,
|
|
774
|
+
verificationId: obj.verification_id,
|
|
775
|
+
});
|
|
776
|
+
}
|
|
777
|
+
|
|
757
778
|
class UserCredential {
|
|
758
779
|
constructor({ createdAt, id, isActive, updatedAt }) {
|
|
759
780
|
this.createdAt = dateToUTC(createdAt);
|
|
@@ -909,6 +930,7 @@ const getModelFromPath = (path, obj) => {
|
|
|
909
930
|
service_providers: () => ServiceProvider.fromObject(obj),
|
|
910
931
|
statements: () => Statement.fromObject(obj),
|
|
911
932
|
transfers: () => Transfer.fromObject(obj),
|
|
933
|
+
users: () => User.fromObject(obj),
|
|
912
934
|
user_credentials: () => UserCredential.fromObject(obj),
|
|
913
935
|
user_logins: () => UserLogin.fromObject(obj),
|
|
914
936
|
wallet_transactions: () => WalletTransaction.fromObject(obj),
|
|
@@ -1470,6 +1492,18 @@ class UserLoginResource extends mix(Resource).with(Creatable, Deactivable) {
|
|
|
1470
1492
|
}
|
|
1471
1493
|
}
|
|
1472
1494
|
|
|
1495
|
+
class UserResourse extends mix(Resource).with(Queryable, Updateable) {
|
|
1496
|
+
constructor(client) {
|
|
1497
|
+
super('users', UserQuery, client);
|
|
1498
|
+
}
|
|
1499
|
+
|
|
1500
|
+
async update({ termsOfService, userId = 'me', verificationId }) {
|
|
1501
|
+
const request = new UserUpdateRequest({ termsOfService, verificationId });
|
|
1502
|
+
const user = await this._update(userId, request.toCleanObject());
|
|
1503
|
+
return user;
|
|
1504
|
+
}
|
|
1505
|
+
}
|
|
1506
|
+
|
|
1473
1507
|
class WalletTransactionsResource extends mix(Resource).with(
|
|
1474
1508
|
Creatable,
|
|
1475
1509
|
Queryable,
|
|
@@ -1537,6 +1571,7 @@ class Cuenca {
|
|
|
1537
1571
|
this.serviceProviders = new ServiceProviderResource(client);
|
|
1538
1572
|
this.statements = new StatementResource(client);
|
|
1539
1573
|
this.transfers = new TransferResource(client);
|
|
1574
|
+
this.users = new UserResourse(client);
|
|
1540
1575
|
this.userCredentials = new UserCredentialResource(client);
|
|
1541
1576
|
this.userLogins = new UserLoginResource(client);
|
|
1542
1577
|
this.walletTransactions = new WalletTransactionsResource(client);
|
package/build/requests/index.cjs
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var walletTransactionRequest = require('../walletTransactionRequest-
|
|
5
|
+
var walletTransactionRequest = require('../walletTransactionRequest-507c5996.cjs');
|
|
6
6
|
require('../errors/index.cjs');
|
|
7
7
|
require('../data-9edbb2a0.cjs');
|
|
8
8
|
|
|
@@ -15,8 +15,10 @@ exports.CardRequest = walletTransactionRequest.CardRequest;
|
|
|
15
15
|
exports.CardUpdateRequest = walletTransactionRequest.CardUpdateRequest;
|
|
16
16
|
exports.CardValidationRequest = walletTransactionRequest.CardValidationRequest;
|
|
17
17
|
exports.SavingRequest = walletTransactionRequest.SavingRequest;
|
|
18
|
+
exports.TosUpdateRequest = walletTransactionRequest.TosUpdateRequest;
|
|
18
19
|
exports.TransferRequest = walletTransactionRequest.TransferRequest;
|
|
19
20
|
exports.UserCredentialRequest = walletTransactionRequest.UserCredentialRequest;
|
|
20
21
|
exports.UserCredentialUpdateRequest = walletTransactionRequest.UserCredentialUpdateRequest;
|
|
21
22
|
exports.UserLoginRequest = walletTransactionRequest.UserLoginRequest;
|
|
23
|
+
exports.UserUpdateRequest = walletTransactionRequest.UserUpdateRequest;
|
|
22
24
|
exports.WalletTransactionRequest = walletTransactionRequest.WalletTransactionRequest;
|
package/build/requests/index.mjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { A as ApiKeyUpdateRequest, a as ArpcRequest, C as CardActivationRequest, b as CardRequest, c as CardUpdateRequest, d as CardValidationRequest, S as SavingRequest, T as TransferRequest, U as UserCredentialRequest, e as UserCredentialUpdateRequest, f as UserLoginRequest, W as WalletTransactionRequest } from '../walletTransactionRequest-
|
|
1
|
+
export { A as ApiKeyUpdateRequest, a as ArpcRequest, C as CardActivationRequest, b as CardRequest, c as CardUpdateRequest, d as CardValidationRequest, S as SavingRequest, h as TosUpdateRequest, T as TransferRequest, U as UserCredentialRequest, e as UserCredentialUpdateRequest, f as UserLoginRequest, g as UserUpdateRequest, W as WalletTransactionRequest } from '../walletTransactionRequest-ede62457.mjs';
|
|
2
2
|
import '../errors/index.mjs';
|
|
3
3
|
import '../data-d5bcb7c8.mjs';
|
package/build/types/index.cjs
CHANGED
|
@@ -2,39 +2,42 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var identities = require('../identities-89a79d34.cjs');
|
|
6
6
|
require('../errors/index.cjs');
|
|
7
7
|
require('../data-9edbb2a0.cjs');
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
exports.AccountQuery =
|
|
12
|
-
exports.ApiKeyQuery =
|
|
13
|
-
exports.BalanceEntryQuery =
|
|
14
|
-
exports.BillPaymentQuery =
|
|
15
|
-
exports.CardErrorType =
|
|
16
|
-
exports.CardFundingType =
|
|
17
|
-
exports.CardIssuer =
|
|
18
|
-
exports.CardStatus =
|
|
19
|
-
exports.CardTransactionQuery =
|
|
20
|
-
exports.CardTransactionType =
|
|
21
|
-
exports.CardType =
|
|
22
|
-
exports.CardsQuery =
|
|
23
|
-
exports.CommissionType =
|
|
24
|
-
exports.DepositNetwork =
|
|
25
|
-
exports.DepositQuery =
|
|
26
|
-
exports.EntryType =
|
|
27
|
-
exports.FileFormat =
|
|
28
|
-
exports.PageSize =
|
|
29
|
-
exports.Phase =
|
|
30
|
-
exports.QueryParams =
|
|
31
|
-
exports.SavingCategory =
|
|
32
|
-
exports.ServiceProviderCategory =
|
|
33
|
-
exports.StatementQuery =
|
|
34
|
-
exports.
|
|
35
|
-
exports.
|
|
36
|
-
exports.
|
|
37
|
-
exports.
|
|
38
|
-
exports.
|
|
39
|
-
exports.
|
|
40
|
-
exports.
|
|
11
|
+
exports.AccountQuery = identities.AccountQuery;
|
|
12
|
+
exports.ApiKeyQuery = identities.ApiKeyQuery;
|
|
13
|
+
exports.BalanceEntryQuery = identities.BalanceEntryQuery;
|
|
14
|
+
exports.BillPaymentQuery = identities.BillPaymentQuery;
|
|
15
|
+
exports.CardErrorType = identities.CardErrorType;
|
|
16
|
+
exports.CardFundingType = identities.CardFundingType;
|
|
17
|
+
exports.CardIssuer = identities.CardIssuer;
|
|
18
|
+
exports.CardStatus = identities.CardStatus;
|
|
19
|
+
exports.CardTransactionQuery = identities.CardTransactionQuery;
|
|
20
|
+
exports.CardTransactionType = identities.CardTransactionType;
|
|
21
|
+
exports.CardType = identities.CardType;
|
|
22
|
+
exports.CardsQuery = identities.CardsQuery;
|
|
23
|
+
exports.CommissionType = identities.CommissionType;
|
|
24
|
+
exports.DepositNetwork = identities.DepositNetwork;
|
|
25
|
+
exports.DepositQuery = identities.DepositQuery;
|
|
26
|
+
exports.EntryType = identities.EntryType;
|
|
27
|
+
exports.FileFormat = identities.FileFormat;
|
|
28
|
+
exports.PageSize = identities.PageSize;
|
|
29
|
+
exports.Phase = identities.Phase;
|
|
30
|
+
exports.QueryParams = identities.QueryParams;
|
|
31
|
+
exports.SavingCategory = identities.SavingCategory;
|
|
32
|
+
exports.ServiceProviderCategory = identities.ServiceProviderCategory;
|
|
33
|
+
exports.StatementQuery = identities.StatementQuery;
|
|
34
|
+
exports.TOSAgreements = identities.TOSAgreements;
|
|
35
|
+
exports.TrackDataMethod = identities.TrackDataMethod;
|
|
36
|
+
exports.TransactionStatus = identities.TransactionStatus;
|
|
37
|
+
exports.TransferNetwork = identities.TransferNetwork;
|
|
38
|
+
exports.TransferQuery = identities.TransferQuery;
|
|
39
|
+
exports.UserQuery = identities.UserQuery;
|
|
40
|
+
exports.UserStatus = identities.UserStatus;
|
|
41
|
+
exports.WalletQuery = identities.WalletQuery;
|
|
42
|
+
exports.WalletTransactionQuery = identities.WalletTransactionQuery;
|
|
43
|
+
exports.WalletTransactionType = identities.WalletTransactionType;
|
package/build/types/index.mjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { A as AccountQuery,
|
|
1
|
+
export { A as AccountQuery, j as ApiKeyQuery, B as BalanceEntryQuery, k as BillPaymentQuery, d as CardErrorType, c as CardFundingType, C as CardIssuer, a as CardStatus, m as CardTransactionQuery, e as CardTransactionType, b as CardType, l as CardsQuery, f as CommissionType, D as DepositNetwork, n as DepositQuery, E as EntryType, F as FileFormat, u as PageSize, P as Phase, Q as QueryParams, S as SavingCategory, g as ServiceProviderCategory, p as StatementQuery, i as TOSAgreements, t as TrackDataMethod, T as TransactionStatus, h as TransferNetwork, q as TransferQuery, r as UserQuery, U as UserStatus, o as WalletQuery, s as WalletTransactionQuery, W as WalletTransactionType } from '../identities-5808ada9.mjs';
|
|
2
2
|
import '../errors/index.mjs';
|
|
3
3
|
import '../data-d5bcb7c8.mjs';
|
package/build/umd/cuenca.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
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 p extends Error{constructor(t){super(t),Object.setPrototypeOf(this,p.prototype)}}const l="undefined"!=typeof window&&void 0!==window.document,m="undefined"!=typeof process&&"[object process]"===Object.prototype.toString.call(process),w=l,_=m;class b{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=b.getExpirationDate(i);return new b(r,i)}}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 y{static Credit=new y("credit");static Debit=new y("debit");constructor(t){this.value=t}}class g{static Accendo=new g("accendo");static Cuenca=new g("cuenca");constructor(t){this.value=t}}class f{static Active=new f("active");static Blocked=new f("blocked");static Created=new f("created");static Deactivated=new f("deactivated");static Printing=new f("printing");constructor(t){this.value=t}}class j{static Auth=new j("auth");static Capture=new j("capture");static Chargeback=new j("chargeback");static Expiration=new j("expiration");static Refund=new j("refund");static Void=new j("void");constructor(t){this.value=t}}class A{static Physical=new A("physical");static Virtual=new A("virtual");constructor(t){this.value=t}}class x{static CardRequest=new x("card_request");static CashDeposit=new x("cash_deposit");static OutgoingSpei=new x("outgoing_spei");constructor(t){this.value=t}}class O{static Cash=new O("cash");static Internal=new O("internal");static Spei=new O("spei");constructor(t){this.value=t}}class I{static Credit=new I("credit");static Debit=new I("debit");constructor(t){this.value=t}}class k{static Pdf=new k("pdf");static Xml=new k("xml");static Json=new k("json");constructor(t){this.value=t}}class T{static Sandbox=new T("sandbox");static Stage=new T("stage");static Api=new T("api");constructor(t){this.value=t}}class U{static Cable=new U("cable");static CreditCard=new U("credit_card");static Electricity=new U("electricity");static Gas=new U("gas");static Internet=new U("internet");static LandlineTelephone=new U("landline_telephone");static MobileTelephonePostpaid=new U("mobile_telephone_postpaid");static MobileTelephonePrepaid=new U("mobile_telephone_prepaid");static SateliteTelevision=new U("satelite_television");static Water=new U("water");constructor(t){this.value=t}}class C{static General=new C("general");static Home=new C("home");static Vehicle=new C("vehicle");static Travel=new C("travel");static Clothing=new C("clothing");static Other=new C("other");static Medical=new C("medical");static Accident=new C("accident");static Education=new C("education");constructor(t){this.value=t}}class N{static NotSet=new N("not_set");static Terminal=new N("terminal");static Manual=new N("manual");static Unknown=new N("unknown");static Contactless=new N("contactless");static FallBack=new N("fall_back");static MagneticStripe=new N("magnetic_stripe");static RecurringCharge=new N("recurring_charge");constructor(t){this.value=t}}class S{static Created=new S("created");static Failed=new S("failed");static InReview=new S("in_review");static Submitted=new S("submitted");static Succeeded=new S("succeeded");constructor(t){this.value=t}}class ${static Internal=new $("internal");static Spei=new $("spei");constructor(t){this.value=t}}class K{static Deposit=new K("deposit");static Withdrawal=new K("withdrawal");constructor(t){this.value=t}}const q=t=>{if(!t)return null;const e=new Date(t);return new Date(e.getTime())},E=(t,e)=>Object.values(t).find((t=>t.value===e));class P{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 D extends P{constructor({accountNumber:t,...e}){super(e),this.accountNumber=t}toObject(){return Object.assign(super.toObject(),{account_number:this.accountNumber})}}class M extends P{constructor({active:t,...e}){super(e),this.active=t}toObject(){return Object.assign(super.toObject(),{active:this.active})}}class B extends P{constructor({status:t,...e}){super(e),this.status=t}toObject(){return Object.assign(super.toObject(),{status:this.status})}}class V extends B{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 R extends B{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 Y extends P{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 H extends P{constructor({accountNumber:t,...e}){super(e),this.accountNumber=t}toObject(){return Object.assign(super.toObject(),{account_number:this.accountNumber})}}class L extends P{constructor({cardUri:t,...e}){super(e),this.cardUri=t}toObject(){return Object.assign(super.toObject(),{card_uri:this.cardUri})}}class F extends P{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 X extends P{constructor({walletUri:t,...e}){super(e),this.walletUri=t}toObject(){return Object.assign(super.toObject(),{wallet_uri:this.walletUri})}}class z extends P{constructor({active:t,...e}){super(e),this.active=t}toObject(){return Object.assign(super.toObject(),{active:this.active})}}class Q extends P{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=q(Date.now());s.setUTCDate(1);if(q(`${e}-${t}-01`).getTime()>=s.getTime())throw new p(`${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})}}var J="0.0.1-dev.21";class W{constructor({apiKey:t,apiSecret:e,phase:s=T.Sandbox}={}){this.phase=s,this.basicAuth={apiKey:t,apiSecret:e},this.jwtToken=null,this._session=r.default.create()}get session(){return this._session}get origin(){return`https://${this.phase.value}.cuenca.com`}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 b.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}){return this.request({method:"POST",endpoint:t,data:e})}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=k.Json,method:i="GET",params:r=null}){const a={Authorization:this.authHeader,"Content-Type":"application/json",Accept:`application/${s.value}`};_?a["User-Agent"]=`cuenca-js/${J}`:w&&(a["X-User-Agent"]=`cuenca-js/${J}`),this.jwtToken&&(this.jwtToken.isExpired&&(this.jwtToken=await b.create(this)),a["X-Cuenca-Token"]=this.jwtToken.token);const o=this.addHeadersToRequest(a),d=e;d&&Object.keys(d).forEach((t=>{d[t]instanceof Date&&(d[t]=d[t].toISOString())}));const u=this.addConfigToRequest({method:i,params:r,data:d,url:t});let h;try{h=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{o.eject(),u.eject()}return h.data}}class G{constructor({accountNumber:t,createdAt:e,id:s,institutionName:i,name:r,userId:a}){this.accountNumber=t,this.createdAt=q(e),this.id=s,this.institutionName=i,this.name=r,this.userId=a}static fromObject=({id:t,name:e,...s})=>new G({id:t,name:e,accountNumber:s.account_number,createdAt:s.created_at,institutionName:s.institution_name,userId:s.user_id})}class Z{constructor({createdAt:t,deactivatedAt:e,id:s,secret:i,userId:r,updatedAt:a}){this.createdAt=q(t),this.deactivatedAt=q(e),this.id=s,this.secret=i,this.userId=r,this.updatedAt=q(a)}static fromObject=({id:t,secret:e,...s})=>new Z({id:t,secret:e,createdAt:s.created_at,deactivatedAt:s.deactivated_at,userId:s.user_id,updatedAt:s.updated_at});get isActive(){const t=q(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=q(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 et{constructor({amount:t,createdAt:e,descriptor:s,entryType:i,fundingInstrumentUri:r,id:a,name:n,relatedTransactionUri:c,rollingBalance:o}){this.amount=t,this.createdAt=q(e),this.descriptor=s,this.entryType=E(I,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 et({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=q(e),this.descriptor=s,this.status=E(S,i),this.userId=r}}class it 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 it({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 rt{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:p}){this.createdAt=q(t),this.cvv2=e,this.expMonth=s,this.expYear=i,this.fundingType=E(y,r),this.id=a,this.issuer=E(g,n),this.number=c,this.pin=o,this.status=E(f,d),this.type=E(A,u),this.updatedAt=q(h),this.userId=p}static fromObject=({cvv2:t,id:e,issuer:s,number:i,pin:r,status:a,type:n,...c})=>new rt({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 at{constructor({cardUri:t,createdAt:e,id:s,ipAddress:i,success:r,userId:a}){this.cardUri=t,this.createdAt=q(e),this.id=s,this.ipAddress=i,this.success=r,this.userId=a}static fromObject=({id:t,success:e,...s})=>new at({id:t,success:e,cardUri:s.card_uri,createdAt:s.created_at,ipAddress:s.ip_address,userId:s.user_id})}class nt 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:p}){super({amount:t,createdAt:a,descriptor:n,status:u,userId:p}),this.cardErrorType=E(v,e),this.cardLastFour=s,this.cardType=E(A,i),this.cardUri=r,this.metadata=c,this.network=o,this.relatedCardTransactionsUris=d,this.type=E(j,h)}static fromObject=({amount:t,descriptor:e,metadata:s,network:i,status:r,type:a,...n})=>new nt({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 ct{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=E(f,t),this.cardType=E(A,e),this.cardUri=s,this.createdAt=q(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 ct({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===f.Active}}class ot 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=E(x,a)}static fromObject=({amount:t,descriptor:e,status:s,type:i,...r})=>new ot({amount:t,descriptor:e,status:s,type:i,createdAt:r.created_at,relatedTransactionUri:r.related_transaction_uri,userId:r.user_id})}class dt 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=E(O,r),this.sourceUri=n,this.trackingKey=c}static fromObject=({amount:t,descriptor:e,id:s,network:i,status:r,...a})=>new dt({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 ut{constructor({id:t}){this.id=t}static fromObject=({id:t})=>new ut({id:t})}class ht extends class{constructor({balance:t,createdAt:e,deactivatedAt:s,id:i,userId:r,updatedAt:a}){this.balance=t,this.createdAt=q(e),this.deactivatedAt=q(s),this.id=i,this.userId=r,this.updatedAt=q(a)}}{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=E(C,e),this.goalAmount=r,this.goalDate=q(a),this.name=c}static fromObject=({balance:t,category:e,id:s,name:i,...r})=>new ht({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 pt{constructor({categories:t,id:e,name:s,providerKey:i}){var r;this.categories=null==(r=t)?[]:r.map((t=>E(U,t))),this.id=e,this.name=s,this.providerKey=i}static fromObject=({categories:t,id:e,name:s,...i})=>new pt({categories:t,id:e,name:s,providerKey:i.provider_key})}class lt{constructor({createdAt:t,id:e,month:s,year:i}){this.createdAt=q(t),this.id=e,this.month=s,this.year=i}static fromObject=({id:t,month:e,year:s,...i})=>new lt({id:t,month:e,year:s,createdAt:i.created_at})}class mt 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:p}){super({amount:e,createdAt:s,descriptor:i,status:d,userId:p}),this.accountNumber=t,this.destinationUri=r,this.id=a,this.idempotencyKey=n,this.network=E($,c),this.recipientName=o,this.trackingKey=u,this.updatedAt=q(h)}static fromObject=({amount:t,descriptor:e,id:s,network:i,status:r,...a})=>new mt({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 wt{constructor({createdAt:t,id:e,isActive:s,updatedAt:i}){this.createdAt=q(t),this.id=e,this.isActive=s,this.updatedAt=q(i)}static fromObject=({id:t,...e})=>new wt({id:t,createdAt:e.created_at,isActive:e.is_active,updatedAt:e.updated_at})}class _t{constructor({id:t,lastLoginAt:e,success:s}){this.id=t,this.lastLoginAt=q(e),this.success=s}static fromObject=({id:t,success:e,...s})=>new _t({id:t,success:e,lastLoginAt:s.last_login_at})}class bt 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=E(K,a),this.walletUri=c}static fromObject=({amount:t,descriptor:e,id:s,status:i,...r})=>new bt({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 vt 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:p,userId:l}){super({amount:t,createdAt:s,descriptor:i,status:u,userId:l}),this.claimUrl=e,this.destinationUri=r,this.id=n,this.expiresAt=q(a),this.network=E($,c),this.phoneNumber=o,this.recipientName=d,this.trackingKey=h,this.updatedAt=q(p)}static fromObject=({amount:t,descriptor:e,id:s,network:i,status:r,...a})=>new vt({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 yt{constructor(t){this.superclass=t}with(...t){return t.reduce(((t,e)=>e(t)),this.superclass)}}const gt=t=>new yt(t),ft=(t,e)=>({accounts:()=>G.fromObject(e),api_keys:()=>Z.fromObject(e),arpc:()=>tt.fromObject(e),balance_entries:()=>et.fromObject(e),bill_payments:()=>it.fromObject(e),cards:()=>rt.fromObject(e),card_activations:()=>at.fromObject(e),card_transactions:()=>nt.fromObject(e),card_validations:()=>ct.fromObject(e),commissions:()=>ot.fromObject(e),deposits:()=>dt.fromObject(e),login_tokens:()=>ut.fromObject(e),savings:()=>ht.fromObject(e),service_providers:()=>pt.fromObject(e),statements:()=>lt.fromObject(e),transfers:()=>mt.fromObject(e),user_credentials:()=>wt.fromObject(e),user_logins:()=>_t.fromObject(e),wallet_transactions:()=>bt.fromObject(e),whatsapp_transfers:()=>vt.fromObject(e)}[t]()),jt=t=>{if(null===t||""===t)return null;const e=t.match("/(.*?)/");return null===e?null:e[0].replaceAll("/","")};class At{constructor(t,e,s){this.path=t,this.QueryParams=e,this.client=s}}const xt=t=>class extends t{async retrieve(t){const e=await this.client.get({endpoint:`/${this.path}/${t}`});return ft(this.path,e)}},Ot=t=>class extends t{async _create(t){const e=await this.client.post({endpoint:`/${this.path}`,data:t});return ft(this.path,e)}},It=t=>class extends t{async _update(t,e){const s=await this.client.patch({endpoint:`/${this.path}/${t}`,data:e});return ft(this.path,s)}},kt=t=>class extends t{async _deactivate(t,e){const s=await this.client.delete({endpoint:`/${this.path}/${t}`,data:e});return ft(this.path,s)}},Tt=t=>class extends t{async _download(t,e){return await this.client.get({endpoint:`/${this.path}/${t}`,format:e})}},Ut=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 ft(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 ft(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=ft(this.path,e);yield t}e=t.next_page_uri}}};class Ct extends(gt(At).with(Ut,xt)){constructor(t){super("accounts",D,t)}}class Nt{toObject(){return{}}toCleanObject(){const t=this.toObject();return Object.keys(t).forEach((e=>{null==t[e]&&delete t[e]})),t}}class St extends Nt{constructor(t,e){super(),this.userId=t,this.metadata=e}toObject(){return{user_id:this.userId,metadata:this.metadata}}}class $t extends Nt{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 Kt extends Nt{constructor(t,e){super(),this.status=t,this.pinBlock=e}toObject(){return{status:this.status,pin_block:this.pinBlock}}}class qt extends Nt{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 p("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 p("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 p("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 p("Invalid cvv2");this._cvv2=t}toObject(){return{number:this.number,exp_month:this.expMonth,exp_year:this.expYear,cvv2:this.cvv2}}}class Et extends Nt{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 p("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 p("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 p("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 p("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 p("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 p("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 Pt extends Nt{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(q(t).getTime()<=q(Date.now()).getTime())throw new p("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 Dt extends Nt{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 Mt extends Nt{constructor(t){super(),this.pwd=t}get password(){return this._password}set pwd(t){if([!!t,6===t.length,/^\d{6}$/.test(t)].some((t=>!t)))throw new p("Invalid password");this._password=t}toObject(){return{password:this.password}}}class Bt extends Nt{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([6===t.length,/^\d{6}$/.test(t)].some((t=>!t)))throw new p("Invalid password");this._password=t}set req(t){if(t.password&&null!=t.isActive)throw new p("Only one property can be updated at a time");this._request=t}toObject(){return{password:this.request.password,is_active:this.request.isActive}}}class Vt extends Nt{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 p("Invalid password");this._password=t}toObject(){return{password:this.password,user_id:this.userId}}}class Rt extends Nt{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 Yt extends(gt(At).with(Ot,kt,Ut,xt,It)){constructor(t){super("api_keys",M,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 St(s,e);return await this._update(t,i.toCleanObject())}}gt(At).with(Ot);class Ht extends(gt(At).with(Ut,xt)){constructor(t){super("balance_entries",Y,t)}async relatedTransaction(t){const e=jt(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return ft(`${e}`,s)}async fundingInstrument(t){const e=jt(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return ft(`${e}`,s)}}class Lt extends(gt(At).with(Ut,xt)){constructor(t){super("bill_payments",H,t)}async serviceProvider(t){const e=jt(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return ft(`${e}`,s)}}class Ft extends(gt(At).with(Ot)){constructor(t){super("card_activations",Object,t)}async create({number:t,expMonth:e,expYear:s,cvv2:i}){const r=new qt(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 rt.fromObject(e)}}class Xt extends(gt(At).with(Ot,kt,Ut,xt,It)){constructor(t){super("cards",F,t)}async create(t,e,s){const i=new $t(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 Kt(e,s);return await this._update(t,i.toCleanObject())}}class zt extends(gt(At).with(Ut,xt)){constructor(t){super("card_transactions",L,t)}async relatedCard(t){const e=jt(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return ft(`${e}`,s)}}class Qt extends(gt(At).with(Ot)){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 Et({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 rt.fromObject(e)}}class Jt extends(gt(At).with(Ut,xt)){constructor(t){super("commissions",P,t)}async relatedTransaction(t){const e=jt(t);if(null==e)return null;const s=await this.client.get(t);return ft(`${e}`,s)}}class Wt extends(gt(At).with(Ut,xt)){constructor(t){super("deposits",V,t)}async source(t){const e=await this.client.get({endpoint:t});return G.fromObject(e)}}class Gt extends(gt(At).with(Ot)){constructor(t){super("login_tokens",Object,t)}async create(){return await this._create()}}class Zt extends(gt(At).with(Ot,kt,Ut,xt,It)){constructor(t){super("savings",z,t)}async create(t,e,s,i){const r=new Pt(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 Pt(e,s,i,r);return await this._update(t,a.toObject())}}class te extends(gt(At).with(Ut,xt)){constructor(t){super("service_providers",P,t)}}class ee extends(gt(At).with(Tt,Ut)){constructor(t){super("statements",Q,t)}async pdf(t){return await this._download(t,k.Pdf)}async xml(t){return await this._download(t,k.Xml)}}class se extends(gt(At).with(Ot,Ut,xt)){constructor(t){super("transfers",R,t)}async destination(t){const e=await this.client.get({endpoint:t});return G.fromObject(e)}async create({accountNumber:t,amount:e,descriptor:s,recipientName:i,idempotencyKey:r}){const a=r||this.constructor._genIdempotencyKey(t,e),n=new Dt(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 Dt(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]=q(Date.now()).toISOString().split("T");return`${s}:${t}:${e}`}}class ie extends(gt(At).with(Ot,It)){constructor(t){super("user_credentials",Object,t)}async create(t){const e=new Mt(t);return await this._create(e.toObject())}async update({isActive:t,password:e,userId:s="me"}){const i=new Bt(e,t);return await this._update(s,i.toCleanObject())}}class re extends(gt(At).with(Ot,kt)){constructor(t){super("user_logins",Object,t),this.loginIdInHeaders=null}async create(t,e){const s=new Vt(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 ae extends(gt(At).with(Ot,Ut,xt)){constructor(t){super("wallet_transactions",X,t)}async create(t,e,s){const i=new Rt(t,e,s);return await this._create(i.toObject())}async realtedWallet(t){const e=jt(t);if(null==e)return null;const s=await this.client.get(t);return ft(`${e}`,s)}}class ne extends(gt(At).with(Ut,xt)){constructor(t){super("whatsapp_transfers",P,t)}async accountDestination(t){const e=jt(t);if(null==e)return null;const s=await this.client.get(t);return ft(`${e}`,s)}}t.Cuenca=class{constructor(t,e,s=T.Sandbox){this.client=new W({apiKey:t,apiSecret:e,phase:s}),this.withClient(this.client)}withClient(t){this.accounts=new Ct(t),this.apiKeys=new Yt(t),this.balanceEntries=new Ht(t),this.billPayments=new Lt(t),this.cardActivations=new Ft(t),this.cards=new Xt(t),this.cardTransactions=new zt(t),this.cardValidations=new Qt(t),this.commissions=new Jt(t),this.deposits=new Wt(t),this.loginTokens=new Gt(t),this.savings=new Zt(t),this.serviceProviders=new te(t),this.statements=new ee(t),this.transfers=new se(t),this.userCredentials=new ie(t),this.userLogins=new re(t),this.walletTransactions=new ae(t),this.whatsAppTransfers=new ne(t)}}}));
|
|
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 p extends Error{constructor(t){super(t),Object.setPrototypeOf(this,p.prototype)}}const l="undefined"!=typeof window&&void 0!==window.document,m="undefined"!=typeof process&&"[object process]"===Object.prototype.toString.call(process),w=l,_=m;class v{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=v.getExpirationDate(i);return new v(r,i)}}class b{static Blocked=new b("blocked");static Comunication=new b("comunication");static ContactlesAmountLimit=new b("contactles_amount_limit");static FraudDetection=new b("fraud_detection");static FraudDetectionUncertain=new b("fraud_detection_uncertain");static InsufficientFounds=new b("insufficient_founds");static InvalidPin=new b("invalid_pin");static Notification=new b("notification");static NotificationDeactivatedCard=new b("notification_deactivated_card");constructor(t){this.value=t}}class y{static Credit=new y("credit");static Debit=new y("debit");constructor(t){this.value=t}}class f{static Accendo=new f("accendo");static Cuenca=new f("cuenca");constructor(t){this.value=t}}class g{static Active=new g("active");static Blocked=new g("blocked");static Created=new g("created");static Deactivated=new g("deactivated");static Printing=new g("printing");constructor(t){this.value=t}}class O{static Auth=new O("auth");static Capture=new O("capture");static Chargeback=new O("chargeback");static Expiration=new O("expiration");static Refund=new O("refund");static Void=new O("void");constructor(t){this.value=t}}class j{static Physical=new j("physical");static Virtual=new j("virtual");constructor(t){this.value=t}}class A{static CardRequest=new A("card_request");static CashDeposit=new A("cash_deposit");static OutgoingSpei=new A("outgoing_spei");constructor(t){this.value=t}}class x{static Cash=new x("cash");static Internal=new x("internal");static Spei=new x("spei");constructor(t){this.value=t}}class I{static Credit=new I("credit");static Debit=new I("debit");constructor(t){this.value=t}}class k{static Pdf=new k("pdf");static Xml=new k("xml");static Json=new k("json");constructor(t){this.value=t}}class T{static Sandbox=new T("sandbox");static Stage=new T("stage");static Api=new T("api");constructor(t){this.value=t}}class U{static Cable=new U("cable");static CreditCard=new U("credit_card");static Electricity=new U("electricity");static Gas=new U("gas");static Internet=new U("internet");static LandlineTelephone=new U("landline_telephone");static MobileTelephonePostpaid=new U("mobile_telephone_postpaid");static MobileTelephonePrepaid=new U("mobile_telephone_prepaid");static SateliteTelevision=new U("satelite_television");static Water=new U("water");constructor(t){this.value=t}}class C{static General=new C("general");static Home=new C("home");static Vehicle=new C("vehicle");static Travel=new C("travel");static Clothing=new C("clothing");static Other=new C("other");static Medical=new C("medical");static Accident=new C("accident");static Education=new C("education");constructor(t){this.value=t}}class N{static NotSet=new N("not_set");static Terminal=new N("terminal");static Manual=new N("manual");static Unknown=new N("unknown");static Contactless=new N("contactless");static FallBack=new N("fall_back");static MagneticStripe=new N("magnetic_stripe");static RecurringCharge=new N("recurring_charge");constructor(t){this.value=t}}class S{static Created=new S("created");static Failed=new S("failed");static InReview=new S("in_review");static Submitted=new S("submitted");static Succeeded=new S("succeeded");constructor(t){this.value=t}}class ${static Internal=new $("internal");static Spei=new $("spei");constructor(t){this.value=t}}class K{static Active=new K("active");static Deactivated=new K("deactivated");static fraud=new K("fraud");static pld_blocked=new K("pld_blocked");constructor(t){this.value=t}}class E{static Deposit=new E("deposit");static Withdrawal=new E("withdrawal");constructor(t){this.value=t}}const P=t=>{if(!t)return null;const e=new Date(t);return new Date(e.getTime())},q=(t,e)=>Object.values(t).find((t=>t.value===e));class D{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 M extends D{constructor({accountNumber:t,...e}){super(e),this.accountNumber=t}toObject(){return Object.assign(super.toObject(),{account_number:this.accountNumber})}}class B extends D{constructor({active:t,...e}){super(e),this.active=t}toObject(){return Object.assign(super.toObject(),{active:this.active})}}class V extends D{constructor({status:t,...e}){super(e),this.status=t}toObject(){return Object.assign(super.toObject(),{status:this.status})}}class R extends V{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 Y extends V{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 H extends D{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 L extends D{constructor({accountNumber:t,...e}){super(e),this.accountNumber=t}toObject(){return Object.assign(super.toObject(),{account_number:this.accountNumber})}}class F extends D{constructor({cardUri:t,...e}){super(e),this.cardUri=t}toObject(){return Object.assign(super.toObject(),{card_uri:this.cardUri})}}class z extends D{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 Q extends D{constructor({walletUri:t,...e}){super(e),this.walletUri=t}toObject(){return Object.assign(super.toObject(),{wallet_uri:this.walletUri})}}class X extends D{constructor({phoneNumber:t,emailAddress:e,status:s,...i}){super(i),this.phoneNumber=t,this.emailAddress=e,this.status=s}toObject(){return Object.assign(super.toObject(),{phone_number:this.phoneNumber,email_address:this.emailAddress,status:this.status})}}class J extends D{constructor({active:t,...e}){super(e),this.active=t}toObject(){return Object.assign(super.toObject(),{active:this.active})}}class W extends D{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=P(Date.now());s.setUTCDate(1);if(P(`${e}-${t}-01`).getTime()>=s.getTime())throw new p(`${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 G{constructor({ip:t,location:e,version:s}){this.ip=t,this.location=e,this.version=s}static fromObject=({ip:t,location:e,version:s})=>new G({ip:t,location:e,version:s})}var Z="0.0.1-dev.24";class tt{constructor({apiKey:t,apiSecret:e,phase:s=T.Sandbox}={}){this.phase=s,this.basicAuth={apiKey:t,apiSecret:e},this.jwtToken=null,this._session=r.default.create()}get session(){return this._session}get origin(){return`https://${this.phase.value}.cuenca.com`}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,useJwt:r=!1}){this.basicAuth={apiKey:t||this.basicAuth.apiKey,apiSecret:e||this.basicAuth.apiSecret},i&&(this.phase=i),r&&(this.jwtToken=await v.create(this)),s&&this.addHeadersToRequest({"X-Cuenca-LoginToken":s})}async get({endpoint:t,format:e,params:s}){return this.request({endpoint:t,format:e,params:s})}async post({endpoint:t,data:e}){return this.request({method:"POST",endpoint:t,data:e})}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=k.Json,method:i="GET",params:r=null}){const a={Authorization:this.authHeader,"Content-Type":"application/json",Accept:`application/${s.value}`};_?a["User-Agent"]=`cuenca-js/${Z}`:w&&(a["X-User-Agent"]=`cuenca-js/${Z}`),this.jwtToken&&(this.jwtToken.isExpired&&(this.jwtToken=await v.create(this)),a["X-Cuenca-Token"]=this.jwtToken.token);const o=this.addHeadersToRequest(a),d=e;d&&Object.keys(d).forEach((t=>{d[t]instanceof Date&&(d[t]=d[t].toISOString())}));const u=this.addConfigToRequest({method:i,params:r,data:d,url:t});let h;try{h=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{o.eject(),u.eject()}return h.data}}class et{constructor({accountNumber:t,createdAt:e,id:s,institutionName:i,name:r,userId:a}){this.accountNumber=t,this.createdAt=P(e),this.id=s,this.institutionName=i,this.name=r,this.userId=a}static fromObject=({id:t,name:e,...s})=>new et({id:t,name:e,accountNumber:s.account_number,createdAt:s.created_at,institutionName:s.institution_name,userId:s.user_id})}class st{constructor({createdAt:t,deactivatedAt:e,id:s,secret:i,userId:r,updatedAt:a}){this.createdAt=P(t),this.deactivatedAt=P(e),this.id=s,this.secret=i,this.userId=r,this.updatedAt=P(a)}static fromObject=({id:t,secret:e,...s})=>new st({id:t,secret:e,createdAt:s.created_at,deactivatedAt:s.deactivated_at,userId:s.user_id,updatedAt:s.updated_at});get isActive(){const t=P(Date.now());return!this.deactivatedAt||this.deactivatedAt.getTime()>t.getTime()}}class it{constructor({arpc:t,createdAt:e,cardUri:s,isValidArqc:i}){this.arpc=t,this.createdAt=P(e),this.cardUri=s,this.isValidArqc=i}static fromObject=({arpc:t,...e})=>new it({arpc:t,createdAt:e.created_at,cardUri:e.card_uri,isValidArqc:e.is_valid_arqc})}class rt{constructor({amount:t,createdAt:e,descriptor:s,entryType:i,fundingInstrumentUri:r,id:a,name:n,relatedTransactionUri:c,rollingBalance:o}){this.amount=t,this.createdAt=P(e),this.descriptor=s,this.entryType=q(I,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 rt({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 at{constructor({amount:t,createdAt:e,descriptor:s,status:i,userId:r}){this.amount=t,this.createdAt=P(e),this.descriptor=s,this.status=q(S,i),this.userId=r}}class nt extends at{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 nt({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 ct{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:p}){this.createdAt=P(t),this.cvv2=e,this.expMonth=s,this.expYear=i,this.fundingType=q(y,r),this.id=a,this.issuer=q(f,n),this.number=c,this.pin=o,this.status=q(g,d),this.type=q(j,u),this.updatedAt=P(h),this.userId=p}static fromObject=({cvv2:t,id:e,issuer:s,number:i,pin:r,status:a,type:n,...c})=>new ct({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 ot{constructor({cardUri:t,createdAt:e,id:s,ipAddress:i,success:r,userId:a}){this.cardUri=t,this.createdAt=P(e),this.id=s,this.ipAddress=i,this.success=r,this.userId=a}static fromObject=({id:t,success:e,...s})=>new ot({id:t,success:e,cardUri:s.card_uri,createdAt:s.created_at,ipAddress:s.ip_address,userId:s.user_id})}class dt extends at{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:p}){super({amount:t,createdAt:a,descriptor:n,status:u,userId:p}),this.cardErrorType=q(b,e),this.cardLastFour=s,this.cardType=q(j,i),this.cardUri=r,this.metadata=c,this.network=o,this.relatedCardTransactionsUris=d,this.type=q(O,h)}static fromObject=({amount:t,descriptor:e,metadata:s,network:i,status:r,type:a,...n})=>new dt({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 ut{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=q(g,t),this.cardType=q(j,e),this.cardUri=s,this.createdAt=P(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 ut({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===g.Active}}class ht extends at{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=q(A,a)}static fromObject=({amount:t,descriptor:e,status:s,type:i,...r})=>new ht({amount:t,descriptor:e,status:s,type:i,createdAt:r.created_at,relatedTransactionUri:r.related_transaction_uri,userId:r.user_id})}class pt extends at{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=q(x,r),this.sourceUri=n,this.trackingKey=c}static fromObject=({amount:t,descriptor:e,id:s,network:i,status:r,...a})=>new pt({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 lt{constructor({id:t}){this.id=t}static fromObject=({id:t})=>new lt({id:t})}class mt extends class{constructor({balance:t,createdAt:e,deactivatedAt:s,id:i,userId:r,updatedAt:a}){this.balance=t,this.createdAt=P(e),this.deactivatedAt=P(s),this.id=i,this.userId=r,this.updatedAt=P(a)}}{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=q(C,e),this.goalAmount=r,this.goalDate=P(a),this.name=c}static fromObject=({balance:t,category:e,id:s,name:i,...r})=>new mt({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=>q(U,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 _t{constructor({createdAt:t,id:e,month:s,year:i}){this.createdAt=P(t),this.id=e,this.month=s,this.year=i}static fromObject=({id:t,month:e,year:s,...i})=>new _t({id:t,month:e,year:s,createdAt:i.created_at})}class vt extends at{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:p}){super({amount:e,createdAt:s,descriptor:i,status:d,userId:p}),this.accountNumber=t,this.destinationUri=r,this.id=a,this.idempotencyKey=n,this.network=q($,c),this.recipientName=o,this.trackingKey=u,this.updatedAt=P(h)}static fromObject=({amount:t,descriptor:e,id:s,network:i,status:r,...a})=>new vt({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 bt{constructor({emailAddress:t,phoneNumber:e,status:s,termsOfService:i,verificationId:r}){this.emailAddress=t,this.phoneNumber=e,this.status=q(K,s),this.termsOfService=G.fromObject(i),this.verificationId=r}static fromObject=({...t})=>new bt({emailAddress:t.email_address,phoneNumber:t.phone_number,status:t.status,termsOfService:t.terms_of_service,verificationId:t.verification_id})}class yt{constructor({createdAt:t,id:e,isActive:s,updatedAt:i}){this.createdAt=P(t),this.id=e,this.isActive=s,this.updatedAt=P(i)}static fromObject=({id:t,...e})=>new yt({id:t,createdAt:e.created_at,isActive:e.is_active,updatedAt:e.updated_at})}class ft{constructor({id:t,lastLoginAt:e,success:s}){this.id=t,this.lastLoginAt=P(e),this.success=s}static fromObject=({id:t,success:e,...s})=>new ft({id:t,success:e,lastLoginAt:s.last_login_at})}class gt extends at{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=q(E,a),this.walletUri=c}static fromObject=({amount:t,descriptor:e,id:s,status:i,...r})=>new gt({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 Ot extends at{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:p,userId:l}){super({amount:t,createdAt:s,descriptor:i,status:u,userId:l}),this.claimUrl=e,this.destinationUri=r,this.id=n,this.expiresAt=P(a),this.network=q($,c),this.phoneNumber=o,this.recipientName=d,this.trackingKey=h,this.updatedAt=P(p)}static fromObject=({amount:t,descriptor:e,id:s,network:i,status:r,...a})=>new Ot({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 jt{constructor(t){this.superclass=t}with(...t){return t.reduce(((t,e)=>e(t)),this.superclass)}}const At=t=>new jt(t),xt=(t,e)=>({accounts:()=>et.fromObject(e),api_keys:()=>st.fromObject(e),arpc:()=>it.fromObject(e),balance_entries:()=>rt.fromObject(e),bill_payments:()=>nt.fromObject(e),cards:()=>ct.fromObject(e),card_activations:()=>ot.fromObject(e),card_transactions:()=>dt.fromObject(e),card_validations:()=>ut.fromObject(e),commissions:()=>ht.fromObject(e),deposits:()=>pt.fromObject(e),login_tokens:()=>lt.fromObject(e),savings:()=>mt.fromObject(e),service_providers:()=>wt.fromObject(e),statements:()=>_t.fromObject(e),transfers:()=>vt.fromObject(e),users:()=>bt.fromObject(e),user_credentials:()=>yt.fromObject(e),user_logins:()=>ft.fromObject(e),wallet_transactions:()=>gt.fromObject(e),whatsapp_transfers:()=>Ot.fromObject(e)}[t]()),It=t=>{if(null===t||""===t)return null;const e=t.match("/(.*?)/");return null===e?null:e[0].replaceAll("/","")};class kt{constructor(t,e,s){this.path=t,this.QueryParams=e,this.client=s}}const Tt=t=>class extends t{async retrieve(t){const e=await this.client.get({endpoint:`/${this.path}/${t}`});return xt(this.path,e)}},Ut=t=>class extends t{async _create(t){const e=await this.client.post({endpoint:`/${this.path}`,data:t});return xt(this.path,e)}},Ct=t=>class extends t{async _update(t,e){const s=await this.client.patch({endpoint:`/${this.path}/${t}`,data:e});return xt(this.path,s)}},Nt=t=>class extends t{async _deactivate(t,e){const s=await this.client.delete({endpoint:`/${this.path}/${t}`,data:e});return xt(this.path,s)}},St=t=>class extends t{async _download(t,e){return await this.client.get({endpoint:`/${this.path}/${t}`,format:e})}},$t=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 xt(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 xt(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=xt(this.path,e);yield t}e=t.next_page_uri}}};class Kt extends(At(kt).with($t,Tt)){constructor(t){super("accounts",M,t)}}class Et{toObject(){return{}}toCleanObject(){const t=this.toObject();return Object.keys(t).forEach((e=>{null==t[e]&&delete t[e]})),t}}class Pt extends Et{constructor(t,e){super(),this.userId=t,this.metadata=e}toObject(){return{user_id:this.userId,metadata:this.metadata}}}class qt extends Et{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 Dt extends Et{constructor(t,e){super(),this.status=t,this.pinBlock=e}toObject(){return{status:this.status,pin_block:this.pinBlock}}}class Mt extends Et{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 p("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 p("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 p("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 p("Invalid cvv2");this._cvv2=t}toObject(){return{number:this.number,exp_month:this.expMonth,exp_year:this.expYear,cvv2:this.cvv2}}}class Bt extends Et{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 p("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 p("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 p("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 p("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 p("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 p("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 Vt extends Et{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(P(t).getTime()<=P(Date.now()).getTime())throw new p("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 Rt extends Et{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 p("missing ip address");if(!t.split(".").every((t=>t>=0&&t<=255)))throw new p("Invalid ip address");this._ip=t}toObject(){return{ip:this.ip,location:this.location,type:this.type,version:this.version}}}class Yt extends Et{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 Ht extends Et{constructor(t){super(),this.pwd=t}get password(){return this._password}set pwd(t){if([!!t,6===t.length,/^\d{6}$/.test(t)].some((t=>!t)))throw new p("Invalid password");this._password=t}toObject(){return{password:this.password}}}class Lt extends Et{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([6===t.length,/^\d{6}$/.test(t)].some((t=>!t)))throw new p("Invalid password");this._password=t}set req(t){if(t.password&&null!=t.isActive)throw new p("Only one property can be updated at a time");this._request=t}toObject(){return{password:this.request.password,is_active:this.request.isActive}}}class Ft extends Et{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 p("Invalid password");this._password=t}toObject(){return{password:this.password,user_id:this.userId}}}class zt extends Et{constructor({termsOfService:t,verificationId:e}){super(),this.termsOfService=new Rt(t).toObject(),this.verificationId=e}toObject(){return{terms_of_service:this.termsOfService,verification_id:this.verificationId}}}class Qt extends Et{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 Xt extends(At(kt).with(Ut,Nt,$t,Tt,Ct)){constructor(t){super("api_keys",B,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 Pt(s,e);return await this._update(t,i.toCleanObject())}}At(kt).with(Ut);class Jt extends(At(kt).with($t,Tt)){constructor(t){super("balance_entries",H,t)}async relatedTransaction(t){const e=It(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return xt(`${e}`,s)}async fundingInstrument(t){const e=It(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return xt(`${e}`,s)}}class Wt extends(At(kt).with($t,Tt)){constructor(t){super("bill_payments",L,t)}async serviceProvider(t){const e=It(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return xt(`${e}`,s)}}class Gt extends(At(kt).with(Ut)){constructor(t){super("card_activations",Object,t)}async create({number:t,expMonth:e,expYear:s,cvv2:i}){const r=new Mt(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 ct.fromObject(e)}}class Zt extends(At(kt).with(Ut,Nt,$t,Tt,Ct)){constructor(t){super("cards",z,t)}async create(t,e,s){const i=new qt(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 Dt(e,s);return await this._update(t,i.toCleanObject())}}class te extends(At(kt).with($t,Tt)){constructor(t){super("card_transactions",F,t)}async relatedCard(t){const e=It(t);if(null==e)return null;const s=await this.client.get({endpoint:t});return xt(`${e}`,s)}}class ee extends(At(kt).with(Ut)){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 Bt({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 ct.fromObject(e)}}class se extends(At(kt).with($t,Tt)){constructor(t){super("commissions",D,t)}async relatedTransaction(t){const e=It(t);if(null==e)return null;const s=await this.client.get(t);return xt(`${e}`,s)}}class ie extends(At(kt).with($t,Tt)){constructor(t){super("deposits",R,t)}async source(t){const e=await this.client.get({endpoint:t});return et.fromObject(e)}}class re extends(At(kt).with(Ut)){constructor(t){super("login_tokens",Object,t)}async create(){return await this._create()}}class ae extends(At(kt).with(Ut,Nt,$t,Tt,Ct)){constructor(t){super("savings",J,t)}async create(t,e,s,i){const r=new Vt(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 Vt(e,s,i,r);return await this._update(t,a.toObject())}}class ne extends(At(kt).with($t,Tt)){constructor(t){super("service_providers",D,t)}}class ce extends(At(kt).with(St,$t)){constructor(t){super("statements",W,t)}async pdf(t){return await this._download(t,k.Pdf)}async xml(t){return await this._download(t,k.Xml)}}class oe extends(At(kt).with(Ut,$t,Tt)){constructor(t){super("transfers",Y,t)}async destination(t){const e=await this.client.get({endpoint:t});return et.fromObject(e)}async create({accountNumber:t,amount:e,descriptor:s,recipientName:i,idempotencyKey:r}){const a=r||this.constructor._genIdempotencyKey(t,e),n=new Yt(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 Yt(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]=P(Date.now()).toISOString().split("T");return`${s}:${t}:${e}`}}class de extends(At(kt).with(Ut,Ct)){constructor(t){super("user_credentials",Object,t)}async create(t){const e=new Ht(t);return await this._create(e.toObject())}async update({isActive:t,password:e,userId:s="me"}){const i=new Lt(e,t);return await this._update(s,i.toCleanObject())}}class ue extends(At(kt).with(Ut,Nt)){constructor(t){super("user_logins",Object,t),this.loginIdInHeaders=null}async create(t,e){const s=new Ft(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 he extends(At(kt).with($t,Ct)){constructor(t){super("users",X,t)}async update({termsOfService:t,userId:e="me",verificationId:s}){const i=new zt({termsOfService:t,verificationId:s});return await this._update(e,i.toCleanObject())}}class pe extends(At(kt).with(Ut,$t,Tt)){constructor(t){super("wallet_transactions",Q,t)}async create(t,e,s){const i=new Qt(t,e,s);return await this._create(i.toObject())}async realtedWallet(t){const e=It(t);if(null==e)return null;const s=await this.client.get(t);return xt(`${e}`,s)}}class le extends(At(kt).with($t,Tt)){constructor(t){super("whatsapp_transfers",D,t)}async accountDestination(t){const e=It(t);if(null==e)return null;const s=await this.client.get(t);return xt(`${e}`,s)}}t.Cuenca=class{constructor(t,e,s=T.Sandbox){this.client=new tt({apiKey:t,apiSecret:e,phase:s}),this.withClient(this.client)}withClient(t){this.accounts=new Kt(t),this.apiKeys=new Xt(t),this.balanceEntries=new Jt(t),this.billPayments=new Wt(t),this.cardActivations=new Gt(t),this.cards=new Zt(t),this.cardTransactions=new te(t),this.cardValidations=new ee(t),this.commissions=new se(t),this.deposits=new ie(t),this.loginTokens=new re(t),this.savings=new ae(t),this.serviceProviders=new ne(t),this.statements=new ce(t),this.transfers=new oe(t),this.users=new he(t),this.userCredentials=new de(t),this.userLogins=new ue(t),this.walletTransactions=new pe(t),this.whatsAppTransfers=new le(t)}}}));
|
package/build/{walletTransactionRequest-f549e991.cjs → walletTransactionRequest-507c5996.cjs}
RENAMED
|
@@ -342,6 +342,43 @@ class SavingRequest extends BaseRequest {
|
|
|
342
342
|
}
|
|
343
343
|
}
|
|
344
344
|
|
|
345
|
+
class TosUpdateRequest extends BaseRequest {
|
|
346
|
+
constructor({ ip, location, type, version }) {
|
|
347
|
+
super();
|
|
348
|
+
this.ipAddress = ip;
|
|
349
|
+
this.location = location;
|
|
350
|
+
this.type = type;
|
|
351
|
+
this.version = version;
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
get ip() {
|
|
355
|
+
return this._ip;
|
|
356
|
+
}
|
|
357
|
+
|
|
358
|
+
set ipAddress(value) {
|
|
359
|
+
if (!value) throw new errors_index.ValidationError('missing ip address');
|
|
360
|
+
const ipBlocks = value.split('.');
|
|
361
|
+
if (
|
|
362
|
+
ipBlocks.every((block) => {
|
|
363
|
+
return block >= 0 && block <= 255;
|
|
364
|
+
})
|
|
365
|
+
) {
|
|
366
|
+
this._ip = value;
|
|
367
|
+
} else {
|
|
368
|
+
throw new errors_index.ValidationError('Invalid ip address');
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
toObject() {
|
|
373
|
+
return {
|
|
374
|
+
ip: this.ip,
|
|
375
|
+
location: this.location,
|
|
376
|
+
type: this.type,
|
|
377
|
+
version: this.version,
|
|
378
|
+
};
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
|
|
345
382
|
class TransferRequest extends BaseRequest {
|
|
346
383
|
constructor(
|
|
347
384
|
accountNumber,
|
|
@@ -467,6 +504,21 @@ class UserLoginRequest extends BaseRequest {
|
|
|
467
504
|
}
|
|
468
505
|
}
|
|
469
506
|
|
|
507
|
+
class UserUpdateRequest extends BaseRequest {
|
|
508
|
+
constructor({ termsOfService, verificationId }) {
|
|
509
|
+
super();
|
|
510
|
+
this.termsOfService = new TosUpdateRequest(termsOfService).toObject();
|
|
511
|
+
this.verificationId = verificationId;
|
|
512
|
+
}
|
|
513
|
+
|
|
514
|
+
toObject() {
|
|
515
|
+
return {
|
|
516
|
+
terms_of_service: this.termsOfService,
|
|
517
|
+
verification_id: this.verificationId,
|
|
518
|
+
};
|
|
519
|
+
}
|
|
520
|
+
}
|
|
521
|
+
|
|
470
522
|
class WalletTransactionRequest extends BaseRequest {
|
|
471
523
|
constructor(amount, transactionType, walletUri) {
|
|
472
524
|
super();
|
|
@@ -491,8 +543,10 @@ exports.CardRequest = CardRequest;
|
|
|
491
543
|
exports.CardUpdateRequest = CardUpdateRequest;
|
|
492
544
|
exports.CardValidationRequest = CardValidationRequest;
|
|
493
545
|
exports.SavingRequest = SavingRequest;
|
|
546
|
+
exports.TosUpdateRequest = TosUpdateRequest;
|
|
494
547
|
exports.TransferRequest = TransferRequest;
|
|
495
548
|
exports.UserCredentialRequest = UserCredentialRequest;
|
|
496
549
|
exports.UserCredentialUpdateRequest = UserCredentialUpdateRequest;
|
|
497
550
|
exports.UserLoginRequest = UserLoginRequest;
|
|
551
|
+
exports.UserUpdateRequest = UserUpdateRequest;
|
|
498
552
|
exports.WalletTransactionRequest = WalletTransactionRequest;
|
package/build/{walletTransactionRequest-60d3cf69.mjs → walletTransactionRequest-ede62457.mjs}
RENAMED
|
@@ -340,6 +340,43 @@ class SavingRequest extends BaseRequest {
|
|
|
340
340
|
}
|
|
341
341
|
}
|
|
342
342
|
|
|
343
|
+
class TosUpdateRequest extends BaseRequest {
|
|
344
|
+
constructor({ ip, location, type, version }) {
|
|
345
|
+
super();
|
|
346
|
+
this.ipAddress = ip;
|
|
347
|
+
this.location = location;
|
|
348
|
+
this.type = type;
|
|
349
|
+
this.version = version;
|
|
350
|
+
}
|
|
351
|
+
|
|
352
|
+
get ip() {
|
|
353
|
+
return this._ip;
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
set ipAddress(value) {
|
|
357
|
+
if (!value) throw new ValidationError('missing ip address');
|
|
358
|
+
const ipBlocks = value.split('.');
|
|
359
|
+
if (
|
|
360
|
+
ipBlocks.every((block) => {
|
|
361
|
+
return block >= 0 && block <= 255;
|
|
362
|
+
})
|
|
363
|
+
) {
|
|
364
|
+
this._ip = value;
|
|
365
|
+
} else {
|
|
366
|
+
throw new ValidationError('Invalid ip address');
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
|
|
370
|
+
toObject() {
|
|
371
|
+
return {
|
|
372
|
+
ip: this.ip,
|
|
373
|
+
location: this.location,
|
|
374
|
+
type: this.type,
|
|
375
|
+
version: this.version,
|
|
376
|
+
};
|
|
377
|
+
}
|
|
378
|
+
}
|
|
379
|
+
|
|
343
380
|
class TransferRequest extends BaseRequest {
|
|
344
381
|
constructor(
|
|
345
382
|
accountNumber,
|
|
@@ -465,6 +502,21 @@ class UserLoginRequest extends BaseRequest {
|
|
|
465
502
|
}
|
|
466
503
|
}
|
|
467
504
|
|
|
505
|
+
class UserUpdateRequest extends BaseRequest {
|
|
506
|
+
constructor({ termsOfService, verificationId }) {
|
|
507
|
+
super();
|
|
508
|
+
this.termsOfService = new TosUpdateRequest(termsOfService).toObject();
|
|
509
|
+
this.verificationId = verificationId;
|
|
510
|
+
}
|
|
511
|
+
|
|
512
|
+
toObject() {
|
|
513
|
+
return {
|
|
514
|
+
terms_of_service: this.termsOfService,
|
|
515
|
+
verification_id: this.verificationId,
|
|
516
|
+
};
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
|
|
468
520
|
class WalletTransactionRequest extends BaseRequest {
|
|
469
521
|
constructor(amount, transactionType, walletUri) {
|
|
470
522
|
super();
|
|
@@ -482,4 +534,4 @@ class WalletTransactionRequest extends BaseRequest {
|
|
|
482
534
|
}
|
|
483
535
|
}
|
|
484
536
|
|
|
485
|
-
export { ApiKeyUpdateRequest as A, CardActivationRequest as C, SavingRequest as S, TransferRequest as T, UserCredentialRequest as U, WalletTransactionRequest as W, ArpcRequest as a, CardRequest as b, CardUpdateRequest as c, CardValidationRequest as d, UserCredentialUpdateRequest as e, UserLoginRequest as f };
|
|
537
|
+
export { ApiKeyUpdateRequest as A, CardActivationRequest as C, SavingRequest as S, TransferRequest as T, UserCredentialRequest as U, WalletTransactionRequest as W, ArpcRequest as a, CardRequest as b, CardUpdateRequest as c, CardValidationRequest as d, UserCredentialUpdateRequest as e, UserLoginRequest as f, UserUpdateRequest as g, TosUpdateRequest as h };
|