private TypeScriptDocumentation GenerateTypeScriptDocs(string path, string className = null) { var doc = new TypeScriptDocumentation(); var file = new FileInfo(path); // don't gen JSON documentation for definition files if (!file.FullName.EndsWith(".d.ts")) { var reader = file.OpenText(); doc.TsFilename = file.Name; doc.Generate(reader.ReadToEnd(), className); } return(doc); }
private async Task GenerateTypeScriptDocs(string path) { var dir = new DirectoryInfo(path); Console.WriteLine($"-- Creating Doc Files"); foreach (var file in dir.GetFiles("*.ts")) { // don't gen json documentation for definition files if (!file.FullName.EndsWith(".d.ts")) { var reader = file.OpenText(); var doc = new TypeScriptDocumentation(); doc.TsFilename = file.Name; doc.Generate(await reader.ReadToEndAsync()); var serializer = Newtonsoft.Json.JsonSerializer.Create(); // Create the doc file. FileInfo docFile = new FileInfo(file.FullName.Replace(".ts", ".json")); // Remove it if it exists. try { if (docFile.Exists) { docFile.Delete(); } } catch (Exception) { System.Threading.Thread.Sleep(3000); try { if (docFile.Exists) { docFile.Delete(); } } catch (Exception) { Console.WriteLine($"Could not delete file {docFile.FullName}"); } } using (var tw = docFile.CreateText()) { serializer.Serialize(tw, doc); tw.Close(); } } } }