Skip to content

Commit a9ca082

Browse files
committed
All notable changes to this project will be documented in this file.
What's New? 😄 - Bumped from v0.9.6 -> 0.9.7 - Upgraded to .NET 8 - Increase Android's Target API to be 34 - Added a new Plugin.CalenderStore (jfversluis/Plugin.Maui.CalendarStore) thanks a lot to Gerald! That helps save new fold holds to device calendar with a reminder. - Added Payments by Installments in FlowHolds - Changed most pages to UraniumContentPages so as to use Attachments - Changed all Borders to Frames because otherwise UI won't render (see dotnet/maui#18526 ) - Changed all Uranium views that relied on Borders to standard .net maui views (see enisn/Uranium#481 ) Fixed 🛠️ - Fixed an issue where clicking button to add new FlowHold will crash the app - Fixed an issue where searching for a flowhold will show even those that were deleted - Fixed a lot of color inconsistencies Improved 📈 - Significantly changed th Add/Edit UI for Mobile so that they now show as BottomSheets instead of PopUps. Desktops still use Popup as it is more convenient - removed a lot of unused codes in vm and code behind Removed 🚮 - Removed previous BottomSheet plugin, since I decided to use Uranium BottomSheet - Whole content page to UpSert flow hold - previews bottom sheet implementation to view single flow hold Refactoring 🧠 - The list is just too long, honestly. But TLDR: I made sure the app doesn't heavily rely on Dependency Injection anymore Priority Upcoming 👁️ - Will redesign the Add/Edit UI for adding Flow INs to follow the same style as other flows - Will add logics to Add/edit/delete flow hold's installment ( see #81 ) - A whole page to view a flowhold and its details on Android
1 parent c75db1a commit a9ca082

File tree

69 files changed

+3284
-1573
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

69 files changed

+3284
-1573
lines changed

FlowHub-MAUI.sln

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
1818
.editorconfig = .editorconfig
1919
EndProjectSection
2020
EndProject
21-
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Plugin.Maui.CalendarStore", "..\Plugin.Maui.CalendarStoree\src\Plugin.Maui.CalendarStore\Plugin.Maui.CalendarStore.csproj", "{D878CDDE-4504-4B1D-8101-EA29BA091776}"
22-
EndProject
2321
Global
2422
GlobalSection(SolutionConfigurationPlatforms) = preSolution
2523
Debug|Any CPU = Debug|Any CPU
@@ -56,14 +54,6 @@ Global
5654
{2DAE4FA3-F7FB-463B-B074-511746628C6C}.Release|Any CPU.Build.0 = Release|Any CPU
5755
{2DAE4FA3-F7FB-463B-B074-511746628C6C}.Release|x64.ActiveCfg = Release|Any CPU
5856
{2DAE4FA3-F7FB-463B-B074-511746628C6C}.Release|x64.Build.0 = Release|Any CPU
59-
{D878CDDE-4504-4B1D-8101-EA29BA091776}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
60-
{D878CDDE-4504-4B1D-8101-EA29BA091776}.Debug|Any CPU.Build.0 = Debug|Any CPU
61-
{D878CDDE-4504-4B1D-8101-EA29BA091776}.Debug|x64.ActiveCfg = Debug|Any CPU
62-
{D878CDDE-4504-4B1D-8101-EA29BA091776}.Debug|x64.Build.0 = Debug|Any CPU
63-
{D878CDDE-4504-4B1D-8101-EA29BA091776}.Release|Any CPU.ActiveCfg = Release|Any CPU
64-
{D878CDDE-4504-4B1D-8101-EA29BA091776}.Release|Any CPU.Build.0 = Release|Any CPU
65-
{D878CDDE-4504-4B1D-8101-EA29BA091776}.Release|x64.ActiveCfg = Release|Any CPU
66-
{D878CDDE-4504-4B1D-8101-EA29BA091776}.Release|x64.Build.0 = Release|Any CPU
6757
EndGlobalSection
6858
GlobalSection(SolutionProperties) = preSolution
6959
HideSolutionNode = FALSE

