@zorionapp/gg-toolkit 4.14.0 → 4.71.1

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.
Files changed (45) hide show
  1. package/dto/index.d.ts +1 -0
  2. package/dto/index.js +1 -0
  3. package/dto/index.js.map +1 -1
  4. package/dto/lock.dto.d.ts +12 -0
  5. package/dto/lock.dto.js +19 -0
  6. package/dto/lock.dto.js.map +1 -0
  7. package/dto/pagination.dto.js +1 -1
  8. package/enum/antifraud.enums.d.ts +2 -1
  9. package/enum/antifraud.enums.js +1 -0
  10. package/enum/antifraud.enums.js.map +1 -1
  11. package/enum/currency.enum.d.ts +328 -5
  12. package/enum/currency.enum.js +324 -1
  13. package/enum/currency.enum.js.map +1 -1
  14. package/enum/index.d.ts +1 -0
  15. package/enum/index.js +1 -0
  16. package/enum/index.js.map +1 -1
  17. package/enum/notification.enum.d.ts +2 -0
  18. package/enum/notification.enum.js +2 -0
  19. package/enum/notification.enum.js.map +1 -1
  20. package/enum/operation.enums.d.ts +2 -1
  21. package/enum/operation.enums.js +1 -0
  22. package/enum/operation.enums.js.map +1 -1
  23. package/enum/transfer-order.enums.d.ts +10 -0
  24. package/enum/transfer-order.enums.js +16 -0
  25. package/enum/transfer-order.enums.js.map +1 -0
  26. package/enum/transfer.enums.d.ts +8 -2
  27. package/enum/transfer.enums.js +6 -0
  28. package/enum/transfer.enums.js.map +1 -1
  29. package/nominal-type/currency/currency-type.validator.js +9 -3
  30. package/nominal-type/currency/currency-type.validator.js.map +1 -1
  31. package/nominal-type/money/money-type.validator.js +6 -12
  32. package/nominal-type/money/money-type.validator.js.map +1 -1
  33. package/nominal-type/money/money.ntype.d.ts +22 -37
  34. package/nominal-type/money/money.ntype.js +90 -103
  35. package/nominal-type/money/money.ntype.js.map +1 -1
  36. package/nominal-type/mop/mop-type.map.js +2 -0
  37. package/nominal-type/mop/mop-type.map.js.map +1 -1
  38. package/package.json +1 -1
  39. package/util/compact-object.js.map +1 -1
  40. package/util/index.d.ts +0 -1
  41. package/util/index.js +0 -1
  42. package/util/index.js.map +1 -1
  43. package/util/money-math-formulas.d.ts +0 -13
  44. package/util/money-math-formulas.js +0 -18
  45. package/util/money-math-formulas.js.map +0 -1
@@ -5,10 +5,9 @@ const tslib_1 = require("tslib");
5
5
  const nominal_types_1 = require("@horizon-republic/nominal-types");
6
6
  const common_1 = require("@nestjs/common");
7
7
  const class_validator_1 = require("class-validator");
8
+ const decimal_js_1 = require("decimal.js");
8
9
  const lodash_1 = require("lodash");
9
- const mathFormulas = require("../../util/money-math-formulas");
10
10
  const money_ntype_1 = require("./money.ntype");
