@gridsheet/react-core 0.12.3 → 0.12.4-alpha.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.
Files changed (307) hide show
  1. package/dist/components/Cell.d.ts.map +1 -1
  2. package/dist/components/Emitter.d.ts.map +1 -1
  3. package/dist/components/GridSheet.d.ts.map +1 -1
  4. package/dist/components/HeaderLeftCell.d.ts.map +1 -1
  5. package/dist/components/HeaderTopCell.d.ts.map +1 -1
  6. package/dist/components/Resizer.d.ts.map +1 -1
  7. package/dist/components/SearchBox.d.ts.map +1 -1
  8. package/dist/components/Tabular.d.ts.map +1 -1
  9. package/dist/constants.d.ts.map +1 -1
  10. package/dist/formula/evaluator.d.ts.map +1 -1
  11. package/dist/formula/functions/__base.d.ts.map +1 -1
  12. package/dist/formula/solver.d.ts.map +1 -1
  13. package/dist/index.d.ts +1824 -1
  14. package/dist/index.js +5205 -11
  15. package/dist/lib/structs.d.ts.map +1 -1
  16. package/dist/lib/table.d.ts.map +1 -1
  17. package/dist/lib/time.d.ts.map +1 -1
  18. package/dist/lib/virtualization.d.ts.map +1 -1
  19. package/dist/parsers/core.d.ts.map +1 -1
  20. package/dist/renderers/core.d.ts.map +1 -1
  21. package/dist/store/actions.d.ts.map +1 -1
  22. package/dist/store/index.d.ts.map +1 -1
  23. package/dist/types.d.ts.map +1 -1
  24. package/package.json +13 -3
  25. package/dist/components/Cell.d.ts +0 -8
  26. package/dist/components/Cell.js +0 -199
  27. package/dist/components/Cell.js.map +0 -1
  28. package/dist/components/ContextMenu.d.ts +0 -3
  29. package/dist/components/ContextMenu.js +0 -207
  30. package/dist/components/ContextMenu.js.map +0 -1
  31. package/dist/components/Editor.d.ts +0 -3
  32. package/dist/components/Editor.js +0 -304
  33. package/dist/components/Editor.js.map +0 -1
  34. package/dist/components/Emitter.d.ts +0 -9
  35. package/dist/components/Emitter.js +0 -26
  36. package/dist/components/Emitter.js.map +0 -1
  37. package/dist/components/GridSheet.d.ts +0 -4
  38. package/dist/components/GridSheet.js +0 -110
  39. package/dist/components/GridSheet.js.map +0 -1
  40. package/dist/components/HeaderLeftCell.d.ts +0 -7
  41. package/dist/components/HeaderLeftCell.js +0 -67
  42. package/dist/components/HeaderLeftCell.js.map +0 -1
  43. package/dist/components/HeaderTopCell.d.ts +0 -7
  44. package/dist/components/HeaderTopCell.js +0 -68
  45. package/dist/components/HeaderTopCell.js.map +0 -1
  46. package/dist/components/Resizer.d.ts +0 -3
  47. package/dist/components/Resizer.js +0 -83
  48. package/dist/components/Resizer.js.map +0 -1
  49. package/dist/components/SearchBox.d.ts +0 -3
  50. package/dist/components/SearchBox.js +0 -52
  51. package/dist/components/SearchBox.js.map +0 -1
  52. package/dist/components/StoreInitializer.d.ts +0 -4
  53. package/dist/components/StoreInitializer.js +0 -68
  54. package/dist/components/StoreInitializer.js.map +0 -1
  55. package/dist/components/Tabular.d.ts +0 -9
  56. package/dist/components/Tabular.js +0 -84
  57. package/dist/components/Tabular.js.map +0 -1
  58. package/dist/constants.d.ts +0 -18
  59. package/dist/constants.js +0 -21
  60. package/dist/constants.js.map +0 -1
  61. package/dist/formula/evaluator.d.ts +0 -91
  62. package/dist/formula/evaluator.js +0 -541
  63. package/dist/formula/evaluator.js.map +0 -1
  64. package/dist/formula/functions/__base.d.ts +0 -23
  65. package/dist/formula/functions/__base.js +0 -16
  66. package/dist/formula/functions/__base.js.map +0 -1
  67. package/dist/formula/functions/__utils.d.ts +0 -6
  68. package/dist/formula/functions/__utils.js +0 -102
  69. package/dist/formula/functions/__utils.js.map +0 -1
  70. package/dist/formula/functions/abs.d.ts +0 -12
  71. package/dist/formula/functions/abs.js +0 -21
  72. package/dist/formula/functions/abs.js.map +0 -1
  73. package/dist/formula/functions/abs.spec.d.ts +0 -2
  74. package/dist/formula/functions/abs.spec.js +0 -29
  75. package/dist/formula/functions/abs.spec.js.map +0 -1
  76. package/dist/formula/functions/acos.d.ts +0 -12
  77. package/dist/formula/functions/acos.js +0 -29
  78. package/dist/formula/functions/acos.js.map +0 -1
  79. package/dist/formula/functions/add.d.ts +0 -13
  80. package/dist/formula/functions/add.js +0 -50
  81. package/dist/formula/functions/add.js.map +0 -1
  82. package/dist/formula/functions/and.d.ts +0 -19
  83. package/dist/formula/functions/and.js +0 -28
  84. package/dist/formula/functions/and.js.map +0 -1
  85. package/dist/formula/functions/asin.d.ts +0 -12
  86. package/dist/formula/functions/asin.js +0 -29
  87. package/dist/formula/functions/asin.js.map +0 -1
  88. package/dist/formula/functions/atan.d.ts +0 -12
  89. package/dist/formula/functions/atan.js +0 -26
  90. package/dist/formula/functions/atan.js.map +0 -1
  91. package/dist/formula/functions/atan2.d.ts +0 -12
  92. package/dist/formula/functions/atan2.js +0 -32
  93. package/dist/formula/functions/atan2.js.map +0 -1
  94. package/dist/formula/functions/average.d.ts +0 -19
  95. package/dist/formula/functions/average.js +0 -41
  96. package/dist/formula/functions/average.js.map +0 -1
  97. package/dist/formula/functions/col.d.ts +0 -14
  98. package/dist/formula/functions/col.js +0 -30
  99. package/dist/formula/functions/col.js.map +0 -1
  100. package/dist/formula/functions/concat.d.ts +0 -12
  101. package/dist/formula/functions/concat.js +0 -27
  102. package/dist/formula/functions/concat.js.map +0 -1
  103. package/dist/formula/functions/concatenate.d.ts +0 -19
  104. package/dist/formula/functions/concatenate.js +0 -25
  105. package/dist/formula/functions/concatenate.js.map +0 -1
  106. package/dist/formula/functions/cos.d.ts +0 -12
  107. package/dist/formula/functions/cos.js +0 -26
  108. package/dist/formula/functions/cos.js.map +0 -1
  109. package/dist/formula/functions/count.d.ts +0 -19
  110. package/dist/formula/functions/count.js +0 -35
  111. package/dist/formula/functions/count.js.map +0 -1
  112. package/dist/formula/functions/counta.d.ts +0 -19
  113. package/dist/formula/functions/counta.js +0 -35
  114. package/dist/formula/functions/counta.js.map +0 -1
  115. package/dist/formula/functions/countif.d.ts +0 -13
  116. package/dist/formula/functions/countif.js +0 -30
  117. package/dist/formula/functions/countif.js.map +0 -1
  118. package/dist/formula/functions/divide.d.ts +0 -12
  119. package/dist/formula/functions/divide.js +0 -33
  120. package/dist/formula/functions/divide.js.map +0 -1
  121. package/dist/formula/functions/eq.d.ts +0 -12
  122. package/dist/formula/functions/eq.js +0 -25
  123. package/dist/formula/functions/eq.js.map +0 -1
  124. package/dist/formula/functions/exp.d.ts +0 -12
  125. package/dist/formula/functions/exp.js +0 -28
  126. package/dist/formula/functions/exp.js.map +0 -1
  127. package/dist/formula/functions/gt.d.ts +0 -12
  128. package/dist/formula/functions/gt.js +0 -27
  129. package/dist/formula/functions/gt.js.map +0 -1
  130. package/dist/formula/functions/gte.d.ts +0 -12
  131. package/dist/formula/functions/gte.js +0 -27
  132. package/dist/formula/functions/gte.js.map +0 -1
  133. package/dist/formula/functions/hlookup.d.ts +0 -18
  134. package/dist/formula/functions/hlookup.js +0 -74
  135. package/dist/formula/functions/hlookup.js.map +0 -1
  136. package/dist/formula/functions/if.d.ts +0 -17
  137. package/dist/formula/functions/if.js +0 -36
  138. package/dist/formula/functions/if.js.map +0 -1
  139. package/dist/formula/functions/iferror.d.ts +0 -20
  140. package/dist/formula/functions/iferror.js +0 -41
  141. package/dist/formula/functions/iferror.js.map +0 -1
  142. package/dist/formula/functions/iferror.spec.d.ts +0 -2
  143. package/dist/formula/functions/iferror.spec.js +0 -61
  144. package/dist/formula/functions/iferror.spec.js.map +0 -1
  145. package/dist/formula/functions/len.d.ts +0 -12
  146. package/dist/formula/functions/len.js +0 -26
  147. package/dist/formula/functions/len.js.map +0 -1
  148. package/dist/formula/functions/lenb.d.ts +0 -12
  149. package/dist/formula/functions/lenb.js +0 -26
  150. package/dist/formula/functions/lenb.js.map +0 -1
  151. package/dist/formula/functions/ln.d.ts +0 -12
  152. package/dist/formula/functions/ln.js +0 -29
  153. package/dist/formula/functions/ln.js.map +0 -1
  154. package/dist/formula/functions/log.d.ts +0 -12
  155. package/dist/formula/functions/log.js +0 -35
  156. package/dist/formula/functions/log.js.map +0 -1
  157. package/dist/formula/functions/log10.d.ts +0 -12
  158. package/dist/formula/functions/log10.js +0 -29
  159. package/dist/formula/functions/log10.js.map +0 -1
  160. package/dist/formula/functions/lt.d.ts +0 -12
  161. package/dist/formula/functions/lt.js +0 -27
  162. package/dist/formula/functions/lt.js.map +0 -1
  163. package/dist/formula/functions/lte.d.ts +0 -12
  164. package/dist/formula/functions/lte.js +0 -27
  165. package/dist/formula/functions/lte.js.map +0 -1
  166. package/dist/formula/functions/max.d.ts +0 -19
  167. package/dist/formula/functions/max.js +0 -44
  168. package/dist/formula/functions/max.js.map +0 -1
  169. package/dist/formula/functions/min.d.ts +0 -19
  170. package/dist/formula/functions/min.js +0 -44
  171. package/dist/formula/functions/min.js.map +0 -1
  172. package/dist/formula/functions/minus.d.ts +0 -13
  173. package/dist/formula/functions/minus.js +0 -50
  174. package/dist/formula/functions/minus.js.map +0 -1
  175. package/dist/formula/functions/mod.d.ts +0 -12
  176. package/dist/formula/functions/mod.js +0 -31
  177. package/dist/formula/functions/mod.js.map +0 -1
  178. package/dist/formula/functions/mod.spec.d.ts +0 -2
  179. package/dist/formula/functions/mod.spec.js +0 -52
  180. package/dist/formula/functions/mod.spec.js.map +0 -1
  181. package/dist/formula/functions/multiply.d.ts +0 -12
  182. package/dist/formula/functions/multiply.js +0 -27
  183. package/dist/formula/functions/multiply.js.map +0 -1
  184. package/dist/formula/functions/ne.d.ts +0 -12
  185. package/dist/formula/functions/ne.js +0 -25
  186. package/dist/formula/functions/ne.js.map +0 -1
  187. package/dist/formula/functions/not.d.ts +0 -12
  188. package/dist/formula/functions/not.js +0 -30
  189. package/dist/formula/functions/not.js.map +0 -1
  190. package/dist/formula/functions/now.d.ts +0 -9
  191. package/dist/formula/functions/now.js +0 -21
  192. package/dist/formula/functions/now.js.map +0 -1
  193. package/dist/formula/functions/or.d.ts +0 -19
  194. package/dist/formula/functions/or.js +0 -28
  195. package/dist/formula/functions/or.js.map +0 -1
  196. package/dist/formula/functions/pi.d.ts +0 -9
  197. package/dist/formula/functions/pi.js +0 -19
  198. package/dist/formula/functions/pi.js.map +0 -1
  199. package/dist/formula/functions/power.d.ts +0 -12
  200. package/dist/formula/functions/power.js +0 -24
  201. package/dist/formula/functions/power.js.map +0 -1
  202. package/dist/formula/functions/product.d.ts +0 -19
  203. package/dist/formula/functions/product.js +0 -37
  204. package/dist/formula/functions/product.js.map +0 -1
  205. package/dist/formula/functions/radians.d.ts +0 -12
  206. package/dist/formula/functions/radians.js +0 -26
  207. package/dist/formula/functions/radians.js.map +0 -1
  208. package/dist/formula/functions/rand.d.ts +0 -9
  209. package/dist/formula/functions/rand.js +0 -19
  210. package/dist/formula/functions/rand.js.map +0 -1
  211. package/dist/formula/functions/round.d.ts +0 -17
  212. package/dist/formula/functions/round.js +0 -34
  213. package/dist/formula/functions/round.js.map +0 -1
  214. package/dist/formula/functions/rounddown.d.ts +0 -17
  215. package/dist/formula/functions/rounddown.js +0 -34
  216. package/dist/formula/functions/rounddown.js.map +0 -1
  217. package/dist/formula/functions/roundup.d.ts +0 -17
  218. package/dist/formula/functions/roundup.js +0 -34
  219. package/dist/formula/functions/roundup.js.map +0 -1
  220. package/dist/formula/functions/row.d.ts +0 -14
  221. package/dist/formula/functions/row.js +0 -30
  222. package/dist/formula/functions/row.js.map +0 -1
  223. package/dist/formula/functions/sin.d.ts +0 -12
  224. package/dist/formula/functions/sin.js +0 -26
  225. package/dist/formula/functions/sin.js.map +0 -1
  226. package/dist/formula/functions/sqrt.d.ts +0 -12
  227. package/dist/formula/functions/sqrt.js +0 -29
  228. package/dist/formula/functions/sqrt.js.map +0 -1
  229. package/dist/formula/functions/sum.d.ts +0 -19
  230. package/dist/formula/functions/sum.js +0 -44
  231. package/dist/formula/functions/sum.js.map +0 -1
  232. package/dist/formula/functions/sum.spec.d.ts +0 -2
  233. package/dist/formula/functions/sum.spec.js +0 -40
  234. package/dist/formula/functions/sum.spec.js.map +0 -1
  235. package/dist/formula/functions/sumif.d.ts +0 -18
  236. package/dist/formula/functions/sumif.js +0 -59
  237. package/dist/formula/functions/sumif.js.map +0 -1
  238. package/dist/formula/functions/tan.d.ts +0 -12
  239. package/dist/formula/functions/tan.js +0 -26
  240. package/dist/formula/functions/tan.js.map +0 -1
  241. package/dist/formula/functions/uminus.d.ts +0 -12
  242. package/dist/formula/functions/uminus.js +0 -23
  243. package/dist/formula/functions/uminus.js.map +0 -1
  244. package/dist/formula/functions/vlookup.d.ts +0 -18
  245. package/dist/formula/functions/vlookup.js +0 -74
  246. package/dist/formula/functions/vlookup.js.map +0 -1
  247. package/dist/formula/mapping.d.ts +0 -114
  248. package/dist/formula/mapping.js +0 -114
  249. package/dist/formula/mapping.js.map +0 -1
  250. package/dist/formula/solver.d.ts +0 -12
  251. package/dist/formula/solver.js +0 -64
  252. package/dist/formula/solver.js.map +0 -1
  253. package/dist/index.js.map +0 -1
  254. package/dist/lib/autofill.d.ts +0 -17
  255. package/dist/lib/autofill.js +0 -389
  256. package/dist/lib/autofill.js.map +0 -1
  257. package/dist/lib/clipboard.d.ts +0 -3
  258. package/dist/lib/clipboard.js +0 -45
  259. package/dist/lib/clipboard.js.map +0 -1
  260. package/dist/lib/converters.d.ts +0 -10
  261. package/dist/lib/converters.js +0 -127
  262. package/dist/lib/converters.js.map +0 -1
  263. package/dist/lib/structs.d.ts +0 -60
  264. package/dist/lib/structs.js +0 -251
  265. package/dist/lib/structs.js.map +0 -1
  266. package/dist/lib/table.d.ts +0 -299
  267. package/dist/lib/table.js +0 -989
  268. package/dist/lib/table.js.map +0 -1
  269. package/dist/lib/time.d.ts +0 -14
  270. package/dist/lib/time.js +0 -60
  271. package/dist/lib/time.js.map +0 -1
  272. package/dist/lib/virtualization.d.ts +0 -30
  273. package/dist/lib/virtualization.js +0 -114
  274. package/dist/lib/virtualization.js.map +0 -1
  275. package/dist/parsers/core.d.ts +0 -36
  276. package/dist/parsers/core.js +0 -123
  277. package/dist/parsers/core.js.map +0 -1
  278. package/dist/renderers/checkbox.d.ts +0 -5
  279. package/dist/renderers/checkbox.js +0 -10
  280. package/dist/renderers/checkbox.js.map +0 -1
  281. package/dist/renderers/core.d.ts +0 -48
  282. package/dist/renderers/core.js +0 -143
  283. package/dist/renderers/core.js.map +0 -1
  284. package/dist/renderers/thousand_separator.d.ts +0 -5
  285. package/dist/renderers/thousand_separator.js +0 -14
  286. package/dist/renderers/thousand_separator.js.map +0 -1
  287. package/dist/store/actions.d.ts +0 -198
  288. package/dist/store/actions.js +0 -519
  289. package/dist/store/actions.js.map +0 -1
  290. package/dist/store/helpers.d.ts +0 -28
  291. package/dist/store/helpers.js +0 -78
  292. package/dist/store/helpers.js.map +0 -1
  293. package/dist/store/index.d.ts +0 -11
  294. package/dist/store/index.js +0 -3
  295. package/dist/store/index.js.map +0 -1
  296. package/dist/styles/embedder.d.ts +0 -2
  297. package/dist/styles/embedder.js +0 -16
  298. package/dist/styles/embedder.js.map +0 -1
  299. package/dist/styles/minified.d.ts +0 -3
  300. package/dist/styles/minified.js +0 -4
  301. package/dist/styles/minified.js.map +0 -1
  302. package/dist/types.d.ts +0 -213
  303. package/dist/types.js +0 -2
  304. package/dist/types.js.map +0 -1
  305. package/dist/utils.d.ts +0 -2
  306. package/dist/utils.js +0 -7
  307. package/dist/utils.js.map +0 -1