FlowHub.DataAccess/FlowHub.DataAccess.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<Project Sdk="Microsoft.NET.Sdk">
1+
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
44
<TargetFrameworks>net7.0;net7.0-android33.0</TargetFrameworks>
@@ -36,4 +36,4 @@
3636
<ProjectReference Include="..\FlowHub.Models\FlowHub.Models.csproj" />
3737
</ItemGroup>
3838

39-
</Project>
39+
</Project>

FlowHub.DataAccess/Platforms/Android/DataAccessRepo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ public LiteDatabaseAsync GetDb() //this function returns the path where the db f
99
{
1010
string path;
1111

12-
path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "SavingTracker.db");
12+
path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "SavingsTracker.db");
1313
// string path = Android.OS.Environment.GetExternalStoragePublicDirectory(Android.OS.Environment.DirectoryDocuments).AbsolutePath;
1414

1515
db = new LiteDatabaseAsync(path);
@@ -20,7 +20,7 @@ public void DeleteDB()
2020
{
2121
string path;
2222

23-
path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "SavingTracker.db");
23+
path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "SavingsTracker.db");
2424
if (File.Exists(path))
2525
{
2626
try

FlowHub.DataAccess/Platforms/Windows/DataAccessRepo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,14 @@ public LiteDatabaseAsync GetDb() //this function returns the path where the db f
1919
bool DirectoryExists = Directory.Exists(path);
2020
if (!DirectoryExists)
2121
{
22-
const string fileName = "SavingTracker.db";
22+
const string fileName = "SavingsTracker.db";
2323
Directory.CreateDirectory(path);
2424

2525
db = new LiteDatabaseAsync(path + fileName);
2626
}
2727
else
2828
{
29-
const string fileName = "SavingTracker.db";
29+
const string fileName = "SavingsTracker.db";
3030
string connectionString = $"Filename={path}{fileName};Connection=shared";
3131
db = new LiteDatabaseAsync(connectionString);
3232
}

FlowHub.DataAccess/Repositories/DebtRepository.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,8 @@ async Task LoadOnlineDB()
130130
public async Task SynchronizeDebtsAsync()
131131
{
132132
await GetAllDebtAsync();
133-
if (!Connectivity.NetworkAccess.Equals(NetworkAccess.Internet))
133+
134+
if(!Connectivity.NetworkAccess.Equals(NetworkAccess.Internet))
134135
{
135136
IsBatchUpdate = false;
136137
OfflineDebtListChanged?.Invoke();
@@ -242,7 +243,7 @@ public async Task<bool> AddDebtAsync(DebtModel debt)
242243
}
243244
catch (Exception ex)
244245
{
245-
Debug.WriteLine("Failed to add local debt: " + ex.Message);
246+
Debug.WriteLine("Failed to add local debt: " + ex.InnerException.Message);
246247
db.Dispose();
247248
return false;
248249
}

FlowHub.DataAccess/Repositories/ExpendituresRepository.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,7 @@ async Task LoadOnlineDB()
132132
public async Task SynchronizeExpendituresAsync()
133133
{
134134
await GetAllExpendituresAsync();
135+
135136
if (!Connectivity.NetworkAccess.Equals(NetworkAccess.Internet))
136137
{
137138
IsSyncing = false;

FlowHub.DataAccess/Repositories/IncomeRepository.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,7 @@ async Task LoadOnlineDB()
121121
public async Task SynchronizeIncomesAsync()
122122
{
123123
await GetAllIncomesAsync();
124+
124125
if (!Connectivity.NetworkAccess.Equals(NetworkAccess.Internet))
125126
{
126127
IsSyncing = false;

FlowHub.DataAccess/Repositories/UserRepository.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,7 @@ public class UserRepository : IUsersRepository
1010

1111
private readonly IDataAccessRepo dataAccessRepo;
1212
private readonly IOnlineCredentialsRepository onlineDataAccessRepo;
13-
private readonly IExpendituresRepository expenditureRepo;
14-
private readonly IIncomeRepository incomeRepo;
13+
1514
private const string userDataCollectionName = "Users";
1615

1716
public event Action OfflineUserDataChanged;

FlowHub.Main/AppShellMobile.xaml.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,6 @@ public AppShellMobile()
2727
Routing.RegisterRoute(nameof(DebtsOverviewPageM), typeof(DebtsOverviewPageM));
2828
Routing.RegisterRoute(nameof(ManageBorrowingsPageM), typeof(ManageBorrowingsPageM));
2929
Routing.RegisterRoute(nameof(ManageLendingsPageM), typeof(ManageLendingsPageM));
30-
Routing.RegisterRoute(nameof(UpSertDebtPageM), typeof(UpSertDebtPageM));
30+
Routing.RegisterRoute(nameof(SingleDebtDetailsPageM), typeof(SingleDebtDetailsPageM));
3131
}
3232
}

FlowHub.Main/FlowHub.Main.csproj

Lines changed: 49 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFrameworks>net7.0-android33.0</TargetFrameworks>
5-
<TargetFrameworks Condition="$([MSBuild]::IsOSPlatform('windows'))">$(TargetFrameworks);net7.0-windows10.0.19041.0</TargetFrameworks>
4+
<TargetFrameworks>net8.0-android34.0</TargetFrameworks>
5+
<TargetFrameworks Condition="$([MSBuild]::IsOSPlatform('windows'))">$(TargetFrameworks);net8.0-windows10.0.19041.0</TargetFrameworks>
66
<!-- Uncomment to also build the tizen app. You will need to install tizen by following this: https://github.com/Samsung/Tizen.NET -->
77
<!-- <TargetFrameworks>$(TargetFrameworks);net7.0-tizen</TargetFrameworks> -->
88
<OutputType>Exe</OutputType>
@@ -36,7 +36,7 @@
3636
<GenerateTestArtifacts>True</GenerateTestArtifacts>
3737
<AppInstallerUri>D:\Courses\snipPC</AppInstallerUri>
3838
<HoursBetweenUpdateChecks>0</HoursBetweenUpdateChecks>
39-
<SupportedOSPlatformVersion Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'android'">31.0</SupportedOSPlatformVersion>
39+
<SupportedOSPlatformVersion Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'android'">32.0</SupportedOSPlatformVersion>
4040
<DefaultLanguage>en</DefaultLanguage>
4141
</PropertyGroup>
4242

@@ -66,9 +66,33 @@
6666
<ApplicationTitle>FlowHub</ApplicationTitle>
6767
</PropertyGroup>
6868

69+
<PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Debug|net8.0-android34.0|AnyCPU'">
70+
<ApplicationTitle>FlowHub</ApplicationTitle>
71+
<ApplicationDisplayVersion>0.9.7</ApplicationDisplayVersion>
72+
<ApplicationVersion>1</ApplicationVersion>
73+
</PropertyGroup>
74+
75+
<PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Debug|net8.0-windows10.0.19041.0|AnyCPU'">
76+
<ApplicationTitle>FlowHub</ApplicationTitle>
77+
<ApplicationDisplayVersion>0.9.7</ApplicationDisplayVersion>
78+
<ApplicationVersion>1</ApplicationVersion>
79+
</PropertyGroup>
80+
81+
<PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|net8.0-android34.0|AnyCPU'">
82+
<ApplicationTitle>FlowHub</ApplicationTitle>
83+
<ApplicationDisplayVersion>0.9.7</ApplicationDisplayVersion>
84+
<ApplicationVersion>1</ApplicationVersion>
85+
</PropertyGroup>
86+
87+
<PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|net8.0-windows10.0.19041.0|AnyCPU'">
88+
<ApplicationTitle>FlowHub</ApplicationTitle>
89+
<ApplicationDisplayVersion>0.9.7</ApplicationDisplayVersion>
90+
<ApplicationVersion>1</ApplicationVersion>
91+
</PropertyGroup>
92+
6993
<ItemGroup>
7094
<!-- App Icon -->
71-
<MauiIcon Include="Resources\AppIcon\appicon.svg" ForegroundFile="Resources\AppIcon\appiconfg.svg" Color="#512BD4" />
95+
<MauiIcon Include="Resources\AppIcon\appicon1.svg" ForegroundFile="Resources\AppIcon\appiconfg.svg" Color="#512BD4" />
7296

7397
<!-- Splash Screen -->
7498
<MauiSplashScreen Include="Resources\Splash\splash.svg" Color="#512BD4" BaseSize="128,128" />
@@ -84,6 +108,11 @@
84108
<MauiAsset Include="Resources\Raw\**" LogicalName="%(RecursiveDir)%(Filename)%(Extension)" />
85109
</ItemGroup>
86110

111+
<ItemGroup>
112+
<Compile Remove="Platforms\Windows\CalendarUtils\CalendarStore.windows.cs" />
113+
<Compile Remove="Utilities\CalendarUtils\CalendarStore.net.cs" />
114+
</ItemGroup>
115+
87116
<ItemGroup>
88117
<None Remove="Resources\Images\add_btn_48.svg" />
89118
<None Remove="Resources\Images\add_btn_48_light.svg" />
@@ -129,14 +158,14 @@
129158
<ItemGroup>
130159
<PackageReference Include="akgul.Maui.DataGrid" Version="3.0.0" />
131160
<PackageReference Include="CommunityToolkit.Diagnostics" Version="8.2.2" />
132-
<PackageReference Include="CommunityToolkit.Maui" Version="6.1.0" />
161+
<PackageReference Include="CommunityToolkit.Maui" Version="7.0.0" />
133162
<PackageReference Include="CommunityToolkit.Mvvm" Version="8.2.2" />
134163
<PackageReference Include="HarfBuzzSharp" Version="7.3.0" />
135164
<PackageReference Include="itext7" Version="8.0.2" />
136165
<PackageReference Include="itext7.bouncy-castle-adapter" Version="8.0.2" />
137166
<PackageReference Include="LiteDB.Async" Version="0.1.7" />
138167
<PackageReference Include="LiveChartsCore.SkiaSharpView.Maui" Version="2.0.0-rc1.2" />
139-
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="7.0.0" />
168+
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="8.0.0" />
140169
<PackageReference Include="SkiaSharp" Version="2.88.6" />
141170
<PackageReference Include="UraniumUI" Version="2.5.6" />
142171
<PackageReference Include="UraniumUI.Blurs" Version="2.5.6" />
@@ -146,7 +175,6 @@
146175
</ItemGroup>
147176

148177
<ItemGroup>
149-
<ProjectReference Include="..\..\Plugin.Maui.CalendarStoree\src\Plugin.Maui.CalendarStore\Plugin.Maui.CalendarStore.csproj" />
150178
<ProjectReference Include="..\FlowHub.DataAccess\FlowHub.DataAccess.csproj" />
151179
<ProjectReference Include="..\FlowHub.Models\FlowHub.Models.csproj" />
152180
</ItemGroup>
@@ -179,13 +207,13 @@
179207
<MauiXaml Update="PopUpPages\ErrorPopUpAlert.xaml">
180208
<Generator>MSBuild:Compile</Generator>
181209
</MauiXaml>
182-
<MauiXaml Update="Utilities\BottomSheet\Drawers\BaseDrawer.xaml">
210+
<MauiXaml Update="PopUpPages\UpSertInstallmentPayment.xaml">
183211
<Generator>MSBuild:Compile</Generator>
184212
</MauiXaml>
185-
<MauiXaml Update="Utilities\BottomSheet\Drawers\ListDrawer.xaml">
213+
<MauiXaml Update="Views\Desktop\Debts\ManageDebtsPageD.xaml">
186214
<Generator>MSBuild:Compile</Generator>
187215
</MauiXaml>
188-
<MauiXaml Update="Views\Desktop\Debts\ManageDebtsPageD.xaml">
216+
<MauiXaml Update="Views\Desktop\Debts\UpSertDebtPopUp.xaml">
189217
<Generator>MSBuild:Compile</Generator>
190218
</MauiXaml>
191219
<MauiXaml Update="Views\Desktop\ExitApp.xaml">
@@ -218,13 +246,13 @@
218246
<MauiXaml Update="Views\Mobile\Debts\ManageLendingsPageM.xaml">
219247
<Generator>MSBuild:Compile</Generator>
220248
</MauiXaml>
221-
<MauiXaml Update="Views\Mobile\Debts\ViewDebtBottomSheet.xaml">
249+
<MauiXaml Update="Views\Mobile\Debts\SingleDebtDetailsPageM.xaml">
222250
<Generator>MSBuild:Compile</Generator>
223251
</MauiXaml>
224-
<MauiXaml Update="Views\Mobile\Debts\DebtsOverviewPageM.xaml">
252+
<MauiXaml Update="Views\Mobile\Debts\UpSertDebtBottomSheet.xaml">
225253
<Generator>MSBuild:Compile</Generator>
226254
</MauiXaml>
227-
<MauiXaml Update="Views\Mobile\Debts\UpSertDebtPageM.xaml">
255+
<MauiXaml Update="Views\Mobile\Debts\DebtsOverviewPageM.xaml">
228256
<Generator>MSBuild:Compile</Generator>
229257
</MauiXaml>
230258
<MauiXaml Update="Views\Mobile\Expenditures\ManageExpendituresM.xaml">
@@ -239,6 +267,9 @@
239267
<MauiXaml Update="Views\Mobile\Expenditures\PlannedExpenditures\MonthlyPlannedExp\UpSertMonthlyPlannedExpPageM.xaml">
240268
<Generator>MSBuild:Compile</Generator>
241269
</MauiXaml>
270+
<MauiXaml Update="Views\Mobile\Expenditures\UpSertExpenditureBottomSheet.xaml">
271+
<Generator>MSBuild:Compile</Generator>
272+
</MauiXaml>
242273
<MauiXaml Update="Views\Mobile\Expenditures\UpSertExpenditurePageM.xaml">
243274
<Generator>MSBuild:Compile</Generator>
244275
</MauiXaml>
@@ -278,11 +309,14 @@
278309
</ItemGroup>
279310

280311
<ItemGroup>
312+
<Folder Include="Platforms\Windows\Utilities\" />
281313
<Folder Include="Resources\Images\darkicons\" />
282314
</ItemGroup>
283315

284316
<ItemGroup>
285317
<None Include="..\.editorconfig" Link=".editorconfig" />
318+
<None Include="Platforms\Windows\CalendarUtils\CalendarStore.windows.cs" />
319+
<None Include="Utilities\CalendarUtils\CalendarStore.net.cs" />
286320
</ItemGroup>
287321

288322
<ItemGroup>
@@ -327,8 +361,8 @@
327361
<Compile Update="Views\Mobile\Debts\ManageBorrowingsPageM.xaml.cs">
328362
<DependentUpon>ManageBorrowingsPageM.xaml</DependentUpon>
329363
</Compile>
330-
<Compile Update="Views\Mobile\Debts\ViewDebtBottomSheet.xaml.cs">
331-
<DependentUpon>ViewDebtBottomSheet.xaml</DependentUpon>
364+
<Compile Update="Views\Mobile\Debts\SingleDebtDetailsPageM.xaml.cs">
365+
<DependentUpon>SingleDebtDetailsPageM.xaml</DependentUpon>
332366
</Compile>
333367
<Compile Update="Views\Mobile\Incomes\ManageIncomesM.xaml.cs">
334368
<DependentUpon>ManageIncomesM.xaml</DependentUpon>

0 commit comments

Comments
 (0)