extractDependencies static method
Extracts field dependencies from a JSONLogic or JavaScript expression.
Returns a list of field keys that this calculation depends on. Used to determine when to recalculate.
Implementation
static Set<String> extractDependencies(dynamic calculateConfig) {
final dependencies = <String>{};
if (calculateConfig is Map) {
_extractDependenciesFromMap(calculateConfig, dependencies);
} else if (calculateConfig is String) {
// Extract from JavaScript code (simple regex approach)
final regex = RegExp(r'data\.(\w+)');
final matches = regex.allMatches(calculateConfig);
for (final match in matches) {
dependencies.add(match.group(1)!);
}
}
return dependencies;
}