diff --git a/.github/release-drafter.yml b/.github/release-drafter.yml
new file mode 100644
index 00000000..62aef736
--- /dev/null
+++ b/.github/release-drafter.yml
@@ -0,0 +1,13 @@
+categories:
+ - title: '🚀 Features'
+ labels:
+ - 'feature'
+ - title: '🐛 Bug Fixes'
+ labels:
+ - 'bug'
+ - title: '🧰 Maintenance'
+ label: 'maintenance'
+change-template: '- $TITLE @$AUTHOR (#$NUMBER)'
+template: |
+ ## Changes
+ $CHANGES
diff --git a/.github/workflows/pullrequest_android.yml b/.github/workflows/pullrequest_android.yml
new file mode 100644
index 00000000..ab500588
--- /dev/null
+++ b/.github/workflows/pullrequest_android.yml
@@ -0,0 +1,51 @@
+name: Build & Test Pull Requests
+
+on:
+ pull_request:
+ branches:
+ - main
+
+env:
+ DOTNET_NOLOGO: true # Disable the .NET logo
+ DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true # Disable the .NET first time experience
+ DOTNET_CLI_TELEMETRY_OPTOUT: true # Disable sending .NET CLI telemetry
+
+jobs:
+ # MAUI Android Build
+ build-android:
+ runs-on: windows-2022
+ name: Android Build
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v2
+
+ - name: Setup .NET 6
+ uses: actions/setup-dotnet@v1
+ with:
+ dotnet-version: 6.0.200-preview.22055.15
+ include-prerelease: true
+
+ - uses: actions/setup-java@v2
+ with:
+ distribution: 'microsoft'
+ java-version: '11'
+
+ - name: Install MAUI Workloads
+ run: |
+ dotnet workload install android --ignore-failed-sources
+ dotnet workload install maui --ignore-failed-sources
+
+ - name: Restore Dependencies
+ run: dotnet restore TransactionMobile.Maui.sln
+
+ - name: Build Code
+ run: dotnet build TransactionMobile.Maui/TransactionMobile.Maui.csproj -c Release -f net6.0-android --no-restore
+
+ - name: Run Unit Tests
+ run: dotnet test TransactionMobile.Maui.Tests/TransactionMobile.Maui.Tests.csproj
+
+ #- name: Upload Android Artifact
+ # uses: actions/upload-artifact@v2.3.1
+ # with:
+ # name: android-ci-build
+ # path: src/MauiBeach/bin/Release/net6.0-android/*Signed.a*
diff --git a/.github/workflows/pullrequest_ios.yml b/.github/workflows/pullrequest_ios.yml
new file mode 100644
index 00000000..c1661bb8
--- /dev/null
+++ b/.github/workflows/pullrequest_ios.yml
@@ -0,0 +1,46 @@
+name: Build & Test Pull Requests
+
+on:
+ pull_request:
+ branches:
+ - main
+
+env:
+ DOTNET_NOLOGO: true # Disable the .NET logo
+ DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true # Disable the .NET first time experience
+ DOTNET_CLI_TELEMETRY_OPTOUT: true # Disable sending .NET CLI telemetry
+
+jobs:
+# MAUI iOS Build
+ build-ios:
+ runs-on: macos-11
+ name: iOS Build
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v2
+
+ - name: Setup .NET 6
+ uses: actions/setup-dotnet@v1
+ with:
+ dotnet-version: 6.0.200-preview.22055.15
+ include-prerelease: true
+
+ #- name: Install MAUI Workloads
+ # run: |
+ # dotnet workload install ios --ignore-failed-sources
+ # dotnet workload install maui --ignore-failed-sources
+
+ #- name: Restore Dependencies
+ # run: dotnet restore TransactionMobile.Maui.sln
+
+ #- name: Build Code
+ # run: dotnet build TransactionMobile.Maui.sln -c Release -f net6.0-ios --no-restore
+
+ #- name: Run Unit Tests
+ # run: dotnet test TransactionMobile.Maui.Tests/TransactionMobile.Maui.Tests.csproj
+
+ #- name: Upload iOS Artifact
+ # uses: actions/upload-artifact@v2.3.1
+ # with:
+ # name: ios-ci-build
+ # path: src/MauiBeach/bin/Release/net6.0-ios/**/*.app/
diff --git a/.github/workflows/pullrequest_maccatalyst.yml b/.github/workflows/pullrequest_maccatalyst.yml
new file mode 100644
index 00000000..82ee16e1
--- /dev/null
+++ b/.github/workflows/pullrequest_maccatalyst.yml
@@ -0,0 +1,43 @@
+name: Build & Test Pull Requests
+
+on:
+ pull_request:
+ branches:
+ - main
+
+env:
+ DOTNET_NOLOGO: true # Disable the .NET logo
+ DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true # Disable the .NET first time experience
+ DOTNET_CLI_TELEMETRY_OPTOUT: true # Disable sending .NET CLI telemetry
+
+jobs:
+ # MAUI MacCatalyst Build
+ build-mac:
+ runs-on: macos-11
+ name: MacCatalyst Build
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v2
+
+ - name: Setup .NET 6
+ uses: actions/setup-dotnet@v1
+ with:
+ dotnet-version: 6.0.200-preview.22055.15
+ include-prerelease: true
+
+# - name: Install MAUI Workloads
+# run: |
+# dotnet workload install maccatalyst --ignore-failed-sources
+# dotnet workload install maui --ignore-failed-sources
+
+# - name: Restore Dependencies
+# run: dotnet restore TransactionMobile.Maui.sln
+
+# - name: Build Code
+# run: dotnet build TransactionMobile.Maui.sln -c Release -f net6.0-maccatalyst --no-restore
+
+# #- name: Upload MacCatalyst Artifact
+# # uses: actions/upload-artifact@v2.3.1
+# # with:
+# # name: macos-ci-build
+# # path: src/MauiBeach/bin/Release/net6.0-maccatalyst/**/*.app/
diff --git a/.github/workflows/pullrequest_windows.yml b/.github/workflows/pullrequest_windows.yml
new file mode 100644
index 00000000..15e103f6
--- /dev/null
+++ b/.github/workflows/pullrequest_windows.yml
@@ -0,0 +1,49 @@
+name: Build & Test Pull Requests
+
+on:
+ pull_request:
+ branches:
+ - main
+
+env:
+ DOTNET_NOLOGO: true # Disable the .NET logo
+ DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true # Disable the .NET first time experience
+ DOTNET_CLI_TELEMETRY_OPTOUT: true # Disable sending .NET CLI telemetry
+
+jobs:
+ build-windows:
+ runs-on: windows-2022
+ name: Windows Build
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v2
+
+ - name: Setup .NET 6
+ uses: actions/setup-dotnet@v1
+ with:
+ dotnet-version: 6.0.200-preview.22055.15
+ include-prerelease: true
+
+ - name: Setup MSBuild
+ uses: microsoft/setup-msbuild@v1.1
+ with:
+ vs-prerelease: true
+
+ # - name: Install MAUI Workloads
+ # run: |
+ # dotnet workload install maui --ignore-failed-sources
+
+ # - name: Restore Dependencies
+ # run: dotnet restore TransactionMobile.Maui.sln
+
+ # - name: Build Code
+ # run: msbuild TransactionMobile.Maui/TransactionMobile.Maui.csproj -r -p:Configuration=Release -p:RestorePackages=false -p:TargetFramework=net6.0-windows10.0.19041 /p:GenerateAppxPackageOnBuild=true
+
+ # - name: Run Unit Tests
+ # run: dotnet test TransactionMobile.Maui.Tests/TransactionMobile.Maui.Tests.csproj
+
+ # #- name: Upload Windows Artifact
+ # # uses: actions/upload-artifact@v2.3.1
+ # # with:
+ # # name: windows-ci-build
+ # # path: src/MauiBeach/bin/Release/net6.0-windows*/**/MauiBeach*.msix
diff --git a/.github/workflows/release-management.yml b/.github/workflows/release-management.yml
new file mode 100644
index 00000000..79b12044
--- /dev/null
+++ b/.github/workflows/release-management.yml
@@ -0,0 +1,16 @@
+name: Release Management
+
+on:
+ push:
+ # branches to consider in the event; optional, defaults to all
+ branches:
+ - master
+
+jobs:
+ update_draft_release:
+ runs-on: ubuntu-latest
+ steps:
+ # Drafts your next Release notes as Pull Requests are merged into "master"
+ - uses: toolmantim/release-drafter@v5.12.1
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
diff --git a/TransactionMobile.Maui.Tests/TransactionMobile.Maui.Tests.csproj b/TransactionMobile.Maui.Tests/TransactionMobile.Maui.Tests.csproj
new file mode 100644
index 00000000..9f77f5f6
--- /dev/null
+++ b/TransactionMobile.Maui.Tests/TransactionMobile.Maui.Tests.csproj
@@ -0,0 +1,23 @@
+
+
+
+ net6.0
+ enable
+
+ false
+
+
+
+
+
+
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+ all
+
+
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+ all
+
+
+
+
diff --git a/TransactionMobile.Maui.Tests/UnitTest1.cs b/TransactionMobile.Maui.Tests/UnitTest1.cs
new file mode 100644
index 00000000..bba0242c
--- /dev/null
+++ b/TransactionMobile.Maui.Tests/UnitTest1.cs
@@ -0,0 +1,13 @@
+using Xunit;
+
+namespace TransactionMobile.Maui.Tests
+{
+ public class UnitTest1
+ {
+ [Fact]
+ public void Test1()
+ {
+
+ }
+ }
+}
\ No newline at end of file
diff --git a/TransactionMobile.Maui.sln b/TransactionMobile.Maui.sln
index ba7253f9..ea86972a 100644
--- a/TransactionMobile.Maui.sln
+++ b/TransactionMobile.Maui.sln
@@ -5,6 +5,12 @@ VisualStudioVersion = 17.0.31611.283
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TransactionMobile.Maui", "TransactionMobile.Maui\TransactionMobile.Maui.csproj", "{73668181-7A26-435D-83E3-CF141AC8FD0B}"
EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{1CBEF4C1-7D90-4A78-AA55-D81F1447A70E}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{AB312EE3-CBA4-469A-8694-67C5466298C5}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TransactionMobile.Maui.Tests", "TransactionMobile.Maui.Tests\TransactionMobile.Maui.Tests.csproj", "{BD64046D-7103-44E6-8453-46C895A2AB93}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -17,10 +23,18 @@ Global
{73668181-7A26-435D-83E3-CF141AC8FD0B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{73668181-7A26-435D-83E3-CF141AC8FD0B}.Release|Any CPU.Build.0 = Release|Any CPU
{73668181-7A26-435D-83E3-CF141AC8FD0B}.Release|Any CPU.Deploy.0 = Release|Any CPU
+ {BD64046D-7103-44E6-8453-46C895A2AB93}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {BD64046D-7103-44E6-8453-46C895A2AB93}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {BD64046D-7103-44E6-8453-46C895A2AB93}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {BD64046D-7103-44E6-8453-46C895A2AB93}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {73668181-7A26-435D-83E3-CF141AC8FD0B} = {1CBEF4C1-7D90-4A78-AA55-D81F1447A70E}
+ {BD64046D-7103-44E6-8453-46C895A2AB93} = {AB312EE3-CBA4-469A-8694-67C5466298C5}
+ EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {61F7FB11-1E47-470C-91E2-47F8143E1572}
EndGlobalSection
diff --git a/TransactionMobile.Maui/Platforms/iOS/Info.plist b/TransactionMobile.Maui/Platforms/iOS/Info.plist
index 0004a4fd..c894f847 100644
--- a/TransactionMobile.Maui/Platforms/iOS/Info.plist
+++ b/TransactionMobile.Maui/Platforms/iOS/Info.plist
@@ -28,5 +28,7 @@
XSAppIconAssets
Assets.xcassets/appicon.appiconset
+ CFBundleIdentifier
+ com.transactionprocessing.transactionmobile
diff --git a/TransactionMobile.Maui/TransactionMobile.Maui.csproj b/TransactionMobile.Maui/TransactionMobile.Maui.csproj
index d9283523..32a297e8 100644
--- a/TransactionMobile.Maui/TransactionMobile.Maui.csproj
+++ b/TransactionMobile.Maui/TransactionMobile.Maui.csproj
@@ -93,4 +93,7 @@
win10-x64
+