From f40488089802d4667ce699a774a37c92b8580913 Mon Sep 17 00:00:00 2001 From: Dominik Date: Sun, 16 Aug 2026 17:09:32 +0200 Subject: [PATCH] ENH - refine Music and Flare UI --- frontend/src/stores/flare.test.ts | 3 +- .../src/views/apps/FlareApp.contract.test.ts | 23 +- frontend/src/views/apps/FlareApp.vue | 40 +++- .../views/apps/MusicApp.menu.contract.test.ts | 49 ++++ .../apps/MusicApp.navigation.contract.test.ts | 22 ++ frontend/src/views/apps/MusicApp.vue | 210 +++++------------- 6 files changed, 179 insertions(+), 168 deletions(-) create mode 100644 frontend/src/views/apps/MusicApp.menu.contract.test.ts diff --git a/frontend/src/stores/flare.test.ts b/frontend/src/stores/flare.test.ts index c56ccce..b1c8934 100644 --- a/frontend/src/stores/flare.test.ts +++ b/frontend/src/stores/flare.test.ts @@ -81,7 +81,7 @@ describe('flare store', () => { }) }) - it('preserves ordered profile media ids and urls when profile photos are saved', async () => { + it('creates a profile with ordered media selected during onboarding', async () => { const updated = { ...bootstrap, profile: { @@ -110,6 +110,7 @@ describe('flare store', () => { mockNuiCall.mockResolvedValueOnce({ data: updated, success: true }) const flare = useFlareStore() + expect(flare.profile).toBeNull() expect(await flare.saveProfile(draft)).toBe(true) expect(mockNuiCall).toHaveBeenCalledWith('flare:save-profile', draft) expect(flare.profile?.photoMediaIds).toEqual([42, 17, 91]) diff --git a/frontend/src/views/apps/FlareApp.contract.test.ts b/frontend/src/views/apps/FlareApp.contract.test.ts index 5f93ccb..fc87432 100644 --- a/frontend/src/views/apps/FlareApp.contract.test.ts +++ b/frontend/src/views/apps/FlareApp.contract.test.ts @@ -8,12 +8,31 @@ const source = readFileSync( ) describe('FlareApp profile editing contract', () => { - it('offers Gallery and Camera as profile photo sources', () => { + it('offers Gallery and Camera directly while creating an account', () => { + const onboardingStart = source.indexOf( + '