@omegagrid/grid-core 0.6.59 → 0.6.60

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/dist/__generated/functions.js.map +1 -1
  2. package/dist/calculations/autofill.js.map +1 -1
  3. package/dist/calculations/conditions.js.map +1 -1
  4. package/dist/calculations/context.js.map +1 -1
  5. package/dist/calculations/formula.js.map +1 -1
  6. package/dist/calculations/functions/dates.js.map +1 -1
  7. package/dist/calculations/functions/index.js.map +1 -1
  8. package/dist/calculations/functions/logical.js.map +1 -1
  9. package/dist/calculations/functions/lookup.js.map +1 -1
  10. package/dist/calculations/functions/math.js.map +1 -1
  11. package/dist/calculations/functions/special.js.map +1 -1
  12. package/dist/calculations/functions/statistical.js.map +1 -1
  13. package/dist/calculations/functions/text.js.map +1 -1
  14. package/dist/calculations/helpers.js.map +1 -1
  15. package/dist/calculations/index.js.map +1 -1
  16. package/dist/calculations/operators.js.map +1 -1
  17. package/dist/calculations/tokenization.js.map +1 -1
  18. package/dist/common/index.js.map +1 -1
  19. package/dist/common/range.js.map +1 -1
  20. package/dist/constants.js.map +1 -1
  21. package/dist/index.js.map +1 -1
  22. package/dist/model/calculationModel.js.map +1 -1
  23. package/dist/model/cellModel.js.map +1 -1
  24. package/dist/model/columnModel.js.map +1 -1
  25. package/dist/model/commentModel.js.map +1 -1
  26. package/dist/model/conditionalFormats.js.map +1 -1
  27. package/dist/model/cssStyle.js.map +1 -1
  28. package/dist/model/dependencies.js.map +1 -1
  29. package/dist/model/elementModel.js.map +1 -1
  30. package/dist/model/filterModel.js.map +1 -1
  31. package/dist/model/gridModel.js.map +1 -1
  32. package/dist/model/groupModel.js.map +1 -1
  33. package/dist/model/history.js.map +1 -1
  34. package/dist/model/index.js.map +1 -1
  35. package/dist/model/iterableRange.js.map +1 -1
  36. package/dist/model/namingModel.js.map +1 -1
  37. package/dist/model/options.js.map +1 -1
  38. package/dist/model/rowModel.js.map +1 -1
  39. package/dist/model/selectionModel.js.map +1 -1
  40. package/dist/model/sortingModel.js.map +1 -1
  41. package/dist/model/style.js.map +1 -1
  42. package/dist/model/styleModel.js.map +1 -1
  43. package/dist/model/tableTheme.js.map +1 -1
  44. package/dist/model/validations.js.map +1 -1
  45. package/dist/sparklines/index.js.map +1 -1
  46. package/dist/sparklines/sparklines.js.map +1 -1
  47. package/dist/types.js.map +1 -1
  48. package/dist/utils.js.map +1 -1
  49. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../src/__generated/functions.ts"],"names":[],"mappings":"AACA,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0C3B,CAAC,CAAC;AACJ,eAAe,SAAwC,CAAC"}
1
+ {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../src/__generated/functions.ts"],"names":[],"mappings":"AACA,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0C3B,CAAC,CAAC;AACJ,eAAe,SAAwC,CAAC","sourcesContent":["import type { FormulaFuncGroupDescription } from '../types';\nconst functions = JSON.parse(`[\n {\n \"name\": \"text\",\n \"functions\": [\n {\n \"name\": \"left\",\n \"description\": \"Returns the leftmost characters from a text value.\",\n \"parameters\": [\n {\n \"name\": \"v\",\n \"type\": \"string\"\n },\n {\n \"name\": \"count\",\n \"type\": \"number\"\n }\n ],\n \"links\": [\n \"https://support.microsoft.com/en-us/office/left-leftb-functions-9203d2d2-7960-479b-84c6-1ea52b99640c\",\n \"https://support.google.com/docs/answer/3094079\"\n ]\n },\n {\n \"name\": \"right\",\n \"description\": \"Returns the rightmost characters from a text value.\",\n \"parameters\": [\n {\n \"name\": \"v\",\n \"type\": \"string\"\n },\n {\n \"name\": \"count\",\n \"type\": \"number\"\n }\n ],\n \"links\": [\n \"https://support.microsoft.com/en-us/office/right-rightb-functions-240267ee-9afa-4639-a02b-f19e1786cf2f\",\n \"https://support.google.com/docs/answer/3094087\"\n ]\n }\n ]\n }\n]`);\nexport default functions as FormulaFuncGroupDescription;"]}
@@ -1 +1 @@
1
- {"version":3,"file":"autofill.js","sourceRoot":"","sources":["../../src/calculations/autofill.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,GAAG,CAAC;AAI3C,MAAM,UAAU,iBAAiB,CAAC,MAAmB,EAAE,KAAa;IACnE,MAAM,MAAM,GAAc,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClD,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,WAAW,GAAa,EAAE,CAAC;IAE/B,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,KAAe,CAAC,IAAI,CAAC,CAAC,CAAC;QACxE,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,IAAI,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;gBACvD,SAAS,GAAG,CAAC,CAAC;gBACd,MAAM;YACP,CAAC;QACF,CAAC;IACF,CAAC;IAED,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAChC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;QAC9C,CAAC;IACF,CAAC;SAAM,CAAC;QACP,IAAI,IAAI,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAChC,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;QACrC,CAAC;IACF,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAe,EAAE,SAAoB,EAAE,KAAa;IACvF,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAC7E,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC;YACvC,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC;YACT,SAAS,EAAE,SAAS;YACpB,SAAS,EAAE,IAAI;SACf,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAgB,EAAE,aAAwB,EAAE,aAAwB,EAAE,SAAoB;IAClH,MAAM,YAAY,GAAG,KAAK,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;IACxD,IAAI,KAAwB,CAAC;IAE7B,IAAI,SAAS,IAAI,OAAO;QAAE,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;SACxD,IAAI,SAAS,IAAI,MAAM;QAAE,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;SAChE,IAAI,SAAS,IAAI,MAAM;QAAE,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;SACrE,IAAI,SAAS,IAAI,IAAI;QAAE,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;IAE1F,MAAM,kBAAkB,GAAmB,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QAClD,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAChE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;YACrD,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC;gBACzC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACrD,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACtB,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;QACxF,CAAC;IACF,CAAC;IAED,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC,SAAS,IAAI,MAAM,IAAI,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACxG,IAAI,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QAC7B,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU;YACnC,OAAO,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;;YAE5E,OAAO,iBAAiB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,IAAI,SAAS,IAAI,MAAM;QAAE,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;SACtD,IAAI,SAAS,IAAI,MAAM;QAAE,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;SAChE,IAAI,SAAS,IAAI,IAAI;QAAE,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IAElF,OAAO,KAAK,CAAC,WAAW,CAAC;QACxB,IAAI,EAAE,KAAK,CAAC,cAAc,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtD,MAAM,EAAE,MAAM;QACd,YAAY,EAAE,KAAK,CAAC,cAAc,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9D,aAAa,EAAE,kBAAkB;KACjC,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"autofill.js","sourceRoot":"","sources":["../../src/calculations/autofill.ts"],"names":[],"mappings":"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","sourcesContent":["import { Direction, Matrix, matrix } from \"@omegagrid/core\";\nimport { Formula, prefixFormula } from \".\";\nimport { CellRange } from \"../common\";\nimport { CellModel, GridModel } from \"../model\";\n\nexport function extrapolateValues(source: CellModel[], count: number) {\n\tconst result: unknown[] = Array(count).fill(null);\n\tlet increment = 0;\n\tlet inputValues: number[] = [];\n\n\tif (source.length > 1) {\n\t\tinputValues = source.map(cell => parseFloat(cell.value as string) || 0);\n\t\tincrement = inputValues[1] - inputValues[0];\n\t\tfor (let i = 2; i < inputValues.length; i++) {\n\t\t\tif (inputValues[i] - inputValues[i - 1] !== increment) {\n\t\t\t\tincrement = 0;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tif (increment == 0) {\n\t\tfor (let i = 0; i < count; i++) {\n\t\t\tresult[i] = source[i % source.length]?.value;\n\t\t}\n\t} else {\n\t\tlet prev = inputValues[inputValues.length - 1];\n\t\tfor (let i = 0; i < count; i++) {\n\t\t\tprev = result[i] = prev + increment;\n\t\t}\n\t}\n\n\treturn result;\n}\n\nexport function extrapolateFormulas(cell: CellModel, direction: Direction, count: number) {\n\tconst formula = new Formula(cell.formula, cell.model.calculations.tokenizer);\n\tconst result: string[] = [];\n\tfor (let i = 0; i < count; i++) {\n\t\tresult.push(prefixFormula(formula.shift({\n\t\t\tindex: 0,\n\t\t\toffset: 1,\n\t\t\tdirection: direction,\n\t\t\tallSheets: true\n\t\t}).createFormulaString()));\n\t}\n\treturn result;\n}\n\nexport function autofill(model: GridModel, selectedRange: CellRange, autofillRange: CellRange, direction: Direction) {\n\tconst sourceMatrix = model.getCellMatrix(selectedRange);\n\tlet input: Matrix<CellModel>;\n\n\tif (direction == 'right') input = matrix.clone(sourceMatrix);\n\telse if (direction == 'down') input = matrix.transpose(sourceMatrix);\n\telse if (direction == 'left') input = matrix.reverseColumns(sourceMatrix);\n\telse if (direction == 'up') input = matrix.reverseColumns(matrix.transpose(sourceMatrix));\n\n\tconst displayValueMatrix: Matrix<string> = new Array(autofillRange.size.rows);\n\tfor (let r = 0; r < autofillRange.size.rows; r++) {\n\t\tdisplayValueMatrix[r] = (new Array(autofillRange.size.columns));\n\t\tfor (let c = 0; c < autofillRange.size.columns; c++) {\n\t\t\tconst sourceCell = sourceMatrix.length > r\n\t\t\t\t? sourceMatrix[r][sourceMatrix[r].length > c ? c : 0]\n\t\t\t\t: sourceMatrix[0][c];\n\t\t\tdisplayValueMatrix[r][c] = sourceCell.hasDisplayValue ? sourceCell.displayValue : null;\n\t\t}\n\t}\n\n\tconst autofillCount = autofillRange.size[direction == 'down' || direction == 'up' ? 'rows' : 'columns'];\n\tlet output = input.map(vect => {\n\t\tif (vect[vect.length - 1].hasFormula)\n\t\t\treturn extrapolateFormulas(vect[vect.length - 1], direction, autofillCount);\n\t\telse\n\t\t\treturn extrapolateValues(vect, autofillCount);\n\t});\n\n\tif (direction == 'down') output = matrix.transpose(output);\n\telse if (direction == 'left') output = matrix.reverseColumns(output);\n\telse if (direction == 'up') output = matrix.reverseRows(matrix.transpose(output));\n\t\n\treturn model.spillValues({\n\t\tcell: model.getCellByRange(autofillRange.bounds[0][0]),\n\t\tvalues: output, \n\t\tpropertyCell: model.getCellByRange(selectedRange.bounds[0][0]),\n\t\tdisplayValues: displayValueMatrix\n\t});\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"conditions.js","sourceRoot":"","sources":["../../src/calculations/conditions.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAEvD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAIxC,MAAM,UAAU,aAAa,CAAC,EAAO,EAAE,EAAO;IAC7C,IAAI,CAAC,KAAK,CAAC,EAAY,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAY,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;QAChF,EAAE,GAAG,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QACxE,EAAE,GAAG,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACzE,CAAC;IAED,IAAI,EAAE,GAAG,EAAE;QAAE,OAAO,CAAC,CAAC;IACtB,IAAI,EAAE,GAAG,EAAE;QAAE,OAAO,CAAC,CAAC,CAAC;IACvB,OAAO,CAAC,CAAC;AACV,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,SAAoB,EAAE,KAAc;IACjE,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5C,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,SAAS,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QACxC,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC/G,CAAC;aAAM,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,OAAO,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC/G,CAAC;aAAM,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,OAAO,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC/G,CAAC;aAAM,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACtC,OAAO,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC9G,CAAC;aAAM,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACtC,OAAO,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC9G,CAAC;aAAM,CAAC;YACP,OAAO,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAA8B,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACnJ,CAAC;IACF,CAAC;SAAM,CAAC;QACP,OAAO,KAAK,IAAI,SAAS,CAAC;IAC3B,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"conditions.js","sourceRoot":"","sources":["../../src/calculations/conditions.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAEvD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAIxC,MAAM,UAAU,aAAa,CAAC,EAAO,EAAE,EAAO;IAC7C,IAAI,CAAC,KAAK,CAAC,EAAY,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAY,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;QAChF,EAAE,GAAG,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QACxE,EAAE,GAAG,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACzE,CAAC;IAED,IAAI,EAAE,GAAG,EAAE;QAAE,OAAO,CAAC,CAAC;IACtB,IAAI,EAAE,GAAG,EAAE;QAAE,OAAO,CAAC,CAAC,CAAC;IACvB,OAAO,CAAC,CAAC;AACV,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,SAAoB,EAAE,KAAc;IACjE,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5C,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,SAAS,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QACxC,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC/G,CAAC;aAAM,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,OAAO,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC/G,CAAC;aAAM,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,OAAO,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC/G,CAAC;aAAM,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACtC,OAAO,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC9G,CAAC;aAAM,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACtC,OAAO,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC9G,CAAC;aAAM,CAAC;YACP,OAAO,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAA8B,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACnJ,CAAC;IACF,CAAC;SAAM,CAAC;QACP,OAAO,KAAK,IAAI,SAAS,CAAC;IAC3B,CAAC;AACF,CAAC","sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n\nimport { utils } from \"@omegagrid/core\";\n\nexport type Condition = string|number;\n\nexport function scalarCompare(s1: any, s2: any) : number {\n\tif ((isNaN(s1 as number) || s1 == null) && (isNaN(s2 as number) || s2 == null)) {\n\t\ts1 = s1 == null ? '' : utils.removeAccents(s1.toString()).toLowerCase();\n\t\ts2 = s2 == null ? '' : utils.removeAccents(s2.toString()).toLowerCase();\n\t}\n\n\tif (s1 > s2) return 1;\n\tif (s1 < s2) return -1;\n\treturn 0;\n}\n\nexport function evalCondition(condition: Condition, value: unknown) {\n\tconst isStringValue = utils.isString(value);\n\tif (utils.isString(condition)) {\n\t\tcondition = condition.toString().trim();\n\t\tif (condition.startsWith('=')) {\n\t\t\treturn scalarCompare(value, isStringValue ? condition.substring(1) : parseFloat(condition.substring(1))) == 0;\n\t\t} else if (condition.startsWith('>=')) {\n\t\t\treturn scalarCompare(value, isStringValue ? condition.substring(2) : parseFloat(condition.substring(2))) >= 0;\n\t\t} else if (condition.startsWith('<=')) {\n\t\t\treturn scalarCompare(value, isStringValue ? condition.substring(2) : parseFloat(condition.substring(2))) <= 0;\n\t\t} else if (condition.startsWith('>')) {\n\t\t\treturn scalarCompare(value, isStringValue ? condition.substring(1) : parseFloat(condition.substring(1))) > 0;\n\t\t} else if (condition.startsWith('<')) {\n\t\t\treturn scalarCompare(value, isStringValue ? condition.substring(1) : parseFloat(condition.substring(1))) < 0;\n\t\t} else {\n\t\t\treturn scalarCompare(value, isStringValue ? condition : (isNaN(condition as unknown as number) ? (condition || '') : parseFloat(condition))) == 0;\n\t\t}\n\t} else {\n\t\treturn value == condition;\n\t}\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/calculations/context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAgB,MAAM,WAAW,CAAC;AAEpD,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAY,eAAe,EAAE,MAAM,aAAa,CAAC;AAExD,MAAM,OAAO,kBAAkB;IAI9B,YAA4B,KAAgB;QAAhB,UAAK,GAAL,KAAK,CAAW;QAE5C,aAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;YAC5B,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;YACnE,IAAI,CAAC;gBAAE,OAAO,CAAC,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,UAAU,KAAK,aAAa,CAAC,CAAA;QAC9C,CAAC,CAAA;QAED;;;;;WAKG;QACH,OAAE,GAAG,CAAC,EAAiB,EAAE,KAAc,EAAW,EAAE;YACnD,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC/B,IAAI,EAAE,IAAI,IAAI;gBAAE,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YAE9C,MAAM,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAE/B,IAAI,CAAC,IAAI,EAAE,CAAC;gBACX,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG,EAAC,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAC,CAAC;gBAC3D,OAAO,IAAI,CAAC;YACb,CAAC;YAED,OAAO,IAAI,CAAC,KAAK,CAAC;QACnB,CAAC,CAAC;QAEF;;;;;WAKG;QACH,OAAE,GAAG,CAAC,EAAgB,EAAE,KAAc,EAAE,EAAE;YACzC,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC/B,OAAO,CAAC,CAAC,gBAAgB,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACjD,CAAC,CAAA;QAED;;;;;WAKG;QACH,OAAE,GAAG,CAAC,IAAY,EAAE,KAAc,EAAW,EAAE;YAC9C,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;QAC/E,CAAC,CAAC;QAEF;;;;;WAKG;QACH,OAAE,GAAG,CAAC,IAAY,EAAE,KAAc,EAAW,EAAE;YAC9C,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC/B,MAAM,MAAM,GAAG,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvE,OAAO,MAAM,CAAC;QACf,CAAC,CAAC;QAEF;;;;WAIG;QACH,OAAE,GAAG,CAAC,IAAY,EAAE,EAAE;YACrB,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC1B,IAAI,EAAE;gBAAE,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,aAAa,IAAI,aAAa,CAAC,CAAC;QACjD,CAAC,CAAC;QAEF;;;;;;WAMG;QACH,OAAE,GAAG,CAAC,QAAgB,EAAE,QAAgB,EAAE,QAAkB,EAAU,EAAE;YACvE,OAAO,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACtD,CAAC,CAAA;IAlF+C,CAAC;CAmFjD"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/calculations/context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAgB,MAAM,WAAW,CAAC;AAEpD,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAY,eAAe,EAAE,MAAM,aAAa,CAAC;AAExD,MAAM,OAAO,kBAAkB;IAI9B,YAA4B,KAAgB;QAAhB,UAAK,GAAL,KAAK,CAAW;QAE5C,aAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;YAC5B,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;YACnE,IAAI,CAAC;gBAAE,OAAO,CAAC,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,UAAU,KAAK,aAAa,CAAC,CAAA;QAC9C,CAAC,CAAA;QAED;;;;;WAKG;QACH,OAAE,GAAG,CAAC,EAAiB,EAAE,KAAc,EAAW,EAAE;YACnD,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC/B,IAAI,EAAE,IAAI,IAAI;gBAAE,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YAE9C,MAAM,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAE/B,IAAI,CAAC,IAAI,EAAE,CAAC;gBACX,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG,EAAC,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAC,CAAC;gBAC3D,OAAO,IAAI,CAAC;YACb,CAAC;YAED,OAAO,IAAI,CAAC,KAAK,CAAC;QACnB,CAAC,CAAC;QAEF;;;;;WAKG;QACH,OAAE,GAAG,CAAC,EAAgB,EAAE,KAAc,EAAE,EAAE;YACzC,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC/B,OAAO,CAAC,CAAC,gBAAgB,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACjD,CAAC,CAAA;QAED;;;;;WAKG;QACH,OAAE,GAAG,CAAC,IAAY,EAAE,KAAc,EAAW,EAAE;YAC9C,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;QAC/E,CAAC,CAAC;QAEF;;;;;WAKG;QACH,OAAE,GAAG,CAAC,IAAY,EAAE,KAAc,EAAW,EAAE;YAC9C,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC/B,MAAM,MAAM,GAAG,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvE,OAAO,MAAM,CAAC;QACf,CAAC,CAAC;QAEF;;;;WAIG;QACH,OAAE,GAAG,CAAC,IAAY,EAAE,EAAE;YACrB,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC1B,IAAI,EAAE;gBAAE,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,aAAa,IAAI,aAAa,CAAC,CAAC;QACjD,CAAC,CAAC;QAEF;;;;;;WAMG;QACH,OAAE,GAAG,CAAC,QAAgB,EAAE,QAAgB,EAAE,QAAkB,EAAU,EAAE;YACvE,OAAO,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACtD,CAAC,CAAA;IAlF+C,CAAC;CAmFjD","sourcesContent":["import { Matrix } from \"@omegagrid/core\";\nimport { CellRange, RangeAddress } from \"../common\";\nimport { CellModel, GridModel } from \"../model\";\nimport { _map } from \"./functions\";\nimport { Operator, matrixOperation } from \"./operators\";\n\nexport class CalculationContext {\n\n\tcurrentCell: CellModel;\n\n\tconstructor(public readonly model: GridModel) { }\n\n\tgetModel = (sheet: string) => {\n\t\tconst m = sheet ? this.model.getConnectedModel(sheet) : this.model;\n\t\tif (m) return m;\n\t\tthrow new Error(`Sheet \"${sheet}\" not found`)\n\t}\n\n\t/**\n\t * Returns cell value\n\t * @param a1 cell addres\n\t * @param sheet sheet name\n\t * @returns cell value\n\t */\n\tcl = (a1?: RangeAddress, sheet?: string): unknown => {\n\t\tconst m = this.getModel(sheet);\n\t\tif (a1 == null) return this.currentCell.value;\n\n\t\tconst cell = m.getCellByA1(a1);\n\n\t\tif (!cell) {\n\t\t\tthis.currentCell.error = {message: `undefined cell ${a1}`};\n\t\t\treturn null;\n\t\t}\n\t\t\n\t\treturn cell.value;\n\t};\n\n\t/**\n\t * Returns range value matrix\n\t * @param a1 cell addres\n\t * @param sheet sheet name\n\t * @returns cell value matrix\n\t */\n\trn = (a1: RangeAddress, sheet?: string) => {\n\t\tconst m = this.getModel(sheet);\n\t\treturn m.getValuesInRange(CellRange.fromA1(a1));\n\t}\n\t\n\t/**\n\t * Returns cell value by range name\n\t * @param name range (cell) name\n\t * @param sheet sheet name\n\t * @returns cell value\n\t */\n\tnv = (name: string, sheet?: string): unknown => {\n\t\treturn this.getModel(sheet).getCellByName(name, this.currentCell.range).value;\n\t};\n\n\t/**\n\t * Returns cell value matrix for named range\n\t * @param a1 range address\n\t * @param sheet sheet name\n\t * @returns cell value matrix\n\t */\n\tnr = (name: string, sheet?: string): unknown => {\n\t\tconst m = this.getModel(sheet);\n\t\tconst matrix = m.getValueMatrixByName(name);\n\t\tif (matrix.length === 1 && matrix[0].length === 1) return matrix[0][0];\n\t\treturn matrix;\n\t};\n\n\t/**\n\t * returns formula function\n\t * @param name function name\n\t * @returns \n\t */\n\tfn = (name: string) => {\n\t\tconst fn = _map.get(name);\n\t\tif (fn) return fn;\n\t\tthrow new Error(`Function \"${name}\" not found`);\n\t};\n\n\t/**\n\t * Performs matrix operation\n\t * @param operand1\n\t * @param operand2\n\t * @param operator\n\t * @return value\n\t */\n\top = (operand1: Matrix, operand2: Matrix, operator: Operator): Matrix => {\n\t\treturn matrixOperation(operand1, operand2, operator);\n\t}\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"formula.js","sourceRoot":"","sources":["../../src/calculations/formula.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formula.js","sourceRoot":"","sources":["../../src/calculations/formula.ts"],"names":[],"mappings":"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","sourcesContent":["import { Token, Tokenizer, TokenType } from \"./tokenization\";\nimport { FormulaFunction, ShiftOptions } from '../types';\nimport { CellRange } from \"../common\";\nimport { CellModel } from \"../model\";\nimport { Operator, operatorMap, OperatorSpec } from \"./operators\";\nimport { isArrayFunction } from \"./helpers\";\n\nexport type FormulaString = string;\n\nexport type FormulaContext = {\n\tcell: CellModel,\n\tformula: Formula\n}\n\nexport type FormulaColorItem = {\n\tcolor: string,\n\taddress: string,\n\tsheet?: string,\n\ttype: TokenType,\n\ttokenIndex: number\n}\n\ntype ExpressionNode = {\n\t/** token */\n t: string,\n\t/** token type */\n\ttt: TokenType,\n\t/** sheet */\n\ts?: string,\n\t/** children */\n c?: ExpressionNode[],\n}\n\nexport const isFormula = (value: string) => value && value.length > 0 && value.charAt(0) == '=' ? true : false;\nexport const prefixFormula = (value: string) => isFormula(value) ? value : ('=' + (value ?? ''));\nexport const stripFormulaPrefix = (value: string) => isFormula(value) ? value.substring(1) : value;\n\nconst colors = ['#5B97FF', '#FF616B', '#B77CFF', '#00B02C', '#FC58BE', '#FF9000', '#2EB0B3'];\nconst getColor = (index: number) => colors[index % colors.length];\n\n\nconst xlPrefixes = new Map<string, string>([\n\t['FORMULATEXT', '_xlfn.'],\n\t['CONCAT', '_xlfn.'],\n\t['INDIRECT', '_xlfn.'],\n\t['ISOWEEKNUM', '_xlfn.'],\n\t['SWITCH', '_xlfn.'],\n\t['XOR', '_xlfn.'],\n]);\n\nconst getXlFunctionPrefix = (fn: string) => {\n\treturn xlPrefixes.get(fn) ?? '';\n}\n\nexport class Formula {\n\n\tprivate _formula: string;\n\tprivate _xlFormula: string;\n\t\n\t// [index, variable, sheet]\n\tprivate _variables: [number, string, string?][];\n\t// [index, range, sheet]\n\tprivate _cells: [number, CellRange, string?][];\n\t// [index, range, sheet]\n\tprivate _ranges: [number, CellRange, string?][];\n\n\tprivate _fn: FormulaFunction;\n\tget fn() { return this._fn ?? (this._fn = (new Function('t', 'ctx', 'return ' + this.compile())) as FormulaFunction) }\n\n\tprivate _tokens: Token[];\n\tget tokens() { return this._tokens }\n\n\tget variables() { return this._variables }\n\tget cells() { return this._cells }\n\tget ranges() { return this._ranges }\n\n\n\tprivate _colors: Map<string, FormulaColorItem>;\n\n\tget colors() {\n\t\tif (!this._colors) {\n\t\t\tthis._colors = new Map<string, FormulaColorItem>();\n\t\t\tlet sheet: string;\n\t\t\tthis._tokens.forEach((t, i) => {\n\t\t\t\tif ([TokenType.Cell, TokenType.Range].includes(t[1])) {\n\t\t\t\t\tconst key = (sheet ? ('\\'' + sheet + '\\'!') : '') + t[0];\n\t\t\t\t\tthis._colors.set(key, {color: getColor(this._colors.size), address: t[0], sheet: sheet, type: t[1], tokenIndex: i});\n\t\t\t\t\tsheet = null;\n\t\t\t\t} else if (t[1] == TokenType.Sheet) {\n\t\t\t\t\tsheet = t[0];\n\t\t\t\t}\t\n\t\t\t});\n\t\t}\n\t\treturn this._colors;\n\t}\n\n\tconstructor(private expression: FormulaString, public readonly tokenizer: Tokenizer) {\n\t\tthis._tokens = tokenizer.tokenize(this.expression);\n\t\tthis.updateDependecies();\n\t}\n\n\tfindTokenIndexAtPosition(pos: number) {\n\t\tlet i = 0;\n\t\treturn this._tokens.findIndex(token => {\n\t\t\tconst size = token[0].length;\n\t\t\tif (pos >= i && pos <= i + size) return true;\n\t\t\ti += size;\n\t\t});\n\t}\n\n\t/**\n\t * Finds sheet token for the given reange token index\n\t * \n\t * @param tokenIndex \n\t */\n\tfindSheetTokenIndex(tokenIndex: number) : number {\n\t\tconst token = this._tokens[tokenIndex];\n\t\tif (![TokenType.Cell, TokenType.Range].includes(token[1])) return -1;\n\t\tif (tokenIndex == 0 || this._tokens[tokenIndex - 1][1] != TokenType.SheetSeparator) return -1;\n\t\tlet i = tokenIndex - 2;\n\t\twhile (i >= 0) {\n\t\t\tif (this._tokens[i][1] == TokenType.Sheet) return i;\n\t\t\ti--;\n\t\t}\n\t\treturn -1;\n\t}\n\n\t/**\n\t * Removes sheet token for the given token index (range or sheet itself)\n\t * @param tokenIndex \n\t * @returns number of tokens removed\n\t */\n\tremoveSheetToken(tokenIndex: number) {\n\t\tif (this._tokens[tokenIndex][1] != TokenType.Sheet) {\n\t\t\ttokenIndex = this.findSheetTokenIndex(tokenIndex);\n\t\t}\n\n\t\tif (tokenIndex > -1) {\n\t\t\tif (tokenIndex > 0 && this._tokens[tokenIndex - 1][1] == TokenType.SheetQuote) tokenIndex--;\n\t\t\tlet maxIndex = tokenIndex;\n\t\t\twhile (maxIndex < this._tokens.length && [\n\t\t\t\tTokenType.SheetSeparator, TokenType.SheetQuote, TokenType.Sheet\n\t\t\t].includes(this._tokens[maxIndex][1])) {\n\t\t\t\tmaxIndex++;\n\t\t\t}\n\t\t\tthis._tokens.splice(tokenIndex, maxIndex - tokenIndex);\n\t\t\treturn maxIndex - tokenIndex;\n\t\t}\n\t\treturn 0;\n\t}\n\n\tgetNamedColor(name: string) {\n\t\treturn this.colors.get(name)?.color ?? 'inherit';\n\t}\n\n\tgetTokenPosition(index: number) {\n\t\tlet min = 0;\n\t\tfor (let i = 0; i < index; i++) {\n\t\t\tmin += this._tokens[i][0].length;\n\t\t}\n\t\treturn {min: min, max: min + this._tokens[index][0].length};\n\t}\n\n\tupdateToken(index: number, newValue: string) {\n\t\tthis._fn = null;\n\t\tthis._formula = null;\n\t\tthis._xlFormula = null;\n\t\tthis._tokens[index][0] = newValue;\n\t}\n\n\tremoveToken(index: number) {\n\t\tthis._fn = null;\n\t\tthis._formula = null;\n\t\tthis._xlFormula = null;\n\t\tthis._tokens.splice(index, 1);\n\t}\n\n\t/**\n\t * Inserts a new token at the given index\n\t * @param index \n\t * @param value \n\t * @param type \n\t * @returns number of inserted tokens\n\t */\n\tinsertToken(index: number, value: string, type: TokenType) : number {\n\t\tthis._fn = null;\n\t\tthis._formula = null;\n\t\tthis._xlFormula = null;\n\t\tconst tokens: Token[] = [];\n\t\tif (type == TokenType.Sheet && /\\s/.test(value)) {\n\t\t\ttokens.push([this.tokenizer.options.sheetQuote, TokenType.SheetQuote]);\n\t\t\ttokens.push([value, TokenType.Sheet]);\n\t\t\ttokens.push([this.tokenizer.options.sheetQuote, TokenType.SheetQuote]);\n\t\t} else {\n\t\t\ttokens.push([value, type]);\n\t\t}\n\t\ttokens.push(['!', TokenType.SheetSeparator]);\n\t\tthis._tokens.splice(index, 0, ...tokens);\n\t\treturn tokens.length;\n\t}\n\n\tclone() {\n\t\treturn new Formula(this.createFormulaString(), this.tokenizer);\n\t}\n\n\tupdateDependecies() {\n\t\tthis._variables = [];\n\t\tthis._cells = [];\n\t\tthis._ranges = [];\n\t\tlet sheet: string;\n\t\tthis._tokens.forEach((t, i) => {\n\t\t\tswitch (t[1]) {\n\t\t\t\tcase TokenType.Sheet:\n\t\t\t\t\tsheet = t[0];\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.Variable:\n\t\t\t\t\tthis._variables.push([i, t[0], sheet]);\n\t\t\t\t\tsheet = undefined;\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.Cell:\n\t\t\t\t\tthis._cells.push([i, CellRange.fromA1(t[0]), sheet]);\n\t\t\t\t\tsheet = undefined;\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.Range:\n\t\t\t\t\tthis._ranges.push([i, CellRange.fromA1(t[0]), sheet]);\n\t\t\t\t\tsheet = undefined;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t});\n\t}\n\n\tcreateFormulaString(html = false, fnPrefixes = false) {\n\t\tconst opts = this.tokenizer.options;\n\t\tlet formula = '';\n\t\tlet token: Token;\n\t\tlet sheet: string;\n\t\tlet colorKey: string;\n\n\t\tfor (let i = 0; i < this._tokens.length; i++) {\n\t\t\ttoken = this._tokens[i];\n\t\t\tswitch (token[1]) {\n\t\t\t\tcase TokenType.SheetQuote:\n\t\t\t\t\tformula += '\\'';\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.SheetSeparator:\n\t\t\t\t\tformula += '!';\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.Sheet:\n\t\t\t\t\tsheet = token[0];\n\t\t\t\t\tformula += html ? `<span style=\"font-style:italic\">${sheet}</span>` : sheet;\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.Variable:\n\t\t\t\t\tformula += token[0];\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.Range:\n\t\t\t\tcase TokenType.Cell:\n\t\t\t\t\tcolorKey = (sheet ? ('\\'' + sheet + '\\'!') : '') + token[0];\n\t\t\t\t\tformula += html ? `<span style=\"color:${this.getNamedColor(colorKey)}\">${token[0]}</span>` : token[0];\n\t\t\t\t\tsheet = null;\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.StringQuote:\n\t\t\t\t\tformula += opts.stringQuote;\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.String:\n\t\t\t\t\tformula += token[0].replace(new RegExp(opts.stringQuote, 'g'), '\\\\' + opts.stringQuote);\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.ArgumentSeparator:\n\t\t\t\t\tformula += opts.argumentSeparator;\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.Function:\n\t\t\t\t\tformula += (fnPrefixes ? getXlFunctionPrefix(token[0]) : '') + token[0];\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.Unknown:\n\t\t\t\t\tformula += html \n\t\t\t\t\t\t? `<span style=\"background:#f00;color:#fff\">${token[0]}</span>`\n\t\t\t\t\t\t: token[0];\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tformula += token[0];\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn formula;\n\t}\n\n\tcreateExpressionTree() : ExpressionNode {\n\t\tconst nodeStack: ExpressionNode[] = [];\n\t\tconst operatorStack: Token[] = [];\n\t\tconst tokens = this.tokens;\n\n\t\tlet token: Token, operator: Token;\n\t\tlet op1: OperatorSpec, op2: OperatorSpec;\n\t\tlet sheet: string = null;\n\t\tlet nodes: ExpressionNode[];\n\t\t\n\t\tfor (let i = 0; i < tokens.length; i++) {\n\t\t\ttoken = tokens[i];\n\t\t\tswitch (token[1]) {\n\t\t\t\tcase TokenType.Sheet:\n\t\t\t\t\tsheet = token[0];\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.Cell:\n\t\t\t\tcase TokenType.Range:\n\t\t\t\t\tnodeStack.push({t: token[0], tt: token[1], s: sheet});\n\t\t\t\t\tsheet = null;\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.Number:\n\t\t\t\tcase TokenType.String:\n\t\t\t\tcase TokenType.Boolean:\n\t\t\t\tcase TokenType.Variable:\n\t\t\t\t\tnodeStack.push({t: token[0], tt: token[1]});\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.Operator:\n\t\t\t\t\tif (nodeStack.length == 0) nodeStack.push({t: '', tt: TokenType.Operand}); // generic operand\n\t\t\t\t\top1 = operatorMap.get(token[0] as Operator);\n\t\t\t\t\twhile (operatorStack.length > 0) {\n\t\t\t\t\t\top2 = operatorMap.get(operatorStack[operatorStack.length - 1][0] as Operator);\n\t\t\t\t\t\tif (!op2) break;\n\n\t\t\t\t\t\t// operators with higher precedence or equal precedence and left associativity\n\t\t\t\t\t\tif (!(op1[2] === 0 && op1[1] <= op2[1]) && !(op1[2] === 1 && op1[1] < op2[1])) break;\n\t\t\t\t\t\toperator = operatorStack.pop();\n\t\t\t\t\t\tnodes = [nodeStack.pop(), nodeStack.pop()].reverse();\n\t\t\t\t\t\tnodeStack.push({t: operator[0], tt: operator[1], c: nodes});\n\t\t\t\t\t}\n\t\t\t\t\toperatorStack.push(token);\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.Function:\n\t\t\t\t\toperatorStack.push(token);\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.OpenBracket:\n\t\t\t\t\toperatorStack.push(token);\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.ArgumentSeparator:\n\t\t\t\t\twhile (operatorStack.length > 0) {\n\t\t\t\t\t\t// evaluate expression until previous argument separator or open bracket\n\t\t\t\t\t\toperator = operatorStack[operatorStack.length - 1];\n\t\t\t\t\t\tif ([TokenType.OpenBracket, TokenType.ArgumentSeparator].includes(operator[1])) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\toperator = operatorStack.pop();\n\t\t\t\t\t\tnodes = [nodeStack.pop(), nodeStack.pop()].reverse();\n\t\t\t\t\t\tnodeStack.push({t: operator[0], tt: operator[1], c: nodes});\n\t\t\t\t\t}\n\t\t\t\t\toperatorStack.push(token);\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.CloseBracket:\n\t\t\t\t\tnodes = [];\n\t\t\t\t\twhile (operatorStack.length > 0) {\n\t\t\t\t\t\tif (operatorStack[operatorStack.length - 1][1] === TokenType.OpenBracket) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\toperator = operatorStack.pop();\n\t\t\t\t\t\tif (operator[1] == TokenType.Operator) {\n\t\t\t\t\t\t\t// nodes array contains operands for the current operator\n\t\t\t\t\t\t\tnodes.push({t: operator[0], tt: operator[1], c: [nodeStack.pop(), nodeStack.pop()].reverse()});\n\t\t\t\t\t\t} else if (operator[1] == TokenType.ArgumentSeparator) {\n\t\t\t\t\t\t\t// nodes array contains arguments of the function\n\t\t\t\t\t\t\tif (nodeStack.length > 0) nodes.push(nodeStack.pop());\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\toperatorStack.pop(); // pop the open bracket\n\n\t\t\t\t\tif (operatorStack.length > 0 && operatorStack[operatorStack.length - 1][1] === TokenType.Function) {\n\t\t\t\t\t\t// current token is closing bracket of a function\n\t\t\t\t\t\toperator = operatorStack.pop(); // pop function from operator stack\n\t\t\t\t\t\tnodes = nodes.reverse();\n\t\t\t\t\t\tif (nodeStack.length > 0 && tokens[i - 1][1] !== TokenType.OpenBracket) {\n\t\t\t\t\t\t\tnodes.unshift(nodeStack.pop()); // prepend first argument unless the function has zero arguments\n\t\t\t\t\t\t}\n\t\t\t\t\t\tnodeStack.push({t: operator[0], tt: operator[1], c: nodes});\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// current token is closing bracket of an expression\n\t\t\t\t\t\tnodeStack.push(...nodes);\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\n\t\twhile (operatorStack.length > 0) {\n\t\t\toperator = operatorStack.pop();\n\t\t\tnodeStack.push({t: operator[0], tt: operator[1], c: [nodeStack.pop(), nodeStack.pop()].reverse()});\n\t\t}\n\n\t\treturn nodeStack.pop();\n\t}\n\n\tcreateExpressionJSCode(node: ExpressionNode, parent?: ExpressionNode, arrayMode?: boolean) : string {\n\t\tlet args: string[];\n\t\tswitch (node.tt) {\n\t\t\tcase TokenType.Range:\n\t\t\t\treturn 't.rn(\\'' + node.t + '\\'' + (node.s ? (',\\'' + node.s + '\\'') : '') + ')';\n\t\t\tcase TokenType.Cell:\n\t\t\t\treturn 't.cl(\\'' + node.t + '\\'' + (node.s ? (',\\'' + node.s + '\\'') : '') + ')';\n\t\t\tcase TokenType.Operand:\n\t\t\t\treturn 't.cl()';\n\t\t\tcase TokenType.Variable:\n\t\t\t\tif (arrayMode || parent?.tt === TokenType.Function) {\n\t\t\t\t\treturn 't.nr(\\'' + node.t + '\\'' + (node.s ? (',\\'' + node.s + '\\'') : '') + ')';\n\t\t\t\t} else {\n\t\t\t\t\treturn 't.nv(\\'' + node.t + '\\'' + (node.s ? (',\\'' + node.s + '\\'') : '') + ')';\n\t\t\t\t}\n\t\t\tcase TokenType.String:\n\t\t\t\treturn '\\'' + node.t.replace(/'/g, \"\\\\'\") + '\\'';\n\t\t\tcase TokenType.Boolean:\n\t\t\t\treturn node.t[0].toUpperCase() == 'T' ? '1' : '0';\n\t\t\tcase TokenType.Function:\n\t\t\t\targs = node.c.map(n => this.createExpressionJSCode(n, node, arrayMode || isArrayFunction(node.t)));\n\t\t\t\treturn 't.fn(\\'' + node.t + '\\').call(ctx' + (args.length > 0 ? (',' + args.join(',')) : '') + ')';\n\t\t\tcase TokenType.Operator:\n\t\t\t\tif (arrayMode) {\n\t\t\t\t\targs = node.c.map(n => this.createExpressionJSCode(n, node, arrayMode || isArrayFunction(node.t)));\n\t\t\t\t\treturn 't.op(' + args[0] + ',' + args[1] + ',\\'' + node.t + '\\')';\t\n\t\t\t\t} else if (operatorMap.has(node.t as Operator)) {\n\t\t\t\t\treturn '(' + node.c.map(n => this.createExpressionJSCode(n, node, arrayMode)).join(operatorMap.get(node.t as Operator)[0]) + ')';\n\t\t\t\t} else {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\tdefault:\n\t\t\t\treturn node.t;\n\t\t}\n\t}\n\n\tcompile() {\n\t\tconst tree = this.createExpressionTree();\n\t\treturn this.createExpressionJSCode(tree);\n\t}\n\n\ttoString(prefix = false) { \n\t\treturn (prefix ? '=' : '') + (this._formula ?? (this._formula = this.createFormulaString()));\n\t}\n\n\ttoExcelString() {\n\t\treturn (this._xlFormula ?? (this._xlFormula = this.createFormulaString(false, true)));\n\t}\n\n\tshift(options: ShiftOptions) {\n\t\tconst { index, offset, direction, maxIndex, sheet, allSheets } = options;\n\t\tif (this._cells) this._cells.forEach(cell => {\n\t\t\tif (!allSheets && cell[2] != null && cell[2] != sheet) return;\n\t\t\tswitch (direction) {\n\t\t\t\tcase 'up': cell[1].shiftUp(index, offset, maxIndex); break;\n\t\t\t\tcase 'right': cell[1].shiftRight(index, offset, maxIndex); break;\n\t\t\t\tcase 'down': cell[1].shiftDown(index, offset, maxIndex); break;\n\t\t\t\tcase 'left': cell[1].shiftLeft(index, offset, maxIndex); break;\n\t\t\t}\n\t\t\tthis._tokens[cell[0]][0] = cell[1].A1;\n\t\t});\n\t\tif (this._ranges) this._ranges.forEach(range => {\n\t\t\tif (!allSheets && range[2] != null && range[2] != sheet) return;\n\t\t\tswitch (direction) {\n\t\t\t\tcase 'up': range[1].shiftUp(index, offset, maxIndex); break;\n\t\t\t\tcase 'right': range[1].shiftRight(index, offset, maxIndex); break;\n\t\t\t\tcase 'down': range[1].shiftDown(index, offset, maxIndex); break;\n\t\t\t\tcase 'left': range[1].shiftLeft(index, offset, maxIndex); break;\n\t\t\t}\n\t\t\tthis._tokens[range[0]][0] = range[1].A1;\n\t\t});\n\t\treturn this;\n\t}\n\n\thasSheetReference(sheet: string) {\n\t\tfor (const cell of this._cells) if (cell[2] == sheet) return true;\n\t\tfor (const range of this._ranges) if (range[2] == sheet) return true;\n\t\tfor (const variable of this._variables) if (variable[2] == sheet) return true;\n\t\treturn false;\n\t}\n\n\trenameSheet(oldName: string, newName: string) {\n\t\tlet renamed = false;\n\t\tthis._tokens.forEach(t => {\n\t\t\tif (t[1] == TokenType.Sheet && t[0] == oldName) {\n\t\t\t\tt[0] = newName;\n\t\t\t\trenamed = true;\n\t\t\t}\n\t\t});\n\t\treturn renamed;\n\t}\n\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"dates.js","sourceRoot":"","sources":["../../../src/calculations/functions/dates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dates.js","sourceRoot":"","sources":["../../../src/calculations/functions/dates.ts"],"names":[],"mappings":"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","sourcesContent":["import { dates } from \"@omegagrid/core\";\nimport { Arg, DateArg, scalar } from \"../helpers\";\nimport { getISOWeek, startOfDay } from \"date-fns\";\nimport { getLocale } from \"@omegagrid/localize\";\nimport { utils } from \"@omegagrid/core\";\n\nfunction toDate(d: DateArg) : Date{\n\tif (d instanceof Date) return d;\n\treturn utils.isString(d) ? dates.parse(d as string, getLocale()) : dates.serialDateToDate(d as number);\n}\n\nfunction toSN(d: DateArg) : number {\n\tif (utils.isNumber(d)) return d as number;\n\treturn dates.dateToSerialDate(d instanceof Date ? d : dates.parse(d as string, getLocale()))\n}\n\nexport function datevalue(date: DateArg) {\n\treturn (utils.isString(date) ? toSN(date) : date) as number;\n}\n\nexport function weekday(sn: DateArg, returnType?: number) {\n\tconst d = toDate(sn).getDay();\n\tswitch (returnType) {\n\t\tcase 2: return d;\n\t\tcase 3: return d - 1;\n\t\tdefault: return (d % 7) + 1; // 1\n\t}\n}\n\nexport function workday(sn: Arg<DateArg>, count: number, _holidays?: number[]) {\n\treturn dates.workday(toSN(scalar(sn)), count);\n}\n\nexport function today() {\n\treturn dates.dateToSerialDate(startOfDay(new Date()));\n}\n\nexport function isBlank(value: Arg) {\n\tvalue = scalar(value);\n\treturn value == null || value === '';\n}\n\nexport function date(year: number, month: number, day: number) {\n\treturn dates.dateToSerialDate(new Date(year, month - 1, day));\n}\n\nexport function year(sn: DateArg) {\n\treturn toDate(sn).getFullYear();\n}\n\nexport function month(sn: DateArg) {\n\treturn toDate(sn).getMonth() + 1;\n}\n\nexport function day(sn: DateArg) {\n\treturn toDate(sn).getDate();\n}\n\nexport function eomonth(sn: DateArg, months: number) {\n\tconst d = toDate(sn);\n\td.setMonth(d.getMonth() + months + 1);\n\td.setDate(0);\n\treturn dates.dateToSerialDate(d);\n}\n\nexport function isoweeknum(sn: DateArg) {\n\treturn getISOWeek(toDate(sn));\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/calculations/functions/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,QAAQ,CAAC;AACxC,OAAO,KAAK,aAAa,MAAM,SAAS,CAAC;AACzC,OAAO,KAAK,aAAa,MAAM,QAAQ,CAAC;AACxC,OAAO,KAAK,eAAe,MAAM,UAAU,CAAC;AAC5C,OAAO,KAAK,gBAAgB,MAAM,WAAW,CAAC;AAC9C,OAAO,KAAK,gBAAgB,MAAM,WAAW,CAAC;AAC9C,OAAO,KAAK,oBAAoB,MAAM,eAAe,CAAC;AAEtD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,SAAS,kBAAkB,CAAC,GAAiC,EAAE,MAAc;IAC5E,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAC1C,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,EACrD,MAA0C,CAAC,IAAI,CAAC,CAAC,CAClD,CAAC;AACH,CAAC;AAED,MAAM,IAAI,GAAG,IAAI,GAAG,EAA2B,CAAC;AAChD,kBAAkB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;AACxC,kBAAkB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;AACxC,kBAAkB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;AACxC,kBAAkB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;AAC1C,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;AAC3C,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;AAC3C,kBAAkB,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;AAE/C,OAAO,EACN,IAAI,EACJ,aAAa,IAAI,IAAI,EACrB,aAAa,IAAI,IAAI,EACrB,aAAa,IAAI,IAAI,EACrB,eAAe,IAAI,MAAM,EACzB,gBAAgB,IAAI,OAAO,EAC3B,gBAAgB,IAAI,OAAO,EAC3B,oBAAoB,IAAI,WAAW,EACnC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/calculations/functions/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,QAAQ,CAAC;AACxC,OAAO,KAAK,aAAa,MAAM,SAAS,CAAC;AACzC,OAAO,KAAK,aAAa,MAAM,QAAQ,CAAC;AACxC,OAAO,KAAK,eAAe,MAAM,UAAU,CAAC;AAC5C,OAAO,KAAK,gBAAgB,MAAM,WAAW,CAAC;AAC9C,OAAO,KAAK,gBAAgB,MAAM,WAAW,CAAC;AAC9C,OAAO,KAAK,oBAAoB,MAAM,eAAe,CAAC;AAEtD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,SAAS,kBAAkB,CAAC,GAAiC,EAAE,MAAc;IAC5E,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAC1C,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,EACrD,MAA0C,CAAC,IAAI,CAAC,CAAC,CAClD,CAAC;AACH,CAAC;AAED,MAAM,IAAI,GAAG,IAAI,GAAG,EAA2B,CAAC;AAChD,kBAAkB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;AACxC,kBAAkB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;AACxC,kBAAkB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;AACxC,kBAAkB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;AAC1C,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;AAC3C,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;AAC3C,kBAAkB,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;AAE/C,OAAO,EACN,IAAI,EACJ,aAAa,IAAI,IAAI,EACrB,aAAa,IAAI,IAAI,EACrB,aAAa,IAAI,IAAI,EACrB,eAAe,IAAI,MAAM,EACzB,gBAAgB,IAAI,OAAO,EAC3B,gBAAgB,IAAI,OAAO,EAC3B,oBAAoB,IAAI,WAAW,EACnC,CAAC","sourcesContent":["import * as textFunctions from './text';\nimport * as dateFunctions from './dates';\nimport * as mathFunctions from './math';\nimport * as lookupFunctions from './lookup';\nimport * as specialFunctions from './special';\nimport * as logicalFunctions from './logical';\nimport * as statisticalFunctions from './statistical';\nimport { FormulaFunction } from '../../types';\nimport { utils } from '@omegagrid/core';\n\nfunction addModuleFunctions(map: Map<string, FormulaFunction>, module: object) {\n\tObject.keys(module).forEach(name => map.set(\n\t\tutils.trim(name, '_').replace(/_/g, '.').toUpperCase(),\n\t\t(module as Record<string, FormulaFunction>)[name])\n\t);\n}\n\nconst _map = new Map<string, FormulaFunction>();\naddModuleFunctions(_map, textFunctions);\naddModuleFunctions(_map, dateFunctions);\naddModuleFunctions(_map, mathFunctions);\naddModuleFunctions(_map, lookupFunctions);\naddModuleFunctions(_map, logicalFunctions);\naddModuleFunctions(_map, specialFunctions);\naddModuleFunctions(_map, statisticalFunctions);\n\nexport {\n\t_map,\n\ttextFunctions as text,\n\tdateFunctions as date,\n\tmathFunctions as math,\n\tlookupFunctions as lookup,\n\tspecialFunctions as special,\n\tlogicalFunctions as logical,\n\tstatisticalFunctions as statistical\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"logical.js","sourceRoot":"","sources":["../../../src/calculations/functions/logical.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,UAAU,GAAG,CAAC,GAAG,IAAc;IACpC,IAAI,MAAM,GAAG,IAAI,CAAC;IAClB,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;QAAE,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,CAAA,CAAC,CAAC,CAAC,CAAC;IAC1D,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,UAAU,EAAE,CAAC,GAAG,IAAc;IACnC,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC;QAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA,CAAC,CAAC,CAAC,CAAC;IACxD,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,GAAG,IAAc;IACpC,IAAI,MAAM,GAAY,IAAI,CAAC;IAC3B,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE;QACnB,IAAI,MAAM,KAAK,IAAI;YAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;;YAC7B,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,GAAG,IAAe;IACzC,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;aACpC,IAAI,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,SAAkB,EAAE,MAAe,EAAE,OAAgB,IAAI,OAAO,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAA,CAAC,CAAC;AAClH,MAAM,UAAU,GAAG,CAAC,KAAc,IAAI,OAAO,CAAC,KAAK,CAAA,CAAC,CAAC;AACrD,MAAM,UAAU,MAAM,KAAK,OAAO,KAAK,CAAA,CAAC,CAAC;AACzC,MAAM,UAAU,KAAK,KAAK,OAAO,IAAI,CAAA,CAAC,CAAC;AAEvC,MAAM,UAAU,OAAO,CAAC,KAAc,EAAE,YAAqB;IAC5D,YAAY,GAAG,YAAY,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC;IACzD,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QAC/B,OAAO,YAAY,CAAC;IACrB,CAAC;IAED,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QACtE,OAAO,YAAY,CAAC;IACrB,CAAC;IAED,qCAAqC;IACrC,OAAO,KAAK,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"logical.js","sourceRoot":"","sources":["../../../src/calculations/functions/logical.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,UAAU,GAAG,CAAC,GAAG,IAAc;IACpC,IAAI,MAAM,GAAG,IAAI,CAAC;IAClB,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;QAAE,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,CAAA,CAAC,CAAC,CAAC,CAAC;IAC1D,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,UAAU,EAAE,CAAC,GAAG,IAAc;IACnC,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC;QAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA,CAAC,CAAC,CAAC,CAAC;IACxD,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,GAAG,IAAc;IACpC,IAAI,MAAM,GAAY,IAAI,CAAC;IAC3B,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE;QACnB,IAAI,MAAM,KAAK,IAAI;YAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;;YAC7B,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,GAAG,IAAe;IACzC,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;aACpC,IAAI,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,SAAkB,EAAE,MAAe,EAAE,OAAgB,IAAI,OAAO,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAA,CAAC,CAAC;AAClH,MAAM,UAAU,GAAG,CAAC,KAAc,IAAI,OAAO,CAAC,KAAK,CAAA,CAAC,CAAC;AACrD,MAAM,UAAU,MAAM,KAAK,OAAO,KAAK,CAAA,CAAC,CAAC;AACzC,MAAM,UAAU,KAAK,KAAK,OAAO,IAAI,CAAA,CAAC,CAAC;AAEvC,MAAM,UAAU,OAAO,CAAC,KAAc,EAAE,YAAqB;IAC5D,YAAY,GAAG,YAAY,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC;IACzD,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QAC/B,OAAO,YAAY,CAAC;IACrB,CAAC;IAED,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QACtE,OAAO,YAAY,CAAC;IACrB,CAAC;IAED,qCAAqC;IACrC,OAAO,KAAK,CAAC;AACd,CAAC","sourcesContent":["import { ArrayArg, eachValue } from \"../helpers\";\n\nexport function and(...args: ArrayArg) {\n\tlet result = true;\n\teachValue(args, v => { if (!v) return (result = false) });\n\treturn result;\n}\n\nexport function or(...args: ArrayArg) {\n\tlet result = false;\n\teachValue(args, v => { if (v) return (result = true) });\n\treturn result;\n}\n\nexport function xor(...args: ArrayArg) {\n\tlet result: boolean = null;\n\teachValue(args, v => { \n\t\tif (result === null) result = !!v;\n\t\telse result = (!!v != result);\n\t});\n\treturn result;\n}\n\nexport function _switch(...args: unknown[]) {\n\tconst expression = args[0];\n\tfor (let i = 1; i < args.length; i += 2) {\n\t\tif (i == args.length - 1) return args[i];\n\t\telse if (expression == args[i]) return args[i + 1];\n\t}\n\treturn null;\n}\n\nexport function _if(condition: unknown, ifTrue: unknown, ifFalse: unknown) { return condition ? ifTrue : ifFalse }\nexport function not(value: unknown) { return !value }\nexport function _false() { return false }\nexport function _true() { return true }\n\nexport function iferror(value: unknown, valueIfError: unknown) {\n\tvalueIfError = valueIfError === \"\" ? null : valueIfError;\n\tif (this.cell.hasError) {\n\t\tthis.cell.error.handled = true;\n\t\treturn valueIfError;\n\t}\n\n\tif (value === Infinity || value === -Infinity || Number.isNaN(value)) {\n\t\treturn valueIfError;\n\t}\n\t\n\t// TODO: check for other error values\n\treturn value;\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"lookup.js","sourceRoot":"","sources":["../../../src/calculations/functions/lookup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lookup.js","sourceRoot":"","sources":["../../../src/calculations/functions/lookup.ts"],"names":[],"mappings":"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","sourcesContent":["import { Matrix } from \"@omegagrid/core\";\nimport { FormulaContext, prefixFormula } from \"..\";\nimport { CellRange } from \"../../common\";\nimport { ArrayArg, eachValue, getFormulaCells } from \"../helpers\";\n\nfunction getStringMatcher(searchValue: string, exactMatch: boolean): ((value: string) => boolean) {\n\tsearchValue = searchValue == null ? '' : searchValue.toString();\n\tif (exactMatch) {\n\t\treturn (value: string) => value == searchValue;\t\n\t} else {\n\t\tsearchValue = searchValue.toLowerCase();\n\t\treturn (value: string) => (value ?? '').toString().toLowerCase() == searchValue;\n\t}\n}\n\nexport function address(row: number, column: number, mode = 1) {\n\tconst range = new CellRange(Math.max((column || 0) - 1, 0), Math.max((row || 0) - 1, 0));\n\tif (mode == 1 || mode == 2) range.r1Anchor = true;\n\tif (mode == 1 || mode == 3) range.c1Anchor = true;\n\treturn range.A1;\n}\n\nexport function vlookup(lookupValue: string, lookupTable: Matrix<string>, colIndex: number, exactMatch = false) {\n\tlet r: number, c: number;\n\tconst match = getStringMatcher(lookupValue, exactMatch);\n\tfor (r = 0; r < lookupTable.length; r++) {\n\t\tfor (c = 0; c < lookupTable[r].length; c++) {\n\t\t\tif (match(lookupTable[r][c])) {\n\t\t\t\treturn lookupTable[r][colIndex - 1];\n\t\t\t}\n\t\t}\n\t}\n\treturn null;\n}\n\nexport function hlookup(lookupValue: string, lookupTable: Matrix<string>, rowIndex: number, exactMatch = false) {\n\tlet r: number, c: number;\n\tconst match = getStringMatcher(lookupValue, exactMatch);\n\tfor (r = 0; r < lookupTable.length; r++) {\n\t\tfor (c = 0; c < lookupTable[r].length; c++) {\n\t\t\tif (match(lookupTable[r][c])) {\n\t\t\t\treturn lookupTable[rowIndex - 1][c];\n\t\t\t}\n\t\t}\n\t}\n\treturn null;\n}\n\nexport function lookup(lookupValue: unknown, lookupTable: Matrix<unknown>, resultTable?: Matrix<unknown>) {\n\tlet r: number, c: number;\n\n\texit_loops:\n\tfor (r = 0; r < lookupTable.length; r++) {\n\t\tfor (c = 0; c < lookupTable[r].length; c++) {\n\t\t\tif (lookupTable[r][c] == lookupValue) break exit_loops;\n\t\t}\n\t}\n\n\tif (resultTable) return resultTable[r] ? resultTable[r][c] : null;\n\telse return lookupTable[r][lookupTable[r].length - 1];\n}\n\nexport function choose(index: number, ...args: ArrayArg) {\n\tlet result: unknown = null;\n\tlet current = 0;\n\teachValue(args, v => { \n\t\tif (index == ++current) {\n\t\t\tresult = v;\n\t\t\treturn false;\n\t\t}\n\t});\n\treturn result;\n}\n\nexport function column(address?: string) {\n\treturn (address ? CellRange.fromA1(address).c1 : (this as FormulaContext).cell.c) + 1;\n}\n\nexport function row(address?: string) {\n\treturn (address ? CellRange.fromA1(address).r1 : (this as FormulaContext).cell.r) + 1;\n}\n\nexport function columns(range: ArrayArg) {\n\treturn Array.isArray(range) ? range[0]?.length : 1;\n}\n\nexport function rows(range: ArrayArg) {\n\treturn Array.isArray(range) ? range.length : 1;\n}\n\nexport function formulatext() {\n\tconst cell = getFormulaCells(this)[0];\n\treturn cell && cell.hasFormula ? (' ' + prefixFormula(cell.formula)) : '';\n}\n\nexport function index(range: ArrayArg, row: number, column: number) {\n\trow = row || 1;\n\tcolumn = column || 1;\n\tif (Array.isArray(range)) return range[row - 1] ? range[row - 1][column - 1] : null;\n\telse if (row == 1 && column == 1) return range;\n\telse return null;\n}\n\nexport function indirect(ref: string) {\n\tconst currentCell = (this as FormulaContext).cell;\n\tconst model = currentCell.model;\n\tconst targetCell = model.getCellByA1(ref);\n\n\t// register string reference dependencies\n\tlet map: Map<string, [CellRange, string?]>;\n\tif (model.calculations.dependencies.cellDependencies.has(currentCell.address)) {\n\t\tmap = model.calculations.dependencies.cellDependencies.get(currentCell.address);\n\t} else {\n\t\tmap = new Map();\n\t\tmodel.calculations.dependencies.cellDependencies.set(currentCell.address, map);\n\t}\n\tmap.set(targetCell.address, [targetCell.range]);\n\n\tif (model.calculations.dependencies.cellDependants.has(targetCell.address)) {\n\t\tmap = model.calculations.dependencies.cellDependants.get(targetCell.address);\n\t} else {\n\t\tmap = new Map();\n\t\tmodel.calculations.dependencies.cellDependants.set(targetCell.address, map);\n\t}\n\tmap.set(currentCell.address, [currentCell.range]);\n\n\treturn targetCell.value;\n}\n\nexport function match(matchValue: unknown, range: Matrix<unknown>, matchType = 0) {\n\tlet r: number, c: number;\n\tfor (r = 0; r < range.length; r++) {\n\t\tfor (c = 0; c < range[r].length; c++) {\n\t\t\tif (matchType == 0 && range[r][c] == matchValue) return Math.max(r + 1, c + 1);\n\t\t\tif (matchType == 1 && range[r][c] > matchValue) return Math.max(r + 1, c + 1);\n\t\t\tif (matchType == -1 && range[r][c] < matchValue) return Math.max(r + 1, c + 1);\n\t\t}\n\t}\n\treturn null;\n}\n\nexport function offset(_ref: unknown, rows: number, columns: number, height?: number, width?: number) {\n\tconst cell = getFormulaCells(this)[0];\n\tconst result: unknown[] = [];\n\theight = height || 1;\n\twidth = width || 1;\n\tfor (let r = 0; r < height; r++) {\n\t\tconst row: unknown[] = [];\n\t\tfor (let c = 0; c < width; c++) {\n\t\t\tconst cell2 = cell.model.rows[cell.r + r + rows].cell(cell.c + c + columns);\n\t\t\trow.push(cell2 ? cell.value : null)\n\t\t}\n\t\tresult.push(row);\n\t}\n\treturn result;\n}\n\nexport function filter(range: Matrix, boolRange: Matrix) {\n\tconst result: unknown[] = [];\n\tif (range.length == boolRange.length) {\n\t\tfor (let r = 0; r < range.length; r++) {\n\t\t\tlet match = true;\n\t\t\tfor (let c = 0; c < boolRange[r].length; c++) {\n\t\t\t\tif (!boolRange[r][c]) {\n\t\t\t\t\tmatch = false;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (match) result.push(range[r]);\n\t\t}\n\t} else {\n\t\t// by columns\n\t}\n\treturn result;\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"math.js","sourceRoot":"","sources":["../../../src/calculations/functions/math.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"math.js","sourceRoot":"","sources":["../../../src/calculations/functions/math.ts"],"names":[],"mappings":"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","sourcesContent":["import { Matrix } from \"@omegagrid/core\";\nimport { Condition, evalCondition } from \"../conditions\";\nimport { eachValue, ArrayArg, matrix } from '../helpers';\n\n// trigonometry\nexport function acos(x: number) { return Math.acos(x) }\nexport function acosh(x: number) { return Math.acosh(x) }\nexport function acot(x: number) { return Math.PI / 2 - Math.atan(x) }\nexport function acoth(x: number) { return 0.5 * Math.log((x + 1) / (x - 1)) }\nexport function asin(x: number) { return Math.asin(x) }\nexport function asinh(x: number) { return Math.asinh(x) }\nexport function atan(x: number) { return Math.atan(x) }\nexport function atanh(x: number) { return Math.atanh(x) }\nexport function cos(x: number) { return Math.cos(x) }\nexport function cosh(x: number) { return Math.cosh(x) }\nexport function cot(x: number) { return 1 / Math.tan(x) }\nexport function coth(x: number) { return 1 / Math.tanh(x) }\nexport function csc(x: number) { return 1 / Math.sin(x) }\nexport function csch(x: number) { return 1 / Math.sinh(x) }\nexport function degrees(x: number) { return x * 180 / Math.PI }\nexport function PI() { return Math.PI }\nexport function sec(x: number) { return 1 / Math.cos(x) }\nexport function sech(x: number) { return 1 / Math.cosh(x) }\nexport function sin(x: number) { return Math.sin(x) }\nexport function sinh(x: number) { return Math.sinh(x) }\nexport function tan(x: number) { return Math.tan(x) }\nexport function tanh(x: number) { return Math.tanh(x) }\n\n\n/**\n * Returns the absolute value of a number.\n *\n * @link https://support.google.com/docs/answer/3093459\n * @link https://support.microsoft.com/en-us/office/abs-function-3420200f-5628-4e8c-99da-c99d7c87713c\n * \n * @param x number\n * @returns number\n */\nexport function abs(x: number) { return Math.abs(x) }\n\nexport function ceiling(x: number) { \n\tif (x < 0) throw new Error(\"#NUM\");\n\treturn Math.ceil(x);\n}\nexport function even(x: number) {\n\tx = Math.ceil(x);\n\treturn x % 2 == 0 ? x : x + 1;\n}\nexport function exp(x: number) { return Math.pow(Math.E, x) }\nexport function fact(x: number): number { \n\tif (x < 0) return -1;\n\telse if (x == 0) return 1;\n\telse return (x * fact(x - 1));\n}\n\nexport function factdouble(x: number): number { \n\tif (x <= 0) return 1;\n\telse return (x * factdouble(x - 2));\n}\n\nexport function floor(x: number) { return Math.floor(x) }\n\nexport function isdecimal(x: number) { return x % 1 !== 0 }\nexport function iseven(x: number) { return !isdecimal(x) && x % 2 == 0 }\nexport function isodd(x: number) { return isdecimal(x) || x % 2 == 1 }\nexport function ln(x: number) { return Math.log(x) }\nexport function log(x: number, base: number) { return Math.log(x) / Math.log(base) }\nexport function log10(x: number) { return Math.log10(x) }\nexport function mod(divident: number, divisor: number) { return divident % divisor }\nexport function odd(x: number) {\n\tx = Math.ceil(x);\n\treturn x % 2 == 0 ? x + 1 : x;\n}\nexport function power(base: number, exponent: number) { return Math.pow(base, exponent) }\n\nexport function product(...args: ArrayArg) {\n\tlet result = 1;\n\teachValue(args, v => result *= (v as number) || 1);\n\treturn result;\n}\n\nexport function quotient(divident: number, divisor: number) { return Math.floor(divident / divisor) }\nexport function radians(angle: number) { return angle * Math.PI / 180 }\nexport function rand() { return Math.random() }\n\nexport function randarray(rows: number, columns: number) {\n\tconst arr: Matrix<number> = Array(rows).fill(null).map(() => Array(columns));\n\tfor (let r = 0; r < rows; r++) {\n\t\tfor (let c = 0; c < columns; c++) {\n\t\t\tarr[r][c] = Math.random();\n\t\t}\n\t}\n\treturn arr;\n}\n\nexport function randbetween(min: number, max: number) {\n\tmin = Math.ceil(min);\n\tmax = Math.floor(max);\n\treturn Math.floor(Math.random() * (max - min + 1)) + min;\n}\n\nexport function round(value: number, places: number) { return value.toFixed(places) }\n\nexport function rounddown(value: number, places: number) {\n\tplaces = places || 0;\n return Math.floor(value * Math.pow(10, places)) / Math.pow(10, places);\n}\n\nexport function roundup(value: number, places: number) {\n\tplaces = places || 0;\n return Math.ceil(value * Math.pow(10, places)) / Math.pow(10, places);\n}\n\nexport function sequence(rows: number, columns: number, start = 1, step = 1) {\n\tconst arr: Matrix<number> = Array(rows).fill(null).map(() => Array(columns));\n\tlet val = start;\n\tfor (let r = 0; r < rows; r++) {\n\t\tfor (let c = 0; c < columns; c++) {\n\t\t\tarr[r][c] = val;\n\t\t\tval += step;\n\t\t}\n\t}\n\treturn arr;\n}\n\nexport function sign(value: number) { return value < 0 ? -1 : (value > 0 ? 1 : 0) }\nexport function sqrt(x: number) { return Math.sqrt(x) }\nexport function sqrtpi(x: number) { return Math.sqrt(Math.PI * x) }\n\n// counting\n\nexport function count(...args: ArrayArg) {\n\tlet cnt = 0;\n\teachValue(args, v => cnt += v == null ? 0 : 1);\n\treturn cnt;\n}\n\nexport function countblank(...args: ArrayArg) {\n\tlet cnt = 0;\n\teachValue(args, v => cnt += v == null ? 1 : 0);\n\treturn cnt;\n}\n\nexport function countif(v: ArrayArg, cond: Condition) {\n\tlet cnt = 0;\n\teachValue(v, v => cnt += evalCondition(cond, v) ? 1 : 0);\n\treturn cnt;\n}\n\nexport function countunique(...args: ArrayArg) {\n\tlet cnt = 0;\n\tconst map = new Map();\n\teachValue(args, v => {\n\t\tif (!map.has(v)) {\n\t\t\tmap.set(v, v);\n\t\t\t++cnt;\n\t\t}\n\t});\n\treturn cnt;\n}\n\nexport function sum(...args: ArrayArg<number>) {\n\tlet sum = 0;\n\teachValue(args, v => sum += isNaN(v) ? 0 : v);\n\treturn sum;\n}\n\nexport function sumif(v: ArrayArg<number>, cond: Condition, range?: ArrayArg<number>) {\n\tlet sum = 0;\n\tif (range) {\n\t\tconst rangeMatrix = matrix(range);\n\t\teachValue(v, (val, r, c) => sum += evalCondition(cond, val) \n\t\t\t\t&& rangeMatrix[r] \n\t\t\t\t&& rangeMatrix[r][c] \n\t\t\t\t&& !isNaN(rangeMatrix[r][c])\n\t\t\t? (rangeMatrix[r][c]) : 0);\n\t} else {\n\t\teachValue(v, val => sum += evalCondition(cond, val) && !isNaN(val) ? val : 0);\n\t}\n\treturn sum;\n}\n\nexport function sumsq(v: ArrayArg<number>, cond: Condition) {\n\tlet sum = 0;\n\teachValue(v, v => sum += evalCondition(cond, v) && !isNaN(v) ? (v * v) : 0);\n\treturn sum;\n}\n\nexport function sumproduct(...args: ArrayArg<number>) {\n\tlet sum = 0;\n\tconst r1 = args.shift();\n\tif (args.length === 0) {\n\t\teachValue(r1 as Matrix<number>, v => sum += isNaN(v) ? 0 : v);\n\t} else {\n\t\tconst r2 = matrix<number>(args[0] as ArrayArg<number>);\n\t\teachValue(r1 as Matrix<number>, (v, r, c) => sum += r2[r] && r2[r][c] && !isNaN(v) && !isNaN(r2[r][c]) ? (v * r2[r][c]) : 0);\n\t}\n\treturn sum;\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"special.js","sourceRoot":"","sources":["../../../src/calculations/functions/special.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAE5D;;;;GAIG;AACH,MAAM,CAAC,GAAG,CAAC;QACV,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB;KACtB,EAAE;QACF,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB;KACtB,EAAE;QACF,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;KAC9C,CAAC,CAAA;AAEF;;;;GAIG;AACH,MAAM,CAAC,GAAG,CAAC;QACV,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;KAC9C,EAAE;QACF,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;KAC9C,EAAE;QACF,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB;KACtB,CAAC,CAAA;AAEF,MAAM,UAAU,IAAI,CAAC,CAAS;IAC7B,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,CAAA;IACd,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA;IACxB,IAAI,IAAI,GAAG,GAAG,CAAA;IACd,IAAI,CAAC,CAAA;IAEL,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA;QAC7B,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA;IAC/B,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAClD,CAAC"}
1
+ {"version":3,"file":"special.js","sourceRoot":"","sources":["../../../src/calculations/functions/special.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAE5D;;;;GAIG;AACH,MAAM,CAAC,GAAG,CAAC;QACV,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB;KACtB,EAAE;QACF,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB;KACtB,EAAE;QACF,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;KAC9C,CAAC,CAAA;AAEF;;;;GAIG;AACH,MAAM,CAAC,GAAG,CAAC;QACV,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;KAC9C,EAAE;QACF,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;KAC9C,EAAE;QACF,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB,EAAE,sBAAsB;QAC9C,sBAAsB;KACtB,CAAC,CAAA;AAEF,MAAM,UAAU,IAAI,CAAC,CAAS;IAC7B,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,CAAA;IACd,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA;IACxB,IAAI,IAAI,GAAG,GAAG,CAAA;IACd,IAAI,CAAC,CAAA;IAEL,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA;QAC7B,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA;IAC/B,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAClD,CAAC","sourcesContent":["/* eslint-disable @typescript-eslint/no-loss-of-precision */\n\n/**\n * Coefficients for each term of the numerator sum (p_j) for each approximation\n * interval (see W. J. Cody's paper for more details)\n * @constant\n */\nconst P = [[\n\t3.16112374387056560e00, 1.13864154151050156e02,\n\t3.77485237685302021e02, 3.20937758913846947e03,\n\t1.85777706184603153e-1\n], [\n\t5.64188496988670089e-1, 8.88314979438837594e00,\n\t6.61191906371416295e01, 2.98635138197400131e02,\n\t8.81952221241769090e02, 1.71204761263407058e03,\n\t2.05107837782607147e03, 1.23033935479799725e03,\n\t2.15311535474403846e-8\n], [\n\t3.05326634961232344e-1, 3.60344899949804439e-1,\n\t1.25781726111229246e-1, 1.60837851487422766e-2,\n\t6.58749161529837803e-4, 1.63153871373020978e-2\n]]\n \n/**\n * Coefficients for each term of the denominator sum (q_j) for each approximation\n * interval (see W. J. Cody's paper for more details)\n * @constant\n */\nconst Q = [[\n\t2.36012909523441209e01, 2.44024637934444173e02,\n\t1.28261652607737228e03, 2.84423683343917062e03\n], [\n\t1.57449261107098347e01, 1.17693950891312499e02,\n\t5.37181101862009858e02, 1.62138957456669019e03,\n\t3.29079923573345963e03, 4.36261909014324716e03,\n\t3.43936767414372164e03, 1.23033935480374942e03\n], [\n\t2.56852019228982242e00, 1.87295284992346047e00,\n\t5.27905102951428412e-1, 6.05183413124413191e-2,\n\t2.33520497626869185e-3\n]]\n\nexport function erfc(y: number) {\n\tconst ysq = y * y\n let xnum = P[0][4] * ysq\n let xden = ysq\n let i\n\n for (i = 0; i < 3; i += 1) {\n xnum = (xnum + P[0][i]) * ysq\n xden = (xden + Q[0][i]) * ysq\n }\n return y * (xnum + P[0][3]) / (xden + Q[0][3])\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"statistical.js","sourceRoot":"","sources":["../../../src/calculations/functions/statistical.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACxE,OAAO,IAAI,MAAM,yBAAyB,CAAC;AAC3C,OAAO,SAAS,MAAM,0BAA0B,CAAC;AACjD,gDAAgD;AAChD,0DAA0D;AAE1D,qDAAqD;AACrD,iDAAiD;AACjD,sCAAsC;AACtC,IAAI;AAEJ,MAAM,UAAU,OAAO,CAAC,GAAG,IAAc;IACxC,IAAI,GAAG,GAAG,CAAC,CAAC;IAAC,IAAI,GAAG,GAAG,CAAC,CAAA;IACxB,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE;QACnB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAW,CAAC,EAAE,CAAC;YACtC,GAAG,IAAK,CAAY,IAAI,CAAC,CAAA;YACzB,EAAE,GAAG,CAAC;QACP,CAAC;IACF,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,GAAG,GAAG,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAE,MAAwB,EAAE,OAAyB;IACpF,MAAM,UAAU,GAAG,SAAS,EAAE,CAAC;IAC/B,MAAM,CAAC,GAAG,MAAM,CAAS,MAAM,CAAC,CAAC;IACjC,MAAM,CAAC,GAAG,MAAM,CAAS,OAAO,CAAC,CAAC;IAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAChD,CAAC;IACF,CAAC;IACD,OAAO,UAAU,EAAE,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,GAAG,IAAsB;IAC/C,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAa,CAAC;IAC7C,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACrC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,GAAG,IAAc;IACpC,IAAI,GAAG,GAAG,QAAQ,CAAC;IACnB,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAW,CAAC,CAAC,CAAC;IACvD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,GAAG,IAAc;IACpC,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC;IACpB,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAW,CAAC,CAAC,CAAC;IACvD,OAAO,GAAG,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"statistical.js","sourceRoot":"","sources":["../../../src/calculations/functions/statistical.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACxE,OAAO,IAAI,MAAM,yBAAyB,CAAC;AAC3C,OAAO,SAAS,MAAM,0BAA0B,CAAC;AACjD,gDAAgD;AAChD,0DAA0D;AAE1D,qDAAqD;AACrD,iDAAiD;AACjD,sCAAsC;AACtC,IAAI;AAEJ,MAAM,UAAU,OAAO,CAAC,GAAG,IAAc;IACxC,IAAI,GAAG,GAAG,CAAC,CAAC;IAAC,IAAI,GAAG,GAAG,CAAC,CAAA;IACxB,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE;QACnB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAW,CAAC,EAAE,CAAC;YACtC,GAAG,IAAK,CAAY,IAAI,CAAC,CAAA;YACzB,EAAE,GAAG,CAAC;QACP,CAAC;IACF,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,GAAG,GAAG,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAE,MAAwB,EAAE,OAAyB;IACpF,MAAM,UAAU,GAAG,SAAS,EAAE,CAAC;IAC/B,MAAM,CAAC,GAAG,MAAM,CAAS,MAAM,CAAC,CAAC;IACjC,MAAM,CAAC,GAAG,MAAM,CAAS,OAAO,CAAC,CAAC;IAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAChD,CAAC;IACF,CAAC;IACD,OAAO,UAAU,EAAE,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,GAAG,IAAsB;IAC/C,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAa,CAAC;IAC7C,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACrC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,GAAG,IAAc;IACpC,IAAI,GAAG,GAAG,QAAQ,CAAC;IACnB,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAW,CAAC,CAAC,CAAC;IACvD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,GAAG,IAAc;IACpC,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC;IACpB,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAW,CAAC,CAAC,CAAC;IACvD,OAAO,GAAG,CAAC;AACZ,CAAC","sourcesContent":["import { ArrayArg, eachValue, matrix, valuesToArray } from \"../helpers\";\nimport mean from '@stdlib/stats/base/mean';\nimport incrwmean from '@stdlib/stats/incr/wmean';\n// import stdev from '@stdlib/stats/base/stdev';\n// import dmeanstdev from '@stdlib/stats/base/dmeanstdev';\n\n// export function average(...args: CellsAndRanges) {\n// \tconst data = valuesToArray(args) as number[];\n// \treturn mean(data.length, data, 1);\n// }\n\nexport function average(...args: ArrayArg) {\n\tlet sum = 0; let cnt = 0\n\teachValue(args, v => {\n\t\tif (v != null && !isNaN(v as number)) {\n\t\t\tsum += (v as number) || 0\n\t\t\t++cnt;\n\t\t}\n\t});\n\treturn sum / cnt;\n}\n\nexport function average_weighted (values: ArrayArg<number>, weights: ArrayArg<number>) {\n\tconst acumulator = incrwmean();\n\tconst x = matrix<number>(values);\n\tconst w = matrix<number>(weights);\n\tfor (let r = 0; r < x.length; r++) {\n\t\tfor (let c = 0; c < x[r].length; c++) {\n\t\t\tacumulator(x[r][c], (w[r] ? w[r][c] : 1) ?? 1);\n\t\t}\t\n\t}\n\treturn acumulator();\n}\n\nexport function avedev(...args: ArrayArg<number>) {\n\tconst data = valuesToArray(args) as number[];\n\tconst m = mean(data.length, data, 1);\n\treturn data.reduce((res, v) => res + Math.abs(v - m), 0) / data.length;\n}\n\nexport function min(...args: ArrayArg) {\n\tlet min = Infinity;\n\teachValue(args, v => min = Math.min(min, v as number));\n\treturn min;\n}\n\nexport function max(...args: ArrayArg) {\n\tlet max = -Infinity;\n\teachValue(args, v => max = Math.max(max, v as number));\n\treturn max;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"text.js","sourceRoot":"","sources":["../../../src/calculations/functions/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAY,SAAS,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,UAAU,IAAI,CAAC,CAAU,EAAE,MAAe;IAC/C,IAAI,MAAM;QAAE,CAAC,GAAG,OAAO,CAAC,kBAAkB,CACzC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAC9B,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,GAAG,CAAC,EACpC,KAAK,CACL,CAAC,CAAW,CAAC,CAAC;IACf,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AACtC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,IAAI,CAAC,CAAS,EAAE,KAAc;IAC7C,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAClC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,KAAK,CAAC,CAAS,EAAE,KAAc;IAC9C,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAClC,OAAO,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,CAAS,EAAE,KAAa,EAAE,KAAa;IAC1D,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAClC,OAAO,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,GAAG,IAAc;IACvC,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,SAAS,CAAC,IAAI,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IACrE,OAAO,GAAG,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"text.js","sourceRoot":"","sources":["../../../src/calculations/functions/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAY,SAAS,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,UAAU,IAAI,CAAC,CAAU,EAAE,MAAe;IAC/C,IAAI,MAAM;QAAE,CAAC,GAAG,OAAO,CAAC,kBAAkB,CACzC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAC9B,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,GAAG,CAAC,EACpC,KAAK,CACL,CAAC,CAAW,CAAC,CAAC;IACf,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AACtC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,IAAI,CAAC,CAAS,EAAE,KAAc;IAC7C,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAClC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,KAAK,CAAC,CAAS,EAAE,KAAc;IAC9C,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAClC,OAAO,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,CAAS,EAAE,KAAa,EAAE,KAAa;IAC1D,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAClC,OAAO,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,GAAG,IAAc;IACvC,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,SAAS,CAAC,IAAI,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IACrE,OAAO,GAAG,CAAC;AACZ,CAAC","sourcesContent":["import { numbers } from \"@omegagrid/core\";\nimport { ArrayArg, eachValue } from \"../helpers\";\n\nexport function text(v: unknown, format?: string) {\n\tif (format) v = numbers.getNumberFormatter(\n\t\tthis.cell.model.options.locale,\n\t\tnumbers.fixNumberFormat(format, 'd'),\n\t\tfalse\n\t)(v as number);\n\treturn v == null ? '' : v.toString();\n}\n\n/**\n * Returns the leftmost characters from a text value.\n * \n * @link https://support.microsoft.com/en-us/office/left-leftb-functions-9203d2d2-7960-479b-84c6-1ea52b99640c\n * @link https://support.google.com/docs/answer/3094079\n * @param v string\n * @param count number\n * @returns string\n */\nexport function left(v: string, count?: number) {\n\tv = v == null ? '' : v.toString();\n\treturn v.substring(0, count);\n}\n\n/**\n * Returns the rightmost characters from a text value.\n * \n * @link https://support.microsoft.com/en-us/office/right-rightb-functions-240267ee-9afa-4639-a02b-f19e1786cf2f\n * @link https://support.google.com/docs/answer/3094087\n * @param v string\n * @param count number\n * @returns string\n */\nexport function right(v: string, count?: number) {\n\tv = v == null ? '' : v.toString();\n\treturn v.substring(Math.max(0, v.length - count), v.length);\n}\n\nexport function mid(v: string, start: number, count: number) {\n\tv = v == null ? '' : v.toString();\n\treturn v.substring(start, start + count);\n}\n\nexport function concat(...args: ArrayArg) {\n\tlet res = '';\n\teachValue(args, (v: string) => res += v == null ? '' : v.toString());\n\treturn res;\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/calculations/helpers.ts"],"names":[],"mappings":"AAQA,MAAM,UAAU,eAAe,CAAC,GAAmB;IAClD,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,MAAM,CAAI,KAAa;IACtC,IAAI,MAAM,GAAY,KAAK,CAAC;IAC5B,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/C,CAAC;IACD,OAAO,MAAW,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,MAAM,CAAI,KAAa;IACtC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAc,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,SAAS,CACxB,MAAc,EACd,QAAuE,EACvE,CAAU,EACV,CAAU;IAEV,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC,CAAW,EAAE,QAAQ,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK;gBACnG,OAAO,KAAK,CAAC;QACf,CAAC;IACF,CAAC;SAAM,CAAC;QACP,OAAO,QAAQ,CAAC,MAAW,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACpC,CAAC;AACF,CAAC;AAED,MAAM,UAAU,aAAa,CAAI,MAAc;IAC9C,MAAM,GAAG,GAAQ,EAAE,CAAC;IACpB,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACpC,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,MAAM,cAAc,GAAG,IAAI,GAAG,CAAS,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC;AACjE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/calculations/helpers.ts"],"names":[],"mappings":"AAQA,MAAM,UAAU,eAAe,CAAC,GAAmB;IAClD,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,MAAM,CAAI,KAAa;IACtC,IAAI,MAAM,GAAY,KAAK,CAAC;IAC5B,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/C,CAAC;IACD,OAAO,MAAW,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,MAAM,CAAI,KAAa;IACtC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAc,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,SAAS,CACxB,MAAc,EACd,QAAuE,EACvE,CAAU,EACV,CAAU;IAEV,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC,CAAW,EAAE,QAAQ,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK;gBACnG,OAAO,KAAK,CAAC;QACf,CAAC;IACF,CAAC;SAAM,CAAC;QACP,OAAO,QAAQ,CAAC,MAAW,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACpC,CAAC;AACF,CAAC;AAED,MAAM,UAAU,aAAa,CAAI,MAAc;IAC9C,MAAM,GAAG,GAAQ,EAAE,CAAC;IACpB,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACpC,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,MAAM,cAAc,GAAG,IAAI,GAAG,CAAS,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC;AACjE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC","sourcesContent":["import { Matrix } from \"@omegagrid/core\";\nimport { FormulaContext } from \".\";\n\nexport type Value = number|string|boolean|null;\nexport type ArrayArg<T = Value> = Matrix<T>|Matrix<T>[];\nexport type Arg<T = Value> = T|ArrayArg<T>;\nexport type DateArg = number|string|Date;\n\nexport function getFormulaCells(ctx: FormulaContext) {\n\treturn ctx.formula.cells.map(item => ctx.cell.model.getCellByRange(item[1]));\n}\n\nexport function scalar<T>(value: Arg<T>): T {\n\tlet result: unknown = value;\n\twhile (Array.isArray(result)) {\n\t\tresult = result.length > 0 ? result[0] : null;\n\t}\n\treturn result as T;\n}\n\nexport function matrix<T>(value: Arg<T>): Matrix<T> {\n\treturn (Array.isArray(value) ? value : [[value]]) as Matrix<T>;\n}\n\nexport function eachValue<T>(\n\tvalues: Arg<T>, \n\tcallback: (value: T, r: number, c: number) => unknown|undefined|boolean,\n\tr?: number,\n\tc?: number\n): unknown|undefined|boolean {\n\tif (Array.isArray(values)) {\n\t\tfor (let i = 0; i < values.length; i++) {\n\t\t\tif (eachValue(values[i] as Arg<T>, callback, r == null ? i : r, r == null ? undefined : i) === false)\n\t\t\t\treturn false;\n\t\t}\n\t} else {\n\t\treturn callback(values as T, r, c);\n\t}\n}\n\nexport function valuesToArray<T>(values: Arg<T>) {\n\tconst arr: T[] = [];\n\teachValue(values, v => arr.push(v));\n\treturn arr;\n}\n\nconst arrayFunctions = new Set<string>(['SUMPRODUCT', 'FILTER']);\nexport const isArrayFunction = (name: string) => arrayFunctions.has(name);\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/calculations/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/calculations/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC","sourcesContent":["export * from './formula';\nexport * from './context';\nexport * from './autofill';\nexport * from './tokenization';\nexport * from './operators';\nexport * as functions from './functions';"]}
@@ -1 +1 @@
1
- {"version":3,"file":"operators.js","sourceRoot":"","sources":["../../src/calculations/operators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operators.js","sourceRoot":"","sources":["../../src/calculations/operators.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n\nimport { Matrix, Scalar } from \"@omegagrid/core\";\nimport { scalarCompare } from \"./conditions\";\n\nexport type ArythmeticOperator = '*'|'/'|'+'|'-';\nexport type LogicalOperataor = '='|'>'|'<'|'>='|'<=';\nexport type Operator = ArythmeticOperator | LogicalOperataor;\n\n/**\n * [javascript operator, precedence, associativity]\n */\nexport type OperatorSpec = [string, number, number];\n\n/**\n * Operator precedence and associativity\n * Map<operator_token, [operator, precedence, associativity]>\n */\nexport const operatorMap = new Map<Operator, OperatorSpec>([\n\t['=', ['==', 1, 0]],\n\t['>', ['>', 1, 0]],\n\t['<', ['<', 1, 0]],\n\t['>=', ['>=', 1, 0]],\n\t['<=', ['<=', 1, 0]],\n\t['+', ['+', 2, 0]],\n\t['-', ['-', 2, 0]],\n\t['*', ['*', 3, 0]],\n\t['/', ['/', 3, 0]],\n]);\n\nexport const isLogicalOperator = (o: string): o is LogicalOperataor => ['=', '>', '<', '>=', '<='].includes(o);\nexport const isArythmeticOperator = (o: string): o is ArythmeticOperator => ['+', '-', '*', '/'].includes(o);\nexport const isOperator = (o: string): o is Operator => isArythmeticOperator(o) || isLogicalOperator(o);\n\nexport function scalarOperation<T = number>(s1: Scalar<T>, s2: Scalar<T>, operator: Operator) : Scalar {\n\tswitch (operator) {\n\t\tcase '+': return (s1 as number) + (s2 as number);\n\t\tcase '-': return (s1 as number) - (s2 as number);\n\t\tcase '*': return (s1 as number) * (s2 as number);\n\t\tcase '/': return (s1 as number) / (s2 as number);\n\t\tcase '=': return scalarCompare(s1, s2) == 0;\n\t\tcase '>': return scalarCompare(s1, s2) > 0;\n\t\tcase '<': return scalarCompare(s1, s2) < 0;\n\t\tcase '>=': return scalarCompare(s1, s2) >= 0;\n\t\tcase '<=': return scalarCompare(s1, s2) <= 0;\n\t\tdefault: throw new Error(`Invalid operator: ${operator}`);\n\t}\n}\n\nexport function matrixOperation<T>(m1: Matrix<T>, m2: Matrix<T>, operator: Operator) : Matrix<T> {\n\tconst a1 = Array.isArray(m1);\n\tconst a2 = Array.isArray(m2);\n\tif (!a1 && !a2) {\n\t\treturn [[scalarOperation(m1 as Scalar<number>, m2 as Scalar<number>, operator) as Scalar<T>]];\n\t}\n\n\tconst r = Math.max(a1 ? m1.length : 0, a2 ? m2.length : 0);\n\tconst c = Math.max(a1 ? m1[0].length : 0, a2 ? m2[0].length : 0);\n\tconst result = [];\n\t\n\tfor (let i = 0; i < r; i++) {\n\t\tconst row: Scalar<T>[] = [];\n\t\tfor (let j = 0; j < c; j++) {\n\t\t\tconst v1 = a1 ? m1[i]?.[j] : m1;\n\t\t\tconst v2 = a2 ? m2[i]?.[j] : m2;\n\t\t\tconst v = v1 == null && v2 == null ? null\n\t\t\t\t: scalarOperation(v1 as Scalar<number>, v2 as Scalar<number>, operator) as Scalar<T>;\n\t\t\trow.push(v);\n\t\t}\n\t\tresult.push(row);\n\t}\n\n\treturn result;\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"tokenization.js","sourceRoot":"","sources":["../../src/calculations/tokenization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tokenization.js","sourceRoot":"","sources":["../../src/calculations/tokenization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE5D,MAAM,CAAN,IAAY,SAkBX;AAlBD,WAAY,SAAS;IACpB,6CAAM,CAAA;IACN,+CAAO,CAAA;IACP,6CAAM,CAAA;IACN,uDAAW,CAAA;IACX,iDAAQ,CAAA;IACR,mEAAiB,CAAA;IACjB,uDAAW,CAAA;IACX,yDAAY,CAAA;IACZ,iDAAQ,CAAA;IACR,yCAAI,CAAA;IACJ,kDAAQ,CAAA;IACR,4CAAK,CAAA;IACL,4CAAK,CAAA;IACL,sDAAU,CAAA;IACV,8DAAc,CAAA;IACd,gDAAO,CAAA;IACP,gDAAO,CAAA;AACR,CAAC,EAlBW,SAAS,KAAT,SAAS,QAkBpB;AAID,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAe,EAAE,EAAE;IAC5C,OAAO,IAAI,KAAK,SAAS,CAAC,MAAM,IAAI,IAAI,KAAK,SAAS,CAAC,OAAO,IAAI,IAAI,KAAK,SAAS,CAAC,MAAM,IAAI,IAAI,KAAK,SAAS,CAAC,IAAI,IAAI,IAAI,KAAK,SAAS,CAAC,QAAQ,IAAI,IAAI,KAAK,SAAS,CAAC,KAAK,CAAC;AACnL,CAAC,CAAA;AAED,MAAM;AACN,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC;AAEnE,cAAc;AACd,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAa,EAAE,EAAE;IACvC,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAC5B,OAAO,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,OAAO,CAAC;AAC9C,CAAC,CAAA;AAED,gCAAgC;AAChC,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,EAAE,CACxC,CAAC,IAAI,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC;IAC1B,CAAC,IAAI,IAAI,EAAE,IAAI,IAAI,IAAI,GAAG,CAAC;IAC3B,CAAC,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,CAAC,CAAC;AAW9B,MAAM,4BAA4B,GAAuB;IACxD,YAAY,EAAE,GAAG;IACjB,WAAW,EAAE,GAAG;IAChB,UAAU,EAAE,IAAI;IAChB,iBAAiB,EAAE,GAAG;CACtB,CAAA;AAED,MAAM,OAAO,SAAS;IAGrB,YAAY,OAAsC;QACjD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,4BAA4B,EAAE,OAAO,CAAC,CAAC;IACrE,CAAC;IAED,QAAQ,CAAC,OAAe;QACvB,MAAM,MAAM,GAAY,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;QAE3B,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,IAAY,CAAC;QACjB,IAAI,IAAY,CAAC;QACjB,IAAI,KAAK,GAAG,EAAE,CAAC;QACf,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,IAAe,CAAC;QACpB,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,SAA8B,CAAC;QAEnC,OAAO,MAAM,GAAG,GAAG,EAAE,CAAC;YACrB,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC9B,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAE1B,IAAI,IAAI,IAAI,GAAG,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;gBAChC,EAAE,MAAM,CAAC;YACV,CAAC;iBAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,eAAe;gBACf,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;gBACrC,EAAE,MAAM,CAAC;gBACT,OAAO,MAAM,GAAG,GAAG,EAAE,CAAC;oBACrB,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAC9B,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;oBAC1B,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;wBACpB,KAAK,IAAI,IAAI,CAAC;wBACd,EAAE,MAAM,CAAC;oBACV,CAAC;yBAAM,IAAI,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;wBAC/C,KAAK,IAAI,GAAG,CAAC;wBACb,EAAE,MAAM,CAAC;oBACV,CAAC;yBAAM,CAAC;wBACP,MAAM;oBACP,CAAC;gBACF,CAAC;gBACD,QAAQ,GAAG,KAAK,CAAC;gBACjB,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YACxC,CAAC;iBAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;gBAC1C,sCAAsC;gBACtC,KAAK,GAAG,IAAI,CAAC;gBACb,IAAI,GAAG,IAAI,CAAC;gBACZ,EAAE,MAAM,CAAC;gBACT,GAAG,CAAC;oBACH,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAC9B,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;oBAC1B,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;wBACtF,IAAI,IAAI,IAAI,GAAG;4BAAE,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC;6BACtC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,IAAI;4BAAE,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC;wBAC3E,KAAK,IAAI,IAAI,CAAC;wBACd,EAAE,MAAM,CAAC;wBACT,IAAI,MAAM,IAAI,GAAG;4BAAE,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;oBACrE,CAAC;yBAAM,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;wBACxB,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;wBACvD,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;wBAC3C,EAAE,MAAM,CAAC;wBACT,MAAM;oBACP,CAAC;yBAAM,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;wBACzB,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;wBACtC,KAAK,GAAG,EAAE,CAAC;wBACX,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;wBAC1C,OAAO,GAAG,IAAI,CAAC;wBACf,EAAE,MAAM,CAAC;oBACV,CAAC;yBAAM,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;wBACxB,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC;wBACvB,KAAK,IAAI,IAAI,CAAC;wBACd,EAAE,MAAM,CAAC;oBACV,CAAC;yBAAM,IAAI,OAAO,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;wBACnC,KAAK,IAAI,IAAI,CAAC;wBACd,EAAE,MAAM,CAAC;oBACV,CAAC;yBAAM,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;wBACxB,IAAI,KAAK,KAAK,EAAE;4BAAE,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;wBACxD,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;wBAC9C,OAAO,GAAG,KAAK,CAAC;wBAChB,KAAK,GAAG,EAAE,CAAC;wBACX,EAAE,MAAM,CAAC;wBACT,MAAM;oBACP,CAAC;yBAAM,CAAC;wBACP,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;wBACvF,MAAM;oBACP,CAAC;gBACF,CAAC,QAAQ,MAAM,GAAG,GAAG,EAAC;YACvB,CAAC;iBAAM,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7B,4CAA4C;gBAC5C,IACC,IAAI,KAAK,GAAG;oBACZ,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAC3C,SAAS,IAAI,IAAI;uBACd,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG;uBACnB,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;uBAC/B,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,iBAAiB,CAC9C,EACA,CAAC;oBACF,QAAQ,GAAG,IAAI,CAAC;gBACjB,CAAC;qBAAM,CAAC;oBACP,KAAK,GAAG,IAAI,CAAC;oBACb,OAAO,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;wBACtD,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;oBACnC,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC1C,CAAC;gBACD,EAAE,MAAM,CAAC;YACV,CAAC;iBAAM,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;gBACzB,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;gBAC3C,EAAE,MAAM,CAAC;YACV,CAAC;iBAAM,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;gBACzB,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;gBAC5C,EAAE,MAAM,CAAC;YACV,CAAC;iBAAM,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAC1B,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;gBAC1C,OAAO,GAAG,IAAI,CAAC;gBACf,EAAE,MAAM,CAAC;YACV,CAAC;iBAAM,IAAI,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBACpD,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,iBAAiB,CAAC,CAAC,CAAC;gBACjD,EAAE,MAAM,CAAC;YACV,CAAC;iBAAM,IAAI,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;gBAC9C,MAAM,GAAG,KAAK,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;gBAC3C,KAAK,GAAG,EAAE,CAAC;gBACX,OAAO,EAAE,MAAM,GAAG,GAAG,EAAE,CAAC;oBACvB,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAC9B,IAAI,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;wBACvC,MAAM,GAAG,IAAI,CAAC;wBACd,EAAE,MAAM,CAAC;wBACT,MAAM;oBACP,CAAC;oBACD,KAAK,IAAI,IAAI,CAAC;gBACf,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;gBACvC,IAAI,MAAM;oBAAE,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;YAC5E,CAAC;iBAAM,CAAC;gBACP,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;gBACvC,EAAE,MAAM,CAAC;YACV,CAAC;YAED,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACvC,CAAC;QAED,yEAAyE;QACzE,OAAO,MAAM,CAAC;IACf,CAAC;CACD","sourcesContent":["import { isLogicalOperator, isOperator } from \"./operators\";\n\nexport enum TokenType {\n\tNumber,\n\tBoolean,\n\tString,\n\tStringQuote,\n\tFunction,\n\tArgumentSeparator,\n\tOpenBracket,\n\tCloseBracket,\n\tOperator,\n\tCell,\n\tVariable,\n\tRange,\n\tSheet,\n\tSheetQuote,\n\tSheetSeparator,\n\tUnknown,\n\tOperand\n}\n\nexport type Token = [string, TokenType];\n\nexport const isOperand = (type: TokenType) => {\n\treturn type === TokenType.Number || type === TokenType.Boolean || type === TokenType.String || type === TokenType.Cell || type === TokenType.Variable || type === TokenType.Range;\n}\n\n// 0-9\nexport const isNumber = (code: number) => code >= 48 && code <= 57;\n\n// true, false\nexport const isBool = (value: string) => {\n\tvalue = value.toLowerCase();\n\treturn value === 'true' || value === 'false';\n}\n\n// A-Z, a-z + some unicode chars\nexport const isLetter = (code: number) => \n\t(code >= 65 && code <= 90) || \n\t(code >= 97 && code <= 122) ||\n\t(code >= 192 && code <= 687);\n\n// const isSpace = (char: string) => char === ' ' || char === '\\t' || char === '\\n';\n\nexport type TokenizationOptions = {\n\tdecimalPoint: string,\n\tstringQuote: string,\n\tsheetQuote: string\n\targumentSeparator: string,\n}\n\nconst DEFAULT_TOKENIZATION_OPTIONS: TokenizationOptions ={\n\tdecimalPoint: '.',\n\tstringQuote: '\"',\n\tsheetQuote: '\\'',\n\targumentSeparator: ','\n}\n\nexport class Tokenizer {\n\tpublic readonly options: TokenizationOptions;\n\n\tconstructor(options?: Partial<TokenizationOptions>) {\n\t\tthis.options = Object.assign(DEFAULT_TOKENIZATION_OPTIONS, options);\n\t}\n\n\ttokenize(formula: string) {\n\t\tconst tokens: Token[] = [];\n\t\tconst len = formula.length;\n\t\n\t\tlet offset = 0;\n\t\tlet char: string;\n\t\tlet code: number;\n\t\tlet token = '';\n\t\tlet isSheet = false;\n\t\tlet type: TokenType;\n\t\tlet closed = false;\n\t\tlet negative = false;\n\t\tlet lastToken: [string, TokenType];\n\t\n\t\twhile (offset < len) {\n\t\t\tchar = formula.charAt(offset);\n\t\t\tcode = char.charCodeAt(0);\n\t\t\t\n\t\t\tif (char == '=' && offset == 0) {\n\t\t\t\t++offset;\n\t\t\t} else if (isNumber(code)) {\n\t\t\t\t// number token\n\t\t\t\ttoken = (negative ? '-' : '') + char;\n\t\t\t\t++offset;\n\t\t\t\twhile (offset < len) {\n\t\t\t\t\tchar = formula.charAt(offset);\n\t\t\t\t\tcode = char.charCodeAt(0);\n\t\t\t\t\tif (isNumber(code)) {\n\t\t\t\t\t\ttoken += char;\n\t\t\t\t\t\t++offset;\n\t\t\t\t\t} else if (char === this.options.decimalPoint) {\n\t\t\t\t\t\ttoken += '.';\n\t\t\t\t\t\t++offset;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tnegative = false;\n\t\t\t\ttokens.push([token, TokenType.Number]);\n\t\t\t} else if (isLetter(code) || char == '$') {\n\t\t\t\t// cell/range/variable/function token \n\t\t\t\ttoken = char;\n\t\t\t\ttype = null;\n\t\t\t\t++offset;\n\t\t\t\tdo {\n\t\t\t\t\tchar = formula.charAt(offset);\n\t\t\t\t\tcode = char.charCodeAt(0);\n\t\t\t\t\tif (isLetter(code) || isNumber(code) || char === '.' || char === '$' || char === '_') {\n\t\t\t\t\t\tif (char == '_') type = TokenType.Variable;\n\t\t\t\t\t\telse if (isNumber(code) && !isSheet && type == null) type = TokenType.Cell;\n\t\t\t\t\t\ttoken += char;\n\t\t\t\t\t\t++offset;\n\t\t\t\t\t\tif (offset == len) tokens.push([token, type || TokenType.Variable]);\n\t\t\t\t\t} else if (char == '(') {\n\t\t\t\t\t\ttokens.push([token.toUpperCase(), TokenType.Function]);\n\t\t\t\t\t\ttokens.push([char, TokenType.OpenBracket]);\n\t\t\t\t\t\t++offset;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t} else if (char == '\\'') {\n\t\t\t\t\t\ttokens.push([token, TokenType.Sheet]);\n\t\t\t\t\t\ttoken = '';\n\t\t\t\t\t\ttokens.push([char, TokenType.SheetQuote]);\n\t\t\t\t\t\tisSheet = true;\n\t\t\t\t\t\t++offset;\n\t\t\t\t\t} else if (char == ':') {\n\t\t\t\t\t\ttype = TokenType.Range;\n\t\t\t\t\t\ttoken += char;\n\t\t\t\t\t\t++offset;\n\t\t\t\t\t} else if (isSheet && char == ' ') {\n\t\t\t\t\t\ttoken += char;\n\t\t\t\t\t\t++offset;\n\t\t\t\t\t} else if (char == '!') {\n\t\t\t\t\t\tif (token !== '') tokens.push([token, TokenType.Sheet]);\n\t\t\t\t\t\ttokens.push([char, TokenType.SheetSeparator]);\n\t\t\t\t\t\tisSheet = false;\n\t\t\t\t\t\ttoken = '';\n\t\t\t\t\t\t++offset;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttokens.push([token, type || (isBool(token) ? TokenType.Boolean : TokenType.Variable)]);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t} while (offset < len)\n\t\t\t} else if (isOperator(char)) {\n\t\t\t\t// check if '-' is operator or negative sign\n\t\t\t\tif (\n\t\t\t\t\tchar === '-' && \n\t\t\t\t\tisNumber(formula.charCodeAt(offset + 1)) && (\n\t\t\t\t\t\tlastToken == null\n\t\t\t\t\t\t|| lastToken[0] == '('\n\t\t\t\t\t\t|| isLogicalOperator(lastToken[0])\n\t\t\t\t\t\t|| lastToken[1] == TokenType.ArgumentSeparator\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\tnegative = true;\n\t\t\t\t} else {\n\t\t\t\t\ttoken = char;\n\t\t\t\t\twhile (isLogicalOperator(formula.charAt(offset + 1))) {\n\t\t\t\t\t\ttoken += formula.charAt(++offset);\n\t\t\t\t\t}\n\t\t\t\t\ttokens.push([token, TokenType.Operator]);\n\t\t\t\t}\n\t\t\t\t++offset;\n\t\t\t} else if (char === '(') {\n\t\t\t\ttokens.push([char, TokenType.OpenBracket]);\n\t\t\t\t++offset;\n\t\t\t} else if (char === ')') {\n\t\t\t\ttokens.push([char, TokenType.CloseBracket]);\n\t\t\t\t++offset;\n\t\t\t} else if (char === '\\'') {\n\t\t\t\ttokens.push([char, TokenType.SheetQuote]);\n\t\t\t\tisSheet = true;\n\t\t\t\t++offset;\n\t\t\t} else if (char === this.options.argumentSeparator) {\n\t\t\t\ttokens.push([char, TokenType.ArgumentSeparator]);\n\t\t\t\t++offset;\n\t\t\t} else if (char === this.options.stringQuote) {\n\t\t\t\tclosed = false;\n\t\t\t\ttokens.push([char, TokenType.StringQuote]);\n\t\t\t\ttoken = '';\n\t\t\t\twhile (++offset < len) {\n\t\t\t\t\tchar = formula.charAt(offset);\n\t\t\t\t\tif (char === this.options.stringQuote) {\n\t\t\t\t\t\tclosed = true;\n\t\t\t\t\t\t++offset;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\ttoken += char;\n\t\t\t\t}\n\t\t\t\ttokens.push([token, TokenType.String]);\n\t\t\t\tif (closed) tokens.push([this.options.stringQuote, TokenType.StringQuote]);\n\t\t\t} else {\n\t\t\t\ttokens.push([char, TokenType.Unknown]);\n\t\t\t\t++offset;\n\t\t\t}\n\n\t\t\tlastToken = tokens[tokens.length - 1];\n\t\t}\n\n\t\t//if (token && token.length > 0) tokens.push([token, TokenType.Unknown]);\n\t\treturn tokens;\n\t}\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC","sourcesContent":["export * from './range';"]}