/// <summary> /// Setups the specified folder: output folder /// </summary> /// <param name="folder">The folder.</param> public override void setup() { // outputpath = "help" + Path.DirectorySeparatorChar; // scriptFlags = docScriptFlags.allowFailedInstructions | docScriptFlags.enableLocalCollection | docScriptFlags.ignoreArgumentValueNull | docScriptFlags.ignoreCompilationFails | docScriptFlags.useDataDictionaryForLocalData; theme = stylePresets.themeSemantics; AddThemeSupportFiles("velestrap", "bootmark.min.js", "include\\", true); AddThemeSupportFiles("velestrap", "*.css", "include\\", false); AddThemeSupportFiles("velestrap", "*.js", "include\\", false); var footer_delivery = AddItem(new deliveryUnitItemFileOutput("compact\\footer.md", templateFieldSubcontent.html_footer, deliveryUnitItemLocationBase.localResource, "Page footer", "Include at end of page")); var renderDirectory = new deliveryUnitDirectoryConstructor(reportElementLevel.documentSet, reportElementLevel.document); // creates directory for documentSets and document Add(renderDirectory); var renderOutput = new deliveryUnitItemSimpleRenderOutput(new builderForMarkdown(), reportOutputFormatName.textMdFile, renderDirectory.levels); renderOutput.levelOfNewFile = reportElementLevel.page; renderOutput.levelOfNewPage = reportElementLevel.none; renderOutput.levels.AddMulti(reportElementLevel.documentSet, reportElementLevel.document, reportElementLevel.servicepage, reportElementLevel.page, reportElementLevel.block); Add(renderOutput); var renderOutputTemplate = new deliveryUnitItemContentTemplated("compact\\index.html", renderOutput, reportOutputFormatName.textHtml, renderDirectory.levels); renderOutputTemplate.filenameSufix = ""; renderOutputTemplate.levels.AddMulti(reportElementLevel.documentSet, reportElementLevel.document, reportElementLevel.servicepage, reportElementLevel.page); Add(renderOutputTemplate); //var indexdeliver = AddItem(new deliveryUnitItemFileOutput("veles_report\\index.md", "index.html", "Report home", "Introduction page of the report", renderOutputTemplate)); AddReportIncludeFiles("docs", renderOutputTemplate, "*.md", false); /* * var logOutA = AddItem(new deliveryUnitItemLogOutput(imbSCI.Cores.enums.logOutputSpecial.reportContext, "logs\\reporting.md", renderOutputTemplate)); * * var logOutB = AddItem(new deliveryUnitItemLogOutput(imbSCI.Cores.enums.logOutputSpecial.systemMainLog, "logs\\system.md", renderOutputTemplate)); * * var logOutC = AddItem(new deliveryUnitItemLogOutput(imbSCI.Cores.enums.logOutputSpecial.aceCommonServices, "logs\\execution.md", renderOutputTemplate)); * * var logOutD = AddItem(new deliveryUnitItemLogOutput(imbSCI.Cores.enums.logOutputSpecial.initialLog, "logs\\init.md", renderOutputTemplate)); */ /* * AddItem(new deliveryUnitItemLogOutput(imbSCI.Cores.enums.logOutputSpecial.devNotes, "logs\\devnotes.md", renderOutputTemplate)); * AddItem(new deliveryUnitItemLogOutput(imbSCI.Cores.enums.logOutputSpecial.aceCommonServices, "logs\\ace_common_services.md", renderOutputTemplate)); * AddItem(new deliveryUnitItemLogOutput(imbSCI.Cores.enums.logOutputSpecial.aceSubsystem, "logs\\ace_subsystem.md", renderOutputTemplate)); * * AddItem(new deliveryUnitItemLogOutput(imbSCI.Cores.enums.logOutputSpecial.analyticEngine, "logs\\analytic_engine.md", renderOutputTemplate)); * AddItem(new deliveryUnitItemLogOutput(imbSCI.Cores.enums.logOutputSpecial.languageEngine, "logs\\language_engine.md", renderOutputTemplate)); * AddItem(new deliveryUnitItemLogOutput(imbSCI.Cores.enums.logOutputSpecial.semanticEngine, "logs\\semantic_engine.md", renderOutputTemplate)); * */ }
/// <summary> /// Adds all files matching the <c>filesearch</c> pattern, inside <c>path</c> /// </summary> /// <param name="path">The path inside <c>reportInclude</c> folder</param> /// <param name="transformator">The transformator - output item that transformes included content</param> /// <param name="filesearch">File search pattern to get the files</param> public void AddReportIncludeFiles(string path, deliveryUnitItemContentTemplated transformator, string filesearch = "*.md", bool copyOriginals = true) { DirectoryInfo reportTheme = Directory.CreateDirectory(folder_includeReport); path = path.ensureStartsWith(folder_includeReport + "\\"); DirectoryInfo reportThemeDoc = Directory.CreateDirectory(path); FileInfo[] docFiles = reportThemeDoc.GetFiles(filesearch); foreach (FileInfo fi in docFiles) { string filepath_short = fi.FullName.removeStartsWith(reportTheme.FullName); string output_filename = fi.Name.removeEndsWith(fi.Extension); string output_dirpath = Path.GetDirectoryName(filepath_short); string originalFileName = output_filename.add(fi.Extension, "."); string title = output_filename.imbTitleCamelOperation(true); string extension = transformator.format.getDefaultExtension(); output_filename = output_filename.add(extension, "."); string __outputpath = output_dirpath.add(output_filename, "\\"); __outputpath = __outputpath.removeStartsWith("\\"); AddItem(new deliveryUnitItemFileOutput(filepath_short, __outputpath, title, "", transformator)).includeSourceFolder = folder_includeReport; if (copyOriginals) { string __origFilePath = output_dirpath.add(originalFileName, "\\").removeStartsWith("\\"); AddItem(new deliveryUnitItemFileOutput(filepath_short, __origFilePath, title, "")).includeSourceFolder = folder_includeReport; } } }
/// <summary> /// Setups this instance. /// </summary> public override void setup() { scriptFlags = docScriptFlags.allowFailedInstructions | docScriptFlags.disableGlobalCollection | docScriptFlags.enableLocalCollection | docScriptFlags.ignoreArgumentValueNull | docScriptFlags.ignoreCompilationFails; theme = stylePresets.themeSemantics; //String cssPath = "".t(templateFieldDeliveryUnit.del_themepath).add("simple\\simple.css", "\\"); //deliveryUnitItemSupportFile standardCss = new deliveryUnitItemSupportFile(cssPath, "include\\"); // copies file and later includes the file //this.Add(standardCss); //this.Add(new deliveryUnitItemSupportFile("".t(templateFieldDeliveryUnit.del_themepath).add("simple\\bootstrap.css", "\\")); AddThemeSupportFile("simple\\simple.css"); AddThemeSupportFile("simple\\bootstrap.css"); //this.AddThemeSupportFile("strap\\strapdown.css"); //this.AddThemeSupportFile("strap\\strapdown.js"); //this.AddThemeSupportFile("strap\\strapdown-topbar.min.js"); AddThemeSupportFiles("strapzeta", "*.css"); AddThemeSupportFile("strapzeta\\bootstrap.min.js"); AddThemeSupportFile("strapzeta\\strapdown.js").linkType = appendLinkType.scriptPostLink; deliveryUnitItemPaletteCSS palletteCss = new deliveryUnitItemPaletteCSS("standard\\standard.css", "include\\"); // templated palette css Add(palletteCss); //this.AddStandardHtmlItems(); this.AddJSPluginSupport(jsPluginEnum.D3); // copies js file this.AddJSPluginSupport(jsPluginEnum.JQuery); // copies jquery var renderDirectory = new deliveryUnitDirectoryConstructor(reportElementLevel.documentSet, reportElementLevel.document); // creates directory for documentSets and document Add(renderDirectory); var renderOutput = new deliveryUnitItemSimpleRenderOutput(new builderForMarkdown(), reportOutputFormatName.textMdFile, renderDirectory.levels); renderOutput.levelOfNewFile = reportElementLevel.page; renderOutput.levelOfNewPage = reportElementLevel.none; renderOutput.levels.AddMultiple(reportElementLevel.documentSet, reportElementLevel.document, reportElementLevel.servicepage, reportElementLevel.page, reportElementLevel.block); Add(renderOutput); var renderOutputTemplate = new deliveryUnitItemContentTemplated("simple\\simple.html", renderOutput, reportOutputFormatName.htmlViaMD, renderDirectory.levels); renderOutputTemplate.filenameSufix = ""; renderOutputTemplate.levels.AddMultiple(reportElementLevel.servicepage, reportElementLevel.page, reportElementLevel.block); Add(renderOutputTemplate); // renderOutput.attachIncludeItem(this.items); //var renderTableOutput = new deliveryUnitItemSimpleRenderOutput(new builderForTableDocument(), reportOutputFormatName.sheetExcel); //renderTableOutput.levels.Add(reportElementLevel.document, reportElementLevel.page, reportElementLevel.block); //this.Add(renderTableOutput); // this.Add(); }
/// <summary> /// Finds the deliveryInstance unit item with template. /// </summary> /// <param name="sourceFilepathNeedle">The source filepath needle.</param> /// <returns></returns> public deliveryUnitItemContentTemplated findDeliveryUnitItemWithTemplate(string sourceFilepathNeedle) { foreach (IDeliveryUnitItem ui in items) { if (ui is deliveryUnitItemContentTemplated) { deliveryUnitItemContentTemplated tui = (deliveryUnitItemContentTemplated)ui; if (tui.name.Contains(sourceFilepathNeedle)) { return(tui); } } } return(null); }