diff --git a/packages/common/src/discussions/utils.ts b/packages/common/src/discussions/utils.ts index 282e2c0a164..202b03ed0c5 100644 --- a/packages/common/src/discussions/utils.ts +++ b/packages/common/src/discussions/utils.ts @@ -18,7 +18,12 @@ import { IFilter, IHubSearchResult, IPredicate, IQuery } from "../search"; export function isDiscussable( subject: Partial ) { - return !(subject.typeKeywords ?? []).includes(CANNOT_DISCUSS); + let result = false; + if (subject) { + const typeKeywords = subject.typeKeywords || []; + result = !typeKeywords.includes(CANNOT_DISCUSS); + } + return result; } /** diff --git a/packages/common/src/sites/HubSite.ts b/packages/common/src/sites/HubSite.ts index 4c670e2b629..4ba9dba6f67 100644 --- a/packages/common/src/sites/HubSite.ts +++ b/packages/common/src/sites/HubSite.ts @@ -428,11 +428,7 @@ export class HubSite ); const followersGroup = await this.getFollowersGroup(); - setProp( - "_followers.isDiscussable", - isDiscussable(followersGroup || {}), - editor - ); + setProp("_followers.isDiscussable", isDiscussable(followersGroup), editor); editor._discussions = this.entity.features["hub:site:feature:discussions"]; diff --git a/packages/common/test/sites/HubSite.test.ts b/packages/common/test/sites/HubSite.test.ts index 960cdb3df94..d8af0c08727 100644 --- a/packages/common/test/sites/HubSite.test.ts +++ b/packages/common/test/sites/HubSite.test.ts @@ -614,13 +614,13 @@ describe("HubSite Class:", () => { expect(result._followers?.showFollowAction).toBe(true); }); describe("_followers.isDiscussable", () => { - it("set to true by default (when no followers group is returned)", async () => { + it("set to false by default (when no followers group is returned)", async () => { getFollowersGroupSpy = spyOn( chk, "getFollowersGroup" ).and.returnValue(Promise.resolve(null)); const result = await chk.toEditor(); - expect(result._followers?.isDiscussable).toBe(true); + expect(result._followers?.isDiscussable).toBe(false); }); it("set to true when the followers group is discussable", async () => { getFollowersGroupSpy = spyOn(