peachsim 0.1.2176 → 0.1.2179

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. package/dist-lib/agent-daemon-client.cjs +1 -1
  2. package/dist-lib/agent-events.cjs +1 -1
  3. package/dist-lib/attached-projects.cjs +1 -1
  4. package/dist-lib/auth/shared-session.cjs +1 -1
  5. package/dist-lib/backend-origin.cjs +1 -1
  6. package/dist-lib/beta.cjs +1 -1
  7. package/dist-lib/beta.mjs +1 -1
  8. package/dist-lib/bridge-constants.cjs +1 -1
  9. package/dist-lib/bridge-contract-input.cjs +1 -1
  10. package/dist-lib/bridge-contract-input.mjs +1 -1
  11. package/dist-lib/bridge-contract.cjs +1 -1
  12. package/dist-lib/bridge-contract.mjs +1 -1
  13. package/dist-lib/bundle-channel.cjs +2205 -1861
  14. package/dist-lib/capture-contract.cjs +1 -1
  15. package/dist-lib/capture-contract.mjs +1 -1
  16. package/dist-lib/cloud-contract.cjs +1 -1
  17. package/dist-lib/cloud-contract.mjs +1 -1
  18. package/dist-lib/cloud-test-args.cjs +1 -1
  19. package/dist-lib/cloud-test-args.mjs +1 -1
  20. package/dist-lib/cloud.cjs +1 -1
  21. package/dist-lib/cloud.mjs +1 -1
  22. package/dist-lib/config.cjs +1 -1
  23. package/dist-lib/config.mjs +1 -1
  24. package/dist-lib/detox/index.cjs +1 -1
  25. package/dist-lib/dev-bundle-resolution.cjs +1 -1
  26. package/dist-lib/expo-swift-bundle.cjs +837 -571
  27. package/dist-lib/expo-swift-metadata.cjs +1 -1
  28. package/dist-lib/expo-swift-metadata.mjs +1 -1
  29. package/dist-lib/home-paths.cjs +1 -1
  30. package/dist-lib/host/bridge-host.cjs +1732 -1396
  31. package/dist-lib/host/fetch-proxy-handler.cjs +2 -2
  32. package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
  33. package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
  34. package/dist-lib/host/replacement-module-handler.cjs +1 -1
  35. package/dist-lib/host/websocket-proxy.cjs +1 -1
  36. package/dist-lib/index.cjs +2 -2
  37. package/dist-lib/jump-to-source-babel.cjs +1 -1
  38. package/dist-lib/jump-to-source-native.cjs +1 -1
  39. package/dist-lib/kotlin-host.cjs +1 -1
  40. package/dist-lib/menu.cjs +1 -1
  41. package/dist-lib/menu.mjs +1 -1
  42. package/dist-lib/metro-fingerprint-registry.cjs +1 -1
  43. package/dist-lib/metro-fingerprint-registry.mjs +1 -1
  44. package/dist-lib/metro-production-bundle.cjs +1 -1
  45. package/dist-lib/metro-production-bundle.mjs +1 -1
  46. package/dist-lib/metro.cjs +2 -2
  47. package/dist-lib/native-app-identity-project.cjs +2 -2
  48. package/dist-lib/native-app-identity-project.mjs +2 -2
  49. package/dist-lib/native-app-identity.cjs +1 -1
  50. package/dist-lib/native-app-identity.mjs +1 -1
  51. package/dist-lib/native-firebase-metadata.cjs +1 -1
  52. package/dist-lib/native-firebase-metadata.mjs +1 -1
  53. package/dist-lib/pdfium-raster.cjs +1 -1
  54. package/dist-lib/pdfium-raster.mjs +1 -1
  55. package/dist-lib/plist.cjs +1 -1
  56. package/dist-lib/plist.mjs +1 -1
  57. package/dist-lib/profiles.cjs +1 -1
  58. package/dist-lib/public-brand.cjs +1 -1
  59. package/dist-lib/public-origins-lib-esm.json +24 -24
  60. package/dist-lib/public-origins-lib.json +59 -54
  61. package/dist-lib/react-native-host-modules.cjs +1 -1
  62. package/dist-lib/react-native-host-modules.mjs +1 -1
  63. package/dist-lib/reap-browser.cjs +1 -1
  64. package/dist-lib/scripts/dev-server-scanner.cjs +1 -1
  65. package/dist-lib/sdk.cjs +1 -1
  66. package/dist-lib/sdk.mjs +1 -1
  67. package/dist-lib/skills.cjs +2223 -1876
  68. package/dist-lib/swift-compile.cjs +2 -2
  69. package/dist-lib/swift-compile.mjs +2 -2
  70. package/dist-lib/swift-package.cjs +1 -1
  71. package/dist-lib/swift-package.mjs +1 -1
  72. package/dist-lib/swift-submit.cjs +1 -1
  73. package/dist-lib/swift-submit.mjs +1 -1
  74. package/dist-lib/swift-toolchain.cjs +1 -1
  75. package/dist-lib/swift.cjs +1 -1
  76. package/dist-lib/vite-swift.cjs +1587 -1319
  77. package/dist-lib/vite.cjs +2 -2
  78. package/dist-lib/worklet-executable.cjs +1 -1
  79. package/dist-lib/worklet-executable.mjs +1 -1
  80. package/package.json +1 -1
  81. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNChangeHistoryEvent.h +116 -0
  82. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNChangeHistoryFetchRequest.h +79 -0
  83. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNContact+NSItemProvider.h +13 -0
  84. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNContact+Predicates.h +60 -0
  85. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNContact.h +169 -0
  86. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNContactFetchRequest.h +72 -0
  87. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNContactFormatter.h +136 -0
  88. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNContactProperty.h +47 -0
  89. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNContactRelation.h +287 -0
  90. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNContactStore.h +242 -0
  91. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNContactVCardSerialization.h +62 -0
  92. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNContactsUserDefaults.h +29 -0
  93. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNContainer+Predicates.h +29 -0
  94. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNContainer.h +44 -0
  95. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNError.h +64 -0
  96. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNFetchRequest.h +17 -0
  97. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNFetchResult.h +26 -0
  98. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNGroup+Predicates.h +28 -0
  99. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNGroup.h +34 -0
  100. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNInstantMessageAddress.h +52 -0
  101. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNLabeledValue.h +69 -0
  102. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNMutableContact.h +74 -0
  103. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNMutableGroup.h +25 -0
  104. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNMutablePostalAddress.h +35 -0
  105. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNPhoneNumber.h +44 -0
  106. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNPostalAddress.h +50 -0
  107. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNPostalAddressFormatter.h +91 -0
  108. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNSaveRequest.h +136 -0
  109. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/CNSocialProfile.h +55 -0
  110. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/Contacts.apinotes +28 -0
  111. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/Contacts.h +42 -0
  112. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Headers/ContactsDefines.h +14 -0
  113. package/sdk/ios/System/Library/Frameworks/Contacts.framework/Modules/module.modulemap +5 -0
  114. package/sdk/ios/System/Library/Frameworks/ContactsUI.framework/Headers/CNContactPickerViewController.h +92 -0
  115. package/sdk/ios/System/Library/Frameworks/ContactsUI.framework/Headers/CNContactViewController.h +157 -0
  116. package/sdk/ios/System/Library/Frameworks/ContactsUI.framework/Headers/ContactsUI.h +10 -0
  117. package/sdk/ios/System/Library/Frameworks/ContactsUI.framework/Headers/UIApplicationShortcutIcon+Contacts.h +22 -0
  118. package/sdk/ios/System/Library/Frameworks/ContactsUI.framework/Modules/module.modulemap +5 -0
  119. package/sdk/ios/System/Library/Frameworks/CoreData.framework/Headers/NSFetchedResultsController.h +8 -0
  120. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EKAlarm.h +114 -0
  121. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EKCalendar.h +134 -0
  122. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EKCalendarItem.h +129 -0
  123. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EKError.h +105 -0
  124. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EKEvent.h +205 -0
  125. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EKEventStore.h +477 -0
  126. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EKObject.h +34 -0
  127. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EKParticipant.h +115 -0
  128. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EKRecurrenceDayOfWeek.h +71 -0
  129. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EKRecurrenceEnd.h +61 -0
  130. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EKRecurrenceRule.h +193 -0
  131. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EKReminder.h +80 -0
  132. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EKSource.h +47 -0
  133. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EKStructuredLocation.h +28 -0
  134. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EKTypes.h +253 -0
  135. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EKVirtualConferenceDescriptor.h +109 -0
  136. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EKVirtualConferenceProvider.h +63 -0
  137. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EventKit.apinotes +72 -0
  138. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EventKit.h +29 -0
  139. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Headers/EventKitDefines.h +30 -0
  140. package/sdk/ios/System/Library/Frameworks/EventKit.framework/Modules/module.modulemap +5 -0
  141. package/sdk/ios/System/Library/Frameworks/PushKit.framework/Headers/PKDefines.h +26 -0
  142. package/sdk/ios/System/Library/Frameworks/PushKit.framework/Headers/PKPushCredentials.h +37 -0
  143. package/sdk/ios/System/Library/Frameworks/PushKit.framework/Headers/PKPushPayload.h +36 -0
  144. package/sdk/ios/System/Library/Frameworks/PushKit.framework/Headers/PKPushRegistry.h +330 -0
  145. package/sdk/ios/System/Library/Frameworks/PushKit.framework/Headers/PKVoIPPushMetadata.h +27 -0
  146. package/sdk/ios/System/Library/Frameworks/PushKit.framework/Headers/PushKit.apinotes +43 -0
  147. package/sdk/ios/System/Library/Frameworks/PushKit.framework/Headers/PushKit.h +12 -0
  148. package/sdk/ios/System/Library/Frameworks/PushKit.framework/Modules/module.modulemap +6 -0
  149. package/sdk/ios/System/Library/Frameworks/QuickLook.framework/Headers/ARQuickLookPreviewItem.h +63 -0
  150. package/sdk/ios/System/Library/Frameworks/QuickLook.framework/Headers/QLBase.h +34 -0
  151. package/sdk/ios/System/Library/Frameworks/QuickLook.framework/Headers/QLFilePreviewRequest.h +32 -0
  152. package/sdk/ios/System/Library/Frameworks/QuickLook.framework/Headers/QLPreviewController.h +174 -0
  153. package/sdk/ios/System/Library/Frameworks/QuickLook.framework/Headers/QLPreviewItem.h +45 -0
  154. package/sdk/ios/System/Library/Frameworks/QuickLook.framework/Headers/QLPreviewProvider.h +27 -0
  155. package/sdk/ios/System/Library/Frameworks/QuickLook.framework/Headers/QLPreviewReply.h +106 -0
  156. package/sdk/ios/System/Library/Frameworks/QuickLook.framework/Headers/QLPreviewSceneActivationConfiguration.h +41 -0
  157. package/sdk/ios/System/Library/Frameworks/QuickLook.framework/Headers/QLPreviewingController.h +74 -0
  158. package/sdk/ios/System/Library/Frameworks/QuickLook.framework/Headers/QLThumbnailProvider.h +37 -0
  159. package/sdk/ios/System/Library/Frameworks/QuickLook.framework/Headers/QLThumbnailReply.h +67 -0
  160. package/sdk/ios/System/Library/Frameworks/QuickLook.framework/Headers/QLThumbnailRequest.h +33 -0
  161. package/sdk/ios/System/Library/Frameworks/QuickLook.framework/Headers/QuickLook.apinotes +35 -0
  162. package/sdk/ios/System/Library/Frameworks/QuickLook.framework/Headers/QuickLook.h +30 -0
  163. package/sdk/ios/System/Library/Frameworks/QuickLook.framework/Headers/QuickLookUICore.h +12 -0
  164. package/sdk/ios/System/Library/Frameworks/QuickLook.framework/Modules/module.modulemap +8 -0
  165. package/src/core-data-entity-classes.ts +316 -0
  166. package/src/swift-host.ts +12 -0
  167. package/src/turbo-source.ts +89 -11
