Implementation
List<String> get basePath {
final path = <String>[];
Context? context = this;
while (context != null && !context.isBase) {
final key = context.key;
if (key != null) {
path.add(key);
}
context = context.parent;
}
return path.reversed.toList();
}