Skip to content

Commit bad02a6

Browse files
committed
make remembering last space the default experience
1 parent db3c416 commit bad02a6

5 files changed

Lines changed: 11 additions & 6 deletions

File tree

src/core/packages/user-settings/types/index.d.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,10 @@ export interface UserSettingsData {
4747
contrastMode?: ContrastModeValue;
4848
locale?: LocaleValue;
4949
solutionNavOptOut?: boolean;
50+
/**
51+
* Whether the user wants to be redirected to the last accessed space on login.
52+
* @default true
53+
*/
5054
rememberSelectedSpace?: boolean;
5155
/**
5256
* The id of the last space the user navigated into. Persisted server-side on every

x-pack/platform/plugins/shared/security/public/account_management/user_profile/user_profile.test.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ describe('useUserProfileForm', () => {
7777
"contrastMode": "system",
7878
"darkMode": "space_default",
7979
"locale": "en",
80-
"rememberSelectedSpace": false,
80+
"rememberSelectedSpace": true,
8181
},
8282
},
8383
"user": Object {

x-pack/platform/plugins/shared/security/public/account_management/user_profile/user_profile.tsx

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -706,7 +706,7 @@ function UserSpaceConfigEditor({ formik }: { formik: ReturnType<typeof useUserPr
706706
>
707707
<FormField
708708
label={
709-
<EuiText id={rememberSelectedSpaceLabelId} size="s">
709+
<EuiText size="s">
710710
<p>
711711
<FormattedMessage
712712
id="xpack.security.accountManagement.userProfile.rememberSelectedSpaceSwitchDescription"
@@ -716,8 +716,9 @@ function UserSpaceConfigEditor({ formik }: { formik: ReturnType<typeof useUserPr
716716
</EuiText>
717717
}
718718
as={EuiSwitch}
719+
id={rememberSelectedSpaceLabelId}
719720
name="data.userSettings.rememberSelectedSpace"
720-
checked={formik.values.data.userSettings.rememberSelectedSpace || false}
721+
checked={formik.values.data.userSettings.rememberSelectedSpace ?? true}
721722
aria-describedby={rememberSelectedSpaceLabelId}
722723
onChange={async (e) => {
723724
await formik.setFieldTouched('data.userSettings.rememberSelectedSpace', true);
@@ -967,7 +968,7 @@ export function useUserProfileForm({ user, data }: UserProfileProps) {
967968
locale:
968969
data.userSettings?.locale ||
969970
toCanonicalLocaleId(i18n.getLocale(), getAvailableLocales()),
970-
rememberSelectedSpace: data.userSettings?.rememberSelectedSpace || false,
971+
rememberSelectedSpace: data.userSettings?.rememberSelectedSpace ?? true,
971972
},
972973
}
973974
: undefined,

x-pack/platform/plugins/shared/security/server/routes/user_profile/update.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ const userProfileUpdateSchema = schema.object({
5959
),
6060
locale: schema.maybe(schema.string({ maxLength: MAX_STRING_FIELD_LENGTH })),
6161
rememberSelectedSpace: schema.maybe(schema.boolean()),
62-
lastSelectedSpaceId: schema.maybe(schema.string({ maxLength: MAX_STRING_FIELD_LENGTH })),
62+
lastSelectedSpaceId: schema.nullable(schema.string({ maxLength: MAX_STRING_FIELD_LENGTH })),
6363
})
6464
),
6565
});

x-pack/platform/plugins/shared/spaces/server/lib/request_interceptors/on_post_auth_interceptor.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ describe('initSpacesOnPostAuthRequestInterceptor', () => {
9797
});
9898

9999
describe('GET / (kibana root)', () => {
100-
it('redirects to last selected space when user opted in and space is accessible', async () => {
100+
it('redirects to last selected space when user explicitly opts in and space is accessible', async () => {
101101
getSpaceId.mockReturnValue(DEFAULT_SPACE_ID);
102102
getAll.mockResolvedValue([space('default'), space('foo')]);
103103
getCurrent.mockResolvedValue({

0 commit comments

Comments
 (0)