fix: highlight appropriate navItem based on active sidebar item (#6310)

* fix: highlight appropriate navItem based on active sidebar item

* fix: try using location.pathname

* fix: remote console.log

* fix: include category generated indices in globalData

* Add test

* fix snap

Co-authored-by: Joshua Chen <sidachen2003@gmail.com>
This commit is contained in:
Tapan Chudasama 2022-01-16 11:11:40 +05:30 committed by GitHub
parent 6e75d035bb
commit 3e5944ef1f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 73 additions and 9 deletions

View file

@ -9,7 +9,11 @@ import {mapValues} from 'lodash';
import {normalizeUrl} from '@docusaurus/utils';
import type {Sidebars} from './sidebars/types';
import {createSidebarsUtils} from './sidebars/utils';
import type {DocMetadata, LoadedVersion} from './types';
import type {
CategoryGeneratedIndexMetadata,
DocMetadata,
LoadedVersion,
} from './types';
import type {
GlobalVersion,
GlobalSidebar,
@ -24,6 +28,16 @@ export function toGlobalDataDoc(doc: DocMetadata): GlobalDoc {
};
}
export function toGlobalDataGeneratedIndex(
doc: CategoryGeneratedIndexMetadata,
): GlobalDoc {
return {
id: doc.slug,
path: doc.permalink,
sidebar: doc.sidebar,
};
}
export function toGlobalSidebars(
sidebars: Sidebars,
version: LoadedVersion,
@ -56,7 +70,9 @@ export function toGlobalDataVersion(version: LoadedVersion): GlobalVersion {
isLast: version.isLast,
path: version.versionPath,
mainDocId: version.mainDocId,
docs: version.docs.map(toGlobalDataDoc),
docs: version.docs
.map(toGlobalDataDoc)
.concat(version.categoryGeneratedIndices.map(toGlobalDataGeneratedIndex)),
sidebars: toGlobalSidebars(version.sidebars, version),
};
}