Skip to content

Commit

Permalink
Merge pull request #49911 from nyomanjyotisa/issue-49624
Browse files Browse the repository at this point in the history
Add the workspace name to the title of the workspace chats
  • Loading branch information
mountiny authored Oct 2, 2024
2 parents ee11bc5 + 4c9d4d0 commit 8ca9932
Show file tree
Hide file tree
Showing 4 changed files with 22 additions and 8 deletions.
12 changes: 9 additions & 3 deletions src/libs/ReportUtils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3755,11 +3755,12 @@ function getReportName(
parentReportActionParam?: OnyxInputOrEntry<ReportAction>,
personalDetails?: Partial<PersonalDetailsList>,
invoiceReceiverPolicy?: OnyxEntry<Policy>,
shouldIncludePolicyName = false,
): string {
const reportID = report?.reportID;
const cacheKey = getCacheKey(report);

if (reportID) {
if (reportID && !isUserCreatedPolicyRoom(report) && !isDefaultRoom(report)) {
const reportNameFromCache = reportNameCache.get(cacheKey);

if (reportNameFromCache?.reportName && reportNameFromCache.reportName === report?.reportName) {
Expand Down Expand Up @@ -3873,6 +3874,11 @@ function getReportName(
formattedName = getInvoicesChatName(report, invoiceReceiverPolicy);
}

if (shouldIncludePolicyName && (isUserCreatedPolicyRoom(report) || isDefaultRoom(report))) {
const policyName = getPolicyName(report, true);
formattedName = policyName ? `${policyName}${report?.reportName}` : report?.reportName;
}

if (isArchivedRoom(report, getReportNameValuePairs(report?.reportID))) {
formattedName += ` (${Localize.translateLocal('common.archived')})`;
}
Expand Down Expand Up @@ -3929,8 +3935,8 @@ function getPayeeName(report: OnyxEntry<Report>): string | undefined {
/**
* Get either the policyName or domainName the chat is tied to
*/
function getChatRoomSubtitle(report: OnyxEntry<Report>): string | undefined {
if (isChatThread(report)) {
function getChatRoomSubtitle(report: OnyxEntry<Report>, isTitleIncludePolicyName = false): string | undefined {
if (isChatThread(report) || ((isUserCreatedPolicyRoom(report) || isDefaultRoom(report)) && isTitleIncludePolicyName)) {
return '';
}
if (isSelfDM(report)) {
Expand Down
2 changes: 1 addition & 1 deletion src/libs/SidebarUtils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -487,7 +487,7 @@ function getOptionData({
result.phoneNumber = personalDetail?.phoneNumber ?? '';
}

const reportName = ReportUtils.getReportName(report, policy, undefined, undefined, invoiceReceiverPolicy);
const reportName = ReportUtils.getReportName(report, policy, undefined, undefined, invoiceReceiverPolicy, true);

result.text = reportName;
result.subtitle = subtitle;
Expand Down
14 changes: 11 additions & 3 deletions src/pages/home/HeaderView.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -87,8 +87,8 @@ function HeaderView({report, parentReportAction, reportID, onNavigationMenuButto
const isTaskReport = ReportUtils.isTaskReport(report);
const reportHeaderData = !isTaskReport && !isChatThread && report?.parentReportID ? parentReport : report;
// Use sorted display names for the title for group chats on native small screen widths
const title = ReportUtils.getReportName(reportHeaderData, policy, parentReportAction, personalDetails, invoiceReceiverPolicy);
const subtitle = ReportUtils.getChatRoomSubtitle(reportHeaderData);
const title = ReportUtils.getReportName(reportHeaderData, policy, parentReportAction, personalDetails, invoiceReceiverPolicy, true);
const subtitle = ReportUtils.getChatRoomSubtitle(reportHeaderData, true);
const parentNavigationSubtitleData = ReportUtils.getParentNavigationSubtitle(reportHeaderData);
const reportDescription = ReportUtils.getReportDescriptionText(report);
const policyName = ReportUtils.getPolicyName(report, true);
Expand Down Expand Up @@ -120,7 +120,15 @@ function HeaderView({report, parentReportAction, reportID, onNavigationMenuButto
);

const renderAdditionalText = () => {
if (shouldShowSubtitle() || isPersonalExpenseChat || !policyName || !isEmptyObject(parentNavigationSubtitleData) || isSelfDM) {
if (
shouldShowSubtitle() ||
isPersonalExpenseChat ||
!policyName ||
!isEmptyObject(parentNavigationSubtitleData) ||
isSelfDM ||
ReportUtils.isUserCreatedPolicyRoom(report) ||
ReportUtils.isDefaultRoom(report)
) {
return null;
}
return (
Expand Down
2 changes: 1 addition & 1 deletion tests/unit/SidebarTest.ts
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ describe('Sidebar', () => {
.then(() => {
const hintText = Localize.translateLocal('accessibilityHints.chatUserDisplayNames');
const displayNames = screen.queryAllByLabelText(hintText);
expect(displayNames.at(0)).toHaveTextContent('Report (archived)');
expect(displayNames.at(0)).toHaveTextContent('Vikings Policy • Report (archived)');

const hintMessagePreviewText = Localize.translateLocal('accessibilityHints.lastChatMessagePreview');
const messagePreviewTexts = screen.queryAllByLabelText(hintMessagePreviewText);
Expand Down

0 comments on commit 8ca9932

Please sign in to comment.