sim-node-lib 0.4.59 → 0.4.60

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.
@@ -0,0 +1,12 @@
1
+ export declare class MathHelper {
2
+ private validateInput;
3
+ roundToPrecision(value: number, precision?: number): number;
4
+ ceilNumber(nmbr: number): number;
5
+ floorNumber(nmbr: number): number;
6
+ add(a: number, b: number): number;
7
+ subtract(a: number, b: number): number;
8
+ multiply(a: number, b: number): number;
9
+ divide(a: number, b: number): number;
10
+ power(base: number, exponent: number): number;
11
+ sqrt(value: number): number;
12
+ }
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MathHelper = void 0;
4
+ class MathHelper {
5
+ validateInput(a, b) {
6
+ if (typeof a !== 'number' || typeof b !== 'number' || isNaN(a) || isNaN(b)) {
7
+ throw new Error('Inputs must be valid numbers.');
8
+ }
9
+ }
10
+ roundToPrecision(value, precision = 12) {
11
+ return parseFloat(value.toFixed(precision));
12
+ }
13
+ ceilNumber(nmbr) {
14
+ return Math.ceil(this.roundToPrecision(nmbr * 100, 2)) / 100;
15
+ }
16
+ floorNumber(nmbr) {
17
+ return Math.floor(this.roundToPrecision(nmbr * 100, 2)) / 100;
18
+ }
19
+ add(a, b) {
20
+ this.validateInput(a, b);
21
+ const result = a + b;
22
+ return this.roundToPrecision(result);
23
+ }
24
+ subtract(a, b) {
25
+ this.validateInput(a, b);
26
+ const result = a - b;
27
+ return this.roundToPrecision(result);
28
+ }
29
+ multiply(a, b) {
30
+ this.validateInput(a, b);
31
+ const result = a * b;
32
+ return this.roundToPrecision(result);
33
+ }
34
+ divide(a, b) {
35
+ this.validateInput(a, b);
36
+ if (b === 0) {
37
+ throw new Error('Cannot divide by zero.');
38
+ }
39
+ const result = a / b;
40
+ return this.roundToPrecision(result);
41
+ }
42
+ power(base, exponent) {
43
+ this.validateInput(base, exponent);
44
+ const result = Math.pow(base, exponent);
45
+ return this.roundToPrecision(result);
46
+ }
47
+ sqrt(value) {
48
+ if (typeof value !== 'number' || isNaN(value)) {
49
+ throw new Error('Input must be a valid number.');
50
+ }
51
+ if (value < 0) {
52
+ throw new Error('Cannot calculate square root of a negative number.');
53
+ }
54
+ const result = Math.sqrt(value);
55
+ return this.roundToPrecision(result);
56
+ }
57
+ }
58
+ exports.MathHelper = MathHelper;
package/dist/index.d.ts CHANGED
@@ -8,6 +8,7 @@ export { PubSubHandlerAction } from './Handlers/PubSubHandlerAction';
8
8
  export { CryptHelper } from './Helpers/CryptHelper';
9
9
  export { DateHelper } from './Helpers/DateHelper';
10
10
  export { HashHelper } from './Helpers/HashHelper';
11
+ export { MathHelper } from './Helpers/MathHelper';
11
12
  export { NumberHelper } from './Helpers/NumberHelper';
12
13
  export { PromiseHelper } from './Helpers/PromiseHelper';
13
14
  export { StringHelper } from './Helpers/StringHelper';
package/dist/index.js CHANGED
@@ -35,7 +35,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
35
35
  });
36
36
  };
37
37
  Object.defineProperty(exports, "__esModule", { value: true });
38
- exports.UserPermissionIdentifiers = exports.CombustivelService = exports.AxiosService = exports.VendaReduzidaV2 = exports.VendaReduzida = exports.VendaPortal = exports.VendaOrigem = exports.VendaItemReduzido = exports.VendaFormaPagamentoReduzida = exports.SMS = exports.SimUrl = exports.PriceToSale = exports.PriceToConsult = exports.AxiosModel = exports.UpdateUtil = exports.StringHelper = exports.PromiseHelper = exports.NumberHelper = exports.HashHelper = exports.DateHelper = exports.CryptHelper = exports.PubSubHandlerAction = exports.BasicPubSubRepo = exports.GooglePubSubSubscription = exports.GooglePubSubPublish = exports.GooglePubSubCreateSubscription = void 0;
38
+ exports.UserPermissionIdentifiers = exports.CombustivelService = exports.AxiosService = exports.VendaReduzidaV2 = exports.VendaReduzida = exports.VendaPortal = exports.VendaOrigem = exports.VendaItemReduzido = exports.VendaFormaPagamentoReduzida = exports.SMS = exports.SimUrl = exports.PriceToSale = exports.PriceToConsult = exports.AxiosModel = exports.UpdateUtil = exports.StringHelper = exports.PromiseHelper = exports.NumberHelper = exports.MathHelper = exports.HashHelper = exports.DateHelper = exports.CryptHelper = exports.PubSubHandlerAction = exports.BasicPubSubRepo = exports.GooglePubSubSubscription = exports.GooglePubSubPublish = exports.GooglePubSubCreateSubscription = void 0;
39
39
  var GooglePubSubCreateSubscription_1 = require("./Class/GooglePubSubCreateSubscription");
40
40
  Object.defineProperty(exports, "GooglePubSubCreateSubscription", { enumerable: true, get: function () { return GooglePubSubCreateSubscription_1.GooglePubSubCreateSubscription; } });
41
41
  var GooglePubSubPublish_1 = require("./Class/GooglePubSubPublish");
@@ -53,6 +53,8 @@ var DateHelper_1 = require("./Helpers/DateHelper");
53
53
  Object.defineProperty(exports, "DateHelper", { enumerable: true, get: function () { return DateHelper_1.DateHelper; } });
54
54
  var HashHelper_1 = require("./Helpers/HashHelper");
55
55
  Object.defineProperty(exports, "HashHelper", { enumerable: true, get: function () { return HashHelper_1.HashHelper; } });
56
+ var MathHelper_1 = require("./Helpers/MathHelper");
57
+ Object.defineProperty(exports, "MathHelper", { enumerable: true, get: function () { return MathHelper_1.MathHelper; } });
56
58
  var NumberHelper_1 = require("./Helpers/NumberHelper");
57
59
  Object.defineProperty(exports, "NumberHelper", { enumerable: true, get: function () { return NumberHelper_1.NumberHelper; } });
58
60
  var PromiseHelper_1 = require("./Helpers/PromiseHelper");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sim-node-lib",
3
- "version": "0.4.59",
3
+ "version": "0.4.60",
4
4
  "description": "Library from SIMLabs",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",