)groupID;
-
-/*!
- Tracks an event.
-
- @param event event name
- */
-- (void)track:(NSString *)event;
-
-/*!
- Tracks an event with properties.
-
- Properties will allow you to segment your events in your Mixpanel reports.
- Property keys must be NSString
objects and values must be
- NSString
, NSNumber
, NSNull
,
- NSArray
, NSDictionary
, NSDate
or
- NSURL
objects. If the event is being timed, the timer will
- stop and be added as a property.
-
- @param event event name
- @param properties properties dictionary
- */
-- (void)track:(NSString *)event properties:(nullable NSDictionary *)properties;
-
-/*!
- Registers super properties, overwriting ones that have already been set.
-
- Super properties, once registered, are automatically sent as properties for
- all event tracking calls. They save you having to maintain and add a common
- set of properties to your events. Property keys must be NSString
- objects and values must be NSString
, NSNumber
,
- NSNull
, NSArray
, NSDictionary
,
- NSDate
or NSURL
objects.
-
- @param properties properties dictionary
- */
-- (void)registerSuperProperties:(NSDictionary *)properties;
-
-/*!
- Registers super properties without overwriting ones that have already been
- set.
-
- Property keys must be NSString
objects and values must be
- NSString
, NSNumber
, NSNull
,
- NSArray
, NSDictionary
, NSDate
or
- NSURL
objects.
-
- @param properties properties dictionary
- */
-- (void)registerSuperPropertiesOnce:(NSDictionary *)properties;
-
-/*!
- Registers super properties without overwriting ones that have already been set
- unless the existing value is equal to defaultValue.
-
- Property keys must be NSString
objects and values must be
- NSString
, NSNumber
, NSNull
,
- NSArray
, NSDictionary
, NSDate
or
- NSURL
objects.
-
- @param properties properties dictionary
- @param defaultValue overwrite existing properties that have this value
- */
-- (void)registerSuperPropertiesOnce:(NSDictionary *)properties defaultValue:(nullable id)defaultValue;
-
-/*!
- Removes a previously registered super property.
-
- As an alternative to clearing all properties, unregistering specific super
- properties prevents them from being recorded on future events. This operation
- does not affect the value of other super properties. Any property name that is
- not registered is ignored.
-
- Note that after removing a super property, events will show the attribute as
- having the value undefined
in Mixpanel until a new value is
- registered.
-
- @param propertyName array of property name strings to remove
- */
-- (void)unregisterSuperProperty:(NSString *)propertyName;
-
-/*!
- Clears all currently set super properties.
- */
-- (void)clearSuperProperties;
-
-/*!
- Returns the currently set super properties.
- */
-- (NSDictionary *)currentSuperProperties;
-
-/*!
- Starts a timer that will be stopped and added as a property when a
- corresponding event is tracked.
-
- This method is intended to be used in advance of events that have
- a duration. For example, if a developer were to track an "Image Upload" event
- she might want to also know how long the upload took. Calling this method
- before the upload code would implicitly cause the track
- call to record its duration.
-
-
- // begin timing the image upload
- [mixpanel timeEvent:@"Image Upload"];
-
- // upload the image
- [self uploadImageWithSuccessHandler:^{
-
- // track the event
- [mixpanel track:@"Image Upload"];
- }];
-
-
- @param event a string, identical to the name of the event that will be tracked
-
- */
-- (void)timeEvent:(NSString *)event;
-
-/*!
- Retrieves the time elapsed for the named event since timeEvent:
was called.
-
- @param event the name of the event to be tracked that was passed to timeEvent:
- */
-- (double)eventElapsedTime:(NSString *)event;
-
-/*!
- Clears all current event timers.
- */
-- (void)clearTimedEvents;
-
-/*!
- Clears all stored properties and distinct IDs. Useful if your app's user logs out.
- */
-- (void)reset;
-
-/*!
- Uploads queued data to the Mixpanel server.
-
- By default, queued data is flushed to the Mixpanel servers every minute (the
- default for flushInterval
), and on background (since
- flushOnBackground
is on by default). You only need to call this
- method manually if you want to force a flush at a particular moment.
- */
-- (void)flush;
-
-/*!
- Calls flush, then optionally archives and calls a handler when finished.
-
- When calling flush
manually, it is sometimes important to verify
- that the flush has finished before further action is taken. This is
- especially important when the app is in the background and could be suspended
- at any time if protocol is not followed. Delegate methods like
- application:didReceiveRemoteNotification:fetchCompletionHandler:
- are called when an app is brought to the background and require a handler to
- be called when it finishes.
-
- @param handler completion handler to be called after flush completes
- */
-- (void)flushWithCompletion:(nullable void (^)(void))handler;
-
-/*!
- Writes current project info, including distinct ID, super properties and pending event
- and People record queues to disk.
-
- This state will be recovered when the app is launched again if the Mixpanel
- library is initialized with the same project token. You do not need to call
- this method. The library listens for app state changes and handles
- persisting data as needed. It can be useful in some special circumstances,
- though, for example, if you'd like to track app crashes from main.m.
- */
-- (void)archive;
-
-/*!
- Creates a distinct_id alias from alias to original id.
-
- This method is used to map an identifier called an alias to the existing Mixpanel
- distinct id. This causes all events and people requests sent with the alias to be
- mapped back to the original distinct id. The recommended usage pattern is to call
- createAlias: and then identify: (with their new user ID) when they log in the next time.
- This will keep your signup funnels working correctly.
-
-
- // This makes the current ID (an auto-generated GUID)
- // and 'Alias' interchangeable distinct ids.
- [mixpanel createAlias:@"Alias"
- forDistinctID:mixpanel.distinctId];
-
- // You must call identify if you haven't already
- // (e.g., when your app launches).
- [mixpanel identify:mixpanel.distinctId];
-
-
-@param alias the new distinct_id that should represent original
-@param distinctID the old distinct_id that alias will be mapped to
- */
-- (void)createAlias:(NSString *)alias forDistinctID:(NSString *)distinctID;
-
-/*!
- Creates a distinct_id alias from alias to original id.
-
- This method is not intended to be used unless you wish to prevent updating the Mixpanel
- People distinct ID value by passing a value of NO to the usePeople param. This can be
- useful if the user wishes to prevent People updates from being sent until the identify
- method is called.
-
- @param alias the new distinct_id that should represent original
- @param distinctID the old distinct_id that alias will be mapped to
- @param usePeople bool controls whether or not to set the people distinctId to the event distinctId
- */
-- (void)createAlias:(NSString *)alias forDistinctID:(NSString *)distinctID usePeople:(BOOL)usePeople;
-
-/*!
- Returns the Mixpanel library version number as a string, e.g. "3.2.3".
- */
-- (NSString *)libVersion;
-
-/*!
- Opt out tracking.
-
- This method is used to opt out tracking. This causes all events and people request no longer
- to be sent back to the Mixpanel server.
- */
-- (void)optOutTracking;
-
-/*!
- Opt in tracking.
-
- Use this method to opt in an already opted out user from tracking. People updates and track calls will be
- sent to Mixpanel after using this method.
-
- This method will internally track an opt in event to your project. If you want to identify the opt-in
- event and/or pass properties to the event, See also optInTrackingForDistinctId:
and
- optInTrackingForDistinctId:withEventProperties:
.
- */
-- (void)optInTracking;
-
-/*!
- Opt in tracking.
-
- Use this method to opt in an already opted out user from tracking. People updates and track calls will be
- sent to Mixpanel after using this method.
-
- This method will internally track an opt in event to your project. If you want to pass properties to the event, see also
- optInTrackingForDistinctId:withEventProperties:
.
-
- @param distinctID optional string to use as the distinct ID for events. This will call identify:
.
- If you use people profiles make sure you manually call identify:
after this method.
- */
-- (void)optInTrackingForDistinctID:(nullable NSString *)distinctID;
-
-/*!
- Opt in tracking.
-
- Use this method to opt in an already opted out user from tracking. People updates and track calls will be
- sent to Mixpanel after using this method.
-
- This method will internally track an opt in event to your project.See also optInTracking
or
- optInTrackingForDistinctId:
.
-
- @param distinctID optional string to use as the distinct ID for events. This will call identify:
.
- If you use people profiles make sure you manually call identify:
after this method.
- @param properties optional properties dictionary that could be passed to add properties to the opt-in event that is sent to
- Mixpanel.
- */
-- (void)optInTrackingForDistinctID:(nullable NSString *)distinctID withEventProperties:(nullable NSDictionary *)properties;
-
-/*!
- Returns YES if the current user has opted out tracking, NO if the current user has opted in tracking.
- */
-- (BOOL)hasOptedOutTracking;
-
-/*!
- Returns the Mixpanel library version number as a string, e.g. "3.2.3".
- */
-+ (NSString *)libVersion;
-
-
-#if !MIXPANEL_NO_NOTIFICATION_AB_TEST_SUPPORT
-#pragma mark - Mixpanel Notifications
-
-/*!
- Shows the notification of the given id.
-
- You do not need to call this method on the main thread.
-
- @param ID notification id
- */
-- (void)showNotificationWithID:(NSUInteger)ID;
-
-
-/*!
- Shows a notification with the given type if one is available.
-
- You do not need to call this method on the main thread.
-
- @param type The type of notification to show, either @"mini", or @"takeover"
- */
-- (void)showNotificationWithType:(NSString *)type;
-
-/*!
- Shows a notification if one is available.
-
- You do not need to call this method on the main thread.
- */
-- (void)showNotification;
-
-#pragma mark - Mixpanel A/B Testing
-
-/*!
- Join any experiments (A/B tests) that are available for the current user.
-
- Mixpanel will check for A/B tests automatically when your app enters
- the foreground. Call this method if you would like to to check for,
- and join, any experiments are newly available for the current user.
-
- You do not need to call this method on the main thread.
- */
-- (void)joinExperiments;
-
-/*!
- Join any experiments (A/B tests) that are available for the current user.
-
- Same as joinExperiments but will fire the given callback after all experiments
- have been loaded and applied.
-
- @param experimentsLoadedCallback callback to be called after experiments
- joined and applied
- */
-- (void)joinExperimentsWithCallback:(nullable void (^)(void))experimentsLoadedCallback;
-
-#endif // MIXPANEL_NO_NOTIFICATION_AB_TEST_SUPPORT
-
-#pragma mark - Deprecated
-/*!
- Current user's name in Mixpanel Streams.
- */
-@property (nullable, atomic, copy) NSString *nameTag __deprecated; // Deprecated in v3.0.1
-
-@end
-
-/*!
- @protocol
-
- Delegate protocol for controlling the Mixpanel API's network behavior.
-
- Creating a delegate for the Mixpanel object is entirely optional. It is only
- necessary when you want full control over when data is uploaded to the server,
- beyond simply calling stop: and start: before and after a particular block of
- your code.
- */
-
-@protocol MixpanelDelegate
-
-@optional
-/*!
- Asks the delegate if data should be uploaded to the server.
-
- Return YES to upload now, NO to defer until later.
-
- @param mixpanel Mixpanel API instance
- */
-- (BOOL)mixpanelWillFlush:(Mixpanel *)mixpanel;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ios/Mixpanel.framework/Headers/MixpanelGroup.h b/ios/Mixpanel.framework/Headers/MixpanelGroup.h
deleted file mode 100644
index 3d22b7ed1f2..00000000000
--- a/ios/Mixpanel.framework/Headers/MixpanelGroup.h
+++ /dev/null
@@ -1,73 +0,0 @@
-//
-// MixpanelGroup.h
-// Mixpanel
-//
-// Created by Weizhe Yuan on 8/16/18.
-// Copyright © 2018 Mixpanel. All rights reserved.
-//
-#import "Mixpanel.h"
-#import
-
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface MixpanelGroup : NSObject
-
-/*!
- Set properties on this Mixpanel Group. Keys in properties must be NSString,
- and values are MixpanelTypes.
-
- The properties will be set on the current group. We use an NSAssert to enforce
- this type requirement. In release mode, the assert is stripped out and we will silently convert
- incorrect types to strings using [NSString stringWithFormat:@"%@", value].
- If the existing group record on the server already has a value for a given property,
- the old value is overwritten. Other existing properties will not be affected.
-
- @param properties properties dictionary
- */
-- (void)set:(NSDictionary *)properties;
-
-/*!
- Set properties on this Mixpanel Group, but don't overwrite if
- there are existing values.
-
- This method is identical to set() except it will only set
- properties that are not already set.
-
- @param properties properties dictionary
- */
-- (void)setOnce:(NSDictionary *)properties;
-
-/*!
- Remove a property and all its values from this Mixpanel Group. For
- properties that aren't set will be no effect.
-
- @param property the property to be unset
- */
-- (void)unset:(NSString *)property;
-
-/*!
- Union list properties.
-
- Property keys must be NSString
objects.
-
- @param property mapping of list property names to lists to union
- */
-- (void)union:(NSString *)property values:(NSArray> *)values;
-
-/*!
- Permanently remove a group on server side.
- */
-- (void)deleteGroup;
-
-/*!
- Remove one value from a group property.
-
- @param property the name of group property
- @param value the value to be removed
- */
-- (void)remove:(NSString *)property value:(id)value;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ios/Mixpanel.framework/Headers/MixpanelPeople.h b/ios/Mixpanel.framework/Headers/MixpanelPeople.h
deleted file mode 100644
index 13911c68980..00000000000
--- a/ios/Mixpanel.framework/Headers/MixpanelPeople.h
+++ /dev/null
@@ -1,229 +0,0 @@
-//
-// MixpanelPeople.h
-// Mixpanel
-//
-// Created by Sam Green on 6/16/16.
-// Copyright © 2016 Mixpanel. All rights reserved.
-//
-
-#import
-
-NS_ASSUME_NONNULL_BEGIN
-
-/*!
- Mixpanel People API.
-
- Access to the Mixpanel People API, available as a property on the main
- Mixpanel API.
-
- You should not instantiate this object yourself. An instance of it will
- be available as a property of the main Mixpanel object. Calls to Mixpanel
- People methods will look like this:
-
-
- [mixpanel.people increment:@"App Opens" by:[NSNumber numberWithInt:1]];
-
-
- Please note that the core Mixpanel
and
- MixpanelPeople
classes share the identify:
method.
- The Mixpanel
identify:
affects the
- distinct_id
property of events sent by track:
and
- track:properties:
and determines which Mixpanel People user
- record will be updated by set:
, increment:
and other
- MixpanelPeople
methods.
-
- If you are going to set your own distinct IDs for core Mixpanel event
- tracking, make sure to use the same distinct IDs when using Mixpanel
- People.
- */
-@interface MixpanelPeople : NSObject
-/*!
- controls the $ignore_time property in any subsequent MixpanelPeople operation.
-
- If the $ignore_time property is present and true in your request,
- Mixpanel will not automatically update the "Last Seen" property of the profile.
- Otherwise, Mixpanel will add a "Last Seen" property associated with the
- current time for all $set, $append, and $add operations
-
- Defaults to NO.
- */
-@property (atomic) BOOL ignoreTime;
-
-/*!
- Register the given device to receive push notifications.
-
- This will associate the device token with the current user in Mixpanel People,
- which will allow you to send push notifications to the user from the Mixpanel
- People web interface. You should call this method with the NSData
- token passed to
- application:didRegisterForRemoteNotificationsWithDeviceToken:
.
-
- @param deviceToken device token as returned application:didRegisterForRemoteNotificationsWithDeviceToken:
- */
-- (void)addPushDeviceToken:(NSData *)deviceToken;
-
-/*!
- Unregister the given device to receive push notifications.
-
- This will unset all of the push tokens saved to this people profile. This is useful
- in conjunction with a call to `reset`, or when a user is logging out.
- */
-- (void)removeAllPushDeviceTokens;
-
-/*!
- Unregister a specific device token from the ability to receive push notifications.
-
- This will remove the provided push token saved to this people profile. This is useful
- in conjunction with a call to `reset`, or when a user is logging out.
-
- @param deviceToken device token to be unregistered
- */
-- (void)removePushDeviceToken:(NSData *)deviceToken;
-
-/*!
- Set properties on the current user in Mixpanel People.
-
- The properties will be set on the current user. The keys must be NSString
- objects and the values should be NSString, NSNumber, NSArray, NSDate, or
- NSNull objects. We use an NSAssert to enforce this type requirement. In
- release mode, the assert is stripped out and we will silently convert
- incorrect types to strings using [NSString stringWithFormat:@"%@", value]. You
- can override the default the current project token and distinct ID by
- including the special properties: $token and $distinct_id. If the existing
- user record on the server already has a value for a given property, the old
- value is overwritten. Other existing properties will not be affected.
-
-
- // applies to both Mixpanel Engagement track: AND Mixpanel People set: and
- // increment: calls
- [mixpanel identify:distinctId];
-
-
- @param properties properties dictionary
-
- */
-- (void)set:(NSDictionary *)properties;
-
-/*!
- Convenience method for setting a single property in Mixpanel People.
-
- Property keys must be NSString
objects and values must be
- NSString
, NSNumber
, NSNull
,
- NSArray
, NSDictionary
, NSDate
or
- NSURL
objects.
-
- @param property property name
- @param object property value
- */
-- (void)set:(NSString *)property to:(id)object;
-
-/*!
- Set properties on the current user in Mixpanel People, but don't overwrite if
- there is an existing value.
-
- This method is identical to set:
except it will only set
- properties that are not already set. It is particularly useful for collecting
- data about the user's initial experience and source, as well as dates
- representing the first time something happened.
-
- @param properties properties dictionary
-
- */
-- (void)setOnce:(NSDictionary *)properties;
-
-/*!
- Remove a list of properties and their values from the current user's profile
- in Mixpanel People.
-
- The properties array must ony contain NSString names of properties. For properties
- that don't exist there will be no effect.
-
- @param properties properties array
-
- */
-- (void)unset:(NSArray *)properties;
-
-/*!
- Increment the given numeric properties by the given values.
-
- Property keys must be NSString names of numeric properties. A property is
- numeric if its current value is a number. If a property does not exist, it
- will be set to the increment amount. Property values must be NSNumber objects.
-
- @param properties properties dictionary
- */
-- (void)increment:(NSDictionary *)properties;
-
-/*!
- Convenience method for incrementing a single numeric property by the specified
- amount.
-
- @param property property name
- @param amount amount to increment by
- */
-- (void)increment:(NSString *)property by:(NSNumber *)amount;
-
-/*!
- Append values to list properties.
-
- Property keys must be NSString
objects and values must be
- NSString
, NSNumber
, NSNull
,
- NSArray
, NSDictionary
, NSDate
or
- NSURL
objects.
-
- @param properties mapping of list property names to values to append
- */
-- (void)append:(NSDictionary *)properties;
-
-/*!
- Union list properties.
-
- Property keys must be NSString
objects.
-
- @param properties mapping of list property names to lists to union
- */
-- (void)union:(NSDictionary *)properties;
-
-/*!
- Remove list properties.
-
- Property keys must be NSString
objects and values must be
- NSString
, NSNumber
, NSNull
,
- NSArray
, NSDictionary
, NSDate
or
- NSURL
objects.
-
- @param properties mapping of list property names to values to remove
- */
-- (void)remove:(NSDictionary *)properties;
-
-/*!
- Track money spent by the current user for revenue analytics.
-
- @param amount amount of revenue received
- */
-- (void)trackCharge:(NSNumber *)amount;
-
-/*!
- Track money spent by the current user for revenue analytics and associate
- properties with the charge.
-
- Charge properties allow you segment on types of revenue. For instance, you
- could record a product ID with each charge so that you could segment on it in
- revenue analytics to see which products are generating the most revenue.
- */
-- (void)trackCharge:(NSNumber *)amount withProperties:(nullable NSDictionary *)properties;
-
-
-/*!
- Delete current user's revenue history.
- */
-- (void)clearCharges;
-
-/*!
- Delete current user's record from Mixpanel People.
- */
-- (void)deleteUser;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ios/Mixpanel.framework/Headers/MixpanelType.h b/ios/Mixpanel.framework/Headers/MixpanelType.h
deleted file mode 100644
index 78db3e49cea..00000000000
--- a/ios/Mixpanel.framework/Headers/MixpanelType.h
+++ /dev/null
@@ -1,39 +0,0 @@
-//
-// MixpanelType.h
-// Mixpanel
-//
-// Created by Weizhe Yuan on 9/6/18.
-// Copyright © 2018 Mixpanel. All rights reserved.
-//
-
-#import
-
-@protocol MixpanelType
-
-- (BOOL)equalToMixpanelType:(id)rhs;
-
-@end
-
-@interface NSString (MixpanelTypeCategory)
-
-@end
-
-@interface NSNumber (MixpanelTypeCategory)
-
-@end
-
-@interface NSArray (MixpanelTypeCategory)
-
-@end
-
-@interface NSDictionary (MixpanelTypeCategory)
-
-@end
-
-@interface NSDate (MixpanelTypeCategory)
-
-@end
-
-@interface NSURL (MixpanelTypeCategory)
-
-@end
diff --git a/ios/Mixpanel.framework/Headers/_MPTweakBindObserver.h b/ios/Mixpanel.framework/Headers/_MPTweakBindObserver.h
deleted file mode 100644
index a9afc1039c2..00000000000
--- a/ios/Mixpanel.framework/Headers/_MPTweakBindObserver.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/**
- Copyright (c) 2014-present, Facebook, Inc.
- All rights reserved.
-
- This source code is licensed under the BSD-style license found in the
- LICENSE file in the root directory of this source tree. An additional grant
- of patent rights can be found in the PATENTS file in the same directory.
- */
-
-#import
-
-@class MPTweak;
-
-/**
- @abstract Block to call when an update is observed.
- @param object The object that the observer is attached to.
- */
-typedef void (^_MPTweakBindObserverBlock)(id object);
-
-/**
- @abstract Observes a tweak to issue bind updates.
- @discussion This is an implementation detail of {@ref MPTweakBind}.
- */
-@interface _MPTweakBindObserver : NSObject
-
-/**
- @abstract Designated initializer.
- @param tweak The tweak to observe.
- @param block The block to call on change.
- @return A new bind observer.
-*/
-- (instancetype)initWithTweak:(MPTweak *)tweak block:(_MPTweakBindObserverBlock)block;
-
-/**
- @abstract Attaches to an object and deallocates with it.
- @discussion Useful to create a limited lifetime for the observer.
- */
-- (void)attachToObject:(id)object;
-
-@end
diff --git a/ios/Mixpanel.framework/Info.plist b/ios/Mixpanel.framework/Info.plist
deleted file mode 100644
index de64b5210cf..00000000000
Binary files a/ios/Mixpanel.framework/Info.plist and /dev/null differ
diff --git a/ios/Mixpanel.framework/MPArrowLeft.png b/ios/Mixpanel.framework/MPArrowLeft.png
deleted file mode 100644
index 46e93c5be70..00000000000
Binary files a/ios/Mixpanel.framework/MPArrowLeft.png and /dev/null differ
diff --git a/ios/Mixpanel.framework/MPArrowLeft@2x.png b/ios/Mixpanel.framework/MPArrowLeft@2x.png
deleted file mode 100644
index cdd9a721c5a..00000000000
Binary files a/ios/Mixpanel.framework/MPArrowLeft@2x.png and /dev/null differ
diff --git a/ios/Mixpanel.framework/MPArrowRight.png b/ios/Mixpanel.framework/MPArrowRight.png
deleted file mode 100644
index 2a02ae4d431..00000000000
Binary files a/ios/Mixpanel.framework/MPArrowRight.png and /dev/null differ
diff --git a/ios/Mixpanel.framework/MPArrowRight@2x.png b/ios/Mixpanel.framework/MPArrowRight@2x.png
deleted file mode 100644
index 7b1c98c9c62..00000000000
Binary files a/ios/Mixpanel.framework/MPArrowRight@2x.png and /dev/null differ
diff --git a/ios/Mixpanel.framework/MPCheckmark.png b/ios/Mixpanel.framework/MPCheckmark.png
deleted file mode 100644
index e39c272b2df..00000000000
Binary files a/ios/Mixpanel.framework/MPCheckmark.png and /dev/null differ
diff --git a/ios/Mixpanel.framework/MPCheckmark@2x.png b/ios/Mixpanel.framework/MPCheckmark@2x.png
deleted file mode 100644
index b67ed134a09..00000000000
Binary files a/ios/Mixpanel.framework/MPCheckmark@2x.png and /dev/null differ
diff --git a/ios/Mixpanel.framework/MPCloseButton.png b/ios/Mixpanel.framework/MPCloseButton.png
deleted file mode 100644
index 465c45d0a66..00000000000
Binary files a/ios/Mixpanel.framework/MPCloseButton.png and /dev/null differ
diff --git a/ios/Mixpanel.framework/MPCloseButton@2x.png b/ios/Mixpanel.framework/MPCloseButton@2x.png
deleted file mode 100644
index edd5a4be631..00000000000
Binary files a/ios/Mixpanel.framework/MPCloseButton@2x.png and /dev/null differ
diff --git a/ios/Mixpanel.framework/MPCloseButton@3x.png b/ios/Mixpanel.framework/MPCloseButton@3x.png
deleted file mode 100644
index ba9cebaa22f..00000000000
Binary files a/ios/Mixpanel.framework/MPCloseButton@3x.png and /dev/null differ
diff --git a/ios/Mixpanel.framework/MPDismissKeyboard.png b/ios/Mixpanel.framework/MPDismissKeyboard.png
deleted file mode 100644
index 1e8eee8510b..00000000000
Binary files a/ios/Mixpanel.framework/MPDismissKeyboard.png and /dev/null differ
diff --git a/ios/Mixpanel.framework/MPDismissKeyboard@2x.png b/ios/Mixpanel.framework/MPDismissKeyboard@2x.png
deleted file mode 100644
index 826c2aab943..00000000000
Binary files a/ios/Mixpanel.framework/MPDismissKeyboard@2x.png and /dev/null differ
diff --git a/ios/Mixpanel.framework/MPTakeoverNotificationViewController~ipad.nib b/ios/Mixpanel.framework/MPTakeoverNotificationViewController~ipad.nib
deleted file mode 100644
index 9690f370f8d..00000000000
Binary files a/ios/Mixpanel.framework/MPTakeoverNotificationViewController~ipad.nib and /dev/null differ
diff --git a/ios/Mixpanel.framework/MPTakeoverNotificationViewController~iphonelandscape.nib b/ios/Mixpanel.framework/MPTakeoverNotificationViewController~iphonelandscape.nib
deleted file mode 100644
index fd7517b86cf..00000000000
Binary files a/ios/Mixpanel.framework/MPTakeoverNotificationViewController~iphonelandscape.nib and /dev/null differ
diff --git a/ios/Mixpanel.framework/MPTakeoverNotificationViewController~iphoneportrait.nib b/ios/Mixpanel.framework/MPTakeoverNotificationViewController~iphoneportrait.nib
deleted file mode 100644
index f154f27f106..00000000000
Binary files a/ios/Mixpanel.framework/MPTakeoverNotificationViewController~iphoneportrait.nib and /dev/null differ
diff --git a/ios/Mixpanel.framework/Mixpanel b/ios/Mixpanel.framework/Mixpanel
deleted file mode 100755
index 92b134fcc7a..00000000000
Binary files a/ios/Mixpanel.framework/Mixpanel and /dev/null differ
diff --git a/ios/Mixpanel.framework/Modules/module.modulemap b/ios/Mixpanel.framework/Modules/module.modulemap
deleted file mode 100644
index 8c27e8d80a2..00000000000
--- a/ios/Mixpanel.framework/Modules/module.modulemap
+++ /dev/null
@@ -1,12 +0,0 @@
-framework module Mixpanel {
- header "Mixpanel.h"
- header "MixpanelPeople.h"
- header "MixpanelGroup.h"
- header "MixpanelType.h"
- header "MPTweak.h"
- header "MPTweakInline.h"
- header "MPTweakInlineInternal.h"
- header "MPTweakStore.h"
- header "_MPTweakBindObserver.h"
- export *
-}
diff --git a/ios/Mixpanel.framework/PrivateHeaders/MPNetworkPrivate.h b/ios/Mixpanel.framework/PrivateHeaders/MPNetworkPrivate.h
deleted file mode 100644
index 1679e94577b..00000000000
--- a/ios/Mixpanel.framework/PrivateHeaders/MPNetworkPrivate.h
+++ /dev/null
@@ -1,40 +0,0 @@
-//
-// MPNetworkPrivate.h
-// Mixpanel
-//
-// Created by Sam Green on 6/17/16.
-// Copyright © 2016 Mixpanel. All rights reserved.
-//
-
-#import "MPNetwork.h"
-
-@interface MPNetwork ()
-
-@property (nonatomic, weak) Mixpanel *mixpanel;
-@property (nonatomic, strong) NSURL *serverURL;
-
-@property (nonatomic) NSTimeInterval requestsDisabledUntilTime;
-@property (nonatomic) NSUInteger consecutiveFailures;
-
-- (BOOL)handleNetworkResponse:(NSHTTPURLResponse *)response withError:(NSError *)error;
-
-+ (NSTimeInterval)calculateBackOffTimeFromFailures:(NSUInteger)failureCount;
-+ (NSTimeInterval)parseRetryAfterTime:(NSHTTPURLResponse *)response;
-+ (BOOL)parseHTTPFailure:(NSHTTPURLResponse *)response withError:(NSError *)error;
-
-+ (NSString *)encodeArrayForAPI:(NSArray *)array;
-+ (NSData *)encodeArrayAsJSONData:(NSArray *)array;
-+ (NSString *)encodeJSONDataAsBase64:(NSData *)data;
-
-+ (NSArray *)buildDecideQueryForProperties:(NSDictionary *)properties
- withDistinctID:(NSString *)distinctID
- andToken:(NSString *)token;
-
-- (NSURLRequest *)buildRequestForEndpoint:(NSString *)endpoint
- byHTTPMethod:(NSString *)method
- withQueryItems:(NSArray *)queryItems
- andBody:(NSString *)body;
-
-+ (NSURLSession *)sharedURLSession;
-
-@end
diff --git a/ios/Mixpanel.framework/PrivateHeaders/MixpanelPeoplePrivate.h b/ios/Mixpanel.framework/PrivateHeaders/MixpanelPeoplePrivate.h
deleted file mode 100644
index 2c6d0ddcfc1..00000000000
--- a/ios/Mixpanel.framework/PrivateHeaders/MixpanelPeoplePrivate.h
+++ /dev/null
@@ -1,22 +0,0 @@
-//
-// MixpanelPeoplePrivate.h
-// Mixpanel
-//
-// Created by Sam Green on 6/16/16.
-// Copyright © 2016 Mixpanel. All rights reserved.
-//
-#import
-
-@class Mixpanel;
-
-@interface MixpanelPeople ()
-
-@property (nonatomic, weak) Mixpanel *mixpanel;
-@property (nonatomic, strong) NSMutableArray *unidentifiedQueue;
-@property (nonatomic, copy) NSString *distinctId;
-@property (nonatomic, strong) NSDictionary *automaticPeopleProperties;
-
-- (instancetype)initWithMixpanel:(Mixpanel *)mixpanel;
-- (void)merge:(NSDictionary *)properties;
-
-@end
diff --git a/ios/Mixpanel.framework/PrivateHeaders/MixpanelPrivate.h b/ios/Mixpanel.framework/PrivateHeaders/MixpanelPrivate.h
deleted file mode 100644
index e831e619ced..00000000000
--- a/ios/Mixpanel.framework/PrivateHeaders/MixpanelPrivate.h
+++ /dev/null
@@ -1,162 +0,0 @@
-//
-// MixpanelPrivate.h
-// Mixpanel
-//
-// Created by Sam Green on 6/16/16.
-// Copyright © 2016 Mixpanel. All rights reserved.
-//
-
-#import "Mixpanel.h"
-#import "MPNetwork.h"
-#import "SessionMetadata.h"
-#import "MixpanelType.h"
-
-#if TARGET_OS_IOS
-#import
-#endif
-
-#if !MIXPANEL_NO_REACHABILITY_SUPPORT
-#import
-#import
-#import
-#endif
-
-#if !MIXPANEL_NO_AUTOMATIC_EVENTS_SUPPORT
-#import "Mixpanel+AutomaticTracks.h"
-#import "AutomaticTracksConstants.h"
-#import "AutomaticEvents.h"
-#import "MixpanelExceptionHandler.h"
-#endif
-
-#if !MIXPANEL_NO_NOTIFICATION_AB_TEST_SUPPORT
-#import "MPResources.h"
-#import "MPABTestDesignerConnection.h"
-#import "UIView+MPHelpers.h"
-#import "MPDesignerEventBindingMessage.h"
-#import "MPDesignerSessionCollection.h"
-#import "MPEventBinding.h"
-#import "MPNotification.h"
-#import "MPTakeoverNotification.h"
-#import "MPMiniNotification.h"
-#import "MPNotificationViewController.h"
-#import "MPSwizzler.h"
-#import "MPTweakStore.h"
-#import "MPVariant.h"
-#import "MPWebSocket.h"
-#import "MPNotification.h"
-#endif
-
-#if !MIXPANEL_NO_CONNECT_INTEGRATION_SUPPORT
-#import "MPConnectIntegrations.h"
-#endif
-
-#if defined(MIXPANEL_NO_NOTIFICATION_AB_TEST_SUPPORT) && defined(MIXPANEL_NO_AUTOMATIC_EVENTS_SUPPORT)
-@interface Mixpanel ()
-#elif defined(MIXPANEL_NO_NOTIFICATION_AB_TEST_SUPPORT)
-@interface Mixpanel ()
-#elif defined(MIXPANEL_NO_AUTOMATIC_EVENTS_SUPPORT)
-@interface Mixpanel ()
-#else
-@interface Mixpanel ()
-#endif
-
-{
- NSUInteger _flushInterval;
- BOOL _enableVisualABTestAndCodeless;
-}
-
-#if !MIXPANEL_NO_REACHABILITY_SUPPORT
-@property (nonatomic, assign) SCNetworkReachabilityRef reachability;
-@property (nonatomic, strong) CTTelephonyNetworkInfo *telephonyInfo;
-#endif
-
-#if !MIXPANEL_NO_NOTIFICATION_AB_TEST_SUPPORT
-@property (nonatomic, strong) UILongPressGestureRecognizer *testDesignerGestureRecognizer;
-@property (nonatomic, strong) MPABTestDesignerConnection *abtestDesignerConnection;
-#endif
-
-#if !MIXPANEL_NO_AUTOMATIC_EVENTS_SUPPORT
-@property (nonatomic) AutomaticTrackMode validationMode;
-@property (nonatomic) NSUInteger validationEventCount;
-@property (nonatomic, getter=isValidationEnabled) BOOL validationEnabled;
-@property (atomic, strong) AutomaticEvents *automaticEvents;
-#endif
-
-#if !MIXPANEL_NO_CONNECT_INTEGRATION_SUPPORT
-@property (nonatomic, strong) MPConnectIntegrations *connectIntegrations;
-#endif
-
-#if !defined(MIXPANEL_WATCHOS) && !defined(MIXPANEL_MACOS)
-@property (nonatomic, assign) UIBackgroundTaskIdentifier taskId;
-@property (nonatomic, strong) UIViewController *notificationViewController;
-#endif
-
-// re-declare internally as readwrite
-@property (atomic, strong) MixpanelPeople *people;
-@property (atomic, strong) NSMutableDictionary * cachedGroups;
-@property (atomic, strong) MPNetwork *network;
-@property (atomic, copy) NSString *distinctId;
-@property (atomic, copy) NSString *alias;
-@property (atomic, copy) NSString *anonymousId;
-@property (atomic, copy) NSString *userId;
-
-@property (nonatomic, copy) NSString *apiToken;
-@property (atomic, strong) NSDictionary *superProperties;
-@property (atomic, strong) NSDictionary *automaticProperties;
-@property (nonatomic, strong) NSTimer *timer;
-@property (nonatomic, strong) NSMutableArray *eventsQueue;
-@property (nonatomic, strong) NSMutableArray *peopleQueue;
-@property (nonatomic, strong) NSMutableArray *groupsQueue;
-@property (nonatomic) dispatch_queue_t serialQueue;
-@property (nonatomic) dispatch_queue_t networkQueue;
-@property (nonatomic, strong) NSMutableDictionary *timedEvents;
-@property (nonatomic, strong) SessionMetadata *sessionMetadata;
-
-@property (nonatomic) BOOL decideResponseCached;
-@property (nonatomic) BOOL hasAddedObserver;
-@property (nonatomic, strong) NSNumber *automaticEventsEnabled;
-@property (nonatomic, copy) NSArray *notifications;
-@property (nonatomic, copy) NSArray *triggeredNotifications;
-@property (nonatomic, strong) id currentlyShowingNotification;
-@property (nonatomic, strong) NSMutableSet *shownNotifications;
-
-@property (nonatomic, strong) NSSet *variants;
-@property (nonatomic, strong) NSSet *eventBindings;
-
-@property (nonatomic, assign) BOOL optOutStatus;
-@property (nonatomic, assign) BOOL optOutStatusNotSet;
-
-@property (nonatomic, strong) NSString *savedUrbanAirshipChannelID;
-
-@property (atomic, copy) NSString *switchboardURL;
-
-+ (void)assertPropertyTypes:(NSDictionary *)properties;
-
-+ (BOOL)isAppExtension;
-#if !MIXPANEL_NO_UIAPPLICATION_ACCESS
-+ (UIApplication *)sharedUIApplication;
-#endif
-
-- (NSString *)deviceModel;
-- (NSString *)IFA;
-
-- (void)archivePeople;
-- (NSString *)defaultDistinctId;
-- (void)archive;
-- (NSString *)eventsFilePath;
-- (NSString *)peopleFilePath;
-- (NSString *)groupsFilePath;
-- (NSString *)propertiesFilePath;
-- (NSString *)optOutFilePath;
-
-// for group caching
-- (NSString *)keyForGroup:(NSString *)groupKey groupID:(id)groupID;
-#if !MIXPANEL_NO_NOTIFICATION_AB_TEST_SUPPORT
-- (void)trackPushNotification:(NSDictionary *)userInfo;
-- (void)showNotificationWithObject:(MPNotification *)notification;
-- (void)markVariantRun:(MPVariant *)variant;
-- (void)checkForDecideResponseWithCompletion:(void (^)(NSArray *notifications, NSSet *variants, NSSet *eventBindings))completion;
-- (void)checkForDecideResponseWithCompletion:(void (^)(NSArray *notifications, NSSet *variants, NSSet *eventBindings))completion useCache:(BOOL)useCache;
-#endif
-
-@end
diff --git a/ios/Mixpanel.framework/placeholder-image.png b/ios/Mixpanel.framework/placeholder-image.png
deleted file mode 100644
index 6ec8b8690f7..00000000000
Binary files a/ios/Mixpanel.framework/placeholder-image.png and /dev/null differ
diff --git a/ios/Mixpanel.framework/snapshot_config.json b/ios/Mixpanel.framework/snapshot_config.json
deleted file mode 100644
index 0bf17eae70a..00000000000
--- a/ios/Mixpanel.framework/snapshot_config.json
+++ /dev/null
@@ -1,579 +0,0 @@
-{
- "enums" : [
- {
- "name": "UILayoutConstraintAxis",
- "base_type": "NSInteger",
- "flag_set": false,
- "values": [
- { "value": 0, "display_name": "Horizontal" },
- { "value": 1, "display_name": "Vertical" }
- ]
- },
- {
- "name": "UIControlState",
- "flag_set": true,
- "base_type": "NSUInteger",
- "values": [
- { "value": 0, "display_name": "Normal" },
- { "value": 1, "display_name": "Highlighted" },
- { "value": 2, "display_name": "Disabled" },
- { "value": 4, "display_name": "Selected" }
- ]
- },
- {
- "name": "UIControlContentVerticalAlignment",
- "base_type": "NSInteger",
- "flag_set": false,
- "values": [
- { "value": 0, "display_name": "Center" },
- { "value": 1, "display_name": "Top" },
- { "value": 2, "display_name": "Bottom" },
- { "value": 3, "display_name": "Fill" }
- ]
- },
- {
- "name": "UIControlContentHorizontalAlignment",
- "base_type": "NSInteger",
- "flag_set": false,
- "values": [
- { "value": 0, "display_name": "Center" },
- { "value": 1, "display_name": "Left" },
- { "value": 2, "display_name": "Right" },
- { "value": 3, "display_name": "Fill" }
- ]
- },
- {
- "name": "NSLayoutRelation",
- "base_type": "NSInteger",
- "flag_set": false,
- "values": [
- { "value": -1, "display_name": "LessThanOrEqual" },
- { "value": 0, "display_name": "Equal" },
- { "value": 1, "display_name": "GreaterThanOrEqual" }
- ]
- },
- {
- "name": "NSLayoutAttribute",
- "base_type": "NSInteger",
- "flag_set": false,
- "values": [
- { "value": 1, "display_name": "Left" },
- { "value": 2, "display_name": "Right" },
- { "value": 3, "display_name": "Top" },
- { "value": 4, "display_name": "Bottom" },
- { "value": 5, "display_name": "Leading" },
- { "value": 6, "display_name": "Trailing" },
- { "value": 7, "display_name": "Width" },
- { "value": 8, "display_name": "Height" },
- { "value": 9, "display_name": "CenterX" },
- { "value": 10, "display_name": "CenterY" },
- { "value": 11, "display_name": "Baseline" },
- { "value": 0, "display_name": "NotAnAttribute" }
- ]
- },
- {
- "name": "UIControlEvents",
- "base_type": "NSUInteger",
- "flag_set": true,
- "values": [
- { "value": 1, "display_name": "TouchDown" },
- { "value": 2, "display_name": "TouchDownRepeat" },
- { "value": 4, "display_name": "TouchDragInside" },
- { "value": 8, "display_name": "TouchDragOutside" },
- { "value": 16, "display_name": "TouchDragEnter" },
- { "value": 32, "display_name": "TouchDragExit" },
- { "value": 64, "display_name": "TouchUpInside" },
- { "value": 128, "display_name": "TouchUpOutside" },
- { "value": 256, "display_name": "TouchCancel" },
- { "value": 4096, "display_name": "ValueChanged" },
- { "value": 65536, "display_name": "EditingDidBegin" },
- { "value": 131072, "display_name": "EditingChanged" },
- { "value": 262144, "display_name": "EditingDidEnd" },
- { "value": 524288, "display_name": "EditingDidEndOnExit" },
- { "value": 4095, "display_name": "AllTouchEvents" },
- { "value": 983040, "display_name": "AllEditingEvents" },
- { "value": 251658240, "display_name": "ApplicationReserved" },
- { "value": 4026531840, "display_name": "SystemReserved" },
- { "value": 4294967295, "display_name": "AllEvents" }
- ]
- },
- {
- "name" : "UIBarButtonItemStyle",
- "base_type" : "NSInteger",
- "flag_set": false,
- "values" : [
- { "value" : 0, "display_name": "Plain" },
- { "value" : 1, "display_name": "Bordered" },
- { "value" : 2, "display_name": "Done" }
- ]
- },
- {
- "name": "NSTextAlignment",
- "base_type": "NSInteger",
- "flag_set": false,
- "values": [
- { "value": 0, "display_name": "Left" },
- { "value": 1, "display_name": "Center" },
- { "value": 2, "display_name": "Right" },
- { "value": 3, "display_name": "Justified" },
- { "value": 4, "display_name": "Natural" }
- ]
- },
- {
- "name": "NSLineBreakMode",
- "base_type": "NSInteger",
- "flag_set": false,
- "values": [
- { "value": 0, "display_name": "WordWrapping" },
- { "value": 1, "display_name": "CharWrapping" },
- { "value": 2, "display_name": "Clipping" },
- { "value": 3, "display_name": "TruncatingHead" },
- { "value": 4, "display_name": "TruncatingTail" },
- { "value": 5, "display_name": "TruncatingMiddle" }
- ]
- },
- {
- "name": "UIBaselineAdjustment",
- "base_type": "NSInteger",
- "flag_set": false,
- "values": [
- { "value": 0, "display_name": "AlignBaselines" },
- { "value": 1, "display_name": "AlignCenters" },
- { "value": 2, "display_name": "None" }
- ]
- },
- {
- "name": "UIScrollViewIndicatorStyle",
- "base_type": "NSInteger",
- "flag_set": false,
- "values": [
- { "value": 0, "display_name": "Default" },
- { "value": 1, "display_name": "Black" },
- { "value": 2, "display_name": "White" }
- ]
- }
- ],
- "classes": [
- {
- "name": "NSObject",
- "superclass": null,
- "properties": []
- },
- {
- "name": "UIResponder",
- "superclass": "NSObject",
- "properties": []
- },
- {
- "name": "UIScreen",
- "superclass": "NSObject",
- "properties": [
- { "name": "bounds", "type": "CGRect", "readonly":true },
- { "name": "applicationFrame", "type": "CGRect", "readonly":true },
- { "name": "scale", "type": "CGFloat", "readonly":true }
- ]
- },
- {
- "name" : "UIStoryboardSegueTemplate",
- "superclass" : "NSObject",
- "properties" : [
- { "name" : "identifier", "type" : "NSString", "readonly":true},
- { "name" : "viewController", "type": "UIViewController" },
- { "name" : "performOnViewLoad", "type": "BOOL" }
- ]
- },
- {
- "name" : "UINavigationItem",
- "superclass" : "NSObject",
- "properties" : [
- { "name" : "title", "type" : "NSString" },
- { "name" : "prompt", "type" : "NSString" },
- { "name" : "hidesBackButton", "type" : "BOOL" },
- { "name" : "leftItemsSupplementBackButton", "type" : "BOOL" },
- { "name" : "backBarButtonItem", "type" : "UIBarButtonItem" },
- { "name" : "titleView", "type" : "UIView" },
- { "name" : "leftBarButtonItems", "type" : "NSArray" },
- { "name" : "rightBarButtonItems", "type" : "NSArray" },
- { "name" : "leftBarButtonItem", "type" : "UIBarButtonItem" },
- { "name" : "rightBarButtonItem", "type" : "UIBarButtonItem" }
- ]
- },
- {
- "name" : "UIBarItem",
- "superclass" : "NSObject",
- "properties" : [
- { "name" : "enabled", "type": "BOOL" },
- { "name" : "image", "type": "UIImage" },
- { "name" : "landscapeImagePhone", "type": "UIImage" },
- { "name" : "landscapeImagePhone", "type": "UIImage" },
- { "name" : "imageInsets", "type": "UIEdgeInsets" },
- { "name" : "landscapeImagePhoneInsets", "type": "UIEdgeInsets" },
- { "name" : "title", "type": "NSString" },
- { "name" : "tag", "type": "NSInteger" }
- ]
- },
- {
- "name" : "UIBarButtonItem",
- "superclass" : "UIBarItem",
- "properties" : [
- { "name" : "target", "type" : "NSObject" },
- { "name" : "action", "type" : "SEL", "use_kvc":false },
- { "name" : "style", "type" : "UIBarButtonItemStyle" },
- { "name" : "possibleTitles", "type" : "NSSet" },
- { "name" : "width", "type" : "CGFloat" },
- { "name" : "customView", "type" : "UIView" },
- { "name" : "tintColor", "type" : "UIColor" }
- ]
- },
- {
- "name": "UIGestureRecognizer",
- "superclass": "NSObject",
- "properties": [
- { "name": "numberOfTouches", "type": "NSUInteger" },
- { "name": "view", "type": "UIView" },
- { "name": "enabled", "type": "BOOL" },
- { "name": "cancelsTouchesInView", "type": "BOOL" },
- { "name": "delaysTouchesBegan", "type": "BOOL" },
- { "name": "delaysTouchesEnded", "type": "BOOL" },
- { "name": "_targets", "type": "NSArray" }
- ]
- },
- {
- "name": "UIGestureRecognizerTarget",
- "superclass": "NSObject",
- "properties": [
- { "name": "_target", "type": "NSObject" },
- { "name": "_action", "type": "SEL", "use_ivar": true }
- ]
- },
- {
- "name": "UIView",
- "superclass": "UIResponder",
- "properties": [
- { "name": "userInteractionEnabled", "type": "BOOL" },
- { "name": "tag", "type": "NSInteger" },
- { "name": "mp_imageFingerprint", "type": "NSString", "use_kvc":false },
- { "name": "frame", "type": "CGRect" },
- { "name": "bounds", "type": "CGRect" },
- { "name": "center", "type": "CGPoint" },
- { "name": "transform", "type": "CGAffineTransform" },
- { "name": "superview", "type": "UIView" },
- { "name": "window", "type": "UIWindow" },
- { "name": "subviews", "type": "NSArray" },
- { "name": "clipsToBounds", "type": "BOOL" },
- { "name": "backgroundColor", "type": "UIColor" },
- { "name": "alpha", "type": "CGFloat" },
- { "name": "opaque", "type": "BOOL" },
- { "name": "clearsContextBeforeDrawing", "type": "BOOL" },
- { "name": "hidden", "type": "BOOL" },
- { "name": "contentMode", "type": "NSInteger" },
- { "name": "autoresizesSubviews", "type": "BOOL" },
- { "name": "autoresizingMask", "type": "NSUInteger" },
- { "name": "tintColor", "type": "UIColor" },
- { "name": "tintAdjustmentMode", "type": "NSInteger" },
- { "name": "restorationIdentifier", "type": "NSString" },
- { "name": "multipleTouchEnabled", "type": "BOOL" },
- { "name": "exclusiveTouch", "type": "BOOL" },
- { "name": "translatesAutoresizingMaskIntoConstraints", "type": "BOOL" },
- { "name": "layer", "type": "CALayer" },
- { "name": "gestureRecognizers", "type": "NSArray" },
- { "name": "constraints", "type": "NSArray", "readonly": true },
- {
- "name": "contentHuggingPriorityForAxis",
- "get": {
- "selector": "contentHuggingPriorityForAxis:",
- "parameters": [
- { "name": "axis", "type": "UILayoutConstraintAxis"}
- ],
- "result": { "type": "float", "name": "priority" }
- },
- "set": {
- "selector": "setContentHuggingPriority:forAxis:",
- "parameters": [
- { "name": "priority", "type": "float" },
- { "name": "axis", "type": "UILayoutConstraintAxis"} ]
- }
- },
- {
- "name": "contentCompressionResistancePriorityForAxis",
- "get": {
- "selector": "contentCompressionResistancePriorityForAxis:",
- "parameters": [
- { "name": "axis", "type": "UILayoutConstraintAxis"}
- ],
- "result": { "type": "float", "name": "priority" }
- },
- "set": {
- "selector": "setContentCompressionResistancePriority:forAxis:",
- "parameters": [
- { "name": "priority", "type": "float" },
- { "name": "axis", "type": "UILayoutConstraintAxis"} ]
- }
- }
- ]
- },
- {
- "name": "UILabel",
- "superclass": "UIView",
- "properties": [
- { "name": "text", "type": "NSString" },
- { "name": "attributedText", "type": "NSAttributedString" },
- { "name": "font", "type": "UIFont" },
- { "name": "textColor", "type": "UIColor" },
- { "name": "textAlignment", "type": "NSTextAlignment" },
- { "name": "lineBreakMode", "type": "NSLineBreakMode" },
- { "name": "enabled", "type": "BOOL" },
- { "name": "adjustsFontSizeToFitWidth", "type": "BOOL" },
- { "name": "baselineAdjustment", "type": "UIBaselineAdjustment" },
- { "name": "minimumScaleFactor", "type": "CGFloat" },
- { "name": "numberOfLines", "type": "NSInteger" },
- { "name": "highlightedTextColor", "type": "UIColor" },
- { "name": "highlighted", "type": "BOOL" },
- { "name": "shadowColor", "type": "UIColor" },
- { "name": "shadowOffset", "type": "CGSize" },
- { "name": "preferredMaxLayoutWidth", "type": "CGFloat" }
- ]
- },
- {
- "name": "UIImageView",
- "superclass" : "UIView",
- "properties": [
- { "name": "image", "type": "UIImage" },
- { "name": "highlightedImage", "type": "UIImage" },
- { "name": "animationImages", "type": "NSArray" },
- { "name": "highlightedAnimationImages", "type": "NSArray" },
- { "name": "animationDuration", "type": "NSTimeInterval" },
- { "name": "animationRepeatCount", "type": "NSInteger" },
- { "name": "highlighted", "type": "BOOL" }
- ]
- },
- {
- "name": "UIControlTargetAction",
- "superclass": "NSObject",
- "properties": [
- { "name": "_target", "type": "NSObject" },
- { "name": "_action", "type": "SEL", "use_ivar": true },
- { "name": "_eventMask", "type": "int" },
- { "name": "cancelled", "type": "BOOL" }
- ]
- },
- {
- "name": "UIControl",
- "superclass": "UIView",
- "properties": [
- { "name": "state", "type": "UIControlState" },
- { "name": "enabled", "type": "BOOL" },
- { "name": "selected", "type": "BOOL" },
- { "name": "highlighted", "type": "BOOL" },
- { "name": "contentVerticalAlignment", "type": "UIControlContentVerticalAlignment" },
- { "name": "contentHorizontalAlignment", "type": "UIControlContentHorizontalAlignment" },
- { "name": "allTargets", "type": "NSSet" },
- { "name": "allControlEvents", "type": "UIControlEvents" },
- { "name": "_targetActions", "type": "NSArray" }
- ]
- },
- {
- "name": "UISwitch",
- "superclass": "UIControl",
- "properties": [
- { "name": "on", "type": "BOOL" },
- { "name": "onTintColor", "type": "UIColor" },
- { "name": "thumbTintColor", "type": "UIColor" },
- { "name": "onImage", "type": "UIImage" },
- { "name": "offImage", "type": "UIImage" }
- ]
- },
- {
- "name": "UIScrollView",
- "superclass": "UIView",
- "properties": [
- { "name": "contentOffset", "type": "CGPoint" },
- { "name": "contentSize", "type": "CGSize" },
- { "name": "contentInset", "type": "UIEdgeInsets" },
- { "name": "scrollEnabled", "type": "BOOL" },
- { "name": "directionalLockEnabled", "type": "BOOL" },
- { "name": "scrollsToTop", "type": "BOOL" },
- { "name": "pagingEnabled", "type": "BOOL" },
- { "name": "bounces", "type": "BOOL" },
- { "name": "alwaysBounceVertical", "type": "BOOL" },
- { "name": "alwaysBounceHorizontal", "type": "BOOL" },
- { "name": "delaysContentTouches", "type": "BOOL" },
- { "name": "decelerationRate", "type": "CGFloat" },
- { "name": "indicatorStyle", "type": "UIScrollViewIndicatorStyle" },
- { "name": "scrollIndicatorInsets", "type": "UIEdgeInsets" },
- { "name": "showsHorizontalScrollIndicator", "type": "BOOL" },
- { "name": "showsVerticalScrollIndicator", "type": "BOOL" },
- { "name": "zoomScale", "type": "CGFloat" },
- { "name": "maximumZoomScale", "type": "CGFloat" },
- { "name": "minimumZoomScale", "type": "CGFloat" },
- { "name": "bouncesZoom", "type": "BOOL" }
- ]
- },
- {
- "name": "UITextView",
- "superclass": "UIScrollView",
- "properties": [
- { "name": "text", "type": "NSString" },
- { "name": "attributedText", "type": "NSAttributedString" }
- ]
- },
- {
- "name": "UIButton",
- "superclass": "UIControl",
- "properties": [
- { "name": "adjustsImageWhenHighlighted", "type": "BOOL" },
- { "name": "adjustsImageWhenDisabled", "type": "BOOL" },
- { "name": "showsTouchWhenHighlighted", "type": "BOOL" },
- { "name": "adjustsImageWhenDisabled", "type": "BOOL" },
- {
- "name": "titleForState",
- "get": {
- "selector": "titleForState:",
- "parameters": [ { "name": "state", "type": "UIControlState"} ],
- "result": { "type": "NSString" }
- },
- "set": {
- "selector": "setTitle:forState:",
- "parameters": [
- { "name": "title", "type": "NSString" },
- { "name": "state", "type": "UIControlState"} ]
- }
- },
- {
- "name": "titleColorForState",
- "get": {
- "selector": "titleColorForState:",
- "parameters": [ { "name": "state", "type": "UIControlState"} ],
- "result": { "type": "UIColor" }
- },
- "set": {
- "selector": "setTitleColor:forState:",
- "parameters": [
- { "name": "color", "type": "UIColor" },
- { "name": "state", "type": "UIControlState"} ]
- }
- },
- {
- "name": "titleShadowColorForState",
- "get": {
- "selector": "titleShadowColorForState:",
- "parameters": [ { "name": "state", "type": "UIControlState"} ],
- "result": { "type": "UIColor" }
- },
- "set": {
- "selector": "setTitleShadowColor:forState:",
- "parameters": [
- { "name": "color", "type": "UIColor" },
- { "name": "state", "type": "UIControlState"} ]
- }
- },
- {
- "name": "backgroundImageForState",
- "get": {
- "selector": "backgroundImageForState:",
- "parameters": [ { "name": "state", "type": "UIControlState"} ],
- "result": { "type": "UIImage" }
- },
- "set": {
- "selector": "setBackgroundImage:forState:",
- "parameters": [
- { "name": "image", "type": "UIImage" },
- { "name": "state", "type": "UIControlState"} ]
- }
- },
- {
- "name": "imageForState",
- "get": {
- "selector": "imageForState:",
- "parameters": [ { "name": "state", "type": "UIControlState"} ],
- "result": { "type": "UIImage" }
- },
- "set": {
- "selector": "setImage:forState:",
- "parameters": [
- { "name": "image", "type": "UIImage" },
- { "name": "state", "type": "UIControlState"} ]
- }
- }
- ]
- },
- {
- "name": "CALayer",
- "superclass": "NSObject",
- "properties": [
- { "name": "contentsRect", "type": "CGRect" },
- { "name": "contentsCenter", "type": "CGRect" },
- { "name": "contentsGravity", "type": "NSString" },
- { "name": "masksToBounds", "type": "BOOL" },
- { "name": "cornerRadius", "type": "CGFloat" },
- { "name": "borderWidth", "type": "CGFloat" },
- { "name": "borderColor", "type": "CGColorRef" },
- { "name": "shadowOpacity", "type": "float" },
- { "name": "shadowRadius", "type": "CGFloat" },
- { "name": "shadowOffset", "type": "CGSize" },
- { "name": "shadowColor", "type": "CGColorRef" },
- { "name": "frame", "type": "CGRect" },
- { "name": "bounds", "type": "CGRect" },
- { "name": "position", "type": "CGPoint" },
- { "name": "zPosition", "type": "CGFloat" },
- { "name": "anchorPointZ", "type": "CGFloat" },
- { "name": "anchorPoint", "type": "CGPoint" },
- { "name": "contentsScale", "type": "CGFloat" },
- { "name": "transform", "type": "CATransform3D" },
- { "name": "sublayerTransform", "type": "CATransform3D" },
- { "name": "affineTransform", "type": "CGAffineTransform" },
- { "name": "superlayer", "type": "CALayer" },
- { "name": "sublayers", "type": "NSArray", "readonly": true },
- { "name": "name", "type": "NSString" }
- ]
- },
- {
- "name":"NSLayoutConstraint",
- "superclass":"NSObject",
- "properties": [
- { "name": "priority", "type": "float", "readonly":true },
- { "name": "firstItem", "type": "UIView", "readonly":true },
- { "name": "secondItem", "type": "UIView", "readonly":true },
- { "name": "firstAttribute", "type": "NSLayoutAttribute", "readonly":true },
- { "name": "secondAttribute", "type": "NSLayoutAttribute", "readonly":true },
- { "name": "relation", "type": "NSLayoutRelation", "readonly":true },
- { "name": "multiplier", "type": "CGFloat", "readonly":true },
- { "name": "constant", "type": "CGFloat" }
- ]
- },
- {
- "name": "UIWindow",
- "superclass": "UIView",
- "properties": [
- { "name": "keyWindow", "type": "BOOL", "readonly": true },
- { "name": "rootViewController", "type": "UIViewController" },
- { "name": "windowLevel", "type": "CGFloat" },
- { "name": "screen", "type": "UIScreen", "readonly": true }
- ]
- },
- {
- "name": "UIViewController",
- "superclass": "UIResponder",
- "properties": [
- { "name": "restorationIdentifier", "type": "NSString" },
- { "name": "isViewLoaded", "type": "BOOL", "readonly": true },
- { "name": "view", "type": "UIView", "predicate": "self.isViewLoaded == YES" },
- { "name": "title", "type": "NSString" },
- { "name": "parentViewController", "type": "UIViewController" },
- { "name": "presentedViewController", "type": "UIViewController" },
- { "name": "presentingViewController", "type": "UIViewController" },
- { "name": "definesPresentationContext", "type": "BOOL" },
- { "name": "providesPresentationContextTransitionStyle", "type": "BOOL" },
- { "name": "modalTransitionStyle", "type": "UIModalTransitionStyle" },
- { "name": "modalPresentationStyle", "type": "UIModalPresentationStyle" },
- { "name": "modalPresentationCapturesStatusBarAppearance", "type": "BOOL" },
- { "name": "preferredContentSize", "type": "CGSize" },
- { "name": "childViewControllers", "type": "NSArray" },
- { "name": "supportedInterfaceOrientations", "type": "NSUInteger", "readonly": true },
- { "name": "_storyboardSegueTemplates", "type": "NSArray" },
- { "name": "navigationItem", "type": "UINavigationItem", "readonly": true }
- ]
- }
- ]
-}
-
diff --git a/ios/Mixpanel.framework/test_variant.json b/ios/Mixpanel.framework/test_variant.json
deleted file mode 100644
index b84075486f1..00000000000
--- a/ios/Mixpanel.framework/test_variant.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "id": 1,
- "experiment_id": 2,
- "actions":[
- {"path": "/UIView/UILabel[text == \"Old Text\"]", "args": [["New Text","NSString"]], "original": [["Old Text","NSString"]], "selector": "setText:", "swizzle":true, "swizzleClass":"UILabel", "swizzleSelector":"didMoveToWindow", "name":"XXXX-XXXX-XXXX"},
- {"path": "/UIView/UILabel[text == \"Old Text 2\"]", "args": [["New Text","NSString"]], "original": [["Old Text 2","NSString"]], "selector": "setText:", "name":"YYYY-YYYY-YYYY"}
- ],
- "tweaks":[]
-}
\ No newline at end of file
diff --git a/ios/mixpanel-iphone b/ios/mixpanel-iphone
deleted file mode 160000
index 7485f53e642..00000000000
--- a/ios/mixpanel-iphone
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 7485f53e642ebf85256e3db709e46b7cce5e9582