Skip to content

Commit 7c913d3

Browse files
committed
Let's not create from cache for now, as ul is changed.
1 parent 051222e commit 7c913d3

1 file changed

Lines changed: 7 additions & 81 deletions

File tree

converter/generator/DocBookTransformer.cs

Lines changed: 7 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -136,11 +136,6 @@ private void Transform(string srcFile, string dstFile, Nav nav, string? bannerHt
136136
});
137137
}
138138

139-
140-
string? CachedSiblingsParent;
141-
int CachedSiblingsCurrentIndex;
142-
IHtmlElement? CachedSiblings;
143-
144139
private IHtmlDivElement CreateNavDataDiv(IHtmlDocument document, in Nav nav, string sourceDir)
145140
{
146141
var navDataDiv = document.CreateElement<IHtmlDivElement>();
@@ -172,17 +167,7 @@ private IHtmlDivElement CreateNavDataDiv(IHtmlDocument document, in Nav nav, str
172167

173168
if (files.Siblings is not null)
174169
{
175-
IHtmlElement ul;
176-
177-
if (nav.Files.Parent is string parent && parent == CachedSiblingsParent)
178-
{
179-
ul = CreateSiblingsULFromCache(CachedSiblings!, files.Siblings, nav.Titles);
180-
}
181-
else
182-
{
183-
CachedSiblingsParent = nav.Files.Parent;
184-
CachedSiblings = ul = CreateDataUL("doc-siblings-data", files.Siblings, nav.Titles);
185-
}
170+
var ul = CreateDataUL("doc-siblings-data", files.Siblings, nav.Titles);
186171

187172
navDataDiv.AppendChild(ul);
188173
}
@@ -213,82 +198,23 @@ IHtmlElement CreateDataUL(string id, string[] files, Dictionary<string, string>
213198
{
214199
pathSpan = pathSpan[1..];
215200
isCurrent = true;
216-
CachedSiblingsCurrentIndex = i;
217201
}
218202

219-
if (TryResolveHref(sourceDir, $"../{pathSpan}", out var url, out var _))
203+
if (isCurrent)
220204
{
221-
if (isCurrent)
222-
{
223-
li.ClassName = "disabled";
224-
}
225-
else
226-
{
227-
a.SetAttribute("href", url);
228-
}
229-
230-
a.TextContent = titles.GetAlternateLookup<ReadOnlySpan<char>>()[pathSpan];
205+
li.ClassName = "disabled";
231206
}
232-
233-
li.AppendChild(a);
234-
ul.AppendChild(li);
235-
}
236-
237-
return ul;
238-
}
239-
240-
IHtmlElement CreateSiblingsULFromCache(IHtmlElement ul, string[] files, Dictionary<string, string> titles)
241-
{
242-
document.AdoptNode(ul);
243-
244-
var currentIdx = Array.FindIndex(files, CachedSiblingsCurrentIndex, files.Length - CachedSiblingsCurrentIndex, f => f.StartsWith('*'));
245-
var previousLi = ul.Children[CachedSiblingsCurrentIndex].SelfOrNextElementSibling(li => li.FirstElementChild!.GetAttribute("href").IsEmpty);
246-
247-
Debug.Assert(currentIdx > 0);
248-
Debug.Assert(previousLi is not null);
249-
250-
if (TryResolveHref(sourceDir, $"../{files[currentIdx - 1]}", out var url, out var _))
251-
{
252-
previousLi.FirstElementChild!.SetAttribute("href", url);
253-
}
254-
255-
previousLi.ClassName = null;
256-
257-
var currentLi = previousLi.NextElementSibling!;
258-
currentLi.FirstElementChild!.SetAttribute("href", null);
259-
currentLi.ClassName = "disabled";
260-
261-
if (ul.ChildElementCount < files.Length)
262-
{
263-
var li = document.CreateElement<IHtmlListItemElement>();
264-
var a = document.CreateElement<IHtmlAnchorElement>();
265-
266-
if (TryResolveHref(sourceDir, $"../{files[^1]}", out var endUrl, out var _))
207+
else
267208
{
268-
a.SetAttribute("href", endUrl);
269-
a.TextContent = titles[files[^1]];
209+
a.SetAttribute("href", $"../{pathSpan}");
270210
}
271211

212+
a.TextContent = titles.GetAlternateLookup<ReadOnlySpan<char>>()[pathSpan];
213+
272214
li.AppendChild(a);
273215
ul.AppendChild(li);
274216
}
275-
else if (currentIdx == MaxSiblingNodes / 2 && currentIdx != files.Length - 1 && currentIdx == CachedSiblingsCurrentIndex)
276-
{
277-
var li = (IHtmlElement)ul.RemoveChild(ul.FirstElementChild!);
278-
279-
if (TryResolveHref(sourceDir, $"../{files[^1]}", out var endUrl, out var _)
280-
&& endUrl != ul.LastElementChild!.FirstElementChild!.GetAttribute("href"))
281-
{
282-
var a = li.FirstElementChild!;
283-
284-
a.SetAttribute("href", endUrl);
285-
a.TextContent = titles[files[^1]];
286-
287-
ul.AppendChild(li);
288-
}
289-
}
290217

291-
CachedSiblingsCurrentIndex = currentIdx;
292218
return ul;
293219
}
294220
}

0 commit comments

Comments
 (0)