@@ -1,19 +0,0 @@
1
- import { BaseFunction } from "./__base";
2
- export declare class MaxFunction extends BaseFunction {
3
- example: string;
4
- helpText: string[];
5
- helpArgs: ({
6
- name: string;
7
- description: string;
8
- optional?: undefined;
9
- iterable?: undefined;
10
- } | {
11
- name: string;
12
- description: string;
13
- optional: boolean;
14
- iterable: boolean;
15
- })[];
16
- protected validate(): void;
17
- protected main(...values: number[]): number;
18
- }
19
- //# sourceMappingURL=max.d.ts.map
@@ -1,44 +0,0 @@
1
- import { FormulaError } from "../evaluator";
2
- import { solveTable } from "../solver";
3
- import { Table } from "../../lib/table";
4
- import { BaseFunction } from "./__base";
5
- import { ensureNumber } from "./__utils";
6
- export class MaxFunction extends BaseFunction {
7
- constructor() {
8
- super(...arguments);
9
- this.example = "MAX(A2:A100, 101)";
10
- this.helpText = ["Returns the max in a series of numbers or cells."];
11
- this.helpArgs = [
12
- { name: "value1", description: "First number or range." },
13
- {
14
- name: "value2",
15
- description: "Additional numbers or ranges",
16
- optional: true,
17
- iterable: true,
18
- },
19
- ];
20
- }
21
- validate() {
22
- if (this.bareArgs.length === 0) {
23
- throw new FormulaError("#N/A", "Number of arguments must be greater than 0.");
24
- }
25
- const spreaded = [];
26
- this.bareArgs.map((arg) => {
27
- if (arg instanceof Table) {
28
- spreaded.push(...solveTable({ table: arg })
29
- .reduce((a, b) => a.concat(b))
30
- .filter((v) => typeof v === "number"));
31
- return;
32
- }
33
- spreaded.push(ensureNumber(arg));
34
- });
35
- this.bareArgs = spreaded;
36
- }
37
- main(...values) {
38
- if (values.length === 0) {
39
- return 0;
40
- }
41
- return Math.max(...values);
42
- }
43
- }
44
- //# sourceMappingURL=max.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"max.js","sourceRoot":"","sources":["../../../src/formula/functions/max.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,OAAO,WAAY,SAAQ,YAAY;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;IA8BJ,CAAC;IA5BW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,YAAY,CACpB,MAAM,EACN,6CAA6C,CAC9C,CAAC;SACH;QACD,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACxB,IAAI,GAAG,YAAY,KAAK,EAAE;gBACxB,QAAQ,CAAC,IAAI,CACX,GAAG,UAAU,CAAC,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,YAAY,CAAC,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"}
@@ -1,19 +0,0 @@
1
- import { BaseFunction } from "./__base";
2
- export declare class MinFunction extends BaseFunction {
3
- example: string;
4
- helpText: string[];
5
- helpArgs: ({
6
- name: string;
7
- description: string;
8
- optional?: undefined;
9
- iterable?: undefined;
10
- } | {
11
- name: string;
12
- description: string;
13
- optional: boolean;
14
- iterable: boolean;
15
- })[];
16
- protected validate(): void;
17
- protected main(...values: number[]): number;
18
- }
19
- //# sourceMappingURL=min.d.ts.map
@@ -1,44 +0,0 @@
1
- import { FormulaError } from "../evaluator";
2
- import { solveTable } from "../solver";
3
- import { Table } from "../../lib/table";
4
- import { BaseFunction } from "./__base";
5
- import { ensureNumber } from "./__utils";
6
- export class MinFunction extends BaseFunction {
7
- constructor() {
8
- super(...arguments);
9
- this.example = "MIN(A2:A100, 101)";
10
- this.helpText = ["Returns the min in a series of numbers or cells."];
11
- this.helpArgs = [
12
- { name: "value1", description: "First number or range." },
13
- {
14
- name: "value2",
15
- description: "Additional numbers or ranges",
16
- optional: true,
17
- iterable: true,
18
- },
19
- ];
20
- }
21
- validate() {
22
- if (this.bareArgs.length === 0) {
23
- throw new FormulaError("#N/A", "Number of arguments must be greater than 0.");
24
- }
25
- const spreaded = [];
26
- this.bareArgs.map((arg) => {
27
- if (arg instanceof Table) {
28
- spreaded.push(...solveTable({ table: arg })
29
- .reduce((a, b) => a.concat(b))
30
- .filter((v) => typeof v === "number"));
31
- return;
32
- }
33
- spreaded.push(ensureNumber(arg));
34
- });
35
- this.bareArgs = spreaded;
36
- }
37
- main(...values) {
38
- if (values.length === 0) {
39
- return 0;
40
- }
41
- return Math.min(...values);
42
- }
43
- }
44
- //# sourceMappingURL=min.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"min.js","sourceRoot":"","sources":["../../../src/formula/functions/min.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,OAAO,WAAY,SAAQ,YAAY;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;IA8BJ,CAAC;IA5BW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,YAAY,CACpB,MAAM,EACN,6CAA6C,CAC9C,CAAC;SACH;QACD,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACxB,IAAI,GAAG,YAAY,KAAK,EAAE;gBACxB,QAAQ,CAAC,IAAI,CACX,GAAG,UAAU,CAAC,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,YAAY,CAAC,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"}
@@ -1,13 +0,0 @@
1
- import { TimeDelta } from "../../lib/time";
2
- import { BaseFunction } from "./__base";
3
- export declare class MinusFunction extends BaseFunction {
4
- example: string;
5
- helpText: string[];
6
- helpArgs: {
7
- name: string;
8
- description: string;
9
- }[];
10
- protected validate(): void;
11
- protected main(v1: number | Date | TimeDelta, v2: number | Date | TimeDelta): number | Date | TimeDelta;
12
- }
13
- //# sourceMappingURL=minus.d.ts.map
@@ -1,50 +0,0 @@
1
- import { subSeconds, } from 'date-fns';
2
- import { FormulaError } from "../evaluator";
3
- import { TimeDelta } from "../../lib/time";
4
- import { BaseFunction } from "./__base";
5
- import { ensureNumber, stripTable } from "./__utils";
6
- import { Table } from "../../lib/table";
7
- export class MinusFunction extends BaseFunction {
8
- constructor() {
9
- super(...arguments);
10
- this.example = "MINUS(8, 3)";
11
- this.helpText = [
12
- "Returns the difference of two numbers.",
13
- "This is the same as the '-' operator.",
14
- ];
15
- this.helpArgs = [
16
- { name: "value1", description: "A number that will be subtracted." },
17
- { name: "value2", description: "A number that will subtract from value1." },
18
- ];
19
- }
20
- validate() {
21
- if (this.bareArgs.length !== 2) {
22
- throw new FormulaError("#N/A", "Number of arguments for MINUS is incorrect.");
23
- }
24
- this.bareArgs = this.bareArgs.map((arg) => {
25
- if (arg instanceof Table) {
26
- arg = stripTable(arg, 0, 0);
27
- }
28
- return typeof arg === "object" ? arg : ensureNumber(arg);
29
- });
30
- }
31
- main(v1, v2) {
32
- if (typeof v1 === "number" && typeof v2 === "number") {
33
- return v1 - v2;
34
- }
35
- if (v1 instanceof Date && v2 instanceof Date) {
36
- return new TimeDelta(v1, v2);
37
- }
38
- if (v1 instanceof Date && v2 instanceof TimeDelta) {
39
- return v2.sub(v1);
40
- }
41
- if (v1 instanceof TimeDelta && v2 instanceof Date) {
42
- return v1.sub(v2);
43
- }
44
- if (v1 instanceof Date && typeof v2 === "number") {
45
- return subSeconds(v1, v2);
46
- }
47
- throw new FormulaError("#VALUE!", "Mismatched types for minuend and subtrahend.");
48
- }
49
- }
50
- //# sourceMappingURL=minus.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"minus.js","sourceRoot":"","sources":["../../../src/formula/functions/minus.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,GACX,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAC,YAAY,EAAE,UAAU,EAAC,MAAM,WAAW,CAAC;AACnD,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAEtC,MAAM,OAAO,aAAc,SAAQ,YAAY;IAA/C;;QACE,YAAO,GAAG,aAAa,CAAC;QACxB,aAAQ,GAAG;YACT,wCAAwC;YACxC,uCAAuC;SACxC,CAAC;QACF,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,YAAY,CACpB,MAAM,EACN,6CAA6C,CAC9C,CAAC;SACH;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACxC,IAAI,GAAG,YAAY,KAAK,EAAE;gBACxB,GAAG,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;aAC7B;YACD,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,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,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;SAC9B;QACD,IAAI,EAAE,YAAY,IAAI,IAAI,EAAE,YAAY,SAAS,EAAE;YACjD,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SACnB;QACD,IAAI,EAAE,YAAY,SAAS,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,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;SAC3B;QACD,MAAM,IAAI,YAAY,CACpB,SAAS,EACT,8CAA8C,CAC/C,CAAC;IACJ,CAAC;CACF"}
@@ -1,12 +0,0 @@
1
- import { BaseFunction } from "./__base";
2
- export declare class ModFunction extends BaseFunction {
3
- example: string;
4
- helpText: string[];
5
- helpArgs: {
6
- name: string;
7
- description: string;
8
- }[];
9
- protected validate(): void;
10
- protected main(v1: number, v2: number): number;
11
- }
12
- //# sourceMappingURL=mod.d.ts.map
@@ -1,31 +0,0 @@
1
- import { FormulaError } from "../evaluator";
2
- import { BaseFunction } from "./__base";
3
- import { ensureNumber } from "./__utils";
4
- export class ModFunction extends BaseFunction {
5
- constructor() {
6
- super(...arguments);
7
- this.example = "MOD(10, 4)";
8
- this.helpText = ["Returns the result of the modulo operation."];
9
- this.helpArgs = [
10
- {
11
- name: "dividend",
12
- description: "A number that will be divided by divisor.",
13
- },
14
- { name: "divisor", description: "A number that will divide a dividend." },
15
- ];
16
- }
17
- validate() {
18
- if (this.bareArgs.length !== 2) {
19
- throw new FormulaError("#N/A", "Number of arguments for MOD is incorrect.");
20
- }
21
- this.bareArgs = this.bareArgs.map((arg) => ensureNumber(arg));
22
- if (this.bareArgs[1] === 0) {
23
- throw new FormulaError("#DIV/0!", "The second argument must be non-zero.");
24
- }
25
- }
26
- main(v1, v2) {
27
- // https://stackoverflow.com/questions/4467539/javascript-modulo-gives-a-negative-result-for-negative-numbers
28
- return ((v1 % v2) + v2) % v2;
29
- }
30
- }
31
- //# sourceMappingURL=mod.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mod.js","sourceRoot":"","sources":["../../../src/formula/functions/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,OAAO,WAAY,SAAQ,YAAY;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;IAsBJ,CAAC;IApBW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,YAAY,CACpB,MAAM,EACN,2CAA2C,CAC5C,CAAC;SACH;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9D,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;YAC1B,MAAM,IAAI,YAAY,CACpB,SAAS,EACT,uCAAuC,CACxC,CAAC;SACH;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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=mod.spec.d.ts.map
@@ -1,52 +0,0 @@
1
- import { ModFunction } from "./mod";
2
- import { Table } from "../../lib/table";
3
- import { FormulaError, Ref, Value } from "../evaluator";
4
- describe('mod', () => {
5
- const table = new Table({
6
- numRows: 2, numCols: 2,
7
- cells: { A1: { value: 5 }, A2: { value: -3 }, B2: { value: 25 } },
8
- });
9
- describe('normal', () => {
10
- it('divided by positive value', () => {
11
- {
12
- const f = new ModFunction({ table, args: [new Ref("B2"), new Value(5)] });
13
- expect(f.call()).toBe(0);
14
- }
15
- {
16
- const f = new ModFunction({ table, args: [new Value(12), new Ref("A1")] });
17
- expect(f.call()).toBe(2);
18
- }
19
- {
20
- const f = new ModFunction({ table, args: [new Value(-5), new Value(4)] });
21
- expect(f.call()).toBe(3);
22
- }
23
- });
24
- it('divided by negative value', () => {
25
- {
26
- const f = new ModFunction({ table, args: [new Value(10), new Ref('A2')] });
27
- expect(f.call()).toBe(-2);
28
- }
29
- {
30
- const f = new ModFunction({ table, args: [new Value(-10), new Ref('A2')] });
31
- expect(f.call()).toBe(-1);
32
- }
33
- });
34
- });
35
- describe('validation error', () => {
36
- it('missing argument', () => {
37
- {
38
- const f = new ModFunction({ table, args: [new Value(3)] });
39
- expect(f.call.bind(f)).toThrow(FormulaError);
40
- }
41
- {
42
- const f = new ModFunction({ table, args: [new Value(3)] });
43
- expect(f.call.bind(f)).toThrow(FormulaError);
44
- }
45
- });
46
- it('division by zero', () => {
47
- const f = new ModFunction({ table, args: [new Value(5), new Value(0)] });
48
- expect(f.call.bind(f)).toThrow(FormulaError);
49
- });
50
- });
51
- });
52
- //# sourceMappingURL=mod.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mod.spec.js","sourceRoot":"","sources":["../../../src/formula/functions/mod.spec.ts"],"names":[],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- import { BaseFunction } from "./__base";
2
- export declare class MultiplyFunction extends BaseFunction {
3
- example: string;
4
- helpText: string[];
5
- helpArgs: {
6
- name: string;
7
- description: string;
8
- }[];
9
- protected validate(): void;
10
- protected main(v1: number, v2: number): number;
11
- }
12
- //# sourceMappingURL=multiply.d.ts.map
@@ -1,27 +0,0 @@
1
- import { FormulaError } from "../evaluator";
2
- import { BaseFunction } from "./__base";
3
- import { ensureNumber } from "./__utils";
4
- export class MultiplyFunction extends BaseFunction {
5
- constructor() {
6
- super(...arguments);
7
- this.example = "MULTIPLY(6, 7)";
8
- this.helpText = [
9
- "Returns the product of two numbers.",
10
- "This is the same as the '*' operator.",
11
- ];
12
- this.helpArgs = [
13
- { name: "factor1", description: "First factor." },
14
- { name: "factor2", description: "Second factor." },
15
- ];
16
- }
17
- validate() {
18
- if (this.bareArgs.length !== 2) {
19
- throw new FormulaError("#N/A", "Number of arguments for MULTIPLY is incorrect.");
20
- }
21
- this.bareArgs = this.bareArgs.map((arg) => ensureNumber(arg));
22
- }
23
- main(v1, v2) {
24
- return v1 * v2;
25
- }
26
- }
27
- //# sourceMappingURL=multiply.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"multiply.js","sourceRoot":"","sources":["../../../src/formula/functions/multiply.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,OAAO,gBAAiB,SAAQ,YAAY;IAAlD;;QACE,YAAO,GAAG,gBAAgB,CAAC;QAC3B,aAAQ,GAAG;YACT,qCAAqC;YACrC,uCAAuC;SACxC,CAAC;QACF,aAAQ,GAAG;YACT,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE;YACjD,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE;SACnD,CAAC;IAeJ,CAAC;IAbW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,YAAY,CACpB,MAAM,EACN,gDAAgD,CACjD,CAAC;SACH;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;IAChE,CAAC;IAES,IAAI,CAAC,EAAU,EAAE,EAAU;QACnC,OAAO,EAAE,GAAG,EAAE,CAAC;IACjB,CAAC;CACF"}
@@ -1,12 +0,0 @@
1
- import { BaseFunction } from "./__base";
2
- export declare class NeFunction extends BaseFunction {
3
- example: string;
4
- helpText: string[];
5
- helpArgs: {
6
- name: string;
7
- description: string;
8
- }[];
9
- protected validate(): void;
10
- protected main(v1: number, v2: number): boolean;
11
- }
12
- //# sourceMappingURL=ne.d.ts.map
@@ -1,25 +0,0 @@
1
- import { FormulaError } from "../evaluator";
2
- import { BaseFunction } from "./__base";
3
- export class NeFunction extends BaseFunction {
4
- constructor() {
5
- super(...arguments);
6
- this.example = "NE(6, 7)";
7
- this.helpText = [
8
- "Returns TRUE if the two specified values are not equal, FALSE if they are.",
9
- "This is the same as the '<>' operator.",
10
- ];
11
- this.helpArgs = [
12
- { name: "value1", description: "First value." },
13
- { name: "value2", description: "A value to be compared with value1." },
14
- ];
15
- }
16
- validate() {
17
- if (this.bareArgs.length !== 2) {
18
- throw new FormulaError("#N/A", "Number of arguments for NE is incorrect.");
19
- }
20
- }
21
- main(v1, v2) {
22
- return v1 !== v2;
23
- }
24
- }
25
- //# sourceMappingURL=ne.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ne.js","sourceRoot":"","sources":["../../../src/formula/functions/ne.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,MAAM,OAAO,UAAW,SAAQ,YAAY;IAA5C;;QACE,YAAO,GAAG,UAAU,CAAC;QACrB,aAAQ,GAAG;YACT,4EAA4E;YAC5E,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;IAcJ,CAAC;IAZW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,YAAY,CACpB,MAAM,EACN,0CAA0C,CAC3C,CAAC;SACH;IACH,CAAC;IAES,IAAI,CAAC,EAAU,EAAE,EAAU;QACnC,OAAO,EAAE,KAAK,EAAE,CAAC;IACnB,CAAC;CACF"}
@@ -1,12 +0,0 @@
1
- import { BaseFunction } from "./__base";
2
- export declare class NotFunction extends BaseFunction {
3
- example: string;
4
- helpText: string[];
5
- helpArgs: {
6
- name: string;
7
- description: string;
8
- }[];
9
- protected validate(): void;
10
- protected main(v1: boolean): boolean;
11
- }
12
- //# sourceMappingURL=not.d.ts.map
@@ -1,30 +0,0 @@
1
- import { FormulaError } from "../evaluator";
2
- import { BaseFunction } from "./__base";
3
- import { ensureBoolean } from "./__utils";
4
- export class NotFunction extends BaseFunction {
5
- constructor() {
6
- super(...arguments);
7
- this.example = "NOT(TRUE)";
8
- this.helpText = [
9
- "Returns the inverse of the Boolean; if TRUE, NOT returns FALSE.",
10
- "If FALSE, NOT returns TRUE.",
11
- ];
12
- this.helpArgs = [
13
- {
14
- name: "logical expression",
15
- description: "A logical expression as a boolean.",
16
- },
17
- ];
18
- }
19
- validate() {
20
- if (this.bareArgs.length === 1) {
21
- this.bareArgs[0] = ensureBoolean(this.bareArgs[0]);
22
- return;
23
- }
24
- throw new FormulaError("#N/A", "Number of arguments for NOT is incorrect. 1 argument must be specified.");
25
- }
26
- main(v1) {
27
- return !v1;
28
- }
29
- }
30
- //# sourceMappingURL=not.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"not.js","sourceRoot":"","sources":["../../../src/formula/functions/not.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,MAAM,OAAO,WAAY,SAAQ,YAAY;IAA7C;;QACE,YAAO,GAAG,WAAW,CAAC;QACtB,aAAQ,GAAG;YACT,iEAAiE;YACjE,6BAA6B;SAC9B,CAAC;QACF,aAAQ,GAAG;YACT;gBACE,IAAI,EAAE,oBAAoB;gBAC1B,WAAW,EAAE,oCAAoC;aAClD;SACF,CAAC;IAgBJ,CAAC;IAdW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACnD,OAAO;SACR;QACD,MAAM,IAAI,YAAY,CACpB,MAAM,EACN,yEAAyE,CAC1E,CAAC;IACJ,CAAC;IAES,IAAI,CAAC,EAAW;QACxB,OAAO,CAAC,EAAE,CAAC;IACb,CAAC;CACF"}
@@ -1,9 +0,0 @@
1
- import { BaseFunction } from "./__base";
2
- export declare class NowFunction extends BaseFunction {
3
- example: string;
4
- helpText: string[];
5
- helpArgs: never[];
6
- protected validate(): void;
7
- protected main(): Date;
8
- }
9
- //# sourceMappingURL=now.d.ts.map
@@ -1,21 +0,0 @@
1
- import { FormulaError } from "../evaluator";
2
- import { BaseFunction } from "./__base";
3
- export class NowFunction extends BaseFunction {
4
- constructor() {
5
- super(...arguments);
6
- this.example = "NOW()";
7
- this.helpText = [
8
- "Returns a serial value corresponding to the current date and time.",
9
- ];
10
- this.helpArgs = [];
11
- }
12
- validate() {
13
- if (this.bareArgs.length !== 0) {
14
- throw new FormulaError("#N/A", "Number of arguments for NOW is incorrect.");
15
- }
16
- }
17
- main() {
18
- return new Date();
19
- }
20
- }
21
- //# sourceMappingURL=now.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"now.js","sourceRoot":"","sources":["../../../src/formula/functions/now.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,MAAM,OAAO,WAAY,SAAQ,YAAY;IAA7C;;QACE,YAAO,GAAG,OAAO,CAAC;QAClB,aAAQ,GAAG;YACT,oEAAoE;SACrE,CAAC;QACF,aAAQ,GAAG,EAAE,CAAC;IAchB,CAAC;IAZW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,YAAY,CACpB,MAAM,EACN,2CAA2C,CAC5C,CAAC;SACH;IACH,CAAC;IAES,IAAI;QACZ,OAAO,IAAI,IAAI,EAAE,CAAC;IACpB,CAAC;CACF"}
@@ -1,19 +0,0 @@
1
- import { BaseFunction } from "./__base";
2
- export declare class OrFunction extends BaseFunction {
3
- example: string;
4
- helpText: string[];
5
- helpArgs: ({
6
- name: string;
7
- description: string;
8
- optional?: undefined;
9
- iterable?: undefined;
10
- } | {
11
- name: string;
12
- description: string;
13
- optional: boolean;
14
- iterable: boolean;
15
- })[];
16
- protected validate(): void;
17
- protected main(...values: boolean[]): boolean;
18
- }
19
- //# sourceMappingURL=or.d.ts.map
@@ -1,28 +0,0 @@
1
- import { BaseFunction } from "./__base";
2
- import { ensureBoolean } from "./__utils";
3
- export class OrFunction extends BaseFunction {
4
- constructor() {
5
- super(...arguments);
6
- this.example = "OR(A1=1, A2=2)";
7
- this.helpText = [
8
- "Returns TRUE if any argument is logically true.",
9
- "Returns FALSE if all arguments are logically false.",
10
- ];
11
- this.helpArgs = [
12
- { name: "expression1", description: "First logical expression." },
13
- {
14
- name: "expression2",
15
- description: "Additional expressions",
16
- optional: true,
17
- iterable: true,
18
- },
19
- ];
20
- }
21
- validate() {
22
- this.bareArgs = this.bareArgs.map((arg) => ensureBoolean(arg));
23
- }
24
- main(...values) {
25
- return values.reduce((a, b) => a || b);
26
- }
27
- }
28
- //# sourceMappingURL=or.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"or.js","sourceRoot":"","sources":["../../../src/formula/functions/or.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,MAAM,OAAO,UAAW,SAAQ,YAAY;IAA5C;;QACE,YAAO,GAAG,gBAAgB,CAAC;QAC3B,aAAQ,GAAG;YACT,iDAAiD;YACjD,qDAAqD;SACtD,CAAC;QACF,aAAQ,GAAG;YACT,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,2BAA2B,EAAE;YACjE;gBACE,IAAI,EAAE,aAAa;gBACnB,WAAW,EAAE,wBAAwB;gBACrC,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,IAAI;aACf;SACF,CAAC;IASJ,CAAC;IAPW,QAAQ;QAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;IACjE,CAAC;IAES,IAAI,CAAC,GAAG,MAAiB;QACjC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACzC,CAAC;CACF"}
@@ -1,9 +0,0 @@
1
- import { BaseFunction } from "./__base";
2
- export declare class PiFunction extends BaseFunction {
3
- example: string;
4
- helpText: string[];
5
- helpArgs: never[];
6
- protected validate(): void;
7
- protected main(): number;
8
- }
9
- //# sourceMappingURL=pi.d.ts.map
@@ -1,19 +0,0 @@
1
- import { FormulaError } from "../evaluator";
2
- import { BaseFunction } from "./__base";
3
- export class PiFunction extends BaseFunction {
4
- constructor() {
5
- super(...arguments);
6
- this.example = "PI()";
7
- this.helpText = ["Returns the value of pi."];
8
- this.helpArgs = [];
9
- }
10
- validate() {
11
- if (this.bareArgs.length !== 0) {
12
- throw new FormulaError("#N/A", "Number of arguments for PI is incorrect.");
13
- }
14
- }
15
- main() {
16
- return Math.PI;
17
- }
18
- }
19
- //# sourceMappingURL=pi.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pi.js","sourceRoot":"","sources":["../../../src/formula/functions/pi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,MAAM,OAAO,UAAW,SAAQ,YAAY;IAA5C;;QACE,YAAO,GAAG,MAAM,CAAC;QACjB,aAAQ,GAAG,CAAC,0BAA0B,CAAC,CAAC;QACxC,aAAQ,GAAG,EAAE,CAAC;IAchB,CAAC;IAZW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,YAAY,CACpB,MAAM,EACN,0CAA0C,CAC3C,CAAC;SACH;IACH,CAAC;IAES,IAAI;QACZ,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;CACF"}
@@ -1,12 +0,0 @@
1
- import { BaseFunction } from "./__base";
2
- export declare class PowerFunction extends BaseFunction {
3
- example: string;
4
- helpText: string[];
5
- helpArgs: {
6
- name: string;
7
- description: string;
8
- }[];
9
- protected validate(): void;
10
- protected main(base: number, exponent: number): number;
11
- }
12
- //# sourceMappingURL=power.d.ts.map
@@ -1,24 +0,0 @@
1
- import { FormulaError } from "../evaluator";
2
- import { BaseFunction } from "./__base";
3
- import { ensureNumber } from "./__utils";
4
- export class PowerFunction extends BaseFunction {
5
- constructor() {
6
- super(...arguments);
7
- this.example = "POWER(4,0.5)";
8
- this.helpText = ["Returns a number multiplied by an exponent."];
9
- this.helpArgs = [
10
- { name: "base", description: "A number to be multiplied by an exponent." },
11
- { name: "exponent", description: "An exponent to power the base." },
12
- ];
13
- }
14
- validate() {
15
- if (this.bareArgs.length !== 2) {
16
- throw new FormulaError("#N/A", "Number of arguments for POWER is incorrect.");
17
- }
18
- this.bareArgs = this.bareArgs.map((arg) => ensureNumber(arg));
19
- }
20
- main(base, exponent) {
21
- return Math.pow(base, exponent);
22
- }
23
- }
24
- //# sourceMappingURL=power.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"power.js","sourceRoot":"","sources":["../../../src/formula/functions/power.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,OAAO,aAAc,SAAQ,YAAY;IAA/C;;QACE,YAAO,GAAG,cAAc,CAAC;QACzB,aAAQ,GAAG,CAAC,6CAA6C,CAAC,CAAC;QAC3D,aAAQ,GAAG;YACT,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,2CAA2C,EAAE;YAC1E,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,gCAAgC,EAAE;SACpE,CAAC;IAeJ,CAAC;IAbW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,YAAY,CACpB,MAAM,EACN,6CAA6C,CAC9C,CAAC;SACH;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;IAChE,CAAC;IAES,IAAI,CAAC,IAAY,EAAE,QAAgB;QAC3C,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAClC,CAAC;CACF"}