diff --git a/packages/services/src/Domain/Item/ItemManagerInterface.ts b/packages/services/src/Domain/Item/ItemManagerInterface.ts index a1d90a304..aa2ef6bf3 100644 --- a/packages/services/src/Domain/Item/ItemManagerInterface.ts +++ b/packages/services/src/Domain/Item/ItemManagerInterface.ts @@ -117,6 +117,7 @@ export interface ItemManagerInterface extends AbstractService { getDisplayableTags(): SNTag[] getTagChildren(itemToLookupUuidFor: SNTag): SNTag[] getTagParent(itemToLookupUuidFor: SNTag): SNTag | undefined + getDisplayableTagParent(itemToLookupUuidFor: SNTag): SNTag | undefined isValidTagParent(parentTagToLookUpUuidFor: SNTag, childToLookUpUuidFor: SNTag): boolean isSmartViewTitle(title: string): boolean getDisplayableComponents(): ComponentInterface[] diff --git a/packages/snjs/lib/Services/Items/ItemManager.ts b/packages/snjs/lib/Services/Items/ItemManager.ts index e1c2c5f56..73f072553 100644 --- a/packages/snjs/lib/Services/Items/ItemManager.ts +++ b/packages/snjs/lib/Services/Items/ItemManager.ts @@ -640,6 +640,18 @@ export class ItemManager extends Services.AbstractService implements Services.It return undefined } + getDisplayableTagParent(itemToLookupUuidFor: Models.SNTag): Models.SNTag | undefined { + const tag = this.findItem(itemToLookupUuidFor.uuid) + if (!tag) { + return undefined + } + const parentId = tag.parentId + if (parentId) { + return this.tagDisplayController.items().find((displayableTag) => displayableTag.uuid === parentId) + } + return undefined + } + public getTagPrefixTitle(tag: Models.SNTag): string | undefined { const hierarchy = this.getTagParentChain(tag) diff --git a/packages/web/src/javascripts/Controllers/Navigation/NavigationController.ts b/packages/web/src/javascripts/Controllers/Navigation/NavigationController.ts index 6febb4606..31b2eff79 100644 --- a/packages/web/src/javascripts/Controllers/Navigation/NavigationController.ts +++ b/packages/web/src/javascripts/Controllers/Navigation/NavigationController.ts @@ -472,7 +472,7 @@ export class NavigationController } get rootTags(): SNTag[] { - return this.tags.filter((tag) => !this.items.getTagParent(tag)) + return this.tags.filter((tag) => !this.items.getDisplayableTagParent(tag)) } get tagsCount(): number {