@lofcz/tinysheet-formula-parser 0.2.13

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 (49) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +261 -0
  3. package/es/error.js +45 -0
  4. package/es/evaluate-by-operator/evaluate-by-operator.js +70 -0
  5. package/es/evaluate-by-operator/operator/add.js +16 -0
  6. package/es/evaluate-by-operator/operator/ampersand.js +10 -0
  7. package/es/evaluate-by-operator/operator/divide.js +21 -0
  8. package/es/evaluate-by-operator/operator/equal.js +5 -0
  9. package/es/evaluate-by-operator/operator/formula-function.js +40 -0
  10. package/es/evaluate-by-operator/operator/greater-than-or-equal.js +5 -0
  11. package/es/evaluate-by-operator/operator/greater-than.js +5 -0
  12. package/es/evaluate-by-operator/operator/less-than-or-equal.js +5 -0
  13. package/es/evaluate-by-operator/operator/less-than.js +5 -0
  14. package/es/evaluate-by-operator/operator/minus.js +16 -0
  15. package/es/evaluate-by-operator/operator/multiply.js +16 -0
  16. package/es/evaluate-by-operator/operator/not-equal.js +5 -0
  17. package/es/evaluate-by-operator/operator/power.js +11 -0
  18. package/es/grammar-parser/grammar-parser.jison +230 -0
  19. package/es/grammar-parser/grammar-parser.js +1522 -0
  20. package/es/helper/cell.js +117 -0
  21. package/es/helper/number.js +25 -0
  22. package/es/helper/string.js +13 -0
  23. package/es/index.js +5 -0
  24. package/es/parser.js +306 -0
  25. package/es/supported-formulas.js +3 -0
  26. package/lib/error.js +53 -0
  27. package/lib/evaluate-by-operator/evaluate-by-operator.js +77 -0
  28. package/lib/evaluate-by-operator/operator/add.js +23 -0
  29. package/lib/evaluate-by-operator/operator/ampersand.js +17 -0
  30. package/lib/evaluate-by-operator/operator/divide.js +28 -0
  31. package/lib/evaluate-by-operator/operator/equal.js +12 -0
  32. package/lib/evaluate-by-operator/operator/formula-function.js +50 -0
  33. package/lib/evaluate-by-operator/operator/greater-than-or-equal.js +12 -0
  34. package/lib/evaluate-by-operator/operator/greater-than.js +12 -0
  35. package/lib/evaluate-by-operator/operator/less-than-or-equal.js +12 -0
  36. package/lib/evaluate-by-operator/operator/less-than.js +12 -0
  37. package/lib/evaluate-by-operator/operator/minus.js +23 -0
  38. package/lib/evaluate-by-operator/operator/multiply.js +23 -0
  39. package/lib/evaluate-by-operator/operator/not-equal.js +12 -0
  40. package/lib/evaluate-by-operator/operator/power.js +18 -0
  41. package/lib/grammar-parser/grammar-parser.jison +230 -0
  42. package/lib/grammar-parser/grammar-parser.js +1528 -0
  43. package/lib/helper/cell.js +128 -0
  44. package/lib/helper/number.js +32 -0
  45. package/lib/helper/string.js +19 -0
  46. package/lib/index.js +114 -0
  47. package/lib/parser.js +313 -0
  48. package/lib/supported-formulas.js +11 -0
  49. package/package.json +78 -0
package/package.json ADDED
@@ -0,0 +1,78 @@
1
+ {
2
+ "name": "@lofcz/tinysheet-formula-parser",
3
+ "version": "0.2.13",
4
+ "description": "Formula parser",
5
+ "main": "lib/index.js",
6
+ "module": "es/index.js",
7
+ "files": [
8
+ "es",
9
+ "lib"
10
+ ],
11
+ "scripts": {
12
+ "clean": "rimraf tmp coverage",
13
+ "lint": "eslint src test",
14
+ "check": "npm run lint && npm run test",
15
+ "test": "cross-env BABEL_ENV=commonjs jest",
16
+ "coverage": "cross-env BABEL_ENV=commonjs jest --coverage",
17
+ "build": "father-build",
18
+ "generate-parser": "cd src/grammar-parser && jison-es -m es grammar-parser.jison",
19
+ "release": "generate-release"
20
+ },
21
+ "keywords": [
22
+ "formula",
23
+ "formulas",
24
+ "parser",
25
+ "formula-parser",
26
+ "excel",
27
+ "spreadsheet"
28
+ ],
29
+ "author": "Handsoncode <hello@handsontable.com>",
30
+ "license": "MIT",
31
+ "repository": {
32
+ "type": "git",
33
+ "url": "git+https://github.com/lofcz/tinysheet.git",
34
+ "directory": "packages/formula-parser"
35
+ },
36
+ "devDependencies": {
37
+ "@babel/cli": "^7.12.10",
38
+ "@babel/core": "^7.12.10",
39
+ "@babel/preset-env": "^7.12.10",
40
+ "babel-eslint": "^10.1.0",
41
+ "babel-loader": "^8.2.2",
42
+ "cross-env": "^5.2.0",
43
+ "eslint": "^8.31.0",
44
+ "eslint-config-airbnb-base": "^11.2.0",
45
+ "eslint-plugin-import": "^2.14.0",
46
+ "fs-extra": "^11.3.0",
47
+ "generate-release": "^1.1.1",
48
+ "jest": "^26.6.3",
49
+ "jest-cli": "^29.3.1",
50
+ "jison-es": "^0.4.18",
51
+ "rimraf": "^3.0.2",
52
+ "webpack": "^4.44.2",
53
+ "webpack-cli": "^4.2.0"
54
+ },
55
+ "dependencies": {
56
+ "@formulajs/formulajs": "^2.9.3",
57
+ "tiny-emitter": "^2.1.0"
58
+ },
59
+ "jest": {
60
+ "setupFilesAfterEnv": [
61
+ "./test/index.js"
62
+ ],
63
+ "testPathIgnorePatterns": [
64
+ "./test/index.js"
65
+ ],
66
+ "roots": [
67
+ "./test"
68
+ ],
69
+ "testRegex": "(test\\/index\\.js|/test/.*.js)$",
70
+ "collectCoverageFrom": [
71
+ "**/*.{js}",
72
+ "!src/grammar-parser/**"
73
+ ]
74
+ },
75
+ "publishConfig": {
76
+ "access": "public"
77
+ }
78
+ }