diff --git a/packages/renderer/src/PreferencesNavigation.svelte b/packages/renderer/src/PreferencesNavigation.svelte index 48369392296..4142ef524ac 100644 --- a/packages/renderer/src/PreferencesNavigation.svelte +++ b/packages/renderer/src/PreferencesNavigation.svelte @@ -49,17 +49,9 @@ onMount(async () => {
- - - - - - - - - - - + {#each [{ title: 'Resources', href: '/preferences/resources' }, { title: 'Proxy', href: '/preferences/proxies' }, { title: 'Registries', href: '/preferences/registries' }, { title: 'Authentication', href: '/preferences/authentication-providers' }, { title: 'CLI Tools', href: '/preferences/cli-tools' }, { title: 'Kubernetes', href: '/preferences/kubernetes-contexts' }] as navItem} + + {/each} {#each Object.entries(configProperties) as [configSection, configItems]} @@ -67,7 +59,7 @@ onMount(async () => { title="{configSection}" href="/preferences/default/{configSection}" section="{configItems.length > 0}" - bind:meta="{meta}" + selected="{meta.url === `/preferences/default/${configSection}`}" bind:expanded="{sectionExpanded[configSection]}" /> {#if sectionExpanded[configSection]} {#each sortItems(configItems) as configItem} @@ -75,7 +67,7 @@ onMount(async () => { title="{configItem.title}" href="/preferences/default/{configItem.id}" child="{true}" - bind:meta="{meta}" /> + selected="{meta.url === `/preferences/default/${configItem.id}`}" /> {/each} {/if} {/each} diff --git a/packages/renderer/src/lib/preferences/SettingsNavItem.spec.ts b/packages/renderer/src/lib/preferences/SettingsNavItem.spec.ts index 5dc11d386ca..43cec39bede 100644 --- a/packages/renderer/src/lib/preferences/SettingsNavItem.spec.ts +++ b/packages/renderer/src/lib/preferences/SettingsNavItem.spec.ts @@ -25,14 +25,14 @@ import { expect, test } from 'vitest'; import SettingsNavItem from './SettingsNavItem.svelte'; -function renderIt(title: string, href: string, meta: any, section?: boolean, child?: boolean): void { - render(SettingsNavItem, { title: title, href: href, meta: meta, section: section, child: child }); +function renderIt(title: string, href: string, selected?: boolean, section?: boolean, child?: boolean): void { + render(SettingsNavItem, { title: title, href: href, selected: selected, section: section, child: child }); } test('Expect correct role and href', async () => { const title = 'Resources'; const href = '/test'; - renderIt(title, href, { url: href }); + renderIt(title, href, true); const element = screen.getByLabelText(title); expect(element).toBeInTheDocument(); @@ -42,7 +42,7 @@ test('Expect correct role and href', async () => { test('Expect selection styling', async () => { const title = 'Resources'; const href = '/test'; - renderIt(title, href, { url: href }); + renderIt(title, href, true); const element = screen.getByLabelText(title); expect(element).toBeInTheDocument(); @@ -52,7 +52,7 @@ test('Expect selection styling', async () => { test('Expect not to have selection styling', async () => { const title = 'Resources'; - renderIt(title, '/test', { url: '/elsewhere' }); + renderIt(title, '/test', false); const element = screen.getByLabelText(title); expect(element).toBeInTheDocument(); @@ -64,7 +64,7 @@ test('Expect not to have selection styling', async () => { test('Expect child styling', async () => { const title = 'Resources'; const href = '/test'; - renderIt(title, href, { url: href }, false, true); + renderIt(title, href, true, false, true); const element = screen.getByLabelText(title); expect(element).toBeInTheDocument(); @@ -75,7 +75,7 @@ test('Expect child styling', async () => { test('Expect section styling', async () => { const title = 'Extensions'; const href = '/test'; - renderIt(title, href, { url: href }, true, false); + renderIt(title, href, true, true, false); const element = screen.getByLabelText(title); expect(element).toBeInTheDocument(); @@ -88,7 +88,7 @@ test('Expect section styling', async () => { test('Expect sections expand', async () => { const title = 'Extensions'; const href = '/test'; - renderIt(title, href, { url: href }, true, false); + renderIt(title, href, true, true, false); const element = screen.getByLabelText(title); expect(element).toBeInTheDocument(); diff --git a/packages/renderer/src/lib/preferences/SettingsNavItem.svelte b/packages/renderer/src/lib/preferences/SettingsNavItem.svelte index 33b456b7f62..5cef34432dc 100644 --- a/packages/renderer/src/lib/preferences/SettingsNavItem.svelte +++ b/packages/renderer/src/lib/preferences/SettingsNavItem.svelte @@ -1,15 +1,10 @@