mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-23 01:26:42 +02:00
feat: add new projects bauntown, presi, voxel-lava, whopixels
- apps/bauntown: Developer community website (Astro landing) - apps/presi: Presentation project - games/voxel-lava: Voxel lava game (SvelteKit) - games/whopixels: Whopixels game 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
d35ba768cf
commit
5b1e12e5d6
407 changed files with 46356 additions and 0 deletions
6
apps/presi/packages/shared/src/index.ts
Normal file
6
apps/presi/packages/shared/src/index.ts
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
/**
|
||||
* @presi/shared - Shared types and utilities for Presi
|
||||
*/
|
||||
|
||||
// Types
|
||||
export * from './types';
|
||||
88
apps/presi/packages/shared/src/types/index.ts
Normal file
88
apps/presi/packages/shared/src/types/index.ts
Normal file
|
|
@ -0,0 +1,88 @@
|
|||
/**
|
||||
* Presi Shared Types
|
||||
*/
|
||||
|
||||
export interface Deck {
|
||||
id: string;
|
||||
userId: string;
|
||||
title: string;
|
||||
description?: string;
|
||||
themeId?: string;
|
||||
isPublic: boolean;
|
||||
createdAt: string;
|
||||
updatedAt: string;
|
||||
}
|
||||
|
||||
export interface Slide {
|
||||
id: string;
|
||||
deckId: string;
|
||||
order: number;
|
||||
content: SlideContent;
|
||||
createdAt: string;
|
||||
}
|
||||
|
||||
export interface SlideContent {
|
||||
type: 'title' | 'content' | 'image' | 'split';
|
||||
title?: string;
|
||||
subtitle?: string;
|
||||
body?: string;
|
||||
imageUrl?: string;
|
||||
bulletPoints?: string[];
|
||||
}
|
||||
|
||||
export interface Theme {
|
||||
id: string;
|
||||
name: string;
|
||||
colors: ThemeColors;
|
||||
fonts: ThemeFonts;
|
||||
isDefault: boolean;
|
||||
}
|
||||
|
||||
export interface ThemeColors {
|
||||
primary: string;
|
||||
secondary: string;
|
||||
background: string;
|
||||
text: string;
|
||||
accent: string;
|
||||
}
|
||||
|
||||
export interface ThemeFonts {
|
||||
heading: string;
|
||||
body: string;
|
||||
}
|
||||
|
||||
export interface SharedDeck {
|
||||
id: string;
|
||||
deckId: string;
|
||||
shareCode: string;
|
||||
expiresAt?: string;
|
||||
createdAt: string;
|
||||
}
|
||||
|
||||
// DTOs
|
||||
export interface CreateDeckDto {
|
||||
title: string;
|
||||
description?: string;
|
||||
themeId?: string;
|
||||
}
|
||||
|
||||
export interface UpdateDeckDto {
|
||||
title?: string;
|
||||
description?: string;
|
||||
themeId?: string;
|
||||
isPublic?: boolean;
|
||||
}
|
||||
|
||||
export interface CreateSlideDto {
|
||||
content: SlideContent;
|
||||
order?: number;
|
||||
}
|
||||
|
||||
export interface UpdateSlideDto {
|
||||
content?: SlideContent;
|
||||
order?: number;
|
||||
}
|
||||
|
||||
export interface ReorderSlidesDto {
|
||||
slides: { id: string; order: number }[];
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue