Skip to content

CarPlay iOS xcode13.0 beta1

Manuel de la Pena edited this page Jun 14, 2021 · 3 revisions

#CarPlay.framework https://github.com/xamarin/xamarin-macios/pull/11928

diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPGridTemplate.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPGridTemplate.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPGridTemplate.h	2021-03-16 08:48:00.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPGridTemplate.h	2021-06-02 12:47:35.000000000 -0400
@@ -11,16 +11,21 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+extern NSUInteger const CPGridTemplateMaximumItems API_AVAILABLE(ios(15.0)) API_UNAVAILABLE(macos, watchos, tvos);
+
 API_AVAILABLE(ios(12.0)) API_UNAVAILABLE(macos, watchos, tvos)
 @interface CPGridTemplate : CPTemplate <CPBarButtonProviding>
 
 /**
  Initialize a grid template with an array of @c CPGridButton and a title.
- @note A grid template will only display the first 8 buttons in the provided gridButtons array.
- A grid template presenting more than 4 buttons will balance the buttons between 2 rows.
+ 
+ @param title Title shown in template's navigation bar.
+ @param gridButtons A list of grid buttons on the template. The maximum button count is  @c CPGridTemplateMaximumItems.
+ 
+ @note A grid template will only display the first @c CPGridTemplateMaximumItems buttons in the provided @c gridButtons array.
  */
 - (instancetype)initWithTitle:(nullable NSString *)title
-                  gridButtons:(NSArray <CPGridButton *> *)gridButtons;
+                  gridButtons:(NSArray<CPGridButton *> *)gridButtons;
 
 - (instancetype)init NS_UNAVAILABLE;
 + (instancetype)new NS_UNAVAILABLE;
@@ -28,13 +33,24 @@
 /**
  Array of grid buttons displayed on the template
  */
-@property (nonatomic, readonly) NSArray <CPGridButton *> *gridButtons;
+@property (nonatomic, readonly) NSArray<CPGridButton *> *gridButtons;
+
+/**
+ Update the grid buttons displayed in this template, reloading
+ the view displaying these buttons.
+ */
+- (void)updateGridButtons:(NSArray<CPGridButton *> *)gridButtons API_AVAILABLE(ios(15.0));
 
 /**
  Title shown in template's navigation bar
  */
 @property (nonatomic, readonly) NSString *title;
 
+/**
+ Update the title displayed in this template.
+ */
+- (void)updateTitle:(NSString *)title API_AVAILABLE(ios(15.0));
+
 @end
 
 NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListImageRowItem.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListImageRowItem.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListImageRowItem.h	2021-03-16 08:48:00.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListImageRowItem.h	2021-06-02 12:47:35.000000000 -0400
@@ -31,8 +31,8 @@
 
  UIImageAsset is used to combine multiple UIImages with different trait collections into a single UIImage.
  
- @note The expected image size is given by @c CPImageRowImageSize. Images provided
- will be resized to this size.
+ @note The expected image size is given by +[CPListImageRowItem maximumImageSize]. Images provided
+ will be resized to this size if necessary.
  
  @discussion To properly size your images, your app should size them to the display scale of the car screen.
  See -[CPInterfaceController carTraitCollection].
@@ -56,6 +56,13 @@
                                                        dispatch_block_t completionBlock) API_AVAILABLE(ios(14.0));
 
 /**
+ A Boolean value indicating whether the list item is enabled.
+
+ @discussion Set the value of this property to @c YES to enable the list item or @c NO to disable it. The default value of this property is @c YES.
+ */
+@property (nonatomic, assign, getter=isEnabled) BOOL enabled API_AVAILABLE(ios(15.0));
+
+/**
  Read-only access to the grid images shown in a row in the cell.
  
  @note The maximum number of images shown is @c CPMaximumNumberOfGridImages.
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListItem.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListItem.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListItem.h	2021-03-16 08:48:01.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListItem.h	2021-06-02 12:47:37.000000000 -0400
@@ -85,6 +85,13 @@
                   detailText:(nullable NSString *)detailText;
 
 /**
+ A Boolean value indicating whether the list item is enabled.
+
+ @discussion Set the value of this property to @c YES to enable the list item or @c NO to disable it. The default value of this property is @c YES.
+ */
+@property (nonatomic, assign, getter=isEnabled) BOOL enabled API_AVAILABLE(ios(15.0));
+
+/**
  An accessory image type to display in the trailing portion of this list item.
  
  @note If you specify a custom accessoryImage, it will take priority over one of the
@@ -163,6 +170,8 @@
 
 /**
  An optional action block, fired when the user selects this item in a list template.
+ 
+ You must call the completion block after processing the user's selection.
  */
 @property (nullable, nonatomic, copy) void (^handler) (id <CPSelectableListItem> item,
                                                        dispatch_block_t completionBlock) API_AVAILABLE(ios(14.0));
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListItemTypes.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListItemTypes.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListItemTypes.h	2021-03-16 08:48:00.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListItemTypes.h	2021-06-02 12:47:35.000000000 -0400
@@ -26,6 +26,13 @@
  */
 @property (nullable, nonatomic, strong) id userInfo;
 
