@gridsheet/functions 3.0.0-rc.2 → 3.0.0-rc.8
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/README.md +75 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +79 -90
- package/dist/index.js.map +1 -0
- package/dist/information/index.d.ts +1 -1
- package/dist/information/index.d.ts.map +1 -1
- package/dist/information/isblank.d.ts +1 -1
- package/dist/information/isblank.d.ts.map +1 -1
- package/dist/information/isblank.spec.d.ts +2 -0
- package/dist/information/isblank.spec.d.ts.map +1 -0
- package/dist/information/isdate.d.ts +1 -1
- package/dist/information/isdate.d.ts.map +1 -1
- package/dist/information/isdate.spec.d.ts +2 -0
- package/dist/information/isdate.spec.d.ts.map +1 -0
- package/dist/information/isemail.d.ts +1 -1
- package/dist/information/isemail.d.ts.map +1 -1
- package/dist/information/isemail.spec.d.ts +2 -0
- package/dist/information/isemail.spec.d.ts.map +1 -0
- package/dist/information/iserr.d.ts +2 -2
- package/dist/information/iserr.d.ts.map +1 -1
- package/dist/information/iserr.spec.d.ts +2 -0
- package/dist/information/iserr.spec.d.ts.map +1 -0
- package/dist/information/iserror.d.ts +2 -2
- package/dist/information/iserror.d.ts.map +1 -1
- package/dist/information/iserror.spec.d.ts +2 -0
- package/dist/information/iserror.spec.d.ts.map +1 -0
- package/dist/information/isformula.d.ts +2 -2
- package/dist/information/isformula.d.ts.map +1 -1
- package/dist/information/isformula.spec.d.ts +2 -0
- package/dist/information/isformula.spec.d.ts.map +1 -0
- package/dist/information/islogical.d.ts +1 -1
- package/dist/information/islogical.d.ts.map +1 -1
- package/dist/information/islogical.spec.d.ts +2 -0
- package/dist/information/islogical.spec.d.ts.map +1 -0
- package/dist/information/isna.d.ts +2 -2
- package/dist/information/isna.d.ts.map +1 -1
- package/dist/information/isna.spec.d.ts +2 -0
- package/dist/information/isna.spec.d.ts.map +1 -0
- package/dist/information/isnontext.d.ts +1 -1
- package/dist/information/isnontext.d.ts.map +1 -1
- package/dist/information/isnontext.spec.d.ts +2 -0
- package/dist/information/isnontext.spec.d.ts.map +1 -0
- package/dist/information/isref.d.ts +2 -2
- package/dist/information/isref.d.ts.map +1 -1
- package/dist/information/isref.spec.d.ts +2 -0
- package/dist/information/isref.spec.d.ts.map +1 -0
- package/dist/information/istext.d.ts +1 -1
- package/dist/information/istext.d.ts.map +1 -1
- package/dist/information/istext.spec.d.ts +2 -0
- package/dist/information/istext.spec.d.ts.map +1 -0
- package/dist/information/n.d.ts +2 -2
- package/dist/information/n.d.ts.map +1 -1
- package/dist/information/n.spec.d.ts +2 -0
- package/dist/information/n.spec.d.ts.map +1 -0
- package/dist/information/na.d.ts +1 -1
- package/dist/information/na.d.ts.map +1 -1
- package/dist/information/na.spec.d.ts +2 -0
- package/dist/information/na.spec.d.ts.map +1 -0
- package/dist/information/sheets.d.ts +1 -1
- package/dist/information/sheets.d.ts.map +1 -1
- package/dist/information/sheets.spec.d.ts +2 -0
- package/dist/information/sheets.spec.d.ts.map +1 -0
- package/dist/logical/ifna.d.ts +1 -1
- package/dist/logical/ifna.d.ts.map +1 -1
- package/dist/logical/ifs.d.ts +3 -4
- package/dist/logical/ifs.d.ts.map +1 -1
- package/dist/logical/index.d.ts +1 -1
- package/dist/logical/index.d.ts.map +1 -1
- package/dist/logical/xor.d.ts +1 -1
- package/dist/logical/xor.d.ts.map +1 -1
- package/dist/lookup/column.d.ts +1 -1
- package/dist/lookup/column.d.ts.map +1 -1
- package/dist/lookup/column.spec.d.ts +2 -0
- package/dist/lookup/column.spec.d.ts.map +1 -0
- package/dist/lookup/columns.d.ts +2 -2
- package/dist/lookup/columns.d.ts.map +1 -1
- package/dist/lookup/columns.spec.d.ts +2 -0
- package/dist/lookup/columns.spec.d.ts.map +1 -0
- package/dist/lookup/hlookup.d.ts +2 -3
- package/dist/lookup/hlookup.d.ts.map +1 -1
- package/dist/lookup/hlookup.spec.d.ts +2 -0
- package/dist/lookup/hlookup.spec.d.ts.map +1 -0
- package/dist/lookup/index.d.ts +1 -1
- package/dist/lookup/index.d.ts.map +1 -1
- package/dist/lookup/index.js +139 -156
- package/dist/lookup/index.js.map +1 -0
- package/dist/lookup/indexFn.d.ts +2 -2
- package/dist/lookup/indexFn.d.ts.map +1 -1
- package/dist/lookup/indexFn.spec.d.ts +2 -0
- package/dist/lookup/indexFn.spec.d.ts.map +1 -0
- package/dist/lookup/match.d.ts +2 -2
- package/dist/lookup/match.d.ts.map +1 -1
- package/dist/lookup/match.spec.d.ts +2 -0
- package/dist/lookup/match.spec.d.ts.map +1 -0
- package/dist/lookup/row.d.ts +1 -1
- package/dist/lookup/row.d.ts.map +1 -1
- package/dist/lookup/row.spec.d.ts +2 -0
- package/dist/lookup/row.spec.d.ts.map +1 -0
- package/dist/lookup/rows.d.ts +2 -2
- package/dist/lookup/rows.d.ts.map +1 -1
- package/dist/lookup/rows.spec.d.ts +2 -0
- package/dist/lookup/rows.spec.d.ts.map +1 -0
- package/dist/lookup/sheet.d.ts +2 -2
- package/dist/lookup/sheet.d.ts.map +1 -1
- package/dist/lookup/sheet.spec.d.ts +2 -0
- package/dist/lookup/sheet.spec.d.ts.map +1 -0
- package/dist/lookup/vlookup.d.ts +2 -3
- package/dist/lookup/vlookup.d.ts.map +1 -1
- package/dist/lookup/vlookup.spec.d.ts +2 -0
- package/dist/lookup/vlookup.spec.d.ts.map +1 -0
- package/dist/math/__matrix_base.d.ts +2 -2
- package/dist/math/__matrix_base.d.ts.map +1 -1
- package/dist/math/acos.d.ts +1 -1
- package/dist/math/acos.d.ts.map +1 -1
- package/dist/math/acos.spec.d.ts +2 -0
- package/dist/math/acos.spec.d.ts.map +1 -0
- package/dist/math/asin.d.ts +1 -1
- package/dist/math/asin.d.ts.map +1 -1
- package/dist/math/asin.spec.d.ts +2 -0
- package/dist/math/asin.spec.d.ts.map +1 -0
- package/dist/math/atan.d.ts +1 -1
- package/dist/math/atan.d.ts.map +1 -1
- package/dist/math/atan.spec.d.ts +2 -0
- package/dist/math/atan.spec.d.ts.map +1 -0
- package/dist/math/atan2.d.ts +1 -1
- package/dist/math/atan2.d.ts.map +1 -1
- package/dist/math/atan2.spec.d.ts +2 -0
- package/dist/math/atan2.spec.d.ts.map +1 -0
- package/dist/math/base.d.ts +1 -1
- package/dist/math/base.d.ts.map +1 -1
- package/dist/math/base.spec.d.ts +2 -0
- package/dist/math/base.spec.d.ts.map +1 -0
- package/dist/math/cos.d.ts +1 -1
- package/dist/math/cos.d.ts.map +1 -1
- package/dist/math/cos.spec.d.ts +2 -0
- package/dist/math/cos.spec.d.ts.map +1 -0
- package/dist/math/countif.d.ts +2 -2
- package/dist/math/countif.d.ts.map +1 -1
- package/dist/math/countif.spec.d.ts +2 -0
- package/dist/math/countif.spec.d.ts.map +1 -0
- package/dist/math/countifs.d.ts +1 -1
- package/dist/math/countifs.d.ts.map +1 -1
- package/dist/math/countifs.spec.d.ts +2 -0
- package/dist/math/countifs.spec.d.ts.map +1 -0
- package/dist/math/even.d.ts +1 -1
- package/dist/math/even.d.ts.map +1 -1
- package/dist/math/even.spec.d.ts +2 -0
- package/dist/math/even.spec.d.ts.map +1 -0
- package/dist/math/exp.d.ts +1 -1
- package/dist/math/exp.d.ts.map +1 -1
- package/dist/math/exp.spec.d.ts +2 -0
- package/dist/math/exp.spec.d.ts.map +1 -0
- package/dist/math/fact.d.ts +1 -1
- package/dist/math/fact.d.ts.map +1 -1
- package/dist/math/fact.spec.d.ts +2 -0
- package/dist/math/fact.spec.d.ts.map +1 -0
- package/dist/math/index.d.ts +1 -1
- package/dist/math/index.d.ts.map +1 -1
- package/dist/math/index.js +208 -206
- package/dist/math/index.js.map +1 -0
- package/dist/math/int.d.ts +1 -1
- package/dist/math/int.d.ts.map +1 -1
- package/dist/math/int.spec.d.ts +2 -0
- package/dist/math/int.spec.d.ts.map +1 -0
- package/dist/math/iseven.d.ts +1 -1
- package/dist/math/iseven.d.ts.map +1 -1
- package/dist/math/iseven.spec.d.ts +2 -0
- package/dist/math/iseven.spec.d.ts.map +1 -0
- package/dist/math/isodd.d.ts +1 -1
- package/dist/math/isodd.d.ts.map +1 -1
- package/dist/math/isodd.spec.d.ts +2 -0
- package/dist/math/isodd.spec.d.ts.map +1 -0
- package/dist/math/lcm.d.ts +1 -1
- package/dist/math/lcm.d.ts.map +1 -1
- package/dist/math/lcm.spec.d.ts +2 -0
- package/dist/math/lcm.spec.d.ts.map +1 -0
- package/dist/math/ln.d.ts +1 -1
- package/dist/math/ln.d.ts.map +1 -1
- package/dist/math/ln.spec.d.ts +2 -0
- package/dist/math/ln.spec.d.ts.map +1 -0
- package/dist/math/log.d.ts +2 -1
- package/dist/math/log.d.ts.map +1 -1
- package/dist/math/log.spec.d.ts +2 -0
- package/dist/math/log.spec.d.ts.map +1 -0
- package/dist/math/log10.d.ts +1 -1
- package/dist/math/log10.d.ts.map +1 -1
- package/dist/math/log10.spec.d.ts +2 -0
- package/dist/math/log10.spec.d.ts.map +1 -0
- package/dist/math/mdeterm.d.ts +1 -1
- package/dist/math/mdeterm.d.ts.map +1 -1
- package/dist/math/minverse.d.ts +1 -1
- package/dist/math/minverse.d.ts.map +1 -1
- package/dist/math/mmult.d.ts +1 -1
- package/dist/math/mmult.d.ts.map +1 -1
- package/dist/math/mod.d.ts +1 -1
- package/dist/math/mod.d.ts.map +1 -1
- package/dist/math/mod.spec.d.ts +2 -0
- package/dist/math/mod.spec.d.ts.map +1 -0
- package/dist/math/odd.d.ts +1 -1
- package/dist/math/odd.d.ts.map +1 -1
- package/dist/math/odd.spec.d.ts +2 -0
- package/dist/math/odd.spec.d.ts.map +1 -0
- package/dist/math/pi.d.ts +1 -1
- package/dist/math/pi.d.ts.map +1 -1
- package/dist/math/pi.spec.d.ts +2 -0
- package/dist/math/pi.spec.d.ts.map +1 -0
- package/dist/math/product.d.ts +2 -3
- package/dist/math/product.d.ts.map +1 -1
- package/dist/math/product.spec.d.ts +2 -0
- package/dist/math/product.spec.d.ts.map +1 -0
- package/dist/math/radians.d.ts +1 -1
- package/dist/math/radians.d.ts.map +1 -1
- package/dist/math/radians.spec.d.ts +2 -0
- package/dist/math/radians.spec.d.ts.map +1 -0
- package/dist/math/rand.d.ts +1 -1
- package/dist/math/rand.d.ts.map +1 -1
- package/dist/math/rand.spec.d.ts +2 -0
- package/dist/math/rand.spec.d.ts.map +1 -0
- package/dist/math/round.d.ts +1 -1
- package/dist/math/round.d.ts.map +1 -1
- package/dist/math/round.spec.d.ts +2 -0
- package/dist/math/round.spec.d.ts.map +1 -0
- package/dist/math/rounddown.d.ts +1 -1
- package/dist/math/rounddown.d.ts.map +1 -1
- package/dist/math/rounddown.spec.d.ts +2 -0
- package/dist/math/rounddown.spec.d.ts.map +1 -0
- package/dist/math/roundup.d.ts +1 -1
- package/dist/math/roundup.d.ts.map +1 -1
- package/dist/math/roundup.spec.d.ts +2 -0
- package/dist/math/roundup.spec.d.ts.map +1 -0
- package/dist/math/sequence.d.ts +1 -1
- package/dist/math/sequence.d.ts.map +1 -1
- package/dist/math/sequence.spec.d.ts +2 -0
- package/dist/math/sequence.spec.d.ts.map +1 -0
- package/dist/math/sign.d.ts +1 -1
- package/dist/math/sign.d.ts.map +1 -1
- package/dist/math/sign.spec.d.ts +2 -0
- package/dist/math/sign.spec.d.ts.map +1 -0
- package/dist/math/sin.d.ts +1 -1
- package/dist/math/sin.d.ts.map +1 -1
- package/dist/math/sin.spec.d.ts +2 -0
- package/dist/math/sin.spec.d.ts.map +1 -0
- package/dist/math/sqrt.d.ts +1 -1
- package/dist/math/sqrt.d.ts.map +1 -1
- package/dist/math/sqrt.spec.d.ts +2 -0
- package/dist/math/sqrt.spec.d.ts.map +1 -0
- package/dist/math/sumif.d.ts +2 -2
- package/dist/math/sumif.d.ts.map +1 -1
- package/dist/math/sumifs.d.ts +2 -2
- package/dist/math/sumifs.d.ts.map +1 -1
- package/dist/math/sumifs.spec.d.ts +2 -0
- package/dist/math/sumifs.spec.d.ts.map +1 -0
- package/dist/math/sumproduct.d.ts +1 -1
- package/dist/math/sumproduct.d.ts.map +1 -1
- package/dist/math/sumsq.d.ts +1 -1
- package/dist/math/sumsq.d.ts.map +1 -1
- package/dist/math/sumsq.spec.d.ts +2 -0
- package/dist/math/sumsq.spec.d.ts.map +1 -0
- package/dist/math/tan.d.ts +1 -1
- package/dist/math/tan.d.ts.map +1 -1
- package/dist/math/tan.spec.d.ts +2 -0
- package/dist/math/tan.spec.d.ts.map +1 -0
- package/dist/math/transpose.d.ts +1 -1
- package/dist/math/transpose.d.ts.map +1 -1
- package/dist/math/trunc.d.ts +1 -1
- package/dist/math/trunc.d.ts.map +1 -1
- package/dist/math/trunc.spec.d.ts +2 -0
- package/dist/math/trunc.spec.d.ts.map +1 -0
- package/dist/math/unaryPercent.d.ts +1 -1
- package/dist/math/unaryPercent.d.ts.map +1 -1
- package/dist/math/unaryPercent.spec.d.ts +2 -0
- package/dist/math/unaryPercent.spec.d.ts.map +1 -0
- package/dist/math/uplus.d.ts +1 -1
- package/dist/math/uplus.d.ts.map +1 -1
- package/dist/math/uplus.spec.d.ts +2 -0
- package/dist/math/uplus.spec.d.ts.map +1 -0
- package/dist/statistics/averageif.d.ts +2 -2
- package/dist/statistics/averageif.d.ts.map +1 -1
- package/dist/statistics/averageifs.d.ts +2 -2
- package/dist/statistics/averageifs.d.ts.map +1 -1
- package/dist/statistics/averageifs.spec.d.ts +2 -0
- package/dist/statistics/averageifs.spec.d.ts.map +1 -0
- package/dist/statistics/correl.d.ts +1 -1
- package/dist/statistics/correl.d.ts.map +1 -1
- package/dist/statistics/correl.spec.d.ts +2 -0
- package/dist/statistics/correl.spec.d.ts.map +1 -0
- package/dist/statistics/covariance_p.d.ts +10 -0
- package/dist/statistics/covariance_p.d.ts.map +1 -0
- package/dist/statistics/covariance_p.spec.d.ts +2 -0
- package/dist/statistics/covariance_p.spec.d.ts.map +1 -0
- package/dist/statistics/covariance_s.d.ts +1 -1
- package/dist/statistics/covariance_s.d.ts.map +1 -1
- package/dist/statistics/covariance_s.spec.d.ts +2 -0
- package/dist/statistics/covariance_s.spec.d.ts.map +1 -0
- package/dist/statistics/index.d.ts +1 -1
- package/dist/statistics/index.d.ts.map +1 -1
- package/dist/statistics/index.js +154 -111
- package/dist/statistics/index.js.map +1 -0
- package/dist/statistics/median.d.ts +1 -1
- package/dist/statistics/median.d.ts.map +1 -1
- package/dist/statistics/median.spec.d.ts +2 -0
- package/dist/statistics/median.spec.d.ts.map +1 -0
- package/dist/statistics/mode_sngl.d.ts +1 -1
- package/dist/statistics/mode_sngl.d.ts.map +1 -1
- package/dist/statistics/mode_sngl.spec.d.ts +2 -0
- package/dist/statistics/mode_sngl.spec.d.ts.map +1 -0
- package/dist/statistics/percentile_inc.d.ts +1 -1
- package/dist/statistics/percentile_inc.d.ts.map +1 -1
- package/dist/statistics/percentile_inc.spec.d.ts +2 -0
- package/dist/statistics/percentile_inc.spec.d.ts.map +1 -0
- package/dist/statistics/quartile_inc.d.ts +1 -1
- package/dist/statistics/quartile_inc.d.ts.map +1 -1
- package/dist/statistics/quartile_inc.spec.d.ts +2 -0
- package/dist/statistics/quartile_inc.spec.d.ts.map +1 -0
- package/dist/statistics/rank_eq.d.ts +1 -1
- package/dist/statistics/rank_eq.d.ts.map +1 -1
- package/dist/statistics/rank_eq.spec.d.ts +2 -0
- package/dist/statistics/rank_eq.spec.d.ts.map +1 -0
- package/dist/statistics/rsq.d.ts +1 -1
- package/dist/statistics/rsq.d.ts.map +1 -1
- package/dist/statistics/rsq.spec.d.ts +2 -0
- package/dist/statistics/rsq.spec.d.ts.map +1 -0
- package/dist/statistics/stdev_p.d.ts +1 -1
- package/dist/statistics/stdev_p.d.ts.map +1 -1
- package/dist/statistics/stdev_p.spec.d.ts +2 -0
- package/dist/statistics/stdev_p.spec.d.ts.map +1 -0
- package/dist/statistics/stdev_s.d.ts +1 -1
- package/dist/statistics/stdev_s.d.ts.map +1 -1
- package/dist/statistics/stdev_s.spec.d.ts +2 -0
- package/dist/statistics/stdev_s.spec.d.ts.map +1 -0
- package/dist/statistics/t_test.d.ts +1 -1
- package/dist/statistics/t_test.d.ts.map +1 -1
- package/dist/statistics/t_test.spec.d.ts +2 -0
- package/dist/statistics/t_test.spec.d.ts.map +1 -0
- package/dist/statistics/var_p.d.ts +1 -1
- package/dist/statistics/var_p.d.ts.map +1 -1
- package/dist/statistics/var_p.spec.d.ts +2 -0
- package/dist/statistics/var_p.spec.d.ts.map +1 -0
- package/dist/statistics/var_s.d.ts +1 -1
- package/dist/statistics/var_s.d.ts.map +1 -1
- package/dist/statistics/var_s.spec.d.ts +2 -0
- package/dist/statistics/var_s.spec.d.ts.map +1 -0
- package/dist/text/char.d.ts +1 -1
- package/dist/text/char.d.ts.map +1 -1
- package/dist/text/char.spec.d.ts +2 -0
- package/dist/text/char.spec.d.ts.map +1 -0
- package/dist/text/clean.d.ts +1 -1
- package/dist/text/clean.d.ts.map +1 -1
- package/dist/text/clean.spec.d.ts +2 -0
- package/dist/text/clean.spec.d.ts.map +1 -0
- package/dist/text/concatenate.d.ts +1 -1
- package/dist/text/concatenate.d.ts.map +1 -1
- package/dist/text/concatenate.spec.d.ts +2 -0
- package/dist/text/concatenate.spec.d.ts.map +1 -0
- package/dist/text/exact.d.ts +1 -1
- package/dist/text/exact.d.ts.map +1 -1
- package/dist/text/exact.spec.d.ts +2 -0
- package/dist/text/exact.spec.d.ts.map +1 -0
- package/dist/text/index.d.ts +1 -1
- package/dist/text/index.d.ts.map +1 -1
- package/dist/text/index.js +66 -69
- package/dist/text/index.js.map +1 -0
- package/dist/text/join.d.ts +1 -1
- package/dist/text/join.d.ts.map +1 -1
- package/dist/text/join.spec.d.ts +2 -0
- package/dist/text/join.spec.d.ts.map +1 -0
- package/dist/text/lenb.d.ts +1 -1
- package/dist/text/lenb.d.ts.map +1 -1
- package/dist/text/lenb.spec.d.ts +2 -0
- package/dist/text/lenb.spec.d.ts.map +1 -0
- package/dist/text/lower.d.ts +2 -2
- package/dist/text/lower.d.ts.map +1 -1
- package/dist/text/lower.spec.d.ts +2 -0
- package/dist/text/lower.spec.d.ts.map +1 -0
- package/dist/text/proper.d.ts +1 -1
- package/dist/text/proper.d.ts.map +1 -1
- package/dist/text/proper.spec.d.ts +2 -0
- package/dist/text/proper.spec.d.ts.map +1 -0
- package/dist/text/replace.d.ts +1 -1
- package/dist/text/replace.d.ts.map +1 -1
- package/dist/text/replace.spec.d.ts +2 -0
- package/dist/text/replace.spec.d.ts.map +1 -0
- package/dist/text/rept.d.ts +1 -1
- package/dist/text/rept.d.ts.map +1 -1
- package/dist/text/rept.spec.d.ts +2 -0
- package/dist/text/rept.spec.d.ts.map +1 -0
- package/dist/text/trim.d.ts +2 -2
- package/dist/text/trim.d.ts.map +1 -1
- package/dist/text/trim.spec.d.ts +2 -0
- package/dist/text/trim.spec.d.ts.map +1 -0
- package/dist/text/unichar.d.ts +1 -1
- package/dist/text/unichar.d.ts.map +1 -1
- package/dist/text/unichar.spec.d.ts +2 -0
- package/dist/text/unichar.spec.d.ts.map +1 -0
- package/dist/text/unicode.d.ts +1 -1
- package/dist/text/unicode.d.ts.map +1 -1
- package/dist/text/unicode.spec.d.ts +2 -0
- package/dist/text/unicode.spec.d.ts.map +1 -0
- package/dist/text/upper.d.ts +2 -2
- package/dist/text/upper.d.ts.map +1 -1
- package/dist/text/upper.spec.d.ts +2 -0
- package/dist/text/upper.spec.d.ts.map +1 -0
- package/dist/time/date.d.ts +1 -1
- package/dist/time/date.d.ts.map +1 -1
- package/dist/time/day.d.ts +2 -2
- package/dist/time/day.d.ts.map +1 -1
- package/dist/time/days.d.ts +1 -1
- package/dist/time/days.d.ts.map +1 -1
- package/dist/time/hour.d.ts +2 -2
- package/dist/time/hour.d.ts.map +1 -1
- package/dist/time/index.d.ts +1 -1
- package/dist/time/index.d.ts.map +1 -1
- package/dist/time/index.js +76 -94
- package/dist/time/index.js.map +1 -0
- package/dist/time/minute.d.ts +2 -2
- package/dist/time/minute.d.ts.map +1 -1
- package/dist/time/month.d.ts +2 -2
- package/dist/time/month.d.ts.map +1 -1
- package/dist/time/second.d.ts +2 -2
- package/dist/time/second.d.ts.map +1 -1
- package/dist/time/time.d.ts +2 -2
- package/dist/time/time.d.ts.map +1 -1
- package/dist/time/today.d.ts +1 -1
- package/dist/time/today.d.ts.map +1 -1
- package/dist/time/workday.d.ts +1 -1
- package/dist/time/workday.d.ts.map +1 -1
- package/dist/time/year.d.ts +2 -2
- package/dist/time/year.d.ts.map +1 -1
- package/package.json +6 -6
- package/dist/time/__utils.d.ts +0 -6
- package/dist/time/__utils.d.ts.map +0 -1
package/README.md
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# @gridsheet/functions
|
|
2
|
+
|
|
3
|
+
Extended formula functions for [@gridsheet/react-core](https://www.npmjs.com/package/@gridsheet/react-core).
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @gridsheet/functions
|
|
9
|
+
# or
|
|
10
|
+
pnpm add @gridsheet/functions
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Usage
|
|
14
|
+
|
|
15
|
+
### `useSpellbook` — recommended
|
|
16
|
+
|
|
17
|
+
Drop-in replacement for `useBook` with all extended functions pre-loaded.
|
|
18
|
+
|
|
19
|
+
```tsx
|
|
20
|
+
import { GridSheet } from '@gridsheet/react-core';
|
|
21
|
+
import { useSpellbook } from '@gridsheet/functions';
|
|
22
|
+
|
|
23
|
+
export default function App() {
|
|
24
|
+
const book = useSpellbook();
|
|
25
|
+
return <GridSheet book={book} />;
|
|
26
|
+
}
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Custom functions are merged on top of the built-ins:
|
|
30
|
+
|
|
31
|
+
```tsx
|
|
32
|
+
const book = useSpellbook({
|
|
33
|
+
additionalFunctions: {
|
|
34
|
+
double: MyDoubleFunction,
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### `createSpellbook` — for non-hook contexts
|
|
40
|
+
|
|
41
|
+
Same as `useSpellbook` but usable outside of React components (e.g. SSR, server-side initialization).
|
|
42
|
+
|
|
43
|
+
```ts
|
|
44
|
+
import { createSpellbook } from '@gridsheet/functions';
|
|
45
|
+
|
|
46
|
+
const book = createSpellbook();
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### `allFunctions` — manual registration
|
|
50
|
+
|
|
51
|
+
If you prefer to register functions yourself via `useBook` / `createBook`:
|
|
52
|
+
|
|
53
|
+
```tsx
|
|
54
|
+
import { useBook } from '@gridsheet/react-core';
|
|
55
|
+
import { allFunctions } from '@gridsheet/functions';
|
|
56
|
+
|
|
57
|
+
const book = useBook({
|
|
58
|
+
additionalFunctions: allFunctions,
|
|
59
|
+
});
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Or import only the category you need:
|
|
63
|
+
|
|
64
|
+
```ts
|
|
65
|
+
import { mathFunctions } from '@gridsheet/functions/math';
|
|
66
|
+
import { textFunctions } from '@gridsheet/functions/text';
|
|
67
|
+
import { lookupFunctions } from '@gridsheet/functions/lookup';
|
|
68
|
+
import { statisticsFunctions } from '@gridsheet/functions/statistics';
|
|
69
|
+
import { timeFunctions } from '@gridsheet/functions/time';
|
|
70
|
+
import { logicalFunctions } from '@gridsheet/functions/logical';
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## License
|
|
74
|
+
|
|
75
|
+
Apache-2.0
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import { FunctionMapping } from '@gridsheet/
|
|
1
|
+
import { FunctionMapping, RegistryProps } from '@gridsheet/core';
|
|
2
2
|
/** All extended functions combined into a single FunctionMapping. */
|
|
3
3
|
export declare const allFunctions: FunctionMapping;
|
|
4
|
+
/** createBook with all extended functions pre-loaded. User-supplied additionalFunctions are merged on top. */
|
|
5
|
+
export declare const createSpellbook: ({ additionalFunctions, ...rest }?: RegistryProps) => any;
|
|
4
6
|
export default allFunctions;
|
|
5
7
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAUtE,qEAAqE;AACrE,eAAO,MAAM,YAAY,EAAE,eAQ1B,CAAC;AAEF,8GAA8G;AAC9G,eAAO,MAAM,eAAe,GAAI,mCAAkC,aAAkB,QACO,CAAC;AAE5F,eAAe,YAAY,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
1
|
+
import { BaseFunction as r, FormulaError as s, ensureBoolean as c, Sheet as u, ensureNumber as l, createBook as d } from "@gridsheet/core";
|
|
2
|
+
import { mathFunctions as p } from "./math/index.js";
|
|
3
|
+
import { statisticsFunctions as h } from "./statistics/index.js";
|
|
4
|
+
import { textFunctions as m } from "./text/index.js";
|
|
5
|
+
import { lookupFunctions as f } from "./lookup/index.js";
|
|
6
|
+
import { timeFunctions as g } from "./time/index.js";
|
|
7
7
|
const T = `Returns TRUE if an odd number of the arguments are logically true.
|
|
8
8
|
Returns FALSE if an even number of the arguments are logically true.`;
|
|
9
|
-
class
|
|
9
|
+
class y extends r {
|
|
10
10
|
constructor() {
|
|
11
11
|
super(...arguments), this.example = "XOR(A1=1, A2=2)", this.description = T, this.defs = [
|
|
12
12
|
{ name: "expression", description: "Logical expressions to evaluate.", acceptedTypes: ["boolean"], variadic: !0 }
|
|
@@ -16,7 +16,7 @@ class A extends t {
|
|
|
16
16
|
return e.reduce((n, i) => n !== i, !1);
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
|
-
const x = "Returns the first argument if it is not a #N/A error, otherwise returns the second argument.", a = class a extends
|
|
19
|
+
const x = "Returns the first argument if it is not a #N/A error, otherwise returns the second argument.", a = class a extends r {
|
|
20
20
|
constructor() {
|
|
21
21
|
super(...arguments), this.example = 'IFNA(A1, "N/A error occurred")', this.description = x, this.defs = [
|
|
22
22
|
{
|
|
@@ -39,50 +39,37 @@ const x = "Returns the first argument if it is not a #N/A error, otherwise retur
|
|
|
39
39
|
};
|
|
40
40
|
a.__name = "IFNA";
|
|
41
41
|
let o = a;
|
|
42
|
-
const
|
|
42
|
+
const A = `Evaluates multiple conditions and returns the value corresponding to the first TRUE condition.
|
|
43
43
|
Arguments must be supplied in (condition, value) pairs.`;
|
|
44
|
-
class
|
|
45
|
-
constructor(
|
|
46
|
-
super(
|
|
47
|
-
{ name: "
|
|
48
|
-
{ name: "
|
|
49
|
-
|
|
50
|
-
name: "condition2",
|
|
51
|
-
description: "Additional conditions.",
|
|
52
|
-
acceptedTypes: ["boolean"],
|
|
53
|
-
optional: !0,
|
|
54
|
-
variadic: !0
|
|
55
|
-
},
|
|
56
|
-
{
|
|
57
|
-
name: "value2",
|
|
58
|
-
description: "Additional values.",
|
|
59
|
-
acceptedTypes: ["any"],
|
|
60
|
-
optional: !0,
|
|
61
|
-
variadic: !0
|
|
62
|
-
}
|
|
63
|
-
], this.category = "logical", this.lazyArgs = e.args;
|
|
44
|
+
class v extends r {
|
|
45
|
+
constructor() {
|
|
46
|
+
super(...arguments), this.example = 'IFS(A1>90, "A", A1>70, "B", A1>50, "C")', this.description = A, this.defs = [
|
|
47
|
+
{ name: "condition", description: "Condition to evaluate.", acceptedTypes: ["boolean"], variadic: !0 },
|
|
48
|
+
{ name: "value", description: "Value to return if condition is TRUE.", acceptedTypes: ["any"], variadic: !0 }
|
|
49
|
+
], this.category = "logical";
|
|
64
50
|
}
|
|
65
|
-
|
|
66
|
-
if (
|
|
51
|
+
validate(e) {
|
|
52
|
+
if (e.length < 2)
|
|
67
53
|
throw new s("#N/A", "IFS requires at least one condition-value pair.");
|
|
68
|
-
if (
|
|
54
|
+
if (e.length % 2 !== 0)
|
|
69
55
|
throw new s("#N/A", "IFS requires an even number of arguments (condition, value) pairs.");
|
|
70
|
-
for (let
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
return c({ value: i.evaluate({ table: this.table }) });
|
|
74
|
-
}
|
|
56
|
+
for (let n = 0; n < e.length; n += 2)
|
|
57
|
+
if (c(e[n]))
|
|
58
|
+
return [e[n + 1]];
|
|
75
59
|
throw new s("#N/A", "No condition in IFS was met.");
|
|
76
60
|
}
|
|
61
|
+
main(e) {
|
|
62
|
+
return e;
|
|
63
|
+
}
|
|
77
64
|
}
|
|
78
|
-
const
|
|
79
|
-
xor:
|
|
65
|
+
const R = {
|
|
66
|
+
xor: y,
|
|
80
67
|
ifna: o,
|
|
81
|
-
ifs:
|
|
82
|
-
},
|
|
83
|
-
class
|
|
68
|
+
ifs: v
|
|
69
|
+
}, E = "Returns TRUE if the referenced cell contains a formula.";
|
|
70
|
+
class F extends r {
|
|
84
71
|
constructor() {
|
|
85
|
-
super(...arguments), this.example = "ISFORMULA(A1)", this.description =
|
|
72
|
+
super(...arguments), this.example = "ISFORMULA(A1)", this.description = E, this.defs = [
|
|
86
73
|
{
|
|
87
74
|
name: "reference",
|
|
88
75
|
description: "The cell reference to check for a formula.",
|
|
@@ -93,14 +80,14 @@ class N extends t {
|
|
|
93
80
|
], this.category = "information";
|
|
94
81
|
}
|
|
95
82
|
main(e) {
|
|
96
|
-
const n = e.
|
|
83
|
+
const n = e.getCell({ y: e.top, x: e.left }, { resolution: "SYSTEM" }), i = n == null ? void 0 : n.value;
|
|
97
84
|
return typeof i == "string" && i.startsWith("=");
|
|
98
85
|
}
|
|
99
86
|
}
|
|
100
|
-
const
|
|
101
|
-
class
|
|
87
|
+
const N = "Returns TRUE if the referenced cell is empty.";
|
|
88
|
+
class I extends r {
|
|
102
89
|
constructor() {
|
|
103
|
-
super(...arguments), this.example = "ISBLANK(A1)", this.description =
|
|
90
|
+
super(...arguments), this.example = "ISBLANK(A1)", this.description = N, this.defs = [
|
|
104
91
|
{
|
|
105
92
|
name: "value",
|
|
106
93
|
description: "A reference to a cell to check for emptiness.",
|
|
@@ -114,7 +101,7 @@ class b extends t {
|
|
|
114
101
|
}
|
|
115
102
|
}
|
|
116
103
|
const S = "Returns TRUE if the value is any error other than #N/A.";
|
|
117
|
-
class
|
|
104
|
+
class b extends r {
|
|
118
105
|
constructor() {
|
|
119
106
|
super(...arguments), this.example = "ISERR(A1)", this.description = S, this.defs = [
|
|
120
107
|
{
|
|
@@ -130,7 +117,7 @@ class U extends t {
|
|
|
130
117
|
}
|
|
131
118
|
}
|
|
132
119
|
const k = "Returns TRUE if the value is any error value.";
|
|
133
|
-
class
|
|
120
|
+
class U extends r {
|
|
134
121
|
constructor() {
|
|
135
122
|
super(...arguments), this.example = "ISERROR(A1)", this.description = k, this.defs = [
|
|
136
123
|
{
|
|
@@ -145,10 +132,10 @@ class $ extends t {
|
|
|
145
132
|
return s.is(e) || e instanceof Error;
|
|
146
133
|
}
|
|
147
134
|
}
|
|
148
|
-
const
|
|
149
|
-
class
|
|
135
|
+
const $ = "Returns TRUE if the value is TRUE or FALSE.";
|
|
136
|
+
class w extends r {
|
|
150
137
|
constructor() {
|
|
151
|
-
super(...arguments), this.example = "ISLOGICAL(TRUE)", this.description =
|
|
138
|
+
super(...arguments), this.example = "ISLOGICAL(TRUE)", this.description = $, this.defs = [
|
|
152
139
|
{
|
|
153
140
|
name: "value",
|
|
154
141
|
description: "The value to check for being logical (TRUE or FALSE).",
|
|
@@ -161,10 +148,10 @@ class L extends t {
|
|
|
161
148
|
return typeof e == "boolean";
|
|
162
149
|
}
|
|
163
150
|
}
|
|
164
|
-
const
|
|
165
|
-
class
|
|
151
|
+
const L = "Returns TRUE if the value is the #N/A error value.";
|
|
152
|
+
class B extends r {
|
|
166
153
|
constructor() {
|
|
167
|
-
super(...arguments), this.example = "ISNA(A1)", this.description =
|
|
154
|
+
super(...arguments), this.example = "ISNA(A1)", this.description = L, this.defs = [
|
|
168
155
|
{
|
|
169
156
|
name: "value",
|
|
170
157
|
description: "The value to check for the #N/A error.",
|
|
@@ -178,7 +165,7 @@ class z extends t {
|
|
|
178
165
|
}
|
|
179
166
|
}
|
|
180
167
|
const M = "Returns TRUE if the value is not a text string.";
|
|
181
|
-
class O extends
|
|
168
|
+
class O extends r {
|
|
182
169
|
constructor() {
|
|
183
170
|
super(...arguments), this.example = "ISNONTEXT(A1)", this.description = M, this.defs = [
|
|
184
171
|
{
|
|
@@ -194,7 +181,7 @@ class O extends t {
|
|
|
194
181
|
}
|
|
195
182
|
}
|
|
196
183
|
const X = "Returns TRUE if the value is a text string.";
|
|
197
|
-
class
|
|
184
|
+
class C extends r {
|
|
198
185
|
constructor() {
|
|
199
186
|
super(...arguments), this.example = "ISTEXT(A1)", this.description = X, this.defs = [
|
|
200
187
|
{
|
|
@@ -209,10 +196,10 @@ class _ extends t {
|
|
|
209
196
|
return typeof e == "string";
|
|
210
197
|
}
|
|
211
198
|
}
|
|
212
|
-
const
|
|
213
|
-
class D extends
|
|
199
|
+
const _ = "Returns TRUE if the value is a valid cell reference.";
|
|
200
|
+
class D extends r {
|
|
214
201
|
constructor() {
|
|
215
|
-
super(...arguments), this.example = "ISREF(A1)", this.description =
|
|
202
|
+
super(...arguments), this.example = "ISREF(A1)", this.description = _, this.defs = [
|
|
216
203
|
{
|
|
217
204
|
name: "value",
|
|
218
205
|
description: "The value to check for being a cell reference.",
|
|
@@ -223,11 +210,11 @@ class D extends t {
|
|
|
223
210
|
], this.category = "information";
|
|
224
211
|
}
|
|
225
212
|
main(e) {
|
|
226
|
-
return
|
|
213
|
+
return u.is(e);
|
|
227
214
|
}
|
|
228
215
|
}
|
|
229
216
|
const q = "Returns the argument provided as a number.";
|
|
230
|
-
class G extends
|
|
217
|
+
class G extends r {
|
|
231
218
|
constructor() {
|
|
232
219
|
super(...arguments), this.example = "N(A1)", this.description = q, this.defs = [
|
|
233
220
|
{
|
|
@@ -245,14 +232,14 @@ class G extends t {
|
|
|
245
232
|
if (e == null || e === "")
|
|
246
233
|
return 0;
|
|
247
234
|
try {
|
|
248
|
-
return
|
|
235
|
+
return l(e);
|
|
249
236
|
} catch {
|
|
250
237
|
return 0;
|
|
251
238
|
}
|
|
252
239
|
}
|
|
253
240
|
}
|
|
254
241
|
const j = 'Returns the error value #N/A, meaning "value not available".';
|
|
255
|
-
class H extends
|
|
242
|
+
class H extends r {
|
|
256
243
|
constructor() {
|
|
257
244
|
super(...arguments), this.example = "NA()", this.description = j, this.defs = [], this.category = "information";
|
|
258
245
|
}
|
|
@@ -261,7 +248,7 @@ class H extends t {
|
|
|
261
248
|
}
|
|
262
249
|
}
|
|
263
250
|
const K = "Returns TRUE if the value is a date.";
|
|
264
|
-
class
|
|
251
|
+
class V extends r {
|
|
265
252
|
constructor() {
|
|
266
253
|
super(...arguments), this.example = "ISDATE(A1)", this.description = K, this.defs = [
|
|
267
254
|
{
|
|
@@ -276,10 +263,10 @@ class P extends t {
|
|
|
276
263
|
return e instanceof Date && !isNaN(e.getTime());
|
|
277
264
|
}
|
|
278
265
|
}
|
|
279
|
-
const
|
|
280
|
-
class
|
|
266
|
+
const W = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, Y = "Returns TRUE if the value is a valid email address.";
|
|
267
|
+
class z extends r {
|
|
281
268
|
constructor() {
|
|
282
|
-
super(...arguments), this.example = "ISEMAIL(A1)", this.description =
|
|
269
|
+
super(...arguments), this.example = "ISEMAIL(A1)", this.description = Y, this.defs = [
|
|
283
270
|
{
|
|
284
271
|
name: "value",
|
|
285
272
|
description: "The value to check for being a valid email address.",
|
|
@@ -289,44 +276,46 @@ class Y extends t {
|
|
|
289
276
|
], this.category = "information";
|
|
290
277
|
}
|
|
291
278
|
main(e) {
|
|
292
|
-
return typeof e != "string" ? !1 :
|
|
279
|
+
return typeof e != "string" ? !1 : W.test(e);
|
|
293
280
|
}
|
|
294
281
|
}
|
|
295
282
|
const J = "Returns the total number of sheets in the spreadsheet.";
|
|
296
|
-
class
|
|
283
|
+
class P extends r {
|
|
297
284
|
constructor() {
|
|
298
285
|
super(...arguments), this.example = "SHEETS()", this.description = J, this.defs = [], this.category = "information";
|
|
299
286
|
}
|
|
300
287
|
main() {
|
|
301
|
-
const e = this.
|
|
288
|
+
const e = this.sheet.registry.sheetIdsByName, n = Object.keys(e).length;
|
|
302
289
|
return n === 0 ? 1 : n;
|
|
303
290
|
}
|
|
304
291
|
}
|
|
305
|
-
const
|
|
306
|
-
isformula:
|
|
307
|
-
isblank:
|
|
308
|
-
iserr:
|
|
309
|
-
iserror:
|
|
310
|
-
islogical:
|
|
311
|
-
isna:
|
|
292
|
+
const Q = {
|
|
293
|
+
isformula: F,
|
|
294
|
+
isblank: I,
|
|
295
|
+
iserr: b,
|
|
296
|
+
iserror: U,
|
|
297
|
+
islogical: w,
|
|
298
|
+
isna: B,
|
|
312
299
|
isnontext: O,
|
|
313
|
-
istext:
|
|
300
|
+
istext: C,
|
|
314
301
|
isref: D,
|
|
315
302
|
n: G,
|
|
316
303
|
na: H,
|
|
317
|
-
isdate:
|
|
318
|
-
isemail:
|
|
319
|
-
sheets:
|
|
320
|
-
},
|
|
321
|
-
...l,
|
|
322
|
-
...d,
|
|
304
|
+
isdate: V,
|
|
305
|
+
isemail: z,
|
|
306
|
+
sheets: P
|
|
307
|
+
}, Z = {
|
|
323
308
|
...p,
|
|
324
309
|
...h,
|
|
325
310
|
...m,
|
|
326
|
-
...
|
|
327
|
-
...
|
|
328
|
-
|
|
311
|
+
...f,
|
|
312
|
+
...g,
|
|
313
|
+
...R,
|
|
314
|
+
...Q
|
|
315
|
+
}, oe = ({ additionalFunctions: t, ...e } = {}) => d({ ...e, additionalFunctions: { ...Z, ...t } });
|
|
329
316
|
export {
|
|
330
|
-
|
|
331
|
-
|
|
317
|
+
Z as allFunctions,
|
|
318
|
+
oe as createSpellbook,
|
|
319
|
+
Z as default
|
|
332
320
|
};
|
|
321
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/logical/xor.ts","../src/logical/ifna.ts","../src/logical/ifs.ts","../src/logical/index.ts","../src/information/isformula.ts","../src/information/isblank.ts","../src/information/iserr.ts","../src/information/iserror.ts","../src/information/islogical.ts","../src/information/isna.ts","../src/information/isnontext.ts","../src/information/istext.ts","../src/information/isref.ts","../src/information/n.ts","../src/information/na.ts","../src/information/isdate.ts","../src/information/isemail.ts","../src/information/sheets.ts","../src/information/index.ts","../src/index.ts"],"sourcesContent":["import { FormulaError } from '@gridsheet/core';\nimport { BaseFunction, type FunctionArgumentDefinition } from '@gridsheet/core';\nimport { ensureBoolean } from '@gridsheet/core';\nimport type { FunctionCategory } from '@gridsheet/core';\n\nconst description = `Returns TRUE if an odd number of the arguments are logically true.\nReturns FALSE if an even number of the arguments are logically true.`;\n\nexport class XorFunction extends BaseFunction {\n example = 'XOR(A1=1, A2=2)';\n description = description;\n defs: FunctionArgumentDefinition[] = [\n { name: 'expression', description: 'Logical expressions to evaluate.', acceptedTypes: ['boolean'], variadic: true },\n ];\n category: FunctionCategory = 'logical';\n\n protected main(...values: boolean[]) {\n // XOR is true when an odd number of arguments are true\n return values.reduce((acc, val) => acc !== val, false as boolean);\n }\n}\n","import { BaseFunction, FormulaError } from '@gridsheet/core';\nimport { type FunctionArgumentDefinition } from '@gridsheet/core';\n\nconst description = `Returns the first argument if it is not a #N/A error, otherwise returns the second argument.`;\n\nexport class IfnaFunction extends BaseFunction {\n static __name = 'IFNA';\n example = 'IFNA(A1, \"N/A error occurred\")';\n description = description;\n defs: FunctionArgumentDefinition[] = [\n {\n name: 'value',\n description: 'The value to return if it is not a #N/A error.',\n acceptedTypes: ['any'],\n errorTolerant: true,\n },\n {\n name: 'value_if_na',\n description: 'The value to return if the first argument is a #N/A error.',\n optional: true,\n acceptedTypes: ['any'],\n },\n ];\n\n category = 'logical' as const;\n\n protected main(value: any, valueIfNa?: any) {\n if (FormulaError.is(value) && value.code === '#N/A') {\n return valueIfNa;\n }\n return value;\n }\n}\n","import { BaseFunction, FormulaError } from '@gridsheet/core';\nimport { type FunctionArgumentDefinition } from '@gridsheet/core';\nimport { ensureBoolean } from '@gridsheet/core';\n\nconst description = `Evaluates multiple conditions and returns the value corresponding to the first TRUE condition.\nArguments must be supplied in (condition, value) pairs.`;\n\nexport class IfsFunction extends BaseFunction {\n example = 'IFS(A1>90, \"A\", A1>70, \"B\", A1>50, \"C\")';\n description = description;\n defs: FunctionArgumentDefinition[] = [\n { name: 'condition', description: 'Condition to evaluate.', acceptedTypes: ['boolean'], variadic: true },\n { name: 'value', description: 'Value to return if condition is TRUE.', acceptedTypes: ['any'], variadic: true },\n ];\n category = 'logical' as const;\n\n protected validate(args: any[]): any[] {\n if (args.length < 2) {\n throw new FormulaError('#N/A', 'IFS requires at least one condition-value pair.');\n }\n if (args.length % 2 !== 0) {\n throw new FormulaError('#N/A', 'IFS requires an even number of arguments (condition, value) pairs.');\n }\n for (let i = 0; i < args.length; i += 2) {\n if (ensureBoolean(args[i])) {\n return [args[i + 1]];\n }\n }\n throw new FormulaError('#N/A', 'No condition in IFS was met.');\n }\n\n protected main(result: any) {\n return result;\n }\n}\n","import type { FunctionMapping } from '@gridsheet/core';\nimport { XorFunction } from './xor';\nimport { IfnaFunction } from './ifna';\nimport { IfsFunction } from './ifs';\n\nexport const logicalFunctions: FunctionMapping = {\n xor: XorFunction,\n ifna: IfnaFunction,\n ifs: IfsFunction,\n};\n\nexport default logicalFunctions;\n","import { BaseFunction, type FunctionArgumentDefinition } from '@gridsheet/core';\nimport { Sheet } from '@gridsheet/core';\nimport type { FunctionCategory } from '@gridsheet/core';\n\nconst description = `Returns TRUE if the referenced cell contains a formula.`;\n\nexport class IsformulaFunction extends BaseFunction {\n example = 'ISFORMULA(A1)';\n description = description;\n defs: FunctionArgumentDefinition[] = [\n {\n name: 'reference',\n description: 'The cell reference to check for a formula.',\n acceptedTypes: ['reference'],\n takesMatrix: true,\n errorTolerant: true,\n },\n ];\n category: FunctionCategory = 'information';\n\n protected main(ref: Sheet) {\n const cell = ref.getCell({ y: ref.top, x: ref.left }, { resolution: 'SYSTEM' });\n const raw = cell?.value;\n return typeof raw === 'string' && raw.startsWith('=');\n }\n}\n","import { BaseFunction, type FunctionArgumentDefinition } from '@gridsheet/core';\nimport type { FunctionCategory } from '@gridsheet/core';\n\nconst description = `Returns TRUE if the referenced cell is empty.`;\n\nexport class IsblankFunction extends BaseFunction {\n example = 'ISBLANK(A1)';\n description = description;\n defs: FunctionArgumentDefinition[] = [\n {\n name: 'value',\n description: 'A reference to a cell to check for emptiness.',\n acceptedTypes: ['any'],\n errorTolerant: true,\n },\n ];\n category: FunctionCategory = 'information';\n\n protected main(value: any) {\n return value === null || value === undefined || value === '';\n }\n}\n","import { BaseFunction, FormulaError } from '@gridsheet/core';\nimport type { FunctionArgumentDefinition, FunctionProps } from '@gridsheet/core';\nimport type { FunctionCategory } from '@gridsheet/core';\nimport { Sheet } from '@gridsheet/core';\n\nconst description = `Returns TRUE if the value is any error other than #N/A.`;\n\nexport class IserrFunction extends BaseFunction {\n example = 'ISERR(A1)';\n description = description;\n defs: FunctionArgumentDefinition[] = [\n {\n name: 'value',\n description: 'The value to check for a non-#N/A error.',\n acceptedTypes: ['any'],\n errorTolerant: true,\n },\n ];\n category: FunctionCategory = 'information';\n\n protected main(value: any) {\n if (value instanceof Error) {\n return true;\n }\n return FormulaError.is(value) && value.code !== '#N/A';\n }\n}\n","import { BaseFunction, FormulaError } from '@gridsheet/core';\nimport type { FunctionArgumentDefinition, FunctionProps } from '@gridsheet/core';\nimport type { FunctionCategory } from '@gridsheet/core';\n\nconst description = `Returns TRUE if the value is any error value.`;\n\nexport class IserrorFunction extends BaseFunction {\n example = 'ISERROR(A1)';\n description = description;\n defs: FunctionArgumentDefinition[] = [\n {\n name: 'value',\n description: 'The value to check for an error.',\n acceptedTypes: ['any'],\n errorTolerant: true,\n },\n ];\n category: FunctionCategory = 'information';\n\n protected main(value: any) {\n return FormulaError.is(value) || value instanceof Error;\n }\n}\n","import { FormulaError } from '@gridsheet/core';\nimport { BaseFunction, type FunctionArgumentDefinition } from '@gridsheet/core';\nimport type { FunctionCategory } from '@gridsheet/core';\n\nconst description = `Returns TRUE if the value is TRUE or FALSE.`;\n\nexport class IslogicalFunction extends BaseFunction {\n example = 'ISLOGICAL(TRUE)';\n description = description;\n defs: FunctionArgumentDefinition[] = [\n {\n name: 'value',\n description: 'The value to check for being logical (TRUE or FALSE).',\n acceptedTypes: ['any'],\n errorTolerant: true,\n },\n ];\n category: FunctionCategory = 'information';\n\n protected main(value: any) {\n return typeof value === 'boolean';\n }\n}\n","import { BaseFunction, FormulaError } from '@gridsheet/core';\nimport type { FunctionArgumentDefinition, FunctionProps } from '@gridsheet/core';\nimport type { FunctionCategory } from '@gridsheet/core';\nimport { Sheet } from '@gridsheet/core';\n\nconst description = `Returns TRUE if the value is the #N/A error value.`;\n\nexport class IsnaFunction extends BaseFunction {\n example = 'ISNA(A1)';\n description = description;\n defs: FunctionArgumentDefinition[] = [\n {\n name: 'value',\n description: 'The value to check for the #N/A error.',\n acceptedTypes: ['any'],\n errorTolerant: true,\n },\n ];\n category: FunctionCategory = 'information';\n\n protected main(value: any) {\n return FormulaError.is(value) && value.code === '#N/A';\n }\n}\n","import { FormulaError } from '@gridsheet/core';\nimport { BaseFunction, type FunctionArgumentDefinition } from '@gridsheet/core';\nimport type { FunctionCategory } from '@gridsheet/core';\n\nconst description = `Returns TRUE if the value is not a text string.`;\n\nexport class IsnontextFunction extends BaseFunction {\n example = 'ISNONTEXT(A1)';\n description = description;\n defs: FunctionArgumentDefinition[] = [\n {\n name: 'value',\n description: 'The value to check for being non-text.',\n acceptedTypes: ['any'],\n errorTolerant: true,\n },\n ];\n category: FunctionCategory = 'information';\n\n protected main(value: any) {\n return typeof value !== 'string';\n }\n}\n","import { FormulaError } from '@gridsheet/core';\nimport { BaseFunction, type FunctionArgumentDefinition } from '@gridsheet/core';\nimport type { FunctionCategory } from '@gridsheet/core';\n\nconst description = `Returns TRUE if the value is a text string.`;\n\nexport class IstextFunction extends BaseFunction {\n example = 'ISTEXT(A1)';\n description = description;\n defs: FunctionArgumentDefinition[] = [\n {\n name: 'value',\n description: 'The value to check for being text.',\n acceptedTypes: ['any'],\n errorTolerant: true,\n },\n ];\n category: FunctionCategory = 'information';\n\n protected main(value: any) {\n return typeof value === 'string';\n }\n}\n","import { BaseFunction, type FunctionArgumentDefinition } from '@gridsheet/core';\nimport { Sheet } from '@gridsheet/core';\nimport type { FunctionCategory } from '@gridsheet/core';\n\nconst description = `Returns TRUE if the value is a valid cell reference.`;\n\nexport class IsrefFunction extends BaseFunction {\n example = 'ISREF(A1)';\n description = description;\n defs: FunctionArgumentDefinition[] = [\n {\n name: 'value',\n description: 'The value to check for being a cell reference.',\n acceptedTypes: ['any'],\n takesMatrix: true,\n errorTolerant: true,\n },\n ];\n category: FunctionCategory = 'information';\n\n protected main(value: any) {\n return Sheet.is(value);\n }\n}\n","import { BaseFunction, type FunctionArgumentDefinition } from '@gridsheet/core';\nimport { ensureNumber } from '@gridsheet/core';\nimport type { FunctionCategory } from '@gridsheet/core';\n\nconst description = `Returns the argument provided as a number.`;\n\nexport class NFunction extends BaseFunction {\n example = 'N(A1)';\n description = description;\n defs: FunctionArgumentDefinition[] = [\n {\n name: 'value',\n description: 'The value to convert to a number.',\n acceptedTypes: ['any'],\n },\n ];\n category: FunctionCategory = 'information';\n\n protected main(value: any) {\n if (typeof value === 'boolean') {\n return value ? 1 : 0;\n }\n if (value instanceof Date) {\n return value.getTime();\n }\n if (value === null || value === undefined || value === '') {\n return 0;\n }\n try {\n return ensureNumber(value);\n } catch {\n return 0;\n }\n }\n}\n","import { FormulaError } from '@gridsheet/core';\nimport { BaseFunction, type FunctionArgumentDefinition } from '@gridsheet/core';\nimport type { FunctionCategory } from '@gridsheet/core';\n\nconst description = `Returns the error value #N/A, meaning \"value not available\".`;\n\nexport class NaFunction extends BaseFunction {\n example = 'NA()';\n description = description;\n defs: FunctionArgumentDefinition[] = [];\n category: FunctionCategory = 'information';\n\n protected main() {\n throw new FormulaError('#N/A', 'N/A');\n }\n}\n","import { FormulaError } from '@gridsheet/core';\nimport { BaseFunction, type FunctionArgumentDefinition } from '@gridsheet/core';\nimport type { FunctionCategory } from '@gridsheet/core';\n\nconst description = `Returns TRUE if the value is a date.`;\n\nexport class IsdateFunction extends BaseFunction {\n example = 'ISDATE(A1)';\n description = description;\n defs: FunctionArgumentDefinition[] = [\n {\n name: 'value',\n description: 'The value to check for being a date.',\n acceptedTypes: ['any'],\n errorTolerant: true,\n },\n ];\n category: FunctionCategory = 'information';\n\n protected main(value: any) {\n return value instanceof Date && !isNaN(value.getTime());\n }\n}\n","import { FormulaError } from '@gridsheet/core';\nimport { BaseFunction, type FunctionArgumentDefinition } from '@gridsheet/core';\nimport type { FunctionCategory } from '@gridsheet/core';\n\nconst EMAIL_REGEX = /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/;\n\nconst description = `Returns TRUE if the value is a valid email address.`;\n\nexport class IsemailFunction extends BaseFunction {\n example = 'ISEMAIL(A1)';\n description = description;\n defs: FunctionArgumentDefinition[] = [\n {\n name: 'value',\n description: 'The value to check for being a valid email address.',\n acceptedTypes: ['any'],\n errorTolerant: true,\n },\n ];\n category: FunctionCategory = 'information';\n\n protected main(value: any) {\n if (typeof value !== 'string') {\n return false;\n }\n return EMAIL_REGEX.test(value);\n }\n}\n","import { FormulaError } from '@gridsheet/core';\nimport { BaseFunction, type FunctionArgumentDefinition } from '@gridsheet/core';\nimport type { FunctionCategory } from '@gridsheet/core';\n\nconst description = `Returns the total number of sheets in the spreadsheet.`;\n\nexport class SheetsFunction extends BaseFunction {\n example = 'SHEETS()';\n description = description;\n defs: FunctionArgumentDefinition[] = [];\n category: FunctionCategory = 'information';\n\n protected main() {\n const sheetIdsByName = this.sheet.registry.sheetIdsByName;\n const count = Object.keys(sheetIdsByName).length;\n // If wire has no registered sheets (e.g. standalone sheet), return 1\n return count === 0 ? 1 : count;\n }\n}\n","import type { FunctionMapping } from '@gridsheet/core';\nimport { IsformulaFunction } from './isformula';\nimport { IsblankFunction } from './isblank';\nimport { IserrFunction } from './iserr';\nimport { IserrorFunction } from './iserror';\nimport { IslogicalFunction } from './islogical';\nimport { IsnaFunction } from './isna';\nimport { IsnontextFunction } from './isnontext';\nimport { IstextFunction } from './istext';\nimport { IsrefFunction } from './isref';\nimport { NFunction } from './n';\nimport { NaFunction } from './na';\nimport { IsdateFunction } from './isdate';\nimport { IsemailFunction } from './isemail';\nimport { SheetsFunction } from './sheets';\n\nexport const informationFunctions: FunctionMapping = {\n isformula: IsformulaFunction,\n isblank: IsblankFunction,\n iserr: IserrFunction,\n iserror: IserrorFunction,\n islogical: IslogicalFunction,\n isna: IsnaFunction,\n isnontext: IsnontextFunction,\n istext: IstextFunction,\n isref: IsrefFunction,\n n: NFunction,\n na: NaFunction,\n isdate: IsdateFunction,\n isemail: IsemailFunction,\n sheets: SheetsFunction,\n};\n\nexport default informationFunctions;\n","import type { FunctionMapping, RegistryProps } from '@gridsheet/core';\nimport { createBook } from '@gridsheet/core';\nimport { mathFunctions } from './math';\nimport { statisticsFunctions } from './statistics';\nimport { textFunctions } from './text';\nimport { lookupFunctions } from './lookup';\nimport { timeFunctions } from './time';\nimport { logicalFunctions } from './logical';\nimport { informationFunctions } from './information';\n\n/** All extended functions combined into a single FunctionMapping. */\nexport const allFunctions: FunctionMapping = {\n ...mathFunctions,\n ...statisticsFunctions,\n ...textFunctions,\n ...lookupFunctions,\n ...timeFunctions,\n ...logicalFunctions,\n ...informationFunctions,\n};\n\n/** createBook with all extended functions pre-loaded. User-supplied additionalFunctions are merged on top. */\nexport const createSpellbook = ({ additionalFunctions, ...rest }: RegistryProps = {}) =>\n createBook({ ...rest, additionalFunctions: { ...allFunctions, ...additionalFunctions } });\n\nexport default allFunctions;\n"],"names":["description","XorFunction","BaseFunction","values","acc","val","_IfnaFunction","value","valueIfNa","FormulaError","IfnaFunction","IfsFunction","args","i","ensureBoolean","result","logicalFunctions","IsformulaFunction","ref","cell","raw","IsblankFunction","IserrFunction","IserrorFunction","IslogicalFunction","IsnaFunction","IsnontextFunction","IstextFunction","IsrefFunction","Sheet","NFunction","ensureNumber","NaFunction","IsdateFunction","EMAIL_REGEX","IsemailFunction","SheetsFunction","sheetIdsByName","count","informationFunctions","allFunctions","mathFunctions","statisticsFunctions","textFunctions","lookupFunctions","timeFunctions","createSpellbook","additionalFunctions","rest","createBook"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/information/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/information/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAgBvD,eAAO,MAAM,oBAAoB,EAAE,eAelC,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BaseFunction, FunctionArgumentDefinition, FunctionCategory } from '@gridsheet/
|
|
1
|
+
import { BaseFunction, FunctionArgumentDefinition, FunctionCategory } from '@gridsheet/core';
|
|
2
2
|
export declare class IsblankFunction extends BaseFunction {
|
|
3
3
|
example: string;
|
|
4
4
|
description: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isblank.d.ts","sourceRoot":"","sources":["../../src/information/isblank.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,0BAA0B,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"isblank.d.ts","sourceRoot":"","sources":["../../src/information/isblank.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAIxD,qBAAa,eAAgB,SAAQ,YAAY;IAC/C,OAAO,SAAiB;IACxB,WAAW,SAAe;IAC1B,IAAI,EAAE,0BAA0B,EAAE,CAOhC;IACF,QAAQ,EAAE,gBAAgB,CAAiB;IAE3C,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG;CAG1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isblank.spec.d.ts","sourceRoot":"","sources":["../../src/information/isblank.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BaseFunction, FunctionArgumentDefinition, FunctionCategory } from '@gridsheet/
|
|
1
|
+
import { BaseFunction, FunctionArgumentDefinition, FunctionCategory } from '@gridsheet/core';
|
|
2
2
|
export declare class IsdateFunction extends BaseFunction {
|
|
3
3
|
example: string;
|
|
4
4
|
description: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isdate.d.ts","sourceRoot":"","sources":["../../src/information/isdate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,KAAK,0BAA0B,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"isdate.d.ts","sourceRoot":"","sources":["../../src/information/isdate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,KAAK,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAIxD,qBAAa,cAAe,SAAQ,YAAY;IAC9C,OAAO,SAAgB;IACvB,WAAW,SAAe;IAC1B,IAAI,EAAE,0BAA0B,EAAE,CAOhC;IACF,QAAQ,EAAE,gBAAgB,CAAiB;IAE3C,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG;CAG1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isdate.spec.d.ts","sourceRoot":"","sources":["../../src/information/isdate.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BaseFunction, FunctionArgumentDefinition, FunctionCategory } from '@gridsheet/
|
|
1
|
+
import { BaseFunction, FunctionArgumentDefinition, FunctionCategory } from '@gridsheet/core';
|
|
2
2
|
export declare class IsemailFunction extends BaseFunction {
|
|
3
3
|
example: string;
|
|
4
4
|
description: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isemail.d.ts","sourceRoot":"","sources":["../../src/information/isemail.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,KAAK,0BAA0B,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"isemail.d.ts","sourceRoot":"","sources":["../../src/information/isemail.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,KAAK,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAMxD,qBAAa,eAAgB,SAAQ,YAAY;IAC/C,OAAO,SAAiB;IACxB,WAAW,SAAe;IAC1B,IAAI,EAAE,0BAA0B,EAAE,CAOhC;IACF,QAAQ,EAAE,gBAAgB,CAAiB;IAE3C,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG;CAM1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isemail.spec.d.ts","sourceRoot":"","sources":["../../src/information/isemail.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { BaseFunction, FunctionArgumentDefinition, FunctionCategory } from '@gridsheet/
|
|
1
|
+
import { BaseFunction, FunctionArgumentDefinition, FunctionCategory } from '@gridsheet/core';
|
|
2
2
|
export declare class IserrFunction extends BaseFunction {
|
|
3
3
|
example: string;
|
|
4
4
|
description: string;
|
|
5
5
|
defs: FunctionArgumentDefinition[];
|
|
6
6
|
category: FunctionCategory;
|
|
7
|
-
protected main(value: any):
|
|
7
|
+
protected main(value: any): any;
|
|
8
8
|
}
|
|
9
9
|
//# sourceMappingURL=iserr.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iserr.d.ts","sourceRoot":"","sources":["../../src/information/iserr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAgB,MAAM,
|
|
1
|
+
{"version":3,"file":"iserr.d.ts","sourceRoot":"","sources":["../../src/information/iserr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAgB,MAAM,iBAAiB,CAAC;AAC7D,OAAO,KAAK,EAAE,0BAA0B,EAAiB,MAAM,iBAAiB,CAAC;AACjF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAKxD,qBAAa,aAAc,SAAQ,YAAY;IAC7C,OAAO,SAAe;IACtB,WAAW,SAAe;IAC1B,IAAI,EAAE,0BAA0B,EAAE,CAOhC;IACF,QAAQ,EAAE,gBAAgB,CAAiB;IAE3C,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG;CAM1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iserr.spec.d.ts","sourceRoot":"","sources":["../../src/information/iserr.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { BaseFunction,
|
|
1
|
+
import { BaseFunction, FunctionArgumentDefinition, FunctionCategory } from '@gridsheet/core';
|
|
2
2
|
export declare class IserrorFunction extends BaseFunction {
|
|
3
3
|
example: string;
|
|
4
4
|
description: string;
|
|
5
5
|
defs: FunctionArgumentDefinition[];
|
|
6
6
|
category: FunctionCategory;
|
|
7
|
-
protected main(value: any):
|
|
7
|
+
protected main(value: any): any;
|
|
8
8
|
}
|
|
9
9
|
//# sourceMappingURL=iserror.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iserror.d.ts","sourceRoot":"","sources":["../../src/information/iserror.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"iserror.d.ts","sourceRoot":"","sources":["../../src/information/iserror.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAgB,MAAM,iBAAiB,CAAC;AAC7D,OAAO,KAAK,EAAE,0BAA0B,EAAiB,MAAM,iBAAiB,CAAC;AACjF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAIxD,qBAAa,eAAgB,SAAQ,YAAY;IAC/C,OAAO,SAAiB;IACxB,WAAW,SAAe;IAC1B,IAAI,EAAE,0BAA0B,EAAE,CAOhC;IACF,QAAQ,EAAE,gBAAgB,CAAiB;IAE3C,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG;CAG1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iserror.spec.d.ts","sourceRoot":"","sources":["../../src/information/iserror.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { BaseFunction, FunctionArgumentDefinition,
|
|
1
|
+
import { BaseFunction, FunctionArgumentDefinition, Sheet, FunctionCategory } from '@gridsheet/core';
|
|
2
2
|
export declare class IsformulaFunction extends BaseFunction {
|
|
3
3
|
example: string;
|
|
4
4
|
description: string;
|
|
5
5
|
defs: FunctionArgumentDefinition[];
|
|
6
6
|
category: FunctionCategory;
|
|
7
|
-
protected main(ref:
|
|
7
|
+
protected main(ref: Sheet): boolean;
|
|
8
8
|
}
|
|
9
9
|
//# sourceMappingURL=isformula.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isformula.d.ts","sourceRoot":"","sources":["../../src/information/isformula.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,0BAA0B,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"isformula.d.ts","sourceRoot":"","sources":["../../src/information/isformula.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAChF,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAIxD,qBAAa,iBAAkB,SAAQ,YAAY;IACjD,OAAO,SAAmB;IAC1B,WAAW,SAAe;IAC1B,IAAI,EAAE,0BAA0B,EAAE,CAQhC;IACF,QAAQ,EAAE,gBAAgB,CAAiB;IAE3C,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK;CAK1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isformula.spec.d.ts","sourceRoot":"","sources":["../../src/information/isformula.spec.ts"],"names":[],"mappings":""}
|