@leankylin-sheet/formula-parser 4.0.45 → 4.0.46

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/index.esm.js CHANGED
@@ -351,13 +351,7 @@ function func$4(symbol) {
351
351
  if (symbolParts.length === 1) {
352
352
  if (formulajs[symbolParts[0]]) {
353
353
  foundFormula = true;
354
- if (symbolParts[0] === "SUMPRODUCT") {
355
- var _params2;
356
- params = (_params2 = params) === null || _params2 === void 0 ? void 0 : _params2.map(function (item) {
357
- var _item$flat;
358
- return (item === null || item === void 0 ? void 0 : item.flat) ? (_item$flat = item.flat()) === null || _item$flat === void 0 ? void 0 : _item$flat.map(toNumberNotNaN) : toNumberNotNaN(item);
359
- });
360
- }
354
+ params = tsParams(symbolParts[0], params);
361
355
  result = formulajs[symbolParts[0]].apply(formulajs, _toConsumableArray(params));
362
356
  }
363
357
  } else {
@@ -385,6 +379,26 @@ function func$4(symbol) {
385
379
  }
386
380
  func$4.isFactory = true;
387
381
  func$4.SYMBOL = SYMBOL$4;
382
+ function tsParams(fnName, params) {
383
+ if (fnName === "SUMPRODUCT") {
384
+ var _params2;
385
+ params = (_params2 = params) === null || _params2 === void 0 ? void 0 : _params2.map(function (item) {
386
+ var _item$flat;
387
+ return (item === null || item === void 0 ? void 0 : item.flat) ? (_item$flat = item.flat()) === null || _item$flat === void 0 ? void 0 : _item$flat.map(toNumberNotNaN) : toNumberNotNaN(item);
388
+ });
389
+ } else if (fnName === "SUMIF") {
390
+ var _params3;
391
+ params = (_params3 = params) === null || _params3 === void 0 ? void 0 : _params3.map(function (item, index) {
392
+ if (index === 2 && Array.isArray(item)) {
393
+ return item === null || item === void 0 ? void 0 : item.map(function (cell) {
394
+ return [null, undefined, ""].includes(cell === null || cell === void 0 ? void 0 : cell[0]) ? [0] : cell;
395
+ });
396
+ }
397
+ return item;
398
+ });
399
+ }
400
+ return params;
401
+ }
388
402
 
389
403
  var SYMBOL$5 = '>';
390
404
  function func$5(exp1, exp2) {
package/dist/index.js CHANGED
@@ -379,13 +379,7 @@ function func$4(symbol) {
379
379
  if (symbolParts.length === 1) {
380
380
  if (formulajs__namespace[symbolParts[0]]) {
381
381
  foundFormula = true;
382
- if (symbolParts[0] === "SUMPRODUCT") {
383
- var _params2;
384
- params = (_params2 = params) === null || _params2 === void 0 ? void 0 : _params2.map(function (item) {
385
- var _item$flat;
386
- return (item === null || item === void 0 ? void 0 : item.flat) ? (_item$flat = item.flat()) === null || _item$flat === void 0 ? void 0 : _item$flat.map(toNumberNotNaN) : toNumberNotNaN(item);
387
- });
388
- }
382
+ params = tsParams(symbolParts[0], params);
389
383
  result = formulajs__namespace[symbolParts[0]].apply(formulajs__namespace, _toConsumableArray(params));
390
384
  }
391
385
  } else {
@@ -413,6 +407,26 @@ function func$4(symbol) {
413
407
  }
414
408
  func$4.isFactory = true;
415
409
  func$4.SYMBOL = SYMBOL$4;
410
+ function tsParams(fnName, params) {
411
+ if (fnName === "SUMPRODUCT") {
412
+ var _params2;
413
+ params = (_params2 = params) === null || _params2 === void 0 ? void 0 : _params2.map(function (item) {
414
+ var _item$flat;
415
+ return (item === null || item === void 0 ? void 0 : item.flat) ? (_item$flat = item.flat()) === null || _item$flat === void 0 ? void 0 : _item$flat.map(toNumberNotNaN) : toNumberNotNaN(item);
416
+ });
417
+ } else if (fnName === "SUMIF") {
418
+ var _params3;
419
+ params = (_params3 = params) === null || _params3 === void 0 ? void 0 : _params3.map(function (item, index) {
420
+ if (index === 2 && Array.isArray(item)) {
421
+ return item === null || item === void 0 ? void 0 : item.map(function (cell) {
422
+ return [null, undefined, ""].includes(cell === null || cell === void 0 ? void 0 : cell[0]) ? [0] : cell;
423
+ });
424
+ }
425
+ return item;
426
+ });
427
+ }
428
+ return params;
429
+ }
416
430
 
417
431
  var SYMBOL$5 = '>';
418
432
  function func$5(exp1, exp2) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leankylin-sheet/formula-parser",
3
- "version": "4.0.45",
3
+ "version": "4.0.46",
4
4
  "description": "Formula parser",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.esm.js",