+/**
+ A Boolean value indicating whether the button is enabled.
+
+ @discussion Set the value of this property to @c YES to enable the button or @c NO to disable it. The default value of this property is @c YES.
+ */
+@property (nonatomic, assign, getter=isEnabled) BOOL enabled API_AVAILABLE(ios(15.0));
+
 @end
 
 /**
@@ -37,6 +44,8 @@
 
 /**
  An optional action block, fired when the user selects this item in a list template.
+ 
+ You must call the completion block after processing the user's selection.
  */
 @property (nullable, nonatomic, copy) void (^handler) (id <CPSelectableListItem> item,
                                                        dispatch_block_t completionBlock);
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListSection.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListSection.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListSection.h	2021-03-16 08:47:59.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListSection.h	2021-06-02 12:47:35.000000000 -0400
@@ -7,10 +7,20 @@
 
 #import <Foundation/Foundation.h>
 #import <CarPlay/CPListItemTypes.h>
+#import <CarPlay/CPButton.h>
 
 NS_ASSUME_NONNULL_BEGIN
 
 /**
+ The expected maximum size of an image size for your @c CPListSection.
+ 
+ To properly size your images, your app should size them to the display scale of the car screen.
+ See -[CPInterfaceController carTraitCollection].
+ 
+ */
+extern CGSize const CPMaximumListSectionImageSize;
+
+/**
  @c CPListSection models a single section of items appearing in a @c CPListTemplate.
  */
 API_AVAILABLE(ios(12.0)) API_UNAVAILABLE(macos, watchos, tvos)
@@ -24,6 +34,29 @@
             sectionIndexTitle:(nullable NSString *)sectionIndexTitle;
 
 /**
+ Create a section with a list of items and an optional header containing labels, an image, and a button.
+ 
+ @note The maximum size of the section header image is given by CPMaximumListSectionImageSize.
+ 
+ When providing an image, your app may provide a @c UIImage that is display-ready. If necessary for the image, provide
+ light and dark styles by using an asset from your asset catalog, prepared with light and dark styles
+ or by using @c UIImageAsset to combine two @c UIImage instances into a single image with
+ both styles.
+
+ UIImageAsset is used to combine multiple UIImages with different trait collections into a single UIImage.
+  
+ @discussion To properly size your header image, your app should consider the display scale of the car screen.
+ See -[CPInterfaceController carTraitCollection].
+ 
+ */
+
+- (instancetype)initWithItems:(NSArray <id <CPListTemplateItem>> *)items
+                       header:(NSString *)header
+               headerSubtitle:(nullable NSString *)headerSubtitle
+                  headerImage:(nullable UIImage *)headerImage
+                 headerButton:(nullable CPButton *)headerButton
+            sectionIndexTitle:(nullable NSString *)sectionIndexTitle API_AVAILABLE(ios(15.0));
+/**
  Create a section by specifying a list of items.
  */
 - (instancetype)initWithItems:(NSArray <id <CPListTemplateItem>> *)items;
@@ -32,11 +65,19 @@
 + (instancetype)new NS_UNAVAILABLE;
 
 /**
- * Optional string to use for a header in this section.
+ * Optional string to use for a simple header in this section.
  */
 @property (nullable, nonatomic, readonly, copy) NSString *header;
 
 /**
+ * Optional section header elements used by the enhanced header in this section.
+ */
+
+@property (nullable, nonatomic, readonly, copy) NSString *headerSubtitle API_AVAILABLE(ios(15.0));
+@property (nullable, nonatomic, readonly, copy) UIImage *headerImage API_AVAILABLE(ios(15.0));
+@property (nullable, nonatomic, readonly, copy) CPButton *headerButton API_AVAILABLE(ios(15.0));
+
+/**
  An optional section index title to use in a table displaying this section.
  The system will enforce a maximum length of 1 for each section index title - in other words,
  you must choose single-character section index titles.
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListTemplate.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListTemplate.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListTemplate.h	2021-03-16 08:48:01.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListTemplate.h	2021-06-02 12:44:38.000000000 -0400
@@ -13,6 +13,23 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+/*
+ Visibility of the Assistant Cell
+ */
+typedef NS_ENUM(NSInteger, CPAssistantCellVisibility) {
+    CPAssistantCellVisibilityOff = 0,               // The list template will render without an assistant cell.
+    CPAssistantCellVisibilityWhileLimitedUIActive,  // The list template will render with an assistant cell, only while Limited UI is active.
+    CPAssistantCellVisibilityAlways,                // the list template will render with an assistant cell at all times.
+} API_AVAILABLE(ios(15.0));
+
+/*
+ Position of the Assistant Cell
+ */
+typedef NS_ENUM(NSInteger, CPAssistantCellPosition) {
+    CPAssistantCellPositionTop = 0, // The list template will display the assistant cell at the top of all visible cells.
+    CPAssistantCellPositionBottom,  // The list template will display the assistant cell at the bottom of all visible cells.
+} API_AVAILABLE(ios(15.0));
+
 @protocol CPListTemplateDelegate;
 @class CPListItem;
 
