@heliofi/common 0.2.335-alpha.1790696201 → 0.2.336
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/dist/src/domain/constants/environment.d.ts +1 -2
- package/dist/src/domain/constants/environment.js +0 -1
- package/dist/src/domain/constants/environment.js.map +1 -1
- package/dist/src/domain/model/withdraw/dtos/giftCardIntent.dto.d.ts +6 -0
- package/dist/src/domain/model/withdraw/dtos/giftCardIntent.dto.js +35 -0
- package/dist/src/domain/model/withdraw/dtos/giftCardIntent.dto.js.map +1 -0
- package/dist/src/domain/model/withdraw/dtos/index.d.ts +1 -0
- package/dist/src/domain/model/withdraw/dtos/index.js +1 -0
- package/dist/src/domain/model/withdraw/dtos/index.js.map +1 -1
- package/dist/src/domain/model/withdraw/dtos/preparedWithdrawal.dto.d.ts +3 -1
- package/dist/src/domain/model/withdraw/dtos/preparedWithdrawal.dto.js +9 -0
- package/dist/src/domain/model/withdraw/dtos/preparedWithdrawal.dto.js.map +1 -1
- package/dist/src/domain/model/withdraw/dtos/preparedWithdrawal.dto.spec.js +37 -0
- package/dist/src/domain/model/withdraw/dtos/preparedWithdrawal.dto.spec.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environment.js","sourceRoot":"","sources":["../../../../src/domain/constants/environment.ts"],"names":[],"mappings":";;;AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"environment.js","sourceRoot":"","sources":["../../../../src/domain/constants/environment.ts"],"names":[],"mappings":";;;AAAA,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,0BAAW,CAAA;IACX,4BAAa,CAAA;IACb,4BAAa,CAAA;AACf,CAAC,EAJW,WAAW,2BAAX,WAAW,QAItB"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.GiftCardIntentDto = void 0;
|
|
13
|
+
const class_validator_1 = require("class-validator");
|
|
14
|
+
class GiftCardIntentDto {
|
|
15
|
+
}
|
|
16
|
+
exports.GiftCardIntentDto = GiftCardIntentDto;
|
|
17
|
+
__decorate([
|
|
18
|
+
(0, class_validator_1.Matches)(/^\d+$/),
|
|
19
|
+
__metadata("design:type", String)
|
|
20
|
+
], GiftCardIntentDto.prototype, "amount", void 0);
|
|
21
|
+
__decorate([
|
|
22
|
+
(0, class_validator_1.IsString)(),
|
|
23
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
24
|
+
(0, class_validator_1.MaxLength)(255),
|
|
25
|
+
__metadata("design:type", String)
|
|
26
|
+
], GiftCardIntentDto.prototype, "brandId", void 0);
|
|
27
|
+
__decorate([
|
|
28
|
+
(0, class_validator_1.IsEmail)(),
|
|
29
|
+
__metadata("design:type", String)
|
|
30
|
+
], GiftCardIntentDto.prototype, "email", void 0);
|
|
31
|
+
__decorate([
|
|
32
|
+
(0, class_validator_1.Equals)(true),
|
|
33
|
+
__metadata("design:type", Boolean)
|
|
34
|
+
], GiftCardIntentDto.prototype, "consent", void 0);
|
|
35
|
+
//# sourceMappingURL=giftCardIntent.dto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"giftCardIntent.dto.js","sourceRoot":"","sources":["../../../../../../src/domain/model/withdraw/dtos/giftCardIntent.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAOyB;AAEzB,MAAa,iBAAiB;CAkB7B;AAlBD,8CAkBC;AAdC;IADC,IAAA,yBAAO,EAAC,OAAO,CAAC;;iDACF;AAMf;IAHC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,EAAC,GAAG,CAAC;;kDACC;AAGhB;IADC,IAAA,yBAAO,GAAE;;gDACI;AAId;IADC,IAAA,wBAAM,EAAC,IAAI,CAAC;;kDACC"}
|
|
@@ -16,6 +16,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./baseWithdrawalConfig.dto"), exports);
|
|
18
18
|
__exportStar(require("./createWithdrawalConfig.dto"), exports);
|
|
19
|
+
__exportStar(require("./giftCardIntent.dto"), exports);
|
|
19
20
|
__exportStar(require("./preparedTransaction.dto"), exports);
|
|
20
21
|
__exportStar(require("./preparedWithdrawal.dto"), exports);
|
|
21
22
|
__exportStar(require("./preparedWithdrawalCall.dto"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/domain/model/withdraw/dtos/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA2C;AAC3C,+DAA6C;AAC7C,4DAA0C;AAC1C,2DAAyC;AACzC,+DAA6C;AAC7C,kEAAgD;AAChD,oEAAkD;AAClD,0EAAwD;AACxD,yEAAuD;AACvD,yDAAuC;AACvC,uEAAqD;AACrD,kEAAgD;AAChD,+DAA6C;AAC7C,sEAAoD"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/domain/model/withdraw/dtos/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA2C;AAC3C,+DAA6C;AAC7C,uDAAqC;AACrC,4DAA0C;AAC1C,2DAAyC;AACzC,+DAA6C;AAC7C,kEAAgD;AAChD,oEAAkD;AAClD,0EAAwD;AACxD,yEAAuD;AACvD,yDAAuC;AACvC,uEAAqD;AACrD,kEAAgD;AAChD,+DAA6C;AAC7C,sEAAoD"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
+
import { GiftCardIntentDto } from './giftCardIntent.dto';
|
|
1
2
|
export declare const WITHDRAWAL_DEFAULT_SLIPPAGE_BPS = 200;
|
|
2
3
|
export declare class PreparedWithdrawalDto {
|
|
3
4
|
ownerAddress: string;
|
|
4
5
|
recipient: string;
|
|
5
|
-
amount
|
|
6
|
+
amount?: string;
|
|
6
7
|
toCurrencyId: string;
|
|
7
8
|
sourceCurrencyId: string;
|
|
8
9
|
customerId?: string;
|
|
9
10
|
slippageBps?: number;
|
|
11
|
+
giftCard?: GiftCardIntentDto;
|
|
10
12
|
}
|
|
@@ -11,6 +11,8 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.PreparedWithdrawalDto = exports.WITHDRAWAL_DEFAULT_SLIPPAGE_BPS = void 0;
|
|
13
13
|
const class_validator_1 = require("class-validator");
|
|
14
|
+
const class_transformer_1 = require("class-transformer");
|
|
15
|
+
const giftCardIntent_dto_1 = require("./giftCardIntent.dto");
|
|
14
16
|
exports.WITHDRAWAL_DEFAULT_SLIPPAGE_BPS = 200;
|
|
15
17
|
class PreparedWithdrawalDto {
|
|
16
18
|
constructor() {
|
|
@@ -29,6 +31,7 @@ __decorate([
|
|
|
29
31
|
__metadata("design:type", String)
|
|
30
32
|
], PreparedWithdrawalDto.prototype, "recipient", void 0);
|
|
31
33
|
__decorate([
|
|
34
|
+
(0, class_validator_1.ValidateIf)((dto) => !dto.giftCard),
|
|
32
35
|
(0, class_validator_1.Matches)(/^\d+$/),
|
|
33
36
|
__metadata("design:type", String)
|
|
34
37
|
], PreparedWithdrawalDto.prototype, "amount", void 0);
|
|
@@ -53,4 +56,10 @@ __decorate([
|
|
|
53
56
|
(0, class_validator_1.IsOptional)(),
|
|
54
57
|
__metadata("design:type", Number)
|
|
55
58
|
], PreparedWithdrawalDto.prototype, "slippageBps", void 0);
|
|
59
|
+
__decorate([
|
|
60
|
+
(0, class_validator_1.IsOptional)(),
|
|
61
|
+
(0, class_validator_1.ValidateNested)(),
|
|
62
|
+
(0, class_transformer_1.Type)(() => giftCardIntent_dto_1.GiftCardIntentDto),
|
|
63
|
+
__metadata("design:type", giftCardIntent_dto_1.GiftCardIntentDto)
|
|
64
|
+
], PreparedWithdrawalDto.prototype, "giftCard", void 0);
|
|
56
65
|
//# sourceMappingURL=preparedWithdrawal.dto.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preparedWithdrawal.dto.js","sourceRoot":"","sources":["../../../../../../src/domain/model/withdraw/dtos/preparedWithdrawal.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"preparedWithdrawal.dto.js","sourceRoot":"","sources":["../../../../../../src/domain/model/withdraw/dtos/preparedWithdrawal.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAYyB;AACzB,yDAAyC;AACzC,6DAAyD;AAG5C,QAAA,+BAA+B,GAAG,GAAG,CAAC;AAEnD,MAAa,qBAAqB;IAAlC;QA8CE,gBAAW,GAAY,uCAA+B,CAAC;IAOzD,CAAC;CAAA;AArDD,sDAqDC;AA7CC;IAFC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;2DACQ;AAOrB;IAFC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;wDACK;AAKlB;IAFC,IAAA,4BAAU,EAAC,CAAC,GAA0B,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC;IACzD,IAAA,yBAAO,EAAC,OAAO,CAAC;;qDACD;AAKhB;IADC,IAAA,2BAAS,GAAE;;2DACS;AAMrB;IADC,IAAA,2BAAS,GAAE;;+DACa;AAOzB;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;IACV,IAAA,2BAAS,EAAC,GAAG,CAAC;;yDACK;AAQpB;IAJC,IAAA,uBAAK,GAAE;IACP,IAAA,qBAAG,EAAC,CAAC,CAAC;IACN,IAAA,qBAAG,EAAC,KAAK,CAAC;IACV,IAAA,4BAAU,GAAE;;0DAC0C;AAMvD;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,gCAAc,GAAE;IAChB,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,sCAAiB,CAAC;8BACnB,sCAAiB;uDAAC"}
|
|
@@ -35,5 +35,42 @@ describe('PreparedWithdrawalDto', () => {
|
|
|
35
35
|
const errors = await (0, class_validator_1.validate)(dto);
|
|
36
36
|
expect(errors.find((e) => e.property === 'slippageBps')).toBeDefined();
|
|
37
37
|
});
|
|
38
|
+
const giftCard = {
|
|
39
|
+
amount: '25000000',
|
|
40
|
+
brandId: 'brand-1',
|
|
41
|
+
email: 'a@example.com',
|
|
42
|
+
consent: true,
|
|
43
|
+
};
|
|
44
|
+
it('accepts a gift-card intent with consent', async () => {
|
|
45
|
+
const dto = (0, class_transformer_1.plainToInstance)(preparedWithdrawal_dto_1.PreparedWithdrawalDto, { ...base, giftCard });
|
|
46
|
+
await expect((0, class_validator_1.validate)(dto)).resolves.toHaveLength(0);
|
|
47
|
+
});
|
|
48
|
+
it('accepts a gift-card withdrawal without a top-level amount', async () => {
|
|
49
|
+
const { amount: _, ...withoutAmount } = base;
|
|
50
|
+
const dto = (0, class_transformer_1.plainToInstance)(preparedWithdrawal_dto_1.PreparedWithdrawalDto, {
|
|
51
|
+
...withoutAmount,
|
|
52
|
+
giftCard,
|
|
53
|
+
});
|
|
54
|
+
await expect((0, class_validator_1.validate)(dto)).resolves.toHaveLength(0);
|
|
55
|
+
});
|
|
56
|
+
it('still requires the top-level amount without a gift card', async () => {
|
|
57
|
+
const { amount: _, ...withoutAmount } = base;
|
|
58
|
+
const dto = (0, class_transformer_1.plainToInstance)(preparedWithdrawal_dto_1.PreparedWithdrawalDto, withoutAmount);
|
|
59
|
+
const errors = await (0, class_validator_1.validate)(dto);
|
|
60
|
+
expect(errors.find((e) => e.property === 'amount')).toBeDefined();
|
|
61
|
+
});
|
|
62
|
+
it.each([
|
|
63
|
+
['consent is false', { consent: false }],
|
|
64
|
+
['the email is invalid', { email: 'not-an-email' }],
|
|
65
|
+
['brandId is empty', { brandId: '' }],
|
|
66
|
+
['the card value is missing', { amount: undefined }],
|
|
67
|
+
['the card value is not atomic digits', { amount: '25.5' }],
|
|
68
|
+
])('rejects a gift-card intent when %s', async (_, override) => {
|
|
69
|
+
const dto = (0, class_transformer_1.plainToInstance)(preparedWithdrawal_dto_1.PreparedWithdrawalDto, {
|
|
70
|
+
...base,
|
|
71
|
+
giftCard: { ...giftCard, ...override },
|
|
72
|
+
});
|
|
73
|
+
await expect((0, class_validator_1.validate)(dto)).resolves.not.toHaveLength(0);
|
|
74
|
+
});
|
|
38
75
|
});
|
|
39
76
|
//# sourceMappingURL=preparedWithdrawal.dto.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preparedWithdrawal.dto.spec.js","sourceRoot":"","sources":["../../../../../../src/domain/model/withdraw/dtos/preparedWithdrawal.dto.spec.ts"],"names":[],"mappings":";;AAAA,4BAA0B;AAC1B,qDAA2C;AAC3C,yDAAoD;AACpD,qEAGkC;AAElC,MAAM,IAAI,GAAG;IACX,YAAY,EAAE,4CAA4C;IAC1D,SAAS,EAAE,8CAA8C;IACzD,MAAM,EAAE,QAAQ;IAChB,YAAY,EAAE,0BAA0B;IACxC,gBAAgB,EAAE,0BAA0B;CAC7C,CAAC;AAEF,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,GAAG,GAAG,IAAA,mCAAe,EAAC,8CAAqB,EAAE,IAAI,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,MAAM,IAAA,0BAAQ,EAAC,GAAG,CAAC,CAAC;QACnC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,wDAA+B,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC9C,MAAM,GAAG,GAAG,IAAA,mCAAe,EAAC,8CAAqB,EAAE;YACjD,GAAG,IAAI;YACP,WAAW,EAAE,GAAG;SACjB,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAA,0BAAQ,EAAC,GAAG,CAAC,CAAC;QACnC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAC9B,yDAAyD,EACzD,KAAK,EAAE,WAAW,EAAE,EAAE;QACpB,MAAM,GAAG,GAAG,IAAA,mCAAe,EAAC,8CAAqB,EAAE;YACjD,GAAG,IAAI;YACP,WAAW;SACZ,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAA,0BAAQ,EAAC,GAAG,CAAC,CAAC;QACnC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,aAAa,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACzE,CAAC,CACF,CAAC;
|
|
1
|
+
{"version":3,"file":"preparedWithdrawal.dto.spec.js","sourceRoot":"","sources":["../../../../../../src/domain/model/withdraw/dtos/preparedWithdrawal.dto.spec.ts"],"names":[],"mappings":"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"}
|