3.3.0
Pre-release
Pre-release
Refactor:
- Moved to a more consistant folder structure.
- Bootstrapping with various providers, initializers:
AppConfigProvider: ProvidesisFirebasePlatformEnabled,isIAPPlatformEnabled,isAdPlatformEnabled. These were global variables before.AppThemeProvider: Created from oldAppStateProvider. Provides thethemeName. SetsthemeNameand dynamic themes on initialization.InviteUrlProvider: Provides theinviteUrl. Existed before. Under the hood it uses theapp_linksinstead of theuni_linkspackage, as it was not maintained.ExchangeRateInitializer: Gets the exchange rates from the server and stores it in the memory.UserProvider: The oldAppStateProviderwithout the theme. The current group is still provided through it.NotificationInitializer: InitializesFirebaseandFlutterLocalNotificationson platforms which support notifications.IAPInitizalier: Initializes the in-app-purchases.ScreenSizeProvider: Renamed version of theScreenWidthProvider, a wrapper for theMediaQuery, which makes it more usable for the app.SupportedVersionInitializer: Gets if the current version is supported by the server, if it is not, shows theVersionNotSupportedPage.
- Added
Currencyclass. Now currencies are represented in the code as class instances, not es currency code strings. - Calculator refactored, using enums and helper classes instead of strings for the operators and numbers.
- Reactions: enums for distinguishing between purchase, payment and shopping request reactions. More consistent algorithms for enumerating and ordering reactions. Cleaner code for sending and showing reactions.
- Shopping list: cleaner code.
Redesigns:
ShoppingListEntrys have new design, which are more similar toPurchaseEntrys andPaymentEntrys.- For dual color themes primary, secondary and the container colors are shown in the
ThemePicker. - The calculator's buttons animate and have haptic feedback in a similar way to the pin pad.
- The history filter is now a sliver over the purchases/payments. This makes it harder to miss and easier to use.
- Necessary payments are shown in a separate page instead of a dialog. This removes questionable design (as dialogs on top of dialogs), and adds more space to work with.
- Added label for the copy button.
- Added new button for going straight to the payment page.
Fixes:
- Fixed
PinVerificationDialognot showing up at all.
New:
- Added one new color theme.
- Added theme preview. When long pressing on a color theme, a popup is shown with a home screen showing the selected theme. The popup is shown as long as the user keeps the long press active.
- Removed the personalised ads page from the sign up process, instead a pop up will be shown when the user first opens the app after their trial period is over.
- After the user sees
TrialEndedDialog, the theme will change to the default green, and the user gets the option to go to the shop and reclaim the themes. - Now the icons next to the brightness slider in the color theme picker are also clickable and will set the brightness aswell.
Also bumped dependencies.