@@ -29,6 +46,21 @@
                      sections:(NSArray <CPListSection *> *)sections;
 
 /**
+ Initialize a list template with one or more sections of items, an optional title, and specifications
+ for the visibility and position of an Assistant Cell.
+ 
+ @note The Assistant Cell will only be rendered for the Audio and Communication app categories.
+ 
+ @discussion Unlike @c CPListItem, your application will not receive a callback when the user selects the cell.
+ Instead, configure an Intents app extention to receive user requests from SiriKit, in order to turn the requests into an
+ app-specific actions.
+ */
+- (instancetype)initWithTitle:(nullable NSString *)title
+                     sections:(NSArray <CPListSection *> *)sections
+      assistantCellVisibility:(CPAssistantCellVisibility)visibility
+        assistantCellPosition:(CPAssistantCellPosition)position API_AVAILABLE(ios(15.0));
+
+/**
  The list template's delegate is informed of list selection events.
  */
 @property (nullable, nonatomic, weak) id<CPListTemplateDelegate> delegate API_DEPRECATED_WITH_REPLACEMENT("-[CPListItem handler]", ios(12.0, 14.0));
@@ -113,6 +145,35 @@
  */
 @property (nonatomic, copy) NSArray<NSString *> *emptyViewSubtitleVariants API_AVAILABLE(ios(14.0));
 
+#pragma mark - Assistant Cell
+
+/**
+ The visibility of the Assistant Cell.
+
+ Assigning to this property will dynamically update the List Template to reflect the visibility of the Assistant Cell.
+ The default value of this property is @c CPAssistantCellVisibilityOff.
+
+ @note The Assistant Cell will only be rendered for the Audio and Communication app categories.
+ 
+ @discussion Unlike @c CPListItem, your application will not receive a callback when the user selects the cell.
+ Instead, configure an Intents app extention to receive user requests from SiriKit, in order to turn the requests into an
+ app-specific actions.
+ */
+@property (nonatomic, assign) CPAssistantCellVisibility assistantCellVisibility API_AVAILABLE(ios(15.0));
+
+/**
+ The position of the Assistant Cell.
+ Assigning to this property will dynamically update the List Template to reflect the position of the Assistant Cell.
+ The default value of this property is @c CPAssistantCellPositionTop.
+
+ @note The Assistant Cell will only be rendered for the Audio and Communication app categories.
+ 
+ @discussion Unlike @c CPListItem, your application will not receive a callback when the user selects the cell.
+ Instead, configure an Intents app extention to receive user requests from SiriKit, in order to turn the requests into an
+ app-specific actions.
+ */
+@property (nonatomic, assign) CPAssistantCellPosition assistantCellPosition API_AVAILABLE(ios(15.0));
+
 @end
 
 API_UNAVAILABLE(macos, watchos, tvos)
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPManeuver.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPManeuver.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPManeuver.h	2021-03-16 09:56:10.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPManeuver.h	2021-06-02 12:47:36.000000000 -0400
@@ -10,6 +10,73 @@
 #import <CarPlay/CPTravelEstimates.h>
 #import <UIKit/UIKit.h>
 
+typedef NS_ENUM(uint8_t, CPManeuverType) {
+    CPManeuverTypeNoTurn                    =  0,
+    CPManeuverTypeLeftTurn                  =  1,
+    CPManeuverTypeRightTurn                 =  2,
+    CPManeuverTypeStraightAhead             =  3,
+    CPManeuverTypeUTurn                     =  4,
+    CPManeuverTypeFollowRoad                =  5,
+    CPManeuverTypeEnterRoundabout           =  6,
+    CPManeuverTypeExitRoundabout            =  7,
+    CPManeuverTypeOffRamp                   =  8,
+    CPManeuverTypeOnRamp                    =  9,
+    CPManeuverTypeArriveEndOfNavigation     = 10,
+    CPManeuverTypeStartRoute                = 11,
+    CPManeuverTypeArriveAtDestination       = 12,
+    CPManeuverTypeKeepLeft                  = 13,
+    CPManeuverTypeKeepRight                 = 14,
+    CPManeuverTypeEnter_Ferry               = 15,
+    CPManeuverTypeExitFerry                 = 16,
+    CPManeuverTypeChangeFerry               = 17,
+    CPManeuverTypeStartRouteWithUTurn       = 18,
+    CPManeuverTypeUTurnAtRoundabout         = 19,
+    CPManeuverTypeLeftTurnAtEnd             = 20,
+    CPManeuverTypeRightTurnAtEnd            = 21,
+    CPManeuverTypeHighwayOffRampLeft        = 22,
+    CPManeuverTypeHighwayOffRampRight       = 23,
+    CPManeuverTypeArriveAtDestinationLeft   = 24,
+    CPManeuverTypeArriveAtDestinationRight  = 25,
+    CPManeuverTypeUTurnWhenPossible         = 26,
+    CPManeuverTypeArriveEndOfDirections     = 27,
+    CPManeuverTypeRoundaboutExit1           = 28,
+    CPManeuverTypeRoundaboutExit2           = 29,
+    CPManeuverTypeRoundaboutExit3           = 30,
+    CPManeuverTypeRoundaboutExit4           = 31,
+    CPManeuverTypeRoundaboutExit5           = 32,
+    CPManeuverTypeRoundaboutExit6           = 33,
+    CPManeuverTypeRoundaboutExit7           = 34,
+    CPManeuverTypeRoundaboutExit8           = 35,
+    CPManeuverTypeRoundaboutExit9           = 36,
+    CPManeuverTypeRoundaboutExit10          = 37,
+    CPManeuverTypeRoundaboutExit11          = 38,
+    CPManeuverTypeRoundaboutExit12          = 39,
+    CPManeuverTypeRoundaboutExit13          = 40,
+    CPManeuverTypeRoundaboutExit14          = 41,
+    CPManeuverTypeRoundaboutExit15          = 42,
+    CPManeuverTypeRoundaboutExit16          = 43,
+    CPManeuverTypeRoundaboutExit17          = 44,
+    CPManeuverTypeRoundaboutExit18          = 45,
+    CPManeuverTypeRoundaboutExit19          = 46,
+    CPManeuverTypeSharpLeftTurn             = 47,
+    CPManeuverTypeSharpRightTurn            = 48,
+    CPManeuverTypeSlightLeftTurn            = 49,
+    CPManeuverTypeSlightRightTurn           = 50,
+    CPManeuverTypeChangeHighway             = 51,
+    CPManeuverTypeChangeHighwayLeft         = 52,
+    CPManeuverTypeChangeHighwayRight        = 53,
+};
+
+typedef NS_ENUM(uint8_t, CPJunctionType) {
+    CPJunctionTypeIntersection = 0, // single intersection with roads coming to a common point
+    CPJunctionTypeRoundabout   = 1, // roundabout, junction elements represent roads exiting the roundabout
+};
+
+typedef NS_ENUM(uint8_t, CPTrafficSide) {
+    CPTrafficSideRight = 0, // anti-clockwise for roundabouts
+    CPTrafficSideLeft  = 1, // clockwise for roundabouts
+};
+
 NS_ASSUME_NONNULL_BEGIN
 
 /**
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPMessageListItem.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPMessageListItem.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPMessageListItem.h	2021-03-16 08:45:10.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPMessageListItem.h	2021-06-02 12:44:39.000000000 -0400
@@ -187,6 +187,13 @@
 @property (nonatomic, copy, nullable) NSString *trailingText;
 
 /**
+ A Boolean value indicating whether the list item is enabled.
+
+ @discussion Set the value of this property to @c YES to enable the list item or @c NO to disable it. The default value of this property is @c YES.
+ */
+@property (nonatomic, assign, getter=isEnabled) BOOL enabled API_AVAILABLE(ios(15.0));
+
+/**
  Any custom user info related to this item.
  */
 @property (nonatomic, strong, nullable) id userInfo;
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CarPlay.apinotes /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CarPlay.apinotes
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CarPlay.apinotes	2021-03-16 03:42:33.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CarPlay.apinotes	2021-06-01 23:02:33.000000000 -0400
@@ -58,6 +58,10 @@
   SwiftName: CPMessageListItem.maximumImageSize
 - Name: CPButtonMaximumImageSize
   SwiftName: CPButton.maximumImageSize
+- Name: CPAssistantCellVisibility
+  SwiftName: CPListItem.AssistantCellVisibility
+- Name: CPAssistantCellPosition
+  SwiftName: CPListItem.AssistantCellPosition
 
 Globals:
 - Name: CPTemplateApplicationSceneSessionRoleApplication
Clone this wiki locally