@gridsheet/react-core 1.0.0-alpha.1 → 1.0.0
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 +11 -3
- package/dist/components/Cell.d.ts +1 -1
- package/dist/components/Cell.d.ts.map +1 -1
- package/dist/components/Cell.js +30 -25
- package/dist/components/Cell.js.map +1 -1
- package/dist/components/ContextMenu.d.ts +1 -1
- package/dist/components/ContextMenu.d.ts.map +1 -1
- package/dist/components/ContextMenu.js +33 -47
- package/dist/components/ContextMenu.js.map +1 -1
- package/dist/components/Editor.d.ts +1 -1
- package/dist/components/Editor.d.ts.map +1 -1
- package/dist/components/Editor.js +70 -47
- package/dist/components/Editor.js.map +1 -1
- package/dist/components/Emitter.d.ts +2 -2
- package/dist/components/Emitter.d.ts.map +1 -1
- package/dist/components/Emitter.js +1 -1
- package/dist/components/Emitter.js.map +1 -1
- package/dist/components/FormulaBar.d.ts +1 -1
- package/dist/components/FormulaBar.d.ts.map +1 -1
- package/dist/components/FormulaBar.js +11 -11
- package/dist/components/FormulaBar.js.map +1 -1
- package/dist/components/GridSheet.d.ts +2 -2
- package/dist/components/GridSheet.d.ts.map +1 -1
- package/dist/components/GridSheet.js +10 -15
- package/dist/components/GridSheet.js.map +1 -1
- package/dist/components/HorizontalHeaderCell.d.ts +1 -1
- package/dist/components/HorizontalHeaderCell.d.ts.map +1 -1
- package/dist/components/HorizontalHeaderCell.js +6 -6
- package/dist/components/HorizontalHeaderCell.js.map +1 -1
- package/dist/components/Resizer.d.ts +1 -1
- package/dist/components/Resizer.d.ts.map +1 -1
- package/dist/components/Resizer.js +8 -9
- package/dist/components/Resizer.js.map +1 -1
- package/dist/components/SearchBox.d.ts +1 -1
- package/dist/components/SearchBox.d.ts.map +1 -1
- package/dist/components/SearchBox.js +8 -9
- package/dist/components/SearchBox.js.map +1 -1
- package/dist/components/SheetProvider.d.ts +2 -2
- package/dist/components/SheetProvider.d.ts.map +1 -1
- package/dist/components/SheetProvider.js +0 -1
- package/dist/components/SheetProvider.js.map +1 -1
- package/dist/components/StoreInitializer.d.ts +2 -2
- package/dist/components/StoreInitializer.d.ts.map +1 -1
- package/dist/components/StoreInitializer.js +4 -4
- package/dist/components/StoreInitializer.js.map +1 -1
- package/dist/components/Tabular.d.ts +2 -2
- package/dist/components/Tabular.d.ts.map +1 -1
- package/dist/components/Tabular.js +5 -10
- package/dist/components/Tabular.js.map +1 -1
- package/dist/components/VerticalHeaderCell.d.ts +1 -1
- package/dist/components/VerticalHeaderCell.d.ts.map +1 -1
- package/dist/components/VerticalHeaderCell.js +6 -6
- package/dist/components/VerticalHeaderCell.js.map +1 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +2 -3
- package/dist/constants.js.map +1 -1
- package/dist/formula/evaluator.d.ts +16 -24
- package/dist/formula/evaluator.d.ts.map +1 -1
- package/dist/formula/evaluator.js +202 -193
- package/dist/formula/evaluator.js.map +1 -1
- package/dist/formula/functions/__base.d.ts +3 -3
- package/dist/formula/functions/__base.d.ts.map +1 -1
- package/dist/formula/functions/__base.js +5 -3
- package/dist/formula/functions/__base.js.map +1 -1
- package/dist/formula/functions/__utils.d.ts.map +1 -1
- package/dist/formula/functions/__utils.js +29 -26
- package/dist/formula/functions/__utils.js.map +1 -1
- package/dist/formula/functions/abs.d.ts +1 -1
- package/dist/formula/functions/abs.d.ts.map +1 -1
- package/dist/formula/functions/abs.js +4 -4
- package/dist/formula/functions/abs.js.map +1 -1
- package/dist/formula/functions/abs.spec.js +3 -3
- package/dist/formula/functions/abs.spec.js.map +1 -1
- package/dist/formula/functions/acos.d.ts +1 -1
- package/dist/formula/functions/acos.d.ts.map +1 -1
- package/dist/formula/functions/acos.js +6 -6
- package/dist/formula/functions/acos.js.map +1 -1
- package/dist/formula/functions/add.d.ts +2 -2
- package/dist/formula/functions/add.d.ts.map +1 -1
- package/dist/formula/functions/add.js +10 -13
- package/dist/formula/functions/add.js.map +1 -1
- package/dist/formula/functions/and.d.ts +1 -1
- package/dist/formula/functions/and.d.ts.map +1 -1
- package/dist/formula/functions/and.js +5 -8
- package/dist/formula/functions/and.js.map +1 -1
- package/dist/formula/functions/asin.d.ts +1 -1
- package/dist/formula/functions/asin.d.ts.map +1 -1
- package/dist/formula/functions/asin.js +6 -6
- package/dist/formula/functions/asin.js.map +1 -1
- package/dist/formula/functions/atan.d.ts +1 -1
- package/dist/formula/functions/atan.d.ts.map +1 -1
- package/dist/formula/functions/atan.js +5 -5
- package/dist/formula/functions/atan.js.map +1 -1
- package/dist/formula/functions/atan2.d.ts +1 -1
- package/dist/formula/functions/atan2.d.ts.map +1 -1
- package/dist/formula/functions/atan2.js +7 -7
- package/dist/formula/functions/atan2.js.map +1 -1
- package/dist/formula/functions/average.d.ts +1 -1
- package/dist/formula/functions/average.d.ts.map +1 -1
- package/dist/formula/functions/average.js +10 -8
- package/dist/formula/functions/average.js.map +1 -1
- package/dist/formula/functions/col.d.ts +2 -2
- package/dist/formula/functions/col.d.ts.map +1 -1
- package/dist/formula/functions/col.js +6 -5
- package/dist/formula/functions/col.js.map +1 -1
- package/dist/formula/functions/concat.d.ts +1 -1
- package/dist/formula/functions/concat.d.ts.map +1 -1
- package/dist/formula/functions/concat.js +4 -7
- package/dist/formula/functions/concat.js.map +1 -1
- package/dist/formula/functions/concatenate.d.ts +1 -1
- package/dist/formula/functions/concatenate.d.ts.map +1 -1
- package/dist/formula/functions/concatenate.js +4 -4
- package/dist/formula/functions/concatenate.js.map +1 -1
- package/dist/formula/functions/cos.d.ts +1 -1
- package/dist/formula/functions/cos.d.ts.map +1 -1
- package/dist/formula/functions/cos.js +5 -5
- package/dist/formula/functions/cos.js.map +1 -1
- package/dist/formula/functions/count.d.ts +1 -1
- package/dist/formula/functions/count.d.ts.map +1 -1
- package/dist/formula/functions/count.js +7 -6
- package/dist/formula/functions/count.js.map +1 -1
- package/dist/formula/functions/counta.d.ts +1 -1
- package/dist/formula/functions/counta.d.ts.map +1 -1
- package/dist/formula/functions/counta.js +7 -6
- package/dist/formula/functions/counta.js.map +1 -1
- package/dist/formula/functions/countif.d.ts +2 -2
- package/dist/formula/functions/countif.d.ts.map +1 -1
- package/dist/formula/functions/countif.js +6 -8
- package/dist/formula/functions/countif.js.map +1 -1
- package/dist/formula/functions/divide.d.ts +1 -1
- package/dist/formula/functions/divide.d.ts.map +1 -1
- package/dist/formula/functions/divide.js +7 -10
- package/dist/formula/functions/divide.js.map +1 -1
- package/dist/formula/functions/eq.d.ts +1 -1
- package/dist/formula/functions/eq.d.ts.map +1 -1
- package/dist/formula/functions/eq.js +5 -5
- package/dist/formula/functions/eq.js.map +1 -1
- package/dist/formula/functions/exp.d.ts +1 -1
- package/dist/formula/functions/exp.d.ts.map +1 -1
- package/dist/formula/functions/exp.js +5 -7
- package/dist/formula/functions/exp.js.map +1 -1
- package/dist/formula/functions/gt.d.ts +1 -1
- package/dist/formula/functions/gt.d.ts.map +1 -1
- package/dist/formula/functions/gt.js +5 -5
- package/dist/formula/functions/gt.js.map +1 -1
- package/dist/formula/functions/gte.d.ts +1 -1
- package/dist/formula/functions/gte.d.ts.map +1 -1
- package/dist/formula/functions/gte.js +5 -5
- package/dist/formula/functions/gte.js.map +1 -1
- package/dist/formula/functions/hlookup.d.ts +2 -2
- package/dist/formula/functions/hlookup.d.ts.map +1 -1
- package/dist/formula/functions/hlookup.js +12 -12
- package/dist/formula/functions/hlookup.js.map +1 -1
- package/dist/formula/functions/if.d.ts +1 -1
- package/dist/formula/functions/if.d.ts.map +1 -1
- package/dist/formula/functions/if.js +8 -8
- package/dist/formula/functions/if.js.map +1 -1
- package/dist/formula/functions/iferror.d.ts +1 -1
- package/dist/formula/functions/iferror.js +6 -6
- package/dist/formula/functions/iferror.js.map +1 -1
- package/dist/formula/functions/iferror.spec.js +15 -14
- package/dist/formula/functions/iferror.spec.js.map +1 -1
- package/dist/formula/functions/len.d.ts +1 -1
- package/dist/formula/functions/len.d.ts.map +1 -1
- package/dist/formula/functions/len.js +5 -5
- package/dist/formula/functions/len.js.map +1 -1
- package/dist/formula/functions/lenb.d.ts +1 -1
- package/dist/formula/functions/lenb.d.ts.map +1 -1
- package/dist/formula/functions/lenb.js +6 -6
- package/dist/formula/functions/lenb.js.map +1 -1
- package/dist/formula/functions/ln.d.ts +1 -1
- package/dist/formula/functions/ln.d.ts.map +1 -1
- package/dist/formula/functions/ln.js +6 -6
- package/dist/formula/functions/ln.js.map +1 -1
- package/dist/formula/functions/log.d.ts +1 -1
- package/dist/formula/functions/log.d.ts.map +1 -1
- package/dist/formula/functions/log.js +8 -10
- package/dist/formula/functions/log.js.map +1 -1
- package/dist/formula/functions/log10.d.ts +1 -1
- package/dist/formula/functions/log10.d.ts.map +1 -1
- package/dist/formula/functions/log10.js +6 -6
- package/dist/formula/functions/log10.js.map +1 -1
- package/dist/formula/functions/lt.d.ts +1 -1
- package/dist/formula/functions/lt.d.ts.map +1 -1
- package/dist/formula/functions/lt.js +5 -5
- package/dist/formula/functions/lt.js.map +1 -1
- package/dist/formula/functions/lte.d.ts +1 -1
- package/dist/formula/functions/lte.d.ts.map +1 -1
- package/dist/formula/functions/lte.js +5 -5
- package/dist/formula/functions/lte.js.map +1 -1
- package/dist/formula/functions/max.d.ts +1 -1
- package/dist/formula/functions/max.d.ts.map +1 -1
- package/dist/formula/functions/max.js +10 -8
- package/dist/formula/functions/max.js.map +1 -1
- package/dist/formula/functions/min.d.ts +1 -1
- package/dist/formula/functions/min.d.ts.map +1 -1
- package/dist/formula/functions/min.js +10 -8
- package/dist/formula/functions/min.js.map +1 -1
- package/dist/formula/functions/minus.d.ts +2 -2
- package/dist/formula/functions/minus.d.ts.map +1 -1
- package/dist/formula/functions/minus.js +9 -12
- package/dist/formula/functions/minus.js.map +1 -1
- package/dist/formula/functions/mod.d.ts +1 -1
- package/dist/formula/functions/mod.d.ts.map +1 -1
- package/dist/formula/functions/mod.js +7 -7
- package/dist/formula/functions/mod.js.map +1 -1
- package/dist/formula/functions/mod.spec.js +23 -8
- package/dist/formula/functions/mod.spec.js.map +1 -1
- package/dist/formula/functions/multiply.d.ts +1 -1
- package/dist/formula/functions/multiply.d.ts.map +1 -1
- package/dist/formula/functions/multiply.js +5 -8
- package/dist/formula/functions/multiply.js.map +1 -1
- package/dist/formula/functions/ne.d.ts +1 -1
- package/dist/formula/functions/ne.d.ts.map +1 -1
- package/dist/formula/functions/ne.js +5 -5
- package/dist/formula/functions/ne.js.map +1 -1
- package/dist/formula/functions/not.d.ts +1 -1
- package/dist/formula/functions/not.d.ts.map +1 -1
- package/dist/formula/functions/not.js +5 -8
- package/dist/formula/functions/not.js.map +1 -1
- package/dist/formula/functions/now.d.ts +1 -1
- package/dist/formula/functions/now.d.ts.map +1 -1
- package/dist/formula/functions/now.js +3 -5
- package/dist/formula/functions/now.js.map +1 -1
- package/dist/formula/functions/or.d.ts +1 -1
- package/dist/formula/functions/or.d.ts.map +1 -1
- package/dist/formula/functions/or.js +5 -8
- package/dist/formula/functions/or.js.map +1 -1
- package/dist/formula/functions/pi.d.ts +1 -1
- package/dist/formula/functions/pi.d.ts.map +1 -1
- package/dist/formula/functions/pi.js +3 -3
- package/dist/formula/functions/pi.js.map +1 -1
- package/dist/formula/functions/power.d.ts +1 -1
- package/dist/formula/functions/power.d.ts.map +1 -1
- package/dist/formula/functions/power.js +5 -5
- package/dist/formula/functions/power.js.map +1 -1
- package/dist/formula/functions/product.d.ts +1 -1
- package/dist/formula/functions/product.d.ts.map +1 -1
- package/dist/formula/functions/product.js +9 -7
- package/dist/formula/functions/product.js.map +1 -1
- package/dist/formula/functions/radians.d.ts +1 -1
- package/dist/formula/functions/radians.d.ts.map +1 -1
- package/dist/formula/functions/radians.js +5 -5
- package/dist/formula/functions/radians.js.map +1 -1
- package/dist/formula/functions/rand.d.ts +1 -1
- package/dist/formula/functions/rand.d.ts.map +1 -1
- package/dist/formula/functions/rand.js +3 -3
- package/dist/formula/functions/rand.js.map +1 -1
- package/dist/formula/functions/round.d.ts +1 -1
- package/dist/formula/functions/round.d.ts.map +1 -1
- package/dist/formula/functions/round.js +7 -9
- package/dist/formula/functions/round.js.map +1 -1
- package/dist/formula/functions/rounddown.d.ts +1 -1
- package/dist/formula/functions/rounddown.d.ts.map +1 -1
- package/dist/formula/functions/rounddown.js +7 -9
- package/dist/formula/functions/rounddown.js.map +1 -1
- package/dist/formula/functions/roundup.d.ts +1 -1
- package/dist/formula/functions/roundup.d.ts.map +1 -1
- package/dist/formula/functions/roundup.js +7 -9
- package/dist/formula/functions/roundup.js.map +1 -1
- package/dist/formula/functions/row.d.ts +2 -2
- package/dist/formula/functions/row.d.ts.map +1 -1
- package/dist/formula/functions/row.js +6 -5
- package/dist/formula/functions/row.js.map +1 -1
- package/dist/formula/functions/sin.d.ts +1 -1
- package/dist/formula/functions/sin.d.ts.map +1 -1
- package/dist/formula/functions/sin.js +5 -5
- package/dist/formula/functions/sin.js.map +1 -1
- package/dist/formula/functions/sqrt.d.ts +1 -1
- package/dist/formula/functions/sqrt.d.ts.map +1 -1
- package/dist/formula/functions/sqrt.js +6 -6
- package/dist/formula/functions/sqrt.js.map +1 -1
- package/dist/formula/functions/sum.d.ts +1 -1
- package/dist/formula/functions/sum.d.ts.map +1 -1
- package/dist/formula/functions/sum.js +10 -8
- package/dist/formula/functions/sum.js.map +1 -1
- package/dist/formula/functions/sum.spec.js +9 -10
- package/dist/formula/functions/sum.spec.js.map +1 -1
- package/dist/formula/functions/sumif.d.ts +2 -2
- package/dist/formula/functions/sumif.d.ts.map +1 -1
- package/dist/formula/functions/sumif.js +9 -9
- package/dist/formula/functions/sumif.js.map +1 -1
- package/dist/formula/functions/tan.d.ts +1 -1
- package/dist/formula/functions/tan.d.ts.map +1 -1
- package/dist/formula/functions/tan.js +5 -5
- package/dist/formula/functions/tan.js.map +1 -1
- package/dist/formula/functions/uminus.d.ts +1 -1
- package/dist/formula/functions/uminus.d.ts.map +1 -1
- package/dist/formula/functions/uminus.js +4 -6
- package/dist/formula/functions/uminus.js.map +1 -1
- package/dist/formula/functions/vlookup.d.ts +2 -2
- package/dist/formula/functions/vlookup.d.ts.map +1 -1
- package/dist/formula/functions/vlookup.js +12 -12
- package/dist/formula/functions/vlookup.js.map +1 -1
- package/dist/formula/mapping.d.ts +2 -113
- package/dist/formula/mapping.d.ts.map +1 -1
- package/dist/formula/mapping.js +1 -0
- package/dist/formula/mapping.js.map +1 -1
- package/dist/formula/solver.d.ts +4 -4
- package/dist/formula/solver.d.ts.map +1 -1
- package/dist/formula/solver.js +6 -6
- package/dist/formula/solver.js.map +1 -1
- package/dist/index.d.ts +15 -15
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/lib/autofill.d.ts +3 -3
- package/dist/lib/autofill.d.ts.map +1 -1
- package/dist/lib/autofill.js +51 -44
- package/dist/lib/autofill.js.map +1 -1
- package/dist/lib/clipboard.d.ts +1 -1
- package/dist/lib/clipboard.d.ts.map +1 -1
- package/dist/lib/clipboard.js +7 -6
- package/dist/lib/clipboard.js.map +1 -1
- package/dist/lib/converters.d.ts +1 -1
- package/dist/lib/converters.d.ts.map +1 -1
- package/dist/lib/converters.js +22 -19
- package/dist/lib/converters.js.map +1 -1
- package/dist/lib/prevention.d.ts +1 -1
- package/dist/lib/prevention.d.ts.map +1 -1
- package/dist/lib/prevention.js +21 -34
- package/dist/lib/prevention.js.map +1 -1
- package/dist/lib/structs.d.ts +4 -4
- package/dist/lib/structs.d.ts.map +1 -1
- package/dist/lib/structs.js +30 -28
- package/dist/lib/structs.js.map +1 -1
- package/dist/lib/table.d.ts +13 -14
- package/dist/lib/table.d.ts.map +1 -1
- package/dist/lib/table.js +87 -72
- package/dist/lib/table.js.map +1 -1
- package/dist/lib/time.d.ts.map +1 -1
- package/dist/lib/time.js +16 -16
- package/dist/lib/time.js.map +1 -1
- package/dist/lib/virtualization.d.ts +2 -2
- package/dist/lib/virtualization.d.ts.map +1 -1
- package/dist/lib/virtualization.js +28 -6
- package/dist/lib/virtualization.js.map +1 -1
- package/dist/parsers/core.d.ts +2 -2
- package/dist/parsers/core.d.ts.map +1 -1
- package/dist/parsers/core.js +19 -15
- package/dist/parsers/core.js.map +1 -1
- package/dist/renderers/checkbox.d.ts +1 -1
- package/dist/renderers/checkbox.d.ts.map +1 -1
- package/dist/renderers/checkbox.js +1 -1
- package/dist/renderers/checkbox.js.map +1 -1
- package/dist/renderers/core.d.ts +3 -3
- package/dist/renderers/core.d.ts.map +1 -1
- package/dist/renderers/core.js +36 -24
- package/dist/renderers/core.js.map +1 -1
- package/dist/renderers/thousand_separator.d.ts +1 -2
- package/dist/renderers/thousand_separator.d.ts.map +1 -1
- package/dist/renderers/thousand_separator.js +5 -5
- package/dist/renderers/thousand_separator.js.map +1 -1
- package/dist/store/actions.d.ts +2 -2
- package/dist/store/actions.d.ts.map +1 -1
- package/dist/store/actions.js +24 -15
- package/dist/store/actions.js.map +1 -1
- package/dist/store/helpers.d.ts +2 -2
- package/dist/store/helpers.d.ts.map +1 -1
- package/dist/store/helpers.js +6 -8
- package/dist/store/helpers.js.map +1 -1
- package/dist/store/index.d.ts +2 -2
- package/dist/styles/embedder.js +1 -1
- package/dist/styles/embedder.js.map +1 -1
- package/dist/styles/minified.d.ts +2 -2
- package/dist/styles/minified.d.ts.map +1 -1
- package/dist/styles/minified.js +2 -2
- package/dist/styles/minified.js.map +1 -1
- package/dist/types.d.ts +13 -13
- package/dist/types.d.ts.map +1 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +1 -0
- package/dist/utils.js.map +1 -1
- package/package.json +11 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/log.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,SAAiB;IACxB,QAAQ,
|
|
1
|
+
{"version":3,"file":"log.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/log.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,SAAiB;IACxB,QAAQ,WAA6E;IACrF,QAAQ;;;QAMN;IAEF,SAAS,CAAC,QAAQ;IAalB,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;CAG3C"}
|
|
@@ -7,28 +7,26 @@ const __utils_1 = require("./__utils");
|
|
|
7
7
|
class LogFunction extends __base_1.BaseFunction {
|
|
8
8
|
constructor() {
|
|
9
9
|
super(...arguments);
|
|
10
|
-
this.example =
|
|
11
|
-
this.helpText = [
|
|
12
|
-
"Returns the logarithm of a number whose base is the specified number.",
|
|
13
|
-
];
|
|
10
|
+
this.example = 'LOG(128, 2)';
|
|
11
|
+
this.helpText = ['Returns the logarithm of a number whose base is the specified number.'];
|
|
14
12
|
this.helpArgs = [
|
|
15
13
|
{
|
|
16
|
-
name:
|
|
17
|
-
description:
|
|
14
|
+
name: 'value',
|
|
15
|
+
description: 'The value for the logarithm of the specified number as base.',
|
|
18
16
|
},
|
|
19
|
-
{ name:
|
|
17
|
+
{ name: 'base', description: 'An exponent to power the base.' },
|
|
20
18
|
];
|
|
21
19
|
}
|
|
22
20
|
validate() {
|
|
23
21
|
if (this.bareArgs.length !== 2) {
|
|
24
|
-
throw new evaluator_1.FormulaError(
|
|
22
|
+
throw new evaluator_1.FormulaError('#N/A', 'Number of arguments for LOG is incorrect.');
|
|
25
23
|
}
|
|
26
24
|
this.bareArgs = this.bareArgs.map((arg) => (0, __utils_1.ensureNumber)(arg));
|
|
27
25
|
if (this.bareArgs[0] <= 0) {
|
|
28
|
-
throw new evaluator_1.FormulaError(
|
|
26
|
+
throw new evaluator_1.FormulaError('NUM!', 'value must be greater than 0');
|
|
29
27
|
}
|
|
30
28
|
if (this.bareArgs[1] <= 1) {
|
|
31
|
-
throw new evaluator_1.FormulaError(
|
|
29
|
+
throw new evaluator_1.FormulaError('NUM!', 'base must be greater than 1');
|
|
32
30
|
}
|
|
33
31
|
}
|
|
34
32
|
main(value, base) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log.js","sourceRoot":"","sources":["../../../src/formula/functions/log.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,WAAY,SAAQ,qBAAY;IAA7C;;QACE,YAAO,GAAG,aAAa,CAAC;QACxB,aAAQ,GAAG
|
|
1
|
+
{"version":3,"file":"log.js","sourceRoot":"","sources":["../../../src/formula/functions/log.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,WAAY,SAAQ,qBAAY;IAA7C;;QACE,YAAO,GAAG,aAAa,CAAC;QACxB,aAAQ,GAAG,CAAC,uEAAuE,CAAC,CAAC;QACrF,aAAQ,GAAG;YACT;gBACE,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,8DAA8D;aAC5E;YACD,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,gCAAgC,EAAE;SAChE,CAAC;IAkBJ,CAAC;IAhBW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,wBAAY,CAAC,MAAM,EAAE,2CAA2C,CAAC,CAAC;SAC7E;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAA,sBAAY,EAAC,GAAG,CAAC,CAAC,CAAC;QAC9D,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;YACzB,MAAM,IAAI,wBAAY,CAAC,MAAM,EAAE,8BAA8B,CAAC,CAAC;SAChE;QACD,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;YACzB,MAAM,IAAI,wBAAY,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAC;SAC/D;IACH,CAAC;IAES,IAAI,CAAC,KAAa,EAAE,IAAY;QACxC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;CACF;AA3BD,kCA2BC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log10.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/log10.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,qBAAa,aAAc,SAAQ,YAAY;IAC7C,OAAO,SAAgB;IACvB,QAAQ,WAAmC;IAC3C,QAAQ;;;QAKN;IAEF,SAAS,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"log10.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/log10.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,qBAAa,aAAc,SAAQ,YAAY;IAC7C,OAAO,SAAgB;IACvB,QAAQ,WAAmC;IAC3C,QAAQ;;;QAKN;IAEF,SAAS,CAAC,QAAQ;IAUlB,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM;CAG7B"}
|
|
@@ -7,22 +7,22 @@ const __utils_1 = require("./__utils");
|
|
|
7
7
|
class Log10Function extends __base_1.BaseFunction {
|
|
8
8
|
constructor() {
|
|
9
9
|
super(...arguments);
|
|
10
|
-
this.example =
|
|
11
|
-
this.helpText = [
|
|
10
|
+
this.example = 'LOG10(100)';
|
|
11
|
+
this.helpText = ['Returns the logarithm of 10'];
|
|
12
12
|
this.helpArgs = [
|
|
13
13
|
{
|
|
14
|
-
name:
|
|
15
|
-
description:
|
|
14
|
+
name: 'value',
|
|
15
|
+
description: 'The value for the logarithm of 10',
|
|
16
16
|
},
|
|
17
17
|
];
|
|
18
18
|
}
|
|
19
19
|
validate() {
|
|
20
20
|
if (this.bareArgs.length !== 1) {
|
|
21
|
-
throw new evaluator_1.FormulaError(
|
|
21
|
+
throw new evaluator_1.FormulaError('#N/A', 'Number of arguments for LOG10 is incorrect.');
|
|
22
22
|
}
|
|
23
23
|
this.bareArgs = this.bareArgs.map((arg) => (0, __utils_1.ensureNumber)(arg));
|
|
24
24
|
if (this.bareArgs[0] <= 0) {
|
|
25
|
-
throw new evaluator_1.FormulaError(
|
|
25
|
+
throw new evaluator_1.FormulaError('NUM!', 'value must be greater than 0');
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
main(value) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log10.js","sourceRoot":"","sources":["../../../src/formula/functions/log10.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,aAAc,SAAQ,qBAAY;IAA/C;;QACE,YAAO,GAAG,YAAY,CAAC;QACvB,aAAQ,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAC3C,aAAQ,GAAG;YACT;gBACE,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,mCAAmC;aACjD;SACF,CAAC;
|
|
1
|
+
{"version":3,"file":"log10.js","sourceRoot":"","sources":["../../../src/formula/functions/log10.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,aAAc,SAAQ,qBAAY;IAA/C;;QACE,YAAO,GAAG,YAAY,CAAC;QACvB,aAAQ,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAC3C,aAAQ,GAAG;YACT;gBACE,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,mCAAmC;aACjD;SACF,CAAC;IAeJ,CAAC;IAbW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,wBAAY,CAAC,MAAM,EAAE,6CAA6C,CAAC,CAAC;SAC/E;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAA,sBAAY,EAAC,GAAG,CAAC,CAAC,CAAC;QAC9D,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;YACzB,MAAM,IAAI,wBAAY,CAAC,MAAM,EAAE,8BAA8B,CAAC,CAAC;SAChE;IACH,CAAC;IAES,IAAI,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;CACF;AAvBD,sCAuBC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lt.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/lt.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,qBAAa,UAAW,SAAQ,YAAY;IAC1C,OAAO,SAAc;IACrB,QAAQ,WAGN;IACF,QAAQ;;;QAGN;IAEF,SAAS,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"lt.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/lt.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,qBAAa,UAAW,SAAQ,YAAY;IAC1C,OAAO,SAAc;IACrB,QAAQ,WAGN;IACF,QAAQ;;;QAGN;IAEF,SAAS,CAAC,QAAQ;IAOlB,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;CAGtC"}
|
|
@@ -7,19 +7,19 @@ const __utils_1 = require("./__utils");
|
|
|
7
7
|
class LtFunction extends __base_1.BaseFunction {
|
|
8
8
|
constructor() {
|
|
9
9
|
super(...arguments);
|
|
10
|
-
this.example =
|
|
10
|
+
this.example = 'LT(3, 6)';
|
|
11
11
|
this.helpText = [
|
|
12
|
-
|
|
12
|
+
'Returns TRUE if the first argument is truely less than the second argument, FALSE otherwise.',
|
|
13
13
|
"This is the same as the '<' operator.",
|
|
14
14
|
];
|
|
15
15
|
this.helpArgs = [
|
|
16
|
-
{ name:
|
|
17
|
-
{ name:
|
|
16
|
+
{ name: 'value1', description: 'First value.' },
|
|
17
|
+
{ name: 'value2', description: 'A value to be compared with value1.' },
|
|
18
18
|
];
|
|
19
19
|
}
|
|
20
20
|
validate() {
|
|
21
21
|
if (this.bareArgs.length !== 2) {
|
|
22
|
-
throw new evaluator_1.FormulaError(
|
|
22
|
+
throw new evaluator_1.FormulaError('#N/A', 'Number of arguments for LT is incorrect.');
|
|
23
23
|
}
|
|
24
24
|
this.bareArgs = this.bareArgs.map((arg) => (0, __utils_1.ensureNumber)(arg));
|
|
25
25
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lt.js","sourceRoot":"","sources":["../../../src/formula/functions/lt.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,UAAW,SAAQ,qBAAY;IAA5C;;QACE,YAAO,GAAG,UAAU,CAAC;QACrB,aAAQ,GAAG;YACT,8FAA8F;YAC9F,uCAAuC;SACxC,CAAC;QACF,aAAQ,GAAG;YACT,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE;YAC/C,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qCAAqC,EAAE;SACvE,CAAC;
|
|
1
|
+
{"version":3,"file":"lt.js","sourceRoot":"","sources":["../../../src/formula/functions/lt.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,UAAW,SAAQ,qBAAY;IAA5C;;QACE,YAAO,GAAG,UAAU,CAAC;QACrB,aAAQ,GAAG;YACT,8FAA8F;YAC9F,uCAAuC;SACxC,CAAC;QACF,aAAQ,GAAG;YACT,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE;YAC/C,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qCAAqC,EAAE;SACvE,CAAC;IAYJ,CAAC;IAVW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,wBAAY,CAAC,MAAM,EAAE,0CAA0C,CAAC,CAAC;SAC5E;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAA,sBAAY,EAAC,GAAG,CAAC,CAAC,CAAC;IAChE,CAAC;IAES,IAAI,CAAC,EAAU,EAAE,EAAU;QACnC,OAAO,EAAE,GAAG,EAAE,CAAC;IACjB,CAAC;CACF;AArBD,gCAqBC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lte.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/lte.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,SAAe;IACtB,QAAQ,WAGN;IACF,QAAQ;;;QAGN;IAEF,SAAS,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"lte.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/lte.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,SAAe;IACtB,QAAQ,WAGN;IACF,QAAQ;;;QAGN;IAEF,SAAS,CAAC,QAAQ;IAOlB,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;CAGtC"}
|
|
@@ -7,19 +7,19 @@ const __utils_1 = require("./__utils");
|
|
|
7
7
|
class LteFunction extends __base_1.BaseFunction {
|
|
8
8
|
constructor() {
|
|
9
9
|
super(...arguments);
|
|
10
|
-
this.example =
|
|
10
|
+
this.example = 'LTE(3, 6)';
|
|
11
11
|
this.helpText = [
|
|
12
|
-
|
|
12
|
+
'Returns TRUE if the first argument is less than the second argument, FALSE otherwise.',
|
|
13
13
|
"This is the same as the '<=' operator.",
|
|
14
14
|
];
|
|
15
15
|
this.helpArgs = [
|
|
16
|
-
{ name:
|
|
17
|
-
{ name:
|
|
16
|
+
{ name: 'value1', description: 'First value.' },
|
|
17
|
+
{ name: 'value2', description: 'A value to be compared with value1.' },
|
|
18
18
|
];
|
|
19
19
|
}
|
|
20
20
|
validate() {
|
|
21
21
|
if (this.bareArgs.length !== 2) {
|
|
22
|
-
throw new evaluator_1.FormulaError(
|
|
22
|
+
throw new evaluator_1.FormulaError('#N/A', 'Number of arguments for LTE is incorrect.');
|
|
23
23
|
}
|
|
24
24
|
this.bareArgs = this.bareArgs.map((arg) => (0, __utils_1.ensureNumber)(arg));
|
|
25
25
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lte.js","sourceRoot":"","sources":["../../../src/formula/functions/lte.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,WAAY,SAAQ,qBAAY;IAA7C;;QACE,YAAO,GAAG,WAAW,CAAC;QACtB,aAAQ,GAAG;YACT,uFAAuF;YACvF,wCAAwC;SACzC,CAAC;QACF,aAAQ,GAAG;YACT,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE;YAC/C,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qCAAqC,EAAE;SACvE,CAAC;
|
|
1
|
+
{"version":3,"file":"lte.js","sourceRoot":"","sources":["../../../src/formula/functions/lte.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,WAAY,SAAQ,qBAAY;IAA7C;;QACE,YAAO,GAAG,WAAW,CAAC;QACtB,aAAQ,GAAG;YACT,uFAAuF;YACvF,wCAAwC;SACzC,CAAC;QACF,aAAQ,GAAG;YACT,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE;YAC/C,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qCAAqC,EAAE;SACvE,CAAC;IAYJ,CAAC;IAVW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,wBAAY,CAAC,MAAM,EAAE,2CAA2C,CAAC,CAAC;SAC7E;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAA,sBAAY,EAAC,GAAG,CAAC,CAAC,CAAC;IAChE,CAAC;IAES,IAAI,CAAC,EAAU,EAAE,EAAU;QACnC,OAAO,EAAE,IAAI,EAAE,CAAC;IAClB,CAAC;CACF;AArBD,kCAqBC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"max.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/max.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,SAAuB;IAC9B,QAAQ,WAAwD;IAChE,QAAQ;;;;;;;;;;SAQN;IAEF,SAAS,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"max.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/max.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,SAAuB;IAC9B,QAAQ,WAAwD;IAChE,QAAQ;;;;;;;;;;SAQN;IAEF,SAAS,CAAC,QAAQ;IAoBlB,SAAS,CAAC,IAAI,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE;CAMnC"}
|
|
@@ -9,13 +9,13 @@ const __utils_1 = require("./__utils");
|
|
|
9
9
|
class MaxFunction extends __base_1.BaseFunction {
|
|
10
10
|
constructor() {
|
|
11
11
|
super(...arguments);
|
|
12
|
-
this.example =
|
|
13
|
-
this.helpText = [
|
|
12
|
+
this.example = 'MAX(A2:A100, 101)';
|
|
13
|
+
this.helpText = ['Returns the max in a series of numbers or cells.'];
|
|
14
14
|
this.helpArgs = [
|
|
15
|
-
{ name:
|
|
15
|
+
{ name: 'value1', description: 'First number or range.' },
|
|
16
16
|
{
|
|
17
|
-
name:
|
|
18
|
-
description:
|
|
17
|
+
name: 'value2',
|
|
18
|
+
description: 'Additional numbers or ranges',
|
|
19
19
|
optional: true,
|
|
20
20
|
iterable: true,
|
|
21
21
|
},
|
|
@@ -23,14 +23,16 @@ class MaxFunction extends __base_1.BaseFunction {
|
|
|
23
23
|
}
|
|
24
24
|
validate() {
|
|
25
25
|
if (this.bareArgs.length === 0) {
|
|
26
|
-
throw new evaluator_1.FormulaError(
|
|
26
|
+
throw new evaluator_1.FormulaError('#N/A', 'Number of arguments must be greater than 0.');
|
|
27
27
|
}
|
|
28
28
|
const spreaded = [];
|
|
29
29
|
this.bareArgs.map((arg) => {
|
|
30
30
|
if (arg instanceof table_1.Table) {
|
|
31
|
-
spreaded.push(
|
|
31
|
+
spreaded.push(
|
|
32
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
|
|
33
|
+
...(0, solver_1.solveTable)({ table: arg })
|
|
32
34
|
.reduce((a, b) => a.concat(b))
|
|
33
|
-
.filter((v) => typeof v ===
|
|
35
|
+
.filter((v) => typeof v === 'number'));
|
|
34
36
|
return;
|
|
35
37
|
}
|
|
36
38
|
spreaded.push((0, __utils_1.ensureNumber)(arg));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"max.js","sourceRoot":"","sources":["../../../src/formula/functions/max.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,sCAAuC;AACvC,2CAAwC;AACxC,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,WAAY,SAAQ,qBAAY;IAA7C;;QACE,YAAO,GAAG,mBAAmB,CAAC;QAC9B,aAAQ,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAChE,aAAQ,GAAG;YACT,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wBAAwB,EAAE;YACzD;gBACE,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8BAA8B;gBAC3C,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,IAAI;aACf;SACF,CAAC;
|
|
1
|
+
{"version":3,"file":"max.js","sourceRoot":"","sources":["../../../src/formula/functions/max.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,sCAAuC;AACvC,2CAAwC;AACxC,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,WAAY,SAAQ,qBAAY;IAA7C;;QACE,YAAO,GAAG,mBAAmB,CAAC;QAC9B,aAAQ,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAChE,aAAQ,GAAG;YACT,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wBAAwB,EAAE;YACzD;gBACE,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8BAA8B;gBAC3C,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,IAAI;aACf;SACF,CAAC;IA4BJ,CAAC;IA1BW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,wBAAY,CAAC,MAAM,EAAE,6CAA6C,CAAC,CAAC;SAC/E;QACD,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACxB,IAAI,GAAG,YAAY,aAAK,EAAE;gBACxB,QAAQ,CAAC,IAAI;gBACX,iEAAiE;gBACjE,GAAG,IAAA,mBAAU,EAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;qBAC1B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;qBAC7B,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAC7C,CAAC;gBACF,OAAO;aACR;YACD,QAAQ,CAAC,IAAI,CAAC,IAAA,sBAAY,EAAC,GAAG,CAAC,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAES,IAAI,CAAC,GAAG,MAAgB;QAChC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACvB,OAAO,CAAC,CAAC;SACV;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;IAC7B,CAAC;CACF;AAvCD,kCAuCC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"min.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/min.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,SAAuB;IAC9B,QAAQ,WAAwD;IAChE,QAAQ;;;;;;;;;;SAQN;IAEF,SAAS,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"min.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/min.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,SAAuB;IAC9B,QAAQ,WAAwD;IAChE,QAAQ;;;;;;;;;;SAQN;IAEF,SAAS,CAAC,QAAQ;IAoBlB,SAAS,CAAC,IAAI,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE;CAMnC"}
|
|
@@ -9,13 +9,13 @@ const __utils_1 = require("./__utils");
|
|
|
9
9
|
class MinFunction extends __base_1.BaseFunction {
|
|
10
10
|
constructor() {
|
|
11
11
|
super(...arguments);
|
|
12
|
-
this.example =
|
|
13
|
-
this.helpText = [
|
|
12
|
+
this.example = 'MIN(A2:A100, 101)';
|
|
13
|
+
this.helpText = ['Returns the min in a series of numbers or cells.'];
|
|
14
14
|
this.helpArgs = [
|
|
15
|
-
{ name:
|
|
15
|
+
{ name: 'value1', description: 'First number or range.' },
|
|
16
16
|
{
|
|
17
|
-
name:
|
|
18
|
-
description:
|
|
17
|
+
name: 'value2',
|
|
18
|
+
description: 'Additional numbers or ranges',
|
|
19
19
|
optional: true,
|
|
20
20
|
iterable: true,
|
|
21
21
|
},
|
|
@@ -23,14 +23,16 @@ class MinFunction extends __base_1.BaseFunction {
|
|
|
23
23
|
}
|
|
24
24
|
validate() {
|
|
25
25
|
if (this.bareArgs.length === 0) {
|
|
26
|
-
throw new evaluator_1.FormulaError(
|
|
26
|
+
throw new evaluator_1.FormulaError('#N/A', 'Number of arguments must be greater than 0.');
|
|
27
27
|
}
|
|
28
28
|
const spreaded = [];
|
|
29
29
|
this.bareArgs.map((arg) => {
|
|
30
30
|
if (arg instanceof table_1.Table) {
|
|
31
|
-
spreaded.push(
|
|
31
|
+
spreaded.push(
|
|
32
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
|
|
33
|
+
...(0, solver_1.solveTable)({ table: arg })
|
|
32
34
|
.reduce((a, b) => a.concat(b))
|
|
33
|
-
.filter((v) => typeof v ===
|
|
35
|
+
.filter((v) => typeof v === 'number'));
|
|
34
36
|
return;
|
|
35
37
|
}
|
|
36
38
|
spreaded.push((0, __utils_1.ensureNumber)(arg));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"min.js","sourceRoot":"","sources":["../../../src/formula/functions/min.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,sCAAuC;AACvC,2CAAwC;AACxC,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,WAAY,SAAQ,qBAAY;IAA7C;;QACE,YAAO,GAAG,mBAAmB,CAAC;QAC9B,aAAQ,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAChE,aAAQ,GAAG;YACT,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wBAAwB,EAAE;YACzD;gBACE,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8BAA8B;gBAC3C,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,IAAI;aACf;SACF,CAAC;
|
|
1
|
+
{"version":3,"file":"min.js","sourceRoot":"","sources":["../../../src/formula/functions/min.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,sCAAuC;AACvC,2CAAwC;AACxC,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,WAAY,SAAQ,qBAAY;IAA7C;;QACE,YAAO,GAAG,mBAAmB,CAAC;QAC9B,aAAQ,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAChE,aAAQ,GAAG;YACT,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wBAAwB,EAAE;YACzD;gBACE,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8BAA8B;gBAC3C,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,IAAI;aACf;SACF,CAAC;IA4BJ,CAAC;IA1BW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,wBAAY,CAAC,MAAM,EAAE,6CAA6C,CAAC,CAAC;SAC/E;QACD,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACxB,IAAI,GAAG,YAAY,aAAK,EAAE;gBACxB,QAAQ,CAAC,IAAI;gBACX,iEAAiE;gBACjE,GAAG,IAAA,mBAAU,EAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;qBAC1B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;qBAC7B,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAC7C,CAAC;gBACF,OAAO;aACR;YACD,QAAQ,CAAC,IAAI,CAAC,IAAA,sBAAY,EAAC,GAAG,CAAC,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAES,IAAI,CAAC,GAAG,MAAgB;QAChC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACvB,OAAO,CAAC,CAAC;SACV;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;IAC7B,CAAC;CACF;AAvCD,kCAuCC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { TimeDelta } from
|
|
2
|
-
import { BaseFunction } from
|
|
1
|
+
import { TimeDelta } from '../../lib/time';
|
|
2
|
+
import { BaseFunction } from './__base';
|
|
3
3
|
export declare class MinusFunction extends BaseFunction {
|
|
4
4
|
example: string;
|
|
5
5
|
helpText: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"minus.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/minus.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"minus.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/minus.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAIxC,qBAAa,aAAc,SAAQ,YAAY;IAC7C,OAAO,SAAiB;IACxB,QAAQ,WAAuF;IAC/F,QAAQ;;;QAGN;IAEF,SAAS,CAAC,QAAQ;IAYlB,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;CAwB5E"}
|
|
@@ -10,29 +10,26 @@ const table_1 = require("../../lib/table");
|
|
|
10
10
|
class MinusFunction extends __base_1.BaseFunction {
|
|
11
11
|
constructor() {
|
|
12
12
|
super(...arguments);
|
|
13
|
-
this.example =
|
|
14
|
-
this.helpText = [
|
|
15
|
-
"Returns the difference of two numbers.",
|
|
16
|
-
"This is the same as the '-' operator.",
|
|
17
|
-
];
|
|
13
|
+
this.example = 'MINUS(8, 3)';
|
|
14
|
+
this.helpText = ['Returns the difference of two numbers.', "This is the same as the '-' operator."];
|
|
18
15
|
this.helpArgs = [
|
|
19
|
-
{ name:
|
|
20
|
-
{ name:
|
|
16
|
+
{ name: 'value1', description: 'A number that will be subtracted.' },
|
|
17
|
+
{ name: 'value2', description: 'A number that will subtract from value1.' },
|
|
21
18
|
];
|
|
22
19
|
}
|
|
23
20
|
validate() {
|
|
24
21
|
if (this.bareArgs.length !== 2) {
|
|
25
|
-
throw new evaluator_1.FormulaError(
|
|
22
|
+
throw new evaluator_1.FormulaError('#N/A', 'Number of arguments for MINUS is incorrect.');
|
|
26
23
|
}
|
|
27
24
|
this.bareArgs = this.bareArgs.map((arg) => {
|
|
28
25
|
if (arg instanceof table_1.Table) {
|
|
29
26
|
arg = (0, __utils_1.stripTable)(arg, 0, 0);
|
|
30
27
|
}
|
|
31
|
-
return typeof arg ===
|
|
28
|
+
return typeof arg === 'object' ? arg : (0, __utils_1.ensureNumber)(arg);
|
|
32
29
|
});
|
|
33
30
|
}
|
|
34
31
|
main(v1, v2) {
|
|
35
|
-
if (typeof v1 ===
|
|
32
|
+
if (typeof v1 === 'number' && typeof v2 === 'number') {
|
|
36
33
|
return v1 - v2;
|
|
37
34
|
}
|
|
38
35
|
if (v1 instanceof Date && v2 instanceof Date) {
|
|
@@ -44,7 +41,7 @@ class MinusFunction extends __base_1.BaseFunction {
|
|
|
44
41
|
if (v1 instanceof time_1.TimeDelta && v2 instanceof Date) {
|
|
45
42
|
return v1.sub(v2);
|
|
46
43
|
}
|
|
47
|
-
if (v1 instanceof Date && typeof v2 ===
|
|
44
|
+
if (v1 instanceof Date && typeof v2 === 'number') {
|
|
48
45
|
return (0, date_fns_1.subSeconds)(v1, v2);
|
|
49
46
|
}
|
|
50
47
|
if (!v1) {
|
|
@@ -53,7 +50,7 @@ class MinusFunction extends __base_1.BaseFunction {
|
|
|
53
50
|
if (!v2) {
|
|
54
51
|
return v1;
|
|
55
52
|
}
|
|
56
|
-
throw new evaluator_1.FormulaError(
|
|
53
|
+
throw new evaluator_1.FormulaError('#VALUE!', 'Mismatched types for minuend and subtrahend.');
|
|
57
54
|
}
|
|
58
55
|
}
|
|
59
56
|
exports.MinusFunction = MinusFunction;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"minus.js","sourceRoot":"","sources":["../../../src/formula/functions/minus.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"minus.js","sourceRoot":"","sources":["../../../src/formula/functions/minus.ts"],"names":[],"mappings":";;;AAAA,uCAAsC;AAEtC,4CAA4C;AAC5C,yCAA2C;AAC3C,qCAAwC;AACxC,uCAAqD;AACrD,2CAAwC;AAExC,MAAa,aAAc,SAAQ,qBAAY;IAA/C;;QACE,YAAO,GAAG,aAAa,CAAC;QACxB,aAAQ,GAAG,CAAC,wCAAwC,EAAE,uCAAuC,CAAC,CAAC;QAC/F,aAAQ,GAAG;YACT,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mCAAmC,EAAE;YACpE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0CAA0C,EAAE;SAC5E,CAAC;IAsCJ,CAAC;IApCW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,wBAAY,CAAC,MAAM,EAAE,6CAA6C,CAAC,CAAC;SAC/E;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACxC,IAAI,GAAG,YAAY,aAAK,EAAE;gBACxB,GAAG,GAAG,IAAA,oBAAU,EAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;aAC7B;YACD,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAA,sBAAY,EAAC,GAAG,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACL,CAAC;IAES,IAAI,CAAC,EAA6B,EAAE,EAA6B;QACzE,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE;YACpD,OAAO,EAAE,GAAG,EAAE,CAAC;SAChB;QACD,IAAI,EAAE,YAAY,IAAI,IAAI,EAAE,YAAY,IAAI,EAAE;YAC5C,OAAO,IAAI,gBAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;SAC9B;QACD,IAAI,EAAE,YAAY,IAAI,IAAI,EAAE,YAAY,gBAAS,EAAE;YACjD,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SACnB;QACD,IAAI,EAAE,YAAY,gBAAS,IAAI,EAAE,YAAY,IAAI,EAAE;YACjD,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SACnB;QACD,IAAI,EAAE,YAAY,IAAI,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE;YAChD,OAAO,IAAA,qBAAU,EAAC,EAAE,EAAE,EAAE,CAAC,CAAC;SAC3B;QACD,IAAI,CAAC,EAAE,EAAE;YACP,OAAO,CAAC,EAAE,CAAC;SACZ;QACD,IAAI,CAAC,EAAE,EAAE;YACP,OAAO,EAAE,CAAC;SACX;QACD,MAAM,IAAI,wBAAY,CAAC,SAAS,EAAE,8CAA8C,CAAC,CAAC;IACpF,CAAC;CACF;AA5CD,sCA4CC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/mod.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,SAAgB;IACvB,QAAQ,WAAmD;IAC3D,QAAQ;;;QAMN;IAEF,SAAS,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/mod.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,SAAgB;IACvB,QAAQ,WAAmD;IAC3D,QAAQ;;;QAMN;IAEF,SAAS,CAAC,QAAQ;IAUlB,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;CAItC"}
|
|
@@ -7,23 +7,23 @@ const __utils_1 = require("./__utils");
|
|
|
7
7
|
class ModFunction extends __base_1.BaseFunction {
|
|
8
8
|
constructor() {
|
|
9
9
|
super(...arguments);
|
|
10
|
-
this.example =
|
|
11
|
-
this.helpText = [
|
|
10
|
+
this.example = 'MOD(10, 4)';
|
|
11
|
+
this.helpText = ['Returns the result of the modulo operation.'];
|
|
12
12
|
this.helpArgs = [
|
|
13
13
|
{
|
|
14
|
-
name:
|
|
15
|
-
description:
|
|
14
|
+
name: 'dividend',
|
|
15
|
+
description: 'A number that will be divided by divisor.',
|
|
16
16
|
},
|
|
17
|
-
{ name:
|
|
17
|
+
{ name: 'divisor', description: 'A number that will divide a dividend.' },
|
|
18
18
|
];
|
|
19
19
|
}
|
|
20
20
|
validate() {
|
|
21
21
|
if (this.bareArgs.length !== 2) {
|
|
22
|
-
throw new evaluator_1.FormulaError(
|
|
22
|
+
throw new evaluator_1.FormulaError('#N/A', 'Number of arguments for MOD is incorrect.');
|
|
23
23
|
}
|
|
24
24
|
this.bareArgs = this.bareArgs.map((arg) => (0, __utils_1.ensureNumber)(arg));
|
|
25
25
|
if (this.bareArgs[1] === 0) {
|
|
26
|
-
throw new evaluator_1.FormulaError(
|
|
26
|
+
throw new evaluator_1.FormulaError('#DIV/0!', 'The second argument must be non-zero.');
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
main(v1, v2) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.js","sourceRoot":"","sources":["../../../src/formula/functions/mod.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,WAAY,SAAQ,qBAAY;IAA7C;;QACE,YAAO,GAAG,YAAY,CAAC;QACvB,aAAQ,GAAG,CAAC,6CAA6C,CAAC,CAAC;QAC3D,aAAQ,GAAG;YACT;gBACE,IAAI,EAAE,UAAU;gBAChB,WAAW,EAAE,2CAA2C;aACzD;YACD,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,uCAAuC,EAAE;SAC1E,CAAC;
|
|
1
|
+
{"version":3,"file":"mod.js","sourceRoot":"","sources":["../../../src/formula/functions/mod.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,WAAY,SAAQ,qBAAY;IAA7C;;QACE,YAAO,GAAG,YAAY,CAAC;QACvB,aAAQ,GAAG,CAAC,6CAA6C,CAAC,CAAC;QAC3D,aAAQ,GAAG;YACT;gBACE,IAAI,EAAE,UAAU;gBAChB,WAAW,EAAE,2CAA2C;aACzD;YACD,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,uCAAuC,EAAE;SAC1E,CAAC;IAgBJ,CAAC;IAdW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,wBAAY,CAAC,MAAM,EAAE,2CAA2C,CAAC,CAAC;SAC7E;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAA,sBAAY,EAAC,GAAG,CAAC,CAAC,CAAC;QAC9D,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;YAC1B,MAAM,IAAI,wBAAY,CAAC,SAAS,EAAE,uCAAuC,CAAC,CAAC;SAC5E;IACH,CAAC;IAES,IAAI,CAAC,EAAU,EAAE,EAAU;QACnC,6GAA6G;QAC7G,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;IAC/B,CAAC;CACF;AAzBD,kCAyBC"}
|
|
@@ -9,25 +9,40 @@ describe('mod', () => {
|
|
|
9
9
|
describe('normal', () => {
|
|
10
10
|
it('divided by positive value', () => {
|
|
11
11
|
{
|
|
12
|
-
const f = new mod_1.ModFunction({
|
|
12
|
+
const f = new mod_1.ModFunction({
|
|
13
|
+
table,
|
|
14
|
+
args: [new evaluator_1.RefEntity('B2'), new evaluator_1.ValueEntity(5)],
|
|
15
|
+
});
|
|
13
16
|
expect(f.call()).toBe(0);
|
|
14
17
|
}
|
|
15
18
|
{
|
|
16
|
-
const f = new mod_1.ModFunction({
|
|
19
|
+
const f = new mod_1.ModFunction({
|
|
20
|
+
table,
|
|
21
|
+
args: [new evaluator_1.ValueEntity(12), new evaluator_1.RefEntity('A1')],
|
|
22
|
+
});
|
|
17
23
|
expect(f.call()).toBe(2);
|
|
18
24
|
}
|
|
19
25
|
{
|
|
20
|
-
const f = new mod_1.ModFunction({
|
|
26
|
+
const f = new mod_1.ModFunction({
|
|
27
|
+
table,
|
|
28
|
+
args: [new evaluator_1.ValueEntity(-5), new evaluator_1.ValueEntity(4)],
|
|
29
|
+
});
|
|
21
30
|
expect(f.call()).toBe(3);
|
|
22
31
|
}
|
|
23
32
|
});
|
|
24
33
|
it('divided by negative value', () => {
|
|
25
34
|
{
|
|
26
|
-
const f = new mod_1.ModFunction({
|
|
35
|
+
const f = new mod_1.ModFunction({
|
|
36
|
+
table,
|
|
37
|
+
args: [new evaluator_1.ValueEntity(10), new evaluator_1.RefEntity('A2')],
|
|
38
|
+
});
|
|
27
39
|
expect(f.call()).toBe(-2);
|
|
28
40
|
}
|
|
29
41
|
{
|
|
30
|
-
const f = new mod_1.ModFunction({
|
|
42
|
+
const f = new mod_1.ModFunction({
|
|
43
|
+
table,
|
|
44
|
+
args: [new evaluator_1.ValueEntity(-10), new evaluator_1.RefEntity('A2')],
|
|
45
|
+
});
|
|
31
46
|
expect(f.call()).toBe(-1);
|
|
32
47
|
}
|
|
33
48
|
});
|
|
@@ -35,16 +50,16 @@ describe('mod', () => {
|
|
|
35
50
|
describe('validation error', () => {
|
|
36
51
|
it('missing argument', () => {
|
|
37
52
|
{
|
|
38
|
-
const f = new mod_1.ModFunction({ table, args: [new evaluator_1.
|
|
53
|
+
const f = new mod_1.ModFunction({ table, args: [new evaluator_1.ValueEntity(3)] });
|
|
39
54
|
expect(f.call.bind(f)).toThrow(evaluator_1.FormulaError);
|
|
40
55
|
}
|
|
41
56
|
{
|
|
42
|
-
const f = new mod_1.ModFunction({ table, args: [new evaluator_1.
|
|
57
|
+
const f = new mod_1.ModFunction({ table, args: [new evaluator_1.ValueEntity(3)] });
|
|
43
58
|
expect(f.call.bind(f)).toThrow(evaluator_1.FormulaError);
|
|
44
59
|
}
|
|
45
60
|
});
|
|
46
61
|
it('division by zero', () => {
|
|
47
|
-
const f = new mod_1.ModFunction({ table, args: [new evaluator_1.
|
|
62
|
+
const f = new mod_1.ModFunction({ table, args: [new evaluator_1.ValueEntity(5), new evaluator_1.ValueEntity(0)] });
|
|
48
63
|
expect(f.call.bind(f)).toThrow(evaluator_1.FormulaError);
|
|
49
64
|
});
|
|
50
65
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.spec.js","sourceRoot":"","sources":["../../../src/formula/functions/mod.spec.ts"],"names":[],"mappings":";;AAAA,+
|
|
1
|
+
{"version":3,"file":"mod.spec.js","sourceRoot":"","sources":["../../../src/formula/functions/mod.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multiply.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/multiply.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,qBAAa,gBAAiB,SAAQ,YAAY;IAChD,OAAO,SAAoB;IAC3B,QAAQ,
|
|
1
|
+
{"version":3,"file":"multiply.d.ts","sourceRoot":"","sources":["../../../src/formula/functions/multiply.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,qBAAa,gBAAiB,SAAQ,YAAY;IAChD,OAAO,SAAoB;IAC3B,QAAQ,WAAoF;IAC5F,QAAQ;;;QAGN;IAEF,SAAS,CAAC,QAAQ;IAOlB,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;CAGtC"}
|
|
@@ -7,19 +7,16 @@ const __utils_1 = require("./__utils");
|
|
|
7
7
|
class MultiplyFunction extends __base_1.BaseFunction {
|
|
8
8
|
constructor() {
|
|
9
9
|
super(...arguments);
|
|
10
|
-
this.example =
|
|
11
|
-
this.helpText = [
|
|
12
|
-
"Returns the product of two numbers.",
|
|
13
|
-
"This is the same as the '*' operator.",
|
|
14
|
-
];
|
|
10
|
+
this.example = 'MULTIPLY(6, 7)';
|
|
11
|
+
this.helpText = ['Returns the product of two numbers.', "This is the same as the '*' operator."];
|
|
15
12
|
this.helpArgs = [
|
|
16
|
-
{ name:
|
|
17
|
-
{ name:
|
|
13
|
+
{ name: 'factor1', description: 'First factor.' },
|
|
14
|
+
{ name: 'factor2', description: 'Second factor.' },
|
|
18
15
|
];
|
|
19
16
|
}
|
|
20
17
|
validate() {
|
|
21
18
|
if (this.bareArgs.length !== 2) {
|
|
22
|
-
throw new evaluator_1.FormulaError(
|
|
19
|
+
throw new evaluator_1.FormulaError('#N/A', 'Number of arguments for MULTIPLY is incorrect.');
|
|
23
20
|
}
|
|
24
21
|
this.bareArgs = this.bareArgs.map((arg) => (0, __utils_1.ensureNumber)(arg));
|
|
25
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multiply.js","sourceRoot":"","sources":["../../../src/formula/functions/multiply.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,gBAAiB,SAAQ,qBAAY;IAAlD;;QACE,YAAO,GAAG,gBAAgB,CAAC;QAC3B,aAAQ,GAAG
|
|
1
|
+
{"version":3,"file":"multiply.js","sourceRoot":"","sources":["../../../src/formula/functions/multiply.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,gBAAiB,SAAQ,qBAAY;IAAlD;;QACE,YAAO,GAAG,gBAAgB,CAAC;QAC3B,aAAQ,GAAG,CAAC,qCAAqC,EAAE,uCAAuC,CAAC,CAAC;QAC5F,aAAQ,GAAG;YACT,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE;YACjD,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE;SACnD,CAAC;IAYJ,CAAC;IAVW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,wBAAY,CAAC,MAAM,EAAE,gDAAgD,CAAC,CAAC;SAClF;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAA,sBAAY,EAAC,GAAG,CAAC,CAAC,CAAC;IAChE,CAAC;IAES,IAAI,CAAC,EAAU,EAAE,EAAU;QACnC,OAAO,EAAE,GAAG,EAAE,CAAC;IACjB,CAAC;CACF;AAlBD,4CAkBC"}
|