diff --git a/README.md b/README.md new file mode 100644 index 0000000..70b64b5 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# iwatchportfoliotracker \ No newline at end of file diff --git a/TrackerWidget/Assets.xcassets/AccentColor.colorset/Contents.json b/TrackerWidget/Assets.xcassets/AccentColor.colorset/Contents.json deleted file mode 100644 index eb87897..0000000 --- a/TrackerWidget/Assets.xcassets/AccentColor.colorset/Contents.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "colors" : [ - { - "idiom" : "universal" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/TrackerWidget/Assets.xcassets/AppIcon.appiconset/1024.png b/TrackerWidget/Assets.xcassets/AppIcon.appiconset/1024.png deleted file mode 100644 index af5310e..0000000 Binary files a/TrackerWidget/Assets.xcassets/AppIcon.appiconset/1024.png and /dev/null differ diff --git a/TrackerWidget/Assets.xcassets/AppIcon.appiconset/Contents.json b/TrackerWidget/Assets.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index 113d821..0000000 --- a/TrackerWidget/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "images" : [ - { - "filename" : "1024.png", - "idiom" : "universal", - "platform" : "watchos", - "size" : "1024x1024" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/TrackerWidget/Assets.xcassets/Contents.json b/TrackerWidget/Assets.xcassets/Contents.json deleted file mode 100644 index 73c0059..0000000 --- a/TrackerWidget/Assets.xcassets/Contents.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/TrackerWidget/Assets.xcassets/WidgetBackground.colorset/Contents.json b/TrackerWidget/Assets.xcassets/WidgetBackground.colorset/Contents.json deleted file mode 100644 index eb87897..0000000 --- a/TrackerWidget/Assets.xcassets/WidgetBackground.colorset/Contents.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "colors" : [ - { - "idiom" : "universal" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/TrackerWidget/Assets.xcassets/icon.imageset/Contents.json b/TrackerWidget/Assets.xcassets/icon.imageset/Contents.json deleted file mode 100644 index dd9e55c..0000000 --- a/TrackerWidget/Assets.xcassets/icon.imageset/Contents.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "images" : [ - { - "filename" : "icon.pdf", - "idiom" : "universal" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/TrackerWidget/Assets.xcassets/icon.imageset/icon.pdf b/TrackerWidget/Assets.xcassets/icon.imageset/icon.pdf deleted file mode 100644 index b7732b8..0000000 Binary files a/TrackerWidget/Assets.xcassets/icon.imageset/icon.pdf and /dev/null differ diff --git a/TrackerWidget/Info.plist b/TrackerWidget/Info.plist deleted file mode 100644 index 0f118fb..0000000 --- a/TrackerWidget/Info.plist +++ /dev/null @@ -1,11 +0,0 @@ - - - - - NSExtension - - NSExtensionPointIdentifier - com.apple.widgetkit-extension - - - diff --git a/TrackerWidget/TrackerWidget.swift b/TrackerWidget/TrackerWidget.swift deleted file mode 100644 index 35650ec..0000000 --- a/TrackerWidget/TrackerWidget.swift +++ /dev/null @@ -1,144 +0,0 @@ -// -// Widget.swift -// Widget -// -// Created by Никита Иванов on 03.10.2023. -// - -import WidgetKit -import SwiftUI - -struct BalanceWidgetEntry: TimelineEntry { - let date: Date - let balance: Double -} - -struct BalanceWidgetProvider: TimelineProvider { - typealias Entry = BalanceWidgetEntry - - - func placeholder(in context: Context) -> BalanceWidgetEntry { - BalanceWidgetEntry(date: Date(), balance: 10000.0) - } - - func getSnapshot(in context: Context, completion: @escaping (BalanceWidgetEntry) -> Void) { - let currentDate = Date() - - fetchBalance{ totalUsd in - let entry = BalanceWidgetEntry(date: currentDate, balance: totalUsd) - - completion(entry) - } - - - } - - func getTimeline(in context: Context, completion: @escaping (Timeline) -> Void) { - let currentDate = Date() - let refreshDate = Calendar.current.date(byAdding: .hour, value: 1, to: currentDate)! - - fetchBalance{ totalUsd in - let entry = BalanceWidgetEntry(date: currentDate, balance: totalUsd) - let timeline = Timeline(entries: [entry], policy: .after(refreshDate)) - completion(timeline) - } - - } - - - private func fetchBalance(completion: @escaping (Double) -> Void) { - let wallet = UserDefaults(suiteName:"group.org.onout")?.string(forKey: "wallet") ?? "0x873351e707257C28eC6fAB1ADbc850480f6e0633" - print("fetch balance") - print(wallet) - - - guard let url = URL(string: "https://dashapi.onout.org/debank?address=\(wallet)&app=itracker") else { - return - } - - URLSession.shared.dataTask(with: url) { data, response, error in - guard let data = data else { - return - } - - do { - let json = try JSONSerialization.jsonObject(with: data, options: []) - if let dict = json as? [String: Any], let totalUsd = dict["total_usd"] as? Double { - DispatchQueue.main.async { - UserDefaults.standard.set(totalUsd, forKey: "balance") - completion(totalUsd) - } - } - } catch { - print(error.localizedDescription) - } - }.resume() - } -} - -struct BalanceWidgetView: View { - var entry: BalanceWidgetProvider.Entry - - var body: some View { - VStack{ - Spacer() - Image("icon") - .resizable() - .frame(width: 10, height: 10) - Text("$\(formatInt(number: Int(entry.balance)))") - .font(.system(size: 16)) - .bold() - .minimumScaleFactor(0.5) - .frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .center) - Spacer() - Spacer() - - - } - - - - - } - - private func formatInt(number: Int) -> String{ - let formatter = NumberFormatter() - formatter.numberStyle = .decimal - formatter.maximumFractionDigits = 1 - formatter.minimumFractionDigits = 0 - let suffixes = ["", "k", "M", "B", "T"] - var suffixIndex = 0 - var value = Double(number) - while value >= 1000 && suffixIndex < suffixes.count - 1 { - value /= 1000 - suffixIndex += 1 - } - let formattedNumber = formatter.string(from: NSNumber(value: value)) ?? "" - let suffix = suffixes[suffixIndex] - let result = "\(formattedNumber)\(suffix)" - return result - } - - -} - -@main -struct BalanceWidget: Widget { - let kind: String = "BalanceWidget" - - var body: some WidgetConfiguration { - StaticConfiguration(kind: kind, provider: BalanceWidgetProvider()) { entry in - BalanceWidgetView(entry: entry) - } - .configurationDisplayName("Balance Widget") - .description("Displays the balance from the Onout app.") - - } -} - -struct BalanceWidget_Previews: PreviewProvider { - static var previews: some View { - BalanceWidgetView(entry: BalanceWidgetEntry(date: Date(), balance: 100.0)) - - } -} diff --git a/TrackerWidgetExtension.entitlements b/TrackerWidgetExtension.entitlements deleted file mode 100644 index d024afc..0000000 --- a/TrackerWidgetExtension.entitlements +++ /dev/null @@ -1,10 +0,0 @@ - - - - - com.apple.security.application-groups - - group.org.onout - - - diff --git a/apple-watch-portfolio-tracker Watch App/Assets.xcassets/AccentColor.colorset/Contents.json b/apple-watch-portfolio-tracker Watch App/Assets.xcassets/AccentColor.colorset/Contents.json deleted file mode 100644 index eb87897..0000000 --- a/apple-watch-portfolio-tracker Watch App/Assets.xcassets/AccentColor.colorset/Contents.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "colors" : [ - { - "idiom" : "universal" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/apple-watch-portfolio-tracker Watch App/Assets.xcassets/AppIcon.appiconset/1024.png b/apple-watch-portfolio-tracker Watch App/Assets.xcassets/AppIcon.appiconset/1024.png deleted file mode 100644 index af5310e..0000000 Binary files a/apple-watch-portfolio-tracker Watch App/Assets.xcassets/AppIcon.appiconset/1024.png and /dev/null differ diff --git a/apple-watch-portfolio-tracker Watch App/Assets.xcassets/AppIcon.appiconset/Contents.json b/apple-watch-portfolio-tracker Watch App/Assets.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index 113d821..0000000 --- a/apple-watch-portfolio-tracker Watch App/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "images" : [ - { - "filename" : "1024.png", - "idiom" : "universal", - "platform" : "watchos", - "size" : "1024x1024" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/apple-watch-portfolio-tracker Watch App/Assets.xcassets/Contents.json b/apple-watch-portfolio-tracker Watch App/Assets.xcassets/Contents.json deleted file mode 100644 index 73c0059..0000000 --- a/apple-watch-portfolio-tracker Watch App/Assets.xcassets/Contents.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/apple-watch-portfolio-tracker Watch App/BalanceModel.swift b/apple-watch-portfolio-tracker Watch App/BalanceModel.swift deleted file mode 100644 index 2f1a40d..0000000 --- a/apple-watch-portfolio-tracker Watch App/BalanceModel.swift +++ /dev/null @@ -1,16 +0,0 @@ -// -// BalanceModel.swift -// apple-watch-portfolio-tracker Watch App -// -// Created by Никита Иванов on 24.10.2023. -// - -import Foundation - -struct BalanceModel: Codable { - let totalUsd: Double - - enum CodingKeys: String, CodingKey { - case totalUsd = "total_usd" - } -} diff --git a/apple-watch-portfolio-tracker Watch App/BalanceViewModel.swift b/apple-watch-portfolio-tracker Watch App/BalanceViewModel.swift deleted file mode 100644 index 7c6379a..0000000 --- a/apple-watch-portfolio-tracker Watch App/BalanceViewModel.swift +++ /dev/null @@ -1,129 +0,0 @@ -// -// BalanceViewModel.swift -// Onout Watch App -// -// Created by Никита Иванов on 03.10.2023. -// - -import Foundation -import WidgetKit - - - -class BalanceViewModel: ObservableObject { - @Published var balance = 0.0 - @Published var wallet = "" - - struct Wallet: Codable { - let address: String - } - - - init() { - self.wallet = UserDefaults(suiteName:"group.org.onout")?.string(forKey: "wallet") ?? "0x873351e707257C28eC6fAB1ADbc850480f6e0633" - self.balance = UserDefaults(suiteName:"group.org.onout")?.double(forKey: "balance") ?? Double(0) - fetchBalance() - } - - func updateWallet(wallet: String) { - UserDefaults(suiteName:"group.org.onout")?.set(wallet, forKey: "wallet") - self.wallet = wallet - fetchBalance() - WidgetCenter.shared.reloadAllTimelines() - } - - - func fetchBalance() { - self.wallet = UserDefaults(suiteName:"group.org.onout")?.string(forKey: "wallet") ?? "0x873351e707257C28eC6fAB1ADbc850480f6e0633" - - guard let url = URL(string: "https://dashapi.onout.org/debank?address=\(self.wallet)&app=itracker") else { - return - } - - URLSession.shared.dataTask(with: url) { data, response, error in - guard let data = data else { - return - } - - do { - let json = try JSONSerialization.jsonObject(with: data, options: []) - if let dict = json as? [String: Any], let totalUsd = dict["total_usd"] as? Double { - DispatchQueue.main.async { - self.balance = totalUsd - UserDefaults(suiteName:"group.org.onout")?.set(totalUsd, forKey: "balance") - - - } - } - } catch { - print(error.localizedDescription) - } - }.resume() - } - - func fetchBalance(completion: @escaping (Double) -> Void) { - self.wallet = UserDefaults(suiteName:"group.org.onout")?.string(forKey: "wallet") - ?? "0x873351e707257C28eC6fAB1ADbc850480f6e0633" - - - guard let url = URL(string: "https://dashapi.onout.org/debank?address=\(self.wallet)&app=itracker") else { - return - } - - URLSession.shared.dataTask(with: url) { data, response, error in - guard let data = data else { - return - } - - do { - let json = try JSONSerialization.jsonObject(with: data, options: []) - if let dict = json as? [String: Any], let totalUsd = dict["total_usd"] as? Double { - DispatchQueue.main.async { - self.balance = totalUsd - UserDefaults(suiteName:"group.org.onout")?.set(totalUsd, forKey: "balance") - completion(totalUsd) - } - } - } catch { - print(error.localizedDescription) - } - }.resume() - } - - - - func updateWalletByUUID(uuid: String, completion: @escaping (Wallet?) -> Void) { - let urlString = "https://tracker.onout.org/?a=getwallet&uuid=\(uuid)" - guard let url = URL(string: urlString) else { - completion(nil) - return - } - let task = URLSession.shared.dataTask(with: url) { (data, response, error) in - if let error = error { - print(error.localizedDescription) - DispatchQueue.main.asyncAfter(deadline: .now() + 3) { - self.updateWalletByUUID(uuid: uuid, completion: completion) - } - return - } - guard let data = data else { - DispatchQueue.main.asyncAfter(deadline: .now() + 3) { - self.updateWalletByUUID(uuid: uuid, completion: completion) - } - return - } - do { - let decoder = JSONDecoder() - let wallet = try decoder.decode(Wallet.self, from: data) - UserDefaults(suiteName:"group.org.onout")?.set(wallet.address, forKey: "wallet") - self.wallet = wallet.address - completion(wallet) - } catch { - DispatchQueue.main.asyncAfter(deadline: .now() + 2) { - self.updateWalletByUUID(uuid: uuid, completion: completion) - } - } - } - task.resume() - } -} diff --git a/apple-watch-portfolio-tracker Watch App/ContentView.swift b/apple-watch-portfolio-tracker Watch App/ContentView.swift deleted file mode 100644 index ede7004..0000000 --- a/apple-watch-portfolio-tracker Watch App/ContentView.swift +++ /dev/null @@ -1,41 +0,0 @@ -// -// ContentView.swift -// Onout Watch App -// -// Created by Никита Иванов on 03.10.2023. -// - -import SwiftUI - -struct ContentView: View { - @StateObject private var viewModel = BalanceViewModel() - - @State private var inputString = "" - @State private var showingInputDialog = false - - var body: some View { - NavigationView { - - VStack { - Text("Balance:") - .font(.headline) - .padding() - Text("$\(Int(viewModel.balance))") - .font(.title) - .padding() - - NavigationLink(destination: WalletInfoView(viewModel: self.viewModel)){ - Text("Address Information") - } - .padding() - } - } - } - - -} - - -#Preview { - ContentView() -} diff --git a/apple-watch-portfolio-tracker Watch App/Preview Content/Preview Assets.xcassets/Contents.json b/apple-watch-portfolio-tracker Watch App/Preview Content/Preview Assets.xcassets/Contents.json deleted file mode 100644 index 73c0059..0000000 --- a/apple-watch-portfolio-tracker Watch App/Preview Content/Preview Assets.xcassets/Contents.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/apple-watch-portfolio-tracker Watch App/WalletInfoView.swift b/apple-watch-portfolio-tracker Watch App/WalletInfoView.swift deleted file mode 100644 index c6dae13..0000000 --- a/apple-watch-portfolio-tracker Watch App/WalletInfoView.swift +++ /dev/null @@ -1,98 +0,0 @@ -// -// WalletInfoView.swift -// apple-watch-portfolio-tracker Watch App -// -// Created by Никита Иванов on 24.10.2023. -// - -import SwiftUI -import WatchKit -import EFQRCode - - - -struct WalletInfoView: View { - @ObservedObject var viewModel: BalanceViewModel - @State private var inputString = "" - @State private var showingInputDialog = false - - - - - var body: some View { - ScrollView{ - VStack { - - Text(viewModel.wallet) - .allowsTightening(true) - .font(.system(size: 12)) - .padding() - - - - TextField("Enter new Address", text: $inputString, onCommit: { - viewModel.updateWallet(wallet: inputString) - - }) - .textFieldStyle(.plain) - Text("or") - NavigationLink(destination: QRCodeView(viewModel: self.viewModel)) { - Text("Input New by QR Code") - } - - - } - } - .navigationTitle("Your Address") - } - - - - - -} - -struct QRCodeView: View { - - @ObservedObject var viewModel: BalanceViewModel - @Environment(\.presentationMode) var presentationMode - - private let uuidString = UUID().uuidString - - var body: some View { - VStack { - Text("Scan via Phone") - Image(uiImage: generateQRCode(from: uuidString)) - .interpolation(.none) - .resizable() - .scaledToFit() - } - .onAppear(){ - viewModel.updateWalletByUUID(uuid: uuidString, completion: {wallet in - DispatchQueue.main.async { - viewModel.updateWallet(wallet: wallet?.address ?? "") - presentationMode.wrappedValue.dismiss() - } - - }) - } - } - - - func generateQRCode(from string: String) -> UIImage { - let content = "https://tracker.onout.org/?a=form&uuid=\(string)" - let generator = EFQRCodeGenerator(content: content) - generator.withMode(Optional.none) - do { - let image = generator.generate()! - return UIImage(cgImage: image) - } catch { - print(error.localizedDescription) - return UIImage(systemName: "xmark.circle") ?? UIImage() - } - } -} - -#Preview { - WalletInfoView(viewModel: BalanceViewModel()) -} diff --git a/apple-watch-portfolio-tracker Watch App/WalletModel.swift b/apple-watch-portfolio-tracker Watch App/WalletModel.swift deleted file mode 100644 index 286e85e..0000000 --- a/apple-watch-portfolio-tracker Watch App/WalletModel.swift +++ /dev/null @@ -1,11 +0,0 @@ -// -// WalletModel.swift -// apple-watch-portfolio-tracker Watch App -// -// Created by Никита Иванов on 24.10.2023. -// - -import Foundation -struct Wallet: Codable { - let address: String -} diff --git a/apple-watch-portfolio-tracker Watch App/apple-watch-portfolio-tracker Watch App.entitlements b/apple-watch-portfolio-tracker Watch App/apple-watch-portfolio-tracker Watch App.entitlements deleted file mode 100644 index d024afc..0000000 --- a/apple-watch-portfolio-tracker Watch App/apple-watch-portfolio-tracker Watch App.entitlements +++ /dev/null @@ -1,10 +0,0 @@ - - - - - com.apple.security.application-groups - - group.org.onout - - - diff --git a/apple-watch-portfolio-tracker Watch App/apple_watch_portfolio_trackerApp.swift b/apple-watch-portfolio-tracker Watch App/apple_watch_portfolio_trackerApp.swift deleted file mode 100644 index a35970a..0000000 --- a/apple-watch-portfolio-tracker Watch App/apple_watch_portfolio_trackerApp.swift +++ /dev/null @@ -1,17 +0,0 @@ -// -// apple_watch_portfolio_trackerApp.swift -// apple-watch-portfolio-tracker Watch App -// -// Created by Никита Иванов on 24.10.2023. -// - -import SwiftUI - -@main -struct apple_watch_portfolio_tracker_Watch_AppApp: App { - var body: some Scene { - WindowGroup { - ContentView() - } - } -} diff --git a/apple-watch-portfolio-tracker.xcodeproj/project.pbxproj b/apple-watch-portfolio-tracker.xcodeproj/project.pbxproj deleted file mode 100644 index 16e562a..0000000 --- a/apple-watch-portfolio-tracker.xcodeproj/project.pbxproj +++ /dev/null @@ -1,681 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 56; - objects = { - -/* Begin PBXBuildFile section */ - A8488A3A2AE82EC800ECDFA1 /* Onout.app in Embed Watch Content */ = {isa = PBXBuildFile; fileRef = A8488A392AE82EC800ECDFA1 /* Onout.app */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; - A8488A3F2AE82EC800ECDFA1 /* apple_watch_portfolio_trackerApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8488A3E2AE82EC800ECDFA1 /* apple_watch_portfolio_trackerApp.swift */; }; - A8488A412AE82EC800ECDFA1 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8488A402AE82EC800ECDFA1 /* ContentView.swift */; }; - A8488A432AE82ECA00ECDFA1 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = A8488A422AE82ECA00ECDFA1 /* Assets.xcassets */; }; - A8488A462AE82ECA00ECDFA1 /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = A8488A452AE82ECA00ECDFA1 /* Preview Assets.xcassets */; }; - A8488A512AE82F2600ECDFA1 /* BalanceModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8488A502AE82F2600ECDFA1 /* BalanceModel.swift */; }; - A8488A532AE82F4B00ECDFA1 /* BalanceViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8488A522AE82F4B00ECDFA1 /* BalanceViewModel.swift */; }; - A8488A5B2AE82FD500ECDFA1 /* WidgetKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A8488A5A2AE82FD500ECDFA1 /* WidgetKit.framework */; }; - A8488A5D2AE82FD500ECDFA1 /* SwiftUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A8488A5C2AE82FD500ECDFA1 /* SwiftUI.framework */; }; - A8488A602AE82FD500ECDFA1 /* TrackerWidget.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8488A5F2AE82FD500ECDFA1 /* TrackerWidget.swift */; }; - A8488A642AE82FD600ECDFA1 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = A8488A632AE82FD600ECDFA1 /* Assets.xcassets */; }; - A8488A682AE82FD600ECDFA1 /* TrackerWidgetExtension.appex in Embed Foundation Extensions */ = {isa = PBXBuildFile; fileRef = A8488A582AE82FD500ECDFA1 /* TrackerWidgetExtension.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; - A8488A6D2AE8301600ECDFA1 /* BalanceViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8488A522AE82F4B00ECDFA1 /* BalanceViewModel.swift */; }; - A8488A6E2AE8301900ECDFA1 /* BalanceModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8488A502AE82F2600ECDFA1 /* BalanceModel.swift */; }; - A8488A702AE832D900ECDFA1 /* WalletInfoView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8488A6F2AE832D900ECDFA1 /* WalletInfoView.swift */; }; - A8B88CD62AE8556C00252351 /* EFQRCode in Frameworks */ = {isa = PBXBuildFile; productRef = A8B88CD52AE8556C00252351 /* EFQRCode */; }; - A8B88CD82AE859BA00252351 /* WalletModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8B88CD72AE859BA00252351 /* WalletModel.swift */; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - A8488A3B2AE82EC800ECDFA1 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = A8488A2D2AE82EC800ECDFA1 /* Project object */; - proxyType = 1; - remoteGlobalIDString = A8488A382AE82EC800ECDFA1; - remoteInfo = "apple-watch-portfolio-tracker Watch App"; - }; - A8488A662AE82FD600ECDFA1 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = A8488A2D2AE82EC800ECDFA1 /* Project object */; - proxyType = 1; - remoteGlobalIDString = A8488A572AE82FD500ECDFA1; - remoteInfo = TrackerWidgetExtension; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXCopyFilesBuildPhase section */ - A8488A4C2AE82ECA00ECDFA1 /* Embed Watch Content */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = "$(CONTENTS_FOLDER_PATH)/Watch"; - dstSubfolderSpec = 16; - files = ( - A8488A3A2AE82EC800ECDFA1 /* Onout.app in Embed Watch Content */, - ); - name = "Embed Watch Content"; - runOnlyForDeploymentPostprocessing = 0; - }; - A8488A6C2AE82FD600ECDFA1 /* Embed Foundation Extensions */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 13; - files = ( - A8488A682AE82FD600ECDFA1 /* TrackerWidgetExtension.appex in Embed Foundation Extensions */, - ); - name = "Embed Foundation Extensions"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - A8488A332AE82EC800ECDFA1 /* apple-watch-portfolio-tracker.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "apple-watch-portfolio-tracker.app"; sourceTree = BUILT_PRODUCTS_DIR; }; - A8488A392AE82EC800ECDFA1 /* Onout.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Onout.app; sourceTree = BUILT_PRODUCTS_DIR; }; - A8488A3E2AE82EC800ECDFA1 /* apple_watch_portfolio_trackerApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = apple_watch_portfolio_trackerApp.swift; sourceTree = ""; }; - A8488A402AE82EC800ECDFA1 /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = ""; }; - A8488A422AE82ECA00ECDFA1 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - A8488A452AE82ECA00ECDFA1 /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = ""; }; - A8488A502AE82F2600ECDFA1 /* BalanceModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BalanceModel.swift; sourceTree = ""; }; - A8488A522AE82F4B00ECDFA1 /* BalanceViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BalanceViewModel.swift; sourceTree = ""; }; - A8488A582AE82FD500ECDFA1 /* TrackerWidgetExtension.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = TrackerWidgetExtension.appex; sourceTree = BUILT_PRODUCTS_DIR; }; - A8488A5A2AE82FD500ECDFA1 /* WidgetKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WidgetKit.framework; path = System/Library/Frameworks/WidgetKit.framework; sourceTree = SDKROOT; }; - A8488A5C2AE82FD500ECDFA1 /* SwiftUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SwiftUI.framework; path = System/Library/Frameworks/SwiftUI.framework; sourceTree = SDKROOT; }; - A8488A5F2AE82FD500ECDFA1 /* TrackerWidget.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TrackerWidget.swift; sourceTree = ""; }; - A8488A632AE82FD600ECDFA1 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - A8488A652AE82FD600ECDFA1 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - A8488A6F2AE832D900ECDFA1 /* WalletInfoView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WalletInfoView.swift; sourceTree = ""; }; - A89B03CF2AEED35E00F4E824 /* TrackerWidgetExtension.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = TrackerWidgetExtension.entitlements; sourceTree = ""; }; - A89B03D02AEED38000F4E824 /* apple-watch-portfolio-tracker Watch App.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "apple-watch-portfolio-tracker Watch App.entitlements"; sourceTree = ""; }; - A8B88CD72AE859BA00252351 /* WalletModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WalletModel.swift; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - A8488A362AE82EC800ECDFA1 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - A8B88CD62AE8556C00252351 /* EFQRCode in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - A8488A552AE82FD500ECDFA1 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - A8488A5D2AE82FD500ECDFA1 /* SwiftUI.framework in Frameworks */, - A8488A5B2AE82FD500ECDFA1 /* WidgetKit.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - A8488A2C2AE82EC800ECDFA1 = { - isa = PBXGroup; - children = ( - A89B03CF2AEED35E00F4E824 /* TrackerWidgetExtension.entitlements */, - A8488A3D2AE82EC800ECDFA1 /* apple-watch-portfolio-tracker Watch App */, - A8488A5E2AE82FD500ECDFA1 /* TrackerWidget */, - A8488A592AE82FD500ECDFA1 /* Frameworks */, - A8488A342AE82EC800ECDFA1 /* Products */, - ); - sourceTree = ""; - }; - A8488A342AE82EC800ECDFA1 /* Products */ = { - isa = PBXGroup; - children = ( - A8488A332AE82EC800ECDFA1 /* apple-watch-portfolio-tracker.app */, - A8488A392AE82EC800ECDFA1 /* Onout.app */, - A8488A582AE82FD500ECDFA1 /* TrackerWidgetExtension.appex */, - ); - name = Products; - sourceTree = ""; - }; - A8488A3D2AE82EC800ECDFA1 /* apple-watch-portfolio-tracker Watch App */ = { - isa = PBXGroup; - children = ( - A89B03D02AEED38000F4E824 /* apple-watch-portfolio-tracker Watch App.entitlements */, - A8488A3E2AE82EC800ECDFA1 /* apple_watch_portfolio_trackerApp.swift */, - A8488A402AE82EC800ECDFA1 /* ContentView.swift */, - A8488A6F2AE832D900ECDFA1 /* WalletInfoView.swift */, - A8488A502AE82F2600ECDFA1 /* BalanceModel.swift */, - A8B88CD72AE859BA00252351 /* WalletModel.swift */, - A8488A522AE82F4B00ECDFA1 /* BalanceViewModel.swift */, - A8488A422AE82ECA00ECDFA1 /* Assets.xcassets */, - A8488A442AE82ECA00ECDFA1 /* Preview Content */, - ); - path = "apple-watch-portfolio-tracker Watch App"; - sourceTree = ""; - }; - A8488A442AE82ECA00ECDFA1 /* Preview Content */ = { - isa = PBXGroup; - children = ( - A8488A452AE82ECA00ECDFA1 /* Preview Assets.xcassets */, - ); - path = "Preview Content"; - sourceTree = ""; - }; - A8488A592AE82FD500ECDFA1 /* Frameworks */ = { - isa = PBXGroup; - children = ( - A8488A5A2AE82FD500ECDFA1 /* WidgetKit.framework */, - A8488A5C2AE82FD500ECDFA1 /* SwiftUI.framework */, - ); - name = Frameworks; - sourceTree = ""; - }; - A8488A5E2AE82FD500ECDFA1 /* TrackerWidget */ = { - isa = PBXGroup; - children = ( - A8488A5F2AE82FD500ECDFA1 /* TrackerWidget.swift */, - A8488A632AE82FD600ECDFA1 /* Assets.xcassets */, - A8488A652AE82FD600ECDFA1 /* Info.plist */, - ); - path = TrackerWidget; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - A8488A322AE82EC800ECDFA1 /* apple-watch-portfolio-tracker */ = { - isa = PBXNativeTarget; - buildConfigurationList = A8488A4D2AE82ECA00ECDFA1 /* Build configuration list for PBXNativeTarget "apple-watch-portfolio-tracker" */; - buildPhases = ( - A8488A312AE82EC800ECDFA1 /* Resources */, - A8488A4C2AE82ECA00ECDFA1 /* Embed Watch Content */, - ); - buildRules = ( - ); - dependencies = ( - A8488A3C2AE82EC800ECDFA1 /* PBXTargetDependency */, - ); - name = "apple-watch-portfolio-tracker"; - productName = "apple-watch-portfolio-tracker"; - productReference = A8488A332AE82EC800ECDFA1 /* apple-watch-portfolio-tracker.app */; - productType = "com.apple.product-type.application.watchapp2-container"; - }; - A8488A382AE82EC800ECDFA1 /* apple-watch-portfolio-tracker Watch App */ = { - isa = PBXNativeTarget; - buildConfigurationList = A8488A492AE82ECA00ECDFA1 /* Build configuration list for PBXNativeTarget "apple-watch-portfolio-tracker Watch App" */; - buildPhases = ( - A8488A352AE82EC800ECDFA1 /* Sources */, - A8488A362AE82EC800ECDFA1 /* Frameworks */, - A8488A372AE82EC800ECDFA1 /* Resources */, - A8488A6C2AE82FD600ECDFA1 /* Embed Foundation Extensions */, - ); - buildRules = ( - ); - dependencies = ( - A8488A672AE82FD600ECDFA1 /* PBXTargetDependency */, - ); - name = "apple-watch-portfolio-tracker Watch App"; - packageProductDependencies = ( - A8B88CD52AE8556C00252351 /* EFQRCode */, - ); - productName = "apple-watch-portfolio-tracker Watch App"; - productReference = A8488A392AE82EC800ECDFA1 /* Onout.app */; - productType = "com.apple.product-type.application"; - }; - A8488A572AE82FD500ECDFA1 /* TrackerWidgetExtension */ = { - isa = PBXNativeTarget; - buildConfigurationList = A8488A692AE82FD600ECDFA1 /* Build configuration list for PBXNativeTarget "TrackerWidgetExtension" */; - buildPhases = ( - A8488A542AE82FD500ECDFA1 /* Sources */, - A8488A552AE82FD500ECDFA1 /* Frameworks */, - A8488A562AE82FD500ECDFA1 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = TrackerWidgetExtension; - productName = TrackerWidgetExtension; - productReference = A8488A582AE82FD500ECDFA1 /* TrackerWidgetExtension.appex */; - productType = "com.apple.product-type.app-extension"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - A8488A2D2AE82EC800ECDFA1 /* Project object */ = { - isa = PBXProject; - attributes = { - BuildIndependentTargetsInParallel = 1; - LastSwiftUpdateCheck = 1500; - LastUpgradeCheck = 1500; - TargetAttributes = { - A8488A322AE82EC800ECDFA1 = { - CreatedOnToolsVersion = 15.0.1; - }; - A8488A382AE82EC800ECDFA1 = { - CreatedOnToolsVersion = 15.0.1; - }; - A8488A572AE82FD500ECDFA1 = { - CreatedOnToolsVersion = 15.0.1; - }; - }; - }; - buildConfigurationList = A8488A302AE82EC800ECDFA1 /* Build configuration list for PBXProject "apple-watch-portfolio-tracker" */; - compatibilityVersion = "Xcode 14.0"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = A8488A2C2AE82EC800ECDFA1; - packageReferences = ( - A8B88CD42AE854D400252351 /* XCRemoteSwiftPackageReference "EFQRCode" */, - ); - productRefGroup = A8488A342AE82EC800ECDFA1 /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - A8488A322AE82EC800ECDFA1 /* apple-watch-portfolio-tracker */, - A8488A382AE82EC800ECDFA1 /* apple-watch-portfolio-tracker Watch App */, - A8488A572AE82FD500ECDFA1 /* TrackerWidgetExtension */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - A8488A312AE82EC800ECDFA1 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - A8488A372AE82EC800ECDFA1 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - A8488A462AE82ECA00ECDFA1 /* Preview Assets.xcassets in Resources */, - A8488A432AE82ECA00ECDFA1 /* Assets.xcassets in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - A8488A562AE82FD500ECDFA1 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - A8488A642AE82FD600ECDFA1 /* Assets.xcassets in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - A8488A352AE82EC800ECDFA1 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - A8488A412AE82EC800ECDFA1 /* ContentView.swift in Sources */, - A8488A702AE832D900ECDFA1 /* WalletInfoView.swift in Sources */, - A8488A512AE82F2600ECDFA1 /* BalanceModel.swift in Sources */, - A8488A3F2AE82EC800ECDFA1 /* apple_watch_portfolio_trackerApp.swift in Sources */, - A8B88CD82AE859BA00252351 /* WalletModel.swift in Sources */, - A8488A532AE82F4B00ECDFA1 /* BalanceViewModel.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - A8488A542AE82FD500ECDFA1 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - A8488A602AE82FD500ECDFA1 /* TrackerWidget.swift in Sources */, - A8488A6E2AE8301900ECDFA1 /* BalanceModel.swift in Sources */, - A8488A6D2AE8301600ECDFA1 /* BalanceViewModel.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - A8488A3C2AE82EC800ECDFA1 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = A8488A382AE82EC800ECDFA1 /* apple-watch-portfolio-tracker Watch App */; - targetProxy = A8488A3B2AE82EC800ECDFA1 /* PBXContainerItemProxy */; - }; - A8488A672AE82FD600ECDFA1 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = A8488A572AE82FD500ECDFA1 /* TrackerWidgetExtension */; - targetProxy = A8488A662AE82FD600ECDFA1 /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin XCBuildConfiguration section */ - A8488A472AE82ECA00ECDFA1 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - ENABLE_USER_SCRIPT_SANDBOXING = YES; - GCC_C_LANGUAGE_STANDARD = gnu17; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - LOCALIZATION_PREFERS_STRING_CATALOGS = YES; - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - }; - name = Debug; - }; - A8488A482AE82ECA00ECDFA1 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_USER_SCRIPT_SANDBOXING = YES; - GCC_C_LANGUAGE_STANDARD = gnu17; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - LOCALIZATION_PREFERS_STRING_CATALOGS = YES; - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - SWIFT_COMPILATION_MODE = wholemodule; - }; - name = Release; - }; - A8488A4A2AE82ECA00ECDFA1 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; - CODE_SIGN_ENTITLEMENTS = "apple-watch-portfolio-tracker Watch App/apple-watch-portfolio-tracker Watch App.entitlements"; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 3; - DEVELOPMENT_ASSET_PATHS = "\"apple-watch-portfolio-tracker Watch App/Preview Content\""; - DEVELOPMENT_TEAM = 36TMC58V7J; - ENABLE_PREVIEWS = YES; - GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_KEY_UISupportedInterfaceOrientations = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown"; - INFOPLIST_KEY_WKWatchOnly = YES; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = org.onout.mytracker.watchkitapp; - PRODUCT_NAME = Onout; - SDKROOT = watchos; - SKIP_INSTALL = YES; - SWIFT_EMIT_LOC_STRINGS = YES; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 4; - WATCHOS_DEPLOYMENT_TARGET = 9.0; - }; - name = Debug; - }; - A8488A4B2AE82ECA00ECDFA1 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; - CODE_SIGN_ENTITLEMENTS = "apple-watch-portfolio-tracker Watch App/apple-watch-portfolio-tracker Watch App.entitlements"; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 3; - DEVELOPMENT_ASSET_PATHS = "\"apple-watch-portfolio-tracker Watch App/Preview Content\""; - DEVELOPMENT_TEAM = 36TMC58V7J; - ENABLE_PREVIEWS = YES; - GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_KEY_UISupportedInterfaceOrientations = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown"; - INFOPLIST_KEY_WKWatchOnly = YES; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = org.onout.mytracker.watchkitapp; - PRODUCT_NAME = Onout; - SDKROOT = watchos; - SKIP_INSTALL = YES; - SWIFT_EMIT_LOC_STRINGS = YES; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 4; - VALIDATE_PRODUCT = YES; - WATCHOS_DEPLOYMENT_TARGET = 9.0; - }; - name = Release; - }; - A8488A4E2AE82ECA00ECDFA1 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_TEAM = 36TMC58V7J; - INFOPLIST_KEY_CFBundleDisplayName = "apple-watch-portfolio-tracker"; - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = org.onout.mytracker; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = iphoneos; - SWIFT_VERSION = 5.0; - }; - name = Debug; - }; - A8488A4F2AE82ECA00ECDFA1 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_TEAM = 36TMC58V7J; - INFOPLIST_KEY_CFBundleDisplayName = "apple-watch-portfolio-tracker"; - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = org.onout.mytracker; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = iphoneos; - SWIFT_VERSION = 5.0; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - A8488A6A2AE82FD600ECDFA1 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; - ASSETCATALOG_COMPILER_WIDGET_BACKGROUND_COLOR_NAME = WidgetBackground; - CODE_SIGN_ENTITLEMENTS = TrackerWidgetExtension.entitlements; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_TEAM = 36TMC58V7J; - GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = TrackerWidget/Info.plist; - INFOPLIST_KEY_CFBundleDisplayName = TrackerWidget; - INFOPLIST_KEY_NSHumanReadableCopyright = ""; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@executable_path/../../Frameworks", - "@executable_path/../../../../Frameworks", - ); - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = org.onout.mytracker.watchkitapp.TrackerWidget; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = watchos; - SKIP_INSTALL = YES; - SWIFT_EMIT_LOC_STRINGS = YES; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 4; - WATCHOS_DEPLOYMENT_TARGET = 9.0; - }; - name = Debug; - }; - A8488A6B2AE82FD600ECDFA1 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; - ASSETCATALOG_COMPILER_WIDGET_BACKGROUND_COLOR_NAME = WidgetBackground; - CODE_SIGN_ENTITLEMENTS = TrackerWidgetExtension.entitlements; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_TEAM = 36TMC58V7J; - GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = TrackerWidget/Info.plist; - INFOPLIST_KEY_CFBundleDisplayName = TrackerWidget; - INFOPLIST_KEY_NSHumanReadableCopyright = ""; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@executable_path/../../Frameworks", - "@executable_path/../../../../Frameworks", - ); - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = org.onout.mytracker.watchkitapp.TrackerWidget; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = watchos; - SKIP_INSTALL = YES; - SWIFT_EMIT_LOC_STRINGS = YES; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 4; - VALIDATE_PRODUCT = YES; - WATCHOS_DEPLOYMENT_TARGET = 9.0; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - A8488A302AE82EC800ECDFA1 /* Build configuration list for PBXProject "apple-watch-portfolio-tracker" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - A8488A472AE82ECA00ECDFA1 /* Debug */, - A8488A482AE82ECA00ECDFA1 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - A8488A492AE82ECA00ECDFA1 /* Build configuration list for PBXNativeTarget "apple-watch-portfolio-tracker Watch App" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - A8488A4A2AE82ECA00ECDFA1 /* Debug */, - A8488A4B2AE82ECA00ECDFA1 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - A8488A4D2AE82ECA00ECDFA1 /* Build configuration list for PBXNativeTarget "apple-watch-portfolio-tracker" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - A8488A4E2AE82ECA00ECDFA1 /* Debug */, - A8488A4F2AE82ECA00ECDFA1 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - A8488A692AE82FD600ECDFA1 /* Build configuration list for PBXNativeTarget "TrackerWidgetExtension" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - A8488A6A2AE82FD600ECDFA1 /* Debug */, - A8488A6B2AE82FD600ECDFA1 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - -/* Begin XCRemoteSwiftPackageReference section */ - A8B88CD42AE854D400252351 /* XCRemoteSwiftPackageReference "EFQRCode" */ = { - isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/EFPrefix/EFQRCode.git"; - requirement = { - kind = upToNextMajorVersion; - minimumVersion = 6.2.2; - }; - }; -/* End XCRemoteSwiftPackageReference section */ - -/* Begin XCSwiftPackageProductDependency section */ - A8B88CD52AE8556C00252351 /* EFQRCode */ = { - isa = XCSwiftPackageProductDependency; - package = A8B88CD42AE854D400252351 /* XCRemoteSwiftPackageReference "EFQRCode" */; - productName = EFQRCode; - }; -/* End XCSwiftPackageProductDependency section */ - }; - rootObject = A8488A2D2AE82EC800ECDFA1 /* Project object */; -} diff --git a/apple-watch-portfolio-tracker.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/apple-watch-portfolio-tracker.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 919434a..0000000 --- a/apple-watch-portfolio-tracker.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/apple-watch-portfolio-tracker.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/apple-watch-portfolio-tracker.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d9810..0000000 --- a/apple-watch-portfolio-tracker.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/apple-watch-portfolio-tracker.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/apple-watch-portfolio-tracker.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved deleted file mode 100644 index f95d1c1..0000000 --- a/apple-watch-portfolio-tracker.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ /dev/null @@ -1,23 +0,0 @@ -{ - "pins" : [ - { - "identity" : "efqrcode", - "kind" : "remoteSourceControl", - "location" : "https://github.com/EFPrefix/EFQRCode.git", - "state" : { - "revision" : "2991c2f318ad9529d93b2a73a382a3f9c72c64ce", - "version" : "6.2.2" - } - }, - { - "identity" : "swift_qrcodejs", - "kind" : "remoteSourceControl", - "location" : "https://github.com/ApolloZhu/swift_qrcodejs.git", - "state" : { - "revision" : "374dc7f7b9e76c6aeb393f6a84590c6d387e1ecb", - "version" : "2.2.2" - } - } - ], - "version" : 2 -} diff --git a/apple-watch-portfolio-tracker.xcodeproj/project.xcworkspace/xcuserdata/nikitaivanov.xcuserdatad/UserInterfaceState.xcuserstate b/apple-watch-portfolio-tracker.xcodeproj/project.xcworkspace/xcuserdata/nikitaivanov.xcuserdatad/UserInterfaceState.xcuserstate deleted file mode 100644 index 31c078d..0000000 Binary files a/apple-watch-portfolio-tracker.xcodeproj/project.xcworkspace/xcuserdata/nikitaivanov.xcuserdatad/UserInterfaceState.xcuserstate and /dev/null differ diff --git a/apple-watch-portfolio-tracker.xcodeproj/xcuserdata/nikitaivanov.xcuserdatad/xcschemes/xcschememanagement.plist b/apple-watch-portfolio-tracker.xcodeproj/xcuserdata/nikitaivanov.xcuserdatad/xcschemes/xcschememanagement.plist deleted file mode 100644 index 011358a..0000000 --- a/apple-watch-portfolio-tracker.xcodeproj/xcuserdata/nikitaivanov.xcuserdatad/xcschemes/xcschememanagement.plist +++ /dev/null @@ -1,103 +0,0 @@ - - - - - SchemeUserState - - Basic B&W QR Code (Playground) 1.xcscheme - - isShown - - orderHint - 9 - - Basic B&W QR Code (Playground) 2.xcscheme - - isShown - - orderHint - 10 - - Basic B&W QR Code (Playground).xcscheme - - isShown - - orderHint - 8 - - European SEPA Money Transfer + Watermark (Playground) 1.xcscheme - - isShown - - orderHint - 12 - - European SEPA Money Transfer + Watermark (Playground) 2.xcscheme - - isShown - - orderHint - 13 - - European SEPA Money Transfer + Watermark (Playground).xcscheme - - isShown - - orderHint - 11 - - README (Playground) 1.xcscheme - - isShown - - orderHint - 3 - - README (Playground) 2.xcscheme - - isShown - - orderHint - 4 - - README (Playground).xcscheme - - isShown - - orderHint - 2 - - TrackerWidgetExtension.xcscheme_^#shared#^_ - - orderHint - 1 - - User Guide (Playground) 1.xcscheme - - isShown - - orderHint - 6 - - User Guide (Playground) 2.xcscheme - - isShown - - orderHint - 7 - - User Guide (Playground).xcscheme - - isShown - - orderHint - 5 - - apple-watch-portfolio-tracker Watch App.xcscheme_^#shared#^_ - - orderHint - 0 - - - -