Skip to content

Commit fe1e286

Browse files
committed
Compatibility with macOS 13.3
1 parent 4e0f37d commit fe1e286

File tree

11 files changed

+226
-166
lines changed

11 files changed

+226
-166
lines changed

OpenHaystack/OpenHaystack.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved

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

OpenHaystack/OpenHaystack/AnisetteDataManager.swift

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,8 @@ public class AnisetteDataManager: NSObject {
9898
"X-Apple-I-MD-M": data.machineID,
9999
"X-Apple-I-MD": data.oneTimePassword,
100100
"X-Apple-I-TimeZone": String(data.timeZone.abbreviation() ?? "UTC"),
101-
"X-Apple-I-Client-Time": ISO8601DateFormatter().string(from: data.date),
101+
// "X-Apple-I-Client-Time": ISO8601DateFormatter().string(from: data.date),
102+
"X-Apple-I-Client-Time": ISO8601DateFormatter().string(from: Date()),
102103
"X-Apple-I-MD-RINFO": String(data.routingInfo),
103104
] as [AnyHashable: Any])
104105
}

OpenHaystack/OpenHaystack/HaystackApp/AccessoryController.swift

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ class AccessoryController: ObservableObject {
1717
var selfObserver: AnyCancellable?
1818
var listElementsObserver = [AnyCancellable]()
1919
let findMyController: FindMyController
20-
20+
2121
weak var savePanel: NSSavePanel?
2222

2323
init(accessories: [Accessory], findMyController: FindMyController) {
@@ -99,13 +99,13 @@ class AccessoryController: ObservableObject {
9999
func export(accessories: [Accessory]) throws -> URL {
100100

101101
let savePanel = NSSavePanel()
102-
// savePanel.allowedFileTypes = ["plist", "json"]
102+
// savePanel.allowedFileTypes = ["plist", "json"]
103103
if #available(macOS 12.0, *) {
104104
savePanel.allowedContentTypes = [.propertyList]
105-
}else {
105+
} else {
106106
savePanel.allowedFileTypes = ["plist"]
107107
}
108-
108+
109109
savePanel.canCreateDirectories = true
110110
savePanel.directoryURL = try FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: false)
111111
savePanel.message = "This export contains all private keys! Keep the file save to protect your location data"
@@ -114,31 +114,31 @@ class AccessoryController: ObservableObject {
114114
savePanel.prompt = "Export"
115115
savePanel.title = "Export accessories & keys"
116116
savePanel.isExtensionHidden = false
117-
117+
118118
let accessoryView = NSView()
119119
let popUpButton = NSPopUpButton(title: "File type", target: self, action: #selector(exportFileTypeChanged(button:)))
120120
popUpButton.addItems(withTitles: ["Property List", "JSON"])
121121
popUpButton.selectItem(at: 0)
122122
popUpButton.stringValue = "File type"
123123
popUpButton.translatesAutoresizingMaskIntoConstraints = false
124124
accessoryView.addSubview(popUpButton)
125-
125+
126126
let popUpButtonLabel = NSTextField(labelWithString: "File type")
127127
popUpButtonLabel.translatesAutoresizingMaskIntoConstraints = false
128128
accessoryView.addSubview(popUpButtonLabel)
129129
accessoryView.translatesAutoresizingMaskIntoConstraints = false
130-
131-
// popUpButtonLabel.leadingAnchor.constraint(greaterThanOrEqualTo: accessoryView.leadingAnchor, constant: 20.0).isActive = true
130+
131+
// popUpButtonLabel.leadingAnchor.constraint(greaterThanOrEqualTo: accessoryView.leadingAnchor, constant: 20.0).isActive = true
132132
popUpButtonLabel.trailingAnchor.constraint(equalTo: popUpButton.leadingAnchor, constant: -8.0).isActive = true
133133
popUpButtonLabel.trailingAnchor.constraint(lessThanOrEqualTo: accessoryView.centerXAnchor, constant: 0).isActive = true
134134
popUpButtonLabel.centerYAnchor.constraint(equalTo: popUpButton.centerYAnchor, constant: 0).isActive = true
135-
// popUpButton.trailingAnchor.constraint(lessThanOrEqualTo: accessoryView.trailingAnchor, constant: -20.0).isActive = true
135+
// popUpButton.trailingAnchor.constraint(lessThanOrEqualTo: accessoryView.trailingAnchor, constant: -20.0).isActive = true
136136
popUpButton.leadingAnchor.constraint(lessThanOrEqualTo: accessoryView.centerXAnchor, constant: 0).isActive = true
137137
popUpButton.topAnchor.constraint(equalTo: accessoryView.topAnchor, constant: 8.0).isActive = true
138138
popUpButton.bottomAnchor.constraint(equalTo: accessoryView.bottomAnchor, constant: -8.0).isActive = true
139139
popUpButton.heightAnchor.constraint(greaterThanOrEqualToConstant: 20.0).isActive = true
140140
popUpButton.widthAnchor.constraint(lessThanOrEqualToConstant: 200.0).isActive = true
141-
141+
142142
savePanel.accessoryView = accessoryView
143143
self.savePanel = savePanel
144144

@@ -148,15 +148,15 @@ class AccessoryController: ObservableObject {
148148
var url = savePanel.url
149149
{
150150
let selectedItemIndex = popUpButton.indexOfSelectedItem
151-
151+
152152
// Store the accessory file
153153
if selectedItemIndex == 0 {
154154
if url.pathExtension != "plist" {
155155
url = url.appendingPathExtension("plist")
156156
}
157157
let propertyList = try PropertyListEncoder().encode(accessories)
158158
try propertyList.write(to: url)
159-
}else if selectedItemIndex == 1 {
159+
} else if selectedItemIndex == 1 {
160160
if url.pathExtension != "json" {
161161
url = url.appendingPathExtension("json")
162162
}
@@ -168,18 +168,18 @@ class AccessoryController: ObservableObject {
168168
}
169169
throw ImportError.cancelled
170170
}
171-
171+
172172
@objc func exportFileTypeChanged(button: NSPopUpButton) {
173173
if button.indexOfSelectedItem == 0 {
174174
if #available(macOS 12.0, *) {
175175
self.savePanel?.allowedContentTypes = [.propertyList]
176-
}else {
176+
} else {
177177
self.savePanel?.allowedFileTypes = ["plist"]
178178
}
179-
}else {
179+
} else {
180180
if #available(macOS 12.0, *) {
181181
self.savePanel?.allowedContentTypes = [.json]
182-
}else {
182+
} else {
183183
self.savePanel?.allowedFileTypes = ["json"]
184184
}
185185
}
@@ -190,10 +190,10 @@ class AccessoryController: ObservableObject {
190190
let openPanel = NSOpenPanel()
191191
if #available(macOS 12.0, *) {
192192
openPanel.allowedContentTypes = [.json, .propertyList]
193-
}else {
193+
} else {
194194
openPanel.allowedFileTypes = ["json", "plist"]
195195
}
196-
196+
197197
openPanel.canCreateDirectories = true
198198
openPanel.directoryURL = try FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: false)
199199
openPanel.message = "Import an accessories file that includes the private keys"
@@ -208,10 +208,10 @@ class AccessoryController: ObservableObject {
208208
var importedAccessories: [Accessory]
209209
if url.pathExtension == "plist" {
210210
importedAccessories = try PropertyListDecoder().decode([Accessory].self, from: accessoryData)
211-
}else {
211+
} else {
212212
importedAccessories = try JSONDecoder().decode([Accessory].self, from: accessoryData)
213213
}
214-
214+
215215
var updatedAccessories = self.accessories
216216
// Filter out accessories with the same id (no duplicates)
217217
importedAccessories = importedAccessories.filter({ acc in !self.accessories.contains(where: { acc.id == $0.id }) })

OpenHaystack/OpenHaystack/HaystackApp/Model/PreviewData.swift

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
import CoreLocation
1111
import Foundation
1212
import SwiftUI
13-
import CoreLocation
1413

1514
// swiftlint:disable force_try
1615
struct PreviewData {

0 commit comments

Comments
 (0)