package/dist-lib/vite.cjs CHANGED
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2176 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2179 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
2
2
  let __sootsim_import_meta_url = '', __sootsim_import_meta_dirname = '', __sootsim_import_meta_filename = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; __sootsim_import_meta_dirname = __dirname; __sootsim_import_meta_filename = __filename; } catch {}
3
3
  "use strict";
4
4
  var __create = Object.create;
@@ -5388,7 +5388,7 @@ var FOUNDATION_IMPLICIT_MODULES = [
5388
5388
  var FOUNDATION_IMPLICIT_FLAGS = FOUNDATION_IMPLICIT_MODULES.map(
5389
5389
  (module2) => `, "-Xfrontend", "-import-module", "-Xfrontend", "${module2}"`
5390
5390
  ).join("");
5391
- var compilerSourceDigest = true ? "4fe13bc9a7fef541d09abfb87d6aa775bd9d830d442d6efa43a0e2d6bc34faf5" : swiftCompilerSourceDigest2(__sootsim_import_meta_dirname);
5391
+ var compilerSourceDigest = true ? "49b49a3b4f72b519cda4a1310d169f7d233d4f0249b0bcff228d2c316fafd9e1" : swiftCompilerSourceDigest2(__sootsim_import_meta_dirname);
5392
5392
  var CORE_FOUNDATION_HANDLE_IMPORTS = [
5393
5393
  "CFAllocator",
5394
5394
  "CFArray",
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2176 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2179 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
2
2
  let __sootsim_import_meta_url = '', __sootsim_import_meta_dirname = '', __sootsim_import_meta_filename = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; __sootsim_import_meta_dirname = __dirname; __sootsim_import_meta_filename = __filename; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2176 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2179 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
2
2
 
3
3
  // src/worklet-executable.ts
4
4
  import { parse } from "acorn";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "peachsim",
3
- "version": "0.1.2176",
3
+ "version": "0.1.2179",
4
4
  "description": "Vite and Metro plugins, testing drivers, and SDK exports for peach.",
5
5
  "author": "Tamagui LLC",
6
6
  "license": "SEE LICENSE IN LICENSE",
@@ -0,0 +1,116 @@
1
+ //
2
+ // CNChangeHistoryEvent.h
3
+ // Contacts
4
+ //
5
+ // Copyright (c) 2019 Apple Inc. All rights reserved.
6
+ //
7
+
8
+ #import <Foundation/Foundation.h>
9
+
10
+ NS_ASSUME_NONNULL_BEGIN
11
+
12
+ @protocol CNChangeHistoryEventVisitor;
13
+ @class CNContact;
14
+ @class CNGroup;
15
+
16
+ API_AVAILABLE(macos(10.15), ios(13.0), watchos(6.0))
17
+ @interface CNChangeHistoryEvent : NSObject <NSCopying, NSSecureCoding>
18
+
19
+ - (void)acceptEventVisitor:(id<CNChangeHistoryEventVisitor>)visitor;
20
+
21
+ @end
22
+
23
+ /// Drop all cached information your app has persisted
24
+ API_AVAILABLE(macos(10.15), ios(13.0), watchos(6.0))
25
+ @interface CNChangeHistoryDropEverythingEvent : CNChangeHistoryEvent
26
+ @end
27
+
28
+ /// A contact was added
29
+ API_AVAILABLE(macos(10.15), ios(13.0), watchos(6.0))
30
+ @interface CNChangeHistoryAddContactEvent : CNChangeHistoryEvent
31
+ @property (readonly, strong, nonatomic) CNContact * contact;
32
+ @property (readonly, strong, nonatomic, nullable) NSString * containerIdentifier;
33
+ @end
34
+
35
+ /// A contact was updated
36
+ API_AVAILABLE(macos(10.15), ios(13.0), watchos(6.0))
37
+ @interface CNChangeHistoryUpdateContactEvent : CNChangeHistoryEvent
38
+ @property (readonly, strong, nonatomic) CNContact * contact;
39
+ @end
40
+
41
+ /// A contact was removed
42
+ API_AVAILABLE(macos(10.15), ios(13.0), watchos(6.0))
43
+ @interface CNChangeHistoryDeleteContactEvent : CNChangeHistoryEvent
44
+ @property (readonly, strong, nonatomic) NSString * contactIdentifier;
45
+ @end
46
+
47
+ /// A group was added
48
+ API_AVAILABLE(macos(10.15), ios(13.0), watchos(6.0))
49
+ @interface CNChangeHistoryAddGroupEvent : CNChangeHistoryEvent
50
+ @property (readonly, strong, nonatomic) CNGroup * group;
51
+ @property (readonly, strong, nonatomic) NSString * containerIdentifier;
52
+ @end
53
+
54
+ /// A group was updated
55
+ API_AVAILABLE(macos(10.15), ios(13.0), watchos(6.0))
56
+ @interface CNChangeHistoryUpdateGroupEvent : CNChangeHistoryEvent
57
+ @property (readonly, strong, nonatomic) CNGroup * group;
58
+ @end
59
+
60
+ /// A group was deleted
61
+ API_AVAILABLE(macos(10.15), ios(13.0), watchos(6.0))
62
+ @interface CNChangeHistoryDeleteGroupEvent : CNChangeHistoryEvent
63
+ @property (readonly, strong, nonatomic) NSString * groupIdentifier;
64
+ @end
65
+
66
+ /// A contact was added to a group
67
+ API_AVAILABLE(macos(10.15), ios(13.0), watchos(6.0))
68
+ @interface CNChangeHistoryAddMemberToGroupEvent : CNChangeHistoryEvent
69
+ @property (readonly, strong, nonatomic) CNContact * member;
70
+ @property (readonly, strong, nonatomic) CNGroup * group;
71
+ @end
72
+
73
+ /// A contact was removed from a group
74
+ API_AVAILABLE(macos(10.15), ios(13.0), watchos(6.0))
75
+ @interface CNChangeHistoryRemoveMemberFromGroupEvent : CNChangeHistoryEvent
76
+ @property (readonly, strong, nonatomic) CNContact * member;
77
+ @property (readonly, strong, nonatomic) CNGroup * group;
78
+ @end
79
+
80
+ /// A subgroup was added to a group
81
+ API_AVAILABLE(macos(10.15), ios(13.0), watchos(6.0))
82
+ @interface CNChangeHistoryAddSubgroupToGroupEvent : CNChangeHistoryEvent
83
+ @property (readonly, strong, nonatomic) CNGroup * subgroup;
84
+ @property (readonly, strong, nonatomic) CNGroup * group;
85
+ @end
86
+
87
+ /// A subgroup was removed from a group
88
+ API_AVAILABLE(macos(10.15), ios(13.0), watchos(6.0))
89
+ @interface CNChangeHistoryRemoveSubgroupFromGroupEvent : CNChangeHistoryEvent
90
+ @property (readonly, strong, nonatomic) CNGroup * subgroup;
91
+ @property (readonly, strong, nonatomic) CNGroup * group;
92
+ @end
93
+
94
+
95
+ API_AVAILABLE(macos(10.15), ios(13.0), watchos(6.0))
96
+ @protocol CNChangeHistoryEventVisitor <NSObject>
97
+
98
+ - (void)visitDropEverythingEvent:(CNChangeHistoryDropEverythingEvent *)event;
99
+
100
+ - (void)visitAddContactEvent:(CNChangeHistoryAddContactEvent *)event;
101
+ - (void)visitUpdateContactEvent:(CNChangeHistoryUpdateContactEvent *)event;
102
+ - (void)visitDeleteContactEvent:(CNChangeHistoryDeleteContactEvent *)event;
103
+
104
+ @optional
105
+ - (void)visitAddGroupEvent:(CNChangeHistoryAddGroupEvent *)event;
106
+ - (void)visitUpdateGroupEvent:(CNChangeHistoryUpdateGroupEvent *)event;
107
+ - (void)visitDeleteGroupEvent:(CNChangeHistoryDeleteGroupEvent *)event;
108
+
109
+ - (void)visitAddMemberToGroupEvent:(CNChangeHistoryAddMemberToGroupEvent *)event;
110
+ - (void)visitRemoveMemberFromGroupEvent:(CNChangeHistoryRemoveMemberFromGroupEvent *)event;
111
+ - (void)visitAddSubgroupToGroupEvent:(CNChangeHistoryAddSubgroupToGroupEvent *)event;
112
+ - (void)visitRemoveSubgroupFromGroupEvent:(CNChangeHistoryRemoveSubgroupFromGroupEvent *)event;
113
+
114
+ @end
115
+
116
+ NS_ASSUME_NONNULL_END
@@ -0,0 +1,79 @@
1
+ //
2
+ // CNChangeHistoryFetchRequest.h
3
+ // Contacts
4
+ //
5
+ // Copyright (c) 2019 Apple Inc. All rights reserved.
6
+ //
7
+
8
+ #import <Contacts/CNFetchRequest.h>
9
+
10
+ @protocol CNKeyDescriptor;
11
+
12
+ NS_ASSUME_NONNULL_BEGIN
13
+
14
+ /*!
15
+ * @abstract Specifies the criteria to fetch change history.
16
+ *
17
+ * @discussion Changes to contacts are always returned.
18
+ * All changes are coalesced to remove redundant adds, updates and deletes.
19
+ * This request is used with [CNContactStore enumeratorForChangeHistoryFetchRequest:error:].
20
+ */
21
+ API_AVAILABLE(macosx(10.15), ios(13.0), watchos(6.0))
22
+ @interface CNChangeHistoryFetchRequest : CNFetchRequest <NSSecureCoding>
23
+
24
+ /*!
25
+ * @abstract Request changes made after a certain point.
26
+ *
27
+ * @discussion If non-nil, only changes made after this point in history will be returned.
28
+ *
29
+ * If nil, a @c CNChangeHistoryDropEverythingEvent will be returned, followed by an add event
30
+ * for every contact and group currently in the contacts database.
31
+ */
32
+ @property (copy, nullable, nonatomic) NSData * startingToken;
33
+
34
+ /*!
35
+ * @abstract Additional keys to include in the fetched contacts.
36
+ *
37
+ * @discussion By default, only @c CNContactIdentifierKey will be fetched. If you
38
+ * would like to include additional key descriptors to process the contacts,
39
+ * include the key descriptors you need.
40
+ *
41
+ * @c CNContactIdentifierKey will always be fetched, whether you
42
+ * request it or not.
43
+ */
44
+ @property (copy, nullable, nonatomic) NSArray<id<CNKeyDescriptor>> * additionalContactKeyDescriptors;
45
+
46
+ /*!
47
+ * @abstract Returns contact changes as unified contacts.
48
+ *
49
+ * @discussion If @c YES, returns unified contact history. Otherwise returns individual contact history. Default is @c YES.
50
+ *
51
+ * @note A unified contact is the aggregation of properties from a set of linked individual contacts.
52
+ * If an individual contact is not linked then the unified contact is simply that individual contact.
53
+ */
54
+ @property (nonatomic) BOOL shouldUnifyResults;
55
+
56
+ /*!
57
+ * @abstract To return mutable contacts and groups.
58
+ *
59
+ * @discussion If @c YES returns mutable contacts and groups. Default is @c NO.
60
+ */
61
+ @property (nonatomic) BOOL mutableObjects;
62
+
63
+ /*!
64
+ * @abstract Set to @c YES to also fetch group changes. Default is @c NO.
65
+ */
66
+ @property (nonatomic) BOOL includeGroupChanges;
67
+
68
+ /*!
69
+ * @abstract Exclude changes made by certain authors.
70
+ *
71
+ * @discussion If set, transactions made by the specified authors will be excluded
72
+ * from the results. Use this, in conjunction with @c CNSaveRequest.transactionAuthor,
73
+ * to suppress processing of changes you already know about.
74
+ */
75
+ @property (copy, nullable, nonatomic) NSArray<NSString *> * excludedTransactionAuthors;
76
+
77
+ @end
78
+
79
+ NS_ASSUME_NONNULL_END
@@ -0,0 +1,13 @@
1
+ //
2
+ // CNContact+NSItemProvider.h
3
+ // Contacts
4
+ //
5
+ // Copyright (c) 2017 Apple Inc. All rights reserved.
6
+ //
7
+
8
+ #import <Foundation/Foundation.h>
9
+ #import <Contacts/CNContact.h>
10
+
11
+ @interface CNContact (NSItemProvider) <NSItemProviderReading, NSItemProviderWriting>
12
+
13
+ @end
@@ -0,0 +1,60 @@
1
+ //
2
+ // CNContact+Predicates.h
3
+ // Contacts
4
+ //
5
+ // Copyright (c) 2015–2018 Apple Inc. All rights reserved.
6
+ //
7
+
8
+ #import <Contacts/CNContact.h>
9
+
10
+ NS_ASSUME_NONNULL_BEGIN
11
+
12
+
13
+ /*!
14
+ * @abstract The predicates to match contacts against.
15
+ *
16
+ * @discussion Can only use these predicates with CNContactStore and CNContactFetchRequest.
17
+ */
18
+ @interface CNContact (Predicates)
19
+
20
+ /*!
21
+ * @abstract To fetch contacts matching a name.
22
+ *
23
+ * @discussion The name can contain any number of words.
24
+ */
25
+ + (NSPredicate *)predicateForContactsMatchingName:(NSString *)name;
26
+
27
+ /*!
28
+ * @abstract Fetch contacts matching an email address.
29
+ *
30
+ * @discussion Use this predicate to find the contact(s) which contain the specified
31
+ * email address. The search is not case-sensitive.
32
+ *
33
+ * @param emailAddress
34
+ * The email address to search for. Do not include a scheme (e.g., "mailto:").
35
+ */
36
+ + (NSPredicate *)predicateForContactsMatchingEmailAddress:(NSString *)emailAddress API_AVAILABLE(macos(10.13), ios(11.0), watchos(4.0));
37
+
38
+ /*!
39
+ * @abstract Fetch contacts matching a phone number.
40
+ *
41
+ * @discussion If the predicate and contact differ in their use or presence of country
42
+ * codes, a best effort will be made to match results; however, inexact
43
+ * matches are not guaranteed.
44
+ *
45
+ * @param phoneNumber
46
+ * A @c CNPhoneNumber representing the phone number to search for.
47
+ * Do not include a scheme (e.g., "tel:").
48
+ */
49
+ + (NSPredicate *)predicateForContactsMatchingPhoneNumber:(CNPhoneNumber *)phoneNumber API_AVAILABLE(macos(10.13), ios(11.0), watchos(4.0));
50
+
51
+ /*! To fetch contacts matching contact identifiers. */
52
+ + (NSPredicate *)predicateForContactsWithIdentifiers:(NSArray<NSString*> *)identifiers;
53
+
54
+ + (NSPredicate *)predicateForContactsInGroupWithIdentifier:(NSString *)groupIdentifier;
55
+
56
+ + (NSPredicate *)predicateForContactsInContainerWithIdentifier:(NSString *)containerIdentifier;
57
+
58
+ @end
59
+
60
+ NS_ASSUME_NONNULL_END
@@ -0,0 +1,169 @@
1
+ //
2
+ // CNContact.h
3
+ // Contacts
4
+ //
5
+ // Copyright (c) 2015 Apple Inc. All rights reserved.
6
+ //
7
+
8
+ #import <Foundation/Foundation.h>
9
+ #import <Contacts/ContactsDefines.h>
10
+ #import <Contacts/CNLabeledValue.h>
11
+ #import <Contacts/CNPhoneNumber.h>
12
+ #import <Contacts/CNPostalAddress.h>
13
+ #import <Contacts/CNContactRelation.h>
14
+ #import <Contacts/CNSocialProfile.h>
15
+ #import <Contacts/CNInstantMessageAddress.h>
16
+
17
+ NS_ASSUME_NONNULL_BEGIN
18
+
19
+ typedef NS_ENUM(NSInteger, CNContactType)
20
+ {
21
+ CNContactTypePerson,
22
+ CNContactTypeOrganization,
23
+ } NS_ENUM_AVAILABLE(10_11, 9_0);
24
+
25
+ /*!
26
+ * @abstract Sort order for contacts.
27
+ *
28
+ * @discussion CNContactSortOrderUserDefault is the user's preferred sort order.
29
+ */
30
+ typedef NS_ENUM(NSInteger, CNContactSortOrder)
31
+ {
32
+ CNContactSortOrderNone,
33
+ CNContactSortOrderUserDefault,
34
+ CNContactSortOrderGivenName,
35
+ CNContactSortOrderFamilyName,
36
+ } NS_ENUM_AVAILABLE(10_11, 9_0);
37
+
38
+ /*! This protocol is reserved for Contacts framework usage. */
39
+ @protocol CNKeyDescriptor <NSObject, NSSecureCoding, NSCopying>
40
+ @end
41
+
42
+ /*! Allows contact property keys to be used with keysToFetch. */
43
+ @interface NSString (Contacts) <CNKeyDescriptor>
44
+ @end
45
+
46
+
47
+ /*!
48
+ * @abstract An immutable value object representing a contact.
49
+ *
50
+ * @discussion CNContact is thread safe.
51
+ *
52
+ * If using a CNContact instance where you are not certain of the keys that were fetched, use isKeyAvailable: or areKeysAvailable:. If these return NO you need to refetch the contact by the contact identifier with the keys you want to fetch. Accessing a property that was not fetched will throw CNContactPropertyNotFetchedExceptionName.
53
+ */
54
+ NS_CLASS_AVAILABLE(10_11, 9_0)
55
+ @interface CNContact : NSObject <NSCopying, NSMutableCopying, NSSecureCoding>
56
+
57
+ /*! The identifier is unique among contacts on the device. It can be saved and used for fetching contacts next application launch. */
58
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSString *identifier;
59
+
60
+ @property (readonly, NS_NONATOMIC_IOSONLY) CNContactType contactType;
61
+
62
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSString *namePrefix;
63
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSString *givenName;
64
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSString *middleName;
65
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSString *familyName;
66
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSString *previousFamilyName;
67
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSString *nameSuffix;
68
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSString *nickname;
69
+
70
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSString *organizationName;
71
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSString *departmentName;
72
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSString *jobTitle;
73
+
74
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSString *phoneticGivenName;
75
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSString *phoneticMiddleName;
76
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSString *phoneticFamilyName;
77
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSString *phoneticOrganizationName NS_AVAILABLE(10_12, 10_0);
78
+
79
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSString *note;
80
+
81
+ @property (readonly, copy, nullable, NS_NONATOMIC_IOSONLY) NSData *imageData;
82
+ @property (readonly, copy, nullable, NS_NONATOMIC_IOSONLY) NSData *thumbnailImageData;
83
+ @property (readonly, NS_NONATOMIC_IOSONLY) BOOL imageDataAvailable NS_AVAILABLE(10_12, 9_0);
84
+
85
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSArray<CNLabeledValue<CNPhoneNumber*>*> *phoneNumbers;
86
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSArray<CNLabeledValue<NSString*>*> *emailAddresses;
87
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSArray<CNLabeledValue<CNPostalAddress*>*> *postalAddresses;
88
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSArray<CNLabeledValue<NSString*>*> *urlAddresses;
89
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSArray<CNLabeledValue<CNContactRelation*>*> *contactRelations;
90
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSArray<CNLabeledValue<CNSocialProfile*>*> *socialProfiles;
91
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSArray<CNLabeledValue<CNInstantMessageAddress*>*> *instantMessageAddresses;
92
+
93
+ /*! The Gregorian birthday. */
94
+ @property (readonly, copy, nullable, NS_NONATOMIC_IOSONLY) NSDateComponents *birthday;
95
+
96
+ /*! The alternate birthday (Lunisolar). */
97
+ @property (readonly, copy, nullable, NS_NONATOMIC_IOSONLY) NSDateComponents *nonGregorianBirthday;
98
+
99
+ /*! Other Gregorian dates (anniversaries, etc). */
100
+ @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSArray<CNLabeledValue<NSDateComponents*>*> *dates;
101
+
102
+
103
+ // Key Availability
104
+
105
+ /*! Returns YES if the value for the specified key was fetched. */
106
+ - (BOOL)isKeyAvailable:(NSString *)key;
107
+
108
+ /*! Returns YES if the values for the keys specified by all the descriptors were fetched. */
109
+ - (BOOL)areKeysAvailable:(NSArray <id<CNKeyDescriptor>>*)keyDescriptors;
110
+
111
+
112
+ // Key Localization
113
+
114
+ /*! Returns a user displayable property name. */
115
+ + (NSString *)localizedStringForKey:(NSString *)key;
116
+
117
+
118
+ // Contact Sort Comparator
119
+
120
+ /*! The contact comparator for a given sort order. */
121
+ + (NSComparator)comparatorForNameSortOrder:(CNContactSortOrder)sortOrder;
122
+
123
+ /*! Use to fetch all contact keys required for the contact sort comparator. */
124
+ + (id<CNKeyDescriptor>)descriptorForAllComparatorKeys;
125
+
126
+
127
+ // Unification
128
+ /*! Returns YES if the receiver was fetched as a unified contact and includes the contact having contactIdentifier in its unification */
129
+ - (BOOL)isUnifiedWithContactWithIdentifier:(NSString*)contactIdentifier;
130
+
131
+ @end
132
+
133
+ CONTACTS_EXTERN NSString * const CNContactPropertyNotFetchedExceptionName;
134
+
135
+ // Properties that are always fetched. Can be used with key value coding and observing.
136
+ CONTACTS_EXTERN NSString * const CNContactIdentifierKey NS_AVAILABLE(10_11, 9_0);
137
+
138
+ // Optional properties that can be fetched. Can be used with key value coding and observing.
139
+ CONTACTS_EXTERN NSString * const CNContactNamePrefixKey NS_AVAILABLE(10_11, 9_0);
140
+ CONTACTS_EXTERN NSString * const CNContactGivenNameKey NS_AVAILABLE(10_11, 9_0);
141
+ CONTACTS_EXTERN NSString * const CNContactMiddleNameKey NS_AVAILABLE(10_11, 9_0);
142
+ CONTACTS_EXTERN NSString * const CNContactFamilyNameKey NS_AVAILABLE(10_11, 9_0);
143
+ CONTACTS_EXTERN NSString * const CNContactPreviousFamilyNameKey NS_AVAILABLE(10_11, 9_0);
144
+ CONTACTS_EXTERN NSString * const CNContactNameSuffixKey NS_AVAILABLE(10_11, 9_0);
145
+ CONTACTS_EXTERN NSString * const CNContactNicknameKey NS_AVAILABLE(10_11, 9_0);
146
+ CONTACTS_EXTERN NSString * const CNContactOrganizationNameKey NS_AVAILABLE(10_11, 9_0);
147
+ CONTACTS_EXTERN NSString * const CNContactDepartmentNameKey NS_AVAILABLE(10_11, 9_0);
148
+ CONTACTS_EXTERN NSString * const CNContactJobTitleKey NS_AVAILABLE(10_11, 9_0);
149
+ CONTACTS_EXTERN NSString * const CNContactPhoneticGivenNameKey NS_AVAILABLE(10_11, 9_0);
150
+ CONTACTS_EXTERN NSString * const CNContactPhoneticMiddleNameKey NS_AVAILABLE(10_11, 9_0);
151
+ CONTACTS_EXTERN NSString * const CNContactPhoneticFamilyNameKey NS_AVAILABLE(10_11, 9_0);
152
+ CONTACTS_EXTERN NSString * const CNContactPhoneticOrganizationNameKey NS_AVAILABLE(10_12, 10_0);
153
+ CONTACTS_EXTERN NSString * const CNContactBirthdayKey NS_AVAILABLE(10_11, 9_0);
154
+ CONTACTS_EXTERN NSString * const CNContactNonGregorianBirthdayKey NS_AVAILABLE(10_11, 9_0);
155
+ CONTACTS_EXTERN NSString * const CNContactNoteKey NS_AVAILABLE(10_11, 9_0);
156
+ CONTACTS_EXTERN NSString * const CNContactImageDataKey NS_AVAILABLE(10_11, 9_0);
157
+ CONTACTS_EXTERN NSString * const CNContactThumbnailImageDataKey NS_AVAILABLE(10_11, 9_0);
158
+ CONTACTS_EXTERN NSString * const CNContactImageDataAvailableKey NS_AVAILABLE(10_12, 9_0);
159
+ CONTACTS_EXTERN NSString * const CNContactTypeKey NS_AVAILABLE(10_11, 9_0);
160
+ CONTACTS_EXTERN NSString * const CNContactPhoneNumbersKey NS_AVAILABLE(10_11, 9_0);
161
+ CONTACTS_EXTERN NSString * const CNContactEmailAddressesKey NS_AVAILABLE(10_11, 9_0);
162
+ CONTACTS_EXTERN NSString * const CNContactPostalAddressesKey NS_AVAILABLE(10_11, 9_0);
163
+ CONTACTS_EXTERN NSString * const CNContactDatesKey NS_AVAILABLE(10_11, 9_0);
164
+ CONTACTS_EXTERN NSString * const CNContactUrlAddressesKey NS_AVAILABLE(10_11, 9_0);
165
+ CONTACTS_EXTERN NSString * const CNContactRelationsKey NS_AVAILABLE(10_11, 9_0);
166
+ CONTACTS_EXTERN NSString * const CNContactSocialProfilesKey NS_AVAILABLE(10_11, 9_0);
167
+ CONTACTS_EXTERN NSString * const CNContactInstantMessageAddressesKey NS_AVAILABLE(10_11, 9_0);
168
+
169
+ NS_ASSUME_NONNULL_END
@@ -0,0 +1,72 @@
1
+ //
2
+ // CNContactFetchRequest.h
3
+ // Contacts
4
+ //
5
+ // Copyright (c) 2015–2019 Apple Inc. All rights reserved.
6
+ //
7
+
8
+ #import <Contacts/CNContact.h>
9
+ #import <Contacts/CNFetchRequest.h>
10
+
11
+ NS_ASSUME_NONNULL_BEGIN
12
+
13
+
14
+ /*!
15
+ * @abstract Specifies the search criteria to fetch contacts.
16
+ *
17
+ * @discussion Used with [CNContactStore enumerateContactsWithFetchRequest:error:usingBlock:]. Can combine any of these options to create a contact fetch request.
18
+ */
19
+ API_AVAILABLE(macosx(10.11), ios(9.0), watchos(2.0))
20
+ @interface CNContactFetchRequest : CNFetchRequest <NSSecureCoding>
21
+
22
+ - (instancetype)init NS_UNAVAILABLE;
23
+ + (instancetype)new NS_UNAVAILABLE;
24
+
25
+ /*!
26
+ * @param keysToFetch
27
+ * The properties to fetch for the returned contacts.
28
+ *
29
+ * @discussion Only fetch the properties that will be used.
30
+ */
31
+ - (instancetype)initWithKeysToFetch:(NSArray <id<CNKeyDescriptor>>*)keysToFetch NS_DESIGNATED_INITIALIZER;
32
+
33
+ /*!
34
+ * @abstract The predicate to match contacts against.
35
+ *
36
+ * @discussion Use only predicates from CNContact+Predicates.h. Compound predicates are not supported. Set to nil to match all contacts.
37
+ */
38
+ @property (copy, nullable, NS_NONATOMIC_IOSONLY) NSPredicate *predicate;
39
+
40
+ /*!
41
+ * @abstract The properties to fetch in the returned contacts.
42
+ *
43
+ * @discussion Should only fetch the properties that will be used. Can combine contact keys and contact key descriptors.
44
+ */
45
+ @property (copy, NS_NONATOMIC_IOSONLY) NSArray<id<CNKeyDescriptor>> *keysToFetch;
46
+
47
+ /*!
48
+ * @abstract To return mutable contacts.
49
+ *
50
+ * @discussion If YES returns CNMutableContact objects, otherwise returns CNContact objects. Default is NO.
51
+ */
52
+ @property (NS_NONATOMIC_IOSONLY) BOOL mutableObjects NS_AVAILABLE(10_12, 10_0);
53
+
54
+ /*!
55
+ * @abstract To return linked contacts as unified contacts.
56
+ *
57
+ * @discussion If YES returns unified contacts, otherwise returns individual contacts. Default is YES.
58
+ *
59
+ * @note A unified contact is the aggregation of properties from a set of linked individual contacts. If an individual contact is not linked then the unified contact is simply that individual contact.
60
+ */
61
+ @property (NS_NONATOMIC_IOSONLY) BOOL unifyResults;
62
+
63
+ /*!
64
+ * @abstract To return contacts in a specific sort order.
65
+ *
66
+ * @discussion Default is CNContactSortOrderNone.
67
+ */
68
+ @property (NS_NONATOMIC_IOSONLY) CNContactSortOrder sortOrder;
69
+
70
+ @end
71
+
72
+ NS_ASSUME_NONNULL_END