From 12a2c687f690ea747a80e66812e3efa99130282c Mon Sep 17 00:00:00 2001 From: Chris Bongers Date: Fri, 9 Jan 2026 14:51:13 +0200 Subject: [PATCH 1/2] fix: generic option to add banner --- .../SideBySideEdit/OpportunityEditPanel.tsx | 5 ++++- .../src/components/recruiter/layout/Sidebar.tsx | 4 +++- .../components/layouts/SettingsLayout/index.tsx | 17 ++++++++++++++++- 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/packages/shared/src/components/opportunity/SideBySideEdit/OpportunityEditPanel.tsx b/packages/shared/src/components/opportunity/SideBySideEdit/OpportunityEditPanel.tsx index 6db897e15a..c73709e978 100644 --- a/packages/shared/src/components/opportunity/SideBySideEdit/OpportunityEditPanel.tsx +++ b/packages/shared/src/components/opportunity/SideBySideEdit/OpportunityEditPanel.tsx @@ -9,6 +9,7 @@ import { import { ArrowIcon } from '../../icons'; import { IconSize } from '../../Icon'; import type { Opportunity } from '../../../features/opportunity/types'; +import { settingsUrl, webappUrl } from '../../../lib/constants'; import { RoleInfoSection } from './sections/RoleInfoSection'; import { JobDetailsSection } from './sections/JobDetailsSection'; import { ContentSection } from './sections/ContentSection'; @@ -192,7 +193,9 @@ export function OpportunityEditPanel({ name={recruiter?.name} image={recruiter?.image} subtitle={recruiter?.title} - editUrl="/settings/profile" + editUrl={`${settingsUrl}/profile?redirectTo=${encodeURIComponent( + `${webappUrl}recruiter/${opportunity.id}/edit`, + )}&redirectCopy=${encodeURIComponent('Back to job posting')}`} emptyMessage="No recruiter info added yet" /> diff --git a/packages/shared/src/components/recruiter/layout/Sidebar.tsx b/packages/shared/src/components/recruiter/layout/Sidebar.tsx index baf083275a..bdeb10c84d 100644 --- a/packages/shared/src/components/recruiter/layout/Sidebar.tsx +++ b/packages/shared/src/components/recruiter/layout/Sidebar.tsx @@ -75,7 +75,9 @@ const Footer = () => { variant={ButtonVariant.Tertiary} icon={} size={ButtonSize.XSmall} - href={`${settingsUrl}/profile`} + href={`${settingsUrl}/profile?redirectTo=${encodeURIComponent( + `${webappUrl}recruiter`, + )}&redirectCopy=${encodeURIComponent('Back to recruiter dashboard')}`} tag="a" /> + )}
{isMobile ? ( Date: Fri, 9 Jan 2026 15:22:48 +0200 Subject: [PATCH 2/2] fix: pr feedback --- .../SideBySideEdit/OpportunityEditPanel.tsx | 11 ++++++++--- .../src/components/recruiter/layout/Sidebar.tsx | 11 ++++++++--- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/packages/shared/src/components/opportunity/SideBySideEdit/OpportunityEditPanel.tsx b/packages/shared/src/components/opportunity/SideBySideEdit/OpportunityEditPanel.tsx index c73709e978..ce12db0422 100644 --- a/packages/shared/src/components/opportunity/SideBySideEdit/OpportunityEditPanel.tsx +++ b/packages/shared/src/components/opportunity/SideBySideEdit/OpportunityEditPanel.tsx @@ -10,6 +10,7 @@ import { ArrowIcon } from '../../icons'; import { IconSize } from '../../Icon'; import type { Opportunity } from '../../../features/opportunity/types'; import { settingsUrl, webappUrl } from '../../../lib/constants'; +import { getPathnameWithQuery } from '../../../lib/links'; import { RoleInfoSection } from './sections/RoleInfoSection'; import { JobDetailsSection } from './sections/JobDetailsSection'; import { ContentSection } from './sections/ContentSection'; @@ -193,9 +194,13 @@ export function OpportunityEditPanel({ name={recruiter?.name} image={recruiter?.image} subtitle={recruiter?.title} - editUrl={`${settingsUrl}/profile?redirectTo=${encodeURIComponent( - `${webappUrl}recruiter/${opportunity.id}/edit`, - )}&redirectCopy=${encodeURIComponent('Back to job posting')}`} + editUrl={getPathnameWithQuery( + `${settingsUrl}/profile`, + new URLSearchParams({ + redirectTo: `${webappUrl}recruiter/${opportunity.id}/edit`, + redirectCopy: 'Back to job posting', + }), + )} emptyMessage="No recruiter info added yet" />
diff --git a/packages/shared/src/components/recruiter/layout/Sidebar.tsx b/packages/shared/src/components/recruiter/layout/Sidebar.tsx index bdeb10c84d..f71cd0e353 100644 --- a/packages/shared/src/components/recruiter/layout/Sidebar.tsx +++ b/packages/shared/src/components/recruiter/layout/Sidebar.tsx @@ -16,6 +16,7 @@ import { getOpportunitiesOptions } from '../../../features/opportunity/queries'; import type { Opportunity } from '../../../features/opportunity/types'; import { OpportunityState } from '../../../features/opportunity/protobuf/opportunity'; import { settingsUrl, webappUrl } from '../../../lib/constants'; +import { getPathnameWithQuery } from '../../../lib/links'; import { LogoutReason } from '../../../lib/user'; const Header = () => ( @@ -75,9 +76,13 @@ const Footer = () => { variant={ButtonVariant.Tertiary} icon={} size={ButtonSize.XSmall} - href={`${settingsUrl}/profile?redirectTo=${encodeURIComponent( - `${webappUrl}recruiter`, - )}&redirectCopy=${encodeURIComponent('Back to recruiter dashboard')}`} + href={getPathnameWithQuery( + `${settingsUrl}/profile`, + new URLSearchParams({ + redirectTo: `${webappUrl}recruiter`, + redirectCopy: 'Back to recruiter dashboard', + }), + )} tag="a" />