@fileverse-dev/formulajs 4.4.11-mod-39 → 4.4.11-mod-38-patch-2

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/cjs/index.cjs CHANGED
@@ -3112,8 +3112,8 @@ F.TEST = (array1, array2) => {
3112
3112
  return sum
3113
3113
  };
3114
3114
 
3115
- const x1 = SUM(array1) / array1.length;
3116
- const x2 = SUM(array2) / array2.length;
3115
+ const x1 = SUM$1(array1) / array1.length;
3116
+ const x2 = SUM$1(array2) / array2.length;
3117
3117
  const sum1 = sumOfSquares(array1, x1) / (array1.length - 1);
3118
3118
  const sum2 = sumOfSquares(array2, x2) / (array2.length - 1);
3119
3119
 
@@ -5445,7 +5445,7 @@ function AGGREGATE(function_num, options, ref1, ref2) {
5445
5445
  case 8:
5446
5446
  return STDEV.P(ref1)
5447
5447
  case 9:
5448
- return SUM(ref1)
5448
+ return SUM$1(ref1)
5449
5449
  case 10:
5450
5450
  return VAR.S(ref1)
5451
5451
  case 11:
@@ -6948,7 +6948,7 @@ function SUBTOTAL(function_num, ref1) {
6948
6948
  case 8:
6949
6949
  return STDEV.P(ref1)
6950
6950
  case 9:
6951
- return SUM(ref1)
6951
+ return SUM$1(ref1)
6952
6952
  case 10:
6953
6953
  return VAR.S(ref1)
6954
6954
  case 11:
@@ -6971,7 +6971,7 @@ function SUBTOTAL(function_num, ref1) {
6971
6971
  case 108:
6972
6972
  return STDEV.P(ref1)
6973
6973
  case 109:
6974
- return SUM(ref1)
6974
+ return SUM$1(ref1)
6975
6975
  case 110:
6976
6976
  return VAR.S(ref1)
6977
6977
  case 111:
@@ -6986,7 +6986,7 @@ function SUBTOTAL(function_num, ref1) {
6986
6986
  *
6987
6987
  * @returns
6988
6988
  */
6989
- function SUM() {
6989
+ function SUM$1() {
6990
6990
  let result = 0;
6991
6991
 
6992
6992
  arrayEach(argsToArray(arguments), (value) => {
@@ -7001,7 +7001,7 @@ function SUM() {
7001
7001
 
7002
7002
  !isNaN(parsed) && (result += parsed);
7003
7003
  } else if (Array.isArray(value)) {
7004
- const inner_result = SUM.apply(null, value);
7004
+ const inner_result = SUM$1.apply(null, value);
7005
7005
 
7006
7006
  if (inner_result instanceof Error) {
7007
7007
  result = inner_result;
@@ -7066,7 +7066,7 @@ function SUMIF(range, criteria, sum_range) {
7066
7066
  */
7067
7067
  function SUMIFS() {
7068
7068
  const values = applyCriteria(...arguments);
7069
- return SUM(values)
7069
+ return SUM$1(values)
7070
7070
  }
7071
7071
 
7072
7072
  /**
@@ -11114,7 +11114,7 @@ function DSUM(database, field, criteria) {
11114
11114
  targetValues.push(targetFields[value]);
11115
11115
  });
11116
11116
 
11117
- return SUM(targetValues)
11117
+ return SUM$1(targetValues)
11118
11118
  }
11119
11119
 
11120
11120
  /**
@@ -13243,7 +13243,35 @@ if (scanKey === SERVICE_API_KEY.Gnosisscan) chainId = 'gnosis';
13243
13243
  }
13244
13244
  }
13245
13245
 
13246
- async function FIREFLY(platform, contentType, identifier, start = 0, end = 10) {
13246
+ function SUMTEST() {
13247
+ let result = 0;
13248
+
13249
+ arrayEach(argsToArray(arguments), (value) => {
13250
+ if (result instanceof Error) {
13251
+ return false
13252
+ } else if (value instanceof Error) {
13253
+ result = value;
13254
+ } else if (typeof value === 'number') {
13255
+ result += value;
13256
+ } else if (typeof value === 'string') {
13257
+ const parsed = parseFloat(value);
13258
+
13259
+ !isNaN(parsed) && (result += parsed);
13260
+ } else if (Array.isArray(value)) {
13261
+ const inner_result = SUM.apply(null, value);
13262
+
13263
+ if (inner_result instanceof Error) {
13264
+ result = inner_result;
13265
+ } else {
13266
+ result += inner_result;
13267
+ }
13268
+ }
13269
+ });
13270
+
13271
+ return result
13272
+ }
13273
+
13274
+ async function FIREFLY() {
13247
13275
  const API_KEY = window.localStorage.getItem(SERVICE_API_KEY.Firefly);
13248
13276
  if (!API_KEY) return `${SERVICE_API_KEY.Firefly}${ERROR_MESSAGES_FLAG.MISSING_KEY}`;
13249
13277
 
@@ -13262,6 +13290,9 @@ async function FIREFLY(platform, contentType, identifier, start = 0, end = 10) {
13262
13290
  }
13263
13291
  };
13264
13292
 
13293
+
13294
+ const [platform, contentType, identifier, start = 0, end = 10] = argsToArray(arguments);
13295
+
13265
13296
  const platformType = typeMap[platform]?.[contentType];
13266
13297
  if (!platformType) return `${SERVICE_API_KEY.Firefly}${ERROR_MESSAGES_FLAG.INVALID_TYPE}`;
13267
13298
 
@@ -13305,7 +13336,7 @@ async function FIREFLY(platform, contentType, identifier, start = 0, end = 10) {
13305
13336
 
13306
13337
 
13307
13338
 
13308
- async function BLOCKSCOUT(address, type, chain, startTimestamp, endTimestamp, page, offset) {
13339
+ async function BLOCKSCOUT() {
13309
13340
  if (!chain) {
13310
13341
  chain = 'ethereum';
13311
13342
  }
@@ -13314,6 +13345,8 @@ async function BLOCKSCOUT(address, type, chain, startTimestamp, endTimestamp, pa
13314
13345
  return 'TYPE_MISSING'
13315
13346
  }
13316
13347
 
13348
+ let [address, type, chain, startTimestamp, endTimestamp, page, offset] = argsToArray(arguments);
13349
+
13317
13350
  if (!startTimestamp) {
13318
13351
  const currentTimestamp = Date.now();
13319
13352
  startTimestamp = currentTimestamp - 30 * 24 * 60 * 60 * 1000;
@@ -13391,8 +13424,8 @@ async function BLOCKSCOUT(address, type, chain, startTimestamp, endTimestamp, pa
13391
13424
  }
13392
13425
  }
13393
13426
 
13394
- async function BASESCAN(...args) {
13395
- const [type, chain, address, startDate, endDate, page, limit] = args;
13427
+ async function BASESCAN() {
13428
+ const [type, chain, address, startDate, endDate, page, limit] = argsToArray(arguments);
13396
13429
  return handleScanRequest({
13397
13430
  scanKey: SERVICE_API_KEY.Basescan,
13398
13431
  baseUrl: 'https://api.basescan.org/api',
@@ -13405,8 +13438,8 @@ async function BASESCAN(...args) {
13405
13438
  offset:limit
13406
13439
  });
13407
13440
  }
13408
- async function GNOSISSCAN(...args) {
13409
- const [type, chain, address, startDate, endDate, page, limit] = args;
13441
+ async function GNOSISSCAN() {
13442
+ const [type, chain, address, startDate, endDate, page, limit] = argsToArray(arguments);
13410
13443
  return handleScanRequest({
13411
13444
  scanKey: SERVICE_API_KEY.Gnosisscan,
13412
13445
  baseUrl: 'https://api.gnosisscan.io/api',
@@ -13421,16 +13454,18 @@ async function GNOSISSCAN(...args) {
13421
13454
  }
13422
13455
 
13423
13456
  async function NEYNAR(
13424
- fid,
13425
- viewerFid,
13426
- sortType,
13427
- limit,
13428
- cursor
13457
+
13429
13458
  ) {
13430
13459
  const API_KEY = window.localStorage.getItem(SERVICE_API_KEY.Neynar);
13431
13460
  if (!API_KEY) return `${SERVICE_API_KEY.Neynar}${ERROR_MESSAGES_FLAG.MISSING_KEY}`;
13432
13461
 
13433
-
13462
+ const [
13463
+ fid,
13464
+ viewerFid,
13465
+ sortType,
13466
+ limit,
13467
+ cursor
13468
+ ] = argsToArray(arguments);
13434
13469
  const url = new URL('https://api.neynar.com/v2/farcaster/followers');
13435
13470
  url.searchParams.set('fid', fid.toString());
13436
13471
  url.searchParams.set('sort_type', sortType);
@@ -13461,18 +13496,22 @@ async function NEYNAR(
13461
13496
  return ERROR_MESSAGES_FLAG.DEFAULT;
13462
13497
  }
13463
13498
  }
13464
- async function GNOSISPAY({
13465
- cardId,
13466
- startDate,
13467
- endDate,
13468
- limit = 20,
13469
- offset = 0,
13470
- }) {
13499
+ async function GNOSISPAY(
13500
+
13501
+ ) {
13471
13502
  const apiKeyKey = SERVICE_API_KEY.GnosisPay;
13472
13503
  const API_KEY = window.localStorage.getItem(apiKeyKey);
13473
13504
  if (!API_KEY) return `${apiKeyKey}${ERROR_MESSAGES_FLAG.MISSING_KEY}`;
13474
13505
  if (!cardId) return `${apiKeyKey}${ERROR_MESSAGES_FLAG.INVALID_PARAM}`;
13475
13506
 
13507
+
13508
+
13509
+ const [ cardId,
13510
+ startDate,
13511
+ endDate,
13512
+ limit = 20,
13513
+ offset = 0] = argsToArray(arguments);
13514
+
13476
13515
  const url = new URL(`https://api.gnosispay.com/cards/${cardId}/transactions`);
13477
13516
  url.searchParams.set('limit', limit.toString());
13478
13517
  url.searchParams.set('offset', offset.toString());
@@ -13521,8 +13560,8 @@ async function GNOSISPAY({
13521
13560
 
13522
13561
 
13523
13562
 
13524
- async function ETHERSCAN(...args) {
13525
- const [type, chain, address, startDate, endDate, page, limit] = args;
13563
+ async function ETHERSCAN() {
13564
+ const [type, chain, address, startDate, endDate, page, limit] = argsToArray(arguments);
13526
13565
  return handleScanRequest({
13527
13566
  scanKey: SERVICE_API_KEY.Etherscan,
13528
13567
  baseUrl: 'https://api.etherscan.io/v2/api',
@@ -13537,7 +13576,7 @@ async function ETHERSCAN(...args) {
13537
13576
  }
13538
13577
 
13539
13578
 
13540
- async function COINGECKO(category, param1, param2, page = 1, perPage = 2) {
13579
+ async function COINGECKO() {
13541
13580
  const API_KEY = window.localStorage.getItem(SERVICE_API_KEY.Coingecko);
13542
13581
  if (!API_KEY) return `${SERVICE_API_KEY.Coingecko}${ERROR_MESSAGES_FLAG.MISSING_KEY}`;
13543
13582
 
@@ -13547,6 +13586,7 @@ async function COINGECKO(category, param1, param2, page = 1, perPage = 2) {
13547
13586
  };
13548
13587
 
13549
13588
  let url = '';
13589
+ const [category, param1, param2, page = 1, perPage = 2 ] = argsToArray(arguments);
13550
13590
  const lowerCategory = (category || '').toLowerCase();
13551
13591
 
13552
13592
  switch (lowerCategory) {
@@ -13652,7 +13692,11 @@ async function COINGECKO(category, param1, param2, page = 1, perPage = 2) {
13652
13692
 
13653
13693
 
13654
13694
 
13655
- async function EOA(
13695
+ async function EOA() {
13696
+
13697
+
13698
+
13699
+ const [
13656
13700
  addresses,
13657
13701
  category,
13658
13702
  chains,
@@ -13660,11 +13704,29 @@ async function EOA(
13660
13704
  endTime,
13661
13705
  page = 1,
13662
13706
  offset = 10,
13663
- ) {
13707
+ ] = argsToArray(arguments);
13708
+
13709
+ const someError = anyError(addresses, category, chains, startTime, endTime, page, offset);
13710
+
13711
+ if (someError) {
13712
+ return someError
13713
+ }
13714
+
13715
+
13664
13716
  const API_KEY = window.localStorage.getItem(SERVICE_API_KEY.Etherscan);
13665
13717
  if (!API_KEY) return `${SERVICE_API_KEY.Etherscan}${ERROR_MESSAGES_FLAG.MISSING_KEY}`;
13666
13718
 
13667
- const INPUTS = addresses.split(",").map(a => a.trim()).filter(Boolean);
13719
+
13720
+
13721
+ let INPUTS;
13722
+
13723
+ if(typeof addresses === 'string'){
13724
+ INPUTS = addresses.split(",").map(a => a.trim()).filter(Boolean);
13725
+ } else if (typeof addresses === 'object'){
13726
+ INPUTS = addresses;
13727
+ }
13728
+
13729
+
13668
13730
  const CHAINS = chains.split(",").map(c => c.trim()).filter(Boolean);
13669
13731
  const out = [];
13670
13732
 
@@ -13776,7 +13838,12 @@ async function FLVURL(token, vs_currencies) {
13776
13838
  });
13777
13839
  }
13778
13840
 
13779
- async function SAFE(address, utility, chain, limit, offset) {
13841
+ async function SAFE() {
13842
+
13843
+
13844
+
13845
+
13846
+ let [address, utility, chain, limit, offset] = argsToArray(arguments);
13780
13847
 
13781
13848
  if (typeof limit !== 'number' || limit < 0) return 'INVALID_LIMIT';
13782
13849
  if (typeof offset !== 'number' || offset < 0) return 'INVALID_OFFSET';
@@ -14169,11 +14236,12 @@ exports.STDEVS = STDEVS;
14169
14236
  exports.STEYX = STEYX;
14170
14237
  exports.SUBSTITUTE = SUBSTITUTE;
14171
14238
  exports.SUBTOTAL = SUBTOTAL;
14172
- exports.SUM = SUM;
14239
+ exports.SUM = SUM$1;
14173
14240
  exports.SUMIF = SUMIF;
14174
14241
  exports.SUMIFS = SUMIFS;
14175
14242
  exports.SUMPRODUCT = SUMPRODUCT;
14176
14243
  exports.SUMSQ = SUMSQ;
14244
+ exports.SUMTEST = SUMTEST;
14177
14245
  exports.SUMX2MY2 = SUMX2MY2;
14178
14246
  exports.SUMX2PY2 = SUMX2PY2;
14179
14247
  exports.SUMXMY2 = SUMXMY2;
@@ -41,6 +41,31 @@ var SERVICE_API_KEY = {
41
41
  GnosisPay: "GNOSIS_API_KEY"
42
42
  };
43
43
  var FUNCTION_LOCALE = [
44
+ {
45
+ n: "SUMTEST",
46
+ t: 0,
47
+ d: "Returns the sum of a series of numbers and/or cells.",
48
+ a: "Sum of a series of numbers and/or cells.",
49
+ m: [1, 255],
50
+ p: [
51
+ {
52
+ name: "value1",
53
+ detail: "The first number or range to add together.",
54
+ example: "A2:A100",
55
+ require: "m",
56
+ repeat: "n",
57
+ type: "rangeall"
58
+ },
59
+ {
60
+ name: "value2",
61
+ detail: "Additional numbers or ranges to add to `value1`.",
62
+ example: "2",
63
+ require: "o",
64
+ repeat: "y",
65
+ type: "rangeall"
66
+ }
67
+ ]
68
+ },
44
69
  {
45
70
  API_KEY: SERVICE_API_KEY.Firefly,
46
71
  LOGO: "https://firefly.social/android-chrome-192x192.png",
@@ -345,8 +370,8 @@ var FUNCTION_LOCALE = [
345
370
  },
346
371
  {
347
372
  name: "address",
348
- detail: "Wallet address / Ens name to query",
349
- example: `"vitalik.eth"`,
373
+ detail: "Wallet address to query",
374
+ example: `"0xc5102fE9359FD9a28f877a67E36B0F050d81a3CC"`,
350
375
  require: "o",
351
376
  type: "string"
352
377
  },
package/lib/esm/index.mjs CHANGED
@@ -3110,8 +3110,8 @@ F.TEST = (array1, array2) => {
3110
3110
  return sum
3111
3111
  };
3112
3112
 
3113
- const x1 = SUM(array1) / array1.length;
3114
- const x2 = SUM(array2) / array2.length;
3113
+ const x1 = SUM$1(array1) / array1.length;
3114
+ const x2 = SUM$1(array2) / array2.length;
3115
3115
  const sum1 = sumOfSquares(array1, x1) / (array1.length - 1);
3116
3116
  const sum2 = sumOfSquares(array2, x2) / (array2.length - 1);
3117
3117
 
@@ -5443,7 +5443,7 @@ function AGGREGATE(function_num, options, ref1, ref2) {
5443
5443
  case 8:
5444
5444
  return STDEV.P(ref1)
5445
5445
  case 9:
5446
- return SUM(ref1)
5446
+ return SUM$1(ref1)
5447
5447
  case 10:
5448
5448
  return VAR.S(ref1)
5449
5449
  case 11:
@@ -6946,7 +6946,7 @@ function SUBTOTAL(function_num, ref1) {
6946
6946
  case 8:
6947
6947
  return STDEV.P(ref1)
6948
6948
  case 9:
6949
- return SUM(ref1)
6949
+ return SUM$1(ref1)
6950
6950
  case 10:
6951
6951
  return VAR.S(ref1)
6952
6952
  case 11:
@@ -6969,7 +6969,7 @@ function SUBTOTAL(function_num, ref1) {
6969
6969
  case 108:
6970
6970
  return STDEV.P(ref1)
6971
6971
  case 109:
6972
- return SUM(ref1)
6972
+ return SUM$1(ref1)
6973
6973
  case 110:
6974
6974
  return VAR.S(ref1)
6975
6975
  case 111:
@@ -6984,7 +6984,7 @@ function SUBTOTAL(function_num, ref1) {
6984
6984
  *
6985
6985
  * @returns
6986
6986
  */
6987
- function SUM() {
6987
+ function SUM$1() {
6988
6988
  let result = 0;
6989
6989
 
6990
6990
  arrayEach(argsToArray(arguments), (value) => {
@@ -6999,7 +6999,7 @@ function SUM() {
6999
6999
 
7000
7000
  !isNaN(parsed) && (result += parsed);
7001
7001
  } else if (Array.isArray(value)) {
7002
- const inner_result = SUM.apply(null, value);
7002
+ const inner_result = SUM$1.apply(null, value);
7003
7003
 
7004
7004
  if (inner_result instanceof Error) {
7005
7005
  result = inner_result;
@@ -7064,7 +7064,7 @@ function SUMIF(range, criteria, sum_range) {
7064
7064
  */
7065
7065
  function SUMIFS() {
7066
7066
  const values = applyCriteria(...arguments);
7067
- return SUM(values)
7067
+ return SUM$1(values)
7068
7068
  }
7069
7069
 
7070
7070
  /**
@@ -11112,7 +11112,7 @@ function DSUM(database, field, criteria) {
11112
11112
  targetValues.push(targetFields[value]);
11113
11113
  });
11114
11114
 
11115
- return SUM(targetValues)
11115
+ return SUM$1(targetValues)
11116
11116
  }
11117
11117
 
11118
11118
  /**
@@ -13241,7 +13241,35 @@ if (scanKey === SERVICE_API_KEY.Gnosisscan) chainId = 'gnosis';
13241
13241
  }
13242
13242
  }
13243
13243
 
13244
- async function FIREFLY(platform, contentType, identifier, start = 0, end = 10) {
13244
+ function SUMTEST() {
13245
+ let result = 0;
13246
+
13247
+ arrayEach(argsToArray(arguments), (value) => {
13248
+ if (result instanceof Error) {
13249
+ return false
13250
+ } else if (value instanceof Error) {
13251
+ result = value;
13252
+ } else if (typeof value === 'number') {
13253
+ result += value;
13254
+ } else if (typeof value === 'string') {
13255
+ const parsed = parseFloat(value);
13256
+
13257
+ !isNaN(parsed) && (result += parsed);
13258
+ } else if (Array.isArray(value)) {
13259
+ const inner_result = SUM.apply(null, value);
13260
+
13261
+ if (inner_result instanceof Error) {
13262
+ result = inner_result;
13263
+ } else {
13264
+ result += inner_result;
13265
+ }
13266
+ }
13267
+ });
13268
+
13269
+ return result
13270
+ }
13271
+
13272
+ async function FIREFLY() {
13245
13273
  const API_KEY = window.localStorage.getItem(SERVICE_API_KEY.Firefly);
13246
13274
  if (!API_KEY) return `${SERVICE_API_KEY.Firefly}${ERROR_MESSAGES_FLAG.MISSING_KEY}`;
13247
13275
 
@@ -13260,6 +13288,9 @@ async function FIREFLY(platform, contentType, identifier, start = 0, end = 10) {
13260
13288
  }
13261
13289
  };
13262
13290
 
13291
+
13292
+ const [platform, contentType, identifier, start = 0, end = 10] = argsToArray(arguments);
13293
+
13263
13294
  const platformType = typeMap[platform]?.[contentType];
13264
13295
  if (!platformType) return `${SERVICE_API_KEY.Firefly}${ERROR_MESSAGES_FLAG.INVALID_TYPE}`;
13265
13296
 
@@ -13303,7 +13334,7 @@ async function FIREFLY(platform, contentType, identifier, start = 0, end = 10) {
13303
13334
 
13304
13335
 
13305
13336
 
13306
- async function BLOCKSCOUT(address, type, chain, startTimestamp, endTimestamp, page, offset) {
13337
+ async function BLOCKSCOUT() {
13307
13338
  if (!chain) {
13308
13339
  chain = 'ethereum';
13309
13340
  }
@@ -13312,6 +13343,8 @@ async function BLOCKSCOUT(address, type, chain, startTimestamp, endTimestamp, pa
13312
13343
  return 'TYPE_MISSING'
13313
13344
  }
13314
13345
 
13346
+ let [address, type, chain, startTimestamp, endTimestamp, page, offset] = argsToArray(arguments);
13347
+
13315
13348
  if (!startTimestamp) {
13316
13349
  const currentTimestamp = Date.now();
13317
13350
  startTimestamp = currentTimestamp - 30 * 24 * 60 * 60 * 1000;
@@ -13389,8 +13422,8 @@ async function BLOCKSCOUT(address, type, chain, startTimestamp, endTimestamp, pa
13389
13422
  }
13390
13423
  }
13391
13424
 
13392
- async function BASESCAN(...args) {
13393
- const [type, chain, address, startDate, endDate, page, limit] = args;
13425
+ async function BASESCAN() {
13426
+ const [type, chain, address, startDate, endDate, page, limit] = argsToArray(arguments);
13394
13427
  return handleScanRequest({
13395
13428
  scanKey: SERVICE_API_KEY.Basescan,
13396
13429
  baseUrl: 'https://api.basescan.org/api',
@@ -13403,8 +13436,8 @@ async function BASESCAN(...args) {
13403
13436
  offset:limit
13404
13437
  });
13405
13438
  }
13406
- async function GNOSISSCAN(...args) {
13407
- const [type, chain, address, startDate, endDate, page, limit] = args;
13439
+ async function GNOSISSCAN() {
13440
+ const [type, chain, address, startDate, endDate, page, limit] = argsToArray(arguments);
13408
13441
  return handleScanRequest({
13409
13442
  scanKey: SERVICE_API_KEY.Gnosisscan,
13410
13443
  baseUrl: 'https://api.gnosisscan.io/api',
@@ -13419,16 +13452,18 @@ async function GNOSISSCAN(...args) {
13419
13452
  }
13420
13453
 
13421
13454
  async function NEYNAR(
13422
- fid,
13423
- viewerFid,
13424
- sortType,
13425
- limit,
13426
- cursor
13455
+
13427
13456
  ) {
13428
13457
  const API_KEY = window.localStorage.getItem(SERVICE_API_KEY.Neynar);
13429
13458
  if (!API_KEY) return `${SERVICE_API_KEY.Neynar}${ERROR_MESSAGES_FLAG.MISSING_KEY}`;
13430
13459
 
13431
-
13460
+ const [
13461
+ fid,
13462
+ viewerFid,
13463
+ sortType,
13464
+ limit,
13465
+ cursor
13466
+ ] = argsToArray(arguments);
13432
13467
  const url = new URL('https://api.neynar.com/v2/farcaster/followers');
13433
13468
  url.searchParams.set('fid', fid.toString());
13434
13469
  url.searchParams.set('sort_type', sortType);
@@ -13459,18 +13494,22 @@ async function NEYNAR(
13459
13494
  return ERROR_MESSAGES_FLAG.DEFAULT;
13460
13495
  }
13461
13496
  }
13462
- async function GNOSISPAY({
13463
- cardId,
13464
- startDate,
13465
- endDate,
13466
- limit = 20,
13467
- offset = 0,
13468
- }) {
13497
+ async function GNOSISPAY(
13498
+
13499
+ ) {
13469
13500
  const apiKeyKey = SERVICE_API_KEY.GnosisPay;
13470
13501
  const API_KEY = window.localStorage.getItem(apiKeyKey);
13471
13502
  if (!API_KEY) return `${apiKeyKey}${ERROR_MESSAGES_FLAG.MISSING_KEY}`;
13472
13503
  if (!cardId) return `${apiKeyKey}${ERROR_MESSAGES_FLAG.INVALID_PARAM}`;
13473
13504
 
13505
+
13506
+
13507
+ const [ cardId,
13508
+ startDate,
13509
+ endDate,
13510
+ limit = 20,
13511
+ offset = 0] = argsToArray(arguments);
13512
+
13474
13513
  const url = new URL(`https://api.gnosispay.com/cards/${cardId}/transactions`);
13475
13514
  url.searchParams.set('limit', limit.toString());
13476
13515
  url.searchParams.set('offset', offset.toString());
@@ -13519,8 +13558,8 @@ async function GNOSISPAY({
13519
13558
 
13520
13559
 
13521
13560
 
13522
- async function ETHERSCAN(...args) {
13523
- const [type, chain, address, startDate, endDate, page, limit] = args;
13561
+ async function ETHERSCAN() {
13562
+ const [type, chain, address, startDate, endDate, page, limit] = argsToArray(arguments);
13524
13563
  return handleScanRequest({
13525
13564
  scanKey: SERVICE_API_KEY.Etherscan,
13526
13565
  baseUrl: 'https://api.etherscan.io/v2/api',
@@ -13535,7 +13574,7 @@ async function ETHERSCAN(...args) {
13535
13574
  }
13536
13575
 
13537
13576
 
13538
- async function COINGECKO(category, param1, param2, page = 1, perPage = 2) {
13577
+ async function COINGECKO() {
13539
13578
  const API_KEY = window.localStorage.getItem(SERVICE_API_KEY.Coingecko);
13540
13579
  if (!API_KEY) return `${SERVICE_API_KEY.Coingecko}${ERROR_MESSAGES_FLAG.MISSING_KEY}`;
13541
13580
 
@@ -13545,6 +13584,7 @@ async function COINGECKO(category, param1, param2, page = 1, perPage = 2) {
13545
13584
  };
13546
13585
 
13547
13586
  let url = '';
13587
+ const [category, param1, param2, page = 1, perPage = 2 ] = argsToArray(arguments);
13548
13588
  const lowerCategory = (category || '').toLowerCase();
13549
13589
 
13550
13590
  switch (lowerCategory) {
@@ -13650,7 +13690,11 @@ async function COINGECKO(category, param1, param2, page = 1, perPage = 2) {
13650
13690
 
13651
13691
 
13652
13692
 
13653
- async function EOA(
13693
+ async function EOA() {
13694
+
13695
+
13696
+
13697
+ const [
13654
13698
  addresses,
13655
13699
  category,
13656
13700
  chains,
@@ -13658,11 +13702,29 @@ async function EOA(
13658
13702
  endTime,
13659
13703
  page = 1,
13660
13704
  offset = 10,
13661
- ) {
13705
+ ] = argsToArray(arguments);
13706
+
13707
+ const someError = anyError(addresses, category, chains, startTime, endTime, page, offset);
13708
+
13709
+ if (someError) {
13710
+ return someError
13711
+ }
13712
+
13713
+
13662
13714
  const API_KEY = window.localStorage.getItem(SERVICE_API_KEY.Etherscan);
13663
13715
  if (!API_KEY) return `${SERVICE_API_KEY.Etherscan}${ERROR_MESSAGES_FLAG.MISSING_KEY}`;
13664
13716
 
13665
- const INPUTS = addresses.split(",").map(a => a.trim()).filter(Boolean);
13717
+
13718
+
13719
+ let INPUTS;
13720
+
13721
+ if(typeof addresses === 'string'){
13722
+ INPUTS = addresses.split(",").map(a => a.trim()).filter(Boolean);
13723
+ } else if (typeof addresses === 'object'){
13724
+ INPUTS = addresses;
13725
+ }
13726
+
13727
+
13666
13728
  const CHAINS = chains.split(",").map(c => c.trim()).filter(Boolean);
13667
13729
  const out = [];
13668
13730
 
@@ -13774,7 +13836,12 @@ async function FLVURL(token, vs_currencies) {
13774
13836
  });
13775
13837
  }
13776
13838
 
13777
- async function SAFE(address, utility, chain, limit, offset) {
13839
+ async function SAFE() {
13840
+
13841
+
13842
+
13843
+
13844
+ let [address, utility, chain, limit, offset] = argsToArray(arguments);
13778
13845
 
13779
13846
  if (typeof limit !== 'number' || limit < 0) return 'INVALID_LIMIT';
13780
13847
  if (typeof offset !== 'number' || offset < 0) return 'INVALID_OFFSET';
@@ -13818,4 +13885,4 @@ async function SAFE(address, utility, chain, limit, offset) {
13818
13885
 
13819
13886
  const utils = { errors, symbols, date };
13820
13887
 
13821
- export { ABS, ACCRINT, ACOS, ACOSH, ACOT, ACOTH, AGGREGATE, AND, ARABIC, ASIN, ASINH, ATAN, ATAN2, ATANH, AVEDEV, AVERAGE, AVERAGEA, AVERAGEIF, AVERAGEIFS, BASE, BASESCAN, BESSELI, BESSELJ, BESSELK, BESSELY, BETA, BETADIST, BETAINV, BIN2DEC, BIN2HEX, BIN2OCT, BINOM, BINOMDIST, BITAND, BITLSHIFT, BITOR, BITRSHIFT, BITXOR, BLOCKSCOUT, CEILING, CEILINGMATH, CEILINGPRECISE, CHAR, CHIDIST, CHIDISTRT, CHIINV, CHIINVRT, CHISQ, CHITEST, CHOOSE, CLEAN, CODE, COINGECKO, COLUMN, COLUMNS, COMBIN, COMBINA, COMPLEX, CONCAT, CONCATENATE, CONFIDENCE, CONVERT, CORREL, COS, COSH, COT, COTH, COUNT, COUNTA, COUNTBLANK, COUNTIF, COUNTIFS, COUPDAYS, COVAR, COVARIANCE, COVARIANCEP, COVARIANCES, CRITBINOM, CSC, CSCH, CUMIPMT, CUMPRINC, DATE, DATEDIF, DATEVALUE, DAVERAGE, DAY, DAYS, DAYS360, DB, DCOUNT, DCOUNTA, DDB, DEC2BIN, DEC2HEX, DEC2OCT, DECIMAL, DEGREES, DELTA, DEVSQ, DGET, DISC, DMAX, DMIN, DOLLAR, DOLLARDE, DOLLARFR, DPRODUCT, DSTDEV, DSTDEVP, DSUM, DVAR, DVARP, EDATE, EFFECT, EOA, EOMONTH, ERF, ERFC, ERFCPRECISE, ERFPRECISE, ERROR, ETHERSCAN, EVEN, EXACT, EXP, EXPON, EXPONDIST, F, FACT, FACTDOUBLE, FALSE, FDIST, FDISTRT, FIND, FINV, FINVRT, FIREFLY, FISHER, FISHERINV, FIXED, FLOOR, FLOORMATH, FLOORPRECISE, FLVURL, FORECAST, FREQUENCY, FTEST, FV, FVSCHEDULE, GAMMA, GAMMADIST, GAMMAINV, GAMMALN, GAMMALNPRECISE, GAUSS, GCD, GEOMEAN, GESTEP, GNOSISPAY, GNOSISSCAN, GROWTH, HARMEAN, HEX2BIN, HEX2DEC, HEX2OCT, HLOOKUP, HOUR, HYPGEOM, HYPGEOMDIST, IF, IFERROR, IFNA, IFS, IMABS, IMAGINARY, IMARGUMENT, IMCONJUGATE, IMCOS, IMCOSH, IMCOT, IMCSC, IMCSCH, IMDIV, IMEXP, IMLN, IMLOG10, IMLOG2, IMPOWER, IMPRODUCT, IMREAL, IMSEC, IMSECH, IMSIN, IMSINH, IMSQRT, IMSUB, IMSUM, IMTAN, INDEX, INT, INTERCEPT, IPMT, IRR, ISBLANK, ISDATE, ISERR, ISERROR, ISEVEN, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISO, ISODD, ISOWEEKNUM, ISPMT, ISTEXT, KURT, LARGE, LCM, LEFT, LEN, LINEST, LN, LOG, LOG10, LOGEST, LOGINV, LOGNORM, LOGNORMDIST, LOGNORMINV, LOOKUP, LOWER, MATCH, MAX, MAXA, MAXIFS, MEDIAN, MID, MIN, MINA, MINIFS, MINUTE, MIRR, MMULT, MOD, MODE, MODEMULT, MODESNGL, MONTH, MROUND, MULTINOMIAL, MUNIT, N, NA, NEGBINOM, NEGBINOMDIST, NETWORKDAYS, NETWORKDAYSINTL, NETWORKDAYS_INTL, NEYNAR, NOMINAL, NORM, NORMDIST, NORMINV, NORMSDIST, NORMSINV, NOT, NOW, NPER, NPV, NUMBERVALUE, OCT2BIN, OCT2DEC, OCT2HEX, ODD, OR, PDURATION, PEARSON, PERCENTILE, PERCENTILEEXC, PERCENTILEINC, PERCENTRANK, PERCENTRANKEXC, PERCENTRANKINC, PERMUT, PERMUTATIONA, PHI, PI, PMT, PNL, POISSON, POISSONDIST, POWER, PPMT, PRICEDISC, PROB, PRODUCT, PROPER, PV, QUARTILE, QUARTILEEXC, QUARTILEINC, QUOTIENT, RADIANS, RAND, RANDBETWEEN, RANK, RANKAVG, RANKEQ, RATE, REPLACE, REPT, RIGHT, ROMAN, ROUND, ROUNDDOWN, ROUNDUP, ROW, ROWS, RRI, RSQ, SAFE, SEARCH, SEC, SECH, SECOND, SERIESSUM, SIGN, SIN, SINH, SKEW, SKEWP, SLN, SLOPE, SMALL, SORT, SQRT, SQRTPI, STANDARDIZE, STDEV, STDEVA, STDEVP, STDEVPA, STDEVS, STEYX, SUBSTITUTE, SUBTOTAL, SUM, SUMIF, SUMIFS, SUMPRODUCT, SUMSQ, SUMX2MY2, SUMX2PY2, SUMXMY2, SWITCH, SYD, T, TAN, TANH, TBILLEQ, TBILLPRICE, TBILLYIELD, TDIST, TDISTRT, TEXT, TEXTJOIN, TIME, TIMEVALUE, TINV, TODAY, TRANSPOSE, TREND, TRIM, TRIMMEAN, TRUE, TRUNC, TTEST, TYPE, UNICHAR, UNICODE, UNIQUE, UPPER, VALUE, VAR, VARA, VARP, VARPA, VARS, VLOOKUP, WEEKDAY, WEEKNUM, WEIBULL, WEIBULLDIST, WORKDAY, WORKDAYINTL, WORKDAY_INTL, XIRR, XNPV, XOR, YEAR, YEARFRAC, Z, ZTEST, utils };
13888
+ export { ABS, ACCRINT, ACOS, ACOSH, ACOT, ACOTH, AGGREGATE, AND, ARABIC, ASIN, ASINH, ATAN, ATAN2, ATANH, AVEDEV, AVERAGE, AVERAGEA, AVERAGEIF, AVERAGEIFS, BASE, BASESCAN, BESSELI, BESSELJ, BESSELK, BESSELY, BETA, BETADIST, BETAINV, BIN2DEC, BIN2HEX, BIN2OCT, BINOM, BINOMDIST, BITAND, BITLSHIFT, BITOR, BITRSHIFT, BITXOR, BLOCKSCOUT, CEILING, CEILINGMATH, CEILINGPRECISE, CHAR, CHIDIST, CHIDISTRT, CHIINV, CHIINVRT, CHISQ, CHITEST, CHOOSE, CLEAN, CODE, COINGECKO, COLUMN, COLUMNS, COMBIN, COMBINA, COMPLEX, CONCAT, CONCATENATE, CONFIDENCE, CONVERT, CORREL, COS, COSH, COT, COTH, COUNT, COUNTA, COUNTBLANK, COUNTIF, COUNTIFS, COUPDAYS, COVAR, COVARIANCE, COVARIANCEP, COVARIANCES, CRITBINOM, CSC, CSCH, CUMIPMT, CUMPRINC, DATE, DATEDIF, DATEVALUE, DAVERAGE, DAY, DAYS, DAYS360, DB, DCOUNT, DCOUNTA, DDB, DEC2BIN, DEC2HEX, DEC2OCT, DECIMAL, DEGREES, DELTA, DEVSQ, DGET, DISC, DMAX, DMIN, DOLLAR, DOLLARDE, DOLLARFR, DPRODUCT, DSTDEV, DSTDEVP, DSUM, DVAR, DVARP, EDATE, EFFECT, EOA, EOMONTH, ERF, ERFC, ERFCPRECISE, ERFPRECISE, ERROR, ETHERSCAN, EVEN, EXACT, EXP, EXPON, EXPONDIST, F, FACT, FACTDOUBLE, FALSE, FDIST, FDISTRT, FIND, FINV, FINVRT, FIREFLY, FISHER, FISHERINV, FIXED, FLOOR, FLOORMATH, FLOORPRECISE, FLVURL, FORECAST, FREQUENCY, FTEST, FV, FVSCHEDULE, GAMMA, GAMMADIST, GAMMAINV, GAMMALN, GAMMALNPRECISE, GAUSS, GCD, GEOMEAN, GESTEP, GNOSISPAY, GNOSISSCAN, GROWTH, HARMEAN, HEX2BIN, HEX2DEC, HEX2OCT, HLOOKUP, HOUR, HYPGEOM, HYPGEOMDIST, IF, IFERROR, IFNA, IFS, IMABS, IMAGINARY, IMARGUMENT, IMCONJUGATE, IMCOS, IMCOSH, IMCOT, IMCSC, IMCSCH, IMDIV, IMEXP, IMLN, IMLOG10, IMLOG2, IMPOWER, IMPRODUCT, IMREAL, IMSEC, IMSECH, IMSIN, IMSINH, IMSQRT, IMSUB, IMSUM, IMTAN, INDEX, INT, INTERCEPT, IPMT, IRR, ISBLANK, ISDATE, ISERR, ISERROR, ISEVEN, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISO, ISODD, ISOWEEKNUM, ISPMT, ISTEXT, KURT, LARGE, LCM, LEFT, LEN, LINEST, LN, LOG, LOG10, LOGEST, LOGINV, LOGNORM, LOGNORMDIST, LOGNORMINV, LOOKUP, LOWER, MATCH, MAX, MAXA, MAXIFS, MEDIAN, MID, MIN, MINA, MINIFS, MINUTE, MIRR, MMULT, MOD, MODE, MODEMULT, MODESNGL, MONTH, MROUND, MULTINOMIAL, MUNIT, N, NA, NEGBINOM, NEGBINOMDIST, NETWORKDAYS, NETWORKDAYSINTL, NETWORKDAYS_INTL, NEYNAR, NOMINAL, NORM, NORMDIST, NORMINV, NORMSDIST, NORMSINV, NOT, NOW, NPER, NPV, NUMBERVALUE, OCT2BIN, OCT2DEC, OCT2HEX, ODD, OR, PDURATION, PEARSON, PERCENTILE, PERCENTILEEXC, PERCENTILEINC, PERCENTRANK, PERCENTRANKEXC, PERCENTRANKINC, PERMUT, PERMUTATIONA, PHI, PI, PMT, PNL, POISSON, POISSONDIST, POWER, PPMT, PRICEDISC, PROB, PRODUCT, PROPER, PV, QUARTILE, QUARTILEEXC, QUARTILEINC, QUOTIENT, RADIANS, RAND, RANDBETWEEN, RANK, RANKAVG, RANKEQ, RATE, REPLACE, REPT, RIGHT, ROMAN, ROUND, ROUNDDOWN, ROUNDUP, ROW, ROWS, RRI, RSQ, SAFE, SEARCH, SEC, SECH, SECOND, SERIESSUM, SIGN, SIN, SINH, SKEW, SKEWP, SLN, SLOPE, SMALL, SORT, SQRT, SQRTPI, STANDARDIZE, STDEV, STDEVA, STDEVP, STDEVPA, STDEVS, STEYX, SUBSTITUTE, SUBTOTAL, SUM$1 as SUM, SUMIF, SUMIFS, SUMPRODUCT, SUMSQ, SUMTEST, SUMX2MY2, SUMX2PY2, SUMXMY2, SWITCH, SYD, T, TAN, TANH, TBILLEQ, TBILLPRICE, TBILLYIELD, TDIST, TDISTRT, TEXT, TEXTJOIN, TIME, TIMEVALUE, TINV, TODAY, TRANSPOSE, TREND, TRIM, TRIMMEAN, TRUE, TRUNC, TTEST, TYPE, UNICHAR, UNICODE, UNIQUE, UPPER, VALUE, VAR, VARA, VARP, VARPA, VARS, VLOOKUP, WEEKDAY, WEEKNUM, WEIBULL, WEIBULLDIST, WORKDAY, WORKDAYINTL, WORKDAY_INTL, XIRR, XNPV, XOR, YEAR, YEARFRAC, Z, ZTEST, utils };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fileverse-dev/formulajs",
3
- "version": "4.4.11-mod-39",
3
+ "version": "4.4.11-mod-38-patch-2",
4
4
  "description": "JavaScript implementation of most Microsoft Excel formula functions",
5
5
  "author": "Formulajs",
6
6
  "publishConfig": {