"
32 |
33 | let messageSpanClass = isFromMe ? "messageTextFromMe" : "messageText"
34 |
35 | let dateSpanClass = isFromMe ? "dateFromMe" : "date"
36 |
37 | let res = "\(HTMLDateFormatter.shared.dateFormatter.string(from: date)) : \(nonEmptyContent)
\n"
38 |
39 | return res
40 | }
41 | }
42 |
43 | extension ChatAttachment : HTMLExportable {
44 |
45 | // name of folder in which attachments will be stored in HTML export
46 | //
47 | static let attachmentsFolderName = "attachments"
48 |
49 | func htmlString() -> String {
50 |
51 | let res:String
52 |
53 | let dateSpanClass = isFromMe ? "dateFromMe" : "date"
54 |
55 | if let fileName = standardizedFileName {
56 |
57 | let attachmentFileURL = URL(fileURLWithPath: fileName)
58 |
59 | let exportedAttachmentPath = ChatAttachment.attachmentsFolderName + "/" + attachmentFileURL.lastPathComponent
60 |
61 | if isImage() {
62 | res = "\(HTMLDateFormatter.shared.dateFormatter.string(from: date))\")
\n"
63 | } else {
64 | res = "\n"
65 | }
66 |
67 | } else {
68 |
69 | res = "\(HTMLDateFormatter.shared.dateFormatter.string(from: date)) : empty attachment
\n"
70 |
71 | }
72 |
73 | return res
74 | }
75 |
76 | func isImage() -> Bool {
77 | guard let fileName = standardizedFileName else { return false }
78 |
79 | do {
80 | let type = try NSWorkspace.shared.type(ofFile: fileName)
81 | let res = NSWorkspace.shared.type(type, conformsToType: String(kUTTypeImage))
82 | NSLog("isImage : \(fileName) - \(res)")
83 | return res
84 | } catch let error {
85 | NSLog("isImage : error \(error.localizedDescription)")
86 | return false
87 | }
88 |
89 | }
90 |
91 | }
92 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowser/ImageAttachmentCell.swift:
--------------------------------------------------------------------------------
1 | //
2 | // ImageAttachmentCell.swift
3 | // MessagesHistoryBrowser
4 | //
5 | // Created by Guillaume Laurent on 11/11/15.
6 | // Copyright © 2015 Guillaume Laurent. All rights reserved.
7 | //
8 |
9 | import Cocoa
10 |
11 | // taken from http://ossh.com.au/design-and-technology/software-development/implementing-rich-text-with-images-on-os-x-and-ios/
12 | //
13 |
14 | class ImageAttachmentCell: NSTextAttachmentCell {
15 |
16 | override func cellFrame(for textContainer: NSTextContainer, proposedLineFragment lineFrag: NSRect, glyphPosition position: NSPoint, characterIndex charIndex: Int) -> NSRect
17 | {
18 | let width = lineFrag.size.width
19 |
20 | let imageRect = scaleImageToWidth(width)
21 |
22 | return imageRect
23 | }
24 |
25 | func scaleImageToWidth(_ width:CGFloat) -> NSRect
26 | {
27 | guard let image = self.image else { return NSZeroRect }
28 |
29 | var scalingFactor:CGFloat = 1.0
30 |
31 | let imageSize = image.size
32 |
33 | if (width < imageSize.width) {
34 | scalingFactor = (width * 0.9) / imageSize.width
35 | }
36 |
37 | let rect = NSRect(x:0, y:0, width:imageSize.width * scalingFactor, height:imageSize.height * scalingFactor)
38 |
39 | return rect;
40 |
41 | }
42 |
43 | override func draw(withFrame cellFrame: NSRect, in controlView: NSView?)
44 | {
45 | image?.draw(in: cellFrame, from: NSZeroRect, operation: .sourceOver, fraction: 1.0, respectFlipped: true, hints: nil)
46 | }
47 |
48 | }
49 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowser/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIconFile
10 |
11 | CFBundleIdentifier
12 | $(PRODUCT_BUNDLE_IDENTIFIER)
13 | CFBundleInfoDictionaryVersion
14 | 6.0
15 | CFBundleName
16 | $(PRODUCT_NAME)
17 | CFBundlePackageType
18 | APPL
19 | CFBundleShortVersionString
20 | 1.9
21 | CFBundleSignature
22 | ????
23 | CFBundleVersion
24 | 1.9
25 | LSApplicationCategoryType
26 | public.app-category.utilities
27 | LSMinimumSystemVersion
28 | $(MACOSX_DEPLOYMENT_TARGET)
29 | NSContactsUsageDescription
30 | This lets the app display contact names instead of phone numbers for chats with your contacts
31 | NSHumanReadableCopyright
32 | Copyright © 2015 Guillaume Laurent. All rights reserved.
33 | NSMainStoryboardFile
34 | Main
35 | NSPrincipalClass
36 | NSApplication
37 | SUFeedURL
38 | https://telegraph-road.org/MessagesHistoryBrowser/appcast.xml
39 | SUPublicDSAKeyFile
40 | dsa_pub.pem
41 |
42 |
43 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowser/MOCController.swift:
--------------------------------------------------------------------------------
1 | //
2 | // MOCController.swift
3 | // MessagesHistoryBrowser
4 | //
5 | // Created by Guillaume Laurent on 26/12/15.
6 | // Copyright © 2015 Guillaume Laurent. All rights reserved.
7 | //
8 |
9 | import Cocoa
10 |
11 | class MOCController: NSObject {
12 |
13 | public static let sharedInstance = MOCController()
14 |
15 | var managedObjectContext:NSManagedObjectContext {
16 | let appDelegate = NSApp.delegate as! AppDelegate
17 | return appDelegate.persistentContainer.viewContext
18 | }
19 |
20 | override init() {
21 | }
22 |
23 | func save()
24 | {
25 | let appDelegate = NSApp.delegate as! AppDelegate
26 | appDelegate.saveAction(self)
27 | }
28 |
29 | func clearAllCoreData()
30 | {
31 | // let allContacts = ChatContact.allContacts()
32 | //
33 | // for contact in allContacts {
34 | // managedObjectContext.delete(contact)
35 | // }
36 |
37 | let contactsFetchRequest = ChatContact.fetchRequest() // NSFetchRequest(entityName: "Contact")
38 |
39 | let deleteContactsRequest = NSBatchDeleteRequest(fetchRequest: contactsFetchRequest)
40 |
41 | do {
42 | let context = workerContext()
43 | try context.execute(deleteContactsRequest)
44 | try context.save()
45 | } catch let error {
46 | NSLog("ERROR when deleting contacts : \(error)")
47 | }
48 |
49 | }
50 |
51 | func workerContext() -> NSManagedObjectContext
52 | {
53 | let appDelegate = NSApp.delegate as! AppDelegate
54 |
55 | let worker = appDelegate.persistentContainer.newBackgroundContext()
56 |
57 | return worker
58 | }
59 |
60 | }
61 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowser/MessagesHistoryBrowser.entitlements:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | com.apple.security.app-sandbox
6 |
7 | com.apple.security.files.bookmarks.app-scope
8 |
9 | com.apple.security.files.user-selected.read-write
10 |
11 | com.apple.security.network.client
12 |
13 | com.apple.security.personal-information.addressbook
14 |
15 | com.apple.security.print
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowser/MessagesHistoryBrowser.xcdatamodeld/.xccurrentversion:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | _XCCurrentVersionName
6 | MessagesHistoryBrowser.xcdatamodel
7 |
8 |
9 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowser/MessagesHistoryBrowser.xcdatamodeld/MessagesHistoryBrowser.xcdatamodel/contents:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowser/RoundImage.swift:
--------------------------------------------------------------------------------
1 | //
2 | // RoundImage.swift
3 | // MessagesHistoryBrowser
4 | //
5 | // Created by Guillaume Laurent on 16/01/16.
6 | // Copyright © 2016 Guillaume Laurent. All rights reserved.
7 | //
8 |
9 | import Cocoa
10 |
11 |
12 | // Copied from http://stackoverflow.com/a/27157566/1081361
13 |
14 | func roundCorners(_ image: NSImage) -> NSImage
15 | {
16 | let existing = image
17 | let esize = existing.size
18 |
19 | let sideLength = min(esize.width, esize.height) // make sure the resulting image is an actual circle - doesn't always look good if original image isn't properly centered
20 |
21 | let newSize = NSSize(width:sideLength, height:sideLength)
22 | let composedImage = NSImage(size: newSize)
23 |
24 | composedImage.lockFocus()
25 | let ctx = NSGraphicsContext.current
26 | ctx?.imageInterpolation = NSImageInterpolation.high
27 |
28 | let imageFrame = NSRect(x: 0, y: 0, width: sideLength, height: sideLength)
29 | let clipPath = NSBezierPath(ovalIn: imageFrame)
30 | clipPath.windingRule = NSBezierPath.WindingRule.evenOdd
31 | clipPath.addClip()
32 |
33 | let rect = NSRect(x: 0, y: 0, width: newSize.width, height: newSize.height)
34 | image.draw(at: NSZeroPoint, from: rect, operation: NSCompositingOperation.sourceOver, fraction: 1)
35 | composedImage.unlockFocus()
36 |
37 | return composedImage
38 | }
39 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowser/ViewController.swift:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.swift
3 | // MessagesHistoryBrowser
4 | //
5 | // Created by Guillaume Laurent on 27/09/15.
6 | // Copyright © 2015 Guillaume Laurent. All rights reserved.
7 | //
8 |
9 | import Cocoa
10 |
11 | class ViewController: NSViewController {
12 |
13 | override func viewDidLoad() {
14 | super.viewDidLoad()
15 |
16 | // Do any additional setup after loading the view.
17 | }
18 |
19 | override var representedObject: Any? {
20 | didSet {
21 | // Update the view, if already loaded.
22 | }
23 | }
24 |
25 |
26 | }
27 |
28 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowser/ViewControllers/AboutViewController.swift:
--------------------------------------------------------------------------------
1 | //
2 | // AboutViewController.swift
3 | // MessagesHistoryBrowser
4 | //
5 | // Created by Guillaume Laurent on 03/12/2018.
6 | // Copyright © 2018 Guillaume Laurent. All rights reserved.
7 | //
8 |
9 | import Cocoa
10 |
11 | class AboutViewController: NSViewController {
12 |
13 | @IBOutlet weak var versionNumberTextField: NSTextField!
14 |
15 | override func viewDidLoad() {
16 | super.viewDidLoad()
17 | // Do view setup here.
18 |
19 | if let versionNumber = Bundle.main.object(forInfoDictionaryKey: "CFBundleVersion") as? String {
20 |
21 | versionNumberTextField.stringValue = versionNumber
22 | }
23 |
24 | }
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowser/ViewControllers/ImageAttachmentDisplayViewController.swift:
--------------------------------------------------------------------------------
1 | //
2 | // ImageAttachmentDisplayViewController.swift
3 | // MessagesHistoryBrowser
4 | //
5 | // Created by Guillaume Laurent on 20/12/15.
6 | // Copyright © 2015 Guillaume Laurent. All rights reserved.
7 | //
8 |
9 | import Cocoa
10 |
11 | class ImageAttachmentDisplayViewController: NSViewController {
12 |
13 | @IBOutlet weak var imageView: NSImageView!
14 |
15 | var halfScreenSize:NSSize!
16 |
17 | let windowTopBarHeight:CGFloat = 22.0
18 |
19 | let maxSizeScreenRatio:CGFloat = 4.0 // images won't be displayed larger than (screen size) * ratio
20 |
21 | var image:NSImage? {
22 | set {
23 |
24 | if let newImage = newValue {
25 | let newImageSize = newImage.size
26 | let mainScreenSize = NSScreen.main!.frame.size
27 |
28 | var newSize:NSSize
29 |
30 | if newImageSize.height > (mainScreenSize.height / maxSizeScreenRatio) || newImageSize.width > (mainScreenSize.width / maxSizeScreenRatio) {
31 |
32 | newSize = size(newImageSize, inBounds:halfScreenSize)
33 | // NSLog("initial size : \(newImage.size) - scaled down newSize : \(newSize)")
34 |
35 | // newSize = NSSize(width: mainScreenSize.width / 2.0, height: mainScreenSize.height / 2.0)
36 | } else {
37 | newSize = NSSize(width: newImageSize.width, height: newImageSize.height + windowTopBarHeight) // window top bar
38 | }
39 |
40 | var windowFrame = view.window!.frame
41 | windowFrame.size = newSize
42 | // NSLog("initial size : \(newImage.size) - scaled down newSize : \(newSize)")
43 |
44 | view.window?.setFrame(windowFrame, display: true, animate: true)
45 |
46 | view.needsLayout = true
47 |
48 | imageView.image = newImage
49 | }
50 | }
51 |
52 | get {
53 | return imageView.image
54 | }
55 | }
56 |
57 | override func viewDidLoad() {
58 | super.viewDidLoad()
59 | // Do view setup here.
60 |
61 | let mainScreenSize = NSScreen.main!.frame.size
62 |
63 | halfScreenSize = NSSize(width: mainScreenSize.width / maxSizeScreenRatio, height: mainScreenSize.height / maxSizeScreenRatio)
64 |
65 | view.window?.maxSize = NSSize(width: mainScreenSize.width / maxSizeScreenRatio, height: mainScreenSize.height / maxSizeScreenRatio)
66 | }
67 |
68 | func size(_ aSize:NSSize, inBounds bounds:NSSize) -> NSSize
69 | {
70 | let ratio = aSize.width / aSize.height
71 |
72 | let newWidthCandidate = bounds.height * ratio
73 | let newHeightCandidate = bounds.width / ratio
74 |
75 | let newHeight = newWidthCandidate / ratio
76 |
77 | if newHeight < bounds.height {
78 | return NSSize(width: newWidthCandidate, height: newHeight + windowTopBarHeight)
79 | } else {
80 | return NSSize(width: newHeightCandidate * ratio, height: newHeightCandidate + windowTopBarHeight)
81 | }
82 | }
83 |
84 | }
85 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowser/ViewControllers/ShowAppPrivilegesSetupViewController.swift:
--------------------------------------------------------------------------------
1 | //
2 | // ShowAppPrivilegesSetupViewController.swift
3 | // MessagesHistoryBrowser
4 | //
5 | // Created by Guillaume Laurent on 04/09/2018.
6 | // Copyright © 2018 Guillaume Laurent. All rights reserved.
7 | //
8 |
9 | import Cocoa
10 |
11 | class ShowAppPrivilegesSetupViewController: NSViewController {
12 |
13 | override func viewDidLoad() {
14 | super.viewDidLoad()
15 | // Do view setup here.
16 | }
17 |
18 | @IBAction func quitButtonClicked(_ sender: Any) {
19 | view.window?.sheetParent?.endSheet(view.window!)
20 | }
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowser/ViewControllers/ShowImagesDownloadViewController.swift:
--------------------------------------------------------------------------------
1 | //
2 | // ShowImagesDownloadViewController.swift
3 | // MessagesHistoryBrowser
4 | //
5 | // Created by Guillaume Laurent on 05/09/2018.
6 | // Copyright © 2018 Guillaume Laurent. All rights reserved.
7 | //
8 |
9 | import Cocoa
10 |
11 | class ShowImagesDownloadViewController: NSViewController {
12 |
13 | static let ShowImagesDownloadUserDefaultsKey = "ShowImagesDownloadUserDefaultsKey"
14 |
15 | @IBOutlet weak var dontShowAgainCheckBox: NSButton!
16 |
17 | override func viewDidLoad() {
18 | super.viewDidLoad()
19 | // Do view setup here.
20 | }
21 |
22 | @IBAction func okButtonClicked(_ sender: Any) {
23 |
24 | if dontShowAgainCheckBox.state == .on {
25 | UserDefaults.standard.set(true, forKey: ShowImagesDownloadViewController.ShowImagesDownloadUserDefaultsKey)
26 | }
27 |
28 | view.window?.sheetParent?.endSheet(view.window!)
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowser/dsa_pub.pem:
--------------------------------------------------------------------------------
1 | -----BEGIN PUBLIC KEY-----
2 | MIIGPDCCBC4GByqGSM44BAEwggQhAoICAQDCdXxyLsquIEldCYKzQJrMho+Q6aCx
3 | 9l1k0pFMNI+YNBnuyj9kuSo9n4mtJSR84TF/5+rpKqEZdNlr1eOzFYLUao5lTArk
4 | e522No9aba/XfnDWfuh2YeAHUNYipkd5F/ZNmnZVHkc4tZ6O+LeTM332mLuDPoUI
5 | wwwtq1iir2WjhuaG6C/HdfsZQNgkjQ+RYSY2ky4cpdoxJT8BbyAzeV8owN4/18PD
6 | T1aPrMp3m8PqsuHNSGElnJAg2DPljvDq0R5J7ktz+2hXDfw5xPCQWnS0YM5sb9Sg
7 | 5EBKuBw+Nu9JQjMCBbRaIvghEpU4vaYZIB4dT2owyRTX2FsEsoZit4EkhV/gtePB
8 | aNg483u8sATIRE5bSW0bPkYK/oY7I1tP1wVh3Nll7vNUor1r8Z/DGJpOBkg/b36J
9 | OLXKxBwD2ujlJ6cPpREtNxVnSvftGaGdwGyT/w/B1iqP0AkcY2Q6E09+Td1CSfKH
10 | 0EG3wp6GI8UXlEED4wacFqi3jmwefukwP5fgI7JmFsR/PnV+LOm0KOYcmXniYImh
11 | bSyfm1XkR+qQl9c1hPXuAgDwu27uXVQlkU7YNEdCZsESnW5/0YcSaMsnrzWgN2Gm
12 | gCI3bzLy/iKB4opSUsB3Nq4DagpGmFT0PW6zIGtJTy5/gOYTFF0OCi2sIenbPzj/
13 | ksauTB35KhI8EwIVAJPzpzRoplJT6p7SGPYiEnYKMppRAoICAQCWDnNBs7x+McpI
14 | 6vKOviFupioPbzstPFK033oyWKJPjkHDAQvdOZ+nxEvjLD+/CWrF+U4tkW5U/i9X
15 | NhGJTIq34qazgn3iOL2BnmOY8XVJrZdAU9FoOYe/uW5NiixpQUfcvolB7Eofepv+
16 | 0EahHnVlFqmKXA+BAqvTWzoRFv+DjaEZd64iQAx3sSzi+OJgfe0UneLPJNMrm1SB
17 | +7V9By1fVEqxll2kvxIx/vBGleba2yR2xBM3pLHxa5r5lgMH+jftJo9JIksnjTIH
18 | kW0Y39lyddJxZmRoqIZfuaPy1sVxIcupWIJg+vLnwzCpUFBYqLkRgjbqvU2QDV1+
19 | NZjXCqBmjCreA/w3D01ZuqmjLSTW/vmc2PHrKeg42JhgS5nln/JB56FjgU1r4PNt
20 | 6yaN3R05nwFCjg49jwU44cgyKaN7cg2Q8CYv2PZo+uj/75tLxow/Rv/RkQxzMiQa
21 | RqjJy6EHVYZDMATy2s4ERpCx741HXL/IONleW9N4BxcTB2JfCpFQrjWAkr2AMH2e
22 | 9JkvyYq/gzecs+lF2TLtDEU5lJ2zgVrEQwoTomOL1lByQyhBMM+TNIF3wBWBqQhM
23 | o/kGVJO77hieJdkANt+bDBHYBNtBVBS/dbIX6r6ON4Vw6PE+yw/52jLjJEflfmKN
24 | uS9Sy77jghWZiHf/8eHAP7mO2q+oUgOCAgYAAoICAQCH7OTADedC6H9nsAqlOR2G
25 | CrgHSERU7R5nDkTBYVhm3qhCA9CR5QG8kvOow6JutdbaQCc/xAWwwWGfT/+5lQ6R
26 | fuLyrKUCJd69U7iKQMVJhPi/p6PNOJObbK8bsPPXv8rgscscnUqXaPb9IXK6HmlJ
27 | Ovc3flyj7bb6tcW6gL903IVh1GmiX/tgU+5jvPhvP/NJLHXrv5rZ5/Ax/+yAx/vt
28 | yUJ43QL7YBYil++japMq4nKajX4Qb3yM0eFDnWDnOYzppsj5oEcbx7Ue/vsUHihg
29 | JNLquPY7kTfby5JKFY/rBhFSE35lPPTNNJkWR+EGx7nt7RgWoBHhK8JPqmDACLOB
30 | mBIglwGq+JzbJX2Krni+jMeAm9Qh+VYZTKNEkuxYXglA9QVah/wvyZnL/yHFElpj
31 | AAbaJnS698G+WOamobJEi5DkEzXFmSL7SoXhOVrzgu9x9jhPgKyDdPQGIWXDw+ow
32 | ydYurV3l4LkfjN2k3fGY35t+Y25RECjc72omzVlxKhkNG8wmTwIRnqj3Y8gs+f6S
33 | Zs208xuAKkgpkrmImRedOyzHwRMOU2psM7IGdrT2sYptvG/y7ORDpxHQdnWpGu7T
34 | lckZ5CoV2QLLHp4jKx6uiBtIi25GSblon2H/GUajO8WF7jJ8x5Kav3qcPXjqD2rj
35 | QPtgAqgAKOlDvE9z6yw5XQ==
36 | -----END PUBLIC KEY-----
37 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowser/messagesStyle.css:
--------------------------------------------------------------------------------
1 | body {
2 | font: "Arial", sans-serif;
3 | }
4 |
5 | .message {
6 | text-align: left;
7 | }
8 |
9 | .date, .dateFromMe {
10 | color: grey;
11 | }
12 |
13 | .messageText {
14 | color: black;
15 | }
16 |
17 | .messageTextFromMe {
18 | color: darkgrey;
19 | }
20 |
21 | .image {
22 |
23 | }
24 |
25 | .attachment {
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowser/phone country codes.json:
--------------------------------------------------------------------------------
1 | {"BD": "880", "BE": "32", "BF": "226", "BG": "359", "BA": "387", "BB": "+1-246", "WF": "681", "BL": "590", "BM": "+1-441", "BN": "673", "BO": "591", "BH": "973", "BI": "257", "BJ": "229", "BT": "975", "JM": "+1-876", "BV": "", "BW": "267", "WS": "685", "BQ": "599", "BR": "55", "BS": "+1-242", "JE": "+44-1534", "BY": "375", "BZ": "501", "RU": "7", "RW": "250", "RS": "381", "TL": "670", "RE": "262", "TM": "993", "TJ": "992", "RO": "40", "TK": "690", "GW": "245", "GU": "+1-671", "GT": "502", "GS": "", "GR": "30", "GQ": "240", "GP": "590", "JP": "81", "GY": "592", "GG": "+44-1481", "GF": "594", "GE": "995", "GD": "+1-473", "GB": "44", "GA": "241", "SV": "503", "GN": "224", "GM": "220", "GL": "299", "GI": "350", "GH": "233", "OM": "968", "TN": "216", "JO": "962", "HR": "385", "HT": "509", "HU": "36", "HK": "852", "HN": "504", "HM": " ", "VE": "58", "PR": "+1-787 and 1-939", "PS": "970", "PW": "680", "PT": "351", "SJ": "47", "PY": "595", "IQ": "964", "PA": "507", "PF": "689", "PG": "675", "PE": "51", "PK": "92", "PH": "63", "PN": "870", "PL": "48", "PM": "508", "ZM": "260", "EH": "212", "EE": "372", "EG": "20", "ZA": "27", "EC": "593", "IT": "39", "VN": "84", "SB": "677", "ET": "251", "SO": "252", "ZW": "263", "SA": "966", "ES": "34", "ER": "291", "ME": "382", "MD": "373", "MG": "261", "MF": "590", "MA": "212", "MC": "377", "UZ": "998", "MM": "95", "ML": "223", "MO": "853", "MN": "976", "MH": "692", "MK": "389", "MU": "230", "MT": "356", "MW": "265", "MV": "960", "MQ": "596", "MP": "+1-670", "MS": "+1-664", "MR": "222", "IM": "+44-1624", "UG": "256", "TZ": "255", "MY": "60", "MX": "52", "IL": "972", "FR": "33", "IO": "246", "SH": "290", "FI": "358", "FJ": "679", "FK": "500", "FM": "691", "FO": "298", "NI": "505", "NL": "31", "NO": "47", "NA": "264", "VU": "678", "NC": "687", "NE": "227", "NF": "672", "NG": "234", "NZ": "64", "NP": "977", "NR": "674", "NU": "683", "CK": "682", "XK": "", "CI": "225", "CH": "41", "CO": "57", "CN": "86", "CM": "237", "CL": "56", "CC": "61", "CA": "1", "CG": "242", "CF": "236", "CD": "243", "CZ": "420", "CY": "357", "CX": "61", "CR": "506", "CW": "599", "CV": "238", "CU": "53", "SZ": "268", "SY": "963", "SX": "599", "KG": "996", "KE": "254", "SS": "211", "SR": "597", "KI": "686", "KH": "855", "KN": "+1-869", "KM": "269", "ST": "239", "SK": "421", "KR": "82", "SI": "386", "KP": "850", "KW": "965", "SN": "221", "SM": "378", "SL": "232", "SC": "248", "KZ": "7", "KY": "+1-345", "SG": "65", "SE": "46", "SD": "249", "DO": "+1-809 and 1-829", "DM": "+1-767", "DJ": "253", "DK": "45", "VG": "+1-284", "DE": "49", "YE": "967", "DZ": "213", "US": "1", "UY": "598", "YT": "262", "UM": "1", "LB": "961", "LC": "+1-758", "LA": "856", "TV": "688", "TW": "886", "TT": "+1-868", "TR": "90", "LK": "94", "LI": "423", "LV": "371", "TO": "676", "LT": "370", "LU": "352", "LR": "231", "LS": "266", "TH": "66", "TF": "", "TG": "228", "TD": "235", "TC": "+1-649", "LY": "218", "VA": "379", "VC": "+1-784", "AE": "971", "AD": "376", "AG": "+1-268", "AF": "93", "AI": "+1-264", "VI": "+1-340", "IS": "354", "IR": "98", "AM": "374", "AL": "355", "AO": "244", "AQ": "", "AS": "+1-684", "AR": "54", "AU": "61", "AT": "43", "AW": "297", "IN": "91", "AX": "+358-18", "AZ": "994", "IE": "353", "ID": "62", "UA": "380", "QA": "974", "MZ": "258"}
--------------------------------------------------------------------------------
/MessagesHistoryBrowserTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowserTests/MessagesHistoryBrowserTests.swift:
--------------------------------------------------------------------------------
1 | //
2 | // MessagesHistoryBrowserTests.swift
3 | // MessagesHistoryBrowserTests
4 | //
5 | // Created by Guillaume Laurent on 27/09/15.
6 | // Copyright © 2015 Guillaume Laurent. All rights reserved.
7 | //
8 |
9 | import XCTest
10 | @testable import MessagesHistoryBrowser
11 |
12 | class MessagesHistoryBrowserTests: XCTestCase {
13 |
14 | override func setUp() {
15 | super.setUp()
16 | // Put setup code here. This method is called before the invocation of each test method in the class.
17 | }
18 |
19 | override func tearDown() {
20 | // Put teardown code here. This method is called after the invocation of each test method in the class.
21 | super.tearDown()
22 | }
23 |
24 | func testExample() {
25 | // This is an example of a functional test case.
26 | // Use XCTAssert and related functions to verify your tests produce the correct results.
27 | }
28 |
29 | func testPerformanceExample() {
30 | // This is an example of a performance test case.
31 | self.measure {
32 | // Put the code you want to measure the time of here.
33 | }
34 | }
35 |
36 | }
37 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowserUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/MessagesHistoryBrowserUITests/MessagesHistoryBrowserUITests.swift:
--------------------------------------------------------------------------------
1 | //
2 | // MessagesHistoryBrowserUITests.swift
3 | // MessagesHistoryBrowserUITests
4 | //
5 | // Created by Guillaume Laurent on 27/09/15.
6 | // Copyright © 2015 Guillaume Laurent. All rights reserved.
7 | //
8 |
9 | import XCTest
10 |
11 | class MessagesHistoryBrowserUITests: XCTestCase {
12 |
13 | override func setUp() {
14 | super.setUp()
15 |
16 | // Put setup code here. This method is called before the invocation of each test method in the class.
17 |
18 | // In UI tests it is usually best to stop immediately when a failure occurs.
19 | continueAfterFailure = false
20 | // UI tests must launch the application that they test. Doing this in setup will make sure it happens for each test method.
21 | XCUIApplication().launch()
22 |
23 | // In UI tests it’s important to set the initial state - such as interface orientation - required for your tests before they run. The setUp method is a good place to do this.
24 | }
25 |
26 | override func tearDown() {
27 | // Put teardown code here. This method is called after the invocation of each test method in the class.
28 | super.tearDown()
29 | }
30 |
31 | func testExample() {
32 | // Use recording to get started writing UI tests.
33 | // Use XCTAssert and related functions to verify your tests produce the correct results.
34 | }
35 |
36 | }
37 |
--------------------------------------------------------------------------------
/Podfile:
--------------------------------------------------------------------------------
1 | # Uncomment the next line to define a global platform for your project
2 | # platform :ios, '9.0'
3 |
4 | target 'MessagesHistoryBrowser' do
5 | # Comment the next line if you're not using Swift and don't want to use dynamic frameworks
6 | use_frameworks!
7 |
8 | # Pods for MessagesHistoryBrowser
9 | pod 'SQLite.swift'
10 | pod 'Sparkle'
11 |
12 | end
13 |
--------------------------------------------------------------------------------
/Podfile.lock:
--------------------------------------------------------------------------------
1 | PODS:
2 | - Sparkle (1.26.0)
3 | - SQLite.swift (0.12.2):
4 | - SQLite.swift/standard (= 0.12.2)
5 | - SQLite.swift/standard (0.12.2)
6 |
7 | DEPENDENCIES:
8 | - Sparkle
9 | - SQLite.swift
10 |
11 | SPEC REPOS:
12 | trunk:
13 | - Sparkle
14 | - SQLite.swift
15 |
16 | SPEC CHECKSUMS:
17 | Sparkle: d56d028f4b0c123577825f5d1004f6140d77f90e
18 | SQLite.swift: d2b4642190917051ce6bd1d49aab565fe794eea3
19 |
20 | PODFILE CHECKSUM: 25618fe46d4c7ace8a7bb7291c22aad2e38409b9
21 |
22 | COCOAPODS: 1.10.1
23 |
--------------------------------------------------------------------------------
/Pods/Manifest.lock:
--------------------------------------------------------------------------------
1 | PODS:
2 | - Sparkle (1.26.0)
3 | - SQLite.swift (0.12.2):
4 | - SQLite.swift/standard (= 0.12.2)
5 | - SQLite.swift/standard (0.12.2)
6 |
7 | DEPENDENCIES:
8 | - Sparkle
9 | - SQLite.swift
10 |
11 | SPEC REPOS:
12 | trunk:
13 | - Sparkle
14 | - SQLite.swift
15 |
16 | SPEC CHECKSUMS:
17 | Sparkle: d56d028f4b0c123577825f5d1004f6140d77f90e
18 | SQLite.swift: d2b4642190917051ce6bd1d49aab565fe794eea3
19 |
20 | PODFILE CHECKSUM: 25618fe46d4c7ace8a7bb7291c22aad2e38409b9
21 |
22 | COCOAPODS: 1.10.1
23 |
--------------------------------------------------------------------------------
/Pods/SQLite.swift/LICENSE.txt:
--------------------------------------------------------------------------------
1 | (The MIT License)
2 |
3 | Copyright (c) 2014-2015 Stephen Celis ()
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/Pods/SQLite.swift/Sources/SQLite/Core/Blob.swift:
--------------------------------------------------------------------------------
1 | //
2 | // SQLite.swift
3 | // https://github.com/stephencelis/SQLite.swift
4 | // Copyright © 2014-2015 Stephen Celis.
5 | //
6 | // Permission is hereby granted, free of charge, to any person obtaining a copy
7 | // of this software and associated documentation files (the "Software"), to deal
8 | // in the Software without restriction, including without limitation the rights
9 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 | // copies of the Software, and to permit persons to whom the Software is
11 | // furnished to do so, subject to the following conditions:
12 | //
13 | // The above copyright notice and this permission notice shall be included in
14 | // all copies or substantial portions of the Software.
15 | //
16 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22 | // THE SOFTWARE.
23 | //
24 |
25 | public struct Blob {
26 |
27 | public let bytes: [UInt8]
28 |
29 | public init(bytes: [UInt8]) {
30 | self.bytes = bytes
31 | }
32 |
33 | public init(bytes: UnsafeRawPointer, length: Int) {
34 | let i8bufptr = UnsafeBufferPointer(start: bytes.assumingMemoryBound(to: UInt8.self), count: length)
35 | self.init(bytes: [UInt8](i8bufptr))
36 | }
37 |
38 | public func toHex() -> String {
39 | return bytes.map {
40 | ($0 < 16 ? "0" : "") + String($0, radix: 16, uppercase: false)
41 | }.joined(separator: "")
42 | }
43 |
44 | }
45 |
46 | extension Blob : CustomStringConvertible {
47 |
48 | public var description: String {
49 | return "x'\(toHex())'"
50 | }
51 |
52 | }
53 |
54 | extension Blob : Equatable {
55 |
56 | }
57 |
58 | public func ==(lhs: Blob, rhs: Blob) -> Bool {
59 | return lhs.bytes == rhs.bytes
60 | }
61 |
--------------------------------------------------------------------------------
/Pods/SQLite.swift/Sources/SQLite/Core/Errors.swift:
--------------------------------------------------------------------------------
1 | import Foundation
2 |
3 | public enum QueryError: Error, CustomStringConvertible {
4 | case noSuchTable(name: String)
5 | case noSuchColumn(name: String, columns: [String])
6 | case ambiguousColumn(name: String, similar: [String])
7 | case unexpectedNullValue(name: String)
8 |
9 | public var description: String {
10 | switch self {
11 | case .noSuchTable(let name):
12 | return "No such table: \(name)"
13 | case .noSuchColumn(let name, let columns):
14 | return "No such column `\(name)` in columns \(columns)"
15 | case .ambiguousColumn(let name, let similar):
16 | return "Ambiguous column `\(name)` (please disambiguate: \(similar))"
17 | case .unexpectedNullValue(let name):
18 | return "Unexpected null value for column `\(name)`"
19 | }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/Pods/SQLite.swift/Sources/SQLite/Core/Value.swift:
--------------------------------------------------------------------------------
1 | //
2 | // SQLite.swift
3 | // https://github.com/stephencelis/SQLite.swift
4 | // Copyright © 2014-2015 Stephen Celis.
5 | //
6 | // Permission is hereby granted, free of charge, to any person obtaining a copy
7 | // of this software and associated documentation files (the "Software"), to deal
8 | // in the Software without restriction, including without limitation the rights
9 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 | // copies of the Software, and to permit persons to whom the Software is
11 | // furnished to do so, subject to the following conditions:
12 | //
13 | // The above copyright notice and this permission notice shall be included in
14 | // all copies or substantial portions of the Software.
15 | //
16 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22 | // THE SOFTWARE.
23 | //
24 |
25 | /// - Warning: `Binding` is a protocol that SQLite.swift uses internally to
26 | /// directly map SQLite types to Swift types.
27 | ///
28 | /// Do not conform custom types to the Binding protocol. See the `Value`
29 | /// protocol, instead.
30 | public protocol Binding {}
31 |
32 | public protocol Number : Binding {}
33 |
34 | public protocol Value : Expressible { // extensions cannot have inheritance clauses
35 |
36 | associatedtype ValueType = Self
37 |
38 | associatedtype Datatype : Binding
39 |
40 | static var declaredDatatype: String { get }
41 |
42 | static func fromDatatypeValue(_ datatypeValue: Datatype) -> ValueType
43 |
44 | var datatypeValue: Datatype { get }
45 |
46 | }
47 |
48 | extension Double : Number, Value {
49 |
50 | public static let declaredDatatype = "REAL"
51 |
52 | public static func fromDatatypeValue(_ datatypeValue: Double) -> Double {
53 | return datatypeValue
54 | }
55 |
56 | public var datatypeValue: Double {
57 | return self
58 | }
59 |
60 | }
61 |
62 | extension Int64 : Number, Value {
63 |
64 | public static let declaredDatatype = "INTEGER"
65 |
66 | public static func fromDatatypeValue(_ datatypeValue: Int64) -> Int64 {
67 | return datatypeValue
68 | }
69 |
70 | public var datatypeValue: Int64 {
71 | return self
72 | }
73 |
74 | }
75 |
76 | extension String : Binding, Value {
77 |
78 | public static let declaredDatatype = "TEXT"
79 |
80 | public static func fromDatatypeValue(_ datatypeValue: String) -> String {
81 | return datatypeValue
82 | }
83 |
84 | public var datatypeValue: String {
85 | return self
86 | }
87 |
88 | }
89 |
90 | extension Blob : Binding, Value {
91 |
92 | public static let declaredDatatype = "BLOB"
93 |
94 | public static func fromDatatypeValue(_ datatypeValue: Blob) -> Blob {
95 | return datatypeValue
96 | }
97 |
98 | public var datatypeValue: Blob {
99 | return self
100 | }
101 |
102 | }
103 |
104 | // MARK: -
105 |
106 | extension Bool : Binding, Value {
107 |
108 | public static var declaredDatatype = Int64.declaredDatatype
109 |
110 | public static func fromDatatypeValue(_ datatypeValue: Int64) -> Bool {
111 | return datatypeValue != 0
112 | }
113 |
114 | public var datatypeValue: Int64 {
115 | return self ? 1 : 0
116 | }
117 |
118 | }
119 |
120 | extension Int : Number, Value {
121 |
122 | public static var declaredDatatype = Int64.declaredDatatype
123 |
124 | public static func fromDatatypeValue(_ datatypeValue: Int64) -> Int {
125 | return Int(datatypeValue)
126 | }
127 |
128 | public var datatypeValue: Int64 {
129 | return Int64(self)
130 | }
131 |
132 | }
133 |
--------------------------------------------------------------------------------
/Pods/SQLite.swift/Sources/SQLite/Extensions/FTS5.swift:
--------------------------------------------------------------------------------
1 | //
2 | // SQLite.swift
3 | // https://github.com/stephencelis/SQLite.swift
4 | // Copyright © 2014-2015 Stephen Celis.
5 | //
6 | // Permission is hereby granted, free of charge, to any person obtaining a copy
7 | // of this software and associated documentation files (the "Software"), to deal
8 | // in the Software without restriction, including without limitation the rights
9 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 | // copies of the Software, and to permit persons to whom the Software is
11 | // furnished to do so, subject to the following conditions:
12 | //
13 | // The above copyright notice and this permission notice shall be included in
14 | // all copies or substantial portions of the Software.
15 | //
16 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22 | // THE SOFTWARE.
23 | //
24 |
25 | extension Module {
26 | public static func FTS5(_ config: FTS5Config) -> Module {
27 | return Module(name: "fts5", arguments: config.arguments())
28 | }
29 | }
30 |
31 | /// Configuration for the [FTS5](https://www.sqlite.org/fts5.html) extension.
32 | ///
33 | /// **Note:** this is currently only applicable when using SQLite.swift together with a FTS5-enabled version
34 | /// of SQLite.
35 | open class FTS5Config : FTSConfig {
36 | public enum Detail : CustomStringConvertible {
37 | /// store rowid, column number, term offset
38 | case full
39 | /// store rowid, column number
40 | case column
41 | /// store rowid
42 | case none
43 |
44 | public var description: String {
45 | switch self {
46 | case .full: return "full"
47 | case .column: return "column"
48 | case .none: return "none"
49 | }
50 | }
51 | }
52 |
53 | var detail: Detail?
54 | var contentRowId: Expressible?
55 | var columnSize: Int?
56 |
57 | override public init() {
58 | }
59 |
60 | /// [External Content Tables](https://www.sqlite.org/fts5.html#section_4_4_2)
61 | open func contentRowId(_ column: Expressible) -> Self {
62 | self.contentRowId = column
63 | return self
64 | }
65 |
66 | /// [The Columnsize Option](https://www.sqlite.org/fts5.html#section_4_5)
67 | open func columnSize(_ size: Int) -> Self {
68 | self.columnSize = size
69 | return self
70 | }
71 |
72 | /// [The Detail Option](https://www.sqlite.org/fts5.html#section_4_6)
73 | open func detail(_ detail: Detail) -> Self {
74 | self.detail = detail
75 | return self
76 | }
77 |
78 | override func options() -> Options {
79 | var options = super.options()
80 | options.append("content_rowid", value: contentRowId)
81 | if let columnSize = columnSize {
82 | options.append("columnsize", value: Expression(value: columnSize))
83 | }
84 | options.append("detail", value: detail)
85 | return options
86 | }
87 |
88 | override func formatColumnDefinitions() -> [Expressible] {
89 | return columnDefinitions.map { definition in
90 | if definition.options.contains(.unindexed) {
91 | return " ".join([definition.0, Expression(literal: "UNINDEXED")])
92 | } else {
93 | return definition.0
94 | }
95 | }
96 | }
97 | }
98 |
--------------------------------------------------------------------------------
/Pods/SQLite.swift/Sources/SQLite/Extensions/RTree.swift:
--------------------------------------------------------------------------------
1 | //
2 | // SQLite.swift
3 | // https://github.com/stephencelis/SQLite.swift
4 | // Copyright © 2014-2015 Stephen Celis.
5 | //
6 | // Permission is hereby granted, free of charge, to any person obtaining a copy
7 | // of this software and associated documentation files (the "Software"), to deal
8 | // in the Software without restriction, including without limitation the rights
9 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 | // copies of the Software, and to permit persons to whom the Software is
11 | // furnished to do so, subject to the following conditions:
12 | //
13 | // The above copyright notice and this permission notice shall be included in
14 | // all copies or substantial portions of the Software.
15 | //
16 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22 | // THE SOFTWARE.
23 | //
24 |
25 | extension Module {
26 |
27 | public static func RTree(_ primaryKey: Expression, _ pairs: (Expression, Expression)...) -> Module where T.Datatype == Int64, U.Datatype == Double {
28 | var arguments: [Expressible] = [primaryKey]
29 |
30 | for pair in pairs {
31 | arguments.append(contentsOf: [pair.0, pair.1] as [Expressible])
32 | }
33 |
34 | return Module(name: "rtree", arguments: arguments)
35 | }
36 |
37 | }
38 |
--------------------------------------------------------------------------------
/Pods/SQLite.swift/Sources/SQLite/Foundation.swift:
--------------------------------------------------------------------------------
1 | //
2 | // SQLite.swift
3 | // https://github.com/stephencelis/SQLite.swift
4 | // Copyright © 2014-2015 Stephen Celis.
5 | //
6 | // Permission is hereby granted, free of charge, to any person obtaining a copy
7 | // of this software and associated documentation files (the "Software"), to deal
8 | // in the Software without restriction, including without limitation the rights
9 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 | // copies of the Software, and to permit persons to whom the Software is
11 | // furnished to do so, subject to the following conditions:
12 | //
13 | // The above copyright notice and this permission notice shall be included in
14 | // all copies or substantial portions of the Software.
15 | //
16 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22 | // THE SOFTWARE.
23 | //
24 |
25 | import Foundation
26 |
27 | extension Data : Value {
28 |
29 | public static var declaredDatatype: String {
30 | return Blob.declaredDatatype
31 | }
32 |
33 | public static func fromDatatypeValue(_ dataValue: Blob) -> Data {
34 | return Data(dataValue.bytes)
35 | }
36 |
37 | public var datatypeValue: Blob {
38 | return withUnsafeBytes { (pointer: UnsafeRawBufferPointer) -> Blob in
39 | return Blob(bytes: pointer.baseAddress!, length: count)
40 | }
41 | }
42 |
43 | }
44 |
45 | extension Date : Value {
46 |
47 | public static var declaredDatatype: String {
48 | return String.declaredDatatype
49 | }
50 |
51 | public static func fromDatatypeValue(_ stringValue: String) -> Date {
52 | return dateFormatter.date(from: stringValue)!
53 | }
54 |
55 | public var datatypeValue: String {
56 | return dateFormatter.string(from: self)
57 | }
58 |
59 | }
60 |
61 | /// A global date formatter used to serialize and deserialize `NSDate` objects.
62 | /// If multiple date formats are used in an application’s database(s), use a
63 | /// custom `Value` type per additional format.
64 | public var dateFormatter: DateFormatter = {
65 | let formatter = DateFormatter()
66 | formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSS"
67 | formatter.locale = Locale(identifier: "en_US_POSIX")
68 | formatter.timeZone = TimeZone(secondsFromGMT: 0)
69 | return formatter
70 | }()
71 |
--------------------------------------------------------------------------------
/Pods/SQLite.swift/Sources/SQLite/Helpers.swift:
--------------------------------------------------------------------------------
1 | //
2 | // SQLite.swift
3 | // https://github.com/stephencelis/SQLite.swift
4 | // Copyright © 2014-2015 Stephen Celis.
5 | //
6 | // Permission is hereby granted, free of charge, to any person obtaining a copy
7 | // of this software and associated documentation files (the "Software"), to deal
8 | // in the Software without restriction, including without limitation the rights
9 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 | // copies of the Software, and to permit persons to whom the Software is
11 | // furnished to do so, subject to the following conditions:
12 | //
13 | // The above copyright notice and this permission notice shall be included in
14 | // all copies or substantial portions of the Software.
15 | //
16 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22 | // THE SOFTWARE.
23 | //
24 |
25 | #if SQLITE_SWIFT_STANDALONE
26 | import sqlite3
27 | #elseif SQLITE_SWIFT_SQLCIPHER
28 | import SQLCipher
29 | #elseif os(Linux)
30 | import CSQLite
31 | #else
32 | import SQLite3
33 | #endif
34 |
35 | public typealias Star = (Expression?, Expression?) -> Expression
36 |
37 | public func *(_: Expression?, _: Expression?) -> Expression {
38 | return Expression(literal: "*")
39 | }
40 |
41 | public protocol _OptionalType {
42 |
43 | associatedtype WrappedType
44 |
45 | }
46 |
47 | extension Optional : _OptionalType {
48 |
49 | public typealias WrappedType = Wrapped
50 |
51 | }
52 |
53 | // let SQLITE_STATIC = unsafeBitCast(0, sqlite3_destructor_type.self)
54 | let SQLITE_TRANSIENT = unsafeBitCast(-1, to: sqlite3_destructor_type.self)
55 |
56 | extension String {
57 |
58 | func quote(_ mark: Character = "\"") -> String {
59 | let escaped = reduce("") { string, character in
60 | string + (character == mark ? "\(mark)\(mark)" : "\(character)")
61 | }
62 | return "\(mark)\(escaped)\(mark)"
63 | }
64 |
65 | func join(_ expressions: [Expressible]) -> Expressible {
66 | var (template, bindings) = ([String](), [Binding?]())
67 | for expressible in expressions {
68 | let expression = expressible.expression
69 | template.append(expression.template)
70 | bindings.append(contentsOf: expression.bindings)
71 | }
72 | return Expression(template.joined(separator: self), bindings)
73 | }
74 |
75 | func infix(_ lhs: Expressible, _ rhs: Expressible, wrap: Bool = true) -> Expression {
76 | let expression = Expression(" \(self) ".join([lhs, rhs]).expression)
77 | guard wrap else {
78 | return expression
79 | }
80 | return "".wrap(expression)
81 | }
82 |
83 | func prefix(_ expressions: Expressible) -> Expressible {
84 | return "\(self) ".wrap(expressions) as Expression
85 | }
86 |
87 | func prefix(_ expressions: [Expressible]) -> Expressible {
88 | return "\(self) ".wrap(expressions) as Expression
89 | }
90 |
91 | func wrap(_ expression: Expressible) -> Expression {
92 | return Expression("\(self)(\(expression.expression.template))", expression.expression.bindings)
93 | }
94 |
95 | func wrap(_ expressions: [Expressible]) -> Expression {
96 | return wrap(", ".join(expressions))
97 | }
98 |
99 | }
100 |
101 | func transcode(_ literal: Binding?) -> String {
102 | guard let literal = literal else { return "NULL" }
103 |
104 | switch literal {
105 | case let blob as Blob:
106 | return blob.description
107 | case let string as String:
108 | return string.quote("'")
109 | case let binding:
110 | return "\(binding)"
111 | }
112 | }
113 |
114 | func value(_ v: Binding) -> A {
115 | return A.fromDatatypeValue(v as! A.Datatype) as! A
116 | }
117 |
118 | func value(_ v: Binding?) -> A {
119 | return value(v!)
120 | }
121 |
--------------------------------------------------------------------------------
/Pods/SQLite.swift/Sources/SQLite/SQLite.h:
--------------------------------------------------------------------------------
1 | @import Foundation;
2 |
3 | FOUNDATION_EXPORT double SQLiteVersionNumber;
4 | FOUNDATION_EXPORT const unsigned char SQLiteVersionString[];
5 |
6 | #import "SQLiteObjc.h"
7 |
--------------------------------------------------------------------------------
/Pods/SQLite.swift/Sources/SQLite/Typed/Collation.swift:
--------------------------------------------------------------------------------
1 | //
2 | // SQLite.swift
3 | // https://github.com/stephencelis/SQLite.swift
4 | // Copyright © 2014-2015 Stephen Celis.
5 | //
6 | // Permission is hereby granted, free of charge, to any person obtaining a copy
7 | // of this software and associated documentation files (the "Software"), to deal
8 | // in the Software without restriction, including without limitation the rights
9 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 | // copies of the Software, and to permit persons to whom the Software is
11 | // furnished to do so, subject to the following conditions:
12 | //
13 | // The above copyright notice and this permission notice shall be included in
14 | // all copies or substantial portions of the Software.
15 | //
16 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22 | // THE SOFTWARE.
23 | //
24 |
25 | /// A collating function used to compare to strings.
26 | ///
27 | /// - SeeAlso:
28 | public enum Collation {
29 |
30 | /// Compares string by raw data.
31 | case binary
32 |
33 | /// Like binary, but folds uppercase ASCII letters into their lowercase
34 | /// equivalents.
35 | case nocase
36 |
37 | /// Like binary, but strips trailing space.
38 | case rtrim
39 |
40 | /// A custom collating sequence identified by the given string, registered
41 | /// using `Database.create(collation:…)`
42 | case custom(String)
43 |
44 | }
45 |
46 | extension Collation : Expressible {
47 |
48 | public var expression: Expression {
49 | return Expression(literal: description)
50 | }
51 |
52 | }
53 |
54 | extension Collation : CustomStringConvertible {
55 |
56 | public var description : String {
57 | switch self {
58 | case .binary:
59 | return "BINARY"
60 | case .nocase:
61 | return "NOCASE"
62 | case .rtrim:
63 | return "RTRIM"
64 | case .custom(let collation):
65 | return collation.quote()
66 | }
67 | }
68 |
69 | }
70 |
--------------------------------------------------------------------------------
/Pods/SQLite.swift/Sources/SQLite/Typed/Expression.swift:
--------------------------------------------------------------------------------
1 | //
2 | // SQLite.swift
3 | // https://github.com/stephencelis/SQLite.swift
4 | // Copyright © 2014-2015 Stephen Celis.
5 | //
6 | // Permission is hereby granted, free of charge, to any person obtaining a copy
7 | // of this software and associated documentation files (the "Software"), to deal
8 | // in the Software without restriction, including without limitation the rights
9 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 | // copies of the Software, and to permit persons to whom the Software is
11 | // furnished to do so, subject to the following conditions:
12 | //
13 | // The above copyright notice and this permission notice shall be included in
14 | // all copies or substantial portions of the Software.
15 | //
16 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22 | // THE SOFTWARE.
23 | //
24 |
25 | public protocol ExpressionType : Expressible { // extensions cannot have inheritance clauses
26 |
27 | associatedtype UnderlyingType = Void
28 |
29 | var template: String { get }
30 | var bindings: [Binding?] { get }
31 |
32 | init(_ template: String, _ bindings: [Binding?])
33 |
34 | }
35 |
36 | extension ExpressionType {
37 |
38 | public init(literal: String) {
39 | self.init(literal, [])
40 | }
41 |
42 | public init(_ identifier: String) {
43 | self.init(literal: identifier.quote())
44 | }
45 |
46 | public init(_ expression: U) {
47 | self.init(expression.template, expression.bindings)
48 | }
49 |
50 | }
51 |
52 | /// An `Expression` represents a raw SQL fragment and any associated bindings.
53 | public struct Expression : ExpressionType {
54 |
55 | public typealias UnderlyingType = Datatype
56 |
57 | public var template: String
58 | public var bindings: [Binding?]
59 |
60 | public init(_ template: String, _ bindings: [Binding?]) {
61 | self.template = template
62 | self.bindings = bindings
63 | }
64 |
65 | }
66 |
67 | public protocol Expressible {
68 |
69 | var expression: Expression { get }
70 |
71 | }
72 |
73 | extension Expressible {
74 |
75 | // naïve compiler for statements that can’t be bound, e.g., CREATE TABLE
76 | // FIXME: make internal (0.13.0)
77 | public func asSQL() -> String {
78 | let expressed = expression
79 | var idx = 0
80 | return expressed.template.reduce("") { template, character in
81 | let transcoded: String
82 |
83 | if character == "?" {
84 | transcoded = transcode(expressed.bindings[idx])
85 | idx += 1
86 | } else {
87 | transcoded = String(character)
88 | }
89 | return template + transcoded
90 | }
91 | }
92 |
93 | }
94 |
95 | extension ExpressionType {
96 |
97 | public var expression: Expression {
98 | return Expression(template, bindings)
99 | }
100 |
101 | public var asc: Expressible {
102 | return " ".join([self, Expression(literal: "ASC")])
103 | }
104 |
105 | public var desc: Expressible {
106 | return " ".join([self, Expression(literal: "DESC")])
107 | }
108 |
109 | }
110 |
111 | extension ExpressionType where UnderlyingType : Value {
112 |
113 | public init(value: UnderlyingType) {
114 | self.init("?", [value.datatypeValue])
115 | }
116 |
117 | }
118 |
119 | extension ExpressionType where UnderlyingType : _OptionalType, UnderlyingType.WrappedType : Value {
120 |
121 | public static var null: Self {
122 | return self.init(value: nil)
123 | }
124 |
125 | public init(value: UnderlyingType.WrappedType?) {
126 | self.init("?", [value?.datatypeValue])
127 | }
128 |
129 | }
130 |
131 | extension Value {
132 |
133 | public var expression: Expression {
134 | return Expression(value: self).expression
135 | }
136 |
137 | }
138 |
139 | public let rowid = Expression("ROWID")
140 |
141 | public func cast(_ expression: Expression) -> Expression {
142 | return Expression("CAST (\(expression.template) AS \(U.declaredDatatype))", expression.bindings)
143 | }
144 |
145 | public func cast(_ expression: Expression) -> Expression {
146 | return Expression("CAST (\(expression.template) AS \(U.declaredDatatype))", expression.bindings)
147 | }
148 |
--------------------------------------------------------------------------------
/Pods/SQLite.swift/Sources/SQLiteObjc/include/SQLiteObjc.h:
--------------------------------------------------------------------------------
1 | //
2 | // SQLite.swift
3 | // https://github.com/stephencelis/SQLite.swift
4 | // Copyright © 2014-2015 Stephen Celis.
5 | //
6 | // Permission is hereby granted, free of charge, to any person obtaining a copy
7 | // of this software and associated documentation files (the "Software"), to deal
8 | // in the Software without restriction, including without limitation the rights
9 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 | // copies of the Software, and to permit persons to whom the Software is
11 | // furnished to do so, subject to the following conditions:
12 | //
13 | // The above copyright notice and this permission notice shall be included in
14 | // all copies or substantial portions of the Software.
15 | //
16 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22 | // THE SOFTWARE.
23 | //
24 |
25 | @import Foundation;
26 | @import SQLite3;
27 |
28 | NS_ASSUME_NONNULL_BEGIN
29 | typedef NSString * _Nullable (^_SQLiteTokenizerNextCallback)(const char *input, int *inputOffset, int *inputLength);
30 | int _SQLiteRegisterTokenizer(sqlite3 *db, const char *module, const char *tokenizer, _Nullable _SQLiteTokenizerNextCallback callback);
31 | NS_ASSUME_NONNULL_END
32 |
33 |
--------------------------------------------------------------------------------
/Pods/Sparkle/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2006-2013 Andy Matuschak.
2 | Copyright (c) 2009-2013 Elgato Systems GmbH.
3 | Copyright (c) 2011-2014 Kornel Lesiński.
4 | Copyright (c) 2015-2017 Mayur Pawashe.
5 | Copyright (c) 2014 C.W. Betts.
6 | Copyright (c) 2014 Petroules Corporation.
7 | Copyright (c) 2014 Big Nerd Ranch.
8 | All rights reserved.
9 |
10 | Permission is hereby granted, free of charge, to any person obtaining a copy of
11 | this software and associated documentation files (the "Software"), to deal in
12 | the Software without restriction, including without limitation the rights to
13 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
14 | the Software, and to permit persons to whom the Software is furnished to do so,
15 | subject to the following conditions:
16 |
17 | The above copyright notice and this permission notice shall be included in all
18 | copies or substantial portions of the Software.
19 |
20 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
22 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
23 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
24 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
25 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
26 |
27 | =================
28 | EXTERNAL LICENSES
29 | =================
30 |
31 | bspatch.c and bsdiff.c, from bsdiff 4.3 :
32 | Copyright (c) 2003-2005 Colin Percival.
33 |
34 | sais.c and sais.c, from sais-lite (2010/08/07) :
35 | Copyright (c) 2008-2010 Yuta Mori.
36 |
37 | SUDSAVerifier.m:
38 | Copyright (c) 2011 Mark Hamlin.
39 |
40 | All rights reserved.
41 |
42 | Redistribution and use in source and binary forms, with or without
43 | modification, are permitted providing that the following conditions
44 | are met:
45 | 1. Redistributions of source code must retain the above copyright
46 | notice, this list of conditions and the following disclaimer.
47 | 2. Redistributions in binary form must reproduce the above copyright
48 | notice, this list of conditions and the following disclaimer in the
49 | documentation and/or other materials provided with the distribution.
50 |
51 | THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
52 | IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
53 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
54 | ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
55 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
56 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
57 | OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
58 | HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
59 | STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
60 | IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
61 | POSSIBILITY OF SUCH DAMAGE.
62 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Headers:
--------------------------------------------------------------------------------
1 | Versions/Current/Headers
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Modules:
--------------------------------------------------------------------------------
1 | Versions/Current/Modules
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/PrivateHeaders:
--------------------------------------------------------------------------------
1 | Versions/Current/PrivateHeaders
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Resources:
--------------------------------------------------------------------------------
1 | Versions/Current/Resources
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Sparkle:
--------------------------------------------------------------------------------
1 | Versions/Current/Sparkle
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Headers/SPUDownloadData.h:
--------------------------------------------------------------------------------
1 | //
2 | // SPUDownloadData.h
3 | // Sparkle
4 | //
5 | // Created by Mayur Pawashe on 8/10/16.
6 | // Copyright © 2016 Sparkle Project. All rights reserved.
7 | //
8 |
9 | #if __has_feature(modules)
10 | @import Foundation;
11 | #else
12 | #import
13 | #endif
14 |
15 | #import "SUExport.h"
16 |
17 | NS_ASSUME_NONNULL_BEGIN
18 |
19 | /*!
20 | * A class for containing downloaded data along with some information about it.
21 | */
22 | SU_EXPORT @interface SPUDownloadData : NSObject
23 |
24 | - (instancetype)initWithData:(NSData *)data textEncodingName:(NSString * _Nullable)textEncodingName MIMEType:(NSString * _Nullable)MIMEType;
25 |
26 | /*!
27 | * The raw data that was downloaded.
28 | */
29 | @property (nonatomic, readonly) NSData *data;
30 |
31 | /*!
32 | * The IANA charset encoding name if available. Eg: "utf-8"
33 | */
34 | @property (nonatomic, readonly, nullable, copy) NSString *textEncodingName;
35 |
36 | /*!
37 | * The MIME type if available. Eg: "text/plain"
38 | */
39 | @property (nonatomic, readonly, nullable, copy) NSString *MIMEType;
40 |
41 | @end
42 |
43 | NS_ASSUME_NONNULL_END
44 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Headers/SPUDownloader.h:
--------------------------------------------------------------------------------
1 | //
2 | // SPUDownloader.h
3 | // Downloader
4 | //
5 | // Created by Mayur Pawashe on 4/1/16.
6 | // Copyright © 2016 Sparkle Project. All rights reserved.
7 | //
8 |
9 | #if __has_feature(modules)
10 | @import Foundation;
11 | #else
12 | #import
13 | #endif
14 | #import "SPUDownloaderProtocol.h"
15 |
16 | @protocol SPUDownloaderDelegate;
17 |
18 | // This object implements the protocol which we have defined. It provides the actual behavior for the service. It is 'exported' by the service to make it available to the process hosting the service over an NSXPCConnection.
19 | @interface SPUDownloader : NSObject
20 |
21 | // Due to XPC remote object reasons, this delegate is strongly referenced
22 | // Invoke cleanup when done with this instance
23 | - (instancetype)initWithDelegate:(id )delegate;
24 |
25 | @end
26 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Headers/SPUDownloaderDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // SPUDownloaderDelegate.h
3 | // Sparkle
4 | //
5 | // Created by Mayur Pawashe on 4/1/16.
6 | // Copyright © 2016 Sparkle Project. All rights reserved.
7 | //
8 |
9 | #if __has_feature(modules)
10 | @import Foundation;
11 | #else
12 | #import
13 | #endif
14 |
15 | NS_ASSUME_NONNULL_BEGIN
16 |
17 | @class SPUDownloadData;
18 |
19 | @protocol SPUDownloaderDelegate
20 |
21 | // This is only invoked for persistent downloads
22 | - (void)downloaderDidSetDestinationName:(NSString *)destinationName temporaryDirectory:(NSString *)temporaryDirectory;
23 |
24 | // Under rare cases, this may be called more than once, in which case the current progress should be reset back to 0
25 | // This is only invoked for persistent downloads
26 | - (void)downloaderDidReceiveExpectedContentLength:(int64_t)expectedContentLength;
27 |
28 | // This is only invoked for persistent downloads
29 | - (void)downloaderDidReceiveDataOfLength:(uint64_t)length;
30 |
31 | // downloadData is nil if this is a persisent download, otherwise it's non-nil if it's a temporary download
32 | - (void)downloaderDidFinishWithTemporaryDownloadData:(SPUDownloadData * _Nullable)downloadData;
33 |
34 | - (void)downloaderDidFailWithError:(NSError *)error;
35 |
36 | @end
37 |
38 | NS_ASSUME_NONNULL_END
39 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Headers/SPUDownloaderProtocol.h:
--------------------------------------------------------------------------------
1 | //
2 | // SPUDownloaderProtocol.h
3 | // PersistentDownloader
4 | //
5 | // Created by Mayur Pawashe on 4/1/16.
6 | // Copyright © 2016 Sparkle Project. All rights reserved.
7 | //
8 |
9 | #if __has_feature(modules)
10 | @import Foundation;
11 | #else
12 | #import
13 | #endif
14 |
15 | NS_ASSUME_NONNULL_BEGIN
16 |
17 | @class SPUURLRequest;
18 |
19 | // The protocol that this service will vend as its API. This header file will also need to be visible to the process hosting the service.
20 | @protocol SPUDownloaderProtocol
21 |
22 | - (void)startPersistentDownloadWithRequest:(SPUURLRequest *)request bundleIdentifier:(NSString *)bundleIdentifier desiredFilename:(NSString *)desiredFilename;
23 |
24 | - (void)startTemporaryDownloadWithRequest:(SPUURLRequest *)request;
25 |
26 | - (void)downloadDidFinish;
27 |
28 | - (void)cleanup;
29 |
30 | - (void)cancel;
31 |
32 | @end
33 |
34 | NS_ASSUME_NONNULL_END
35 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Headers/SPUDownloaderSession.h:
--------------------------------------------------------------------------------
1 | //
2 | // SPUDownloaderSession.h
3 | // Sparkle
4 | //
5 | // Created by Deadpikle on 12/20/17.
6 | // Copyright © 2017 Sparkle Project. All rights reserved.
7 | //
8 |
9 | #if __has_feature(modules)
10 | @import Foundation;
11 | #else
12 | #import
13 | #endif
14 | #import "SPUDownloader.h"
15 | #import "SPUDownloaderProtocol.h"
16 |
17 | NS_CLASS_AVAILABLE(NSURLSESSION_AVAILABLE, 7_0)
18 | @interface SPUDownloaderSession : SPUDownloader
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Headers/SPUURLRequest.h:
--------------------------------------------------------------------------------
1 | //
2 | // SPUURLRequest.h
3 | // Sparkle
4 | //
5 | // Created by Mayur Pawashe on 5/19/16.
6 | // Copyright © 2016 Sparkle Project. All rights reserved.
7 | //
8 |
9 | #if __has_feature(modules)
10 | @import Foundation;
11 | #else
12 | #import
13 | #endif
14 |
15 | NS_ASSUME_NONNULL_BEGIN
16 |
17 | // A class that wraps NSURLRequest and implements NSSecureCoding
18 | // This class exists because NSURLRequest did not support NSSecureCoding in macOS 10.8
19 | // I have not verified if NSURLRequest in 10.9 implements NSSecureCoding or not
20 | @interface SPUURLRequest : NSObject
21 |
22 | // Creates a new URL request
23 | // Only these properties are currently tracked:
24 | // * URL
25 | // * Cache policy
26 | // * Timeout interval
27 | // * HTTP header fields
28 | // * networkServiceType
29 | + (instancetype)URLRequestWithRequest:(NSURLRequest *)request;
30 |
31 | @property (nonatomic, readonly) NSURLRequest *request;
32 |
33 | @end
34 |
35 | NS_ASSUME_NONNULL_END
36 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Headers/SUAppcast.h:
--------------------------------------------------------------------------------
1 | //
2 | // SUAppcast.h
3 | // Sparkle
4 | //
5 | // Created by Andy Matuschak on 3/12/06.
6 | // Copyright 2006 Andy Matuschak. All rights reserved.
7 | //
8 |
9 | #ifndef SUAPPCAST_H
10 | #define SUAPPCAST_H
11 |
12 | #import
13 | #import "SUExport.h"
14 |
15 | NS_ASSUME_NONNULL_BEGIN
16 |
17 | @class SUAppcastItem;
18 | SU_EXPORT @interface SUAppcast : NSObject
19 |
20 | @property (copy, nullable) NSString *userAgentString;
21 | @property (copy, nullable) NSDictionary *httpHeaders;
22 |
23 | - (void)fetchAppcastFromURL:(NSURL *)url inBackground:(BOOL)bg completionBlock:(void (^)(NSError *_Nullable))err;
24 | - (SUAppcast *)copyWithoutDeltaUpdates;
25 |
26 | @property (readonly, copy, nullable) NSArray *items;
27 | @end
28 |
29 | NS_ASSUME_NONNULL_END
30 |
31 | #endif
32 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h:
--------------------------------------------------------------------------------
1 | //
2 | // SUAppcastItem.h
3 | // Sparkle
4 | //
5 | // Created by Andy Matuschak on 3/12/06.
6 | // Copyright 2006 Andy Matuschak. All rights reserved.
7 | //
8 |
9 | #ifndef SUAPPCASTITEM_H
10 | #define SUAPPCASTITEM_H
11 |
12 | #if __has_feature(modules)
13 | @import Foundation;
14 | #else
15 | #import
16 | #endif
17 | #import "SUExport.h"
18 | @class SUSignatures;
19 |
20 | SU_EXPORT @interface SUAppcastItem : NSObject
21 | @property (copy, readonly) NSString *title;
22 | @property (copy, readonly) NSString *dateString;
23 | @property (copy, readonly) NSDate *date;
24 | @property (copy, readonly) NSString *itemDescription;
25 | @property (strong, readonly) NSURL *releaseNotesURL;
26 | @property (strong, readonly) SUSignatures *signatures;
27 | @property (copy, readonly) NSString *minimumSystemVersion;
28 | @property (copy, readonly) NSString *maximumSystemVersion;
29 | @property (strong, readonly) NSURL *fileURL;
30 | @property (nonatomic, readonly) uint64_t contentLength;
31 | @property (copy, readonly) NSString *versionString;
32 | @property (copy, readonly) NSString *osString;
33 | @property (copy, readonly) NSString *displayVersionString;
34 | @property (copy, readonly) NSDictionary *deltaUpdates;
35 | @property (strong, readonly) NSURL *infoURL;
36 | @property (copy, readonly) NSNumber* phasedRolloutInterval;
37 | @property (copy, readonly) NSString *minimumAutoupdateVersion;
38 |
39 | // Initializes with data from a dictionary provided by the RSS class.
40 | - (instancetype)initWithDictionary:(NSDictionary *)dict;
41 | - (instancetype)initWithDictionary:(NSDictionary *)dict failureReason:(NSString **)error;
42 |
43 | @property (getter=isDeltaUpdate, readonly) BOOL deltaUpdate;
44 | @property (getter=isCriticalUpdate, readonly) BOOL criticalUpdate;
45 | @property (getter=isMacOsUpdate, readonly) BOOL macOsUpdate;
46 | @property (getter=isInformationOnlyUpdate, readonly) BOOL informationOnlyUpdate;
47 |
48 | // Returns the dictionary provided in initWithDictionary; this might be useful later for extensions.
49 | @property (readonly, copy) NSDictionary *propertiesDictionary;
50 |
51 | - (NSURL *)infoURL;
52 |
53 | @end
54 |
55 | #endif
56 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Headers/SUCodeSigningVerifier.h:
--------------------------------------------------------------------------------
1 | //
2 | // SUCodeSigningVerifier.h
3 | // Sparkle
4 | //
5 | // Created by Andy Matuschak on 7/5/12.
6 | //
7 | //
8 |
9 | #ifndef SUCODESIGNINGVERIFIER_H
10 | #define SUCODESIGNINGVERIFIER_H
11 |
12 | #if __has_feature(modules)
13 | @import Foundation;
14 | #else
15 | #import
16 | #endif
17 | #import "SUExport.h"
18 |
19 | SU_EXPORT @interface SUCodeSigningVerifier : NSObject
20 | + (BOOL)codeSignatureAtBundleURL:(NSURL *)oldBundlePath matchesSignatureAtBundleURL:(NSURL *)newBundlePath error:(NSError **)error;
21 | + (BOOL)codeSignatureIsValidAtBundleURL:(NSURL *)bundlePath error:(NSError **)error;
22 | + (BOOL)bundleAtURLIsCodeSigned:(NSURL *)bundlePath;
23 | + (NSDictionary *)codeSignatureInfoAtBundleURL:(NSURL *)bundlePath;
24 | @end
25 |
26 | #endif
27 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Headers/SUErrors.h:
--------------------------------------------------------------------------------
1 | //
2 | // SUErrors.h
3 | // Sparkle
4 | //
5 | // Created by C.W. Betts on 10/13/14.
6 | // Copyright (c) 2014 Sparkle Project. All rights reserved.
7 | //
8 |
9 | #ifndef SUERRORS_H
10 | #define SUERRORS_H
11 |
12 | #if __has_feature(modules)
13 | @import Foundation;
14 | #else
15 | #import
16 | #endif
17 | #import "SUExport.h"
18 |
19 | /**
20 | * Error domain used by Sparkle
21 | */
22 | SU_EXPORT extern NSString *const SUSparkleErrorDomain;
23 |
24 | #pragma clang diagnostic push
25 | #pragma clang diagnostic ignored "-Wc++98-compat"
26 | typedef NS_ENUM(OSStatus, SUError) {
27 | // Appcast phase errors.
28 | SUAppcastParseError = 1000,
29 | SUNoUpdateError = 1001,
30 | SUAppcastError = 1002,
31 | SURunningFromDiskImageError = 1003,
32 | SURunningTranslocated = 1004,
33 | SUWebKitTerminationError = 1005,
34 |
35 | // Download phase errors.
36 | SUTemporaryDirectoryError = 2000,
37 | SUDownloadError = 2001,
38 |
39 | // Extraction phase errors.
40 | SUUnarchivingError = 3000,
41 | SUSignatureError = 3001,
42 |
43 | // Installation phase errors.
44 | SUFileCopyFailure = 4000,
45 | SUAuthenticationFailure = 4001,
46 | SUMissingUpdateError = 4002,
47 | SUMissingInstallerToolError = 4003,
48 | SURelaunchError = 4004,
49 | SUInstallationError = 4005,
50 | SUDowngradeError = 4006,
51 | SUInstallationCancelledError = 4007,
52 |
53 | // System phase errors
54 | SUSystemPowerOffError = 5000
55 | };
56 | #pragma clang diagnostic pop
57 |
58 | #endif
59 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Headers/SUExport.h:
--------------------------------------------------------------------------------
1 | //
2 | // SUExport.h
3 | // Sparkle
4 | //
5 | // Created by Jake Petroules on 2014-08-23.
6 | // Copyright (c) 2014 Sparkle Project. All rights reserved.
7 | //
8 |
9 | #ifndef SUEXPORT_H
10 | #define SUEXPORT_H
11 |
12 | #ifdef BUILDING_SPARKLE
13 | #define SU_EXPORT __attribute__((visibility("default")))
14 | #else
15 | #define SU_EXPORT
16 | #endif
17 |
18 | #endif
19 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Headers/SUStandardVersionComparator.h:
--------------------------------------------------------------------------------
1 | //
2 | // SUStandardVersionComparator.h
3 | // Sparkle
4 | //
5 | // Created by Andy Matuschak on 12/21/07.
6 | // Copyright 2007 Andy Matuschak. All rights reserved.
7 | //
8 |
9 | #ifndef SUSTANDARDVERSIONCOMPARATOR_H
10 | #define SUSTANDARDVERSIONCOMPARATOR_H
11 |
12 | #if __has_feature(modules)
13 | @import Foundation;
14 | #else
15 | #import
16 | #endif
17 | #import "SUExport.h"
18 | #import "SUVersionComparisonProtocol.h"
19 |
20 | NS_ASSUME_NONNULL_BEGIN
21 |
22 | /*!
23 | Sparkle's default version comparator.
24 |
25 | This comparator is adapted from MacPAD, by Kevin Ballard.
26 | It's "dumb" in that it does essentially string comparison,
27 | in components split by character type.
28 | */
29 | SU_EXPORT @interface SUStandardVersionComparator : NSObject
30 |
31 | /*!
32 | Initializes a new instance of the standard version comparator.
33 | */
34 | - (instancetype)init;
35 |
36 | /*!
37 | Returns a singleton instance of the comparator.
38 |
39 | It is usually preferred to alloc/init new a comparator instead.
40 | */
41 | + (SUStandardVersionComparator *)defaultComparator;
42 |
43 | /*!
44 | Compares version strings through textual analysis.
45 |
46 | See the implementation for more details.
47 | */
48 | - (NSComparisonResult)compareVersion:(NSString *)versionA toVersion:(NSString *)versionB;
49 | @end
50 |
51 | NS_ASSUME_NONNULL_END
52 | #endif
53 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Headers/SUVersionComparisonProtocol.h:
--------------------------------------------------------------------------------
1 | //
2 | // SUVersionComparisonProtocol.h
3 | // Sparkle
4 | //
5 | // Created by Andy Matuschak on 12/21/07.
6 | // Copyright 2007 Andy Matuschak. All rights reserved.
7 | //
8 |
9 | #ifndef SUVERSIONCOMPARISONPROTOCOL_H
10 | #define SUVERSIONCOMPARISONPROTOCOL_H
11 |
12 | #if __has_feature(modules)
13 | @import Foundation;
14 | #else
15 | #import
16 | #endif
17 | #import "SUExport.h"
18 |
19 | NS_ASSUME_NONNULL_BEGIN
20 |
21 | /*!
22 | Provides version comparison facilities for Sparkle.
23 | */
24 | @protocol SUVersionComparison
25 |
26 | /*!
27 | An abstract method to compare two version strings.
28 |
29 | Should return NSOrderedAscending if b > a, NSOrderedDescending if b < a,
30 | and NSOrderedSame if they are equivalent.
31 | */
32 | - (NSComparisonResult)compareVersion:(NSString *)versionA toVersion:(NSString *)versionB; // *** MAY BE CALLED ON NON-MAIN THREAD!
33 |
34 | @end
35 |
36 | NS_ASSUME_NONNULL_END
37 | #endif
38 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Headers/SUVersionDisplayProtocol.h:
--------------------------------------------------------------------------------
1 | //
2 | // SUVersionDisplayProtocol.h
3 | // EyeTV
4 | //
5 | // Created by Uli Kusterer on 08.12.09.
6 | // Copyright 2009 Elgato Systems GmbH. All rights reserved.
7 | //
8 |
9 | #if __has_feature(modules)
10 | @import Foundation;
11 | #else
12 | #import
13 | #endif
14 | #import "SUExport.h"
15 |
16 | /*!
17 | Applies special display formatting to version numbers.
18 | */
19 | @protocol SUVersionDisplay
20 |
21 | /*!
22 | Formats two version strings.
23 |
24 | Both versions are provided so that important distinguishing information
25 | can be displayed while also leaving out unnecessary/confusing parts.
26 | */
27 | - (void)formatVersion:(NSString *_Nonnull*_Nonnull)inOutVersionA andVersion:(NSString *_Nonnull*_Nonnull)inOutVersionB;
28 |
29 | @end
30 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Headers/Sparkle.h:
--------------------------------------------------------------------------------
1 | //
2 | // Sparkle.h
3 | // Sparkle
4 | //
5 | // Created by Andy Matuschak on 3/16/06. (Modified by CDHW on 23/12/07)
6 | // Copyright 2006 Andy Matuschak. All rights reserved.
7 | //
8 |
9 | #ifndef SPARKLE_H
10 | #define SPARKLE_H
11 |
12 | // This list should include the shared headers. It doesn't matter if some of them aren't shared (unless
13 | // there are name-space collisions) so we can list all of them to start with:
14 |
15 | #pragma clang diagnostic push
16 | // Do not use <> style includes since 2.x has two frameworks that need to work: Sparkle and SparkleCore
17 | #pragma clang diagnostic ignored "-Wquoted-include-in-framework-header"
18 |
19 | #import "SUAppcast.h"
20 | #import "SUAppcastItem.h"
21 | #import "SUStandardVersionComparator.h"
22 | #import "SUUpdater.h"
23 | #import "SUUpdaterDelegate.h"
24 | #import "SUVersionComparisonProtocol.h"
25 | #import "SUVersionDisplayProtocol.h"
26 | #import "SUErrors.h"
27 |
28 | #import "SPUDownloader.h"
29 | #import "SPUDownloaderDelegate.h"
30 | #import "SPUDownloadData.h"
31 | #import "SPUDownloaderProtocol.h"
32 | #import "SPUDownloaderSession.h"
33 | #import "SPUURLRequest.h"
34 | #import "SUCodeSigningVerifier.h"
35 |
36 | #pragma clang diagnostic pop
37 |
38 | #endif
39 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Modules/module.modulemap:
--------------------------------------------------------------------------------
1 | framework module Sparkle {
2 | umbrella header "Sparkle.h"
3 |
4 | export *
5 | module * { export * }
6 | }
7 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/PrivateHeaders/SUUnarchiver.h:
--------------------------------------------------------------------------------
1 | //
2 | // SUUnarchiver.h
3 | // Sparkle
4 | //
5 | // Created by Andy Matuschak on 3/16/06.
6 | // Copyright 2006 Andy Matuschak. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | @protocol SUUnarchiverProtocol;
14 |
15 | @interface SUUnarchiver : NSObject
16 |
17 | + (nullable id )unarchiverForPath:(NSString *)path updatingHostBundlePath:(nullable NSString *)hostPath decryptionPassword:(nullable NSString *)decryptionPassword;
18 |
19 | @end
20 |
21 | NS_ASSUME_NONNULL_END
22 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | BuildMachineOSBuild
6 | 20E5186d
7 | CFBundleDevelopmentRegion
8 | English
9 | CFBundleExecutable
10 | Autoupdate
11 | CFBundleIconFile
12 | AppIcon.icns
13 | CFBundleIdentifier
14 | org.sparkle-project.Sparkle.Autoupdate
15 | CFBundleInfoDictionaryVersion
16 | 6.0
17 | CFBundlePackageType
18 | APPL
19 | CFBundleShortVersionString
20 | 1.26.0
21 | CFBundleSignature
22 | ????
23 | CFBundleSupportedPlatforms
24 |
25 | MacOSX
26 |
27 | CFBundleVersion
28 | 1.26.0
29 | DTCompiler
30 | com.apple.compilers.llvm.clang.1_0
31 | DTPlatformBuild
32 | 12C5020f
33 | DTPlatformName
34 | macosx
35 | DTPlatformVersion
36 | 11.1
37 | DTSDKBuild
38 | 20C5048g
39 | DTSDKName
40 | macosx11.1
41 | DTXcode
42 | 1230
43 | DTXcodeBuild
44 | 12C5020f
45 | LSBackgroundOnly
46 | 1
47 | LSMinimumSystemVersion
48 | 10.9
49 | LSUIElement
50 | 1
51 | NSMainNibFile
52 | MainMenu
53 | NSPrincipalClass
54 | NSApplication
55 |
56 |
57 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/MacOS/Autoupdate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/MacOS/Autoupdate
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/MacOS/fileop:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/MacOS/fileop
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/PkgInfo:
--------------------------------------------------------------------------------
1 | APPL????
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/AppIcon.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/AppIcon.icns
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/Base.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/Base.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/SUStatus.nib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/SUStatus.nib
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ar.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ar.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ca.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ca.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/cs.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/cs.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/da.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/da.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/de.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/de.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/el.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/el.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/es.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/es.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/fi.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/fi.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/fr.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/fr.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/he.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/he.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/hr.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/hr.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/hu.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/hu.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/is.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/is.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/it.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/it.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ja.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ja.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ko.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ko.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/nb.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/nb.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/nl.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/nl.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/pl.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/pl.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/pt_BR.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/pt_BR.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/pt_PT.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/pt_PT.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ro.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ro.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ru.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ru.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/sk.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/sk.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/sl.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/sl.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/sv.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/sv.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/th.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/th.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/tr.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/tr.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/uk.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/uk.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/zh_CN.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/zh_CN.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/zh_TW.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/zh_TW.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Base.lproj/SUAutomaticUpdateAlert.nib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Base.lproj/SUAutomaticUpdateAlert.nib
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Base.lproj/SUUpdateAlert.nib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Base.lproj/SUUpdateAlert.nib
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Base.lproj/SUUpdatePermissionPrompt.nib/keyedobjects-110000.nib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Base.lproj/SUUpdatePermissionPrompt.nib/keyedobjects-110000.nib
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Base.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Base.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Base.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Base.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | BuildMachineOSBuild
6 | 20E5186d
7 | CFBundleDevelopmentRegion
8 | en
9 | CFBundleExecutable
10 | Sparkle
11 | CFBundleIdentifier
12 | org.sparkle-project.Sparkle
13 | CFBundleInfoDictionaryVersion
14 | 6.0
15 | CFBundleName
16 | Sparkle
17 | CFBundlePackageType
18 | FMWK
19 | CFBundleShortVersionString
20 | 1.26.0
21 | CFBundleSignature
22 | ????
23 | CFBundleSupportedPlatforms
24 |
25 | MacOSX
26 |
27 | CFBundleVersion
28 | 1.26.0
29 | DTCompiler
30 | com.apple.compilers.llvm.clang.1_0
31 | DTPlatformBuild
32 | 12C5020f
33 | DTPlatformName
34 | macosx
35 | DTPlatformVersion
36 | 11.1
37 | DTSDKBuild
38 | 20C5048g
39 | DTSDKName
40 | macosx11.1
41 | DTXcode
42 | 1230
43 | DTXcodeBuild
44 | 12C5020f
45 | LSMinimumSystemVersion
46 | 10.9
47 |
48 |
49 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ReleaseNotesColorStyle.css:
--------------------------------------------------------------------------------
1 | @media (prefers-color-scheme: dark) {
2 | html {
3 | color: white;
4 | background: transparent;
5 | }
6 | :link {
7 | color: #419CFF;
8 | }
9 | :link:active {
10 | color: #FF1919;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/SUStatus.nib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/SUStatus.nib
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ar.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ar.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ar.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ar.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ar.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ar.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ar.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ar.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ca.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
1 | /* Class = "NSButtonCell"; title = "Install and Relaunch"; ObjectID = "41"; */
2 | "41.title" = "Reinicia el programa ara";
3 |
4 | /* Class = "NSButtonCell"; title = "Install on Quit"; ObjectID = "42"; */
5 | "42.title" = "Reinicia el programa més tard";
6 |
7 | /* Class = "NSButtonCell"; title = "Automatically download and install updates in the future"; ObjectID = "43"; */
8 | "43.title" = "Baixa i instal·la les actualitzacions automàticament en el futur";
9 |
10 | /* Class = "NSButtonCell"; title = "Don't Install"; ObjectID = "44"; */
11 | "44.title" = "Don't Install";
12 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ca.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
1 | /* Class = "NSWindow"; title = "Software Update"; ObjectID = "5"; */
2 | "5.title" = "Actualització del programari";
3 |
4 | /* Class = "NSTextFieldCell"; title = "Release Notes:"; ObjectID = "170"; */
5 | "170.title" = "Notes d'aquesta versió:";
6 |
7 | /* Class = "NSButtonCell"; title = "Remind Me Later"; ObjectID = "171"; */
8 | "171.title" = "Recorda-m'ho més tard";
9 |
10 | /* Class = "NSButtonCell"; title = "Skip This Version"; ObjectID = "172"; */
11 | "172.title" = "Omet aquesta versió";
12 |
13 | /* Class = "NSButtonCell"; title = "Install Update"; ObjectID = "173"; */
14 | "173.title" = "Instal·la l'actualització";
15 |
16 | /* Class = "NSButtonCell"; title = "Automatically download and install updates in the future"; ObjectID = "175"; */
17 | "175.title" = "Descarrega i instal·la les actualitzacions automàticament en el futur";
18 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ca.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ca.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/cs.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
1 | /* Class = "NSButtonCell"; title = "Install and Relaunch"; ObjectID = "41"; */
2 | "41.title" = "Instalovat a znovu spustit";
3 |
4 | /* Class = "NSButtonCell"; title = "Install on Quit"; ObjectID = "42"; */
5 | "42.title" = "Instalovat a ukončit";
6 |
7 | /* Class = "NSButtonCell"; title = "Automatically download and install updates in the future"; ObjectID = "43"; */
8 | "43.title" = "V budoucnu stahovat a instalovat aktualizace automaticky";
9 |
10 | /* Class = "NSButtonCell"; title = "Don't Install"; ObjectID = "44"; */
11 | "44.title" = "Neinstalovat";
12 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
1 | /* Class = "NSWindow"; title = "Software Update"; ObjectID = "5"; */
2 | "5.title" = "Aktualizace aplikace";
3 |
4 | /* Class = "NSTextFieldCell"; title = "Release Notes:"; ObjectID = "170"; */
5 | "170.title" = "Poznámky k vydání:";
6 |
7 | /* Class = "NSButtonCell"; title = "Remind Me Later"; ObjectID = "171"; */
8 | "171.title" = "Připomenout později";
9 |
10 | /* Class = "NSButtonCell"; title = "Skip This Version"; ObjectID = "172"; */
11 | "172.title" = "Přeskočit tuto verzi";
12 |
13 | /* Class = "NSButtonCell"; title = "Install Update"; ObjectID = "173"; */
14 | "173.title" = "Instalovat aktualizaci";
15 |
16 | /* Class = "NSButtonCell"; title = "Automatically download and install updates in the future"; ObjectID = "175"; */
17 | "175.title" = "V budoucnu stahovat a instalovat aktualizace automaticky";
18 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
1 | /* Class = "NSTextFieldCell"; title = "Text Cell"; ObjectID = "43"; */
2 | "43.title" = "Text Cell";
3 |
4 | /* Class = "NSTextFieldCell"; title = "Text Cell"; ObjectID = "45"; */
5 | "45.title" = "Text Cell";
6 |
7 | /* Class = "NSButtonCell"; title = "Check Automatically"; ObjectID = "176"; */
8 | "176.title" = "Automaticky vyhledávat";
9 |
10 | /* Class = "NSButtonCell"; title = "Don’t Check"; ObjectID = "177"; */
11 | "177.title" = "Nevyhledávat";
12 |
13 | /* Class = "NSTextFieldCell"; title = "Check for updates automatically?"; ObjectID = "178"; */
14 | "178.title" = "Vyhledávat aktualizace automaticky?";
15 |
16 | /* Class = "NSTextFieldCell"; title = "DO NOT LOCALIZE"; ObjectID = "179"; */
17 | "179.title" = "DO NOT LOCALIZE";
18 |
19 | /* Class = "NSButtonCell"; title = "Include anonymous system profile"; ObjectID = "180"; */
20 | "180.title" = "Odeslat anonymní systémový profil";
21 |
22 | /* Class = "NSTextFieldCell"; title = "Anonymous system profile information is used to help us plan future development work.\nPlease contact us if you have any questions about this.\n\nThis is the information that would be sent:"; ObjectID = "183"; */
23 | "183.title" = "Informace z anonymního systémového profilu pomáhají vývojářům lépe plánovat budoucí vývoj aplikace.\nBudete-li mít nějaký dotaz, obraťte se na nás.\n\nTyto informace by měly být odeslány:";
24 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/cs.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/cs.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/da.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/da.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/da.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/da.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/de.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/de.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/el.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/el.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/el.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/el.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/el.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/el.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/el.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/el.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
1 |
2 | /* Class = "NSButtonCell"; title = "Install and Relaunch"; ObjectID = "41"; */
3 | "41.title" = "Install and Relaunch";
4 |
5 | /* Class = "NSButtonCell"; title = "Install on Quit"; ObjectID = "42"; */
6 | "42.title" = "Install on Quit";
7 |
8 | /* Class = "NSButtonCell"; title = "Automatically download and install updates in the future"; ObjectID = "43"; */
9 | "43.title" = "Automatically download and install updates in the future";
10 |
11 | /* Class = "NSButtonCell"; title = "Don't Install"; ObjectID = "44"; */
12 | "44.title" = "Don't Install";
13 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
1 |
2 | /* Class = "NSWindow"; title = "Software Update"; ObjectID = "5"; */
3 | "5.title" = "Software Update";
4 |
5 | /* Class = "NSTextFieldCell"; title = "Release Notes:"; ObjectID = "170"; */
6 | "170.title" = "Release Notes:";
7 |
8 | /* Class = "NSButtonCell"; title = "Remind Me Later"; ObjectID = "171"; */
9 | "171.title" = "Remind Me Later";
10 |
11 | /* Class = "NSButtonCell"; title = "Skip This Version"; ObjectID = "172"; */
12 | "172.title" = "Skip This Version";
13 |
14 | /* Class = "NSButtonCell"; title = "Install Update"; ObjectID = "173"; */
15 | "173.title" = "Install Update";
16 |
17 | /* Class = "NSButtonCell"; title = "Automatically download and install updates in the future"; ObjectID = "175"; */
18 | "175.title" = "Automatically download and install updates in the future";
19 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
1 |
2 | /* Class = "NSTextFieldCell"; title = "Text Cell"; ObjectID = "43"; */
3 | "43.title" = "Text Cell";
4 |
5 | /* Class = "NSTextFieldCell"; title = "Text Cell"; ObjectID = "45"; */
6 | "45.title" = "Text Cell";
7 |
8 | /* Class = "NSButtonCell"; title = "Check Automatically"; ObjectID = "176"; */
9 | "176.title" = "Check Automatically";
10 |
11 | /* Class = "NSButtonCell"; title = "Don’t Check"; ObjectID = "177"; */
12 | "177.title" = "Don’t Check";
13 |
14 | /* Class = "NSTextFieldCell"; title = "Check for updates automatically?"; ObjectID = "178"; */
15 | "178.title" = "Check for updates automatically?";
16 |
17 | /* Class = "NSTextFieldCell"; title = "DO NOT LOCALIZE"; ObjectID = "179"; */
18 | "179.title" = "DO NOT LOCALIZE";
19 |
20 | /* Class = "NSButtonCell"; title = "Include anonymous system profile"; ObjectID = "180"; */
21 | "180.title" = "Include anonymous system profile";
22 |
23 | /* Class = "NSTextFieldCell"; title = "Anonymous system profile information is used to help us plan future development work. Please contact us if you have any questions about this.\n\nThis is the information that would be sent:"; ObjectID = "183"; */
24 | "183.title" = "Anonymous system profile information is used to help us plan future development work. Please contact us if you have any questions about this.\n\nThis is the information that would be sent:";
25 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/es.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/es.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/fi.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/fi.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/fi.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/fi.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/fi.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/fi.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/fi.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/fi.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/fr.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/fr.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/he.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
1 | /* Class = "NSButtonCell"; title = "Install and Relaunch"; ObjectID = "41"; */
2 | "41.title" = "אתחל עכשיו";
3 |
4 | /* Class = "NSButtonCell"; title = "Install on Quit"; ObjectID = "42"; */
5 | "42.title" = "אתחל מאוחר יותר";
6 |
7 | /* Class = "NSButtonCell"; title = "Automatically download and install updates in the future"; ObjectID = "43"; */
8 | "43.title" = "הורד והתקן עדכונים אוטומטית גם בעתיד";
9 |
10 | /* Class = "NSButtonCell"; title = "Don't Install"; ObjectID = "44"; */
11 | "44.title" = "Don't Install";
12 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/he.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
1 |
2 | /* Class = "NSWindow"; title = "Software Update"; ObjectID = "5"; */
3 | "5.title" = "עדכון תכנה";
4 |
5 | /* Class = "NSTextFieldCell"; title = "Release Notes:"; ObjectID = "170"; */
6 | "170.title" = "פרטי גרסה:";
7 |
8 | /* Class = "NSButtonCell"; title = "Remind Me Later"; ObjectID = "171"; */
9 | "171.title" = "הזכר לי מאוחר יותר";
10 |
11 | /* Class = "NSButtonCell"; title = "Skip This Version"; ObjectID = "172"; */
12 | "172.title" = "דלג על גרסה זו";
13 |
14 | /* Class = "NSButtonCell"; title = "Install Update"; ObjectID = "173"; */
15 | "173.title" = "התקן עדכון";
16 |
17 | /* Class = "NSButtonCell"; title = "Automatically download and install updates in the future"; ObjectID = "175"; */
18 | "175.title" = "הורד והתקן עדכונים אוטומטית גם בעתיד";
19 |
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/he.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/he.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/hr.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/hr.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/hr.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/hr.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/hr.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/hr.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/hr.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/hr.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/hu.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/hu.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/hu.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/hu.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/hu.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/hu.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/hu.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/hu.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/is.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/is.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/is.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/is.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/it.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/it.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ja.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ja.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ja.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ja.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ko.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ko.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ko.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ko.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ko.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ko.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ko.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ko.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/nb.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/nb.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/nb.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/nb.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/nb.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/nb.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/nb.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/nb.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/nl.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/nl.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pl.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pl.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pl.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pl.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pt_PT.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pt_PT.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pt_PT.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pt_PT.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pt_PT.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/pt_PT.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ro.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ro.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ro.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ro.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ro.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ro.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ro.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ro.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ru.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/ru.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sk.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sk.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sk.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sk.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sk.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sk.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sk.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sk.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sl.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sl.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sl.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sl.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sl.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sl.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sl.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sl.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sv.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/sv.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/th.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/th.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/th.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/th.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/th.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/th.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/th.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/th.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/tr.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/tr.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/tr.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/tr.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/tr.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/tr.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/tr.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/tr.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/uk.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/uk.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/uk.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/uk.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/uk.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/uk.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUAutomaticUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUAutomaticUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdateAlert.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdateAlert.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdatePermissionPrompt.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdatePermissionPrompt.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/Sparkle.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/Sparkle.strings
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/A/Sparkle:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/Sparkle.framework/Versions/A/Sparkle
--------------------------------------------------------------------------------
/Pods/Sparkle/Sparkle.framework/Versions/Current:
--------------------------------------------------------------------------------
1 | A
--------------------------------------------------------------------------------
/Pods/Sparkle/bin/BinaryDelta:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/bin/BinaryDelta
--------------------------------------------------------------------------------
/Pods/Sparkle/bin/generate_appcast:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/bin/generate_appcast
--------------------------------------------------------------------------------
/Pods/Sparkle/bin/generate_keys:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/bin/generate_keys
--------------------------------------------------------------------------------
/Pods/Sparkle/bin/old_dsa_scripts/generate_dsa_keys_macos_10.12_only:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | set -e
3 | for file in "dsaparam.pem" "dsa_priv.pem" "dsa_pub.pem"; do
4 | if [ -e "$file" ]; then
5 | echo "There's already a $file here! Move it aside or be more careful!"
6 | exit 1
7 | fi
8 | done
9 |
10 | openssl="/usr/bin/openssl"
11 | $openssl gendsa <($openssl dsaparam 2047) -out dsa_priv.pem
12 | chmod 0400 dsa_priv.pem
13 | $openssl dsa -in dsa_priv.pem -pubout -out dsa_pub.pem
14 |
15 | echo "
16 | Generated two files:
17 | dsa_priv.pem: your private key. Keep it secret and don't share it!
18 | dsa_pub.pem: public counterpart to include in the app bundle.
19 |
20 | BACK UP YOUR PRIVATE KEY AND KEEP IT SAFE!
21 | If you lose it, your users will be unable to upgrade!
22 | "
23 |
24 | open -R dsa_priv.pem
25 |
--------------------------------------------------------------------------------
/Pods/Sparkle/bin/old_dsa_scripts/sign_update:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | set -e
3 | set -o pipefail
4 | if [ "$#" -ne 2 ]; then
5 | echo "Usage: $0 update_archive_file dsa_priv.pem"
6 | echo "This is an old DSA signing script for deprecated DSA keys."
7 | echo "Do not use this for new applications."
8 | exit 1
9 | fi
10 | openssl=/usr/bin/openssl
11 | version=`$openssl version`
12 | if [[ $version =~ "OpenSSL 0.9" ]]; then
13 | # pre-10.13 system: Fall back to OpenSSL DSS1 digest because it does not like the -sha1 option
14 | $openssl dgst -sha1 -binary < "$1" | $openssl dgst -dss1 -sign "$2" | $openssl enc -base64
15 | else
16 | # 10.13 and later: Use LibreSSL SHA1 digest
17 | $openssl dgst -sha1 -binary < "$1" | $openssl dgst -sha1 -sign "$2" | $openssl enc -base64
18 | fi
19 |
--------------------------------------------------------------------------------
/Pods/Sparkle/bin/sign_update:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/glaurent/MessagesHistoryBrowser/c61c54677ffcae7bd8d4880e59ce4fdf2a62e0fd/Pods/Sparkle/bin/sign_update
--------------------------------------------------------------------------------
/Pods/Target Support Files/Pods-MessagesHistoryBrowser/Pods-MessagesHistoryBrowser-Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIdentifier
10 | ${PRODUCT_BUNDLE_IDENTIFIER}
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | ${PRODUCT_NAME}
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 1.0.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | ${CURRENT_PROJECT_VERSION}
23 | NSPrincipalClass
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/Pods/Target Support Files/Pods-MessagesHistoryBrowser/Pods-MessagesHistoryBrowser-acknowledgements.markdown:
--------------------------------------------------------------------------------
1 | # Acknowledgements
2 | This application makes use of the following third party libraries:
3 |
4 | ## SQLite.swift
5 |
6 | (The MIT License)
7 |
8 | Copyright (c) 2014-2015 Stephen Celis ()
9 |
10 | Permission is hereby granted, free of charge, to any person obtaining a copy
11 | of this software and associated documentation files (the "Software"), to deal
12 | in the Software without restriction, including without limitation the rights
13 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14 | copies of the Software, and to permit persons to whom the Software is
15 | furnished to do so, subject to the following conditions:
16 |
17 | The above copyright notice and this permission notice shall be included in all
18 | copies or substantial portions of the Software.
19 |
20 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26 | SOFTWARE.
27 |
28 |
29 | ## Sparkle
30 |
31 | Copyright (c) 2006-2013 Andy Matuschak.
32 | Copyright (c) 2009-2013 Elgato Systems GmbH.
33 | Copyright (c) 2011-2014 Kornel Lesiński.
34 | Copyright (c) 2015-2017 Mayur Pawashe.
35 | Copyright (c) 2014 C.W. Betts.
36 | Copyright (c) 2014 Petroules Corporation.
37 | Copyright (c) 2014 Big Nerd Ranch.
38 | All rights reserved.
39 |
40 | Permission is hereby granted, free of charge, to any person obtaining a copy of
41 | this software and associated documentation files (the "Software"), to deal in
42 | the Software without restriction, including without limitation the rights to
43 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
44 | the Software, and to permit persons to whom the Software is furnished to do so,
45 | subject to the following conditions:
46 |
47 | The above copyright notice and this permission notice shall be included in all
48 | copies or substantial portions of the Software.
49 |
50 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
51 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
52 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
53 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
54 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
55 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
56 |
57 | =================
58 | EXTERNAL LICENSES
59 | =================
60 |
61 | bspatch.c and bsdiff.c, from bsdiff 4.3 :
62 | Copyright (c) 2003-2005 Colin Percival.
63 |
64 | sais.c and sais.c, from sais-lite (2010/08/07) :
65 | Copyright (c) 2008-2010 Yuta Mori.
66 |
67 | SUDSAVerifier.m:
68 | Copyright (c) 2011 Mark Hamlin.
69 |
70 | All rights reserved.
71 |
72 | Redistribution and use in source and binary forms, with or without
73 | modification, are permitted providing that the following conditions
74 | are met:
75 | 1. Redistributions of source code must retain the above copyright
76 | notice, this list of conditions and the following disclaimer.
77 | 2. Redistributions in binary form must reproduce the above copyright
78 | notice, this list of conditions and the following disclaimer in the
79 | documentation and/or other materials provided with the distribution.
80 |
81 | THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
82 | IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
83 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
84 | ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
85 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
86 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
87 | OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
88 | HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
89 | STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
90 | IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
91 | POSSIBILITY OF SUCH DAMAGE.
92 |
93 | Generated by CocoaPods - https://cocoapods.org
94 |
--------------------------------------------------------------------------------
/Pods/Target Support Files/Pods-MessagesHistoryBrowser/Pods-MessagesHistoryBrowser-dummy.m:
--------------------------------------------------------------------------------
1 | #import
2 | @interface PodsDummy_Pods_MessagesHistoryBrowser : NSObject
3 | @end
4 | @implementation PodsDummy_Pods_MessagesHistoryBrowser
5 | @end
6 |
--------------------------------------------------------------------------------
/Pods/Target Support Files/Pods-MessagesHistoryBrowser/Pods-MessagesHistoryBrowser-umbrella.h:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 |
14 | FOUNDATION_EXPORT double Pods_MessagesHistoryBrowserVersionNumber;
15 | FOUNDATION_EXPORT const unsigned char Pods_MessagesHistoryBrowserVersionString[];
16 |
17 |
--------------------------------------------------------------------------------
/Pods/Target Support Files/Pods-MessagesHistoryBrowser/Pods-MessagesHistoryBrowser.debug.xcconfig:
--------------------------------------------------------------------------------
1 | ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
2 | CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
3 | FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SQLite.swift" "${PODS_ROOT}/Sparkle"
4 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
5 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SQLite.swift/SQLite.framework/Headers"
6 | LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/../Frameworks' '@loader_path/Frameworks' @loader_path/../Frameworks
7 | OTHER_LDFLAGS = $(inherited) -l"sqlite3" -framework "SQLite" -framework "Sparkle"
8 | OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS
9 | PODS_BUILD_DIR = ${BUILD_DIR}
10 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
11 | PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
12 | PODS_ROOT = ${SRCROOT}/Pods
13 | PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates
14 | USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES
15 |
--------------------------------------------------------------------------------
/Pods/Target Support Files/Pods-MessagesHistoryBrowser/Pods-MessagesHistoryBrowser.modulemap:
--------------------------------------------------------------------------------
1 | framework module Pods_MessagesHistoryBrowser {
2 | umbrella header "Pods-MessagesHistoryBrowser-umbrella.h"
3 |
4 | export *
5 | module * { export * }
6 | }
7 |
--------------------------------------------------------------------------------
/Pods/Target Support Files/Pods-MessagesHistoryBrowser/Pods-MessagesHistoryBrowser.release.xcconfig:
--------------------------------------------------------------------------------
1 | ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
2 | CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
3 | FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SQLite.swift" "${PODS_ROOT}/Sparkle"
4 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
5 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/SQLite.swift/SQLite.framework/Headers"
6 | LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/../Frameworks' '@loader_path/Frameworks' @loader_path/../Frameworks
7 | OTHER_LDFLAGS = $(inherited) -l"sqlite3" -framework "SQLite" -framework "Sparkle"
8 | OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS
9 | PODS_BUILD_DIR = ${BUILD_DIR}
10 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
11 | PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
12 | PODS_ROOT = ${SRCROOT}/Pods
13 | PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates
14 | USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES
15 |
--------------------------------------------------------------------------------
/Pods/Target Support Files/SQLite.swift/SQLite.swift-Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIdentifier
10 | ${PRODUCT_BUNDLE_IDENTIFIER}
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | ${PRODUCT_NAME}
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 0.12.2
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | ${CURRENT_PROJECT_VERSION}
23 | NSPrincipalClass
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/Pods/Target Support Files/SQLite.swift/SQLite.swift-dummy.m:
--------------------------------------------------------------------------------
1 | #import
2 | @interface PodsDummy_SQLite_swift : NSObject
3 | @end
4 | @implementation PodsDummy_SQLite_swift
5 | @end
6 |
--------------------------------------------------------------------------------
/Pods/Target Support Files/SQLite.swift/SQLite.swift-prefix.pch:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 |
--------------------------------------------------------------------------------
/Pods/Target Support Files/SQLite.swift/SQLite.swift-umbrella.h:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 | #import "SQLite.h"
14 | #import "SQLiteObjc.h"
15 |
16 | FOUNDATION_EXPORT double SQLiteVersionNumber;
17 | FOUNDATION_EXPORT const unsigned char SQLiteVersionString[];
18 |
19 |
--------------------------------------------------------------------------------
/Pods/Target Support Files/SQLite.swift/SQLite.swift.debug.xcconfig:
--------------------------------------------------------------------------------
1 | CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
2 | CODE_SIGN_IDENTITY =
3 | CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/SQLite.swift
4 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
5 | OTHER_LDFLAGS = $(inherited) -l"sqlite3"
6 | OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS
7 | PODS_BUILD_DIR = ${BUILD_DIR}
8 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
9 | PODS_ROOT = ${SRCROOT}
10 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/SQLite.swift
11 | PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates
12 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
13 | SKIP_INSTALL = YES
14 | USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES
15 |
--------------------------------------------------------------------------------
/Pods/Target Support Files/SQLite.swift/SQLite.swift.modulemap:
--------------------------------------------------------------------------------
1 | framework module SQLite {
2 | umbrella header "SQLite.swift-umbrella.h"
3 |
4 | export *
5 | module * { export * }
6 | }
7 |
--------------------------------------------------------------------------------
/Pods/Target Support Files/SQLite.swift/SQLite.swift.release.xcconfig:
--------------------------------------------------------------------------------
1 | CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
2 | CODE_SIGN_IDENTITY =
3 | CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/SQLite.swift
4 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
5 | OTHER_LDFLAGS = $(inherited) -l"sqlite3"
6 | OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS
7 | PODS_BUILD_DIR = ${BUILD_DIR}
8 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
9 | PODS_ROOT = ${SRCROOT}
10 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/SQLite.swift
11 | PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates
12 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
13 | SKIP_INSTALL = YES
14 | USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES
15 |
--------------------------------------------------------------------------------
/Pods/Target Support Files/Sparkle/Sparkle-copy-dsyms.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | set -e
3 | set -u
4 | set -o pipefail
5 |
6 | function on_error {
7 | echo "$(realpath -mq "${0}"):$1: error: Unexpected failure"
8 | }
9 | trap 'on_error $LINENO' ERR
10 |
11 | # Used as a return value for each invocation of `strip_invalid_archs` function.
12 | STRIP_BINARY_RETVAL=0
13 |
14 | # Strip invalid architectures
15 | strip_invalid_archs() {
16 | binary="$1"
17 | warn_missing_arch=${2:-true}
18 | # Get architectures for current target binary
19 | binary_archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | awk '{$1=$1;print}' | rev)"
20 | # Intersect them with the architectures we are building for
21 | intersected_archs="$(echo ${ARCHS[@]} ${binary_archs[@]} | tr ' ' '\n' | sort | uniq -d)"
22 | # If there are no archs supported by this binary then warn the user
23 | if [[ -z "$intersected_archs" ]]; then
24 | if [[ "$warn_missing_arch" == "true" ]]; then
25 | echo "warning: [CP] Vendored binary '$binary' contains architectures ($binary_archs) none of which match the current build architectures ($ARCHS)."
26 | fi
27 | STRIP_BINARY_RETVAL=1
28 | return
29 | fi
30 | stripped=""
31 | for arch in $binary_archs; do
32 | if ! [[ "${ARCHS}" == *"$arch"* ]]; then
33 | # Strip non-valid architectures in-place
34 | lipo -remove "$arch" -output "$binary" "$binary"
35 | stripped="$stripped $arch"
36 | fi
37 | done
38 | if [[ "$stripped" ]]; then
39 | echo "Stripped $binary of architectures:$stripped"
40 | fi
41 | STRIP_BINARY_RETVAL=0
42 | }
43 |
44 | # This protects against multiple targets copying the same framework dependency at the same time. The solution
45 | # was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html
46 | RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????")
47 |
48 | # Copies and strips a vendored dSYM
49 | install_dsym() {
50 | local source="$1"
51 | warn_missing_arch=${2:-true}
52 | if [ -r "$source" ]; then
53 | # Copy the dSYM into the targets temp dir.
54 | echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${DERIVED_FILES_DIR}\""
55 | rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${DERIVED_FILES_DIR}"
56 |
57 | local basename
58 | basename="$(basename -s .dSYM "$source")"
59 | binary_name="$(ls "$source/Contents/Resources/DWARF")"
60 | binary="${DERIVED_FILES_DIR}/${basename}.dSYM/Contents/Resources/DWARF/${binary_name}"
61 |
62 | # Strip invalid architectures from the dSYM.
63 | if [[ "$(file "$binary")" == *"Mach-O "*"dSYM companion"* ]]; then
64 | strip_invalid_archs "$binary" "$warn_missing_arch"
65 | fi
66 | if [[ $STRIP_BINARY_RETVAL == 0 ]]; then
67 | # Move the stripped file into its final destination.
68 | echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${DERIVED_FILES_DIR}/${basename}.framework.dSYM\" \"${DWARF_DSYM_FOLDER_PATH}\""
69 | rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${DERIVED_FILES_DIR}/${basename}.dSYM" "${DWARF_DSYM_FOLDER_PATH}"
70 | else
71 | # The dSYM was not stripped at all, in this case touch a fake folder so the input/output paths from Xcode do not reexecute this script because the file is missing.
72 | touch "${DWARF_DSYM_FOLDER_PATH}/${basename}.dSYM"
73 | fi
74 | fi
75 | }
76 |
77 | # Copies the bcsymbolmap files of a vendored framework
78 | install_bcsymbolmap() {
79 | local bcsymbolmap_path="$1"
80 | local destination="${BUILT_PRODUCTS_DIR}"
81 | echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${bcsymbolmap_path}" "${destination}""
82 | rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${bcsymbolmap_path}" "${destination}"
83 | }
84 |
85 | install_dsym "${PODS_ROOT}/Sparkle/Sparkle.framework.dSYM"
86 |
--------------------------------------------------------------------------------
/Pods/Target Support Files/Sparkle/Sparkle.debug.xcconfig:
--------------------------------------------------------------------------------
1 | CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
2 | CODE_SIGN_IDENTITY =
3 | CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Sparkle
4 | FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Sparkle"
5 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
6 | LD_RUNPATH_SEARCH_PATHS = $(inherited) @loader_path/../Frameworks
7 | PODS_BUILD_DIR = ${BUILD_DIR}
8 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
9 | PODS_ROOT = ${SRCROOT}
10 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/Sparkle
11 | PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates
12 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
13 | SKIP_INSTALL = YES
14 | USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES
15 |
--------------------------------------------------------------------------------
/Pods/Target Support Files/Sparkle/Sparkle.release.xcconfig:
--------------------------------------------------------------------------------
1 | CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
2 | CODE_SIGN_IDENTITY =
3 | CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Sparkle
4 | FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Sparkle"
5 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
6 | LD_RUNPATH_SEARCH_PATHS = $(inherited) @loader_path/../Frameworks
7 | PODS_BUILD_DIR = ${BUILD_DIR}
8 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
9 | PODS_ROOT = ${SRCROOT}
10 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/Sparkle
11 | PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates
12 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
13 | SKIP_INSTALL = YES
14 | USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES
15 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # MessagesHistoryBrowser
2 | a macOS/OSX app to comfortably browse and search through your Messages.app history.
3 |
4 | More info on the [app's page](http://telegraph-road.org/MessagesHistoryBrowser/)
5 |
--------------------------------------------------------------------------------