Skip to main content

Overview

Sovran supports multiple currency accounts through a swipeable pager interface. Users can switch between SAT, USD, EUR, and other currency units with smooth animations and haptic feedback.

Account Pager Architecture

The AccountPagerView component (components/blocks/AccountPagerView.tsx) orchestrates multi-account support:

Component Structure

From components/blocks/AccountPagerView.tsx:196-210.

Swipeable Interface

The pager uses react-native-web-infinite-swiper for smooth account switching:
From components/blocks/AccountPagerView.tsx:323-341.

Page Selection Handler

Account switching triggers haptic feedback:
From components/blocks/AccountPagerView.tsx:229-235.

Programmatic Navigation

Accounts can be switched programmatically:
From components/blocks/AccountPagerView.tsx:237-240.

Payment Actions

The account pager integrates send/receive/scan actions:

Receive Action

Send Action

From components/blocks/AccountPagerView.tsx:258-279.

QR Scanner Action

From components/blocks/AccountPagerView.tsx:249-256.

Platform-Specific Buttons

The pager renders different button styles based on platform:

iOS - Liquid Glass Buttons

From components/blocks/AccountPagerView.tsx:123-158.

Android - Liquid Button View

From components/blocks/AccountPagerView.tsx:51-83.

Fallback - Blur Buttons

From components/blocks/AccountPagerView.tsx:309-319.

Central QR Button

A floating QR scanner button sits between send/receive:

iOS Liquid Glass

From components/blocks/AccountPagerView.tsx:161-189.

Android Liquid Button

From components/blocks/AccountPagerView.tsx:85-121.

Button Layout

Buttons are arranged in a specific layout:
From components/blocks/AccountPagerView.tsx:343-392.

Account Display

Each account renders with:

Currency Icon

From components/blocks/Account.tsx:25-37.

Balance Display

From components/blocks/Account.tsx:46-64.

Mint Management Integration

The pager integrates with mint management:
From components/blocks/AccountPagerView.tsx:221-225.

Camera Permission Handling

Key Features

Swipeable Interface

Smooth infinite swiper with loop support and haptic feedback

Platform Adaptation

iOS liquid glass, Android liquid buttons, and fallback blur buttons

Visual Indicators

Dot indicators show current account position

Smart Routing

Context-aware navigation based on balance and mint availability