UNPKG

hyperformula

Version:

HyperFormula is a JavaScript engine for efficient processing of spreadsheet-like data and formulas

28 lines 969 B
/** * @license * Copyright (c) 2025 Handsoncode. All rights reserved. */ import { AbsoluteCellRange } from "./AbsoluteCellRange.mjs"; import { invalidSimpleCellAddress } from "./Cell.mjs"; import { NamedExpressionDependency } from "./parser/index.mjs"; /** * Converts dependencies from maybe relative addressing to absolute addressing. * * @param deps - list of addresses in R0C0 format * @param baseAddress - base address with regard to which make a convertion */ export const absolutizeDependencies = (deps, baseAddress) => { return deps.map(dep => dep.absolutize(baseAddress)); }; export const filterDependenciesOutOfScope = deps => { return deps.filter(dep => { if (dep instanceof NamedExpressionDependency) { return true; } if (dep instanceof AbsoluteCellRange) { return !(invalidSimpleCellAddress(dep.start) || invalidSimpleCellAddress(dep.end)); } else { return !invalidSimpleCellAddress(dep); } }); };