@6thbridge/utils 0.2.7 → 0.2.9
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/lib/actions/charge.action.d.ts +2 -0
- package/lib/actions/charge.action.js +40 -20
- package/lib/actions/charge.action.js.map +1 -1
- package/lib/responses/express.js +51 -5
- package/lib/responses/express.js.map +1 -1
- package/lib/test/actions/charge.action.test.js +27 -0
- package/lib/test/actions/charge.action.test.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/lib/types/index.d.ts +1 -0
- package/lib/types/index.js.map +1 -1
- package/package.json +1 -1
- package/readme.md +1 -1
|
@@ -5,8 +5,10 @@ interface CalculateTransactionFeePayload {
|
|
|
5
5
|
amount: number;
|
|
6
6
|
ownIntegration?: boolean;
|
|
7
7
|
chargeBearer?: 'merchant' | 'customer' | string;
|
|
8
|
+
roundUpFinalValue?: boolean;
|
|
8
9
|
}
|
|
9
10
|
export declare const calculateCharge: (chargeConfiguration: TransactionCharge, payload: CalculateTransactionFeePayload) => TransactionFee;
|
|
10
11
|
export declare const calculateIntegrationCharge: (integrationCharge: IntegrationCharge, payload: CalculateTransactionFeePayload) => TransactionFee;
|
|
12
|
+
export declare function roundUpFinalValueToClosestInteger(charge: TransactionFee): TransactionFee;
|
|
11
13
|
export declare function processFrancophoneCountries(charge: TransactionFee): TransactionFee;
|
|
12
14
|
export {};
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.processFrancophoneCountries = exports.calculateIntegrationCharge = exports.calculateCharge = exports.FRANCOPHONE_CURRENCY_CODES = void 0;
|
|
6
|
+
exports.processFrancophoneCountries = exports.roundUpFinalValueToClosestInteger = exports.calculateIntegrationCharge = exports.calculateCharge = exports.FRANCOPHONE_CURRENCY_CODES = void 0;
|
|
7
7
|
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
8
8
|
const types_1 = require("../types");
|
|
9
9
|
const logger_1 = require("../logger/logger");
|
|
@@ -103,7 +103,7 @@ const getChargeValue = (charge, amount) => {
|
|
|
103
103
|
}
|
|
104
104
|
};
|
|
105
105
|
const calculateIntegrationCharge = (integrationCharge, payload) => {
|
|
106
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
|
106
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
|
|
107
107
|
let response = {
|
|
108
108
|
chargeBearer: payload.chargeBearer,
|
|
109
109
|
charge: 0,
|
|
@@ -117,114 +117,134 @@ const calculateIntegrationCharge = (integrationCharge, payload) => {
|
|
|
117
117
|
merchant: 0,
|
|
118
118
|
customer: 0,
|
|
119
119
|
ownIntegration: (_a = payload.ownIntegration) !== null && _a !== void 0 ? _a : false,
|
|
120
|
+
roundUpFinalValue: (_b = payload.roundUpFinalValue) !== null && _b !== void 0 ? _b : false,
|
|
120
121
|
};
|
|
121
122
|
if (!integrationCharge)
|
|
122
123
|
return response;
|
|
124
|
+
// const amount: number = payload.amount;
|
|
123
125
|
const amount = payload.amount;
|
|
124
126
|
//platform fee
|
|
125
127
|
const platformFee = getChargeValue(integrationCharge.platform, amount / 100);
|
|
126
|
-
response.platform = (
|
|
128
|
+
response.platform = (_c = platformFee.fixed) !== null && _c !== void 0 ? _c : 0;
|
|
127
129
|
if (platformFee.percentage) {
|
|
128
130
|
response.platform += new bignumber_js_1.default(platformFee.percentage)
|
|
129
131
|
.div(100)
|
|
130
132
|
.multipliedBy(amount)
|
|
133
|
+
.decimalPlaces(0, bignumber_js_1.default.ROUND_CEIL)
|
|
131
134
|
.toNumber();
|
|
132
135
|
}
|
|
133
136
|
response.charge += response.platform;
|
|
134
137
|
response.provider = 0;
|
|
135
138
|
//provider
|
|
136
139
|
const providerFee = getChargeValue(integrationCharge.provider, amount / 100);
|
|
137
|
-
response.provider = (
|
|
140
|
+
response.provider = (_d = providerFee.fixed) !== null && _d !== void 0 ? _d : 0;
|
|
138
141
|
if (providerFee.percentage) {
|
|
139
142
|
response.provider += new bignumber_js_1.default(providerFee.percentage)
|
|
140
143
|
.div(100)
|
|
141
144
|
.multipliedBy(amount)
|
|
145
|
+
.decimalPlaces(0, bignumber_js_1.default.ROUND_CEIL)
|
|
142
146
|
.toNumber();
|
|
143
147
|
}
|
|
144
148
|
response.charge += response.provider;
|
|
145
149
|
//partner
|
|
146
150
|
const partnerFee = getChargeValue(integrationCharge.partner, amount / 100);
|
|
147
|
-
response.partner.clientId = ((
|
|
148
|
-
response.partner.value = (
|
|
151
|
+
response.partner.clientId = ((_e = integrationCharge === null || integrationCharge === void 0 ? void 0 : integrationCharge.partner) === null || _e === void 0 ? void 0 : _e.clientId) || undefined;
|
|
152
|
+
response.partner.value = (_f = partnerFee.fixed) !== null && _f !== void 0 ? _f : 0;
|
|
149
153
|
if (partnerFee.percentage) {
|
|
150
154
|
response.partner.value += new bignumber_js_1.default(partnerFee.percentage)
|
|
151
155
|
.div(100)
|
|
152
156
|
.multipliedBy(amount)
|
|
157
|
+
.decimalPlaces(0, bignumber_js_1.default.ROUND_CEIL)
|
|
153
158
|
.toNumber();
|
|
154
159
|
}
|
|
155
|
-
response.charge += (
|
|
160
|
+
response.charge += (_g = response.partner.value) !== null && _g !== void 0 ? _g : 0;
|
|
156
161
|
//custom
|
|
157
162
|
const customConfig = getChargeValue(integrationCharge.custom, amount / 100);
|
|
158
|
-
response.custom = (
|
|
163
|
+
response.custom = (_h = customConfig.fixed) !== null && _h !== void 0 ? _h : 0;
|
|
159
164
|
if (customConfig === null || customConfig === void 0 ? void 0 : customConfig.percentage) {
|
|
160
165
|
response.custom += new bignumber_js_1.default(customConfig === null || customConfig === void 0 ? void 0 : customConfig.percentage)
|
|
161
166
|
.div(100)
|
|
162
167
|
.multipliedBy(amount)
|
|
168
|
+
.decimalPlaces(0, bignumber_js_1.default.ROUND_CEIL)
|
|
163
169
|
.toNumber();
|
|
164
170
|
}
|
|
165
171
|
response.charge += response.custom;
|
|
166
172
|
//tax
|
|
167
173
|
const taxConfig = getChargeValue(integrationCharge.tax, amount / 100);
|
|
168
|
-
response.tax = (
|
|
174
|
+
response.tax = (_j = taxConfig.fixed) !== null && _j !== void 0 ? _j : 0;
|
|
169
175
|
if (taxConfig.percentage) {
|
|
170
|
-
response.tax += new bignumber_js_1.default(taxConfig.percentage)
|
|
176
|
+
response.tax += new bignumber_js_1.default(taxConfig.percentage)
|
|
177
|
+
.div(100)
|
|
178
|
+
.multipliedBy(amount)
|
|
179
|
+
.decimalPlaces(0, bignumber_js_1.default.ROUND_CEIL)
|
|
180
|
+
.toNumber();
|
|
171
181
|
}
|
|
172
182
|
response.charge += response.tax;
|
|
173
183
|
response.total = response.charge;
|
|
174
|
-
if (((
|
|
184
|
+
if (((_k = integrationCharge.cap) === null || _k === void 0 ? void 0 : _k.minimum) && integrationCharge.cap.minimum > response.total) {
|
|
175
185
|
response.total = integrationCharge.cap.minimum;
|
|
176
186
|
}
|
|
177
|
-
if (((
|
|
187
|
+
if (((_l = integrationCharge.cap) === null || _l === void 0 ? void 0 : _l.maximum) && ((_m = integrationCharge.cap) === null || _m === void 0 ? void 0 : _m.maximum) < response.total) {
|
|
178
188
|
response.total = integrationCharge.cap.maximum;
|
|
179
189
|
}
|
|
180
190
|
//calculate VAT
|
|
181
191
|
const vatConfig = getChargeValue(integrationCharge.VATOnChargeAndFees, response.total / 100);
|
|
182
|
-
response.VAT = (
|
|
192
|
+
response.VAT = (_o = vatConfig.fixed) !== null && _o !== void 0 ? _o : 0;
|
|
183
193
|
if (vatConfig.percentage) {
|
|
184
194
|
response.VAT = new bignumber_js_1.default(vatConfig.percentage)
|
|
185
195
|
.div(100)
|
|
186
196
|
.multipliedBy(response.total)
|
|
197
|
+
.decimalPlaces(0, bignumber_js_1.default.ROUND_CEIL)
|
|
187
198
|
.toNumber();
|
|
188
199
|
response.total += response.VAT;
|
|
189
200
|
}
|
|
190
201
|
response.total = Math.ceil(response.total);
|
|
191
|
-
if (exports.FRANCOPHONE_CURRENCY_CODES.includes((
|
|
192
|
-
response =
|
|
202
|
+
if (payload.roundUpFinalValue || exports.FRANCOPHONE_CURRENCY_CODES.includes((_p = payload.currency) === null || _p === void 0 ? void 0 : _p.toLowerCase())) {
|
|
203
|
+
response = roundUpFinalValueToClosestInteger(response);
|
|
204
|
+
console.log("Rounded up", response);
|
|
193
205
|
}
|
|
194
206
|
if (payload.chargeBearer) {
|
|
195
207
|
if (payload.chargeBearer == 'customer') {
|
|
196
208
|
response.customer = new bignumber_js_1.default(100)
|
|
197
209
|
.div(100)
|
|
198
210
|
.multipliedBy(response.total)
|
|
211
|
+
.decimalPlaces(0, bignumber_js_1.default.ROUND_CEIL)
|
|
199
212
|
.toNumber();
|
|
200
213
|
}
|
|
201
214
|
if (payload.chargeBearer == 'merchant') {
|
|
202
215
|
response.merchant = new bignumber_js_1.default(100)
|
|
203
216
|
.div(100)
|
|
204
217
|
.multipliedBy(response.total)
|
|
218
|
+
.decimalPlaces(0, bignumber_js_1.default.ROUND_CEIL)
|
|
205
219
|
.toNumber();
|
|
206
220
|
}
|
|
207
221
|
}
|
|
208
222
|
else {
|
|
209
|
-
response.merchant = new bignumber_js_1.default(((
|
|
223
|
+
response.merchant = new bignumber_js_1.default(((_q = integrationCharge.bearer) === null || _q === void 0 ? void 0 : _q.merchant) || 0)
|
|
210
224
|
.div(100)
|
|
211
225
|
.multipliedBy(response.total)
|
|
226
|
+
// .decimalPlaces(0, BigNumber.ROUND_CEIL)
|
|
212
227
|
.toNumber();
|
|
213
|
-
response.customer = new bignumber_js_1.default(((
|
|
228
|
+
response.customer = new bignumber_js_1.default(((_r = integrationCharge.bearer) === null || _r === void 0 ? void 0 : _r.customer) || 0)
|
|
214
229
|
.div(100)
|
|
215
230
|
.multipliedBy(response.total)
|
|
231
|
+
// .decimalPlaces(0, BigNumber.ROUND_CEIL)
|
|
216
232
|
.toNumber();
|
|
217
233
|
}
|
|
218
234
|
return response;
|
|
219
235
|
};
|
|
220
236
|
exports.calculateIntegrationCharge = calculateIntegrationCharge;
|
|
221
|
-
function
|
|
222
|
-
console.log('calculateCharge:
|
|
237
|
+
function roundUpFinalValueToClosestInteger(charge) {
|
|
238
|
+
console.log('calculateCharge: roundUpFinalValueToClosestInteger', charge);
|
|
223
239
|
let chargeInLargestCurrency = charge.total / 100;
|
|
224
240
|
const roundedUpCharge = Math.ceil(chargeInLargestCurrency);
|
|
225
|
-
charge.extra = new bignumber_js_1.default(roundedUpCharge).minus(chargeInLargestCurrency).multipliedBy(100).decimalPlaces(2).toNumber();
|
|
241
|
+
charge.extra = new bignumber_js_1.default(roundedUpCharge).minus(chargeInLargestCurrency).multipliedBy(100).decimalPlaces(2, bignumber_js_1.default.ROUND_CEIL).toNumber();
|
|
226
242
|
charge.total = new bignumber_js_1.default(roundedUpCharge).multipliedBy(100).toNumber();
|
|
227
243
|
return charge;
|
|
228
244
|
}
|
|
245
|
+
exports.roundUpFinalValueToClosestInteger = roundUpFinalValueToClosestInteger;
|
|
246
|
+
function processFrancophoneCountries(charge) {
|
|
247
|
+
return roundUpFinalValueToClosestInteger(charge);
|
|
248
|
+
}
|
|
229
249
|
exports.processFrancophoneCountries = processFrancophoneCountries;
|
|
230
250
|
//# sourceMappingURL=charge.action.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"charge.action.js","sourceRoot":"","sources":["../../src/actions/charge.action.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;AAEb,gEAAqC;AACrC,oCAOkB;AAClB,6CAA0C;AAE7B,QAAA,0BAA0B,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"charge.action.js","sourceRoot":"","sources":["../../src/actions/charge.action.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;AAEb,gEAAqC;AACrC,oCAOkB;AAClB,6CAA0C;AAE7B,QAAA,0BAA0B,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAUlD,MAAM,eAAe,GAAG,CAC7B,mBAAsC,EACtC,OAAuC,EACvB,EAAE;;IAClB,MAAM,QAAQ,GAAmB;QAC/B,MAAM,EAAE,CAAC;QACT,QAAQ,EAAE,CAAC;QACX,OAAO,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE;QAC1C,MAAM,EAAE,CAAC;QACT,QAAQ,EAAE,CAAC;QACX,GAAG,EAAE,CAAC;QACN,GAAG,EAAE,CAAC;QACN,KAAK,EAAE,CAAC;KACT,CAAC;IAEF,IAAI,CAAC,mBAAmB;QAAE,OAAO,QAAQ,CAAC;IAE1C,MAAM,MAAM,GAAW,OAAO,CAAC,MAAM,CAAC;IAEtC,cAAc;IACd,QAAQ,CAAC,QAAQ,GAAG,CAAA,MAAA,mBAAmB,CAAC,QAAQ,0CAAE,KAAK,KAAI,CAAC,CAAC;IAC7D,IAAI,MAAA,mBAAmB,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAC;QAC7C,QAAQ,CAAC,QAAQ,IAAI,IAAI,sBAAS,CAAC,MAAA,mBAAmB,CAAC,QAAQ,0CAAE,UAAU,CAAC;aACzE,GAAG,CAAC,GAAG,CAAC;aACR,YAAY,CAAC,MAAM,CAAC;aACpB,QAAQ,EAAE,CAAC;IAChB,CAAC;IAED,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC;IAErC,UAAU;IACV,QAAQ,CAAC,QAAQ,GAAG,CAAA,MAAA,mBAAmB,CAAC,QAAQ,0CAAE,KAAK,KAAI,CAAC,CAAC;IAC7D,IAAI,MAAA,mBAAmB,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAC;QAC7C,QAAQ,CAAC,QAAQ,IAAI,IAAI,sBAAS,CAAC,MAAA,mBAAmB,CAAC,QAAQ,0CAAE,UAAU,CAAC;aACzE,GAAG,CAAC,GAAG,CAAC;aACR,YAAY,CAAC,MAAM,CAAC;aACpB,QAAQ,EAAE,CAAC;IAChB,CAAC;IAED,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC;IAErC,QAAQ;IACR,QAAQ,CAAC,MAAM,GAAG,CAAA,MAAA,mBAAmB,CAAC,MAAM,0CAAE,KAAK,KAAI,CAAC,CAAC;IACzD,IAAI,MAAA,mBAAmB,CAAC,MAAM,0CAAE,UAAU,EAAE,CAAC;QAC3C,QAAQ,CAAC,MAAM,IAAI,IAAI,sBAAS,CAAC,MAAA,mBAAmB,CAAC,MAAM,0CAAE,UAAU,CAAC;aACrE,GAAG,CAAC,GAAG,CAAC;aACR,YAAY,CAAC,MAAM,CAAC;aACpB,QAAQ,EAAE,CAAC;IAChB,CAAC;IAED,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC;IAEnC,KAAK;IACL,QAAQ,CAAC,GAAG,GAAG,CAAA,MAAA,mBAAmB,CAAC,GAAG,0CAAE,KAAK,KAAI,CAAC,CAAC;IACnD,IAAI,MAAA,mBAAmB,CAAC,GAAG,0CAAE,UAAU,EAAE,CAAC;QACxC,QAAQ,CAAC,GAAG,IAAI,IAAI,sBAAS,CAAC,MAAA,mBAAmB,CAAC,GAAG,0CAAE,UAAU,CAAC;aAC/D,GAAG,CAAC,GAAG,CAAC;aACR,YAAY,CAAC,MAAM,CAAC;aACpB,QAAQ,EAAE,CAAC;IAChB,CAAC;IAED,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,GAAG,CAAC;IAEhC,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC;IAEjC,IAAI,CAAA,MAAA,mBAAmB,CAAC,GAAG,0CAAE,OAAO,KAAI,mBAAmB,CAAC,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC;QACzF,QAAQ,CAAC,KAAK,GAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC;IACnD,CAAC;IAED,IAAI,CAAA,MAAA,mBAAmB,CAAC,GAAG,0CAAE,OAAO,KAAI,CAAA,MAAA,mBAAmB,CAAC,GAAG,0CAAE,OAAO,IAAG,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC1F,QAAQ,CAAC,KAAK,GAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC;IACnD,CAAC;IAED,eAAe;IACf,IAAI,mBAAmB,CAAC,kBAAkB,EAAE,CAAC;QAC3C,QAAQ,CAAC,GAAG,GAAG,IAAI,sBAAS,CAAC,mBAAmB,CAAC,kBAAkB,CAAC;aACjE,GAAG,CAAC,GAAG,CAAC;aACR,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;aAC5B,QAAQ,EAAE,CAAC;QACd,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,GAAG,CAAC;IACjC,CAAC;IAED,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE3C,IAAI,CAAC,kCAA0B,CAAC,QAAQ,CAAC,MAAA,OAAO,CAAC,QAAQ,0CAAE,WAAW,EAAE,CAAC;QAAE,OAAO,QAAQ,CAAC;IAE3F,OAAO,2BAA2B,CAAC,QAAQ,CAAC,CAAC;AAC/C,CAAC,CAAC;AAvFW,QAAA,eAAe,mBAuF1B;AAEF,MAAM,cAAc,GAAG,CACrB,MAAqC,EACrC,MAAc,EACyB,EAAE;;IACzC,IAAI,CAAC;QACH,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QAChD,eAAe;QACf,IAAI,MAAM,CAAC,IAAI,IAAI,6BAAqB,CAAC,IAAI;YAC3C,OAAO,EAAE,UAAU,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,0CAAE,UAAU,EAAE,KAAK,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,0CAAE,KAAK,EAAE,CAAC;QAEhF,MAAM,aAAa,GAA4B,MAAM,CAAC,KAAgC,CAAC;QAEvF,IAAI,WAAW,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YAC1C,IAAI,CAAC,CAAC,CAAC,UAAU;gBAAE,OAAO,IAAI,CAAC;YAE/B,MAAM,UAAU,GAAG,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,UAAU,KAAI,CAAC,CAAC;YAEtC,OAAO,UAAU,IAAI,MAAM,IAAI,MAAM,IAAI,CAAC,CAAC,UAAU,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,OAAO,EAAE,UAAU,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,UAAU,KAAI,CAAC,EAAE,KAAK,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,KAAK,KAAI,CAAC,EAAE,CAAC;IACtF,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QAChB,eAAM,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACxC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACrC,CAAC;AACH,CAAC,CAAC;AAEK,MAAM,0BAA0B,GAAG,CACxC,iBAAoC,EACpC,OAAuC,EACvB,EAAE;;IAClB,IAAI,QAAQ,GAAmB;QAC7B,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,MAAM,EAAE,CAAC;QACT,QAAQ,EAAE,CAAC;QACX,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;QACnC,MAAM,EAAE,CAAC;QACT,QAAQ,EAAE,CAAC;QACX,GAAG,EAAE,CAAC;QACN,GAAG,EAAE,CAAC;QACN,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,CAAC;QACX,QAAQ,EAAE,CAAC;QACX,cAAc,EAAE,MAAA,OAAO,CAAC,cAAc,mCAAI,KAAK;QAC/C,iBAAiB,EAAE,MAAA,OAAO,CAAC,iBAAiB,mCAAI,KAAK;KACtD,CAAC;IAEF,IAAI,CAAC,iBAAiB;QAAE,OAAO,QAAQ,CAAC;IAExC,yCAAyC;IACzC,MAAM,MAAM,GAAW,OAAO,CAAC,MAAM,CAAC;IAEtC,cAAc;IACd,MAAM,WAAW,GAAG,cAAc,CAAC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,CAAC,CAAC;IAE7E,QAAQ,CAAC,QAAQ,GAAG,MAAA,WAAW,CAAC,KAAK,mCAAI,CAAC,CAAC;IAC3C,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;QAC3B,QAAQ,CAAC,QAAQ,IAAI,IAAI,sBAAS,CAAC,WAAW,CAAC,UAAU,CAAC;aACvD,GAAG,CAAC,GAAG,CAAC;aACR,YAAY,CAAC,MAAM,CAAC;aACpB,aAAa,CAAC,CAAC,EAAE,sBAAS,CAAC,UAAU,CAAC;aACtC,QAAQ,EAAE,CAAC;IAChB,CAAC;IAED,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC;IAErC,QAAQ,CAAC,QAAQ,GAAG,CAAC,CAAC;IACtB,UAAU;IACV,MAAM,WAAW,GAAG,cAAc,CAAC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,CAAC,CAAC;IAE7E,QAAQ,CAAC,QAAQ,GAAG,MAAA,WAAW,CAAC,KAAK,mCAAI,CAAC,CAAC;IAC3C,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;QAC3B,QAAQ,CAAC,QAAQ,IAAI,IAAI,sBAAS,CAAC,WAAW,CAAC,UAAU,CAAC;aACvD,GAAG,CAAC,GAAG,CAAC;aACR,YAAY,CAAC,MAAM,CAAC;aACpB,aAAa,CAAC,CAAC,EAAE,sBAAS,CAAC,UAAU,CAAC;aACtC,QAAQ,EAAE,CAAC;IAChB,CAAC;IAED,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC;IAErC,SAAS;IACT,MAAM,UAAU,GAAG,cAAc,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAAC,CAAC;IAC3E,QAAQ,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAA,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,OAAO,0CAAE,QAAQ,KAAI,SAAS,CAAC;IAC9E,QAAQ,CAAC,OAAO,CAAC,KAAK,GAAG,MAAA,UAAU,CAAC,KAAK,mCAAI,CAAC,CAAC;IAC/C,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;QAC1B,QAAQ,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,sBAAS,CAAC,UAAU,CAAC,UAAU,CAAC;aAC3D,GAAG,CAAC,GAAG,CAAC;aACR,YAAY,CAAC,MAAM,CAAC;aACpB,aAAa,CAAC,CAAC,EAAE,sBAAS,CAAC,UAAU,CAAC;aACtC,QAAQ,EAAE,CAAC;IAChB,CAAC;IACD,QAAQ,CAAC,MAAM,IAAI,MAAA,QAAQ,CAAC,OAAO,CAAC,KAAK,mCAAI,CAAC,CAAC;IAE/C,QAAQ;IACR,MAAM,YAAY,GAAG,cAAc,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,CAAC;IAC5E,QAAQ,CAAC,MAAM,GAAG,MAAA,YAAY,CAAC,KAAK,mCAAI,CAAC,CAAC;IAC1C,IAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,UAAU,EAAE,CAAC;QAC7B,QAAQ,CAAC,MAAM,IAAI,IAAI,sBAAS,CAAC,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,UAAU,CAAC;aACvD,GAAG,CAAC,GAAG,CAAC;aACR,YAAY,CAAC,MAAM,CAAC;aACpB,aAAa,CAAC,CAAC,EAAE,sBAAS,CAAC,UAAU,CAAC;aACtC,QAAQ,EAAE,CAAC;IAChB,CAAC;IAED,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC;IAEnC,KAAK;IAEL,MAAM,SAAS,GAAG,cAAc,CAAC,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,CAAC;IACtE,QAAQ,CAAC,GAAG,GAAG,MAAA,SAAS,CAAC,KAAK,mCAAI,CAAC,CAAC;IACpC,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;QACzB,QAAQ,CAAC,GAAG,IAAI,IAAI,sBAAS,CAAC,SAAS,CAAC,UAAU,CAAC;aAChD,GAAG,CAAC,GAAG,CAAC;aACR,YAAY,CAAC,MAAM,CAAC;aACpB,aAAa,CAAC,CAAC,EAAE,sBAAS,CAAC,UAAU,CAAC;aACtC,QAAQ,EAAE,CAAC;IAChB,CAAC;IAED,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,GAAG,CAAC;IAEhC,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC;IAEjC,IAAI,CAAA,MAAA,iBAAiB,CAAC,GAAG,0CAAE,OAAO,KAAI,iBAAiB,CAAC,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC;QACrF,QAAQ,CAAC,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC;IACjD,CAAC;IAED,IAAI,CAAA,MAAA,iBAAiB,CAAC,GAAG,0CAAE,OAAO,KAAI,CAAA,MAAA,iBAAiB,CAAC,GAAG,0CAAE,OAAO,IAAG,QAAQ,CAAC,KAAK,EAAE,CAAC;QACtF,QAAQ,CAAC,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC;IACjD,CAAC;IAED,eAAe;IACf,MAAM,SAAS,GAAG,cAAc,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,QAAQ,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;IAC7F,QAAQ,CAAC,GAAG,GAAG,MAAA,SAAS,CAAC,KAAK,mCAAI,CAAC,CAAC;IACpC,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;QACzB,QAAQ,CAAC,GAAG,GAAG,IAAI,sBAAS,CAAC,SAAS,CAAC,UAAU,CAAC;aAC/C,GAAG,CAAC,GAAG,CAAC;aACR,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;aAC5B,aAAa,CAAC,CAAC,EAAE,sBAAS,CAAC,UAAU,CAAC;aACtC,QAAQ,EAAE,CAAC;QAEd,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,GAAG,CAAC;IACjC,CAAC;IAED,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE3C,IAAI,OAAO,CAAC,iBAAiB,IAAI,kCAA0B,CAAC,QAAQ,CAAC,MAAA,OAAO,CAAC,QAAQ,0CAAE,WAAW,EAAE,CAAC,EAAE,CAAC;QACtG,QAAQ,GAAG,iCAAiC,CAAC,QAAQ,CAAC,CAAC;QAEvD,OAAO,CAAC,GAAG,CAAC,YAAY,EAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACzB,IAAI,OAAO,CAAC,YAAY,IAAI,UAAU,EAAE,CAAC;YACvC,QAAQ,CAAC,QAAQ,GAAG,IAAI,sBAAS,CAAC,GAAG,CAAC;iBACnC,GAAG,CAAC,GAAG,CAAC;iBACR,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;iBAC5B,aAAa,CAAC,CAAC,EAAE,sBAAS,CAAC,UAAU,CAAC;iBACtC,QAAQ,EAAE,CAAC;QAChB,CAAC;QAED,IAAI,OAAO,CAAC,YAAY,IAAI,UAAU,EAAE,CAAC;YACvC,QAAQ,CAAC,QAAQ,GAAG,IAAI,sBAAS,CAAC,GAAG,CAAC;iBACnC,GAAG,CAAC,GAAG,CAAC;iBACR,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;iBAC5B,aAAa,CAAC,CAAC,EAAE,sBAAS,CAAC,UAAU,CAAC;iBACtC,QAAQ,EAAE,CAAC;QAChB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,QAAQ,CAAC,QAAQ,GAAG,IAAI,sBAAS,CAAC,CAAA,MAAA,iBAAiB,CAAC,MAAM,0CAAE,QAAQ,KAAI,CAAC,CAAC;aACvE,GAAG,CAAC,GAAG,CAAC;aACR,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC7B,0CAA0C;aACzC,QAAQ,EAAE,CAAC;QAEd,QAAQ,CAAC,QAAQ,GAAG,IAAI,sBAAS,CAAC,CAAA,MAAA,iBAAiB,CAAC,MAAM,0CAAE,QAAQ,KAAI,CAAC,CAAC;aACvE,GAAG,CAAC,GAAG,CAAC;aACR,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC7B,0CAA0C;aACzC,QAAQ,EAAE,CAAC;IAChB,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AA5JW,QAAA,0BAA0B,8BA4JrC;AAGF,SAAgB,iCAAiC,CAAC,MAAsB;IACtE,OAAO,CAAC,GAAG,CAAC,oDAAoD,EAAE,MAAM,CAAC,CAAC;IAC1E,IAAI,uBAAuB,GAAG,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC;IACjD,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAC3D,MAAM,CAAC,KAAK,GAAG,IAAI,sBAAS,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC,EAAE,sBAAS,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAC;IACjJ,MAAM,CAAC,KAAK,GAAG,IAAI,sBAAS,CAAC,eAAe,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC3E,OAAO,MAAM,CAAC;AAChB,CAAC;AAPD,8EAOC;AACD,SAAgB,2BAA2B,CAAC,MAAsB;IAChE,OAAO,iCAAiC,CAAC,MAAM,CAAC,CAAC;AACnD,CAAC;AAFD,kEAEC"}
|
package/lib/responses/express.js
CHANGED
|
@@ -35,6 +35,50 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
35
35
|
exports.failed = exports.ok = exports.success = exports.paginated = exports.error = void 0;
|
|
36
36
|
const translations = __importStar(require("../translations"));
|
|
37
37
|
const lodash_1 = require("lodash");
|
|
38
|
+
const friendlyHttpStatus = {
|
|
39
|
+
'200': 'OK',
|
|
40
|
+
'201': 'Created',
|
|
41
|
+
'202': 'Accepted',
|
|
42
|
+
'203': 'NonAuthoritativeInformation',
|
|
43
|
+
'204': 'NoContent',
|
|
44
|
+
'205': 'ResetContent',
|
|
45
|
+
'206': 'PartialContent',
|
|
46
|
+
'300': 'MultipleChoices',
|
|
47
|
+
'301': 'MovedPermanently',
|
|
48
|
+
'302': 'Found',
|
|
49
|
+
'303': 'SeeOther',
|
|
50
|
+
'304': 'NotModified',
|
|
51
|
+
'305': 'UseProxy',
|
|
52
|
+
'306': 'Unused',
|
|
53
|
+
'307': 'TemporaryRedirect',
|
|
54
|
+
'400': 'BadRequest',
|
|
55
|
+
'401': 'Unauthorized',
|
|
56
|
+
'402': 'PaymentRequired',
|
|
57
|
+
'403': 'Forbidden',
|
|
58
|
+
'404': 'ResourceNotFound',
|
|
59
|
+
'405': 'MethodNotAllowed',
|
|
60
|
+
'406': 'NotAcceptable',
|
|
61
|
+
'407': 'ProxyAuthenticationRequired',
|
|
62
|
+
'408': 'RequestTimeout',
|
|
63
|
+
'409': 'Conflict',
|
|
64
|
+
'410': 'Gone',
|
|
65
|
+
'411': 'LengthRequired',
|
|
66
|
+
'412': 'PreconditionRequired',
|
|
67
|
+
'413': 'RequestEntryTooLarge',
|
|
68
|
+
'414': 'RequestURITooLong',
|
|
69
|
+
'415': 'UnsupportedMediaType',
|
|
70
|
+
'416': 'RequestedRangeNotSatisfiable',
|
|
71
|
+
'417': 'ExpectationFailed',
|
|
72
|
+
'418': 'ImaTeapot',
|
|
73
|
+
'422': 'ValidationError',
|
|
74
|
+
'429': 'TooManyRequests',
|
|
75
|
+
'500': 'InternalServerError',
|
|
76
|
+
'501': 'NotImplemented',
|
|
77
|
+
'502': 'BadGateway',
|
|
78
|
+
'503': 'ServiceUnavailable',
|
|
79
|
+
'504': 'GatewayTimeout',
|
|
80
|
+
'505': 'HTTPVersionNotSupported',
|
|
81
|
+
};
|
|
38
82
|
const success = (res, data, code = 200) => {
|
|
39
83
|
return res.status(code).json({
|
|
40
84
|
statusCode: code,
|
|
@@ -55,9 +99,10 @@ const paginated = (res, data, code = 200) => {
|
|
|
55
99
|
};
|
|
56
100
|
exports.paginated = paginated;
|
|
57
101
|
const error = (res, error = 'Oops. An Error Occurred', code = 500, errorCode) => {
|
|
102
|
+
var _a;
|
|
58
103
|
return res.status(code).json({
|
|
59
104
|
statusCode: code,
|
|
60
|
-
errorCode: errorCode
|
|
105
|
+
errorCode: (_a = errorCode !== null && errorCode !== void 0 ? errorCode : friendlyHttpStatus[String(code)]) !== null && _a !== void 0 ? _a : String(code),
|
|
61
106
|
error,
|
|
62
107
|
});
|
|
63
108
|
};
|
|
@@ -66,7 +111,7 @@ const ok = (res, response) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
66
111
|
var _a, _b, _c, _d;
|
|
67
112
|
if (!(0, lodash_1.isEmpty)(response.locale)) {
|
|
68
113
|
response.locale.fields = response.locale.fields || [];
|
|
69
|
-
if (typeof response.data ===
|
|
114
|
+
if (typeof response.data === 'string') {
|
|
70
115
|
response.data = yield translations.translate({
|
|
71
116
|
fromLanguage: response.locale.fromLocale,
|
|
72
117
|
toLanguage: ((_a = response.locale) === null || _a === void 0 ? void 0 : _a.toLocale) || ((_b = res.locals) === null || _b === void 0 ? void 0 : _b.locale),
|
|
@@ -92,14 +137,15 @@ const ok = (res, response) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
92
137
|
});
|
|
93
138
|
exports.ok = ok;
|
|
94
139
|
const failed = (res, response) => __awaiter(void 0, void 0, void 0, function* () {
|
|
95
|
-
var _e, _f;
|
|
140
|
+
var _e, _f, _g, _h, _j;
|
|
96
141
|
if (!(0, lodash_1.isEmpty)(response.locale)) {
|
|
97
142
|
response.error = yield translations.translate({
|
|
98
|
-
fromLanguage: (response === null || response === void 0 ? void 0 : response.locale.fromLocale) || 'en',
|
|
99
|
-
toLanguage: ((
|
|
143
|
+
fromLanguage: ((_e = response === null || response === void 0 ? void 0 : response.locale) === null || _e === void 0 ? void 0 : _e.fromLocale) || 'en',
|
|
144
|
+
toLanguage: ((_f = response === null || response === void 0 ? void 0 : response.locale) === null || _f === void 0 ? void 0 : _f.toLocale) || ((_g = res.locals) === null || _g === void 0 ? void 0 : _g.locale),
|
|
100
145
|
text: response.error,
|
|
101
146
|
});
|
|
102
147
|
}
|
|
148
|
+
response.errorCode = (_j = (_h = response.errorCode) !== null && _h !== void 0 ? _h : friendlyHttpStatus[String(response.errorCode)]) !== null && _j !== void 0 ? _j : String(response.errorCode);
|
|
103
149
|
delete response.locale;
|
|
104
150
|
return res.status(response.statusCode || 500).json(response);
|
|
105
151
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"express.js","sourceRoot":"","sources":["../../src/responses/express.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,8DAAgD;AAChD,mCAA2C;AAE3C,MAAM,OAAO,GAAG,CAAC,GAAa,EAAE,IAAS,EAAE,OAAe,GAAG,EAAE,EAAE;IAC/D,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;QAC3B,UAAU,EAAE,IAAI;QAChB,IAAI;KACL,CAAC,CAAC;AACL,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"express.js","sourceRoot":"","sources":["../../src/responses/express.ts"],"names":[],"mappings":"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"}
|
|
@@ -188,6 +188,8 @@ describe('charge.action.ts unit tests', () => {
|
|
|
188
188
|
customer: 6600,
|
|
189
189
|
merchant: 15400,
|
|
190
190
|
ownIntegration: false,
|
|
191
|
+
roundUpFinalValue: false,
|
|
192
|
+
chargeBearer: undefined
|
|
191
193
|
};
|
|
192
194
|
const result = target.calculateIntegrationCharge(integrationCharge, payload);
|
|
193
195
|
console.log('Result', result);
|
|
@@ -208,6 +210,31 @@ describe('charge.action.ts unit tests', () => {
|
|
|
208
210
|
customer: 22000,
|
|
209
211
|
merchant: 0,
|
|
210
212
|
ownIntegration: false,
|
|
213
|
+
roundUpFinalValue: false,
|
|
214
|
+
};
|
|
215
|
+
const result = target.calculateIntegrationCharge(integrationCharge, payload);
|
|
216
|
+
console.log('Result', result);
|
|
217
|
+
expect(result).toEqual(expectedResponse);
|
|
218
|
+
expect(result.total).toEqual(result.customer);
|
|
219
|
+
});
|
|
220
|
+
it('should round up the final value of the charge', () => {
|
|
221
|
+
const payload = { currency: 'NGN', amount: 50555, chargeBearer: "customer", roundUpFinalValue: true };
|
|
222
|
+
integrationCharge.cap.maximum = null;
|
|
223
|
+
const expectedResponse = {
|
|
224
|
+
chargeBearer: 'customer',
|
|
225
|
+
charge: 29152,
|
|
226
|
+
provider: 12528,
|
|
227
|
+
custom: 12528,
|
|
228
|
+
partner: { clientId: 'test-client-id', value: 51 },
|
|
229
|
+
platform: 253,
|
|
230
|
+
tax: 3792,
|
|
231
|
+
VAT: 2916,
|
|
232
|
+
total: 32100,
|
|
233
|
+
customer: 32100,
|
|
234
|
+
merchant: 0,
|
|
235
|
+
ownIntegration: false,
|
|
236
|
+
extra: 32,
|
|
237
|
+
roundUpFinalValue: true
|
|
211
238
|
};
|
|
212
239
|
const result = target.calculateIntegrationCharge(integrationCharge, payload);
|
|
213
240
|
console.log('Result', result);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"charge.action.test.js","sourceRoot":"","sources":["../../../src/test/actions/charge.action.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"charge.action.test.js","sourceRoot":"","sources":["../../../src/test/actions/charge.action.test.ts"],"names":[],"mappings":"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"}
|