14 Commits

Author SHA1 Message Date
bd9d01a6ee feat: add catalog domain/category browsing with seed data, implement navigation from shopping lists to catalog UI, add ProGuard rules for Moshi/Room
- Add `ShoppingDomainEntity`, `CategoryEntity`, `CatalogItemEntity`, `ItemCategoryCrossRef` tables to database
- Increment database version to 8 with migration from v7
- Create `CatalogDao` with queries for domains, categories, items, and search
- Implement `CatalogSeedManager` to parse and insert JSON seed data on first launch
- Add catalog navigation routes
2026-04-29 08:52:19 -04:00
2cef0e399c feat: add region flag emojis to shopping lists UI, implement save actions in settings screens, add collapsible preview card in sort screen
- Display region flag emoji next to list name in `ShoppingListCard` with mapping for all supported countries
- Show region flag and name subtitle in `ListSettingsScreen` settings tile when region is set
- Replace bottom save button with top-right check icon in `ListNameImageScreen` and `ListRegionScreen`
- Add `onSave` callbacks to persist list updates via `update
2026-04-28 16:08:55 -04:00
ab1bf189b3 feat: add drag-to-reorder category sorting with live preview in shopping list settings, persist custom category order to database
- Add `categoryOrder` field to `ShoppingListEntity` for storing custom category sequences
- Increment database version to 7
- Implement long-press drag gesture to reorder categories in `ListSortScreen` with visual feedback
- Add live preview card showing ordered categories with visibility indicators
- Apply custom category order in `ListDetailScreen` when rendering item groups
- Update `ListDetailViewModel
2026-04-28 11:03:44 -04:00
18218ab023 feat: apply primary color theme to top and bottom navigation bars with white text/icons, update logo asset, bump version to 1.16.3 (build 23)
- Set TopAppBar containerColor to primary with white title, logo, and settings icon
- Apply primary containerColor to NavigationBar with white selected items and 70% opacity unselected items
- Replace safebite_logo_nobg.png with updated asset, remove old backup file
2026-04-28 09:57:35 -04:00
86af6467cc refactor: replace safebite_logo with safebite_logo_nobg drawable in splash and main screens, bump version to 1.16.0 (build 20) 2026-04-28 07:44:44 -04:00
7656fba134 feat: add shopping list member management, display order, and customization fields with drag-to-reorder UI
- Add `ShoppingListMemberEntity` table with foreign key cascade to shopping lists
- Add `backgroundResName`, `region`, `sortType`, `displayOrder`, `visibleCategories` fields to `ShoppingListEntity`
- Increment database version to 6
- Implement member CRUD operations in DAO and repository layers
- Add `observeMembers`, `addMember`, `updateMember`, `removeMember` methods across data/domain layers
- Update
2026-04-28 07:24:59 -04:00
ec1c8e6940 feat: implement splash screen with user preference toggle, update app branding with SafeBite logo across UI
- Add `splashScreenEnabled` preference to UserPreferences with default true
- Implement `SplashScreen` composable with animated logo, scale/fade transitions, and gradient background
- Add splash screen toggle in settings UI under "Interface" section
- Update navigation graph to conditionally show splash before dashboard when enabled
- Replace app launcher icons with SafeBite logo drawable
2026-04-27 21:54:13 -04:00
c8dff8df40 feat: add interactive image cropping with bottom sheet UI for shopping list item photos
- Extract `ImageCropBottomSheet` component for reusable crop interface
- Remove inline `saveCroppedImage` helper in favor of centralized cropping flow
- Add tap-to-recrop functionality on existing item photos in detail sheet
- Implement crop state management with `cropBitmap`, `cropForNewItem`, and `cropForItemId` flags
- Pass `onRequestCrop` callback to `ItemDetailSheet` for both camera/gallery and existing
2026-04-27 06:45:14 -04:00
48a9266942 feat: implement center-crop image processing for custom items, enhance onboarding UI with numbered step cards and allergen level selection
- Add `saveCroppedImage` helper to center-crop photos to square, resize to 512px, and compress to JPEG
- Apply cropping to both camera capture and gallery picker in `ListDetailScreen` and `ItemDetailSheet`
- Display custom item photos in tiles with `AsyncImage` and camera badge overlay
- Show full-width photos in item detail sheet
- Redesign onboarding "How it works" step
2026-04-26 18:47:11 -04:00
4ac951cf6e feat: implement photo-based item creation and product-to-list functionality with bottom sheet UI
- Add camera/gallery photo capture for custom shopping list items with name and description fields
- Implement `addCustomItemWithImage` in `ListDetailViewModel` to create items with attached photos
- Add "Add to list" button in `ResultScreen` with list picker bottom sheet for scanned products
- Extend `ResultViewModel` with `addToList` method to save scanned products to shopping lists
- Add `PhotoSource
2026-04-26 16:31:16 -04:00
8a19d46949 feat: add tag system to shopping list items, implement dashboard quick access cards, and enhance item detail sheet with photo picker
- Add `tag` field to `ShoppingListItemEntity` for visual tags (urgent, offre, whenever)
- Increment database version to 5
- Implement dashboard quick access cards showing shopping lists with remaining item counts
- Add tag selection buttons in item detail sheet with toggle functionality
- Display tag badges on item tiles with color-coded styling (danger for urgent, safe
2026-04-26 15:23:26 -04:00
1656b189f4 feat: redesign shopping list detail screen with Bring!-style interface, add item notes field, and implement bottom sheet for item management
- Add `note` field to `ShoppingListItemEntity` for quantity/description tracking
- Redesign `ListDetailScreen` with vertical hierarchy: active items, recently used section, catalog categories
- Replace swipe gestures with tap (mark bought/restore) and long-press (details sheet) interactions
- Implement `ItemDetailSheet` modal bottom sheet for editing notes,
2026-04-26 12:03:17 -04:00
6ad4d64db1 feat: implement core application architecture, navigation system, database schema, and initial UI screens for SafeBite 2026-04-26 11:11:19 -04:00
134f23f9a7 first commit 2026-04-25 10:26:13 -04:00