Skip to content

Feat/bitrefill in topsecret#221

Merged
kcw-grunt merged 5 commits into
developfrom
feat/bitrefill-in-topsecret
Apr 25, 2026
Merged

Feat/bitrefill in topsecret#221
kcw-grunt merged 5 commits into
developfrom
feat/bitrefill-in-topsecret

Conversation

@kcw-grunt

@kcw-grunt kcw-grunt commented Apr 25, 2026

Copy link
Copy Markdown
Collaborator

📱 Description

This PR integrates Bitrefill gift card functionality into the Brainwallet app's "TopSecret" section. It adds a new Shop Bento section with gift card purchasing capabilities, including support for major retailers (Amazon, Visa, JustEat) and the Bitrefill service. The feature includes navigation routing, state management via MVI architecture, and comprehensive localization across 20+ languages.

Platform

  • Android

🎯 Type of Change

  • 🐛 Bug fix
  • ✨ New feature
  • 🔧 Refactoring (code change that neither fixes a bug nor adds a feature)
  • 📚 Documentation update
  • 🎨 UI/UX improvement
  • ⚡ Performance improvement
  • 🧪 Test addition or improvement

📋 Changes

New Components Added

  • ShopBentoScreen.kt – Main Shop Bento section composable displaying gift card marketplace
  • ShopBentoViewModel.kt – MVI ViewModel managing shop state, events, and side effects
  • ShopBentoState.kt – Data class defining the Shop Bento UI state
  • ShopBentoEvent.kt – Sealed class defining user interaction events
  • GiftCardsComposable.kt – Composable UI for displaying gift card options
  • Cards.kt – Card component utilities for gift card rendering
  • WebModalScreen.kt – Modal for displaying Bitrefill web content
  • ShopBentoViewModelTest.kt – Unit tests for ShopBentoViewModel logic

Modifications

  • MainNavigationHost.kt – Added navigation route for Shop Bento section
  • Route.kt – New route definitions for shop and web modal navigation
  • BentoBottomNavBar.kt – Updated navigation bar to include Shop Bento tab
  • FavouritesBentoScreen.kt – Integration with updated navigation structure
  • TutorialsBentoScreen.kt, TutorialSendBentoScreen.kt, TutorialWalkthroughBentoScreen.kt – Navigation updates
  • Tutorial pages (Page1–Page4 variants) – Adjusted for new navigation flow
  • MainScreen.kt – Added Shop Bento section to main screen routing
  • Gradient.kt – New gradient theme definitions for Shop UI
  • BWConstants.kt – Added Bitrefill integration constants
  • AndroidManifest.xml – Permissions/configuration updates for web modal
  • strings.xml (all 20+ locales) – Localized strings for gift cards, retailers, and Bitrefill branding

Removals

  • None

📊 Statistics

  • Additions: 807 lines
  • Deletions: 356 lines
  • Files Changed: 56
  • Commits: 5

🔗 Related Issues

  • Fixes #
  • Related to #

🧪 Tests Status

  • Tests ran successfully locally?
  • Added more tests? – ShopBentoViewModelTest.kt added
  • Code coverage percentage of the codebase: __%

🎯 Reviewers

@kcw-grunt, @josikie


Draft Status: This PR is currently in draft mode and ready for review feedback.


⚠️ Reviewer Notes

Please verify:

  1. Bitrefill API integration – Confirm endpoint configuration in BWConstants.kt
  2. Web modal security – Review WebModalScreen.kt for proper URL validation and SSL handling
  3. State management – Verify MVI pattern compliance in ViewModel/State/Event structure
  4. Localization – Spot-check 2–3 locale files for translation accuracy
  5. Navigation flow – Test deep linking and back navigation from Shop section
  6. Testing coverage – Review ShopBentoViewModelTest.kt for edge cases (errors, loading states)

@kcw-grunt
kcw-grunt requested a review from josikie April 25, 2026 23:09
@kcw-grunt kcw-grunt self-assigned this Apr 25, 2026
@gruntsoftware gruntsoftware deleted a comment from github-actions Bot Apr 25, 2026
@kcw-grunt

Copy link
Copy Markdown
Collaborator Author

got the tiny fixes

@kcw-grunt
kcw-grunt merged commit 38be6d1 into develop Apr 25, 2026
2 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant