public Nav() : base( XDocument.Parse(Resources.nav) .Descendants(EpubBook.XHtmlNs + "nav") .SingleOrDefault(a => a.Attribute(EpubBook.EpubNs + "type")?.Value == "toc") .Element(EpubBook.XHtmlNs + "ol") ) { this.NavGuide = new(this.BaseElement.Document); }
public Nav(string content) : base( XDocument.Parse(content) .Descendants(EpubBook.XHtmlNs + "nav") .SingleOrDefault(a => a.Attribute(EpubBook.EpubNs + "type")?.Value == "toc") .Element(EpubBook.XHtmlNs + "ol") ) { var guide = this.BaseElement.Document .Descendants(EpubBook.XHtmlNs + "nav") .SingleOrDefault(a => a.Attribute(EpubBook.EpubNs + "type")?.Value == "landmarks"); if (guide == default) { var contentElement = XElement.Parse(Resources.navGuideCover); contentElement.FirstAttribute.Remove(); contentElement.FirstAttribute.Remove(); var body = this.BaseElement.Document.Descendants(EpubBook.XHtmlNs + "body").First(); body.Add(contentElement); } this.NavGuide = new(this.BaseElement.Document); }