feat(shared-branding): add Presi app branding

- Add 'presi' to AppId type
- Add Presi branding config (orange theme, presentation icon)
- Add PresiLogo Svelte component
- Export PresiLogo from logos index

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Till-JS 2025-11-28 20:58:45 +01:00
parent 87abafdf60
commit eae083a2be
4 changed files with 28 additions and 1 deletions

View file

@ -79,6 +79,19 @@ export const APP_BRANDING: Record<AppId, AppBranding> = {
logoStroke: true,
logoStrokeWidth: 1.5,
},
presi: {
id: 'presi',
name: 'Presi',
tagline: 'Presentation Creator',
primaryColor: '#f97316',
secondaryColor: '#fb923c',
// Presentation/slides icon
logoPath:
'M3.75 3v11.25A2.25 2.25 0 006 16.5h2.25M3.75 3h-1.5m1.5 0h16.5m0 0h1.5m-1.5 0v11.25A2.25 2.25 0 0118 16.5h-2.25m-7.5 0h7.5m-7.5 0l-1 3m8.5-3l1 3m0 0l.5 1.5m-.5-1.5h-9.5m0 0l-.5 1.5M9 11.25v1.5M12 9v3.75m3-6v6',
logoViewBox: '0 0 24 24',
logoStroke: true,
logoStrokeWidth: 1.5,
},
};
/**

View file

@ -0,0 +1,13 @@
<script lang="ts">
import AppLogo from '../AppLogo.svelte';
interface Props {
size?: number;
color?: string;
class?: string;
}
let { size = 55, color, class: className = '' }: Props = $props();
</script>
<AppLogo app="presi" {size} {color} class={className} />

View file

@ -8,3 +8,4 @@ export { default as ManaDeckLogo } from './ManaDeckLogo.svelte';
export { default as StorytellerLogo } from './StorytellerLogo.svelte';
export { default as UloadLogo } from './UloadLogo.svelte';
export { default as ChatLogo } from './ChatLogo.svelte';
export { default as PresiLogo } from './PresiLogo.svelte';

View file

@ -1,7 +1,7 @@
/**
* App identifiers for branding
*/
export type AppId = 'memoro' | 'manacore' | 'manadeck' | 'maerchenzauber' | 'uload' | 'chat';
export type AppId = 'memoro' | 'manacore' | 'manadeck' | 'maerchenzauber' | 'uload' | 'chat' | 'presi';
/**
* App branding configuration