4 Commits

Author SHA1 Message Date
AI
d9a203016f feat: massive Airbnb import pipeline overhaul + UI fixes
🔥 Scraper Improvements:
- Add JSON-LD price extraction (regression fix)
- Fix sleeping spotsPerUnit bug (was hardcoded to 2)
- Remove stale CSS selectors, add robust fallbacks
- Add JSON-LD price fallback in extraction pipeline
- Improve sleeping parser regex (lastIndex bug fix)
- Add 15+ new bed type patterns (murphy, day bed, hammock, plurals)
- Smarter deriveSleepingFromBeds() with mixed bed logic

📅 Import Form UX:
- Smart defaults (next weekend dates)
- Auto-calculate nights display
- URL param auto-detection (?check_in=&check_out=&adults=)
- Better visual hierarchy with icons
- Progress steps during import
- Success redirect to listing detail page

🗑️ Delete Button Fix:
- Add router.refresh() after successful delete
- Inline error state instead of alert()
- Admin delete button as proper client component

✏️ Edit/Admin Fixes:
- Fix revalidatePath using slug instead of id
- Fix redirect to detail page after edit
- Add cascade delete logic to admin deleteListing
- Extract delete to proper client component

🎨 UI States for Partial Data:
- Price: 'Preis auf Anfrage' with context hint
- Location: 'Ort nicht erkannt' instead of empty
- Sleeping: placeholder when no data
- Suitability: 3-state (yes/no/unknown)
- Use formatPrice/formatRating utilities

🛏️ Sleeping Data Quality:
- Add sleepingDataQuality to Prisma schema
- Save quality (EXACT/DERIVED/UNKNOWN) to DB
- Display '(geschätzt)' label for derived data

📊 Database:
- Restore corrupted schema.prisma from git
- Add sleepingDataQuality field
- Push schema changes

 TypeScript: Zero errors
 Build: Successful
2026-03-12 08:07:52 +00:00
AI
5e5326dbcc fix: improve scraper robustness, fix delete button, add title parsing
- Add parseTitle for fallback title extraction
- Improve text-patterns with more robust regex patterns
- Add more fallback patterns for capacity, beds, etc.
- Fix delete button to use FormData properly
- Add logging to scraper for debugging
2026-03-11 16:15:20 +00:00
AI
13bbe9d147 fix: add field/mergeField helpers, priceStatus, trip context support
- Add field() and mergeField() helper functions to types.ts
- Fix location parser to use correct html parameter
- Add priceStatus to import action
- Import form already has trip context fields (checkIn, checkOut, adults)
- Build now passes successfully
2026-03-11 15:55:45 +00:00
AI
8a0a28443b Initial commit: Airbnb Finder & Compare - Full Feature MVP 2026-03-11 05:52:46 +00:00