11
- const StringAmountPattern = new RegExp(/^\d{1,15}$|^\d{0,15}(?=.{0,18}$)\d*\.\d*\d$/);
12
11
  let MoneyValidator = class MoneyValidator extends nominal_types_1.NTypeValidator {
13
12
  message(validationArguments) {
14
13
  var _a;
@@ -20,7 +19,8 @@ let MoneyValidator = class MoneyValidator extends nominal_types_1.NTypeValidator
20
19
  const isEmptyValue = (0, lodash_1.isNil)(value) || value.amount === null;
21
20
  if (isEmptyValue)
22
21
  return !!isOptional;
23
- return StringAmountPattern.test(value.amount) || typeof value.amount === 'number';
22
+ const numericValue = Number(value.amount);
23
+ return !Number.isNaN(numericValue);
24
24
  }
25
25
  static validateForTransformDecorator(key, value, options) {
26
26
  const { isOptional = false, minValue, maxValue } = options !== null && options !== void 0 ? options : {};
@@ -30,25 +30,19 @@ let MoneyValidator = class MoneyValidator extends nominal_types_1.NTypeValidator
30
30
  const isDefined = value !== null && value !== undefined;
31
31
  const isInvalidNumber = typeof value === 'number' && Number.isNaN(value);
32
32
  const isInvalidString = typeof value === 'string' &&
33
- (!StringAmountPattern.test(trimmedStrValue) || ['NULL', 'UNDEFINED', ''].includes(trimmedStrValue.toUpperCase()));
33
+ (Number.isNaN(trimmedStrValue) || ['NULL', 'UNDEFINED', ''].includes(trimmedStrValue.toUpperCase()));
34
34
  if (!isDefined || isInvalidString || isInvalidNumber) {
35
35
  if (!isOptional)
36
36
  throw new common_1.BadRequestException(`${key} is not a valid money`);
37
37
  return false;
38
38
  }
39
39
  if (minValue !== undefined && minValue !== null) {
40
- const isValidMin = mathFormulas.greaterThanOrEqualToFormula.evaluate({
41
- x: trimmedStrValue,
42
- y: minValue,
43
- });
40
+ const isValidMin = new decimal_js_1.default(trimmedStrValue).greaterThanOrEqualTo(new decimal_js_1.default(minValue));
44
41
  if (!isValidMin)
45
42
  throw new common_1.BadRequestException(`${key} must be greater than ${minValue}`);
46
43
  }
47
44
  if (maxValue !== undefined && maxValue !== null) {
48
- const isValidMax = mathFormulas.lessThanOrEqualToFormula.evaluate({
49
- x: trimmedStrValue,
50
- y: maxValue,
51
- });
45
+ const isValidMax = new decimal_js_1.default(trimmedStrValue).lessThanOrEqualTo(new decimal_js_1.default(maxValue));
52
46
  if (!isValidMax)
53
47
  throw new common_1.BadRequestException(`${key} must be less than ${maxValue}`);
54
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"money-type.validator.js","sourceRoot":"","sources":["../../../../../libs/gg-toolkit/nominal-type/money/money-type.validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"money-type.validator.js","sourceRoot":"","sources":["../../../../../libs/gg-toolkit/nominal-type/money/money-type.validator.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ export declare enum MoneyFormat {
6
6
  Calculation = "calculation"
7
7
  }
8
8
  export type MoneyValue = {
9
- amount: string | number;
9
+ amount: string;
10
10
  currency?: Currency;
11
11
  format?: MoneyFormat;
12
12
  };
@@ -88,49 +88,34 @@ export declare class Money extends Money_base {
88
88
  /** Setters */
89
89
  setCurrency(currency: Currency): Money;
90
90
  /** Getters */
91
+ getPrecision(): Currency['precision'];
91
92
  getCurrency(): Currency;
92
- getCalculationAmount(): string;
93
- getHumanAmount(trimByPrecision?: boolean): string;
93
+ getHumanAmount(): string;
94
94
  toString(): string;
95
95
  toFloat(): number;
96
+ getTruncatedAmountForCurrency(padZeros?: boolean): string;
96
97
  /** Calculations */
97
- add(amount: string | number | Money): Money;
98
- minus(amount: string | number | Money): Money;
99
- multiplyBy(amount: string | number): Money;
100
- divideBy(amount: string | number): Money;
101
- rate(coefficient: string | number, currency: Currency): Money;
102
- /**
103
- * Returns the minimum Money instance from the provided list.
104
- */
98
+ add(amount: string | Money): Money;
99
+ minus(amount: string | Money): Money;
100
+ multiplyBy(amount: string): Money;
101
+ divideBy(amount: string): Money;
102
+ rate(coefficient: string, currency: Currency): Money;
105
103
  static min(...monies: Money[]): Money;
106
- /**
107
- * Returns the maximum Money instance from the provided list.
108
- */
109
104
  static max(...monies: Money[]): Money;
110
- /**
111
- * Compares Money instances using the provided comparator function.
112
- *
113
- * @param monies - List of Money instances to compare.
114
- * @param comparator - Function to determine the comparison logic.
115
- * @returns The Money instance that meets the comparison criteria.
116
- * @throws InternalServerErrorException if no Money instances are provided.
117
- * @throws UnprocessableEntityException if Money instances have different currencies.
118
- */
119
- private static compareMonies;
120
105
  /** Comparison */
121
- isEqualTo(money: string | number | Money): boolean;
122
- isNotEqualTo(money: string | number | Money): boolean;
123
- isGreaterThan(money: string | number | Money): boolean;
124
- isGreaterThanOrEqualTo(money: string | number | Money): boolean;
125
- isLessThan(money: string | number | Money): boolean;
126
- isLessThanOrEqualTo(money: string | number | Money): boolean;
106
+ isEqualTo(money: string | Money): boolean;
107
+ isNotEqualTo(money: string | Money): boolean;
108
+ isGreaterThan(money: string | Money): boolean;
109
+ isGreaterThanOrEqualTo(money: string | Money): boolean;
110
+ isLessThan(money: string | Money): boolean;
111
+ isLessThanOrEqualTo(money: string | Money): boolean;
127
112
  /** Aliases */
128
- plus(amount: string | number | Money): Money;
129
- eq(money: string | number | Money): boolean;
130
- ne(money: string | number | Money): boolean;
131
- gt(money: string | number | Money): boolean;
132
- gte(money: string | number | Money): boolean;
133
- lt(money: string | number | Money): boolean;
134
- lte(money: string | number | Money): boolean;
113
+ plus(amount: string | Money): Money;
114
+ eq(money: string | Money): boolean;
115
+ ne(money: string | Money): boolean;
116
+ gt(money: string | Money): boolean;
117
+ gte(money: string | Money): boolean;
118
+ lt(money: string | Money): boolean;
119
+ lte(money: string | Money): boolean;
135
120
  }
136
121
  export {};
@@ -7,9 +7,9 @@ const common_1 = require("@nestjs/common");
7
7
  const swagger_1 = require("@nestjs/swagger");
8
8
  const class_transformer_1 = require("class-transformer");
9
9
  const class_validator_1 = require("class-validator");
10
+ const decimal_js_1 = require("decimal.js");
10
11
  const lodash_1 = require("lodash");
11
12
  const enum_1 = require("../../enum");
12
- const mathFormulas = require("../../util/money-math-formulas");
13
13
  const currency_type_validator_1 = require("../currency/currency-type.validator");
14
14
  const currency_ntype_1 = require("../currency/currency.ntype");
15
15
  const money_type_validator_1 = require("./money-type.validator");
@@ -38,19 +38,13 @@ class Money extends (0, nominal_types_1.NType)({ name: 'money', validator: money
38
38
  static validateMinMax(valueKey, value, params) {
39
39
  debug('Money.validateMinMax', valueKey, value, params);
40
40
  if ((params === null || params === void 0 ? void 0 : params.min) !== undefined) {
41
- const isValid = mathFormulas.greaterThanOrEqualToFormula.evaluate({
42
- x: value,
43
- y: params.min,
44
- });
41
+ const isValid = new decimal_js_1.default(value).greaterThanOrEqualTo(new decimal_js_1.default(params.min));
45
42
  if (!isValid) {
46
43
  throw new common_1.BadRequestException(`${valueKey} must be greater than ${params.min}`);
47
44
  }
48
45
  }
49
46
  if ((params === null || params === void 0 ? void 0 : params.max) !== undefined) {
50
- const isValid = mathFormulas.lessThanOrEqualToFormula.evaluate({
51
- x: value,
52
- y: params.max,
53
- });
47
+ const isValid = new decimal_js_1.default(value).lessThanOrEqualTo(new decimal_js_1.default(params.max));
54
48
  if (!isValid) {
55
49
  throw new common_1.BadRequestException(`${valueKey} must be less than ${params.max}`);
56
50
  }
@@ -74,7 +68,7 @@ class Money extends (0, nominal_types_1.NType)({ name: 'money', validator: money
74
68
  debug('Money.getOrmType.convertToJSValue', amount);
75
69
  if (amount === 'NULL' || !['string', 'number'].includes(typeof amount)) {
76
70
  if (defaultJSValue !== undefined && defaultJSValue != null) {
77
- return new Money({ amount: defaultJSValue, format: outputFormat });
71
+ return new Money({ amount: String(defaultJSValue), format: outputFormat });
78
72
  }
79
73
  return null;
80
74
  }
@@ -100,10 +94,16 @@ class Money extends (0, nominal_types_1.NType)({ name: 'money', validator: money
100
94
  const apiProperty = Object.assign(Object.assign(Object.assign({}, this.apiPropertyOptions), ((params === null || params === void 0 ? void 0 : params.apiProperty) || {})), { required: !isOptional });
101
95
  return (0, common_1.applyDecorators)((0, swagger_1.ApiProperty)(apiProperty), ...(isOptional ? [(0, class_validator_1.IsOptional)()] : [(0, class_validator_1.IsObject)()]), (0, class_validator_1.Validate)(this.getValidator(), [isOptional]), (0, class_transformer_1.Transform)(({ obj, key }) => {
102
96
  var _a, _b;
103
- const value = obj[key];
97
+ let value = obj[key];
104
98
  debug('Money.getResourceDecorators.Transform { toClassOnly }', key, value, obj);
99
+ if (isOptional && (value === null || value === undefined))
100
+ return null;
105
101
  if (value instanceof Money)
106
102
  return value;
103
+ // set value 0 if it contains only zeroes
104
+ if (typeof value === 'string' && /^0*\.0+$/.test(value.trim())) {
105
+ value = '0';
106
+ }
107
107
  const currencyValue = (0, lodash_1.get)(obj, currencyKey);
108
108
  let currency;
109
109
  try {
@@ -121,12 +121,14 @@ class Money extends (0, nominal_types_1.NType)({ name: 'money', validator: money
121
121
  maxValue: (_b = params === null || params === void 0 ? void 0 : params.validation) === null || _b === void 0 ? void 0 : _b.max,
122
122
  });
123
123
  if (!isValid) {
124
- if (isOptional && defaultValue != null) {
125
- return new Money({ currency, amount: defaultValue, format: MoneyFormat.Human });
124
+ if (isOptional) {
125
+ if (defaultValue == null) {
126
+ return null;
127
+ }
128
+ else {
129
+ return new Money({ currency, amount: String(defaultValue), format: MoneyFormat.Human });
130
+ }
126
131
  }
127
- if (!isOptional)
128
- this.throwMoneyKeyValidation(key);
129
- return undefined;
130
132
  }
131
133
  return new Money({
132
134
  currency,
@@ -136,10 +138,6 @@ class Money extends (0, nominal_types_1.NType)({ name: 'money', validator: money
136
138
  }, { toClassOnly: true }), (0, class_transformer_1.Transform)(({ key, obj }) => {
137
139
  const value = obj[key];
138
140
  debug('Money.getResourceDecorators.Transform { toPlainOnly }', key, value, obj);
139
- if (value instanceof Money)
140
- return outputFormat === MoneyFormat.Calculation
141
- ? value === null || value === void 0 ? void 0 : value.getCalculationAmount()
142
- : value === null || value === void 0 ? void 0 : value.getHumanAmount(outputTrimByPrecision);
143
141
  return value;
144
142
  }, { toPlainOnly: true }));
145
143
  }
@@ -148,21 +146,21 @@ class Money extends (0, nominal_types_1.NType)({ name: 'money', validator: money
148
146
  throw new common_1.BadRequestException(`${key} is not a valid money`);
149
147
  }
150
148
  parseInputMoney(money) {
151
- if (['string', 'number'].includes(typeof money)) {
152
- return this.clone({ amount: `${money}`, format: MoneyFormat.Human });
149
+ if (typeof money === 'string') {
150
+ return this.clone({ amount: money, format: MoneyFormat.Human });
153
151
  }
154
152
  return money;
155
153
  }
156
154
  parseInputAmount(amount) {
157
- if (['string', 'number'].includes(typeof amount)) {
158
- return mathFormulas.calculationFormula.evaluate({ amount: amount, precision: this.precision }).toString();
159
- }
155
+ if (typeof amount === 'string')
156
+ return amount;
160
157
  if (amount instanceof Money) {
161
- if (amount.precision === this.precision)
162
- return amount.getCalculationAmount();
163
- throw new common_1.UnprocessableEntityException(`Unable to calculate money with different precision`);
158
+ // if (amount.precision === this.precision) {
159
+ return amount.getHumanAmount();
160
+ // }
161
+ // throw new UnprocessableEntityException(`Unable to calculate money with different precision`);
164
162
  }
165
- throw new common_1.UnprocessableEntityException(`Invalid args for money math methods (${amount}[${typeof amount}])`);
163
+ throw new common_1.UnprocessableEntityException(`Invalid argument for parseInputAmount: ${typeof amount}`);
166
164
  }
167
165
  /** Protected */
168
166
  initMoney(currency) {
@@ -186,24 +184,12 @@ class Money extends (0, nominal_types_1.NType)({ name: 'money', validator: money
186
184
  }
187
185
  }
188
186
  toCalculationView() {
189
- if (this.format === MoneyFormat.Calculation)
190
- return this.amount;
191
- return mathFormulas.calculationFormula
192
- .evaluate({
193
- amount: this.amount,
194
- precision: this.precision,
195
- })
196
- .toString();
187
+ return this.amount;
188
+ // return new Decimal(String(this.amount)).mul(new Decimal(10).pow(this.precision)).toString();
197
189
  }
198
190
  toHumanView() {
199
- if (this.format === MoneyFormat.Human)
200
- return this.amount;
201
- return mathFormulas.humanFormula
202
- .evaluate({
203
- amount: this.amount,
204
- precision: this.precision,
205
- })
206
- .toString();
191
+ return this.amount;
192
+ // return new Decimal(String(this.amount)).mul(new Decimal(10).pow(new Decimal(this.precision).neg())).toString();
207
193
  }
208
194
  /** Setters */
209
195
  setCurrency(currency) {
@@ -220,17 +206,14 @@ class Money extends (0, nominal_types_1.NType)({ name: 'money', validator: money
220
206
  return this;
221
207
  }
222
208
  /** Getters */
209
+ getPrecision() {
210
+ return this.currency.getPrecision();
211
+ }
223
212
  getCurrency() {
224
213
  return this.currency;
225
214
  }
226
- getCalculationAmount() {
227
- return this.calculationAmount;
228
- }
229
- getHumanAmount(trimByPrecision = false) {
230
- if (!trimByPrecision || !this.precision)
231
- return this.humanAmount;
232
- const [integer, fractional] = this.humanAmount.split('.');
233
- return fractional && this.precision ? `${integer}.${fractional.slice(0, this.precision)}` : integer;
215
+ getHumanAmount() {
216
+ return this.amount;
234
217
  }
235
218
  toString() {
236
219
  return this.getHumanAmount();
@@ -238,11 +221,26 @@ class Money extends (0, nominal_types_1.NType)({ name: 'money', validator: money
238
221
  toFloat() {
239
222
  return Number.parseFloat(this.getHumanAmount());
240
223
  }
224
+ getTruncatedAmountForCurrency(padZeros = false) {
225
+ const [integer, decimal = ''] = this.getHumanAmount().toString().split('.');
226
+ if (this.precision === 0)
227
+ return integer;
228
+ const truncatedDecimal = decimal.substring(0, this.precision);
229
+ if (padZeros) {
230
+ return `${integer}.${truncatedDecimal.padEnd(this.precision, '0')}`;
231
+ }
232
+ else if (truncatedDecimal.length > 0) {
233
+ return `${integer}.${truncatedDecimal}`;
234
+ }
235
+ else {
236
+ return integer;
237
+ }
238
+ }
241
239
  /** Calculations */
242
240
  add(amount) {
243
241
  this.ensureCurrencyIsNotDefault();
244
242
  const value = this.parseInputAmount(amount);
245
- const result = mathFormulas.addFormula.evaluate({ x: this.getCalculationAmount(), y: value }).toString();
243
+ const result = new decimal_js_1.default(this.amount).add(new decimal_js_1.default(value)).toString();
246
244
  return new Money({
247
245
  amount: result,
248
246
  currency: this.currency,
@@ -252,7 +250,7 @@ class Money extends (0, nominal_types_1.NType)({ name: 'money', validator: money
252
250
  minus(amount) {
253
251
  this.ensureCurrencyIsNotDefault();
254
252
  const value = this.parseInputAmount(amount);
255
- const result = mathFormulas.minusFormula.evaluate({ x: this.getCalculationAmount(), y: value }).toString();
253
+ const result = new decimal_js_1.default(this.amount).minus(new decimal_js_1.default(value)).toString();
256
254
  return new Money({
257
255
  amount: result,
258
256
  currency: this.currency,
@@ -261,26 +259,16 @@ class Money extends (0, nominal_types_1.NType)({ name: 'money', validator: money
261
259
  }
262
260
  multiplyBy(amount) {
263
261
  this.ensureCurrencyIsNotDefault();
264
- const result = mathFormulas.multiplyFormula
265
- .evaluate({
266
- x: this.getCalculationAmount(),
267
- y: `${amount}`,
268
- })
269
- .toString();
262
+ const result = new decimal_js_1.default(this.amount).mul(new decimal_js_1.default(amount)).toString();
270
263
  return new Money({
271
264
  amount: result,
272
265
  currency: this.currency,
273
- format: MoneyFormat.Calculation,
266
+ format: MoneyFormat.Human,
274
267
  });
275
268
  }
276
269
  divideBy(amount) {
277
270
  this.ensureCurrencyIsNotDefault();
278
- const result = mathFormulas.divideFormula
279
- .evaluate({
280
- x: this.getCalculationAmount(),
281
- y: `${amount}`,
282
- })
283
- .toString();
271
+ const result = new decimal_js_1.default(this.amount).dividedBy(new decimal_js_1.default(amount)).toString();
284
272
  return new Money({
285
273
  amount: result,
286
274
  currency: this.currency,
@@ -291,49 +279,54 @@ class Money extends (0, nominal_types_1.NType)({ name: 'money', validator: money
291
279
  this.ensureCurrencyIsNotDefault();
292
280
  const result = this.multiplyBy(coefficient);
293
281
  return new Money({
294
- amount: result.getCalculationAmount(),
282
+ amount: result.amount,
295
283
  currency,
296
- format: MoneyFormat.Calculation,
284
+ format: MoneyFormat.Human,
297
285
  });
298
286
  }
299
- /**
300
- * Returns the minimum Money instance from the provided list.
301
- */
302
287
  static min(...monies) {
303
- return this.compareMonies(monies, lodash_1.minBy);
288
+ if (monies.length === 0) {
289
+ throw new common_1.InternalServerErrorException('At least one Money instance must be provided');
290
+ }
291
+ const currency = monies[0].getCurrency();
292
+ if (!monies.every((money) => currency.eq(money.getCurrency()))) {
293
+ throw new common_1.UnprocessableEntityException('Cannot compare Money instances with different currencies');
294
+ }
295
+ let minMoney = monies[0];
296
+ let minDecimal = new decimal_js_1.default(minMoney.amount);
297
+ for (let i = 1; i < monies.length; i++) {
298
+ const currentDecimal = new decimal_js_1.default(monies[i].amount);
299
+ if (currentDecimal.lt(minDecimal)) {
300
+ minMoney = monies[i];
301
+ minDecimal = currentDecimal;
302
+ }
303
+ }
304
+ return minMoney;
304
305
  }
305
- /**
306
- * Returns the maximum Money instance from the provided list.
307
- */
308
306
  static max(...monies) {
309
- return this.compareMonies(monies, lodash_1.maxBy);
310
- }
311
- /**
312
- * Compares Money instances using the provided comparator function.
313
- *
314
- * @param monies - List of Money instances to compare.
315
- * @param comparator - Function to determine the comparison logic.
316
- * @returns The Money instance that meets the comparison criteria.
317
- * @throws InternalServerErrorException if no Money instances are provided.
318
- * @throws UnprocessableEntityException if Money instances have different currencies.
319
- */
320
- static compareMonies(monies, comparator) {
321
- if (monies.length === 0)
307
+ if (monies.length === 0) {
322
308
  throw new common_1.InternalServerErrorException('At least one Money instance must be provided');
309
+ }
323
310
  const currency = monies[0].getCurrency();
324
311
  if (!monies.every((money) => currency.eq(money.getCurrency()))) {
325
312
  throw new common_1.UnprocessableEntityException('Cannot compare Money instances with different currencies');
326
313
  }
327
- return comparator(monies, (money) => Number(money.getCalculationAmount()));
314
+ let maxMoney = monies[0];
315
+ let maxDecimal = new decimal_js_1.default(maxMoney.amount);
316
+ for (let i = 1; i < monies.length; i++) {
317
+ const currentDecimal = new decimal_js_1.default(monies[i].amount);
318
+ if (currentDecimal.gt(maxDecimal)) {
319
+ maxMoney = monies[i];
320
+ maxDecimal = currentDecimal;
321
+ }
322
+ }
323
+ return maxMoney;
328
324
  }
329
325
  /** Comparison */
330
326
  isEqualTo(money) {
331
327
  money = this.parseInputMoney(money);
332
328
  this.checkComparison(money);
333
- return mathFormulas.equalToFormula.evaluate({
334
- x: this.getCalculationAmount(),
335
- y: money.getCalculationAmount(),
336
- });
329
+ return new decimal_js_1.default(this.amount).eq(new decimal_js_1.default(money.amount));
337
330
  }
338
331
  isNotEqualTo(money) {
339
332
  return !this.isEqualTo(money);
@@ -341,10 +334,7 @@ class Money extends (0, nominal_types_1.NType)({ name: 'money', validator: money
341
334
  isGreaterThan(money) {
342
335
  money = this.parseInputMoney(money);
343
336
  this.checkComparison(money);
344
- return mathFormulas.greaterThanFormula.evaluate({
345
- x: this.getCalculationAmount(),
346
- y: money.getCalculationAmount(),
347
- });
337
+ return new decimal_js_1.default(this.amount).greaterThan(new decimal_js_1.default(money.amount));
348
338
  }
349
339
  isGreaterThanOrEqualTo(money) {
350
340
  money = this.parseInputMoney(money);
@@ -354,10 +344,7 @@ class Money extends (0, nominal_types_1.NType)({ name: 'money', validator: money
354
344
  isLessThan(money) {
355
345
  money = this.parseInputMoney(money);
356
346
  this.checkComparison(money);
357
- return mathFormulas.lessThanFormula.evaluate({
358
- x: this.getCalculationAmount(),
359
- y: money.getCalculationAmount(),
360
- });
347
+ return new decimal_js_1.default(this.amount).lessThan(money.amount);
361
348
  }
362
349
  isLessThanOrEqualTo(money) {
363
350
  money = this.parseInputMoney(money);
@@ -1 +1 @@
1
- {"version":3,"file":"money.ntype.js","sourceRoot":"","sources":["../../../../../libs/gg-toolkit/nominal-type/money/money.ntype.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"money.ntype.js","sourceRoot":"","sources":["../../../../../libs/gg-toolkit/nominal-type/money/money.ntype.ts"],"names":[],"mappings":"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"}
@@ -649,5 +649,7 @@ exports.mopTypeMap = {
649
649
  /** UGX Mobile Money*/
650
650
  '1038__UGX': enum_1.Mop.Type.MobileMoney,
651
651
  '1039__UGX': enum_1.Mop.Type.MobileMoney,
652
+ /** XAF Mobile Money*/
653
+ '1034__XAF': enum_1.Mop.Type.MobileMoney,
652
654
  };
653
655
  //# sourceMappingURL=mop-type.map.js.map