Add Contribution view with review and donation buttons

This commit is contained in:
maddiebaka
2023-12-20 20:35:44 -05:00
parent be9856a002
commit 32b3ab5ee1
7 changed files with 434 additions and 5 deletions

View File

@@ -37,11 +37,14 @@
7E943A2A273211C300E7DDF4 /* Persistence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E943A29273211C300E7DDF4 /* Persistence.swift */; };
7E943A2D273211C300E7DDF4 /* Toki_Trainer.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = 7E943A2B273211C300E7DDF4 /* Toki_Trainer.xcdatamodeld */; };
7EF546162737B8FB00537AE6 /* FlashCardResultsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7EF546152737B8FA00537AE6 /* FlashCardResultsView.swift */; };
C13909F62B30ACC300B235EE /* TransactionObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = C13909F52B30ACC300B235EE /* TransactionObserver.swift */; };
C13FCE342A9D170B00E8976B /* toki-dictionary.json in Resources */ = {isa = PBXBuildFile; fileRef = C13FCE372A9D170B00E8976B /* toki-dictionary.json */; };
C13FCE352A9D170B00E8976B /* toki-dictionary.json in Resources */ = {isa = PBXBuildFile; fileRef = C13FCE372A9D170B00E8976B /* toki-dictionary.json */; };
C13FCE382A9D171300E8976B /* toki-lessons.json in Resources */ = {isa = PBXBuildFile; fileRef = C13FCE3A2A9D171300E8976B /* toki-lessons.json */; };
C13FCE3B2A9D171600E8976B /* toki-partsofspeech.json in Resources */ = {isa = PBXBuildFile; fileRef = C13FCE3D2A9D171600E8976B /* toki-partsofspeech.json */; };
C19DAB4E2AB38F2C00B17941 /* Localizable.xcstrings in Resources */ = {isa = PBXBuildFile; fileRef = C19DAB4D2AB38F2C00B17941 /* Localizable.xcstrings */; };
C1A70F5D2B2D78B300CDE5C8 /* ContributeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C1A70F5C2B2D78B200CDE5C8 /* ContributeView.swift */; };
C1A70F5F2B2D900200CDE5C8 /* StoreKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C1A70F5E2B2D900200CDE5C8 /* StoreKit.framework */; };
E1A8B364290B905600B53385 /* ViewExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1A8B363290B905600B53385 /* ViewExtensions.swift */; };
E1D79AE328EC396200A104BF /* DictionaryView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1D79AE228EC396200A104BF /* DictionaryView.swift */; };
E1D79AE528F1914600A104BF /* TranslatorView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1D79AE428F1914600A104BF /* TranslatorView.swift */; };
@@ -101,6 +104,7 @@
7E943A29273211C300E7DDF4 /* Persistence.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Persistence.swift; sourceTree = "<group>"; };
7E943A2C273211C300E7DDF4 /* Toki_Trainer.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = Toki_Trainer.xcdatamodel; sourceTree = "<group>"; };
7EF546152737B8FA00537AE6 /* FlashCardResultsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FlashCardResultsView.swift; sourceTree = "<group>"; };
C13909F52B30ACC300B235EE /* TransactionObserver.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TransactionObserver.swift; sourceTree = "<group>"; };
C13FCE362A9D170B00E8976B /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.json; name = Base; path = "Base.lproj/toki-dictionary.json"; sourceTree = "<group>"; };
C13FCE392A9D171300E8976B /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.json; name = Base; path = "Base.lproj/toki-lessons.json"; sourceTree = "<group>"; };
C13FCE3C2A9D171600E8976B /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.json; name = Base; path = "Base.lproj/toki-partsofspeech.json"; sourceTree = "<group>"; };
@@ -112,6 +116,8 @@
C13FCE432A9D181B00E8976B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.json; name = fr; path = "fr.lproj/toki-partsofspeech.json"; sourceTree = "<group>"; };
C18C977E2B07FC9C0049EEF6 /* Toki-Trainer-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = "Toki-Trainer-Info.plist"; sourceTree = SOURCE_ROOT; };
C19DAB4D2AB38F2C00B17941 /* Localizable.xcstrings */ = {isa = PBXFileReference; lastKnownFileType = text.json.xcstrings; path = Localizable.xcstrings; sourceTree = "<group>"; };
C1A70F5C2B2D78B200CDE5C8 /* ContributeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContributeView.swift; sourceTree = "<group>"; };
C1A70F5E2B2D900200CDE5C8 /* StoreKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = StoreKit.framework; path = System/Library/Frameworks/StoreKit.framework; sourceTree = SDKROOT; };
E1A8B363290B905600B53385 /* ViewExtensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewExtensions.swift; sourceTree = "<group>"; };
E1D79AE228EC396200A104BF /* DictionaryView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DictionaryView.swift; sourceTree = "<group>"; };
E1D79AE428F1914600A104BF /* TranslatorView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TranslatorView.swift; sourceTree = "<group>"; };
@@ -133,6 +139,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
C1A70F5F2B2D900200CDE5C8 /* StoreKit.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -146,6 +153,7 @@
7E2811152733027F0063DC78 /* TokiJSONLoader.swift */,
7E2811162733027F0063DC78 /* TokiPartOfSpeech.swift */,
7E716B3D273986E5009E2CF6 /* TokiLesson.swift */,
C13909F52B30ACC300B235EE /* TransactionObserver.swift */,
);
path = Models;
sourceTree = "<group>";
@@ -159,6 +167,7 @@
7E71E6EC2735D70C007CFF72 /* FlashCardView.swift */,
7EF546152737B8FA00537AE6 /* FlashCardResultsView.swift */,
7E716B4127398CDF009E2CF6 /* FlashCardLessonsView.swift */,
C1A70F5C2B2D78B200CDE5C8 /* ContributeView.swift */,
);
path = Views;
sourceTree = "<group>";
@@ -186,6 +195,7 @@
7E449773275AA0600016B6DC /* Frameworks */ = {
isa = PBXGroup;
children = (
C1A70F5E2B2D900200CDE5C8 /* StoreKit.framework */,
7E449774275AA0600016B6DC /* WidgetKit.framework */,
7E449776275AA0600016B6DC /* SwiftUI.framework */,
);
@@ -400,7 +410,9 @@
buildActionMask = 2147483647;
files = (
7E943A2D273211C300E7DDF4 /* Toki_Trainer.xcdatamodeld in Sources */,
C1A70F5D2B2D78B300CDE5C8 /* ContributeView.swift in Sources */,
7E943A2A273211C300E7DDF4 /* Persistence.swift in Sources */,
C13909F62B30ACC300B235EE /* TransactionObserver.swift in Sources */,
7E20D5FF2733AFE700D75B9A /* PartsOfSpeechView.swift in Sources */,
7E71E6F12736DAE4007CFF72 /* FlashCardsViewModel.swift in Sources */,
E1D79AEB28F194EF00A104BF /* LanguageDirectionView.swift in Sources */,
@@ -574,7 +586,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
ONLY_ACTIVE_ARCH = YES;
@@ -630,7 +642,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
MTL_ENABLE_DEBUG_INFO = NO;
MTL_FAST_MATH = YES;
SDKROOT = iphoneos;
@@ -661,6 +673,7 @@
INFOPLIST_KEY_UILaunchScreen_Generation = YES;
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
@@ -695,6 +708,7 @@
INFOPLIST_KEY_UILaunchScreen_Generation = YES;
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",

View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Bucket
uuid = "40DDD45F-6012-439E-A226-7CACD11FE451"
type = "1"
version = "2.0">
</Bucket>