diff --git a/src/lib/glossary.ts b/src/lib/glossary.ts index 88d8405..0d64e49 100644 --- a/src/lib/glossary.ts +++ b/src/lib/glossary.ts @@ -510,13 +510,19 @@ export function getGlossarySmartNavigation( ): GlossarySmartNavigation { const currentSlug = slugOfGlossaryEntry(currentEntry); const rawNavigation = currentEntry.data.navigation; - const defaultNavigation = GLOSSARY_NAV_DEFAULTS[familyOf(currentEntry)]; + const defaultNavigation = GLOSSARY_NAV_DEFAULTS[familyOf(currentEntry)] ?? {}; - const navigationSource = rawNavigation ?? { - primaryNext: undefined, - primaryReason: undefined, - paths: defaultNavigation ?? {}, - flows: {}, + const navigationSource = { + primaryNext: rawNavigation?.primaryNext, + primaryReason: rawNavigation?.primaryReason, + paths: { + understand: rawNavigation?.paths?.understand ?? defaultNavigation.understand ?? [], + deepen: rawNavigation?.paths?.deepen ?? defaultNavigation.deepen ?? [], + compare: rawNavigation?.paths?.compare ?? defaultNavigation.compare ?? [], + apply: rawNavigation?.paths?.apply ?? defaultNavigation.apply ?? [], + }, + flows: rawNavigation?.flows ?? {}, + relationWeights: rawNavigation?.relationWeights ?? {}, }; const primaryNext = resolveGlossaryEntriesInSourceOrder(