Skip to content

Commit c9d8f32

Browse files
authored
Merge pull request #6 from IGRSoft/claude/add-restore-overlay-3lNIJ
Claude/add restore overlay 3l nij
2 parents 823420a + 35a1935 commit c9d8f32

18 files changed

Lines changed: 407 additions & 88 deletions

File tree

.context/notes.md

Whitespace-only changes.

.context/todos.md

Whitespace-only changes.

Example/DeveloperSupportStoreExample.xcodeproj/project.pbxproj

Lines changed: 8 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,7 @@
77
objects = {
88

99
/* Begin PBXBuildFile section */
10-
8B41F6832DEDD23B001A66F9 /* DeveloperSupportStoreExampleFeature in Frameworks */ = {isa = PBXBuildFile; productRef = 8B41F6822DEDD23B001A66F9 /* DeveloperSupportStoreExampleFeature */; };
11-
8B41F6852DEDD25C001A66F9 /* DeveloperSupportStoreExampleFeature in Frameworks */ = {isa = PBXBuildFile; productRef = 8B41F6842DEDD25C001A66F9 /* DeveloperSupportStoreExampleFeature */; };
10+
A5AEF7AE2F164C9E00186E81 /* DeveloperSupportStore in Frameworks */ = {isa = PBXBuildFile; productRef = A5AEF7AD2F164C9E00186E81 /* DeveloperSupportStore */; };
1211
/* End PBXBuildFile section */
1312

1413
/* Begin PBXContainerItemProxy section */
@@ -65,15 +64,14 @@
6564
isa = PBXFrameworksBuildPhase;
6665
buildActionMask = 2147483647;
6766
files = (
68-
8B41F6852DEDD25C001A66F9 /* DeveloperSupportStoreExampleFeature in Frameworks */,
67+
A5AEF7AE2F164C9E00186E81 /* DeveloperSupportStore in Frameworks */,
6968
);
7069
runOnlyForDeploymentPostprocessing = 0;
7170
};
7271
8B41F6592DEDD0D6001A66F9 /* Frameworks */ = {
7372
isa = PBXFrameworksBuildPhase;
7473
buildActionMask = 2147483647;
7574
files = (
76-
8B41F6832DEDD23B001A66F9 /* DeveloperSupportStoreExampleFeature in Frameworks */,
7775
);
7876
runOnlyForDeploymentPostprocessing = 0;
7977
};
@@ -128,7 +126,7 @@
128126
);
129127
name = DeveloperSupportStoreExample;
130128
packageProductDependencies = (
131-
8B41F6842DEDD25C001A66F9 /* DeveloperSupportStoreExampleFeature */,
129+
A5AEF7AD2F164C9E00186E81 /* DeveloperSupportStore */,
132130
);
133131
productName = DeveloperSupportStoreExample;
134132
productReference = 8B41F6452DEDD0D5001A66F9 /* DeveloperSupportStoreExample.app */;
@@ -152,7 +150,6 @@
152150
);
153151
name = DeveloperSupportStoreExampleUITests;
154152
packageProductDependencies = (
155-
8B41F6822DEDD23B001A66F9 /* DeveloperSupportStoreExampleFeature */,
156153
);
157154
productName = DeveloperSupportStoreExampleUITests;
158155
productReference = 8B41F65C2DEDD0D6001A66F9 /* DeveloperSupportStoreExample.xctest */;
@@ -187,7 +184,7 @@
187184
mainGroup = 8B41F63C2DEDD0D5001A66F9;
188185
minimizedProjectReferenceProxies = 1;
189186
packageReferences = (
190-
8B41F6862DEE0000001A66F9 /* XCLocalSwiftPackageReference "DeveloperSupportStoreExamplePackage" */,
187+
A5AEF7AC2F164C9E00186E81 /* XCLocalSwiftPackageReference "../" */,
191188
);
192189
preferredProjectObjectVersion = 77;
193190
productRefGroup = 8B41F6462DEDD0D5001A66F9 /* Products */;
@@ -477,22 +474,16 @@
477474
/* End XCConfigurationList section */
478475

