writeHypenRouter function
dynamic
writeHypenRouter(
- String path,
- ResolvedLibraryResult libResolved
)
Implementation
writeHypenRouter(String path, final ResolvedLibraryResult libResolved) async {
try {
final libElement = libResolved.element;
final targets = libElement.topLevelElements
.whereType<FunctionElement>()
.where(
(f) => previewAnnotation.hasAnnotationOf(f),
)
.toList();
var preview = previews.where(
(element) {
return element.path == path;
},
).firstOrNull;
preview?.builders.clear();
if (targets.isEmpty) {
previews.remove(preview);
await writeToFile();
reloader = Timer(
Duration(milliseconds: 300),
() {
server?.stdin.add('R'.codeUnits);
reloader = null;
},
);
return;
}
if (preview == null) {
preview = Preview(path);
previews.add(preview);
}
for (final widget in targets) {
preview.builders.add(widget);
}
await writeToFile();
reloader?.cancel();
reloader = Timer(
Duration(milliseconds: 300),
() {
server?.stdin.add('R'.codeUnits);
reloader = null;
},
);
} catch (e) {
alert(e.toString());
}
}