@fileverse-dev/formulajs 4.4.11-mod-19-patch-1 → 4.4.11-mod-19-patch-3

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.
@@ -1,4 +1,4 @@
1
- /* @fileverse-dev/formulajs v4.4.11-mod-19-patch-1 */
1
+ /* @fileverse-dev/formulajs v4.4.11-mod-19-patch-3 */
2
2
  function _regeneratorRuntime() {
3
3
  "use strict";
4
4
  /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() {
@@ -421,9 +421,16 @@ function _typeof(o) {
421
421
  var addOn = date > -22038912e5 ? 2 : 1;
422
422
  return Math.ceil((date - d1900) / 864e5) + addOn;
423
423
  }
424
+ function formatDate(date) {
425
+ var day = String(date.getDate()).padStart(2, "0");
426
+ var month = String(date.getMonth() + 1).padStart(2, "0");
427
+ var year = date.getFullYear();
428
+ return "".concat(day, "/").concat(month, "/").concat(year);
429
+ }
424
430
  var date = Object.freeze({
425
431
  __proto__: null,
426
432
  dateToSerial: dateToSerial,
433
+ formatDate: formatDate,
427
434
  get returnSerial() {
428
435
  return returnSerial;
429
436
  },
@@ -784,6 +791,23 @@ function _typeof(o) {
784
791
  return _d;
785
792
  }
786
793
  }
794
+ if (/^\d{1,2}:\d{2}(:\d{2})?$/.test(date)) {
795
+ var _date$split$map = date.split(":").map(Number), _date$split$map2 = _slicedToArray(_date$split$map, 3), h = _date$split$map2[0], m = _date$split$map2[1], _date$split$map2$ = _date$split$map2[2], s = _date$split$map2$ === void 0 ? "0" : _date$split$map2$;
796
+ var now = new Date;
797
+ now.setHours(h, m, s, 0);
798
+ return now;
799
+ }
800
+ var ampmMatch = /^(\d{1,2}):(\d{2})\s*(AM|PM)$/i.exec(date);
801
+ if (ampmMatch) {
802
+ var _ampmMatch = _slicedToArray(ampmMatch, 4), hour = _ampmMatch[1], minute = _ampmMatch[2], meridian = _ampmMatch[3];
803
+ hour = parseInt(hour);
804
+ minute = parseInt(minute);
805
+ if (meridian.toUpperCase() === "PM" && hour !== 12) hour += 12;
806
+ if (meridian.toUpperCase() === "AM" && hour === 12) hour = 0;
807
+ var _now = new Date;
808
+ _now.setHours(hour, minute, 0, 0);
809
+ return _now;
810
+ }
787
811
  var parsed = new Date(date);
788
812
  if (!isNaN(parsed)) {
789
813
  return parsed;
@@ -6592,63 +6616,6 @@ function _typeof(o) {
6592
6616
  var n = array.length;
6593
6617
  return 1 - NORM.S.DIST((AVERAGE(array) - x) / (sigma / Math.sqrt(n)), true);
6594
6618
  };
6595
- function PNL() {
6596
- var _argsToArray = argsToArray(arguments), _argsToArray2 = _slicedToArray(_argsToArray, 2), A = _argsToArray2[0], B = _argsToArray2[1];
6597
- var toNumberOrThrow = function toNumberOrThrow(val) {
6598
- var num = Number(val);
6599
- if (isNaN(num)) throw new Error("Invalid number value: ".concat(val));
6600
- return num;
6601
- };
6602
- if (typeof A === "number" && typeof B === "number") {
6603
- return A - B;
6604
- }
6605
- if (Array.isArray(A) && Array.isArray(B) && _typeof(A[0]) !== "object") {
6606
- var maxLen = Math.max(A.length, B.length);
6607
- var total = 0;
6608
- for (var i = 0; i < maxLen; i++) {
6609
- var aVal = i < A.length ? toNumberOrThrow(A[i]) : 0;
6610
- var bVal = i < B.length ? toNumberOrThrow(B[i]) : 0;
6611
- total += aVal - bVal;
6612
- }
6613
- return total;
6614
- }
6615
- if (Array.isArray(A[0]) && _typeof(A[0][0]) !== "object") {
6616
- var _total = 0;
6617
- var maxRows = Math.max(A.length, B.length);
6618
- for (var _i5 = 0; _i5 < maxRows; _i5++) {
6619
- var rowA = A[_i5] || [];
6620
- var rowB = B[_i5] || [];
6621
- var maxCols = Math.max(rowA.length, rowB.length);
6622
- for (var j = 0; j < maxCols; j++) {
6623
- var _aVal = j < rowA.length ? toNumberOrThrow(rowA[j]) : 0;
6624
- var _bVal = j < rowB.length ? toNumberOrThrow(rowB[j]) : 0;
6625
- _total += _aVal - _bVal;
6626
- }
6627
- }
6628
- return _total;
6629
- }
6630
- if (Array.isArray(A[0][0])) {
6631
- var _total2 = 0;
6632
- var maxX = Math.max(A.length, B.length);
6633
- for (var _i6 = 0; _i6 < maxX; _i6++) {
6634
- var matA = A[_i6] || [];
6635
- var matB = B[_i6] || [];
6636
- var maxY = Math.max(matA.length, matB.length);
6637
- for (var _j = 0; _j < maxY; _j++) {
6638
- var _rowA = matA[_j] || [];
6639
- var _rowB = matB[_j] || [];
6640
- var maxZ = Math.max(_rowA.length, _rowB.length);
6641
- for (var k = 0; k < maxZ; k++) {
6642
- var _aVal2 = k < _rowA.length ? toNumberOrThrow(_rowA[k]) : 0;
6643
- var _bVal2 = k < _rowB.length ? toNumberOrThrow(_rowB[k]) : 0;
6644
- _total2 += _aVal2 - _bVal2;
6645
- }
6646
- }
6647
- }
6648
- return _total2;
6649
- }
6650
- throw new Error("Unsupported or mismatched structure");
6651
- }
6652
6619
  function ABS(number) {
6653
6620
  number = parseNumber(number);
6654
6621
  if (number instanceof Error) {
@@ -7975,7 +7942,11 @@ function _typeof(o) {
7975
7942
  if (start_date instanceof Error) {
7976
7943
  return start_date;
7977
7944
  }
7978
- return dateToSerial(startOfDay(end_date)) - dateToSerial(startOfDay(start_date));
7945
+ console.log({
7946
+ x: formatDate(startOfDay(end_date)),
7947
+ y: formatDate(startOfDay(start_date))
7948
+ });
7949
+ return formatDate(startOfDay(end_date)) - formatDate(startOfDay(start_date));
7979
7950
  }
7980
7951
  function DAYS360(start_date, end_date, method) {
7981
7952
  method = parseBool(method || "false");
@@ -8117,17 +8088,17 @@ function _typeof(o) {
8117
8088
  } else if (!(holidays instanceof Array)) {
8118
8089
  holidays = [ holidays ];
8119
8090
  }
8120
- for (var _i7 = 0; _i7 < holidays.length; _i7++) {
8121
- var h = parseDate(holidays[_i7]);
8091
+ for (var _i5 = 0; _i5 < holidays.length; _i5++) {
8092
+ var h = parseDate(holidays[_i5]);
8122
8093
  if (h instanceof Error) {
8123
8094
  return h;
8124
8095
  }
8125
- holidays[_i7] = h;
8096
+ holidays[_i5] = h;
8126
8097
  }
8127
8098
  var days = Math.round((end_date - start_date) / (1e3 * 60 * 60 * 24)) + 1;
8128
8099
  var total = days;
8129
8100
  var day = start_date;
8130
- for (var _i8 = 0; _i8 < days; _i8++) {
8101
+ for (var _i6 = 0; _i6 < days; _i6++) {
8131
8102
  var d = (new Date).getTimezoneOffset() > 0 ? day.getUTCDay() : day.getDay();
8132
8103
  var dec = isMask ? maskDays.includes(d) : d === weekend[0] || d === weekend[1];
8133
8104
  for (var j = 0; j < holidays.length; j++) {
@@ -8144,6 +8115,7 @@ function _typeof(o) {
8144
8115
  }
8145
8116
  return total;
8146
8117
  };
8118
+ var NETWORKDAYS_INTL = NETWORKDAYS.INTL;
8147
8119
  function NOW() {
8148
8120
  return returnSerial ? dateToSerial(new Date) : new Date;
8149
8121
  }
@@ -8164,7 +8136,10 @@ function _typeof(o) {
8164
8136
  if (hour < 0 || minute < 0 || second < 0) {
8165
8137
  return num;
8166
8138
  }
8167
- return (3600 * hour + 60 * minute + second) / 86400;
8139
+ var hh = String(hour).padStart(2, "0");
8140
+ var mm = String(minute).padStart(2, "0");
8141
+ var ss = String(second).padStart(2, "0");
8142
+ return "".concat(hh, ":").concat(mm, ":").concat(ss);
8168
8143
  }
8169
8144
  function TIMEVALUE(time_text) {
8170
8145
  time_text = parseDate(time_text);
@@ -8175,7 +8150,7 @@ function _typeof(o) {
8175
8150
  }
8176
8151
  function TODAY() {
8177
8152
  var today = startOfDay(new Date);
8178
- return returnSerial ? dateToSerial(today) : today;
8153
+ return formatDate(today);
8179
8154
  }
8180
8155
  function WEEKDAY(serial_number, return_type) {
8181
8156
  serial_number = parseDate(serial_number);
@@ -8208,6 +8183,10 @@ function _typeof(o) {
8208
8183
  function WORKDAY(start_date, days, holidays) {
8209
8184
  return WORKDAY.INTL(start_date, days, 1, holidays);
8210
8185
  }
8186
+ function ISDATE(value) {
8187
+ var parsed = parseDate(value);
8188
+ return !(parsed instanceof Error);
8189
+ }
8211
8190
  WORKDAY.INTL = function(start_date, days, weekend, holidays) {
8212
8191
  start_date = parseDate(start_date);
8213
8192
  if (start_date instanceof Error) {
@@ -8257,8 +8236,9 @@ function _typeof(o) {
8257
8236
  if (start_date.getFullYear() < 1900) {
8258
8237
  return value;
8259
8238
  }
8260
- return start_date;
8239
+ return formatDate(start_date);
8261
8240
  };
8241
+ var WORKDAY_INTL = WORKDAY.INTL;
8262
8242
  function YEAR(serial_number) {
8263
8243
  serial_number = parseDate(serial_number);
8264
8244
  if (serial_number instanceof Error) {
@@ -9524,9 +9504,9 @@ function _typeof(o) {
9524
9504
  matches[i] = true;
9525
9505
  }
9526
9506
  var maxCriteriaLength = criterias[0].length;
9527
- for (var _i9 = 1; _i9 < criterias.length; ++_i9) {
9528
- if (criterias[_i9].length > maxCriteriaLength) {
9529
- maxCriteriaLength = criterias[_i9].length;
9507
+ for (var _i7 = 1; _i7 < criterias.length; ++_i7) {
9508
+ if (criterias[_i7].length > maxCriteriaLength) {
9509
+ maxCriteriaLength = criterias[_i7].length;
9530
9510
  }
9531
9511
  }
9532
9512
  for (var k = 1; k < database.length; ++k) {
@@ -10175,9 +10155,9 @@ function _typeof(o) {
10175
10155
  var result = cashFlows[0];
10176
10156
  var r = 1 + rate;
10177
10157
  var factor = 1;
10178
- for (var _i0 = 1; _i0 < cashFlows.length; _i0++) {
10158
+ for (var _i8 = 1; _i8 < cashFlows.length; _i8++) {
10179
10159
  factor *= r;
10180
- result += cashFlows[_i0] / factor;
10160
+ result += cashFlows[_i8] / factor;
10181
10161
  }
10182
10162
  return result;
10183
10163
  };
@@ -10243,7 +10223,7 @@ function _typeof(o) {
10243
10223
  if (a <= -.99999999) return rate;
10244
10224
  }
10245
10225
  var c;
10246
- for (var _i1 = 0; _i1 < maxIterations; _i1++) {
10226
+ for (var _i9 = 0; _i9 < maxIterations; _i9++) {
10247
10227
  c = (a + b) / 2;
10248
10228
  var npvC = cachedNpv(c);
10249
10229
  if (Math.abs(npvC) < epsMax || Math.abs(b - a) < epsMax) {
@@ -11042,6 +11022,63 @@ function _typeof(o) {
11042
11022
  })));
11043
11023
  return _EOA.apply(this, arguments);
11044
11024
  }
11025
+ function PNL() {
11026
+ var _argsToArray = argsToArray(arguments), _argsToArray2 = _slicedToArray(_argsToArray, 2), A = _argsToArray2[0], B = _argsToArray2[1];
11027
+ var toNumberOrThrow = function toNumberOrThrow(val) {
11028
+ var num = Number(val);
11029
+ if (isNaN(num)) throw new Error("Invalid number value: ".concat(val));
11030
+ return num;
11031
+ };
11032
+ if (typeof A === "number" && typeof B === "number") {
11033
+ return A - B;
11034
+ }
11035
+ if (Array.isArray(A) && Array.isArray(B) && _typeof(A[0]) !== "object") {
11036
+ var maxLen = Math.max(A.length, B.length);
11037
+ var total = 0;
11038
+ for (var i = 0; i < maxLen; i++) {
11039
+ var aVal = i < A.length ? toNumberOrThrow(A[i]) : 0;
11040
+ var bVal = i < B.length ? toNumberOrThrow(B[i]) : 0;
11041
+ total += aVal - bVal;
11042
+ }
11043
+ return total;
11044
+ }
11045
+ if (Array.isArray(A[0]) && _typeof(A[0][0]) !== "object") {
11046
+ var _total = 0;
11047
+ var maxRows = Math.max(A.length, B.length);
11048
+ for (var _i0 = 0; _i0 < maxRows; _i0++) {
11049
+ var rowA = A[_i0] || [];
11050
+ var rowB = B[_i0] || [];
11051
+ var maxCols = Math.max(rowA.length, rowB.length);
11052
+ for (var j = 0; j < maxCols; j++) {
11053
+ var _aVal = j < rowA.length ? toNumberOrThrow(rowA[j]) : 0;
11054
+ var _bVal = j < rowB.length ? toNumberOrThrow(rowB[j]) : 0;
11055
+ _total += _aVal - _bVal;
11056
+ }
11057
+ }
11058
+ return _total;
11059
+ }
11060
+ if (Array.isArray(A[0][0])) {
11061
+ var _total2 = 0;
11062
+ var maxX = Math.max(A.length, B.length);
11063
+ for (var _i1 = 0; _i1 < maxX; _i1++) {
11064
+ var matA = A[_i1] || [];
11065
+ var matB = B[_i1] || [];
11066
+ var maxY = Math.max(matA.length, matB.length);
11067
+ for (var _j = 0; _j < maxY; _j++) {
11068
+ var _rowA = matA[_j] || [];
11069
+ var _rowB = matB[_j] || [];
11070
+ var maxZ = Math.max(_rowA.length, _rowB.length);
11071
+ for (var k = 0; k < maxZ; k++) {
11072
+ var _aVal2 = k < _rowA.length ? toNumberOrThrow(_rowA[k]) : 0;
11073
+ var _bVal2 = k < _rowB.length ? toNumberOrThrow(_rowB[k]) : 0;
11074
+ _total2 += _aVal2 - _bVal2;
11075
+ }
11076
+ }
11077
+ }
11078
+ return _total2;
11079
+ }
11080
+ throw new Error("Unsupported or mismatched structure");
11081
+ }
11045
11082
  function FLVURL(_x12, _x13) {
11046
11083
  return _FLVURL.apply(this, arguments);
11047
11084
  }
@@ -11271,6 +11308,7 @@ function _typeof(o) {
11271
11308
  exports.IPMT = IPMT;
11272
11309
  exports.IRR = IRR;
11273
11310
  exports.ISBLANK = ISBLANK;
11311
+ exports.ISDATE = ISDATE;
11274
11312
  exports.ISERR = ISERR;
11275
11313
  exports.ISERROR = ISERROR;
11276
11314
  exports.ISEVEN = ISEVEN;
@@ -11325,6 +11363,7 @@ function _typeof(o) {
11325
11363
  exports.NEGBINOMDIST = NEGBINOMDIST;
11326
11364
  exports.NETWORKDAYS = NETWORKDAYS;
11327
11365
  exports.NETWORKDAYSINTL = NETWORKDAYSINTL;
11366
+ exports.NETWORKDAYS_INTL = NETWORKDAYS_INTL;
11328
11367
  exports.NOMINAL = NOMINAL;
11329
11368
  exports.NORM = NORM;
11330
11369
  exports.NORMDIST = NORMDIST;
@@ -11460,6 +11499,7 @@ function _typeof(o) {
11460
11499
  exports.WEIBULLDIST = WEIBULLDIST;
11461
11500
  exports.WORKDAY = WORKDAY;
11462
11501
  exports.WORKDAYINTL = WORKDAYINTL;
11502
+ exports.WORKDAY_INTL = WORKDAY_INTL;
11463
11503
  exports.XIRR = XIRR;
11464
11504
  exports.XNPV = XNPV;
11465
11505
  exports.XOR = XOR;