479476
/* Begin XCLocalSwiftPackageReference section */
480-
8B41F6862DEE0000001A66F9 /* XCLocalSwiftPackageReference "DeveloperSupportStoreExamplePackage" */ = {
477+
A5AEF7AC2F164C9E00186E81 /* XCLocalSwiftPackageReference "../" */ = {
481478
isa = XCLocalSwiftPackageReference;
482-
relativePath = DeveloperSupportStoreExamplePackage;
479+
relativePath = "../";
483480
};
484481
/* End XCLocalSwiftPackageReference section */
485482

486483
/* Begin XCSwiftPackageProductDependency section */
487-
8B41F6822DEDD23B001A66F9 /* DeveloperSupportStoreExampleFeature */ = {
484+
A5AEF7AD2F164C9E00186E81 /* DeveloperSupportStore */ = {
488485
isa = XCSwiftPackageProductDependency;
489-
package = 8B41F6862DEE0000001A66F9 /* XCLocalSwiftPackageReference "DeveloperSupportStoreExamplePackage" */;
490-
productName = DeveloperSupportStoreExampleFeature;
491-
};
492-
8B41F6842DEDD25C001A66F9 /* DeveloperSupportStoreExampleFeature */ = {
493-
isa = XCSwiftPackageProductDependency;
494-
package = 8B41F6862DEE0000001A66F9 /* XCLocalSwiftPackageReference "DeveloperSupportStoreExamplePackage" */;
495-
productName = DeveloperSupportStoreExampleFeature;
486+
productName = DeveloperSupportStore;
496487
};
497488
/* End XCSwiftPackageProductDependency section */
498489
};

Example/DeveloperSupportStoreExample.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved

Lines changed: 24 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Example/DeveloperSupportStoreExample.xcworkspace/contents.xcworkspacedata

Lines changed: 0 additions & 10 deletions
This file was deleted.

Example/DeveloperSupportStoreExamplePackage/Sources/DeveloperSupportStoreExampleFeature/ContentView.swift renamed to Example/DeveloperSupportStoreExample/ContentView.swift

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,14 +28,15 @@ public struct ExampleStoreConfiguration: StoreConfigurationProtocol {
2828

2929
public struct ContentView: View {
3030
@State private var isStorePresented = false
31-
31+
@State private var storeService: StoreServiceProtocol = StoreService(isLoggingEnabled: true)
3232
private let configuration = ExampleStoreConfiguration()
3333

3434
public var body: some View {
3535
launcherView
3636
.sheet(isPresented: $isStorePresented) {
3737
DeveloperSupportStoreView(
3838
configuration: configuration,
39+
storeService: storeService,
3940
onPurchaseSuccess: { productId in
4041
print("Purchase successful: \(productId)")
4142
},
@@ -44,14 +45,23 @@ public struct ContentView: View {
4445
}
4546
)
4647
}
48+
.task {
49+
try? await storeService.syncStoreData()
50+
}
4751
}
4852

4953
@ViewBuilder
5054
private var launcherView: some View {
5155
VStack(spacing: 24) {
52-
Image(systemName: "heart.fill")
53-
.font(.system(size: 64))
54-
.foregroundStyle(.pink)
56+
HStack {
57+
Image(systemName: "heart.fill")
58+
.font(.system(size: 64))
59+
.foregroundStyle(storeService.hasPurchasedProducts ? .green : .pink)
60+
61+
Image(systemName: "heart.fill")
62+
.font(.system(size: 64))
63+
.foregroundStyle( storeService.hasActiveSubscription ? .green : .pink)
64+
}
5565

5666
Text("DeveloperSupportStore")
5767
.font(.title)

Example/DeveloperSupportStoreExample/DeveloperSupportStoreExampleApp.swift

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import SwiftUI
2-
import DeveloperSupportStoreExampleFeature
32

43
@main
54
struct DeveloperSupportStoreExampleApp: App {

Example/DeveloperSupportStoreExamplePackage/.gitignore

Lines changed: 0 additions & 8 deletions
This file was deleted.

Example/DeveloperSupportStoreExamplePackage/Package.swift

Lines changed: 0 additions & 32 deletions
This file was deleted.

Example/DeveloperSupportStoreExamplePackage/Tests/DeveloperSupportStoreExampleFeatureTests/DeveloperSupportStoreExampleFeatureTests.swift

Lines changed: 0 additions & 6 deletions
This file was deleted.

0 commit comments

Comments
 (0)