@fileverse-dev/formulajs 4.4.11-mod-18-safe-patch-1 → 4.4.11-mod-19-patch-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.
package/lib/cjs/index.cjs CHANGED
@@ -549,10 +549,25 @@ function parseDate(date) {
549
549
  }
550
550
 
551
551
  if (typeof date === 'string') {
552
- date = /(\d{4})-(\d\d?)-(\d\d?)$/.test(date) ? new Date(date + 'T00:00:00.000') : new Date(date);
552
+ // Check for YYYY-MM-DD (ISO format)
553
+ if (/^\d{4}-\d{1,2}-\d{1,2}$/.test(date)) {
554
+ return new Date(date + 'T00:00:00.000')
555
+ }
556
+
557
+ // Check for DD/MM/YYYY
558
+ const match = /^(\d{1,2})\/(\d{1,2})\/(\d{4})$/.exec(date);
559
+ if (match) {
560
+ const [, day, month, year] = match.map(Number);
561
+ const d = new Date(year, month - 1, day);
562
+ if (!isNaN(d)) {
563
+ return d
564
+ }
565
+ }
553
566
 
554
- if (!isNaN(date)) {
555
- return date
567
+ // Fallback for other string formats
568
+ const parsed = new Date(date);
569
+ if (!isNaN(parsed)) {
570
+ return parsed
556
571
  }
557
572
  }
558
573
 
@@ -13024,19 +13039,13 @@ function SWITCH() {
13024
13039
  const SERVICE_API_KEY = {
13025
13040
  Etherscan: "ETHERSCAN_API_KEY",
13026
13041
  Coingecko: "COINGECKO_API_KEY",
13027
- Safe: "SAFE_API_KEY",
13028
13042
  };
13029
13043
 
13030
13044
  const CHAIN_ID_MAP = {
13031
- ethereum: 1,
13032
- gnosis: 100,
13033
- base: 8453,
13034
- };
13035
-
13036
- const SAFE_CHAIN_MAP = {
13037
- ethereum: 'eth',
13038
- gnosis: 'gno',
13039
- };
13045
+ ethereum: 1,
13046
+ gnosis: 100,
13047
+ base: 8453,
13048
+ };
13040
13049
 
13041
13050
  const fromTimeStampToBlock = async (timestamp, chain, apiKey) => {
13042
13051
  if(!timestamp || !chain || !apiKey) return
@@ -13107,7 +13116,7 @@ async function GETPRICE(token, vs_currencies) {
13107
13116
  }
13108
13117
  }
13109
13118
 
13110
- async function OX(address, categories, chain, startTime, endTime) {
13119
+ async function EOA(address, categories, chain, startTime, endTime) {
13111
13120
  const API_KEYS = {
13112
13121
  ethereum: window.localStorage.getItem(SERVICE_API_KEY.Etherscan),
13113
13122
  gnosis: window.localStorage.getItem(SERVICE_API_KEY.Gnosisscan),
@@ -13119,12 +13128,12 @@ async function OX(address, categories, chain, startTime, endTime) {
13119
13128
 
13120
13129
  let action = '';
13121
13130
  if (categories === 'txns') action = 'account.txlist';
13122
- else { action = 'account.balance'; } let timeQuery = '';
13123
- if (!isNaN(startTime) && !isNaN(endTime)) {
13124
- const startBlock = await fromTimeStampToBlock(startTime, chain, apiKey);
13125
- const endBlock = await fromTimeStampToBlock(endTime, chain, apiKey);
13131
+ else {action = 'account.balance';} let timeQuery = '';
13132
+ if(!isNaN(startTime) && !isNaN(endTime)){
13133
+ const startBlock = await fromTimeStampToBlock(startTime, chain, apiKey);
13134
+ const endBlock = await fromTimeStampToBlock(endTime, chain, apiKey);
13126
13135
  timeQuery = `&startblock=${startBlock}&endblock=${endBlock}`;
13127
- } else if (categories === 'balance') {
13136
+ } else if(categories === 'balance') {
13128
13137
  timeQuery = `&tag=latest`;
13129
13138
  } else {
13130
13139
  throw new Error('Start and End Time is required for querying transaction list ')
@@ -13148,45 +13157,11 @@ async function OX(address, categories, chain, startTime, endTime) {
13148
13157
  async function FLVURL(token, vs_currencies) {
13149
13158
  return new Promise((resolve) => {
13150
13159
  setTimeout(() => {
13151
- resolve([{ "Yoo": "gotcha" }]);
13160
+ resolve([{"Yoo": "gotcha"}]);
13152
13161
  }, 10000);
13153
13162
  });
13154
13163
  }
13155
13164
 
13156
- async function SAFE(address, utility, chain, limit, offset) {
13157
-
13158
- if (typeof limit !== 'number' || limit < 0) return 'INVALID_LIMIT';
13159
- if (typeof offset !== 'number' || offset < 0) return 'INVALID_OFFSET';
13160
- if (utility !== 'txns') return 'UTILITY IS NOT SUPPORTED';
13161
-
13162
- const apiKey = window.localStorage.getItem(SERVICE_API_KEY.Safe);
13163
- const chainIdentifier = SAFE_CHAIN_MAP[chain];
13164
-
13165
- if (!apiKey) return `${SERVICE_API_KEY.Safe}_MISSING`;
13166
- if (!chainIdentifier) return 'CHAIN IS NOT SUPPORTED';
13167
-
13168
- const url = `https://api.safe.global/tx-service/${chainIdentifier}/api/v2/safes/${address}/multisig-transactions?limit=${limit}&offset=${offset}`;
13169
- try {
13170
- const response = await fetch(url,
13171
- {
13172
- headers: {
13173
- 'Authorization': `Bearer ${apiKey}`,
13174
- },
13175
- }
13176
- );
13177
- if (!response.ok) throw new Error(`HTTP error! Status: ${response.status}`);
13178
- const json = await response.json();
13179
- if (!Array.isArray(json.results)) {
13180
- return "INVALID API RESPONSE";
13181
- }
13182
- // remove nested structure from the response
13183
- return json.results.map(({ confirmations, dataDecoded, ...rest }) => rest);
13184
- } catch (e) {
13185
- console.log(e);
13186
- return "ERROR IN FETCHING";
13187
- }
13188
- }
13189
-
13190
13165
  const utils = { errors, symbols, date };
13191
13166
 
13192
13167
  exports.ABS = ABS;
@@ -13301,6 +13276,7 @@ exports.DVAR = DVAR;
13301
13276
  exports.DVARP = DVARP;
13302
13277
  exports.EDATE = EDATE;
13303
13278
  exports.EFFECT = EFFECT;
13279
+ exports.EOA = EOA;
13304
13280
  exports.EOMONTH = EOMONTH;
13305
13281
  exports.ERF = ERF;
13306
13282
  exports.ERFC = ERFC;
@@ -13458,7 +13434,6 @@ exports.OCT2DEC = OCT2DEC;
13458
13434
  exports.OCT2HEX = OCT2HEX;
13459
13435
  exports.ODD = ODD;
13460
13436
  exports.OR = OR;
13461
- exports.OX = OX;
13462
13437
  exports.PDURATION = PDURATION;
13463
13438
  exports.PEARSON = PEARSON;
13464
13439
  exports.PERCENTILE = PERCENTILE;
@@ -13504,7 +13479,6 @@ exports.ROW = ROW;
13504
13479
  exports.ROWS = ROWS;
13505
13480
  exports.RRI = RRI;
13506
13481
  exports.RSQ = RSQ;
13507
- exports.SAFE = SAFE;
13508
13482
  exports.SEARCH = SEARCH;
13509
13483
  exports.SEC = SEC;
13510
13484
  exports.SECH = SECH;
@@ -1,8 +1,7 @@
1
1
  // src/crypto-constants.js
2
2
  var SERVICE_API_KEY = {
3
3
  Etherscan: "ETHERSCAN_API_KEY",
4
- Coingecko: "COINGECKO_API_KEY",
5
- Safe: "SAFE_API_KEY"
4
+ Coingecko: "COINGECKO_API_KEY"
6
5
  };
7
6
  var FUNCTION_LOCALE = [
8
7
  {
@@ -44,7 +43,7 @@ var FUNCTION_LOCALE = [
44
43
  LOGO: "https://raw.githubusercontent.com/mritunjayz/github-storage/refs/heads/main/1689874988430.jpeg",
45
44
  BRAND_COLOR: "#F6F7F8",
46
45
  BRAND_SECONDARY_COLOR: "#21325B",
47
- n: "0x",
46
+ n: "EOA",
48
47
  t: 20,
49
48
  d: "Fetches address data like transactions, balances, or portfolio info from multiple supported chains.",
50
49
  a: "Dynamically queries blockchain data such as transactions, balances by resolving time ranges to block ranges.",
@@ -123,46 +122,6 @@ var FUNCTION_LOCALE = [
123
122
  require: "m"
124
123
  }
125
124
  ]
126
- },
127
- {
128
- n: "SAFE",
129
- t: 20,
130
- d: "Query the list of transactions performed by a Safe address, with optional pagination.",
131
- a: "Query the list of transactions performed by a Safe address, with optional pagination.",
132
- p: [
133
- {
134
- name: "address",
135
- detail: "The address to query, in hexadecimal format.",
136
- example: `"0xc5102fE9359FD9a28f877a67E36B0F050d81a3CC"`,
137
- require: "m"
138
- },
139
- {
140
- name: "utility",
141
- detail: "The utility to query, supported values: 'txns'.",
142
- example: `"txns"`,
143
- require: "m"
144
- },
145
- {
146
- name: "chain",
147
- detail: "The chain to query, supported values: 'ethereum', 'gnosis'.",
148
- example: `"ethereum"`,
149
- require: "m"
150
- },
151
- {
152
- name: "limit",
153
- detail: "The number of transactions to return, default is 100.",
154
- example: `100`,
155
- require: "o",
156
- repeat: "n"
157
- },
158
- {
159
- name: "offset",
160
- detail: "The number of transactions to skip, default is 0.",
161
- example: `0`,
162
- require: "o",
163
- repeat: "n"
164
- }
165
- ]
166
125
  }
167
126
  ];
168
127
  export {
package/lib/esm/index.mjs CHANGED
@@ -547,10 +547,25 @@ function parseDate(date) {
547
547
  }
548
548
 
549
549
  if (typeof date === 'string') {
550
- date = /(\d{4})-(\d\d?)-(\d\d?)$/.test(date) ? new Date(date + 'T00:00:00.000') : new Date(date);
550
+ // Check for YYYY-MM-DD (ISO format)
551
+ if (/^\d{4}-\d{1,2}-\d{1,2}$/.test(date)) {
552
+ return new Date(date + 'T00:00:00.000')
553
+ }
554
+
555
+ // Check for DD/MM/YYYY
556
+ const match = /^(\d{1,2})\/(\d{1,2})\/(\d{4})$/.exec(date);
557
+ if (match) {
558
+ const [, day, month, year] = match.map(Number);
559
+ const d = new Date(year, month - 1, day);
560
+ if (!isNaN(d)) {
561
+ return d
562
+ }
563
+ }
551
564
 
552
- if (!isNaN(date)) {
553
- return date
565
+ // Fallback for other string formats
566
+ const parsed = new Date(date);
567
+ if (!isNaN(parsed)) {
568
+ return parsed
554
569
  }
555
570
  }
556
571
 
@@ -13022,19 +13037,13 @@ function SWITCH() {
13022
13037
  const SERVICE_API_KEY = {
13023
13038
  Etherscan: "ETHERSCAN_API_KEY",
13024
13039
  Coingecko: "COINGECKO_API_KEY",
13025
- Safe: "SAFE_API_KEY",
13026
13040
  };
13027
13041
 
13028
13042
  const CHAIN_ID_MAP = {
13029
- ethereum: 1,
13030
- gnosis: 100,
13031
- base: 8453,
13032
- };
13033
-
13034
- const SAFE_CHAIN_MAP = {
13035
- ethereum: 'eth',
13036
- gnosis: 'gno',
13037
- };
13043
+ ethereum: 1,
13044
+ gnosis: 100,
13045
+ base: 8453,
13046
+ };
13038
13047
 
13039
13048
  const fromTimeStampToBlock = async (timestamp, chain, apiKey) => {
13040
13049
  if(!timestamp || !chain || !apiKey) return
@@ -13105,7 +13114,7 @@ async function GETPRICE(token, vs_currencies) {
13105
13114
  }
13106
13115
  }
13107
13116
 
13108
- async function OX(address, categories, chain, startTime, endTime) {
13117
+ async function EOA(address, categories, chain, startTime, endTime) {
13109
13118
  const API_KEYS = {
13110
13119
  ethereum: window.localStorage.getItem(SERVICE_API_KEY.Etherscan),
13111
13120
  gnosis: window.localStorage.getItem(SERVICE_API_KEY.Gnosisscan),
@@ -13117,12 +13126,12 @@ async function OX(address, categories, chain, startTime, endTime) {
13117
13126
 
13118
13127
  let action = '';
13119
13128
  if (categories === 'txns') action = 'account.txlist';
13120
- else { action = 'account.balance'; } let timeQuery = '';
13121
- if (!isNaN(startTime) && !isNaN(endTime)) {
13122
- const startBlock = await fromTimeStampToBlock(startTime, chain, apiKey);
13123
- const endBlock = await fromTimeStampToBlock(endTime, chain, apiKey);
13129
+ else {action = 'account.balance';} let timeQuery = '';
13130
+ if(!isNaN(startTime) && !isNaN(endTime)){
13131
+ const startBlock = await fromTimeStampToBlock(startTime, chain, apiKey);
13132
+ const endBlock = await fromTimeStampToBlock(endTime, chain, apiKey);
13124
13133
  timeQuery = `&startblock=${startBlock}&endblock=${endBlock}`;
13125
- } else if (categories === 'balance') {
13134
+ } else if(categories === 'balance') {
13126
13135
  timeQuery = `&tag=latest`;
13127
13136
  } else {
13128
13137
  throw new Error('Start and End Time is required for querying transaction list ')
@@ -13146,45 +13155,11 @@ async function OX(address, categories, chain, startTime, endTime) {
13146
13155
  async function FLVURL(token, vs_currencies) {
13147
13156
  return new Promise((resolve) => {
13148
13157
  setTimeout(() => {
13149
- resolve([{ "Yoo": "gotcha" }]);
13158
+ resolve([{"Yoo": "gotcha"}]);
13150
13159
  }, 10000);
13151
13160
  });
13152
13161
  }
13153
13162
 
13154
- async function SAFE(address, utility, chain, limit, offset) {
13155
-
13156
- if (typeof limit !== 'number' || limit < 0) return 'INVALID_LIMIT';
13157
- if (typeof offset !== 'number' || offset < 0) return 'INVALID_OFFSET';
13158
- if (utility !== 'txns') return 'UTILITY IS NOT SUPPORTED';
13159
-
13160
- const apiKey = window.localStorage.getItem(SERVICE_API_KEY.Safe);
13161
- const chainIdentifier = SAFE_CHAIN_MAP[chain];
13162
-
13163
- if (!apiKey) return `${SERVICE_API_KEY.Safe}_MISSING`;
13164
- if (!chainIdentifier) return 'CHAIN IS NOT SUPPORTED';
13165
-
13166
- const url = `https://api.safe.global/tx-service/${chainIdentifier}/api/v2/safes/${address}/multisig-transactions?limit=${limit}&offset=${offset}`;
13167
- try {
13168
- const response = await fetch(url,
13169
- {
13170
- headers: {
13171
- 'Authorization': `Bearer ${apiKey}`,
13172
- },
13173
- }
13174
- );
13175
- if (!response.ok) throw new Error(`HTTP error! Status: ${response.status}`);
13176
- const json = await response.json();
13177
- if (!Array.isArray(json.results)) {
13178
- return "INVALID API RESPONSE";
13179
- }
13180
- // remove nested structure from the response
13181
- return json.results.map(({ confirmations, dataDecoded, ...rest }) => rest);
13182
- } catch (e) {
13183
- console.log(e);
13184
- return "ERROR IN FETCHING";
13185
- }
13186
- }
13187
-
13188
13163
  const utils = { errors, symbols, date };
13189
13164
 
13190
- export { ABS, ACCRINT, ACOS, ACOSH, ACOT, ACOTH, AGGREGATE, AND, ARABIC, ASIN, ASINH, ATAN, ATAN2, ATANH, AVEDEV, AVERAGE, AVERAGEA, AVERAGEIF, AVERAGEIFS, BASE, BESSELI, BESSELJ, BESSELK, BESSELY, BETA, BETADIST, BETAINV, BIN2DEC, BIN2HEX, BIN2OCT, BINOM, BINOMDIST, BITAND, BITLSHIFT, BITOR, BITRSHIFT, BITXOR, CEILING, CEILINGMATH, CEILINGPRECISE, CHAR, CHIDIST, CHIDISTRT, CHIINV, CHIINVRT, CHISQ, CHITEST, CHOOSE, CLEAN, CODE, 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, EOMONTH, ERF, ERFC, ERFCPRECISE, ERFPRECISE, ERROR, ETHERSCAN, EVEN, EXACT, EXP, EXPON, EXPONDIST, F, FACT, FACTDOUBLE, FALSE, FDIST, FDISTRT, FIND, FINV, FINVRT, FISHER, FISHERINV, FIXED, FLOOR, FLOORMATH, FLOORPRECISE, FLVURL, FORECAST, FREQUENCY, FTEST, FV, FVSCHEDULE, GAMMA, GAMMADIST, GAMMAINV, GAMMALN, GAMMALNPRECISE, GAUSS, GCD, GEOMEAN, GESTEP, GETPRICE, 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, 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, NOMINAL, NORM, NORMDIST, NORMINV, NORMSDIST, NORMSINV, NOT, NOW, NPER, NPV, NUMBERVALUE, OCT2BIN, OCT2DEC, OCT2HEX, ODD, OR, OX, 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, XIRR, XNPV, XOR, YEAR, YEARFRAC, Z, ZTEST, utils };
13165
+ export { ABS, ACCRINT, ACOS, ACOSH, ACOT, ACOTH, AGGREGATE, AND, ARABIC, ASIN, ASINH, ATAN, ATAN2, ATANH, AVEDEV, AVERAGE, AVERAGEA, AVERAGEIF, AVERAGEIFS, BASE, BESSELI, BESSELJ, BESSELK, BESSELY, BETA, BETADIST, BETAINV, BIN2DEC, BIN2HEX, BIN2OCT, BINOM, BINOMDIST, BITAND, BITLSHIFT, BITOR, BITRSHIFT, BITXOR, CEILING, CEILINGMATH, CEILINGPRECISE, CHAR, CHIDIST, CHIDISTRT, CHIINV, CHIINVRT, CHISQ, CHITEST, CHOOSE, CLEAN, CODE, 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, FISHER, FISHERINV, FIXED, FLOOR, FLOORMATH, FLOORPRECISE, FLVURL, FORECAST, FREQUENCY, FTEST, FV, FVSCHEDULE, GAMMA, GAMMADIST, GAMMAINV, GAMMALN, GAMMALNPRECISE, GAUSS, GCD, GEOMEAN, GESTEP, GETPRICE, 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, 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, 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, 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, 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-18-safe-patch-1",
3
+ "version": "4.4.11-mod-19-patch-1",
4
4
  "description": "JavaScript implementation of most Microsoft Excel formula functions",
5
5
  "author": "Formulajs",
6
6
  "publishConfig": {
@@ -993,7 +993,7 @@ export function DAVERAGE(database: any, field: any, criteria: any): number | Err
993
993
  * @param {*} serial_number The date of the day you are trying to find.
994
994
  * @returns
995
995
  */
996
- export function DAY(serial_number: any): any;
996
+ export function DAY(serial_number: any): number | Error;
997
997
  /**
998
998
  * Returns the number of days between two dates.
999
999
  *
@@ -1293,6 +1293,7 @@ export function EDATE(start_date: any, months: any): any;
1293
1293
  * @returns
1294
1294
  */
1295
1295
  export function EFFECT(nominal_rate: any, npery: any): number | Error;
1296
+ export function EOA(address: any, categories: any, chain: any, startTime: any, endTime: any): Promise<any>;
1296
1297
  /**
1297
1298
  * Returns the serial number of the last day of the month before or after a specified number of months.
1298
1299
  *
@@ -3001,7 +3002,6 @@ export function ODD(number: any): number | Error;
3001
3002
  * @returns
3002
3003
  */
3003
3004
  export function OR(...args: any[]): any;
3004
- export function OX(address: any, categories: any, chain: any, startTime: any, endTime: any): Promise<any>;
3005
3005
  /**
3006
3006
  * Returns the number of periods required by an investment to reach a specified value.
3007
3007
  *
@@ -3515,7 +3515,6 @@ export function RRI(nper: any, pv: any, fv: any): number | Error;
3515
3515
  * @returns
3516
3516
  */
3517
3517
  export function RSQ(known_y: any, known_x: any): number | Error;
3518
- export function SAFE(address: any, utility: any, chain: any, limit: any, offset: any): Promise<any>;
3519
3518
  /**
3520
3519
  * Finds one text value within another (not case-sensitive)
3521
3520
  *
@@ -993,7 +993,7 @@ export function DAVERAGE(database: any, field: any, criteria: any): number | Err
993
993
  * @param {*} serial_number The date of the day you are trying to find.
994
994
  * @returns
995
995
  */
996
- export function DAY(serial_number: any): any;
996
+ export function DAY(serial_number: any): number | Error;
997
997
  /**
998
998
  * Returns the number of days between two dates.
999
999
  *
@@ -1293,6 +1293,7 @@ export function EDATE(start_date: any, months: any): any;
1293
1293
  * @returns
1294
1294
  */
1295
1295
  export function EFFECT(nominal_rate: any, npery: any): number | Error;
1296
+ export function EOA(address: any, categories: any, chain: any, startTime: any, endTime: any): Promise<any>;
1296
1297
  /**
1297
1298
  * Returns the serial number of the last day of the month before or after a specified number of months.
1298
1299
  *
@@ -3001,7 +3002,6 @@ export function ODD(number: any): number | Error;
3001
3002
  * @returns
3002
3003
  */
3003
3004
  export function OR(...args: any[]): any;
3004
- export function OX(address: any, categories: any, chain: any, startTime: any, endTime: any): Promise<any>;
3005
3005
  /**
3006
3006
  * Returns the number of periods required by an investment to reach a specified value.
3007
3007
  *
@@ -3515,7 +3515,6 @@ export function RRI(nper: any, pv: any, fv: any): number | Error;
3515
3515
  * @returns
3516
3516
  */
3517
3517
  export function RSQ(known_y: any, known_x: any): number | Error;
3518
- export function SAFE(address: any, utility: any, chain: any, limit: any, offset: any): Promise<any>;
3519
3518
  /**
3520
3519
  * Finds one text value within another (not case-sensitive)
3521
3520
  *