diff --git a/src/api/businesses.ts b/src/api/businesses.ts index 44fafb5..cd9430e 100644 --- a/src/api/businesses.ts +++ b/src/api/businesses.ts @@ -51,3 +51,23 @@ export function setBusinessCoverImage(imageId: string) { method: 'PATCH', }); } + +export function uploadBusinessLogoLight(file: File) { + const form = new FormData(); + form.append('file', file); + return apiFormData('/businesses/mine/logo-light', form); +} + +export function uploadBusinessLogoDark(file: File) { + const form = new FormData(); + form.append('file', file); + return apiFormData('/businesses/mine/logo-dark', form); +} + +export function removeBusinessLogoLight() { + return api('/businesses/mine/logo-light', { method: 'DELETE' }); +} + +export function removeBusinessLogoDark() { + return api('/businesses/mine/logo-dark', { method: 'DELETE' }); +} diff --git a/src/api/platform-settings.ts b/src/api/platform-settings.ts index fb26850..5de0431 100644 --- a/src/api/platform-settings.ts +++ b/src/api/platform-settings.ts @@ -2,6 +2,8 @@ import { api } from './client'; export type PlatformSettings = { loginHeroImageUrl: string | null; + logoLightUrl: string | null; + logoDarkUrl: string | null; }; export function fetchPlatformSettings() { diff --git a/src/api/types.ts b/src/api/types.ts index b38ce54..bdfe92a 100644 --- a/src/api/types.ts +++ b/src/api/types.ts @@ -43,6 +43,8 @@ export type Business = { promoDiscountPercent?: number | null; promoDiscountCode?: string | null; promoDiscountMode?: 'first_booking' | 'always'; + logoLightUrl?: string | null; + logoDarkUrl?: string | null; averageRating?: number | null; reviewCount?: number; createdAt?: string; diff --git a/src/components/brand/AppLogo.vue b/src/components/brand/AppLogo.vue index e577274..e0005d0 100644 --- a/src/components/brand/AppLogo.vue +++ b/src/components/brand/AppLogo.vue @@ -1,19 +1,19 @@