Enhance history management with export and import functionalities

- Added endpoints for exporting generations as ZIP archives and audio files.
- Implemented import functionality for generations from ZIP archives with validation.
- Updated HistoryTable component to support new export and import features.
- Improved error handling and user notifications for export/import processes.
- Refactored related hooks and API client methods to accommodate new functionalities.
This commit is contained in:
Jamie Pine
2026-01-26 00:30:37 -08:00
parent 333cb262e0
commit 551abc9856
14 changed files with 653 additions and 45 deletions
+18 -1
View File
@@ -11,6 +11,7 @@ ICON_BUNDLE="tauri/assets/voicebox.icon"
ASSETS_DIR="$ICON_BUNDLE/Assets"
ICONS_DIR="tauri/src-tauri/icons"
LANDING_LOGO="landing/public/voicebox-logo.png"
LANDING_PUBLIC="landing/public"
SOURCE_ICON="$EXPORTS_DIR/[email protected]"
echo "🎨 Updating all Voicebox icons from exports..."
@@ -152,10 +153,25 @@ sips -s format png -z 192 192 "$SOURCE_ICON" --out "$ICONS_DIR/android/mipmap-xx
sips -s format png -z 192 192 "$SOURCE_ICON" --out "$ICONS_DIR/android/mipmap-xxxhdpi/ic_launcher_round.png" 2>/dev/null
sips -s format png -z 192 192 "$SOURCE_ICON" --out "$ICONS_DIR/android/mipmap-xxxhdpi/ic_launcher_foreground.png" 2>/dev/null
# Landing Page Logo
# Landing Page Logo & Favicon
echo "Generating landing page logo..."
mkdir -p "$LANDING_PUBLIC"
sips -s format png -z 1024 1024 "$SOURCE_ICON" --out "$LANDING_LOGO" 2>/dev/null
echo "Generating landing page favicon..."
# Generate favicon.png (32x32 is standard for favicons)
sips -s format png -z 32 32 "$SOURCE_ICON" --out "$LANDING_PUBLIC/favicon.png" 2>/dev/null
# Generate favicon.ico - try ImageMagick if available, otherwise use PNG (Next.js handles PNG favicons)
if command -v convert &> /dev/null; then
convert "$LANDING_PUBLIC/favicon.png" "$LANDING_PUBLIC/favicon.ico" 2>/dev/null || \
cp "$LANDING_PUBLIC/favicon.png" "$LANDING_PUBLIC/favicon.ico" 2>/dev/null
else
# Fallback: copy PNG as ICO (Next.js and modern browsers handle this)
cp "$LANDING_PUBLIC/favicon.png" "$LANDING_PUBLIC/favicon.ico" 2>/dev/null
fi
# Also generate apple-touch-icon (180x180 for iOS)
sips -s format png -z 180 180 "$SOURCE_ICON" --out "$LANDING_PUBLIC/apple-touch-icon.png" 2>/dev/null
echo ""
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
echo "✅ All icons updated successfully!"
@@ -168,5 +184,6 @@ echo " ✓ Windows Square logos"
echo " ✓ iOS AppIcons (18 sizes)"
echo " ✓ Android mipmap icons (5 densities)"
echo " ✓ Landing page logo"
echo " ✓ Landing page favicon"
echo ""
echo "Next: Rebuild the app with 'cd tauri && bun run tauri build'"