@gridsheet/react-core 1.3.1 → 1.4.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (367) hide show
  1. package/dist/components/Cell.d.ts +2 -2
  2. package/dist/components/Cell.d.ts.map +1 -1
  3. package/dist/components/ContextMenu.d.ts +1 -1
  4. package/dist/components/ContextMenu.d.ts.map +1 -1
  5. package/dist/components/Editor.d.ts +4 -4
  6. package/dist/components/Editor.d.ts.map +1 -1
  7. package/dist/components/Emitter.d.ts +2 -2
  8. package/dist/components/Emitter.d.ts.map +1 -1
  9. package/dist/components/Fixed.d.ts +2 -2
  10. package/dist/components/Fixed.d.ts.map +1 -1
  11. package/dist/components/FormulaBar.d.ts +1 -1
  12. package/dist/components/FormulaBar.d.ts.map +1 -1
  13. package/dist/components/GridSheet.d.ts +2 -2
  14. package/dist/components/GridSheet.d.ts.map +1 -1
  15. package/dist/components/HeaderCellLeft.d.ts +2 -2
  16. package/dist/components/HeaderCellLeft.d.ts.map +1 -1
  17. package/dist/components/HeaderCellTop.d.ts +2 -2
  18. package/dist/components/HeaderCellTop.d.ts.map +1 -1
  19. package/dist/components/PluginBase.d.ts +3 -3
  20. package/dist/components/PluginBase.d.ts.map +1 -1
  21. package/dist/components/Resizer.d.ts +1 -1
  22. package/dist/components/Resizer.d.ts.map +1 -1
  23. package/dist/components/SearchBar.d.ts +1 -1
  24. package/dist/components/SearchBar.d.ts.map +1 -1
  25. package/dist/components/SheetProvider.d.ts +3 -3
  26. package/dist/components/SheetProvider.d.ts.map +1 -1
  27. package/dist/components/StoreInitializer.d.ts +1 -1
  28. package/dist/components/StoreInitializer.d.ts.map +1 -1
  29. package/dist/components/Tabular.d.ts +2 -2
  30. package/dist/components/Tabular.d.ts.map +1 -1
  31. package/dist/components/Toggle.d.ts +12 -0
  32. package/dist/components/Toggle.d.ts.map +1 -0
  33. package/dist/components/hooks.d.ts.map +1 -1
  34. package/dist/components/svg/AddIcon.d.ts +4 -0
  35. package/dist/components/svg/AddIcon.d.ts.map +1 -0
  36. package/dist/components/svg/Base.d.ts +1 -1
  37. package/dist/components/svg/Base.d.ts.map +1 -1
  38. package/dist/components/svg/CloseIcon.d.ts +2 -2
  39. package/dist/components/svg/CloseIcon.d.ts.map +1 -1
  40. package/dist/components/svg/SearchIcon.d.ts +2 -2
  41. package/dist/components/svg/SearchIcon.d.ts.map +1 -1
  42. package/dist/constants.d.ts.map +1 -1
  43. package/dist/formula/evaluator.d.ts +5 -5
  44. package/dist/formula/evaluator.d.ts.map +1 -1
  45. package/dist/formula/functions/__base.d.ts +2 -2
  46. package/dist/formula/functions/__base.d.ts.map +1 -1
  47. package/dist/formula/functions/__utils.d.ts.map +1 -1
  48. package/dist/formula/functions/abs.d.ts.map +1 -1
  49. package/dist/formula/functions/abs.spec.d.ts.map +1 -1
  50. package/dist/formula/functions/acos.d.ts.map +1 -1
  51. package/dist/formula/functions/add.d.ts.map +1 -1
  52. package/dist/formula/functions/and.d.ts.map +1 -1
  53. package/dist/formula/functions/asin.d.ts.map +1 -1
  54. package/dist/formula/functions/atan.d.ts.map +1 -1
  55. package/dist/formula/functions/atan2.d.ts.map +1 -1
  56. package/dist/formula/functions/average.d.ts.map +1 -1
  57. package/dist/formula/functions/col.d.ts.map +1 -1
  58. package/dist/formula/functions/concat.d.ts.map +1 -1
  59. package/dist/formula/functions/concatenate.d.ts.map +1 -1
  60. package/dist/formula/functions/cos.d.ts.map +1 -1
  61. package/dist/formula/functions/count.d.ts.map +1 -1
  62. package/dist/formula/functions/counta.d.ts.map +1 -1
  63. package/dist/formula/functions/countif.d.ts.map +1 -1
  64. package/dist/formula/functions/countif.spec.d.ts.map +1 -1
  65. package/dist/formula/functions/divide.d.ts.map +1 -1
  66. package/dist/formula/functions/eq.d.ts.map +1 -1
  67. package/dist/formula/functions/eq.spec.d.ts.map +1 -1
  68. package/dist/formula/functions/exp.d.ts.map +1 -1
  69. package/dist/formula/functions/gt.d.ts.map +1 -1
  70. package/dist/formula/functions/gte.d.ts.map +1 -1
  71. package/dist/formula/functions/hlookup.d.ts.map +1 -1
  72. package/dist/formula/functions/if.d.ts.map +1 -1
  73. package/dist/formula/functions/iferror.d.ts.map +1 -1
  74. package/dist/formula/functions/iferror.spec.d.ts.map +1 -1
  75. package/dist/formula/functions/len.d.ts.map +1 -1
  76. package/dist/formula/functions/lenb.d.ts.map +1 -1
  77. package/dist/formula/functions/ln.d.ts.map +1 -1
  78. package/dist/formula/functions/log.d.ts.map +1 -1
  79. package/dist/formula/functions/log10.d.ts.map +1 -1
  80. package/dist/formula/functions/lt.d.ts.map +1 -1
  81. package/dist/formula/functions/lte.d.ts.map +1 -1
  82. package/dist/formula/functions/max.d.ts.map +1 -1
  83. package/dist/formula/functions/min.d.ts.map +1 -1
  84. package/dist/formula/functions/minus.d.ts.map +1 -1
  85. package/dist/formula/functions/mod.d.ts.map +1 -1
  86. package/dist/formula/functions/mod.spec.d.ts.map +1 -1
  87. package/dist/formula/functions/multiply.d.ts.map +1 -1
  88. package/dist/formula/functions/ne.d.ts.map +1 -1
  89. package/dist/formula/functions/not.d.ts.map +1 -1
  90. package/dist/formula/functions/now.d.ts.map +1 -1
  91. package/dist/formula/functions/or.d.ts.map +1 -1
  92. package/dist/formula/functions/pi.d.ts.map +1 -1
  93. package/dist/formula/functions/power.d.ts.map +1 -1
  94. package/dist/formula/functions/product.d.ts.map +1 -1
  95. package/dist/formula/functions/radians.d.ts.map +1 -1
  96. package/dist/formula/functions/rand.d.ts.map +1 -1
  97. package/dist/formula/functions/round.d.ts.map +1 -1
  98. package/dist/formula/functions/rounddown.d.ts.map +1 -1
  99. package/dist/formula/functions/roundup.d.ts.map +1 -1
  100. package/dist/formula/functions/row.d.ts.map +1 -1
  101. package/dist/formula/functions/sin.d.ts.map +1 -1
  102. package/dist/formula/functions/sqrt.d.ts.map +1 -1
  103. package/dist/formula/functions/sum.d.ts.map +1 -1
  104. package/dist/formula/functions/sum.spec.d.ts.map +1 -1
  105. package/dist/formula/functions/sumif.d.ts.map +1 -1
  106. package/dist/formula/functions/tan.d.ts.map +1 -1
  107. package/dist/formula/functions/uminus.d.ts.map +1 -1
  108. package/dist/formula/functions/vlookup.d.ts.map +1 -1
  109. package/dist/formula/mapping.d.ts +1 -1
  110. package/dist/formula/mapping.d.ts.map +1 -1
  111. package/dist/formula/solver.d.ts +3 -3
  112. package/dist/formula/solver.d.ts.map +1 -1
  113. package/dist/index.d.ts +6 -2
  114. package/dist/index.d.ts.map +1 -1
  115. package/dist/index.js +6823 -58
  116. package/dist/lib/autofill.d.ts +3 -3
  117. package/dist/lib/autofill.d.ts.map +1 -1
  118. package/dist/lib/clipboard.d.ts +1 -1
  119. package/dist/lib/clipboard.d.ts.map +1 -1
  120. package/dist/lib/converters.d.ts +1 -1
  121. package/dist/lib/converters.d.ts.map +1 -1
  122. package/dist/lib/input.d.ts.map +1 -1
  123. package/dist/lib/palette.d.ts.map +1 -1
  124. package/dist/lib/prevention.d.ts.map +1 -1
  125. package/dist/lib/structs.d.ts +21 -21
  126. package/dist/lib/structs.d.ts.map +1 -1
  127. package/dist/lib/table.d.ts +8 -8
  128. package/dist/lib/table.d.ts.map +1 -1
  129. package/dist/lib/time.d.ts +1 -1
  130. package/dist/lib/time.d.ts.map +1 -1
  131. package/dist/lib/virtualization.d.ts +1 -1
  132. package/dist/lib/virtualization.d.ts.map +1 -1
  133. package/dist/parsers/core.d.ts +4 -4
  134. package/dist/parsers/core.d.ts.map +1 -1
  135. package/dist/renderers/checkbox.d.ts.map +1 -1
  136. package/dist/renderers/core.d.ts +4 -4
  137. package/dist/renderers/core.d.ts.map +1 -1
  138. package/dist/renderers/thousand_separator.d.ts.map +1 -1
  139. package/dist/store/actions.d.ts +7 -4
  140. package/dist/store/actions.d.ts.map +1 -1
  141. package/dist/store/helpers.d.ts.map +1 -1
  142. package/dist/store/index.d.ts +2 -2
  143. package/dist/store/index.d.ts.map +1 -1
  144. package/dist/styles/embedder.d.ts.map +1 -1
  145. package/dist/styles/minified.d.ts +2 -2
  146. package/dist/styles/minified.d.ts.map +1 -1
  147. package/dist/types.d.ts +51 -49
  148. package/dist/types.d.ts.map +1 -1
  149. package/dist/utils.d.ts.map +1 -1
  150. package/package.json +19 -43
  151. package/LICENSE +0 -190
  152. package/README.md +0 -26
  153. package/dist/components/Cell.js +0 -188
  154. package/dist/components/Cell.js.map +0 -1
  155. package/dist/components/ContextMenu.js +0 -246
  156. package/dist/components/ContextMenu.js.map +0 -1
  157. package/dist/components/Editor.js +0 -436
  158. package/dist/components/Editor.js.map +0 -1
  159. package/dist/components/Emitter.js +0 -33
  160. package/dist/components/Emitter.js.map +0 -1
  161. package/dist/components/Fixed.js +0 -30
  162. package/dist/components/Fixed.js.map +0 -1
  163. package/dist/components/FormulaBar.js +0 -152
  164. package/dist/components/FormulaBar.js.map +0 -1
  165. package/dist/components/GridSheet.js +0 -208
  166. package/dist/components/GridSheet.js.map +0 -1
  167. package/dist/components/HeaderCellLeft.js +0 -121
  168. package/dist/components/HeaderCellLeft.js.map +0 -1
  169. package/dist/components/HeaderCellTop.js +0 -122
  170. package/dist/components/HeaderCellTop.js.map +0 -1
  171. package/dist/components/PluginBase.js +0 -41
  172. package/dist/components/PluginBase.js.map +0 -1
  173. package/dist/components/Resizer.js +0 -91
  174. package/dist/components/Resizer.js.map +0 -1
  175. package/dist/components/SearchBar.js +0 -73
  176. package/dist/components/SearchBar.js.map +0 -1
  177. package/dist/components/SheetProvider.js +0 -60
  178. package/dist/components/SheetProvider.js.map +0 -1
  179. package/dist/components/StoreInitializer.js +0 -73
  180. package/dist/components/StoreInitializer.js.map +0 -1
  181. package/dist/components/Tabular.js +0 -249
  182. package/dist/components/Tabular.js.map +0 -1
  183. package/dist/components/hooks.js +0 -20
  184. package/dist/components/hooks.js.map +0 -1
  185. package/dist/components/svg/Base.js +0 -13
  186. package/dist/components/svg/Base.js.map +0 -1
  187. package/dist/components/svg/CloseIcon.js +0 -17
  188. package/dist/components/svg/CloseIcon.js.map +0 -1
  189. package/dist/components/svg/SearchIcon.js +0 -17
  190. package/dist/components/svg/SearchIcon.js.map +0 -1
  191. package/dist/constants.js +0 -29
  192. package/dist/constants.js.map +0 -1
  193. package/dist/formula/evaluator.js +0 -726
  194. package/dist/formula/evaluator.js.map +0 -1
  195. package/dist/formula/functions/__base.js +0 -22
  196. package/dist/formula/functions/__base.js.map +0 -1
  197. package/dist/formula/functions/__utils.js +0 -162
  198. package/dist/formula/functions/__utils.js.map +0 -1
  199. package/dist/formula/functions/abs.js +0 -25
  200. package/dist/formula/functions/abs.js.map +0 -1
  201. package/dist/formula/functions/abs.spec.js +0 -30
  202. package/dist/formula/functions/abs.spec.js.map +0 -1
  203. package/dist/formula/functions/acos.js +0 -33
  204. package/dist/formula/functions/acos.js.map +0 -1
  205. package/dist/formula/functions/add.js +0 -65
  206. package/dist/formula/functions/add.js.map +0 -1
  207. package/dist/formula/functions/and.js +0 -29
  208. package/dist/formula/functions/and.js.map +0 -1
  209. package/dist/formula/functions/asin.js +0 -33
  210. package/dist/formula/functions/asin.js.map +0 -1
  211. package/dist/formula/functions/atan.js +0 -30
  212. package/dist/formula/functions/atan.js.map +0 -1
  213. package/dist/formula/functions/atan2.js +0 -36
  214. package/dist/formula/functions/atan2.js.map +0 -1
  215. package/dist/formula/functions/average.js +0 -47
  216. package/dist/formula/functions/average.js.map +0 -1
  217. package/dist/formula/functions/col.js +0 -35
  218. package/dist/formula/functions/col.js.map +0 -1
  219. package/dist/formula/functions/concat.js +0 -28
  220. package/dist/formula/functions/concat.js.map +0 -1
  221. package/dist/formula/functions/concatenate.js +0 -29
  222. package/dist/formula/functions/concatenate.js.map +0 -1
  223. package/dist/formula/functions/cos.js +0 -30
  224. package/dist/formula/functions/cos.js.map +0 -1
  225. package/dist/formula/functions/count.js +0 -40
  226. package/dist/formula/functions/count.js.map +0 -1
  227. package/dist/formula/functions/counta.js +0 -40
  228. package/dist/formula/functions/counta.js.map +0 -1
  229. package/dist/formula/functions/countif.js +0 -33
  230. package/dist/formula/functions/countif.js.map +0 -1
  231. package/dist/formula/functions/countif.spec.js +0 -185
  232. package/dist/formula/functions/countif.spec.js.map +0 -1
  233. package/dist/formula/functions/divide.js +0 -34
  234. package/dist/formula/functions/divide.js.map +0 -1
  235. package/dist/formula/functions/eq.js +0 -30
  236. package/dist/formula/functions/eq.js.map +0 -1
  237. package/dist/formula/functions/eq.spec.js +0 -92
  238. package/dist/formula/functions/eq.spec.js.map +0 -1
  239. package/dist/formula/functions/exp.js +0 -30
  240. package/dist/formula/functions/exp.js.map +0 -1
  241. package/dist/formula/functions/gt.js +0 -30
  242. package/dist/formula/functions/gt.js.map +0 -1
  243. package/dist/formula/functions/gte.js +0 -30
  244. package/dist/formula/functions/gte.js.map +0 -1
  245. package/dist/formula/functions/hlookup.js +0 -78
  246. package/dist/formula/functions/hlookup.js.map +0 -1
  247. package/dist/formula/functions/if.js +0 -40
  248. package/dist/formula/functions/if.js.map +0 -1
  249. package/dist/formula/functions/iferror.js +0 -45
  250. package/dist/formula/functions/iferror.js.map +0 -1
  251. package/dist/formula/functions/iferror.spec.js +0 -62
  252. package/dist/formula/functions/iferror.spec.js.map +0 -1
  253. package/dist/formula/functions/len.js +0 -30
  254. package/dist/formula/functions/len.js.map +0 -1
  255. package/dist/formula/functions/lenb.js +0 -30
  256. package/dist/formula/functions/lenb.js.map +0 -1
  257. package/dist/formula/functions/ln.js +0 -33
  258. package/dist/formula/functions/ln.js.map +0 -1
  259. package/dist/formula/functions/log.js +0 -37
  260. package/dist/formula/functions/log.js.map +0 -1
  261. package/dist/formula/functions/log10.js +0 -33
  262. package/dist/formula/functions/log10.js.map +0 -1
  263. package/dist/formula/functions/lt.js +0 -30
  264. package/dist/formula/functions/lt.js.map +0 -1
  265. package/dist/formula/functions/lte.js +0 -30
  266. package/dist/formula/functions/lte.js.map +0 -1
  267. package/dist/formula/functions/max.js +0 -50
  268. package/dist/formula/functions/max.js.map +0 -1
  269. package/dist/formula/functions/min.js +0 -50
  270. package/dist/formula/functions/min.js.map +0 -1
  271. package/dist/formula/functions/minus.js +0 -63
  272. package/dist/formula/functions/minus.js.map +0 -1
  273. package/dist/formula/functions/mod.js +0 -35
  274. package/dist/formula/functions/mod.js.map +0 -1
  275. package/dist/formula/functions/mod.spec.js +0 -67
  276. package/dist/formula/functions/mod.spec.js.map +0 -1
  277. package/dist/formula/functions/multiply.js +0 -28
  278. package/dist/formula/functions/multiply.js.map +0 -1
  279. package/dist/formula/functions/ne.js +0 -30
  280. package/dist/formula/functions/ne.js.map +0 -1
  281. package/dist/formula/functions/not.js +0 -31
  282. package/dist/formula/functions/not.js.map +0 -1
  283. package/dist/formula/functions/now.js +0 -23
  284. package/dist/formula/functions/now.js.map +0 -1
  285. package/dist/formula/functions/or.js +0 -29
  286. package/dist/formula/functions/or.js.map +0 -1
  287. package/dist/formula/functions/pi.js +0 -23
  288. package/dist/formula/functions/pi.js.map +0 -1
  289. package/dist/formula/functions/power.js +0 -28
  290. package/dist/formula/functions/power.js.map +0 -1
  291. package/dist/formula/functions/product.js +0 -43
  292. package/dist/formula/functions/product.js.map +0 -1
  293. package/dist/formula/functions/radians.js +0 -30
  294. package/dist/formula/functions/radians.js.map +0 -1
  295. package/dist/formula/functions/rand.js +0 -23
  296. package/dist/formula/functions/rand.js.map +0 -1
  297. package/dist/formula/functions/round.js +0 -36
  298. package/dist/formula/functions/round.js.map +0 -1
  299. package/dist/formula/functions/rounddown.js +0 -36
  300. package/dist/formula/functions/rounddown.js.map +0 -1
  301. package/dist/formula/functions/roundup.js +0 -36
  302. package/dist/formula/functions/roundup.js.map +0 -1
  303. package/dist/formula/functions/row.js +0 -35
  304. package/dist/formula/functions/row.js.map +0 -1
  305. package/dist/formula/functions/sin.js +0 -30
  306. package/dist/formula/functions/sin.js.map +0 -1
  307. package/dist/formula/functions/sqrt.js +0 -33
  308. package/dist/formula/functions/sqrt.js.map +0 -1
  309. package/dist/formula/functions/sum.js +0 -50
  310. package/dist/formula/functions/sum.js.map +0 -1
  311. package/dist/formula/functions/sum.spec.js +0 -39
  312. package/dist/formula/functions/sum.spec.js.map +0 -1
  313. package/dist/formula/functions/sumif.js +0 -64
  314. package/dist/formula/functions/sumif.js.map +0 -1
  315. package/dist/formula/functions/tan.js +0 -30
  316. package/dist/formula/functions/tan.js.map +0 -1
  317. package/dist/formula/functions/uminus.js +0 -25
  318. package/dist/formula/functions/uminus.js.map +0 -1
  319. package/dist/formula/functions/vlookup.js +0 -78
  320. package/dist/formula/functions/vlookup.js.map +0 -1
  321. package/dist/formula/mapping.js +0 -118
  322. package/dist/formula/mapping.js.map +0 -1
  323. package/dist/formula/solver.js +0 -75
  324. package/dist/formula/solver.js.map +0 -1
  325. package/dist/index.js.map +0 -1
  326. package/dist/lib/autofill.js +0 -406
  327. package/dist/lib/autofill.js.map +0 -1
  328. package/dist/lib/clipboard.js +0 -50
  329. package/dist/lib/clipboard.js.map +0 -1
  330. package/dist/lib/converters.js +0 -145
  331. package/dist/lib/converters.js.map +0 -1
  332. package/dist/lib/input.js +0 -60
  333. package/dist/lib/input.js.map +0 -1
  334. package/dist/lib/palette.js +0 -24
  335. package/dist/lib/palette.js.map +0 -1
  336. package/dist/lib/prevention.js +0 -64
  337. package/dist/lib/prevention.js.map +0 -1
  338. package/dist/lib/structs.js +0 -308
  339. package/dist/lib/structs.js.map +0 -1
  340. package/dist/lib/table.js +0 -1160
  341. package/dist/lib/table.js.map +0 -1
  342. package/dist/lib/time.js +0 -78
  343. package/dist/lib/time.js.map +0 -1
  344. package/dist/lib/virtualization.js +0 -149
  345. package/dist/lib/virtualization.js.map +0 -1
  346. package/dist/parsers/core.js +0 -147
  347. package/dist/parsers/core.js.map +0 -1
  348. package/dist/renderers/checkbox.js +0 -16
  349. package/dist/renderers/checkbox.js.map +0 -1
  350. package/dist/renderers/core.js +0 -161
  351. package/dist/renderers/core.js.map +0 -1
  352. package/dist/renderers/thousand_separator.js +0 -17
  353. package/dist/renderers/thousand_separator.js.map +0 -1
  354. package/dist/store/actions.js +0 -603
  355. package/dist/store/actions.js.map +0 -1
  356. package/dist/store/helpers.js +0 -89
  357. package/dist/store/helpers.js.map +0 -1
  358. package/dist/store/index.js +0 -29
  359. package/dist/store/index.js.map +0 -1
  360. package/dist/styles/embedder.js +0 -20
  361. package/dist/styles/embedder.js.map +0 -1
  362. package/dist/styles/minified.js +0 -7
  363. package/dist/styles/minified.js.map +0 -1
  364. package/dist/types.js +0 -3
  365. package/dist/types.js.map +0 -1
  366. package/dist/utils.js +0 -12
  367. package/dist/utils.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"evaluator.js","sourceRoot":"","sources":["../../src/formula/evaluator.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BaseFunction = void 0;
4
- class BaseFunction {
5
- constructor({ args, table }) {
6
- this.example = '_BASE()';
7
- this.helpTexts = ["Function's description."];
8
- this.helpArgs = [{ name: 'value1', description: '' }];
9
- this.bareArgs = args.map((a) => a.evaluate({ table }));
10
- this.table = table;
11
- }
12
- validate() { }
13
- call() {
14
- this.validate();
15
- // @ts-expect-error main is not defined in BaseFunction
16
- // eslint-disable-next-line @typescript-eslint/no-unsafe-return
17
- // eslint-disable-next-line @typescript-eslint/no-unsafe-call
18
- return this.main(...this.bareArgs);
19
- }
20
- }
21
- exports.BaseFunction = BaseFunction;
22
- //# sourceMappingURL=__base.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"__base.js","sourceRoot":"","sources":["../../../src/formula/functions/__base.ts"],"names":[],"mappings":";;;AAQA,MAAa,YAAY;IAOvB,YAAY,EAAE,IAAI,EAAE,KAAK,EAAiB;QANnC,YAAO,GAAG,SAAS,CAAC;QACpB,cAAS,GAAG,CAAC,yBAAyB,CAAC,CAAC;QACxC,aAAQ,GAAG,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;QAKtD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QACvD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IACS,QAAQ,KAAI,CAAC;IAEhB,IAAI;QACT,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEhB,uDAAuD;QACvD,+DAA+D;QAC/D,6DAA6D;QAC7D,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;CACF;AArBD,oCAqBC"}
@@ -1,162 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.check = exports.stripTable = exports.ensureBoolean = exports.ensureString = exports.ensureNumber = exports.ne = exports.eq = exports.lte = exports.lt = exports.gte = exports.gt = void 0;
7
- const solver_1 = require("../solver");
8
- const table_1 = require("../../lib/table");
9
- const evaluator_1 = require("../evaluator");
10
- const dayjs_1 = __importDefault(require("dayjs"));
11
- const constants_1 = require("../../constants");
12
- const gt = (left, right) => {
13
- if (typeof left === 'string' || typeof right === 'string') {
14
- return (0, exports.ensureString)(left) > (0, exports.ensureString)(right);
15
- }
16
- try {
17
- return (0, exports.ensureNumber)(left) > (0, exports.ensureNumber)(right);
18
- }
19
- catch (_a) {
20
- return false;
21
- }
22
- };
23
- exports.gt = gt;
24
- const gte = (left, right) => {
25
- if (typeof left === 'string' || typeof right === 'string') {
26
- return (0, exports.ensureString)(left) >= (0, exports.ensureString)(right);
27
- }
28
- try {
29
- return (0, exports.ensureNumber)(left) >= (0, exports.ensureNumber)(right);
30
- }
31
- catch (_a) {
32
- return false;
33
- }
34
- };
35
- exports.gte = gte;
36
- const lt = (left, right) => {
37
- return !(0, exports.gte)(left, right);
38
- };
39
- exports.lt = lt;
40
- const lte = (left, right) => {
41
- return !(0, exports.gt)(left, right);
42
- };
43
- exports.lte = lte;
44
- const eq = (left, right) => {
45
- return (0, exports.ensureString)(left) === (0, exports.ensureString)(right);
46
- };
47
- exports.eq = eq;
48
- const ne = (left, right) => {
49
- return !(0, exports.eq)(left, right);
50
- };
51
- exports.ne = ne;
52
- const ensureNumber = (value, alternative) => {
53
- if (typeof value === 'undefined' && typeof alternative !== 'undefined') {
54
- return alternative;
55
- }
56
- if (!value) {
57
- // falsy is 0
58
- return 0;
59
- }
60
- if (value instanceof table_1.Table) {
61
- const v = (0, exports.stripTable)(value, 0, 0);
62
- return (0, exports.ensureNumber)(v, alternative);
63
- }
64
- if (value instanceof Date) {
65
- return value.getTime();
66
- }
67
- const num = parseFloat(value);
68
- if (isNaN(num)) {
69
- throw new evaluator_1.FormulaError('#VALUE!', `${value} cannot be converted to a number`);
70
- }
71
- return num;
72
- };
73
- exports.ensureNumber = ensureNumber;
74
- const ensureString = (value) => {
75
- if (value === 0) {
76
- return '0';
77
- }
78
- if (!value) {
79
- return '';
80
- }
81
- if (value instanceof table_1.Table) {
82
- const v = (0, exports.stripTable)(value, 0, 0);
83
- return (0, exports.ensureString)(v);
84
- }
85
- switch (value.constructor.name) {
86
- case 'Date': {
87
- const d = value;
88
- return (0, dayjs_1.default)(d).format(constants_1.FULLDATE_FORMAT_UTC);
89
- }
90
- default:
91
- return String(value);
92
- }
93
- };
94
- exports.ensureString = ensureString;
95
- const ensureBoolean = (value, alternative) => {
96
- if (typeof value === 'undefined' && typeof alternative !== 'undefined') {
97
- return alternative;
98
- }
99
- if (value === null) {
100
- return false;
101
- }
102
- if (value instanceof table_1.Table) {
103
- const v = (0, exports.stripTable)(value, 0, 0);
104
- return (0, exports.ensureBoolean)(v, alternative);
105
- }
106
- if (typeof value === 'string' || value instanceof String) {
107
- const bool = { true: true, false: false }[value.toLowerCase()];
108
- if (bool == null) {
109
- throw new evaluator_1.FormulaError('#VALUE!', `text '${value}' cannot be converted to a boolean`);
110
- }
111
- return bool;
112
- }
113
- return Boolean(value);
114
- };
115
- exports.ensureBoolean = ensureBoolean;
116
- const stripTable = (value, y = 0, x = 0) => {
117
- if (value instanceof table_1.Table) {
118
- return (0, solver_1.solveTable)({ table: value })[y][x];
119
- }
120
- return value;
121
- };
122
- exports.stripTable = stripTable;
123
- const CONDITION_REGEX = /^(<=|>=|<>|>|<|=)?(.*)$/;
124
- const check = (value, condition) => {
125
- const m = condition.match(CONDITION_REGEX);
126
- // eslint-disable-next-line no-unsafe-optional-chaining
127
- // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain
128
- const [, expr = '', target = ''] = m || [];
129
- let comparison = target;
130
- if (expr === '>' || expr === '<' || expr === '>=' || expr === '<=') {
131
- if (typeof value === 'number') {
132
- comparison = parseFloat(target);
133
- }
134
- switch (expr) {
135
- case '>':
136
- return (0, exports.gt)(value, comparison);
137
- case '>=':
138
- return (0, exports.gte)(value, comparison);
139
- case '<':
140
- return (0, exports.lt)(value, comparison);
141
- case '<=':
142
- return (0, exports.lte)(value, comparison);
143
- }
144
- }
145
- const equals = expr === '' || expr === '=';
146
- if (target === '') {
147
- // empty target means "" or "<>"
148
- return (value == null || value === '') === equals;
149
- }
150
- if (typeof value === 'string' || value instanceof String) {
151
- const replaced = target
152
- .replace(/~\*/g, '(\\*)')
153
- .replace(/~\?/g, '(\\?)')
154
- .replace(/\*/g, '(.*)')
155
- .replace(/\?/g, '(.)');
156
- const regex = RegExp(`^${replaced}$`, 'i');
157
- return regex.test(value) === equals;
158
- }
159
- return (0, exports.eq)(value, comparison) === equals;
160
- };
161
- exports.check = check;
162
- //# sourceMappingURL=__utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"__utils.js","sourceRoot":"","sources":["../../../src/formula/functions/__utils.ts"],"names":[],"mappings":"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"}
@@ -1,25 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AbsFunction = void 0;
4
- const evaluator_1 = require("../evaluator");
5
- const __base_1 = require("./__base");
6
- const __utils_1 = require("./__utils");
7
- class AbsFunction extends __base_1.BaseFunction {
8
- constructor() {
9
- super(...arguments);
10
- this.example = 'ABS(-2)';
11
- this.helpText = ['Returns the absolute value of a number'];
12
- this.helpArgs = [{ name: 'value', description: 'target number' }];
13
- }
14
- validate() {
15
- if (this.bareArgs.length !== 1) {
16
- throw new evaluator_1.FormulaError('#N/A', 'Number of arguments for ABS is incorrect.');
17
- }
18
- this.bareArgs = this.bareArgs.map((arg) => (0, __utils_1.ensureNumber)(arg));
19
- }
20
- main(value) {
21
- return Math.abs(value);
22
- }
23
- }
24
- exports.AbsFunction = AbsFunction;
25
- //# sourceMappingURL=abs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"abs.js","sourceRoot":"","sources":["../../../src/formula/functions/abs.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,WAAY,SAAQ,qBAAY;IAA7C;;QACE,YAAO,GAAG,SAAS,CAAC;QACpB,aAAQ,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACtD,aAAQ,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC,CAAC;IAY/D,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,KAAa;QAC1B,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;CACF;AAfD,kCAeC"}
@@ -1,30 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const abs_1 = require("./abs");
4
- const table_1 = require("../../lib/table");
5
- const evaluator_1 = require("../evaluator");
6
- describe('abs', () => {
7
- const table = new table_1.Table({});
8
- table.initialize({ B2: { value: -222 } });
9
- describe('normal', () => {
10
- it('negative to positive', () => {
11
- const f = new abs_1.AbsFunction({ table, args: [new evaluator_1.ValueEntity(-111)] });
12
- expect(f.call()).toBe(111);
13
- });
14
- it('refers to a cell', () => {
15
- const f = new abs_1.AbsFunction({ table, args: [new evaluator_1.RefEntity('B2')] });
16
- expect(f.call()).toBe(222);
17
- });
18
- it('positive to positive', () => {
19
- const f = new abs_1.AbsFunction({ table, args: [new evaluator_1.ValueEntity(333)] });
20
- expect(f.call()).toBe(333);
21
- });
22
- });
23
- describe('validation error', () => {
24
- it('missing argument', () => {
25
- const f = new abs_1.AbsFunction({ table, args: [] });
26
- expect(f.call.bind(f)).toThrow(evaluator_1.FormulaError);
27
- });
28
- });
29
- });
30
- //# sourceMappingURL=abs.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"abs.spec.js","sourceRoot":"","sources":["../../../src/formula/functions/abs.spec.ts"],"names":[],"mappings":";;AAAA,+BAAoC;AACpC,2CAAwC;AACxC,4CAAoE;AAEpE,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE;IACnB,MAAM,KAAK,GAAG,IAAI,aAAK,CAAC,EAAE,CAAC,CAAC;IAC5B,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;QACtB,EAAE,CAAC,sBAAsB,EAAE,GAAG,EAAE;YAC9B,MAAM,CAAC,GAAG,IAAI,iBAAW,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,uBAAW,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;YACpE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,kBAAkB,EAAE,GAAG,EAAE;YAC1B,MAAM,CAAC,GAAG,IAAI,iBAAW,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,qBAAS,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;YAClE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,sBAAsB,EAAE,GAAG,EAAE;YAC9B,MAAM,CAAC,GAAG,IAAI,iBAAW,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,uBAAW,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;YACnE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,EAAE,CAAC,kBAAkB,EAAE,GAAG,EAAE;YAC1B,MAAM,CAAC,GAAG,IAAI,iBAAW,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YAC/C,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,wBAAY,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AcosFunction = void 0;
4
- const evaluator_1 = require("../evaluator");
5
- const __base_1 = require("./__base");
6
- const __utils_1 = require("./__utils");
7
- class AcosFunction extends __base_1.BaseFunction {
8
- constructor() {
9
- super(...arguments);
10
- this.example = 'ACOS(0)';
11
- this.helpText = ['Returns the inverse cos of the value in radians.'];
12
- this.helpArgs = [
13
- {
14
- name: 'value',
15
- description: 'A value for the inverse cos between -1 and 1.',
16
- },
17
- ];
18
- }
19
- validate() {
20
- if (this.bareArgs.length !== 1) {
21
- throw new evaluator_1.FormulaError('#N/A', 'Number of arguments for ACOS is incorrect.');
22
- }
23
- this.bareArgs = this.bareArgs.map((arg) => (0, __utils_1.ensureNumber)(arg));
24
- if (-1 > this.bareArgs[0] || this.bareArgs[0] > 1) {
25
- throw new evaluator_1.FormulaError('#NUM!', 'value must be between -1 and 1');
26
- }
27
- }
28
- main(value) {
29
- return Math.acos(value);
30
- }
31
- }
32
- exports.AcosFunction = AcosFunction;
33
- //# sourceMappingURL=acos.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"acos.js","sourceRoot":"","sources":["../../../src/formula/functions/acos.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,YAAa,SAAQ,qBAAY;IAA9C;;QACE,YAAO,GAAG,SAAS,CAAC;QACpB,aAAQ,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAChE,aAAQ,GAAG;YACT;gBACE,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,+CAA+C;aAC7D;SACF,CAAC;IAeJ,CAAC;IAbW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,wBAAY,CAAC,MAAM,EAAE,4CAA4C,CAAC,CAAC;SAC9E;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,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;YACjD,MAAM,IAAI,wBAAY,CAAC,OAAO,EAAE,gCAAgC,CAAC,CAAC;SACnE;IACH,CAAC;IAES,IAAI,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;CACF;AAvBD,oCAuBC"}
@@ -1,65 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.AddFunction = void 0;
7
- const dayjs_1 = __importDefault(require("dayjs"));
8
- const evaluator_1 = require("../evaluator");
9
- const __base_1 = require("./__base");
10
- const __utils_1 = require("./__utils");
11
- const table_1 = require("../../lib/table");
12
- const time_1 = require("../../lib/time");
13
- const constants_1 = require("../../constants");
14
- class AddFunction extends __base_1.BaseFunction {
15
- constructor() {
16
- super(...arguments);
17
- this.example = 'ADD(2, 3)';
18
- this.helpText = ['Returns the sum of two numbers.', "This is the same as the '+' operator."];
19
- this.helpArgs = [
20
- { name: 'value1', description: 'First additive.' },
21
- { name: 'value2', description: 'Second additive.' },
22
- ];
23
- }
24
- validate() {
25
- if (this.bareArgs.length !== 2) {
26
- throw new evaluator_1.FormulaError('#N/A', 'Number of arguments for ADD is incorrect.');
27
- }
28
- this.bareArgs = this.bareArgs.map((arg) => {
29
- if (arg instanceof table_1.Table) {
30
- arg = (0, __utils_1.stripTable)(arg, 0, 0);
31
- }
32
- return typeof arg === 'object' ? arg : (0, __utils_1.ensureNumber)(arg);
33
- });
34
- }
35
- main(v1, v2) {
36
- if (typeof v1 === 'number' && typeof v2 === 'number') {
37
- return v1 + v2;
38
- }
39
- if (v1 instanceof Date && v2 instanceof time_1.TimeDelta) {
40
- return v2.add(v1);
41
- }
42
- if (v1 instanceof time_1.TimeDelta && v2 instanceof Date) {
43
- return v1.add(v2);
44
- }
45
- if (v1 instanceof Date && typeof v2 === 'number') {
46
- return (0, dayjs_1.default)(v1)
47
- .add(v2 * constants_1.SECONDS_IN_DAY, 'second')
48
- .toDate();
49
- }
50
- if (typeof v1 === 'number' && v2 instanceof Date) {
51
- return (0, dayjs_1.default)(v2)
52
- .add(v1 * constants_1.SECONDS_IN_DAY, 'second')
53
- .toDate();
54
- }
55
- if (!v1) {
56
- return v2;
57
- }
58
- if (!v2) {
59
- return v1;
60
- }
61
- throw new evaluator_1.FormulaError('#VALUE!', 'Mismatched types for augend and addend.');
62
- }
63
- }
64
- exports.AddFunction = AddFunction;
65
- //# sourceMappingURL=add.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/formula/functions/add.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAqD;AACrD,2CAAwC;AACxC,yCAA2C;AAC3C,+CAAiD;AAEjD,MAAa,WAAY,SAAQ,qBAAY;IAA7C;;QACE,YAAO,GAAG,WAAW,CAAC;QACtB,aAAQ,GAAG,CAAC,iCAAiC,EAAE,uCAAuC,CAAC,CAAC;QACxF,aAAQ,GAAG;YACT,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iBAAiB,EAAE;YAClD,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,EAAE;SACpD,CAAC;IA0CJ,CAAC;IAxCW,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;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,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,eAAK,EAAC,EAAE,CAAC;iBACb,GAAG,CAAC,EAAE,GAAG,0BAAc,EAAE,QAAQ,CAAC;iBAClC,MAAM,EAAE,CAAC;SACb;QACD,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,YAAY,IAAI,EAAE;YAChD,OAAO,IAAA,eAAK,EAAC,EAAE,CAAC;iBACb,GAAG,CAAC,EAAE,GAAG,0BAAc,EAAE,QAAQ,CAAC;iBAClC,MAAM,EAAE,CAAC;SACb;QACD,IAAI,CAAC,EAAE,EAAE;YACP,OAAO,EAAE,CAAC;SACX;QACD,IAAI,CAAC,EAAE,EAAE;YACP,OAAO,EAAE,CAAC;SACX;QACD,MAAM,IAAI,wBAAY,CAAC,SAAS,EAAE,yCAAyC,CAAC,CAAC;IAC/E,CAAC;CACF;AAhDD,kCAgDC"}
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AndFunction = void 0;
4
- const __base_1 = require("./__base");
5
- const __utils_1 = require("./__utils");
6
- class AndFunction extends __base_1.BaseFunction {
7
- constructor() {
8
- super(...arguments);
9
- this.example = 'AND(A1=1, A2=2)';
10
- this.helpText = ['Returns TRUE if all arguments are logically TRUE.', 'Returns FALSE if any argument is logically FALSE.'];
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) => (0, __utils_1.ensureBoolean)(arg));
23
- }
24
- main(...values) {
25
- return values.reduce((a, b) => a && b);
26
- }
27
- }
28
- exports.AndFunction = AndFunction;
29
- //# sourceMappingURL=and.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"and.js","sourceRoot":"","sources":["../../../src/formula/functions/and.ts"],"names":[],"mappings":";;;AAAA,qCAAwC;AACxC,uCAA0C;AAE1C,MAAa,WAAY,SAAQ,qBAAY;IAA7C;;QACE,YAAO,GAAG,iBAAiB,CAAC;QAC5B,aAAQ,GAAG,CAAC,mDAAmD,EAAE,mDAAmD,CAAC,CAAC;QACtH,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,IAAA,uBAAa,EAAC,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;AApBD,kCAoBC"}
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AsinFunction = void 0;
4
- const evaluator_1 = require("../evaluator");
5
- const __base_1 = require("./__base");
6
- const __utils_1 = require("./__utils");
7
- class AsinFunction extends __base_1.BaseFunction {
8
- constructor() {
9
- super(...arguments);
10
- this.example = 'ASIN(0)';
11
- this.helpText = ['Returns the inverse sin of the value in radians.'];
12
- this.helpArgs = [
13
- {
14
- name: 'value',
15
- description: 'A value for the inverse sin between -1 and 1.',
16
- },
17
- ];
18
- }
19
- validate() {
20
- if (this.bareArgs.length !== 1) {
21
- throw new evaluator_1.FormulaError('#N/A', 'Number of arguments for ASIN is incorrect.');
22
- }
23
- this.bareArgs = this.bareArgs.map((arg) => (0, __utils_1.ensureNumber)(arg));
24
- if (-1 > this.bareArgs[0] || this.bareArgs[0] > 1) {
25
- throw new evaluator_1.FormulaError('#NUM!', 'value must be between -1 and 1');
26
- }
27
- }
28
- main(value) {
29
- return Math.asin(value);
30
- }
31
- }
32
- exports.AsinFunction = AsinFunction;
33
- //# sourceMappingURL=asin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"asin.js","sourceRoot":"","sources":["../../../src/formula/functions/asin.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,YAAa,SAAQ,qBAAY;IAA9C;;QACE,YAAO,GAAG,SAAS,CAAC;QACpB,aAAQ,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAChE,aAAQ,GAAG;YACT;gBACE,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,+CAA+C;aAC7D;SACF,CAAC;IAeJ,CAAC;IAbW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,wBAAY,CAAC,MAAM,EAAE,4CAA4C,CAAC,CAAC;SAC9E;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,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;YACjD,MAAM,IAAI,wBAAY,CAAC,OAAO,EAAE,gCAAgC,CAAC,CAAC;SACnE;IACH,CAAC;IAES,IAAI,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;CACF;AAvBD,oCAuBC"}
@@ -1,30 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AtanFunction = void 0;
4
- const evaluator_1 = require("../evaluator");
5
- const __base_1 = require("./__base");
6
- const __utils_1 = require("./__utils");
7
- class AtanFunction extends __base_1.BaseFunction {
8
- constructor() {
9
- super(...arguments);
10
- this.example = 'ATAN(1)';
11
- this.helpText = ['Returns the inverse tan of the value in radians.'];
12
- this.helpArgs = [
13
- {
14
- name: 'value',
15
- description: 'A value for the inverse tan.',
16
- },
17
- ];
18
- }
19
- validate() {
20
- if (this.bareArgs.length !== 1) {
21
- throw new evaluator_1.FormulaError('#N/A', 'Number of arguments for ATAN is incorrect.');
22
- }
23
- this.bareArgs = this.bareArgs.map((arg) => (0, __utils_1.ensureNumber)(arg));
24
- }
25
- main(value) {
26
- return Math.atan(value);
27
- }
28
- }
29
- exports.AtanFunction = AtanFunction;
30
- //# sourceMappingURL=atan.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"atan.js","sourceRoot":"","sources":["../../../src/formula/functions/atan.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,YAAa,SAAQ,qBAAY;IAA9C;;QACE,YAAO,GAAG,SAAS,CAAC;QACpB,aAAQ,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAChE,aAAQ,GAAG;YACT;gBACE,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,8BAA8B;aAC5C;SACF,CAAC;IAYJ,CAAC;IAVW,QAAQ;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,wBAAY,CAAC,MAAM,EAAE,4CAA4C,CAAC,CAAC;SAC9E;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,KAAa;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;CACF;AApBD,oCAoBC"}
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Atan2Function = void 0;
4
- const evaluator_1 = require("../evaluator");
5
- const __base_1 = require("./__base");
6
- const __utils_1 = require("./__utils");
7
- class Atan2Function extends __base_1.BaseFunction {
8
- constructor() {
9
- super(...arguments);
10
- this.example = 'ATAN2(4,3)';
11
- this.helpText = [
12
- 'Returns the angle in radians between the x-axis and a line passing from the origin through a given coordinate point (x, y).',
13
- ];
14
- this.helpArgs = [
15
- {
16
- name: 'x',
17
- description: 'x of the point.',
18
- },
19
- {
20
- name: 'y',
21
- description: 'y of the point.',
22
- },
23
- ];
24
- }
25
- validate() {
26
- if (this.bareArgs.length !== 2) {
27
- throw new evaluator_1.FormulaError('#N/A', 'Number of arguments for ATAN2 is incorrect.');
28
- }
29
- this.bareArgs = this.bareArgs.map((arg) => (0, __utils_1.ensureNumber)(arg));
30
- }
31
- main(x, y) {
32
- return Math.atan2(x, y);
33
- }
34
- }
35
- exports.Atan2Function = Atan2Function;
36
- //# sourceMappingURL=atan2.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"atan2.js","sourceRoot":"","sources":["../../../src/formula/functions/atan2.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,aAAc,SAAQ,qBAAY;IAA/C;;QACE,YAAO,GAAG,YAAY,CAAC;QACvB,aAAQ,GAAG;YACT,6HAA6H;SAC9H,CAAC;QACF,aAAQ,GAAG;YACT;gBACE,IAAI,EAAE,GAAG;gBACT,WAAW,EAAE,iBAAiB;aAC/B;YACD;gBACE,IAAI,EAAE,GAAG;gBACT,WAAW,EAAE,iBAAiB;aAC/B;SACF,CAAC;IAYJ,CAAC;IAVW,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;IAChE,CAAC;IAES,IAAI,CAAC,CAAS,EAAE,CAAS;QACjC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1B,CAAC;CACF;AA1BD,sCA0BC"}
@@ -1,47 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AverageFunction = void 0;
4
- const evaluator_1 = require("../evaluator");
5
- const solver_1 = require("../solver");
6
- const table_1 = require("../../lib/table");
7
- const __base_1 = require("./__base");
8
- const __utils_1 = require("./__utils");
9
- class AverageFunction extends __base_1.BaseFunction {
10
- constructor() {
11
- super(...arguments);
12
- this.example = 'AVERAGE(A2:A100, 101)';
13
- this.helpText = ['Returns the average of a series of numbers or cells.'];
14
- this.helpArgs = [
15
- { name: 'value1', description: 'First number or range.' },
16
- {
17
- name: 'value2',
18
- description: 'Additional numbers or ranges',
19
- optional: true,
20
- iterable: true,
21
- },
22
- ];
23
- }
24
- validate() {
25
- const spreaded = [];
26
- this.bareArgs.map((arg) => {
27
- if (arg instanceof table_1.Table) {
28
- spreaded.push(
29
- // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
30
- ...(0, solver_1.solveTable)({ table: arg })
31
- .reduce((a, b) => a.concat(b))
32
- .filter((v) => typeof v === 'number'));
33
- return;
34
- }
35
- spreaded.push((0, __utils_1.ensureNumber)(arg));
36
- });
37
- if (spreaded.length === 0) {
38
- throw new evaluator_1.FormulaError('#N/A', 'Number of arguments must be greater than 0.');
39
- }
40
- this.bareArgs = spreaded;
41
- }
42
- main(...values) {
43
- return values.reduce((a, b) => a + b) / values.length;
44
- }
45
- }
46
- exports.AverageFunction = AverageFunction;
47
- //# sourceMappingURL=average.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"average.js","sourceRoot":"","sources":["../../../src/formula/functions/average.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,sCAAuC;AACvC,2CAAwC;AACxC,qCAAwC;AACxC,uCAAyC;AAEzC,MAAa,eAAgB,SAAQ,qBAAY;IAAjD;;QACE,YAAO,GAAG,uBAAuB,CAAC;QAClC,aAAQ,GAAG,CAAC,sDAAsD,CAAC,CAAC;QACpE,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;IAyBJ,CAAC;IAvBW,QAAQ;QAChB,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,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YACzB,MAAM,IAAI,wBAAY,CAAC,MAAM,EAAE,6CAA6C,CAAC,CAAC;SAC/E;QACD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAES,IAAI,CAAC,GAAG,MAAgB;QAChC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;IACxD,CAAC;CACF;AApCD,0CAoCC"}