From 15dbfbabb2821e70c098412bdadbcc15aaf61d69 Mon Sep 17 00:00:00 2001 From: Zihe Jia Date: Fri, 13 Aug 2021 17:39:03 -0700 Subject: [PATCH] Update docs --- docs/Classes.html | 4 +- docs/Classes/Group.html | 4 +- docs/Classes/Mixpanel.html | 4 +- docs/Classes/MixpanelInstance.html | 73 ++++-- .../MixpanelNotificationServiceExtension.html | 4 +- docs/Classes/MixpanelPushNotifications.html | 4 +- docs/Classes/People.html | 4 +- docs/Enums.html | 4 +- docs/Enums/TweakViewDataType.html | 4 +- docs/Extensions.html | 4 +- docs/Extensions/Array.html | 4 +- docs/Extensions/Bool.html | 4 +- docs/Extensions/CGFloat.html | 4 +- docs/Extensions/Date.html | 4 +- docs/Extensions/Dictionary.html | 4 +- docs/Extensions/Double.html | 4 +- docs/Extensions/Float.html | 4 +- docs/Extensions/Int.html | 4 +- docs/Extensions/NSArray.html | 4 +- docs/Extensions/NSNull.html | 4 +- docs/Extensions/NSNumber.html | 4 +- docs/Extensions/NSString.html | 4 +- docs/Extensions/Optional.html | 4 +- docs/Extensions/String.html | 4 +- docs/Extensions/UIColor.html | 4 +- docs/Extensions/UInt.html | 4 +- docs/Extensions/URL.html | 4 +- docs/Functions.html | 4 +- docs/Protocols.html | 4 +- docs/Protocols/MixpanelDelegate.html | 4 +- docs/Protocols/MixpanelType.html | 4 +- docs/Protocols/TweakClusterType.html | 4 +- docs/Protocols/TweakLibraryType.html | 4 +- docs/Protocols/TweakableType.html | 4 +- docs/Structs.html | 4 +- docs/Structs/AnyTweak.html | 4 +- docs/Structs/MixpanelTweaks.html | 4 +- docs/Structs/Tweak.html | 4 +- docs/Typealiases.html | 4 +- .../Contents/Resources/Documents/Classes.html | 4 +- .../Resources/Documents/Classes/Group.html | 4 +- .../Resources/Documents/Classes/Mixpanel.html | 4 +- .../Documents/Classes/MixpanelInstance.html | 73 ++++-- .../MixpanelNotificationServiceExtension.html | 4 +- .../Classes/MixpanelPushNotifications.html | 4 +- .../Resources/Documents/Classes/People.html | 4 +- .../Contents/Resources/Documents/Enums.html | 4 +- .../Documents/Enums/TweakViewDataType.html | 4 +- .../Resources/Documents/Extensions.html | 4 +- .../Resources/Documents/Extensions/Array.html | 4 +- .../Resources/Documents/Extensions/Bool.html | 4 +- .../Documents/Extensions/CGFloat.html | 4 +- .../Resources/Documents/Extensions/Date.html | 4 +- .../Documents/Extensions/Dictionary.html | 4 +- .../Documents/Extensions/Double.html | 4 +- .../Resources/Documents/Extensions/Float.html | 4 +- .../Resources/Documents/Extensions/Int.html | 4 +- .../Documents/Extensions/NSArray.html | 4 +- .../Documents/Extensions/NSNull.html | 4 +- .../Documents/Extensions/NSNumber.html | 4 +- .../Documents/Extensions/NSString.html | 4 +- .../Documents/Extensions/Optional.html | 4 +- .../Documents/Extensions/String.html | 4 +- .../Documents/Extensions/UIColor.html | 4 +- .../Resources/Documents/Extensions/UInt.html | 4 +- .../Resources/Documents/Extensions/URL.html | 4 +- .../Resources/Documents/Functions.html | 4 +- .../Resources/Documents/Protocols.html | 4 +- .../Documents/Protocols/MixpanelDelegate.html | 4 +- .../Documents/Protocols/MixpanelType.html | 4 +- .../Documents/Protocols/TweakClusterType.html | 4 +- .../Documents/Protocols/TweakLibraryType.html | 4 +- .../Documents/Protocols/TweakableType.html | 4 +- .../Contents/Resources/Documents/Structs.html | 4 +- .../Resources/Documents/Structs/AnyTweak.html | 4 +- .../Documents/Structs/MixpanelTweaks.html | 4 +- .../Resources/Documents/Structs/Tweak.html | 4 +- .../Resources/Documents/Typealiases.html | 4 +- .../Contents/Resources/Documents/index.html | 221 +++++++----------- .../Contents/Resources/Documents/search.json | 2 +- .../Contents/Resources/docSet.dsidx | Bin 57344 -> 57344 bytes docs/docsets/Mixpanel.tgz | Bin 119273 -> 119034 bytes docs/index.html | 221 +++++++----------- docs/search.json | 2 +- docs/undocumented.json | 2 +- 85 files changed, 447 insertions(+), 451 deletions(-) diff --git a/docs/Classes.html b/docs/Classes.html index 12b6ffc2..7e3d7bf5 100644 --- a/docs/Classes.html +++ b/docs/Classes.html @@ -17,7 +17,7 @@
-

Mixpanel 2.10.2 Docs (87% documented)

+

Mixpanel 2.10.3 Docs (87% documented)

View on GitHub

@@ -393,7 +393,7 @@

Declaration

diff --git a/docs/Classes/Group.html b/docs/Classes/Group.html index 2242cc9d..977a7694 100644 --- a/docs/Classes/Group.html +++ b/docs/Classes/Group.html @@ -17,7 +17,7 @@
-

Mixpanel 2.10.2 Docs (87% documented)

+

Mixpanel 2.10.3 Docs (87% documented)

View on GitHub

@@ -548,7 +548,7 @@

Declaration

diff --git a/docs/Classes/Mixpanel.html b/docs/Classes/Mixpanel.html index 3da9d704..5ad5c5ed 100644 --- a/docs/Classes/Mixpanel.html +++ b/docs/Classes/Mixpanel.html @@ -17,7 +17,7 @@
-

Mixpanel 2.10.2 Docs (87% documented)

+

Mixpanel 2.10.3 Docs (87% documented)

View on GitHub

@@ -522,7 +522,7 @@

Parameters

diff --git a/docs/Classes/MixpanelInstance.html b/docs/Classes/MixpanelInstance.html index 5be8822f..2829cdbb 100644 --- a/docs/Classes/MixpanelInstance.html +++ b/docs/Classes/MixpanelInstance.html @@ -17,7 +17,7 @@
-

Mixpanel 2.10.2 Docs (87% documented)

+

Mixpanel 2.10.3 Docs (87% documented)

View on GitHub

@@ -888,9 +888,9 @@

Identity

  • @@ -925,7 +925,7 @@

    Identity

    Declaration

    Swift

    -
    open func identify(distinctId: String, usePeople: Bool = true)
    +
    open func identify(distinctId: String, usePeople: Bool = true, completion: (() -> Void)? = nil)
    @@ -958,6 +958,18 @@

    Parameters

  • + + + + completion + + + +
    +

    an optional completion handler for when the identify has completed.

    +
    + +
    @@ -967,9 +979,9 @@

    Parameters

  • @@ -991,7 +1003,7 @@

    Parameters

    Declaration

    Swift

    -
    open func createAlias(_ alias: String, distinctId: String, usePeople: Bool = true)
    +
    open func createAlias(_ alias: String, distinctId: String, usePeople: Bool = true, completion: (() -> Void)? = nil)
    @@ -1031,7 +1043,19 @@

    Parameters

    -

    boolean that controls whether or not to set the people distinctId to the event distinctId. +

    boolean that controls whether or not to set the people distinctId to the event distinctId.

    +
    + + + + + + completion + + + +
    +

    an optional completion handler for when the createAlias has completed. This should only be set to false if you wish to prevent people profile updates for that user.

    @@ -1045,9 +1069,9 @@

    Parameters

  • @@ -1063,10 +1087,29 @@

    Parameters

    Declaration

    Swift

    -
    open func reset()
    +
    open func reset(completion: (() -> Void)? = nil)
    +
    +

    Parameters

    + + + + + + + +
    + + completion + + +
    +

    an optional completion handler for when the reset has completed.

    +
    +
    +
  • @@ -2408,7 +2451,7 @@

    Declaration

    diff --git a/docs/Classes/MixpanelNotificationServiceExtension.html b/docs/Classes/MixpanelNotificationServiceExtension.html index 432a14d2..29881877 100644 --- a/docs/Classes/MixpanelNotificationServiceExtension.html +++ b/docs/Classes/MixpanelNotificationServiceExtension.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/Classes/MixpanelPushNotifications.html b/docs/Classes/MixpanelPushNotifications.html index 85e50da8..631cd2e5 100644 --- a/docs/Classes/MixpanelPushNotifications.html +++ b/docs/Classes/MixpanelPushNotifications.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/Classes/People.html b/docs/Classes/People.html index 3f2a4c72..b1a1ae1a 100644 --- a/docs/Classes/People.html +++ b/docs/Classes/People.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -975,7 +975,7 @@

    Declaration

    diff --git a/docs/Enums.html b/docs/Enums.html index 88215042..86ed5a2c 100644 --- a/docs/Enums.html +++ b/docs/Enums.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -230,7 +230,7 @@

    Declaration

    diff --git a/docs/Enums/TweakViewDataType.html b/docs/Enums/TweakViewDataType.html index fb134b07..4117bd16 100644 --- a/docs/Enums/TweakViewDataType.html +++ b/docs/Enums/TweakViewDataType.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -344,7 +344,7 @@

    Declaration

    diff --git a/docs/Extensions.html b/docs/Extensions.html index d5584fc1..6a95c820 100644 --- a/docs/Extensions.html +++ b/docs/Extensions.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -672,7 +672,7 @@

    Declaration

    diff --git a/docs/Extensions/Array.html b/docs/Extensions/Array.html index 9f068d88..e8eeb5b0 100644 --- a/docs/Extensions/Array.html +++ b/docs/Extensions/Array.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -256,7 +256,7 @@

    Declaration

    diff --git a/docs/Extensions/Bool.html b/docs/Extensions/Bool.html index 257a25de..7c8fd8bc 100644 --- a/docs/Extensions/Bool.html +++ b/docs/Extensions/Bool.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -298,7 +298,7 @@

    Declaration

    diff --git a/docs/Extensions/CGFloat.html b/docs/Extensions/CGFloat.html index a9d7ec08..994e13bf 100644 --- a/docs/Extensions/CGFloat.html +++ b/docs/Extensions/CGFloat.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -229,7 +229,7 @@

    Declaration

    diff --git a/docs/Extensions/Date.html b/docs/Extensions/Date.html index b36f5676..45eef789 100644 --- a/docs/Extensions/Date.html +++ b/docs/Extensions/Date.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/Extensions/Dictionary.html b/docs/Extensions/Dictionary.html index d5bb970c..bd618cf8 100644 --- a/docs/Extensions/Dictionary.html +++ b/docs/Extensions/Dictionary.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -256,7 +256,7 @@

    Declaration

    diff --git a/docs/Extensions/Double.html b/docs/Extensions/Double.html index 7eee2eb9..b865874d 100644 --- a/docs/Extensions/Double.html +++ b/docs/Extensions/Double.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -298,7 +298,7 @@

    Declaration

    diff --git a/docs/Extensions/Float.html b/docs/Extensions/Float.html index 21be46ef..cf550e61 100644 --- a/docs/Extensions/Float.html +++ b/docs/Extensions/Float.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/Extensions/Int.html b/docs/Extensions/Int.html index a674242a..efcd81ae 100644 --- a/docs/Extensions/Int.html +++ b/docs/Extensions/Int.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -298,7 +298,7 @@

    Declaration

    diff --git a/docs/Extensions/NSArray.html b/docs/Extensions/NSArray.html index 240eb378..db8ea70b 100644 --- a/docs/Extensions/NSArray.html +++ b/docs/Extensions/NSArray.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -256,7 +256,7 @@

    Declaration

    diff --git a/docs/Extensions/NSNull.html b/docs/Extensions/NSNull.html index e39c884d..5cad9016 100644 --- a/docs/Extensions/NSNull.html +++ b/docs/Extensions/NSNull.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/Extensions/NSNumber.html b/docs/Extensions/NSNumber.html index 27eb7a0b..4a75f19f 100644 --- a/docs/Extensions/NSNumber.html +++ b/docs/Extensions/NSNumber.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/Extensions/NSString.html b/docs/Extensions/NSString.html index 2f85b27e..a75a18d6 100644 --- a/docs/Extensions/NSString.html +++ b/docs/Extensions/NSString.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/Extensions/Optional.html b/docs/Extensions/Optional.html index 5ecdc63c..6a094297 100644 --- a/docs/Extensions/Optional.html +++ b/docs/Extensions/Optional.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -256,7 +256,7 @@

    Declaration

    diff --git a/docs/Extensions/String.html b/docs/Extensions/String.html index bdf14abf..f375e331 100644 --- a/docs/Extensions/String.html +++ b/docs/Extensions/String.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -298,7 +298,7 @@

    Declaration

    diff --git a/docs/Extensions/UIColor.html b/docs/Extensions/UIColor.html index d8f39aff..2bd8e49a 100644 --- a/docs/Extensions/UIColor.html +++ b/docs/Extensions/UIColor.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -249,7 +249,7 @@

    Parameters

    diff --git a/docs/Extensions/UInt.html b/docs/Extensions/UInt.html index 7529d5a8..6d9020b3 100644 --- a/docs/Extensions/UInt.html +++ b/docs/Extensions/UInt.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/Extensions/URL.html b/docs/Extensions/URL.html index acde30ec..537cff47 100644 --- a/docs/Extensions/URL.html +++ b/docs/Extensions/URL.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/Functions.html b/docs/Functions.html index e25558b7..e0a8e64c 100644 --- a/docs/Functions.html +++ b/docs/Functions.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -320,7 +320,7 @@

    Return Value

    diff --git a/docs/Protocols.html b/docs/Protocols.html index c62223dd..8ae1f832 100644 --- a/docs/Protocols.html +++ b/docs/Protocols.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -340,7 +340,7 @@

    Declaration

    diff --git a/docs/Protocols/MixpanelDelegate.html b/docs/Protocols/MixpanelDelegate.html index 8bd67b8a..c44cc99e 100644 --- a/docs/Protocols/MixpanelDelegate.html +++ b/docs/Protocols/MixpanelDelegate.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -253,7 +253,7 @@

    Return Value

    diff --git a/docs/Protocols/MixpanelType.html b/docs/Protocols/MixpanelType.html index e7f38b56..96016255 100644 --- a/docs/Protocols/MixpanelType.html +++ b/docs/Protocols/MixpanelType.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -259,7 +259,7 @@

    Declaration

    diff --git a/docs/Protocols/TweakClusterType.html b/docs/Protocols/TweakClusterType.html index b4ff8858..405b526a 100644 --- a/docs/Protocols/TweakClusterType.html +++ b/docs/Protocols/TweakClusterType.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -232,7 +232,7 @@

    Declaration

    diff --git a/docs/Protocols/TweakLibraryType.html b/docs/Protocols/TweakLibraryType.html index b3001272..9b2ac032 100644 --- a/docs/Protocols/TweakLibraryType.html +++ b/docs/Protocols/TweakLibraryType.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -340,7 +340,7 @@

    Parameters

    diff --git a/docs/Protocols/TweakableType.html b/docs/Protocols/TweakableType.html index 9551bb6d..356fe9a8 100644 --- a/docs/Protocols/TweakableType.html +++ b/docs/Protocols/TweakableType.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -230,7 +230,7 @@

    Declaration

    diff --git a/docs/Structs.html b/docs/Structs.html index 39fe3da3..057dbd59 100644 --- a/docs/Structs.html +++ b/docs/Structs.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -286,7 +286,7 @@

    Declaration

    diff --git a/docs/Structs/AnyTweak.html b/docs/Structs/AnyTweak.html index 76705757..725a31ad 100644 --- a/docs/Structs/AnyTweak.html +++ b/docs/Structs/AnyTweak.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -258,7 +258,7 @@

    Declaration

    diff --git a/docs/Structs/MixpanelTweaks.html b/docs/Structs/MixpanelTweaks.html index 3405d99c..835acc4f 100644 --- a/docs/Structs/MixpanelTweaks.html +++ b/docs/Structs/MixpanelTweaks.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -276,7 +276,7 @@

    Parameters

    diff --git a/docs/Structs/Tweak.html b/docs/Structs/Tweak.html index e87c46d8..eb1ba9b2 100644 --- a/docs/Structs/Tweak.html +++ b/docs/Structs/Tweak.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -430,7 +430,7 @@

    Parameters

    diff --git a/docs/Typealiases.html b/docs/Typealiases.html index e8aae453..ec419f4a 100644 --- a/docs/Typealiases.html +++ b/docs/Typealiases.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -223,7 +223,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes.html index 12b6ffc2..7e3d7bf5 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -393,7 +393,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/Group.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/Group.html index 2242cc9d..977a7694 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/Group.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/Group.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -548,7 +548,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/Mixpanel.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/Mixpanel.html index 3da9d704..5ad5c5ed 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/Mixpanel.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/Mixpanel.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -522,7 +522,7 @@

    Parameters

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/MixpanelInstance.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/MixpanelInstance.html index 5be8822f..2829cdbb 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/MixpanelInstance.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/MixpanelInstance.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -888,9 +888,9 @@

    Identity

  • @@ -925,7 +925,7 @@

    Identity

    Declaration

    Swift

    -
    open func identify(distinctId: String, usePeople: Bool = true)
    +
    open func identify(distinctId: String, usePeople: Bool = true, completion: (() -> Void)? = nil)
    @@ -958,6 +958,18 @@

    Parameters

  • + + + + completion + + + +
    +

    an optional completion handler for when the identify has completed.

    +
    + +
    @@ -967,9 +979,9 @@

    Parameters

  • @@ -991,7 +1003,7 @@

    Parameters

    Declaration

    Swift

    -
    open func createAlias(_ alias: String, distinctId: String, usePeople: Bool = true)
    +
    open func createAlias(_ alias: String, distinctId: String, usePeople: Bool = true, completion: (() -> Void)? = nil)
    @@ -1031,7 +1043,19 @@

    Parameters

    -

    boolean that controls whether or not to set the people distinctId to the event distinctId. +

    boolean that controls whether or not to set the people distinctId to the event distinctId.

    +
    + + + + + + completion + + + +
    +

    an optional completion handler for when the createAlias has completed. This should only be set to false if you wish to prevent people profile updates for that user.

    @@ -1045,9 +1069,9 @@

    Parameters

  • @@ -1063,10 +1087,29 @@

    Parameters

    Declaration

    Swift

    -
    open func reset()
    +
    open func reset(completion: (() -> Void)? = nil)
    +
    +

    Parameters

    + + + + + + + +
    + + completion + + +
    +

    an optional completion handler for when the reset has completed.

    +
    +
    +
  • @@ -2408,7 +2451,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/MixpanelNotificationServiceExtension.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/MixpanelNotificationServiceExtension.html index 432a14d2..29881877 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/MixpanelNotificationServiceExtension.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/MixpanelNotificationServiceExtension.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/MixpanelPushNotifications.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/MixpanelPushNotifications.html index 85e50da8..631cd2e5 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/MixpanelPushNotifications.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/MixpanelPushNotifications.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/People.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/People.html index 3f2a4c72..b1a1ae1a 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/People.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Classes/People.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -975,7 +975,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Enums.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Enums.html index 88215042..86ed5a2c 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Enums.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Enums.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -230,7 +230,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Enums/TweakViewDataType.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Enums/TweakViewDataType.html index fb134b07..4117bd16 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Enums/TweakViewDataType.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Enums/TweakViewDataType.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -344,7 +344,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions.html index d5584fc1..6a95c820 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -672,7 +672,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Array.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Array.html index 9f068d88..e8eeb5b0 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Array.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Array.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -256,7 +256,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Bool.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Bool.html index 257a25de..7c8fd8bc 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Bool.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Bool.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -298,7 +298,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/CGFloat.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/CGFloat.html index a9d7ec08..994e13bf 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/CGFloat.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/CGFloat.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -229,7 +229,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Date.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Date.html index b36f5676..45eef789 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Date.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Date.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Dictionary.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Dictionary.html index d5bb970c..bd618cf8 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Dictionary.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Dictionary.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -256,7 +256,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Double.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Double.html index 7eee2eb9..b865874d 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Double.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Double.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -298,7 +298,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Float.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Float.html index 21be46ef..cf550e61 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Float.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Float.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Int.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Int.html index a674242a..efcd81ae 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Int.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Int.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -298,7 +298,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/NSArray.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/NSArray.html index 240eb378..db8ea70b 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/NSArray.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/NSArray.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -256,7 +256,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/NSNull.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/NSNull.html index e39c884d..5cad9016 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/NSNull.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/NSNull.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/NSNumber.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/NSNumber.html index 27eb7a0b..4a75f19f 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/NSNumber.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/NSNumber.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/NSString.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/NSString.html index 2f85b27e..a75a18d6 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/NSString.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/NSString.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Optional.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Optional.html index 5ecdc63c..6a094297 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Optional.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/Optional.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -256,7 +256,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/String.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/String.html index bdf14abf..f375e331 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/String.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/String.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -298,7 +298,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/UIColor.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/UIColor.html index d8f39aff..2bd8e49a 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/UIColor.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/UIColor.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -249,7 +249,7 @@

    Parameters

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/UInt.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/UInt.html index 7529d5a8..6d9020b3 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/UInt.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/UInt.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/URL.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/URL.html index acde30ec..537cff47 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/URL.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Extensions/URL.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -257,7 +257,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Functions.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Functions.html index e25558b7..e0a8e64c 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Functions.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Functions.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -320,7 +320,7 @@

    Return Value

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols.html index c62223dd..8ae1f832 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -340,7 +340,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/MixpanelDelegate.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/MixpanelDelegate.html index 8bd67b8a..c44cc99e 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/MixpanelDelegate.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/MixpanelDelegate.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -253,7 +253,7 @@

    Return Value

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/MixpanelType.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/MixpanelType.html index e7f38b56..96016255 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/MixpanelType.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/MixpanelType.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -259,7 +259,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/TweakClusterType.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/TweakClusterType.html index b4ff8858..405b526a 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/TweakClusterType.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/TweakClusterType.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -232,7 +232,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/TweakLibraryType.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/TweakLibraryType.html index b3001272..9b2ac032 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/TweakLibraryType.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/TweakLibraryType.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -340,7 +340,7 @@

    Parameters

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/TweakableType.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/TweakableType.html index 9551bb6d..356fe9a8 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/TweakableType.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Protocols/TweakableType.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -230,7 +230,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Structs.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Structs.html index 39fe3da3..057dbd59 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Structs.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Structs.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -286,7 +286,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Structs/AnyTweak.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Structs/AnyTweak.html index 76705757..725a31ad 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Structs/AnyTweak.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Structs/AnyTweak.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -258,7 +258,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Structs/MixpanelTweaks.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Structs/MixpanelTweaks.html index 3405d99c..835acc4f 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Structs/MixpanelTweaks.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Structs/MixpanelTweaks.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -276,7 +276,7 @@

    Parameters

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Structs/Tweak.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Structs/Tweak.html index e87c46d8..eb1ba9b2 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Structs/Tweak.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Structs/Tweak.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -430,7 +430,7 @@

    Parameters

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Typealiases.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Typealiases.html index e8aae453..ec419f4a 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Typealiases.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/Typealiases.html @@ -17,7 +17,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -223,7 +223,7 @@

    Declaration

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/index.html b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/index.html index 3fbf72db..e8aa8cd9 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/index.html +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/index.html @@ -16,7 +16,7 @@
    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -188,8 +188,7 @@ Mixpanel Swift Library

    -

    Build Status -Average time to resolve an issue +

    Average time to resolve an issue Percentage of issues still open CocoaPods Compatible Carthage compatible @@ -201,196 +200,152 @@

    Table of Contents

    -

    Introduction

    +

    Overview

    Welcome to the official Mixpanel Swift Library

    -

    The Mixpanel Swift library for iOS is an open-source project, and we’d love to see your contributions! +

    The Mixpanel Swift library for iOS is an open-source project, and we’d love to see your contributions! We’d also love for you to come and work with us! Check out Jobs for details.

    If you are using Objective-C, we recommend using our Objective-C Library.

    -

    -

    Current supported features

    - -

    Our master branch and our releases are now on Swift 5.

    - -

    If you wish to use our Swift 4.2 implementation, please point to the v2.6.1 release. For Swift 4/4.1 implementation, please point to the v2.4.5 release. For Swift 3 implementation, please point to the v2.2.3 release. For Swift 2.3 implementation, please point to the v1.0.1 release.

    +

    Check out our Advanced iOS Swift Guide for additional advanced configurations and use cases, like setting up your project with European Union data storage.

    +

    Quick Start Guide

    -

    Our Swift library fully supports all of the Mixpanel features and has full parity with the Objective-C Library.

    +

    Our master branch and our releases are on Swift 5. If you wish to use our Swift 4.2 implementation, please point to the v2.6.1 release. For Swift 4/4.1 implementation, please point to the v2.4.5 release. For Swift 3 implementation, please point to the v2.2.3 release.

    +

    1. Install Mixpanel

    -

    -

    Installation

    +

    You will need your project token for initializing your library. You can get your project token from project settings.

    +

    Installation Option 1: Swift Package Manager

    -

    On Jan 1, 2022, we’ll remove the Messages & Experiments feature from Mixpanel. For now, you can choose to opt in to our beta version without Messages & Experiments feature support. You can use Swift Package Manager to install the beta version:

    +

    The easiest way to get Mixpanel into your iOS project is to use Swift Package Manager(requires Xcode 12+).

    1. In Xcode, select File > Swift Packages > Add Package Dependency.
    2. -
    3. Follow the prompts using the URL for this repository and point to the branch 3.0.0.beta
    4. +
    5. Follow the prompts using the Github URL for Mixpanel Swift library and a minimum semantic version of v2.8.0.
    -

    Swift Package Manager

    -

    It requires Xcode 12+ and v2.8.0+ release

    - -

    Important: It only supports for iOS, if you need integrations for other platforms(tvOS or macOS), please use other integration methods instead or use our beta version by pointing to the branch 3.0.0.beta

    +

    On Jan 1, 2022, we’ll remove the Messages & Experiments feature from Mixpanel. For now, you can choose to opt in to our beta version without Messages & Experiments feature support. You can use Swift Package Manager to point to the branch 3.0.0.beta

    +

    Installation Option 2: CocoaPods

      -
    1. In Xcode, select File > Swift Packages > Add Package Dependency.
    2. -
    3. Follow the prompts using the URL for this repository and a minimum semantic version of v2.8.0
    4. +
    5. If this is your first time using CocoaPods, Install CocoaPods using gem install cocoapods. Otherwise, continue to Step 3.
    6. +
    7. Run pod setup to create a local CocoaPods spec mirror.
    8. +
    9. Create a Podfile in your Xcode project directory by running pod init in your terminal, edit the Podfile generated, and add the following line: pod 'Mixpanel-swift'.
    10. +
    11. Run pod install in your Xcode project directory. CocoaPods should download and install the Mixpanel library, and create a new Xcode workspace. Open up this workspace in Xcode or typing open *.xcworkspace in your terminal.
    +

    Installation Option 3: Carthage

    -

    Check out our swift integration guide » for more info.

    -

    CocoaPods

    - -

    Our current release only supports CocoaPods version 1.4.0+

    - -

    Mixpanel supports CocoaPods for easy installation. -To Install, see our swift integration guide »

    - -

    For iOS, tvOS, macOS, and App Extension integrations:

    - -

    pod 'Mixpanel-swift'

    - -

    -

    Carthage

    - -

    Mixpanel also supports Carthage to package your dependencies as a framework. Include the following dependency in your Cartfile:

    - -

    github "mixpanel/mixpanel-swift"

    - -

    Check out the Carthage docs » for more info.

    +

    Mixpanel supports Carthage to package your dependencies as a framework. Include the following dependency in your Cartfile:

    +
    github "mixpanel/mixpanel-swift"
    +
    -

    -

    Manual Installation

    +

    Check out the Carthage docs for more info.

    +

    2. Initialize Mixpanel

    -

    To help users stay up to date with the latest version of our Swift SDK, we always recommend integrating our SDK via CocoaPods, which simplifies version updates and dependency management. However, there are cases where users can’t use CocoaPods. Not to worry, just follow these manual installation steps and you’ll be all set.

    -

    Step 1: Add as a Submodule

    +

    Import Mixpanel into AppDelegate.swift, and initialize Mixpanel within application:didFinishLaunchingWithOptions:

    +
    import Mixpanel
     
    -

    Add Mixpanel as a submodule to your local git repo like so:

    -
    git submodule add git@github.com:mixpanel/mixpanel-swift.git
    +func application(_ application: UIApplication,
    +                 didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    +    ...
    +    Mixpanel.initialize(token: "MIXPANEL_TOKEN")
    +    ...
    +}
     
    -

    Now the Mixpanel project and its files should be in your project folder!

    -

    Step 2: Drag Mixpanel to your project

    +

    See all configuration options

    +

    3. Send Data

    -

    Drag the Mixpanel.xcodeproj inside your sample project under the main sample project file:

    - -

    alt text

    -

    Step 3: Embed the framework

    +

    Let’s get started by sending event data. You can send an event from anywhere in your application. Better understand user behavior by storing details that are specific to the event (properties). After initializing the library, Mixpanel will automatically collect common mobile events. You can enable/disable automatic collection through your project settings. Also, Mixpanel automatically tracks some properties by default. learn more

    +
    Mixpanel.mainInstance().track(event: "Sign Up", properties: [
    +   "source": "Pat's affiliate site",
    +   "Opted out of email": true
    +])
    +
    -

    Select your app .xcodeproj file. Under “General”, add the Mixpanel framework as an embedded binary:

    +

    In addition to event data, you can also send user profile data. We recommend this after completing the quickstart guide.

    +

    4. Check for Success

    -

    alt text

    +

    Open up Live View in Mixpanel to view incoming events.

    -

    -

    Initializing and Usage

    +

    Once data hits our API, it generally takes ~60 seconds for it to be processed, stored, and queryable in your project.

    +

    Complete Code Example

    -

    -

    Integrate

    +

    Here’s a runnable code example that covers everything in this quickstart guide.

    +
    import Mixpanel
     
    -

    Import Mixpanel into AppDelegate.swift, and initialize Mixpanel within application:didFinishLaunchingWithOptions: -alt text

    -
    func application(_ application: UIApplication,
    +func application(_ application: UIApplication,
                      didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    +    ...
         Mixpanel.initialize(token: "MIXPANEL_TOKEN")
    +    Mixpanel.mainInstance().track(event: "Sign Up", properties: [
    +       "source": "Pat's affiliate site",
    +       "Opted out of email": true
    +    ])
    +    ...
     }
     
    +

    FAQ

    -

    You initialize your Mixpanel instance with the token provided to you on mixpanel.com.

    - -

    -

    Start tracking

    - -

    After installing the library into your iOS app, Mixpanel will automatically collect common mobile events. You can enable/ disable automatic collection through your project settings.

    - -

    To interact with the instance and track additional events, you can either use the mixpanel instance given when initializing:

    -
    mixpanel.track(event: "Tracked Event!")
    -
    +

    I want to stop tracking an event/event property in Mixpanel. Is that possible?

    -

    or you can directly fetch the instance and use it from the Mixpanel object:

    -
    Mixpanel.mainInstance().track(event: "Tracked Event!")
    -
    +

    Yes, in Lexicon, you can intercept and drop incoming events or properties. Mixpanel won’t store any new data for the event or property you select to drop. See this article for more information.

    -

    You’re done! You’ve successfully integrated the Mixpanel Swift SDK into your app. To stay up to speed on important SDK releases and updates, star or watch our repository on Github.

    +

    I have a test user I would like to opt out of tracking. How do I do that?

    -

    Have any questions? Reach out to support@mixpanel.com to speak to someone smart, quickly.

    -

    Using Mixpanel Push Notifications

    +

    Mixpanel’s client-side tracking library contains the optOutTracking() method, which will set the user’s local opt-out state to “true” and will prevent data from being sent from a user’s device. More detailed instructions can be found in the section, Opting users out of tracking.

    -

    First enable Mixpanel push notifications in your app. Then for Rich Push Notifications, you’ll need to integrate your application with the MixpanelNotificationServiceExtension.

    -

    Integrating the MixpanelNotificationServiceExtension

    +

    Why aren’t my events showing up?

    -

    The Mixpanel SDK comes with a custom Notification Service Extension used to render rich media, custom action buttons, and track when push notifications are received. To enable these features, you will need to integrate it into your application.

    -

    1. Create a new Notification Service Extension Target

    +

    To preserve battery life and customer bandwidth, the Mixpanel library doesn’t send the events you record immediately. Instead, it sends batches to the Mixpanel servers every 60 seconds while your application is running, as well as when the application transitions to the background. You can call flush() manually if you want to force a flush at a particular moment.

    +
    Mixpanel.mainInstance().flush()
    +
    -

    Screenshot 2020-02-13 14 45 23 -Screenshot 2020-02-13 14 44 38 -Screenshot 2020-02-13 14 46 53

    -

    2. Add Mixpanel-swift as a dependency

    +

    If your events are still not showing up after 60 seconds, check if you have opted out of tracking. You can also enable Mixpanel debugging and logging, it allows you to see the debug output from the Mixpanel library. To enable it, set loggingEnabled to true.

    +
    Mixpanel.mainInstance().loggingEnabled = true
    +
    -

    Add the following to the end of your Podfile:

    -
    target 'NotificationService' do
    -  use_frameworks!
    +

    Starting with iOS 14.5, do I need to request the user’s permission through the AppTrackingTransparency framework to use Mixpanel?

    - pod 'Mixpanel-swift' -end -
    +

    No, Mixpanel does not use IDFA so it does not require user permission through the AppTrackingTransparency(ATT) framework.

    -

    Then run pod install

    -

    3. Extend your NotificationService from MixpanelNotificationServiceExtension

    +

    If I use Mixpanel, how do I answer app privacy questions for the App Store?

    -

    Replace the contents of your NotificationService.swift file with the following:

    -
    import Mixpanel
    +

    Please refer to our Apple App Developer Privacy Guidance

    +

    I want to know more!

    -class NotificationService: MixpanelNotificationServiceExtension {} -
    -

    4. Delegate the handling of the notification response to the Mixpanel SDK

    - -

    In your AppDelegate.swift file, you need to call MixpanelPushNotifications.handleResponse when a push notification response is received:

    -
    @available(iOS 10.0, *)
    -func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) {
    -    if MixpanelPushNotifications.isMixpanelPushNotification(response.notification.request.content) {
    -        debugPrint("Handling Mixpanel push notification response...")
    -        MixpanelPushNotifications.handleResponse(response: response, withCompletionHandler: completionHandler)
    -    } else {
    -        // not a Mixpanel push notification
    -        debugPrint("Not a Mixpanel push notification.")
    -        completionHandler()
    -    }
    -}
    -
    +

    No worries, here are some links that you will find useful:

    -

    This will make sure the tap actions are appropriately handled (open URL, deeplink, etc) as well as track whether a notification was tapped or dismissed.

    -

    5. Run the app and send a test push notification from Mixpanel that includes an image or buttons

    + -

    That’s it! Your app should now be able to receive rich push notifications from Mixpanel.

    +

    Have any questions? Reach out to Mixpanel Support to speak to someone smart, quickly.

    diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/search.json b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/search.json index 040a3460..dc8e93ad 100644 --- a/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/search.json +++ b/docs/docsets/Mixpanel.docset/Contents/Resources/Documents/search.json @@ -1 +1 @@ -{"Typealiases.html#/s:8Mixpanel10Propertiesa":{"name":"Properties","abstract":"

    Undocumented

    "},"Structs/MixpanelTweaks.html#/s:8Mixpanel0A6TweaksV12defaultStoreAA05TweakD0CvpZ":{"name":"defaultStore","abstract":"

    The default store that holds the Tweaks

    ","parent_name":"MixpanelTweaks"},"Structs/MixpanelTweaks.html#/s:8Mixpanel0A6TweaksV03setB06tweaksySayAA16TweakClusterType_pG_tFZ":{"name":"setTweaks(tweaks:)","abstract":"

    setTweaks needs to be called to add the defined Tweaks into the environment.

    ","parent_name":"MixpanelTweaks"},"Structs/Tweak.html#/s:8Mixpanel5TweakV9tweakName12defaultValueACyxGSS_xtcfc":{"name":"init(tweakName:defaultValue:)","abstract":"

    Initializer for a Tweak for A/B Testing

    ","parent_name":"Tweak"},"Structs/Tweak.html#/s:8Mixpanel5TweakV4hash4intoys6HasherVz_tF":{"name":"hash(into:)","abstract":"

    Hashing for a Tweak for A/B Testing in order for it to be stored.

    ","parent_name":"Tweak"},"Structs/Tweak.html#/s:8Mixpanel16TweakClusterTypeP05tweakC0SayAA03AnyB0VGvp":{"name":"tweakCluster","parent_name":"Tweak"},"Structs/Tweak.html#/s:8Mixpanel5TweakVAASLRzs13SignedNumericRzrlE9tweakName12defaultValue3min3max8stepSizeACyxGSS_xxSgA2Ktcfc":{"name":"init(tweakName:defaultValue:min:max:stepSize:)","abstract":"

    Creates a Tweak where T: SignedNumberType","parent_name":"Tweak"},"Structs/AnyTweak.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"AnyTweak"},"Structs/AnyTweak.html#/s:8Mixpanel8AnyTweakV12tweakClusterSayACGvp":{"name":"tweakCluster","abstract":"

    Allows easy tweak initialization by clustering tweaks together for A/B Testing

    ","parent_name":"AnyTweak"},"Structs/AnyTweak.html":{"name":"AnyTweak","abstract":"

    A type-erasure around Tweak for A/B Testing.

    "},"Structs/Tweak.html":{"name":"Tweak","abstract":"

    Tweaks let you adjust things on the fly."},"Structs/MixpanelTweaks.html":{"name":"MixpanelTweaks","abstract":"

    The MixpanelTweaks struct that needs to be extended to define new Tweaks for A/B testing

    "},"Protocols/TweakableType.html#/s:8Mixpanel13TweakableTypeP013tweakViewDataC0AA05TweakefC0OvpZ":{"name":"tweakViewDataType","abstract":"

    The data type of the TweakableType

    ","parent_name":"TweakableType"},"Protocols/TweakLibraryType.html#/s:8Mixpanel16TweakLibraryTypeP12defaultStoreAA0bF0CvpZ":{"name":"defaultStore","abstract":"

    the default tweak store

    ","parent_name":"TweakLibraryType"},"Protocols/TweakLibraryType.html#/s:8Mixpanel16TweakLibraryTypePAAE6assignyqd__AA0B0Vyqd__GAA09TweakableD0Rd__lFZ":{"name":"assign(_:)","abstract":"

    Returns the current value for a tweak from the TweakLibrary’s default store.

    ","parent_name":"TweakLibraryType"},"Protocols/TweakLibraryType.html#/s:8Mixpanel16TweakLibraryTypePAAE4bind_7bindingyAA0B0Vyqd__G_yqd__ctAA09TweakableD0Rd__lFZ":{"name":"bind(_:binding:)","abstract":"

    Immediately binds the currentValue of a given tweak, and then continues to update whenever the tweak changes.

    ","parent_name":"TweakLibraryType"},"Protocols/TweakClusterType.html#/s:8Mixpanel16TweakClusterTypeP05tweakC0SayAA03AnyB0VGvp":{"name":"tweakCluster","abstract":"

    The tweak cluster to allow easy initialization of Tweaks

    ","parent_name":"TweakClusterType"},"Protocols/MixpanelType.html#/s:8Mixpanel0A4TypeP013isValidNestedB8AndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"MixpanelType"},"Protocols/MixpanelType.html#/s:8Mixpanel0A4TypeP6equals3rhsSbAaB_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelType"},"Protocols/MixpanelDelegate.html#/s:8Mixpanel0A8DelegateP17mixpanelWillFlushySbAA0A8InstanceCF":{"name":"mixpanelWillFlush(_:)","abstract":"

    Asks the delegate if data should be uploaded to the server.

    ","parent_name":"MixpanelDelegate"},"Protocols/MixpanelDelegate.html":{"name":"MixpanelDelegate","abstract":"

    Delegate protocol for controlling the Mixpanel API’s network behavior.

    "},"Protocols/MixpanelType.html":{"name":"MixpanelType","abstract":"

    Property keys must be String objects and the supported value types need to conform to MixpanelType."},"Protocols/TweakClusterType.html":{"name":"TweakClusterType","abstract":"

    This protocol allows for easy initialization of TweakStore."},"Protocols/TweakLibraryType.html":{"name":"TweakLibraryType","abstract":"

    Create a public struct in your application that conforms to this protocol to declare your own tweaks!

    "},"Protocols/TweakableType.html":{"name":"TweakableType","abstract":"

    To add a new to our Tweak, make T conform to this protocol.

    "},"Functions.html#/s:8Mixpanel2eeoiySbAA8AnyTweakV_ADtF":{"name":"==(_:_:)","abstract":"

    Comparator between two tweaks for A/B Testing.

    "},"Functions.html#/s:8Mixpanel2eeoiySbAA5TweakVyxG_AEtAA13TweakableTypeRzlF":{"name":"==(_:_:)","abstract":"

    Comparator between two tweaks for A/B Testing.

    "},"Extensions/CGFloat.html#/s:12CoreGraphics7CGFloatV8MixpanelE17tweakViewDataTypeAD05TweakfgH0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the cgFloat type

    ","parent_name":"CGFloat"},"Extensions/Dictionary.html#/s:SD8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"Dictionary"},"Extensions/Dictionary.html#/s:SD8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Dictionary"},"Extensions/NSArray.html#/s:So7NSArrayC8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"NSArray"},"Extensions/NSArray.html#/s:So7NSArrayC8MixpanelE6equals3rhsSbAC0B4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"NSArray"},"Extensions/NSNull.html#/s:So6NSNullC8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"NSNull"},"Extensions/NSNull.html#/s:So6NSNullC8MixpanelE6equals3rhsSbAC0B4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"NSNull"},"Extensions/URL.html#/s:10Foundation3URLV8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"URL"},"Extensions/URL.html#/s:10Foundation3URLV8MixpanelE6equals3rhsSbAD0C4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"URL"},"Extensions/Date.html#/s:10Foundation4DateV8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Date"},"Extensions/Date.html#/s:10Foundation4DateV8MixpanelE6equals3rhsSbAD0C4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Date"},"Extensions/Bool.html#/s:Sb8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Bool"},"Extensions/Bool.html#/s:Sb8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Bool"},"Extensions/Bool.html#/s:Sb8MixpanelE17tweakViewDataTypeAA05TweakcdE0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the boolean type

    ","parent_name":"Bool"},"Extensions/Float.html#/s:Sf8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Float"},"Extensions/Float.html#/s:Sf8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Float"},"Extensions/Double.html#/s:Sd8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Double"},"Extensions/Double.html#/s:Sd8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Double"},"Extensions/Double.html#/s:Sd8MixpanelE17tweakViewDataTypeAA05TweakcdE0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the double type

    ","parent_name":"Double"},"Extensions/UInt.html#/s:Su8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"UInt"},"Extensions/UInt.html#/s:Su8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"UInt"},"Extensions/Int.html#/s:Si8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Int"},"Extensions/Int.html#/s:Si8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Int"},"Extensions/Int.html#/s:Si8MixpanelE17tweakViewDataTypeAA05TweakcdE0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the integer type

    ","parent_name":"Int"},"Extensions/NSNumber.html#/s:So8NSNumberC8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"NSNumber"},"Extensions/NSNumber.html#/s:So8NSNumberC8MixpanelE6equals3rhsSbAC0B4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"NSNumber"},"Extensions/NSString.html#/s:So8NSStringC8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"NSString"},"Extensions/NSString.html#/s:So8NSStringC8MixpanelE6equals3rhsSbAC0B4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"NSString"},"Extensions/String.html#/s:SS8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"String"},"Extensions/String.html#/s:SS8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"String"},"Extensions/String.html#/s:SS8MixpanelE17tweakViewDataTypeAA05TweakcdE0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the string type

    ","parent_name":"String"},"Extensions/Optional.html#/s:Sq8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"Optional"},"Extensions/Optional.html#/s:Sq8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Optional"},"Extensions/Array.html#/s:Sa8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"Array"},"Extensions/Array.html#/s:Sa8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Array"},"Extensions/UIColor.html#/s:So7UIColorC8MixpanelE5MPHexABSu_tcfc":{"name":"init(MPHex:)","abstract":"

    The shorthand four-digit hexadecimal representation of color with alpha.

    ","parent_name":"UIColor"},"Extensions/UIColor.html":{"name":"UIColor"},"Extensions/Array.html":{"name":"Array"},"Extensions/Optional.html":{"name":"Optional"},"Extensions/String.html":{"name":"String"},"Extensions/NSString.html":{"name":"NSString"},"Extensions/NSNumber.html":{"name":"NSNumber"},"Extensions/Int.html":{"name":"Int"},"Extensions/UInt.html":{"name":"UInt"},"Extensions/Double.html":{"name":"Double"},"Extensions/Float.html":{"name":"Float"},"Extensions/Bool.html":{"name":"Bool"},"Extensions/Date.html":{"name":"Date"},"Extensions/URL.html":{"name":"URL"},"Extensions/NSNull.html":{"name":"NSNull"},"Extensions/NSArray.html":{"name":"NSArray"},"Extensions/Dictionary.html":{"name":"Dictionary"},"Extensions/CGFloat.html":{"name":"CGFloat"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO7booleanyA2CmF":{"name":"boolean","abstract":"

    TweakableType supports the boolean type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO7integeryA2CmF":{"name":"integer","abstract":"

    TweakableType supports the integer type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO7cgFloatyA2CmF":{"name":"cgFloat","abstract":"

    TweakableType supports the cgFloat type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO6doubleyA2CmF":{"name":"double","abstract":"

    TweakableType supports the double type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO6stringyA2CmF":{"name":"string","abstract":"

    TweakableType supports the string type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html":{"name":"TweakViewDataType","abstract":"

    The data types that are currently supported for SwiftTweaks."},"Classes/MixpanelPushNotifications.html#/s:8Mixpanel0A17PushNotificationsC02isaB12NotificationySbSo21UNNotificationContentCFZ":{"name":"isMixpanelPushNotification(_:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelPushNotifications"},"Classes/MixpanelPushNotifications.html#/s:8Mixpanel0A17PushNotificationsC10trackEvent_10properties7requestySS_SDySSAA0A4Type_pGSo21UNNotificationRequestCtFZ":{"name":"trackEvent(_:properties:request:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelPushNotifications"},"Classes/People.html#/s:8Mixpanel6PeopleC10ignoreTimeSbvp":{"name":"ignoreTime","abstract":"

    controls the $ignore_time property in any subsequent MixpanelPeople operation.","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC18addPushDeviceTokenyy10Foundation4DataVF":{"name":"addPushDeviceToken(_:)","abstract":"

    Register the given device to receive push notifications.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC25removeAllPushDeviceTokensyyF":{"name":"removeAllPushDeviceTokens()","abstract":"

    Unregister the given device to receive push notifications.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC21removePushDeviceTokenyy10Foundation4DataVF":{"name":"removePushDeviceToken(_:)","abstract":"

    Unregister a specific device token from the ability to receive push notifications.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC3set10propertiesySDySSAA0A4Type_pG_tF":{"name":"set(properties:)","abstract":"

    Set properties on the current user in Mixpanel People.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC3set8property2toySS_AA0A4Type_ptF":{"name":"set(property:to:)","abstract":"

    Convenience method for setting a single property in Mixpanel People.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC7setOnce10propertiesySDySSAA0A4Type_pG_tF":{"name":"setOnce(properties:)","abstract":"

    Set properties on the current user in Mixpanel People, but doesn’t overwrite if","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC5unset10propertiesySaySSG_tF":{"name":"unset(properties:)","abstract":"

    Remove a list of properties and their values from the current user’s profile","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC9increment10propertiesySDySSAA0A4Type_pG_tF":{"name":"increment(properties:)","abstract":"

    Increment the given numeric properties by the given values.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC9increment8property2byySS_SdtF":{"name":"increment(property:by:)","abstract":"

    Convenience method for incrementing a single numeric property by the specified","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC6append10propertiesySDySSAA0A4Type_pG_tF":{"name":"append(properties:)","abstract":"

    Append values to list properties.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC6remove10propertiesySDySSAA0A4Type_pG_tF":{"name":"remove(properties:)","abstract":"

    Removes list properties.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC5union10propertiesySDySSAA0A4Type_pG_tF":{"name":"union(properties:)","abstract":"

    Union list properties.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC11trackCharge6amount10propertiesySd_SDySSAA0A4Type_pGSgtF":{"name":"trackCharge(amount:properties:)","abstract":"

    Track money spent by the current user for revenue analytics and associate","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC12clearChargesyyF":{"name":"clearCharges()","abstract":"

    Delete current user’s revenue history.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC10deleteUseryyF":{"name":"deleteUser()","abstract":"

    Delete current user’s record from Mixpanel People.

    ","parent_name":"People"},"Classes/MixpanelNotificationServiceExtension.html#/c:@M@Mixpanel@objc(cs)MixpanelNotificationServiceExtension(im)didReceiveNotificationRequest:withContentHandler:":{"name":"didReceive(_:withContentHandler:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelNotificationServiceExtension"},"Classes/MixpanelNotificationServiceExtension.html#/c:@M@Mixpanel@objc(cs)MixpanelNotificationServiceExtension(im)serviceExtensionTimeWillExpire":{"name":"serviceExtensionTimeWillExpire()","abstract":"

    Undocumented

    ","parent_name":"MixpanelNotificationServiceExtension"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8apiTokenSSvp":{"name":"apiToken","abstract":"

    apiToken string that identifies the project to track data to

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8delegateAA0A8Delegate_pSgvp":{"name":"delegate","abstract":"

    The a MixpanelDelegate object that gives control over Mixpanel network activity.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC10distinctIdSSvp":{"name":"distinctId","abstract":"

    distinctId string that uniquely identifies the current user.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC11anonymousIdSSSgvp":{"name":"anonymousId","abstract":"

    anonymousId string that uniquely identifies the device.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC6userIdSSSgvp":{"name":"userId","abstract":"

    userId string that identify is called with.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC22hadPersistedDistinctIdSbSgvp":{"name":"hadPersistedDistinctId","abstract":"

    hadPersistedDistinctId is a boolean value which specifies that the stored distinct_id","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC5aliasSSSgvp":{"name":"alias","abstract":"

    alias string that uniquely identifies the current user.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC6peopleAA6PeopleCSgvp":{"name":"people","abstract":"

    Accessor to the Mixpanel People API object.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC28showNetworkActivityIndicatorSbvp":{"name":"showNetworkActivityIndicator","abstract":"

    Controls whether to show spinning network activity indicator when flushing","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC27trackAutomaticEventsEnabledSbSgvp":{"name":"trackAutomaticEventsEnabled","abstract":"

    This allows enabling or disabling collecting common mobile events","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC13flushIntervalSdvp":{"name":"flushInterval","abstract":"

    Flush timer’s interval.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC17flushOnBackgroundSbvp":{"name":"flushOnBackground","abstract":"

    Control whether the library should flush data to Mixpanel when the app","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC26useIPAddressForGeoLocationSbvp":{"name":"useIPAddressForGeoLocation","abstract":"

    Controls whether to automatically send the client IP Address as part of","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC9serverURLSSvp":{"name":"serverURL","abstract":"

    The base URL used for Mixpanel API requests.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:s28CustomDebugStringConvertibleP16debugDescriptionSSvp":{"name":"debugDescription","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC14loggingEnabledSbvp":{"name":"loggingEnabled","abstract":"

    This allows enabling or disabling of all Mixpanel logs at run time.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC4nameSSvp":{"name":"name","abstract":"

    A unique identifier for this MixpanelInstance

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC29enableVisualEditorForCodelessSbvp":{"name":"enableVisualEditorForCodeless","abstract":"

    Controls whether to enable the visual editor for codeless on mixpanel.com","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC24checkForVariantsOnActiveSbvp":{"name":"checkForVariantsOnActive","abstract":"

    Controls whether to automatically check for A/B test variants for the","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC28checkForNotificationOnActiveSbvp":{"name":"checkForNotificationOnActive","abstract":"

    Controls whether to automatically check for notifications for the","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC24showNotificationOnActiveSbvp":{"name":"showNotificationOnActive","abstract":"

    Controls whether to automatically check for and show in-app notifications","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC32miniNotificationPresentationTimeSdvp":{"name":"miniNotificationPresentationTime","abstract":"

    Determines the time, in seconds, that a mini notification will remain on","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC22minimumSessionDurations6UInt64Vvp":{"name":"minimumSessionDuration","abstract":"

    The minimum session duration (ms) that is tracked in automatic events.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC22maximumSessionDurations6UInt64Vvp":{"name":"maximumSessionDuration","abstract":"

    The maximum session duration (ms) that is tracked in automatic events.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8identify10distinctId9usePeopleySS_SbtF":{"name":"identify(distinctId:usePeople:)","abstract":"

    Sets the distinct ID of the current user.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC11createAlias_10distinctId9usePeopleySS_SSSbtF":{"name":"createAlias(_:distinctId:usePeople:)","abstract":"

    The alias method creates an alias which Mixpanel will use to remap one id to another.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC5resetyyF":{"name":"reset()","abstract":"

    Clears all stored properties including the distinct Id.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC7archiveyyF":{"name":"archive()","abstract":"

    Writes current project info including the distinct Id, super properties,","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/archive()":{"name":"archive()","abstract":"

    Writes current project info including the distinct Id, super properties,","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC5flush10completionyyycSg_tF":{"name":"flush(completion:)","abstract":"

    Uploads queued data to the Mixpanel server.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC5track5event10propertiesySSSg_SDySSAA0A4Type_pGSgtF":{"name":"track(event:properties:)","abstract":"

    Tracks an event with properties.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC15trackWithGroups5event10properties6groupsySSSg_SDySSAA0A4Type_pGSgAKtF":{"name":"trackWithGroups(event:properties:groups:)","abstract":"

    Tracks an event with properties and to specific groups.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8getGroup8groupKey0E2IDAA0D0CSS_AA0A4Type_ptF":{"name":"getGroup(groupKey:groupID:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC4time5eventySS_tF":{"name":"time(event:)","abstract":"

    Starts a timer that will be stopped and added as a property when a","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16eventElapsedTime0C0SdSS_tF":{"name":"eventElapsedTime(event:)","abstract":"

    Retrieves the time elapsed for the named event since time(event:) was called.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16clearTimedEventsyyF":{"name":"clearTimedEvents()","abstract":"

    Clears all current event timers.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC15clearTimedEvent5eventySS_tF":{"name":"clearTimedEvent(event:)","abstract":"

    Clears the event timer for the named event.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC22currentSuperPropertiesSDySSypGyF":{"name":"currentSuperProperties()","abstract":"

    Returns the currently set super properties.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC20clearSuperPropertiesyyF":{"name":"clearSuperProperties()","abstract":"

    Clears all currently set super properties.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC23registerSuperPropertiesyySDySSAA0A4Type_pGF":{"name":"registerSuperProperties(_:)","abstract":"

    Registers super properties, overwriting ones that have already been set.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC27registerSuperPropertiesOnce_12defaultValueySDySSAA0A4Type_pG_AaF_pSgtF":{"name":"registerSuperPropertiesOnce(_:defaultValue:)","abstract":"

    Registers super properties without overwriting ones that have already been set,","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC23unregisterSuperPropertyyySSF":{"name":"unregisterSuperProperty(_:)","abstract":"

    Removes a previously registered super property.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8setGroup8groupKey0E2IDySS_AA0A4Type_ptF":{"name":"setGroup(groupKey:groupID:)","abstract":"

    Convenience method to set a single group the user belongs to.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8setGroup8groupKey0E3IDsySS_SayAA0A4Type_pGtF":{"name":"setGroup(groupKey:groupIDs:)","abstract":"

    Set the groups this user belongs to.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8addGroup8groupKey0E2IDySS_AA0A4Type_ptF":{"name":"addGroup(groupKey:groupID:)","abstract":"

    Add a group to this user’s membership for a particular group key

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC11removeGroup8groupKey0E2IDySS_AA0A4Type_ptF":{"name":"removeGroup(groupKey:groupID:)","abstract":"

    Remove a group from this user’s membership for a particular group key

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC14optOutTrackingyyF":{"name":"optOutTracking()","abstract":"

    Opt out tracking.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC13optInTracking10distinctId10propertiesySSSg_SDySSAA0A4Type_pGSgtF":{"name":"optInTracking(distinctId:properties:)","abstract":"

    Opt in tracking.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC19hasOptedOutTrackingSbyF":{"name":"hasOptedOutTracking()","abstract":"

    Returns if the current user has opted out tracking.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC15joinExperiments8callbackyyycSg_tF":{"name":"joinExperiments(callback:)","abstract":"

    Join any experiments (A/B tests) that are available for the current user.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16showNotificationyyF":{"name":"showNotification()","abstract":"

    Shows a notification if one is available.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16showNotification4typeySS_tF":{"name":"showNotification(type:)","abstract":"

    Shows a notification with the given type if one is available.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16showNotification2IDySi_tF":{"name":"showNotification(ID:)","abstract":"

    Shows a notification with the given ID

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC24fetchNotificationPayload10completionyySDySSyXlGSgc_tF":{"name":"fetchNotificationPayload(completion:)","abstract":"

    Returns the payload of a notification if available

    ","parent_name":"MixpanelInstance"},"Classes/Mixpanel.html#/s:8MixpanelAAC10initialize5token13launchOptions13flushInterval12instanceName21automaticPushTracking06optOutL9ByDefaultAA0A8InstanceCSS_SDySo019UIApplicationLaunchE3KeyaypGSgSdSSS2btFZ":{"name":"initialize(token:launchOptions:flushInterval:instanceName:automaticPushTracking:optOutTrackingByDefault:)","abstract":"

    Initializes an instance of the API with the given project token.

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/initialize(token:flushInterval:instanceName:optOutTrackingByDefault:)":{"name":"initialize(token:flushInterval:instanceName:optOutTrackingByDefault:)","abstract":"

    Initializes an instance of the API with the given project token (MAC OS ONLY).

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/s:8MixpanelAAC11getInstance4nameAA0aC0CSgSS_tFZ":{"name":"getInstance(name:)","abstract":"

    Gets the mixpanel instance with the given name

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/s:8MixpanelAAC12mainInstanceAA0aC0CyFZ":{"name":"mainInstance()","abstract":"

    Returns the main instance that was initialized.

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/s:8MixpanelAAC15setMainInstance4nameySS_tFZ":{"name":"setMainInstance(name:)","abstract":"

    Sets the main instance based on the instance name

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/s:8MixpanelAAC14removeInstance4nameySS_tFZ":{"name":"removeInstance(name:)","abstract":"

    Removes an unneeded Mixpanel instance based on its name

    ","parent_name":"Mixpanel"},"Classes/Group.html#/s:8Mixpanel5GroupC3set10propertiesySDySSAA0A4Type_pG_tF":{"name":"set(properties:)","abstract":"

    Sets properties on this group.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC3set8property2toySS_AA0A4Type_ptF":{"name":"set(property:to:)","abstract":"

    Convenience method for setting a single property in Mixpanel Groups.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC7setOnce10propertiesySDySSAA0A4Type_pG_tF":{"name":"setOnce(properties:)","abstract":"

    Sets properties on the current Mixpanel Group, but doesn’t overwrite if","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC5unset8propertyySS_tF":{"name":"unset(property:)","abstract":"

    Remove a property and its value from a group’s profile in Mixpanel Groups.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC6remove3key5valueySS_AA0A4Type_ptF":{"name":"remove(key:value:)","abstract":"

    Removes list properties.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC5union3key6valuesySS_SayAA0A4Type_pGtF":{"name":"union(key:values:)","abstract":"

    Union list properties.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC06deleteB0yyF":{"name":"deleteGroup()","abstract":"

    Delete group’s record from Mixpanel Groups.

    ","parent_name":"Group"},"Classes/Group.html":{"name":"Group","abstract":"

    Access to the Mixpanel Groups API, available through the getGroup function from"},"Classes/Mixpanel.html":{"name":"Mixpanel","abstract":"

    The primary class for integrating Mixpanel with your app.

    "},"Classes/MixpanelInstance.html":{"name":"MixpanelInstance","abstract":"

    The class that represents the Mixpanel Instance

    "},"Classes/MixpanelNotificationServiceExtension.html":{"name":"MixpanelNotificationServiceExtension","abstract":"

    Undocumented

    "},"Classes/People.html":{"name":"People","abstract":"

    Access to the Mixpanel People API, available as an accessible variable from"},"Classes/MixpanelPushNotifications.html":{"name":"MixpanelPushNotifications","abstract":"

    Undocumented

    "},"Classes.html#/s:8Mixpanel10TweakStoreC":{"name":"TweakStore","abstract":"

    Looks up the persisted state for tweaks.

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Enums.html":{"name":"Enumerations","abstract":"

    The following enumerations are available globally.

    "},"Extensions.html":{"name":"Extensions","abstract":"

    The following extensions are available globally.

    "},"Functions.html":{"name":"Functions","abstract":"

    The following functions are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Structs.html":{"name":"Structures","abstract":"

    The following structures are available globally.

    "},"Typealiases.html":{"name":"Type Aliases","abstract":"

    The following type aliases are available globally.

    "}} \ No newline at end of file +{"Typealiases.html#/s:8Mixpanel10Propertiesa":{"name":"Properties","abstract":"

    Undocumented

    "},"Structs/MixpanelTweaks.html#/s:8Mixpanel0A6TweaksV12defaultStoreAA05TweakD0CvpZ":{"name":"defaultStore","abstract":"

    The default store that holds the Tweaks

    ","parent_name":"MixpanelTweaks"},"Structs/MixpanelTweaks.html#/s:8Mixpanel0A6TweaksV03setB06tweaksySayAA16TweakClusterType_pG_tFZ":{"name":"setTweaks(tweaks:)","abstract":"

    setTweaks needs to be called to add the defined Tweaks into the environment.

    ","parent_name":"MixpanelTweaks"},"Structs/Tweak.html#/s:8Mixpanel5TweakV9tweakName12defaultValueACyxGSS_xtcfc":{"name":"init(tweakName:defaultValue:)","abstract":"

    Initializer for a Tweak for A/B Testing

    ","parent_name":"Tweak"},"Structs/Tweak.html#/s:8Mixpanel5TweakV4hash4intoys6HasherVz_tF":{"name":"hash(into:)","abstract":"

    Hashing for a Tweak for A/B Testing in order for it to be stored.

    ","parent_name":"Tweak"},"Structs/Tweak.html#/s:8Mixpanel16TweakClusterTypeP05tweakC0SayAA03AnyB0VGvp":{"name":"tweakCluster","parent_name":"Tweak"},"Structs/Tweak.html#/s:8Mixpanel5TweakVAASLRzs13SignedNumericRzrlE9tweakName12defaultValue3min3max8stepSizeACyxGSS_xxSgA2Ktcfc":{"name":"init(tweakName:defaultValue:min:max:stepSize:)","abstract":"

    Creates a Tweak where T: SignedNumberType","parent_name":"Tweak"},"Structs/AnyTweak.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"AnyTweak"},"Structs/AnyTweak.html#/s:8Mixpanel8AnyTweakV12tweakClusterSayACGvp":{"name":"tweakCluster","abstract":"

    Allows easy tweak initialization by clustering tweaks together for A/B Testing

    ","parent_name":"AnyTweak"},"Structs/AnyTweak.html":{"name":"AnyTweak","abstract":"

    A type-erasure around Tweak for A/B Testing.

    "},"Structs/Tweak.html":{"name":"Tweak","abstract":"

    Tweaks let you adjust things on the fly."},"Structs/MixpanelTweaks.html":{"name":"MixpanelTweaks","abstract":"

    The MixpanelTweaks struct that needs to be extended to define new Tweaks for A/B testing

    "},"Protocols/TweakableType.html#/s:8Mixpanel13TweakableTypeP013tweakViewDataC0AA05TweakefC0OvpZ":{"name":"tweakViewDataType","abstract":"

    The data type of the TweakableType

    ","parent_name":"TweakableType"},"Protocols/TweakLibraryType.html#/s:8Mixpanel16TweakLibraryTypeP12defaultStoreAA0bF0CvpZ":{"name":"defaultStore","abstract":"

    the default tweak store

    ","parent_name":"TweakLibraryType"},"Protocols/TweakLibraryType.html#/s:8Mixpanel16TweakLibraryTypePAAE6assignyqd__AA0B0Vyqd__GAA09TweakableD0Rd__lFZ":{"name":"assign(_:)","abstract":"

    Returns the current value for a tweak from the TweakLibrary’s default store.

    ","parent_name":"TweakLibraryType"},"Protocols/TweakLibraryType.html#/s:8Mixpanel16TweakLibraryTypePAAE4bind_7bindingyAA0B0Vyqd__G_yqd__ctAA09TweakableD0Rd__lFZ":{"name":"bind(_:binding:)","abstract":"

    Immediately binds the currentValue of a given tweak, and then continues to update whenever the tweak changes.

    ","parent_name":"TweakLibraryType"},"Protocols/TweakClusterType.html#/s:8Mixpanel16TweakClusterTypeP05tweakC0SayAA03AnyB0VGvp":{"name":"tweakCluster","abstract":"

    The tweak cluster to allow easy initialization of Tweaks

    ","parent_name":"TweakClusterType"},"Protocols/MixpanelType.html#/s:8Mixpanel0A4TypeP013isValidNestedB8AndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"MixpanelType"},"Protocols/MixpanelType.html#/s:8Mixpanel0A4TypeP6equals3rhsSbAaB_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelType"},"Protocols/MixpanelDelegate.html#/s:8Mixpanel0A8DelegateP17mixpanelWillFlushySbAA0A8InstanceCF":{"name":"mixpanelWillFlush(_:)","abstract":"

    Asks the delegate if data should be uploaded to the server.

    ","parent_name":"MixpanelDelegate"},"Protocols/MixpanelDelegate.html":{"name":"MixpanelDelegate","abstract":"

    Delegate protocol for controlling the Mixpanel API’s network behavior.

    "},"Protocols/MixpanelType.html":{"name":"MixpanelType","abstract":"

    Property keys must be String objects and the supported value types need to conform to MixpanelType."},"Protocols/TweakClusterType.html":{"name":"TweakClusterType","abstract":"

    This protocol allows for easy initialization of TweakStore."},"Protocols/TweakLibraryType.html":{"name":"TweakLibraryType","abstract":"

    Create a public struct in your application that conforms to this protocol to declare your own tweaks!

    "},"Protocols/TweakableType.html":{"name":"TweakableType","abstract":"

    To add a new to our Tweak, make T conform to this protocol.

    "},"Functions.html#/s:8Mixpanel2eeoiySbAA8AnyTweakV_ADtF":{"name":"==(_:_:)","abstract":"

    Comparator between two tweaks for A/B Testing.

    "},"Functions.html#/s:8Mixpanel2eeoiySbAA5TweakVyxG_AEtAA13TweakableTypeRzlF":{"name":"==(_:_:)","abstract":"

    Comparator between two tweaks for A/B Testing.

    "},"Extensions/CGFloat.html#/s:12CoreGraphics7CGFloatV8MixpanelE17tweakViewDataTypeAD05TweakfgH0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the cgFloat type

    ","parent_name":"CGFloat"},"Extensions/Dictionary.html#/s:SD8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"Dictionary"},"Extensions/Dictionary.html#/s:SD8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Dictionary"},"Extensions/NSArray.html#/s:So7NSArrayC8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"NSArray"},"Extensions/NSArray.html#/s:So7NSArrayC8MixpanelE6equals3rhsSbAC0B4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"NSArray"},"Extensions/NSNull.html#/s:So6NSNullC8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"NSNull"},"Extensions/NSNull.html#/s:So6NSNullC8MixpanelE6equals3rhsSbAC0B4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"NSNull"},"Extensions/URL.html#/s:10Foundation3URLV8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"URL"},"Extensions/URL.html#/s:10Foundation3URLV8MixpanelE6equals3rhsSbAD0C4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"URL"},"Extensions/Date.html#/s:10Foundation4DateV8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Date"},"Extensions/Date.html#/s:10Foundation4DateV8MixpanelE6equals3rhsSbAD0C4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Date"},"Extensions/Bool.html#/s:Sb8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Bool"},"Extensions/Bool.html#/s:Sb8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Bool"},"Extensions/Bool.html#/s:Sb8MixpanelE17tweakViewDataTypeAA05TweakcdE0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the boolean type

    ","parent_name":"Bool"},"Extensions/Float.html#/s:Sf8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Float"},"Extensions/Float.html#/s:Sf8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Float"},"Extensions/Double.html#/s:Sd8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Double"},"Extensions/Double.html#/s:Sd8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Double"},"Extensions/Double.html#/s:Sd8MixpanelE17tweakViewDataTypeAA05TweakcdE0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the double type

    ","parent_name":"Double"},"Extensions/UInt.html#/s:Su8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"UInt"},"Extensions/UInt.html#/s:Su8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"UInt"},"Extensions/Int.html#/s:Si8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Int"},"Extensions/Int.html#/s:Si8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Int"},"Extensions/Int.html#/s:Si8MixpanelE17tweakViewDataTypeAA05TweakcdE0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the integer type

    ","parent_name":"Int"},"Extensions/NSNumber.html#/s:So8NSNumberC8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"NSNumber"},"Extensions/NSNumber.html#/s:So8NSNumberC8MixpanelE6equals3rhsSbAC0B4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"NSNumber"},"Extensions/NSString.html#/s:So8NSStringC8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"NSString"},"Extensions/NSString.html#/s:So8NSStringC8MixpanelE6equals3rhsSbAC0B4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"NSString"},"Extensions/String.html#/s:SS8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"String"},"Extensions/String.html#/s:SS8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"String"},"Extensions/String.html#/s:SS8MixpanelE17tweakViewDataTypeAA05TweakcdE0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the string type

    ","parent_name":"String"},"Extensions/Optional.html#/s:Sq8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"Optional"},"Extensions/Optional.html#/s:Sq8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Optional"},"Extensions/Array.html#/s:Sa8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"Array"},"Extensions/Array.html#/s:Sa8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Array"},"Extensions/UIColor.html#/s:So7UIColorC8MixpanelE5MPHexABSu_tcfc":{"name":"init(MPHex:)","abstract":"

    The shorthand four-digit hexadecimal representation of color with alpha.

    ","parent_name":"UIColor"},"Extensions/UIColor.html":{"name":"UIColor"},"Extensions/Array.html":{"name":"Array"},"Extensions/Optional.html":{"name":"Optional"},"Extensions/String.html":{"name":"String"},"Extensions/NSString.html":{"name":"NSString"},"Extensions/NSNumber.html":{"name":"NSNumber"},"Extensions/Int.html":{"name":"Int"},"Extensions/UInt.html":{"name":"UInt"},"Extensions/Double.html":{"name":"Double"},"Extensions/Float.html":{"name":"Float"},"Extensions/Bool.html":{"name":"Bool"},"Extensions/Date.html":{"name":"Date"},"Extensions/URL.html":{"name":"URL"},"Extensions/NSNull.html":{"name":"NSNull"},"Extensions/NSArray.html":{"name":"NSArray"},"Extensions/Dictionary.html":{"name":"Dictionary"},"Extensions/CGFloat.html":{"name":"CGFloat"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO7booleanyA2CmF":{"name":"boolean","abstract":"

    TweakableType supports the boolean type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO7integeryA2CmF":{"name":"integer","abstract":"

    TweakableType supports the integer type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO7cgFloatyA2CmF":{"name":"cgFloat","abstract":"

    TweakableType supports the cgFloat type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO6doubleyA2CmF":{"name":"double","abstract":"

    TweakableType supports the double type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO6stringyA2CmF":{"name":"string","abstract":"

    TweakableType supports the string type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html":{"name":"TweakViewDataType","abstract":"

    The data types that are currently supported for SwiftTweaks."},"Classes/MixpanelPushNotifications.html#/s:8Mixpanel0A17PushNotificationsC02isaB12NotificationySbSo21UNNotificationContentCFZ":{"name":"isMixpanelPushNotification(_:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelPushNotifications"},"Classes/MixpanelPushNotifications.html#/s:8Mixpanel0A17PushNotificationsC10trackEvent_10properties7requestySS_SDySSAA0A4Type_pGSo21UNNotificationRequestCtFZ":{"name":"trackEvent(_:properties:request:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelPushNotifications"},"Classes/People.html#/s:8Mixpanel6PeopleC10ignoreTimeSbvp":{"name":"ignoreTime","abstract":"

    controls the $ignore_time property in any subsequent MixpanelPeople operation.","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC18addPushDeviceTokenyy10Foundation4DataVF":{"name":"addPushDeviceToken(_:)","abstract":"

    Register the given device to receive push notifications.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC25removeAllPushDeviceTokensyyF":{"name":"removeAllPushDeviceTokens()","abstract":"

    Unregister the given device to receive push notifications.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC21removePushDeviceTokenyy10Foundation4DataVF":{"name":"removePushDeviceToken(_:)","abstract":"

    Unregister a specific device token from the ability to receive push notifications.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC3set10propertiesySDySSAA0A4Type_pG_tF":{"name":"set(properties:)","abstract":"

    Set properties on the current user in Mixpanel People.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC3set8property2toySS_AA0A4Type_ptF":{"name":"set(property:to:)","abstract":"

    Convenience method for setting a single property in Mixpanel People.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC7setOnce10propertiesySDySSAA0A4Type_pG_tF":{"name":"setOnce(properties:)","abstract":"

    Set properties on the current user in Mixpanel People, but doesn’t overwrite if","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC5unset10propertiesySaySSG_tF":{"name":"unset(properties:)","abstract":"

    Remove a list of properties and their values from the current user’s profile","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC9increment10propertiesySDySSAA0A4Type_pG_tF":{"name":"increment(properties:)","abstract":"

    Increment the given numeric properties by the given values.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC9increment8property2byySS_SdtF":{"name":"increment(property:by:)","abstract":"

    Convenience method for incrementing a single numeric property by the specified","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC6append10propertiesySDySSAA0A4Type_pG_tF":{"name":"append(properties:)","abstract":"

    Append values to list properties.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC6remove10propertiesySDySSAA0A4Type_pG_tF":{"name":"remove(properties:)","abstract":"

    Removes list properties.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC5union10propertiesySDySSAA0A4Type_pG_tF":{"name":"union(properties:)","abstract":"

    Union list properties.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC11trackCharge6amount10propertiesySd_SDySSAA0A4Type_pGSgtF":{"name":"trackCharge(amount:properties:)","abstract":"

    Track money spent by the current user for revenue analytics and associate","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC12clearChargesyyF":{"name":"clearCharges()","abstract":"

    Delete current user’s revenue history.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC10deleteUseryyF":{"name":"deleteUser()","abstract":"

    Delete current user’s record from Mixpanel People.

    ","parent_name":"People"},"Classes/MixpanelNotificationServiceExtension.html#/c:@M@Mixpanel@objc(cs)MixpanelNotificationServiceExtension(im)didReceiveNotificationRequest:withContentHandler:":{"name":"didReceive(_:withContentHandler:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelNotificationServiceExtension"},"Classes/MixpanelNotificationServiceExtension.html#/c:@M@Mixpanel@objc(cs)MixpanelNotificationServiceExtension(im)serviceExtensionTimeWillExpire":{"name":"serviceExtensionTimeWillExpire()","abstract":"

    Undocumented

    ","parent_name":"MixpanelNotificationServiceExtension"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8apiTokenSSvp":{"name":"apiToken","abstract":"

    apiToken string that identifies the project to track data to

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8delegateAA0A8Delegate_pSgvp":{"name":"delegate","abstract":"

    The a MixpanelDelegate object that gives control over Mixpanel network activity.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC10distinctIdSSvp":{"name":"distinctId","abstract":"

    distinctId string that uniquely identifies the current user.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC11anonymousIdSSSgvp":{"name":"anonymousId","abstract":"

    anonymousId string that uniquely identifies the device.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC6userIdSSSgvp":{"name":"userId","abstract":"

    userId string that identify is called with.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC22hadPersistedDistinctIdSbSgvp":{"name":"hadPersistedDistinctId","abstract":"

    hadPersistedDistinctId is a boolean value which specifies that the stored distinct_id","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC5aliasSSSgvp":{"name":"alias","abstract":"

    alias string that uniquely identifies the current user.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC6peopleAA6PeopleCSgvp":{"name":"people","abstract":"

    Accessor to the Mixpanel People API object.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC28showNetworkActivityIndicatorSbvp":{"name":"showNetworkActivityIndicator","abstract":"

    Controls whether to show spinning network activity indicator when flushing","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC27trackAutomaticEventsEnabledSbSgvp":{"name":"trackAutomaticEventsEnabled","abstract":"

    This allows enabling or disabling collecting common mobile events","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC13flushIntervalSdvp":{"name":"flushInterval","abstract":"

    Flush timer’s interval.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC17flushOnBackgroundSbvp":{"name":"flushOnBackground","abstract":"

    Control whether the library should flush data to Mixpanel when the app","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC26useIPAddressForGeoLocationSbvp":{"name":"useIPAddressForGeoLocation","abstract":"

    Controls whether to automatically send the client IP Address as part of","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC9serverURLSSvp":{"name":"serverURL","abstract":"

    The base URL used for Mixpanel API requests.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:s28CustomDebugStringConvertibleP16debugDescriptionSSvp":{"name":"debugDescription","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC14loggingEnabledSbvp":{"name":"loggingEnabled","abstract":"

    This allows enabling or disabling of all Mixpanel logs at run time.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC4nameSSvp":{"name":"name","abstract":"

    A unique identifier for this MixpanelInstance

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC29enableVisualEditorForCodelessSbvp":{"name":"enableVisualEditorForCodeless","abstract":"

    Controls whether to enable the visual editor for codeless on mixpanel.com","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC24checkForVariantsOnActiveSbvp":{"name":"checkForVariantsOnActive","abstract":"

    Controls whether to automatically check for A/B test variants for the","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC28checkForNotificationOnActiveSbvp":{"name":"checkForNotificationOnActive","abstract":"

    Controls whether to automatically check for notifications for the","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC24showNotificationOnActiveSbvp":{"name":"showNotificationOnActive","abstract":"

    Controls whether to automatically check for and show in-app notifications","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC32miniNotificationPresentationTimeSdvp":{"name":"miniNotificationPresentationTime","abstract":"

    Determines the time, in seconds, that a mini notification will remain on","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC22minimumSessionDurations6UInt64Vvp":{"name":"minimumSessionDuration","abstract":"

    The minimum session duration (ms) that is tracked in automatic events.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC22maximumSessionDurations6UInt64Vvp":{"name":"maximumSessionDuration","abstract":"

    The maximum session duration (ms) that is tracked in automatic events.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8identify10distinctId9usePeople10completionySS_SbyycSgtF":{"name":"identify(distinctId:usePeople:completion:)","abstract":"

    Sets the distinct ID of the current user.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC11createAlias_10distinctId9usePeople10completionySS_SSSbyycSgtF":{"name":"createAlias(_:distinctId:usePeople:completion:)","abstract":"

    The alias method creates an alias which Mixpanel will use to remap one id to another.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC5reset10completionyyycSg_tF":{"name":"reset(completion:)","abstract":"

    Clears all stored properties including the distinct Id.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC7archiveyyF":{"name":"archive()","abstract":"

    Writes current project info including the distinct Id, super properties,","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/archive()":{"name":"archive()","abstract":"

    Writes current project info including the distinct Id, super properties,","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC5flush10completionyyycSg_tF":{"name":"flush(completion:)","abstract":"

    Uploads queued data to the Mixpanel server.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC5track5event10propertiesySSSg_SDySSAA0A4Type_pGSgtF":{"name":"track(event:properties:)","abstract":"

    Tracks an event with properties.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC15trackWithGroups5event10properties6groupsySSSg_SDySSAA0A4Type_pGSgAKtF":{"name":"trackWithGroups(event:properties:groups:)","abstract":"

    Tracks an event with properties and to specific groups.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8getGroup8groupKey0E2IDAA0D0CSS_AA0A4Type_ptF":{"name":"getGroup(groupKey:groupID:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC4time5eventySS_tF":{"name":"time(event:)","abstract":"

    Starts a timer that will be stopped and added as a property when a","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16eventElapsedTime0C0SdSS_tF":{"name":"eventElapsedTime(event:)","abstract":"

    Retrieves the time elapsed for the named event since time(event:) was called.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16clearTimedEventsyyF":{"name":"clearTimedEvents()","abstract":"

    Clears all current event timers.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC15clearTimedEvent5eventySS_tF":{"name":"clearTimedEvent(event:)","abstract":"

    Clears the event timer for the named event.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC22currentSuperPropertiesSDySSypGyF":{"name":"currentSuperProperties()","abstract":"

    Returns the currently set super properties.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC20clearSuperPropertiesyyF":{"name":"clearSuperProperties()","abstract":"

    Clears all currently set super properties.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC23registerSuperPropertiesyySDySSAA0A4Type_pGF":{"name":"registerSuperProperties(_:)","abstract":"

    Registers super properties, overwriting ones that have already been set.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC27registerSuperPropertiesOnce_12defaultValueySDySSAA0A4Type_pG_AaF_pSgtF":{"name":"registerSuperPropertiesOnce(_:defaultValue:)","abstract":"

    Registers super properties without overwriting ones that have already been set,","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC23unregisterSuperPropertyyySSF":{"name":"unregisterSuperProperty(_:)","abstract":"

    Removes a previously registered super property.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8setGroup8groupKey0E2IDySS_AA0A4Type_ptF":{"name":"setGroup(groupKey:groupID:)","abstract":"

    Convenience method to set a single group the user belongs to.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8setGroup8groupKey0E3IDsySS_SayAA0A4Type_pGtF":{"name":"setGroup(groupKey:groupIDs:)","abstract":"

    Set the groups this user belongs to.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8addGroup8groupKey0E2IDySS_AA0A4Type_ptF":{"name":"addGroup(groupKey:groupID:)","abstract":"

    Add a group to this user’s membership for a particular group key

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC11removeGroup8groupKey0E2IDySS_AA0A4Type_ptF":{"name":"removeGroup(groupKey:groupID:)","abstract":"

    Remove a group from this user’s membership for a particular group key

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC14optOutTrackingyyF":{"name":"optOutTracking()","abstract":"

    Opt out tracking.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC13optInTracking10distinctId10propertiesySSSg_SDySSAA0A4Type_pGSgtF":{"name":"optInTracking(distinctId:properties:)","abstract":"

    Opt in tracking.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC19hasOptedOutTrackingSbyF":{"name":"hasOptedOutTracking()","abstract":"

    Returns if the current user has opted out tracking.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC15joinExperiments8callbackyyycSg_tF":{"name":"joinExperiments(callback:)","abstract":"

    Join any experiments (A/B tests) that are available for the current user.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16showNotificationyyF":{"name":"showNotification()","abstract":"

    Shows a notification if one is available.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16showNotification4typeySS_tF":{"name":"showNotification(type:)","abstract":"

    Shows a notification with the given type if one is available.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16showNotification2IDySi_tF":{"name":"showNotification(ID:)","abstract":"

    Shows a notification with the given ID

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC24fetchNotificationPayload10completionyySDySSyXlGSgc_tF":{"name":"fetchNotificationPayload(completion:)","abstract":"

    Returns the payload of a notification if available

    ","parent_name":"MixpanelInstance"},"Classes/Mixpanel.html#/s:8MixpanelAAC10initialize5token13launchOptions13flushInterval12instanceName21automaticPushTracking06optOutL9ByDefaultAA0A8InstanceCSS_SDySo019UIApplicationLaunchE3KeyaypGSgSdSSS2btFZ":{"name":"initialize(token:launchOptions:flushInterval:instanceName:automaticPushTracking:optOutTrackingByDefault:)","abstract":"

    Initializes an instance of the API with the given project token.

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/initialize(token:flushInterval:instanceName:optOutTrackingByDefault:)":{"name":"initialize(token:flushInterval:instanceName:optOutTrackingByDefault:)","abstract":"

    Initializes an instance of the API with the given project token (MAC OS ONLY).

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/s:8MixpanelAAC11getInstance4nameAA0aC0CSgSS_tFZ":{"name":"getInstance(name:)","abstract":"

    Gets the mixpanel instance with the given name

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/s:8MixpanelAAC12mainInstanceAA0aC0CyFZ":{"name":"mainInstance()","abstract":"

    Returns the main instance that was initialized.

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/s:8MixpanelAAC15setMainInstance4nameySS_tFZ":{"name":"setMainInstance(name:)","abstract":"

    Sets the main instance based on the instance name

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/s:8MixpanelAAC14removeInstance4nameySS_tFZ":{"name":"removeInstance(name:)","abstract":"

    Removes an unneeded Mixpanel instance based on its name

    ","parent_name":"Mixpanel"},"Classes/Group.html#/s:8Mixpanel5GroupC3set10propertiesySDySSAA0A4Type_pG_tF":{"name":"set(properties:)","abstract":"

    Sets properties on this group.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC3set8property2toySS_AA0A4Type_ptF":{"name":"set(property:to:)","abstract":"

    Convenience method for setting a single property in Mixpanel Groups.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC7setOnce10propertiesySDySSAA0A4Type_pG_tF":{"name":"setOnce(properties:)","abstract":"

    Sets properties on the current Mixpanel Group, but doesn’t overwrite if","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC5unset8propertyySS_tF":{"name":"unset(property:)","abstract":"

    Remove a property and its value from a group’s profile in Mixpanel Groups.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC6remove3key5valueySS_AA0A4Type_ptF":{"name":"remove(key:value:)","abstract":"

    Removes list properties.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC5union3key6valuesySS_SayAA0A4Type_pGtF":{"name":"union(key:values:)","abstract":"

    Union list properties.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC06deleteB0yyF":{"name":"deleteGroup()","abstract":"

    Delete group’s record from Mixpanel Groups.

    ","parent_name":"Group"},"Classes/Group.html":{"name":"Group","abstract":"

    Access to the Mixpanel Groups API, available through the getGroup function from"},"Classes/Mixpanel.html":{"name":"Mixpanel","abstract":"

    The primary class for integrating Mixpanel with your app.

    "},"Classes/MixpanelInstance.html":{"name":"MixpanelInstance","abstract":"

    The class that represents the Mixpanel Instance

    "},"Classes/MixpanelNotificationServiceExtension.html":{"name":"MixpanelNotificationServiceExtension","abstract":"

    Undocumented

    "},"Classes/People.html":{"name":"People","abstract":"

    Access to the Mixpanel People API, available as an accessible variable from"},"Classes/MixpanelPushNotifications.html":{"name":"MixpanelPushNotifications","abstract":"

    Undocumented

    "},"Classes.html#/s:8Mixpanel10TweakStoreC":{"name":"TweakStore","abstract":"

    Looks up the persisted state for tweaks.

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Enums.html":{"name":"Enumerations","abstract":"

    The following enumerations are available globally.

    "},"Extensions.html":{"name":"Extensions","abstract":"

    The following extensions are available globally.

    "},"Functions.html":{"name":"Functions","abstract":"

    The following functions are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Structs.html":{"name":"Structures","abstract":"

    The following structures are available globally.

    "},"Typealiases.html":{"name":"Type Aliases","abstract":"

    The following type aliases are available globally.

    "}} \ No newline at end of file diff --git a/docs/docsets/Mixpanel.docset/Contents/Resources/docSet.dsidx b/docs/docsets/Mixpanel.docset/Contents/Resources/docSet.dsidx index 527a2f16b6d77f7ec61cf80137b61a37ffd6240d..360cfdea289534cc52860f2e46c37848250f96e2 100644 GIT binary patch delta 1030 zcmZ{hYfPJE6vvaBfLId##o$b{G!VyZ@(7bPFFnV-(n7V-&*)Aq6y5*^1X#dv)!M~46hg%ZC7Oz~cQod}1j#dxSv ze7AFi;0Hm>Ht!Q31bm{rzEzy5+eC-~xES+q5nqSAVkEp#+#d{)!hyVPUUCxKj#JTH zd)={vDm1pzJ3S$|w=aD-)f-O=vv#dG-mN=Jb(`Tcp)m8(J3QN=NF~a|`2<%ZRkX~r z6GoD$xG)pz)MAsqt2^D3Y!)#5v~w=}5L9eHs&NkQMz$!qr%!LAo8A4WE0F|%tjn1M zacdhp;n(xE^px#)RS3Khk5`8TBV6t2D}|WFNmwg7`z+i55^VT!cfg z3cLd6VH9USh+oI{i=4H`X*u~ia-`vQr=5_J9uHI_27Jyk+dtXZ1$S(YC9Osw(^C z1$j(vw+I78$Ey{4Z<$@KxUf-aVFro`R|hP+ZR6jUtJv&g7DiX0U)dm^mDiIR+<-6g z7j1LU`F{EhRWn&J8~QKY`u`8-{Cuetw^U%Gpw?J49@BrChwChi4iyc1AmTR#l!ev9K=S>%p>Q~w?{S6Jkg!~wB&CC C!$mOw delta 950 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 z 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 O{``MiN+a_CLJ$Cu<_t~% literal 119273 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 Zhc@FeAM-IE^I7`y{{fof3Zei$5CAhR#C8Ax diff --git a/docs/index.html b/docs/index.html index 3fbf72db..e8aa8cd9 100644 --- a/docs/index.html +++ b/docs/index.html @@ -16,7 +16,7 @@

    -

    Mixpanel 2.10.2 Docs (87% documented)

    +

    Mixpanel 2.10.3 Docs (87% documented)

    View on GitHub

    @@ -188,8 +188,7 @@ Mixpanel Swift Library

    -

    Build Status -Average time to resolve an issue +

    Average time to resolve an issue Percentage of issues still open CocoaPods Compatible Carthage compatible @@ -201,196 +200,152 @@

    Table of Contents

    -

    Introduction

    +

    Overview

    Welcome to the official Mixpanel Swift Library

    -

    The Mixpanel Swift library for iOS is an open-source project, and we’d love to see your contributions! +

    The Mixpanel Swift library for iOS is an open-source project, and we’d love to see your contributions! We’d also love for you to come and work with us! Check out Jobs for details.

    If you are using Objective-C, we recommend using our Objective-C Library.

    -

    -

    Current supported features

    - -

    Our master branch and our releases are now on Swift 5.

    - -

    If you wish to use our Swift 4.2 implementation, please point to the v2.6.1 release. For Swift 4/4.1 implementation, please point to the v2.4.5 release. For Swift 3 implementation, please point to the v2.2.3 release. For Swift 2.3 implementation, please point to the v1.0.1 release.

    +

    Check out our Advanced iOS Swift Guide for additional advanced configurations and use cases, like setting up your project with European Union data storage.

    +

    Quick Start Guide

    -

    Our Swift library fully supports all of the Mixpanel features and has full parity with the Objective-C Library.

    +

    Our master branch and our releases are on Swift 5. If you wish to use our Swift 4.2 implementation, please point to the v2.6.1 release. For Swift 4/4.1 implementation, please point to the v2.4.5 release. For Swift 3 implementation, please point to the v2.2.3 release.

    +

    1. Install Mixpanel

    -

    -

    Installation

    +

    You will need your project token for initializing your library. You can get your project token from project settings.

    +

    Installation Option 1: Swift Package Manager

    -

    On Jan 1, 2022, we’ll remove the Messages & Experiments feature from Mixpanel. For now, you can choose to opt in to our beta version without Messages & Experiments feature support. You can use Swift Package Manager to install the beta version:

    +

    The easiest way to get Mixpanel into your iOS project is to use Swift Package Manager(requires Xcode 12+).

    1. In Xcode, select File > Swift Packages > Add Package Dependency.
    2. -
    3. Follow the prompts using the URL for this repository and point to the branch 3.0.0.beta
    4. +
    5. Follow the prompts using the Github URL for Mixpanel Swift library and a minimum semantic version of v2.8.0.
    -

    Swift Package Manager

    -

    It requires Xcode 12+ and v2.8.0+ release

    - -

    Important: It only supports for iOS, if you need integrations for other platforms(tvOS or macOS), please use other integration methods instead or use our beta version by pointing to the branch 3.0.0.beta

    +

    On Jan 1, 2022, we’ll remove the Messages & Experiments feature from Mixpanel. For now, you can choose to opt in to our beta version without Messages & Experiments feature support. You can use Swift Package Manager to point to the branch 3.0.0.beta

    +

    Installation Option 2: CocoaPods

      -
    1. In Xcode, select File > Swift Packages > Add Package Dependency.
    2. -
    3. Follow the prompts using the URL for this repository and a minimum semantic version of v2.8.0
    4. +
    5. If this is your first time using CocoaPods, Install CocoaPods using gem install cocoapods. Otherwise, continue to Step 3.
    6. +
    7. Run pod setup to create a local CocoaPods spec mirror.
    8. +
    9. Create a Podfile in your Xcode project directory by running pod init in your terminal, edit the Podfile generated, and add the following line: pod 'Mixpanel-swift'.
    10. +
    11. Run pod install in your Xcode project directory. CocoaPods should download and install the Mixpanel library, and create a new Xcode workspace. Open up this workspace in Xcode or typing open *.xcworkspace in your terminal.
    +

    Installation Option 3: Carthage

    -

    Check out our swift integration guide » for more info.

    -

    CocoaPods

    - -

    Our current release only supports CocoaPods version 1.4.0+

    - -

    Mixpanel supports CocoaPods for easy installation. -To Install, see our swift integration guide »

    - -

    For iOS, tvOS, macOS, and App Extension integrations:

    - -

    pod 'Mixpanel-swift'

    - -

    -

    Carthage

    - -

    Mixpanel also supports Carthage to package your dependencies as a framework. Include the following dependency in your Cartfile:

    - -

    github "mixpanel/mixpanel-swift"

    - -

    Check out the Carthage docs » for more info.

    +

    Mixpanel supports Carthage to package your dependencies as a framework. Include the following dependency in your Cartfile:

    +
    github "mixpanel/mixpanel-swift"
    +
    -

    -

    Manual Installation

    +

    Check out the Carthage docs for more info.

    +

    2. Initialize Mixpanel

    -

    To help users stay up to date with the latest version of our Swift SDK, we always recommend integrating our SDK via CocoaPods, which simplifies version updates and dependency management. However, there are cases where users can’t use CocoaPods. Not to worry, just follow these manual installation steps and you’ll be all set.

    -

    Step 1: Add as a Submodule

    +

    Import Mixpanel into AppDelegate.swift, and initialize Mixpanel within application:didFinishLaunchingWithOptions:

    +
    import Mixpanel
     
    -

    Add Mixpanel as a submodule to your local git repo like so:

    -
    git submodule add git@github.com:mixpanel/mixpanel-swift.git
    +func application(_ application: UIApplication,
    +                 didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    +    ...
    +    Mixpanel.initialize(token: "MIXPANEL_TOKEN")
    +    ...
    +}
     
    -

    Now the Mixpanel project and its files should be in your project folder!

    -

    Step 2: Drag Mixpanel to your project

    +

    See all configuration options

    +

    3. Send Data

    -

    Drag the Mixpanel.xcodeproj inside your sample project under the main sample project file:

    - -

    alt text

    -

    Step 3: Embed the framework

    +

    Let’s get started by sending event data. You can send an event from anywhere in your application. Better understand user behavior by storing details that are specific to the event (properties). After initializing the library, Mixpanel will automatically collect common mobile events. You can enable/disable automatic collection through your project settings. Also, Mixpanel automatically tracks some properties by default. learn more

    +
    Mixpanel.mainInstance().track(event: "Sign Up", properties: [
    +   "source": "Pat's affiliate site",
    +   "Opted out of email": true
    +])
    +
    -

    Select your app .xcodeproj file. Under “General”, add the Mixpanel framework as an embedded binary:

    +

    In addition to event data, you can also send user profile data. We recommend this after completing the quickstart guide.

    +

    4. Check for Success

    -

    alt text

    +

    Open up Live View in Mixpanel to view incoming events.

    -

    -

    Initializing and Usage

    +

    Once data hits our API, it generally takes ~60 seconds for it to be processed, stored, and queryable in your project.

    +

    Complete Code Example

    -

    -

    Integrate

    +

    Here’s a runnable code example that covers everything in this quickstart guide.

    +
    import Mixpanel
     
    -

    Import Mixpanel into AppDelegate.swift, and initialize Mixpanel within application:didFinishLaunchingWithOptions: -alt text

    -
    func application(_ application: UIApplication,
    +func application(_ application: UIApplication,
                      didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    +    ...
         Mixpanel.initialize(token: "MIXPANEL_TOKEN")
    +    Mixpanel.mainInstance().track(event: "Sign Up", properties: [
    +       "source": "Pat's affiliate site",
    +       "Opted out of email": true
    +    ])
    +    ...
     }
     
    +

    FAQ

    -

    You initialize your Mixpanel instance with the token provided to you on mixpanel.com.

    - -

    -

    Start tracking

    - -

    After installing the library into your iOS app, Mixpanel will automatically collect common mobile events. You can enable/ disable automatic collection through your project settings.

    - -

    To interact with the instance and track additional events, you can either use the mixpanel instance given when initializing:

    -
    mixpanel.track(event: "Tracked Event!")
    -
    +

    I want to stop tracking an event/event property in Mixpanel. Is that possible?

    -

    or you can directly fetch the instance and use it from the Mixpanel object:

    -
    Mixpanel.mainInstance().track(event: "Tracked Event!")
    -
    +

    Yes, in Lexicon, you can intercept and drop incoming events or properties. Mixpanel won’t store any new data for the event or property you select to drop. See this article for more information.

    -

    You’re done! You’ve successfully integrated the Mixpanel Swift SDK into your app. To stay up to speed on important SDK releases and updates, star or watch our repository on Github.

    +

    I have a test user I would like to opt out of tracking. How do I do that?

    -

    Have any questions? Reach out to support@mixpanel.com to speak to someone smart, quickly.

    -

    Using Mixpanel Push Notifications

    +

    Mixpanel’s client-side tracking library contains the optOutTracking() method, which will set the user’s local opt-out state to “true” and will prevent data from being sent from a user’s device. More detailed instructions can be found in the section, Opting users out of tracking.

    -

    First enable Mixpanel push notifications in your app. Then for Rich Push Notifications, you’ll need to integrate your application with the MixpanelNotificationServiceExtension.

    -

    Integrating the MixpanelNotificationServiceExtension

    +

    Why aren’t my events showing up?

    -

    The Mixpanel SDK comes with a custom Notification Service Extension used to render rich media, custom action buttons, and track when push notifications are received. To enable these features, you will need to integrate it into your application.

    -

    1. Create a new Notification Service Extension Target

    +

    To preserve battery life and customer bandwidth, the Mixpanel library doesn’t send the events you record immediately. Instead, it sends batches to the Mixpanel servers every 60 seconds while your application is running, as well as when the application transitions to the background. You can call flush() manually if you want to force a flush at a particular moment.

    +
    Mixpanel.mainInstance().flush()
    +
    -

    Screenshot 2020-02-13 14 45 23 -Screenshot 2020-02-13 14 44 38 -Screenshot 2020-02-13 14 46 53

    -

    2. Add Mixpanel-swift as a dependency

    +

    If your events are still not showing up after 60 seconds, check if you have opted out of tracking. You can also enable Mixpanel debugging and logging, it allows you to see the debug output from the Mixpanel library. To enable it, set loggingEnabled to true.

    +
    Mixpanel.mainInstance().loggingEnabled = true
    +
    -

    Add the following to the end of your Podfile:

    -
    target 'NotificationService' do
    -  use_frameworks!
    +

    Starting with iOS 14.5, do I need to request the user’s permission through the AppTrackingTransparency framework to use Mixpanel?

    - pod 'Mixpanel-swift' -end -
    +

    No, Mixpanel does not use IDFA so it does not require user permission through the AppTrackingTransparency(ATT) framework.

    -

    Then run pod install

    -

    3. Extend your NotificationService from MixpanelNotificationServiceExtension

    +

    If I use Mixpanel, how do I answer app privacy questions for the App Store?

    -

    Replace the contents of your NotificationService.swift file with the following:

    -
    import Mixpanel
    +

    Please refer to our Apple App Developer Privacy Guidance

    +

    I want to know more!

    -class NotificationService: MixpanelNotificationServiceExtension {} -
    -

    4. Delegate the handling of the notification response to the Mixpanel SDK

    - -

    In your AppDelegate.swift file, you need to call MixpanelPushNotifications.handleResponse when a push notification response is received:

    -
    @available(iOS 10.0, *)
    -func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) {
    -    if MixpanelPushNotifications.isMixpanelPushNotification(response.notification.request.content) {
    -        debugPrint("Handling Mixpanel push notification response...")
    -        MixpanelPushNotifications.handleResponse(response: response, withCompletionHandler: completionHandler)
    -    } else {
    -        // not a Mixpanel push notification
    -        debugPrint("Not a Mixpanel push notification.")
    -        completionHandler()
    -    }
    -}
    -
    +

    No worries, here are some links that you will find useful:

    -

    This will make sure the tap actions are appropriately handled (open URL, deeplink, etc) as well as track whether a notification was tapped or dismissed.

    -

    5. Run the app and send a test push notification from Mixpanel that includes an image or buttons

    + -

    That’s it! Your app should now be able to receive rich push notifications from Mixpanel.

    +

    Have any questions? Reach out to Mixpanel Support to speak to someone smart, quickly.

    diff --git a/docs/search.json b/docs/search.json index 040a3460..dc8e93ad 100644 --- a/docs/search.json +++ b/docs/search.json @@ -1 +1 @@ -{"Typealiases.html#/s:8Mixpanel10Propertiesa":{"name":"Properties","abstract":"

    Undocumented

    "},"Structs/MixpanelTweaks.html#/s:8Mixpanel0A6TweaksV12defaultStoreAA05TweakD0CvpZ":{"name":"defaultStore","abstract":"

    The default store that holds the Tweaks

    ","parent_name":"MixpanelTweaks"},"Structs/MixpanelTweaks.html#/s:8Mixpanel0A6TweaksV03setB06tweaksySayAA16TweakClusterType_pG_tFZ":{"name":"setTweaks(tweaks:)","abstract":"

    setTweaks needs to be called to add the defined Tweaks into the environment.

    ","parent_name":"MixpanelTweaks"},"Structs/Tweak.html#/s:8Mixpanel5TweakV9tweakName12defaultValueACyxGSS_xtcfc":{"name":"init(tweakName:defaultValue:)","abstract":"

    Initializer for a Tweak for A/B Testing

    ","parent_name":"Tweak"},"Structs/Tweak.html#/s:8Mixpanel5TweakV4hash4intoys6HasherVz_tF":{"name":"hash(into:)","abstract":"

    Hashing for a Tweak for A/B Testing in order for it to be stored.

    ","parent_name":"Tweak"},"Structs/Tweak.html#/s:8Mixpanel16TweakClusterTypeP05tweakC0SayAA03AnyB0VGvp":{"name":"tweakCluster","parent_name":"Tweak"},"Structs/Tweak.html#/s:8Mixpanel5TweakVAASLRzs13SignedNumericRzrlE9tweakName12defaultValue3min3max8stepSizeACyxGSS_xxSgA2Ktcfc":{"name":"init(tweakName:defaultValue:min:max:stepSize:)","abstract":"

    Creates a Tweak where T: SignedNumberType","parent_name":"Tweak"},"Structs/AnyTweak.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"AnyTweak"},"Structs/AnyTweak.html#/s:8Mixpanel8AnyTweakV12tweakClusterSayACGvp":{"name":"tweakCluster","abstract":"

    Allows easy tweak initialization by clustering tweaks together for A/B Testing

    ","parent_name":"AnyTweak"},"Structs/AnyTweak.html":{"name":"AnyTweak","abstract":"

    A type-erasure around Tweak for A/B Testing.

    "},"Structs/Tweak.html":{"name":"Tweak","abstract":"

    Tweaks let you adjust things on the fly."},"Structs/MixpanelTweaks.html":{"name":"MixpanelTweaks","abstract":"

    The MixpanelTweaks struct that needs to be extended to define new Tweaks for A/B testing

    "},"Protocols/TweakableType.html#/s:8Mixpanel13TweakableTypeP013tweakViewDataC0AA05TweakefC0OvpZ":{"name":"tweakViewDataType","abstract":"

    The data type of the TweakableType

    ","parent_name":"TweakableType"},"Protocols/TweakLibraryType.html#/s:8Mixpanel16TweakLibraryTypeP12defaultStoreAA0bF0CvpZ":{"name":"defaultStore","abstract":"

    the default tweak store

    ","parent_name":"TweakLibraryType"},"Protocols/TweakLibraryType.html#/s:8Mixpanel16TweakLibraryTypePAAE6assignyqd__AA0B0Vyqd__GAA09TweakableD0Rd__lFZ":{"name":"assign(_:)","abstract":"

    Returns the current value for a tweak from the TweakLibrary’s default store.

    ","parent_name":"TweakLibraryType"},"Protocols/TweakLibraryType.html#/s:8Mixpanel16TweakLibraryTypePAAE4bind_7bindingyAA0B0Vyqd__G_yqd__ctAA09TweakableD0Rd__lFZ":{"name":"bind(_:binding:)","abstract":"

    Immediately binds the currentValue of a given tweak, and then continues to update whenever the tweak changes.

    ","parent_name":"TweakLibraryType"},"Protocols/TweakClusterType.html#/s:8Mixpanel16TweakClusterTypeP05tweakC0SayAA03AnyB0VGvp":{"name":"tweakCluster","abstract":"

    The tweak cluster to allow easy initialization of Tweaks

    ","parent_name":"TweakClusterType"},"Protocols/MixpanelType.html#/s:8Mixpanel0A4TypeP013isValidNestedB8AndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"MixpanelType"},"Protocols/MixpanelType.html#/s:8Mixpanel0A4TypeP6equals3rhsSbAaB_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelType"},"Protocols/MixpanelDelegate.html#/s:8Mixpanel0A8DelegateP17mixpanelWillFlushySbAA0A8InstanceCF":{"name":"mixpanelWillFlush(_:)","abstract":"

    Asks the delegate if data should be uploaded to the server.

    ","parent_name":"MixpanelDelegate"},"Protocols/MixpanelDelegate.html":{"name":"MixpanelDelegate","abstract":"

    Delegate protocol for controlling the Mixpanel API’s network behavior.

    "},"Protocols/MixpanelType.html":{"name":"MixpanelType","abstract":"

    Property keys must be String objects and the supported value types need to conform to MixpanelType."},"Protocols/TweakClusterType.html":{"name":"TweakClusterType","abstract":"

    This protocol allows for easy initialization of TweakStore."},"Protocols/TweakLibraryType.html":{"name":"TweakLibraryType","abstract":"

    Create a public struct in your application that conforms to this protocol to declare your own tweaks!

    "},"Protocols/TweakableType.html":{"name":"TweakableType","abstract":"

    To add a new to our Tweak, make T conform to this protocol.

    "},"Functions.html#/s:8Mixpanel2eeoiySbAA8AnyTweakV_ADtF":{"name":"==(_:_:)","abstract":"

    Comparator between two tweaks for A/B Testing.

    "},"Functions.html#/s:8Mixpanel2eeoiySbAA5TweakVyxG_AEtAA13TweakableTypeRzlF":{"name":"==(_:_:)","abstract":"

    Comparator between two tweaks for A/B Testing.

    "},"Extensions/CGFloat.html#/s:12CoreGraphics7CGFloatV8MixpanelE17tweakViewDataTypeAD05TweakfgH0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the cgFloat type

    ","parent_name":"CGFloat"},"Extensions/Dictionary.html#/s:SD8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"Dictionary"},"Extensions/Dictionary.html#/s:SD8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Dictionary"},"Extensions/NSArray.html#/s:So7NSArrayC8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"NSArray"},"Extensions/NSArray.html#/s:So7NSArrayC8MixpanelE6equals3rhsSbAC0B4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"NSArray"},"Extensions/NSNull.html#/s:So6NSNullC8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"NSNull"},"Extensions/NSNull.html#/s:So6NSNullC8MixpanelE6equals3rhsSbAC0B4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"NSNull"},"Extensions/URL.html#/s:10Foundation3URLV8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"URL"},"Extensions/URL.html#/s:10Foundation3URLV8MixpanelE6equals3rhsSbAD0C4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"URL"},"Extensions/Date.html#/s:10Foundation4DateV8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Date"},"Extensions/Date.html#/s:10Foundation4DateV8MixpanelE6equals3rhsSbAD0C4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Date"},"Extensions/Bool.html#/s:Sb8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Bool"},"Extensions/Bool.html#/s:Sb8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Bool"},"Extensions/Bool.html#/s:Sb8MixpanelE17tweakViewDataTypeAA05TweakcdE0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the boolean type

    ","parent_name":"Bool"},"Extensions/Float.html#/s:Sf8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Float"},"Extensions/Float.html#/s:Sf8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Float"},"Extensions/Double.html#/s:Sd8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Double"},"Extensions/Double.html#/s:Sd8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Double"},"Extensions/Double.html#/s:Sd8MixpanelE17tweakViewDataTypeAA05TweakcdE0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the double type

    ","parent_name":"Double"},"Extensions/UInt.html#/s:Su8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"UInt"},"Extensions/UInt.html#/s:Su8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"UInt"},"Extensions/Int.html#/s:Si8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Int"},"Extensions/Int.html#/s:Si8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Int"},"Extensions/Int.html#/s:Si8MixpanelE17tweakViewDataTypeAA05TweakcdE0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the integer type

    ","parent_name":"Int"},"Extensions/NSNumber.html#/s:So8NSNumberC8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"NSNumber"},"Extensions/NSNumber.html#/s:So8NSNumberC8MixpanelE6equals3rhsSbAC0B4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"NSNumber"},"Extensions/NSString.html#/s:So8NSStringC8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"NSString"},"Extensions/NSString.html#/s:So8NSStringC8MixpanelE6equals3rhsSbAC0B4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"NSString"},"Extensions/String.html#/s:SS8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"String"},"Extensions/String.html#/s:SS8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"String"},"Extensions/String.html#/s:SS8MixpanelE17tweakViewDataTypeAA05TweakcdE0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the string type

    ","parent_name":"String"},"Extensions/Optional.html#/s:Sq8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"Optional"},"Extensions/Optional.html#/s:Sq8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Optional"},"Extensions/Array.html#/s:Sa8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"Array"},"Extensions/Array.html#/s:Sa8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Array"},"Extensions/UIColor.html#/s:So7UIColorC8MixpanelE5MPHexABSu_tcfc":{"name":"init(MPHex:)","abstract":"

    The shorthand four-digit hexadecimal representation of color with alpha.

    ","parent_name":"UIColor"},"Extensions/UIColor.html":{"name":"UIColor"},"Extensions/Array.html":{"name":"Array"},"Extensions/Optional.html":{"name":"Optional"},"Extensions/String.html":{"name":"String"},"Extensions/NSString.html":{"name":"NSString"},"Extensions/NSNumber.html":{"name":"NSNumber"},"Extensions/Int.html":{"name":"Int"},"Extensions/UInt.html":{"name":"UInt"},"Extensions/Double.html":{"name":"Double"},"Extensions/Float.html":{"name":"Float"},"Extensions/Bool.html":{"name":"Bool"},"Extensions/Date.html":{"name":"Date"},"Extensions/URL.html":{"name":"URL"},"Extensions/NSNull.html":{"name":"NSNull"},"Extensions/NSArray.html":{"name":"NSArray"},"Extensions/Dictionary.html":{"name":"Dictionary"},"Extensions/CGFloat.html":{"name":"CGFloat"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO7booleanyA2CmF":{"name":"boolean","abstract":"

    TweakableType supports the boolean type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO7integeryA2CmF":{"name":"integer","abstract":"

    TweakableType supports the integer type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO7cgFloatyA2CmF":{"name":"cgFloat","abstract":"

    TweakableType supports the cgFloat type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO6doubleyA2CmF":{"name":"double","abstract":"

    TweakableType supports the double type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO6stringyA2CmF":{"name":"string","abstract":"

    TweakableType supports the string type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html":{"name":"TweakViewDataType","abstract":"

    The data types that are currently supported for SwiftTweaks."},"Classes/MixpanelPushNotifications.html#/s:8Mixpanel0A17PushNotificationsC02isaB12NotificationySbSo21UNNotificationContentCFZ":{"name":"isMixpanelPushNotification(_:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelPushNotifications"},"Classes/MixpanelPushNotifications.html#/s:8Mixpanel0A17PushNotificationsC10trackEvent_10properties7requestySS_SDySSAA0A4Type_pGSo21UNNotificationRequestCtFZ":{"name":"trackEvent(_:properties:request:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelPushNotifications"},"Classes/People.html#/s:8Mixpanel6PeopleC10ignoreTimeSbvp":{"name":"ignoreTime","abstract":"

    controls the $ignore_time property in any subsequent MixpanelPeople operation.","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC18addPushDeviceTokenyy10Foundation4DataVF":{"name":"addPushDeviceToken(_:)","abstract":"

    Register the given device to receive push notifications.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC25removeAllPushDeviceTokensyyF":{"name":"removeAllPushDeviceTokens()","abstract":"

    Unregister the given device to receive push notifications.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC21removePushDeviceTokenyy10Foundation4DataVF":{"name":"removePushDeviceToken(_:)","abstract":"

    Unregister a specific device token from the ability to receive push notifications.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC3set10propertiesySDySSAA0A4Type_pG_tF":{"name":"set(properties:)","abstract":"

    Set properties on the current user in Mixpanel People.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC3set8property2toySS_AA0A4Type_ptF":{"name":"set(property:to:)","abstract":"

    Convenience method for setting a single property in Mixpanel People.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC7setOnce10propertiesySDySSAA0A4Type_pG_tF":{"name":"setOnce(properties:)","abstract":"

    Set properties on the current user in Mixpanel People, but doesn’t overwrite if","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC5unset10propertiesySaySSG_tF":{"name":"unset(properties:)","abstract":"

    Remove a list of properties and their values from the current user’s profile","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC9increment10propertiesySDySSAA0A4Type_pG_tF":{"name":"increment(properties:)","abstract":"

    Increment the given numeric properties by the given values.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC9increment8property2byySS_SdtF":{"name":"increment(property:by:)","abstract":"

    Convenience method for incrementing a single numeric property by the specified","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC6append10propertiesySDySSAA0A4Type_pG_tF":{"name":"append(properties:)","abstract":"

    Append values to list properties.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC6remove10propertiesySDySSAA0A4Type_pG_tF":{"name":"remove(properties:)","abstract":"

    Removes list properties.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC5union10propertiesySDySSAA0A4Type_pG_tF":{"name":"union(properties:)","abstract":"

    Union list properties.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC11trackCharge6amount10propertiesySd_SDySSAA0A4Type_pGSgtF":{"name":"trackCharge(amount:properties:)","abstract":"

    Track money spent by the current user for revenue analytics and associate","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC12clearChargesyyF":{"name":"clearCharges()","abstract":"

    Delete current user’s revenue history.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC10deleteUseryyF":{"name":"deleteUser()","abstract":"

    Delete current user’s record from Mixpanel People.

    ","parent_name":"People"},"Classes/MixpanelNotificationServiceExtension.html#/c:@M@Mixpanel@objc(cs)MixpanelNotificationServiceExtension(im)didReceiveNotificationRequest:withContentHandler:":{"name":"didReceive(_:withContentHandler:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelNotificationServiceExtension"},"Classes/MixpanelNotificationServiceExtension.html#/c:@M@Mixpanel@objc(cs)MixpanelNotificationServiceExtension(im)serviceExtensionTimeWillExpire":{"name":"serviceExtensionTimeWillExpire()","abstract":"

    Undocumented

    ","parent_name":"MixpanelNotificationServiceExtension"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8apiTokenSSvp":{"name":"apiToken","abstract":"

    apiToken string that identifies the project to track data to

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8delegateAA0A8Delegate_pSgvp":{"name":"delegate","abstract":"

    The a MixpanelDelegate object that gives control over Mixpanel network activity.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC10distinctIdSSvp":{"name":"distinctId","abstract":"

    distinctId string that uniquely identifies the current user.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC11anonymousIdSSSgvp":{"name":"anonymousId","abstract":"

    anonymousId string that uniquely identifies the device.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC6userIdSSSgvp":{"name":"userId","abstract":"

    userId string that identify is called with.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC22hadPersistedDistinctIdSbSgvp":{"name":"hadPersistedDistinctId","abstract":"

    hadPersistedDistinctId is a boolean value which specifies that the stored distinct_id","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC5aliasSSSgvp":{"name":"alias","abstract":"

    alias string that uniquely identifies the current user.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC6peopleAA6PeopleCSgvp":{"name":"people","abstract":"

    Accessor to the Mixpanel People API object.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC28showNetworkActivityIndicatorSbvp":{"name":"showNetworkActivityIndicator","abstract":"

    Controls whether to show spinning network activity indicator when flushing","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC27trackAutomaticEventsEnabledSbSgvp":{"name":"trackAutomaticEventsEnabled","abstract":"

    This allows enabling or disabling collecting common mobile events","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC13flushIntervalSdvp":{"name":"flushInterval","abstract":"

    Flush timer’s interval.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC17flushOnBackgroundSbvp":{"name":"flushOnBackground","abstract":"

    Control whether the library should flush data to Mixpanel when the app","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC26useIPAddressForGeoLocationSbvp":{"name":"useIPAddressForGeoLocation","abstract":"

    Controls whether to automatically send the client IP Address as part of","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC9serverURLSSvp":{"name":"serverURL","abstract":"

    The base URL used for Mixpanel API requests.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:s28CustomDebugStringConvertibleP16debugDescriptionSSvp":{"name":"debugDescription","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC14loggingEnabledSbvp":{"name":"loggingEnabled","abstract":"

    This allows enabling or disabling of all Mixpanel logs at run time.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC4nameSSvp":{"name":"name","abstract":"

    A unique identifier for this MixpanelInstance

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC29enableVisualEditorForCodelessSbvp":{"name":"enableVisualEditorForCodeless","abstract":"

    Controls whether to enable the visual editor for codeless on mixpanel.com","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC24checkForVariantsOnActiveSbvp":{"name":"checkForVariantsOnActive","abstract":"

    Controls whether to automatically check for A/B test variants for the","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC28checkForNotificationOnActiveSbvp":{"name":"checkForNotificationOnActive","abstract":"

    Controls whether to automatically check for notifications for the","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC24showNotificationOnActiveSbvp":{"name":"showNotificationOnActive","abstract":"

    Controls whether to automatically check for and show in-app notifications","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC32miniNotificationPresentationTimeSdvp":{"name":"miniNotificationPresentationTime","abstract":"

    Determines the time, in seconds, that a mini notification will remain on","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC22minimumSessionDurations6UInt64Vvp":{"name":"minimumSessionDuration","abstract":"

    The minimum session duration (ms) that is tracked in automatic events.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC22maximumSessionDurations6UInt64Vvp":{"name":"maximumSessionDuration","abstract":"

    The maximum session duration (ms) that is tracked in automatic events.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8identify10distinctId9usePeopleySS_SbtF":{"name":"identify(distinctId:usePeople:)","abstract":"

    Sets the distinct ID of the current user.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC11createAlias_10distinctId9usePeopleySS_SSSbtF":{"name":"createAlias(_:distinctId:usePeople:)","abstract":"

    The alias method creates an alias which Mixpanel will use to remap one id to another.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC5resetyyF":{"name":"reset()","abstract":"

    Clears all stored properties including the distinct Id.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC7archiveyyF":{"name":"archive()","abstract":"

    Writes current project info including the distinct Id, super properties,","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/archive()":{"name":"archive()","abstract":"

    Writes current project info including the distinct Id, super properties,","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC5flush10completionyyycSg_tF":{"name":"flush(completion:)","abstract":"

    Uploads queued data to the Mixpanel server.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC5track5event10propertiesySSSg_SDySSAA0A4Type_pGSgtF":{"name":"track(event:properties:)","abstract":"

    Tracks an event with properties.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC15trackWithGroups5event10properties6groupsySSSg_SDySSAA0A4Type_pGSgAKtF":{"name":"trackWithGroups(event:properties:groups:)","abstract":"

    Tracks an event with properties and to specific groups.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8getGroup8groupKey0E2IDAA0D0CSS_AA0A4Type_ptF":{"name":"getGroup(groupKey:groupID:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC4time5eventySS_tF":{"name":"time(event:)","abstract":"

    Starts a timer that will be stopped and added as a property when a","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16eventElapsedTime0C0SdSS_tF":{"name":"eventElapsedTime(event:)","abstract":"

    Retrieves the time elapsed for the named event since time(event:) was called.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16clearTimedEventsyyF":{"name":"clearTimedEvents()","abstract":"

    Clears all current event timers.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC15clearTimedEvent5eventySS_tF":{"name":"clearTimedEvent(event:)","abstract":"

    Clears the event timer for the named event.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC22currentSuperPropertiesSDySSypGyF":{"name":"currentSuperProperties()","abstract":"

    Returns the currently set super properties.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC20clearSuperPropertiesyyF":{"name":"clearSuperProperties()","abstract":"

    Clears all currently set super properties.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC23registerSuperPropertiesyySDySSAA0A4Type_pGF":{"name":"registerSuperProperties(_:)","abstract":"

    Registers super properties, overwriting ones that have already been set.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC27registerSuperPropertiesOnce_12defaultValueySDySSAA0A4Type_pG_AaF_pSgtF":{"name":"registerSuperPropertiesOnce(_:defaultValue:)","abstract":"

    Registers super properties without overwriting ones that have already been set,","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC23unregisterSuperPropertyyySSF":{"name":"unregisterSuperProperty(_:)","abstract":"

    Removes a previously registered super property.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8setGroup8groupKey0E2IDySS_AA0A4Type_ptF":{"name":"setGroup(groupKey:groupID:)","abstract":"

    Convenience method to set a single group the user belongs to.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8setGroup8groupKey0E3IDsySS_SayAA0A4Type_pGtF":{"name":"setGroup(groupKey:groupIDs:)","abstract":"

    Set the groups this user belongs to.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8addGroup8groupKey0E2IDySS_AA0A4Type_ptF":{"name":"addGroup(groupKey:groupID:)","abstract":"

    Add a group to this user’s membership for a particular group key

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC11removeGroup8groupKey0E2IDySS_AA0A4Type_ptF":{"name":"removeGroup(groupKey:groupID:)","abstract":"

    Remove a group from this user’s membership for a particular group key

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC14optOutTrackingyyF":{"name":"optOutTracking()","abstract":"

    Opt out tracking.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC13optInTracking10distinctId10propertiesySSSg_SDySSAA0A4Type_pGSgtF":{"name":"optInTracking(distinctId:properties:)","abstract":"

    Opt in tracking.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC19hasOptedOutTrackingSbyF":{"name":"hasOptedOutTracking()","abstract":"

    Returns if the current user has opted out tracking.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC15joinExperiments8callbackyyycSg_tF":{"name":"joinExperiments(callback:)","abstract":"

    Join any experiments (A/B tests) that are available for the current user.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16showNotificationyyF":{"name":"showNotification()","abstract":"

    Shows a notification if one is available.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16showNotification4typeySS_tF":{"name":"showNotification(type:)","abstract":"

    Shows a notification with the given type if one is available.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16showNotification2IDySi_tF":{"name":"showNotification(ID:)","abstract":"

    Shows a notification with the given ID

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC24fetchNotificationPayload10completionyySDySSyXlGSgc_tF":{"name":"fetchNotificationPayload(completion:)","abstract":"

    Returns the payload of a notification if available

    ","parent_name":"MixpanelInstance"},"Classes/Mixpanel.html#/s:8MixpanelAAC10initialize5token13launchOptions13flushInterval12instanceName21automaticPushTracking06optOutL9ByDefaultAA0A8InstanceCSS_SDySo019UIApplicationLaunchE3KeyaypGSgSdSSS2btFZ":{"name":"initialize(token:launchOptions:flushInterval:instanceName:automaticPushTracking:optOutTrackingByDefault:)","abstract":"

    Initializes an instance of the API with the given project token.

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/initialize(token:flushInterval:instanceName:optOutTrackingByDefault:)":{"name":"initialize(token:flushInterval:instanceName:optOutTrackingByDefault:)","abstract":"

    Initializes an instance of the API with the given project token (MAC OS ONLY).

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/s:8MixpanelAAC11getInstance4nameAA0aC0CSgSS_tFZ":{"name":"getInstance(name:)","abstract":"

    Gets the mixpanel instance with the given name

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/s:8MixpanelAAC12mainInstanceAA0aC0CyFZ":{"name":"mainInstance()","abstract":"

    Returns the main instance that was initialized.

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/s:8MixpanelAAC15setMainInstance4nameySS_tFZ":{"name":"setMainInstance(name:)","abstract":"

    Sets the main instance based on the instance name

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/s:8MixpanelAAC14removeInstance4nameySS_tFZ":{"name":"removeInstance(name:)","abstract":"

    Removes an unneeded Mixpanel instance based on its name

    ","parent_name":"Mixpanel"},"Classes/Group.html#/s:8Mixpanel5GroupC3set10propertiesySDySSAA0A4Type_pG_tF":{"name":"set(properties:)","abstract":"

    Sets properties on this group.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC3set8property2toySS_AA0A4Type_ptF":{"name":"set(property:to:)","abstract":"

    Convenience method for setting a single property in Mixpanel Groups.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC7setOnce10propertiesySDySSAA0A4Type_pG_tF":{"name":"setOnce(properties:)","abstract":"

    Sets properties on the current Mixpanel Group, but doesn’t overwrite if","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC5unset8propertyySS_tF":{"name":"unset(property:)","abstract":"

    Remove a property and its value from a group’s profile in Mixpanel Groups.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC6remove3key5valueySS_AA0A4Type_ptF":{"name":"remove(key:value:)","abstract":"

    Removes list properties.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC5union3key6valuesySS_SayAA0A4Type_pGtF":{"name":"union(key:values:)","abstract":"

    Union list properties.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC06deleteB0yyF":{"name":"deleteGroup()","abstract":"

    Delete group’s record from Mixpanel Groups.

    ","parent_name":"Group"},"Classes/Group.html":{"name":"Group","abstract":"

    Access to the Mixpanel Groups API, available through the getGroup function from"},"Classes/Mixpanel.html":{"name":"Mixpanel","abstract":"

    The primary class for integrating Mixpanel with your app.

    "},"Classes/MixpanelInstance.html":{"name":"MixpanelInstance","abstract":"

    The class that represents the Mixpanel Instance

    "},"Classes/MixpanelNotificationServiceExtension.html":{"name":"MixpanelNotificationServiceExtension","abstract":"

    Undocumented

    "},"Classes/People.html":{"name":"People","abstract":"

    Access to the Mixpanel People API, available as an accessible variable from"},"Classes/MixpanelPushNotifications.html":{"name":"MixpanelPushNotifications","abstract":"

    Undocumented

    "},"Classes.html#/s:8Mixpanel10TweakStoreC":{"name":"TweakStore","abstract":"

    Looks up the persisted state for tweaks.

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Enums.html":{"name":"Enumerations","abstract":"

    The following enumerations are available globally.

    "},"Extensions.html":{"name":"Extensions","abstract":"

    The following extensions are available globally.

    "},"Functions.html":{"name":"Functions","abstract":"

    The following functions are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Structs.html":{"name":"Structures","abstract":"

    The following structures are available globally.

    "},"Typealiases.html":{"name":"Type Aliases","abstract":"

    The following type aliases are available globally.

    "}} \ No newline at end of file +{"Typealiases.html#/s:8Mixpanel10Propertiesa":{"name":"Properties","abstract":"

    Undocumented

    "},"Structs/MixpanelTweaks.html#/s:8Mixpanel0A6TweaksV12defaultStoreAA05TweakD0CvpZ":{"name":"defaultStore","abstract":"

    The default store that holds the Tweaks

    ","parent_name":"MixpanelTweaks"},"Structs/MixpanelTweaks.html#/s:8Mixpanel0A6TweaksV03setB06tweaksySayAA16TweakClusterType_pG_tFZ":{"name":"setTweaks(tweaks:)","abstract":"

    setTweaks needs to be called to add the defined Tweaks into the environment.

    ","parent_name":"MixpanelTweaks"},"Structs/Tweak.html#/s:8Mixpanel5TweakV9tweakName12defaultValueACyxGSS_xtcfc":{"name":"init(tweakName:defaultValue:)","abstract":"

    Initializer for a Tweak for A/B Testing

    ","parent_name":"Tweak"},"Structs/Tweak.html#/s:8Mixpanel5TweakV4hash4intoys6HasherVz_tF":{"name":"hash(into:)","abstract":"

    Hashing for a Tweak for A/B Testing in order for it to be stored.

    ","parent_name":"Tweak"},"Structs/Tweak.html#/s:8Mixpanel16TweakClusterTypeP05tweakC0SayAA03AnyB0VGvp":{"name":"tweakCluster","parent_name":"Tweak"},"Structs/Tweak.html#/s:8Mixpanel5TweakVAASLRzs13SignedNumericRzrlE9tweakName12defaultValue3min3max8stepSizeACyxGSS_xxSgA2Ktcfc":{"name":"init(tweakName:defaultValue:min:max:stepSize:)","abstract":"

    Creates a Tweak where T: SignedNumberType","parent_name":"Tweak"},"Structs/AnyTweak.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"AnyTweak"},"Structs/AnyTweak.html#/s:8Mixpanel8AnyTweakV12tweakClusterSayACGvp":{"name":"tweakCluster","abstract":"

    Allows easy tweak initialization by clustering tweaks together for A/B Testing

    ","parent_name":"AnyTweak"},"Structs/AnyTweak.html":{"name":"AnyTweak","abstract":"

    A type-erasure around Tweak for A/B Testing.

    "},"Structs/Tweak.html":{"name":"Tweak","abstract":"

    Tweaks let you adjust things on the fly."},"Structs/MixpanelTweaks.html":{"name":"MixpanelTweaks","abstract":"

    The MixpanelTweaks struct that needs to be extended to define new Tweaks for A/B testing

    "},"Protocols/TweakableType.html#/s:8Mixpanel13TweakableTypeP013tweakViewDataC0AA05TweakefC0OvpZ":{"name":"tweakViewDataType","abstract":"

    The data type of the TweakableType

    ","parent_name":"TweakableType"},"Protocols/TweakLibraryType.html#/s:8Mixpanel16TweakLibraryTypeP12defaultStoreAA0bF0CvpZ":{"name":"defaultStore","abstract":"

    the default tweak store

    ","parent_name":"TweakLibraryType"},"Protocols/TweakLibraryType.html#/s:8Mixpanel16TweakLibraryTypePAAE6assignyqd__AA0B0Vyqd__GAA09TweakableD0Rd__lFZ":{"name":"assign(_:)","abstract":"

    Returns the current value for a tweak from the TweakLibrary’s default store.

    ","parent_name":"TweakLibraryType"},"Protocols/TweakLibraryType.html#/s:8Mixpanel16TweakLibraryTypePAAE4bind_7bindingyAA0B0Vyqd__G_yqd__ctAA09TweakableD0Rd__lFZ":{"name":"bind(_:binding:)","abstract":"

    Immediately binds the currentValue of a given tweak, and then continues to update whenever the tweak changes.

    ","parent_name":"TweakLibraryType"},"Protocols/TweakClusterType.html#/s:8Mixpanel16TweakClusterTypeP05tweakC0SayAA03AnyB0VGvp":{"name":"tweakCluster","abstract":"

    The tweak cluster to allow easy initialization of Tweaks

    ","parent_name":"TweakClusterType"},"Protocols/MixpanelType.html#/s:8Mixpanel0A4TypeP013isValidNestedB8AndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"MixpanelType"},"Protocols/MixpanelType.html#/s:8Mixpanel0A4TypeP6equals3rhsSbAaB_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelType"},"Protocols/MixpanelDelegate.html#/s:8Mixpanel0A8DelegateP17mixpanelWillFlushySbAA0A8InstanceCF":{"name":"mixpanelWillFlush(_:)","abstract":"

    Asks the delegate if data should be uploaded to the server.

    ","parent_name":"MixpanelDelegate"},"Protocols/MixpanelDelegate.html":{"name":"MixpanelDelegate","abstract":"

    Delegate protocol for controlling the Mixpanel API’s network behavior.

    "},"Protocols/MixpanelType.html":{"name":"MixpanelType","abstract":"

    Property keys must be String objects and the supported value types need to conform to MixpanelType."},"Protocols/TweakClusterType.html":{"name":"TweakClusterType","abstract":"

    This protocol allows for easy initialization of TweakStore."},"Protocols/TweakLibraryType.html":{"name":"TweakLibraryType","abstract":"

    Create a public struct in your application that conforms to this protocol to declare your own tweaks!

    "},"Protocols/TweakableType.html":{"name":"TweakableType","abstract":"

    To add a new to our Tweak, make T conform to this protocol.

    "},"Functions.html#/s:8Mixpanel2eeoiySbAA8AnyTweakV_ADtF":{"name":"==(_:_:)","abstract":"

    Comparator between two tweaks for A/B Testing.

    "},"Functions.html#/s:8Mixpanel2eeoiySbAA5TweakVyxG_AEtAA13TweakableTypeRzlF":{"name":"==(_:_:)","abstract":"

    Comparator between two tweaks for A/B Testing.

    "},"Extensions/CGFloat.html#/s:12CoreGraphics7CGFloatV8MixpanelE17tweakViewDataTypeAD05TweakfgH0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the cgFloat type

    ","parent_name":"CGFloat"},"Extensions/Dictionary.html#/s:SD8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"Dictionary"},"Extensions/Dictionary.html#/s:SD8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Dictionary"},"Extensions/NSArray.html#/s:So7NSArrayC8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"NSArray"},"Extensions/NSArray.html#/s:So7NSArrayC8MixpanelE6equals3rhsSbAC0B4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"NSArray"},"Extensions/NSNull.html#/s:So6NSNullC8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"NSNull"},"Extensions/NSNull.html#/s:So6NSNullC8MixpanelE6equals3rhsSbAC0B4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"NSNull"},"Extensions/URL.html#/s:10Foundation3URLV8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"URL"},"Extensions/URL.html#/s:10Foundation3URLV8MixpanelE6equals3rhsSbAD0C4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"URL"},"Extensions/Date.html#/s:10Foundation4DateV8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Date"},"Extensions/Date.html#/s:10Foundation4DateV8MixpanelE6equals3rhsSbAD0C4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Date"},"Extensions/Bool.html#/s:Sb8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Bool"},"Extensions/Bool.html#/s:Sb8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Bool"},"Extensions/Bool.html#/s:Sb8MixpanelE17tweakViewDataTypeAA05TweakcdE0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the boolean type

    ","parent_name":"Bool"},"Extensions/Float.html#/s:Sf8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Float"},"Extensions/Float.html#/s:Sf8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Float"},"Extensions/Double.html#/s:Sd8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Double"},"Extensions/Double.html#/s:Sd8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Double"},"Extensions/Double.html#/s:Sd8MixpanelE17tweakViewDataTypeAA05TweakcdE0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the double type

    ","parent_name":"Double"},"Extensions/UInt.html#/s:Su8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"UInt"},"Extensions/UInt.html#/s:Su8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"UInt"},"Extensions/Int.html#/s:Si8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"Int"},"Extensions/Int.html#/s:Si8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Int"},"Extensions/Int.html#/s:Si8MixpanelE17tweakViewDataTypeAA05TweakcdE0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the integer type

    ","parent_name":"Int"},"Extensions/NSNumber.html#/s:So8NSNumberC8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"NSNumber"},"Extensions/NSNumber.html#/s:So8NSNumberC8MixpanelE6equals3rhsSbAC0B4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"NSNumber"},"Extensions/NSString.html#/s:So8NSStringC8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"NSString"},"Extensions/NSString.html#/s:So8NSStringC8MixpanelE6equals3rhsSbAC0B4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"NSString"},"Extensions/String.html#/s:SS8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.","parent_name":"String"},"Extensions/String.html#/s:SS8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"String"},"Extensions/String.html#/s:SS8MixpanelE17tweakViewDataTypeAA05TweakcdE0OvpZ":{"name":"tweakViewDataType","abstract":"

    TweakableType supports the string type

    ","parent_name":"String"},"Extensions/Optional.html#/s:Sq8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"Optional"},"Extensions/Optional.html#/s:Sq8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Optional"},"Extensions/Array.html#/s:Sa8MixpanelE25isValidNestedTypeAndValueSbyF":{"name":"isValidNestedTypeAndValue()","abstract":"

    Checks if this object has nested object types that Mixpanel supports.

    ","parent_name":"Array"},"Extensions/Array.html#/s:Sa8MixpanelE6equals3rhsSbAA0A4Type_p_tF":{"name":"equals(rhs:)","abstract":"

    Undocumented

    ","parent_name":"Array"},"Extensions/UIColor.html#/s:So7UIColorC8MixpanelE5MPHexABSu_tcfc":{"name":"init(MPHex:)","abstract":"

    The shorthand four-digit hexadecimal representation of color with alpha.

    ","parent_name":"UIColor"},"Extensions/UIColor.html":{"name":"UIColor"},"Extensions/Array.html":{"name":"Array"},"Extensions/Optional.html":{"name":"Optional"},"Extensions/String.html":{"name":"String"},"Extensions/NSString.html":{"name":"NSString"},"Extensions/NSNumber.html":{"name":"NSNumber"},"Extensions/Int.html":{"name":"Int"},"Extensions/UInt.html":{"name":"UInt"},"Extensions/Double.html":{"name":"Double"},"Extensions/Float.html":{"name":"Float"},"Extensions/Bool.html":{"name":"Bool"},"Extensions/Date.html":{"name":"Date"},"Extensions/URL.html":{"name":"URL"},"Extensions/NSNull.html":{"name":"NSNull"},"Extensions/NSArray.html":{"name":"NSArray"},"Extensions/Dictionary.html":{"name":"Dictionary"},"Extensions/CGFloat.html":{"name":"CGFloat"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO7booleanyA2CmF":{"name":"boolean","abstract":"

    TweakableType supports the boolean type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO7integeryA2CmF":{"name":"integer","abstract":"

    TweakableType supports the integer type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO7cgFloatyA2CmF":{"name":"cgFloat","abstract":"

    TweakableType supports the cgFloat type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO6doubleyA2CmF":{"name":"double","abstract":"

    TweakableType supports the double type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html#/s:8Mixpanel17TweakViewDataTypeO6stringyA2CmF":{"name":"string","abstract":"

    TweakableType supports the string type

    ","parent_name":"TweakViewDataType"},"Enums/TweakViewDataType.html":{"name":"TweakViewDataType","abstract":"

    The data types that are currently supported for SwiftTweaks."},"Classes/MixpanelPushNotifications.html#/s:8Mixpanel0A17PushNotificationsC02isaB12NotificationySbSo21UNNotificationContentCFZ":{"name":"isMixpanelPushNotification(_:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelPushNotifications"},"Classes/MixpanelPushNotifications.html#/s:8Mixpanel0A17PushNotificationsC10trackEvent_10properties7requestySS_SDySSAA0A4Type_pGSo21UNNotificationRequestCtFZ":{"name":"trackEvent(_:properties:request:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelPushNotifications"},"Classes/People.html#/s:8Mixpanel6PeopleC10ignoreTimeSbvp":{"name":"ignoreTime","abstract":"

    controls the $ignore_time property in any subsequent MixpanelPeople operation.","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC18addPushDeviceTokenyy10Foundation4DataVF":{"name":"addPushDeviceToken(_:)","abstract":"

    Register the given device to receive push notifications.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC25removeAllPushDeviceTokensyyF":{"name":"removeAllPushDeviceTokens()","abstract":"

    Unregister the given device to receive push notifications.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC21removePushDeviceTokenyy10Foundation4DataVF":{"name":"removePushDeviceToken(_:)","abstract":"

    Unregister a specific device token from the ability to receive push notifications.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC3set10propertiesySDySSAA0A4Type_pG_tF":{"name":"set(properties:)","abstract":"

    Set properties on the current user in Mixpanel People.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC3set8property2toySS_AA0A4Type_ptF":{"name":"set(property:to:)","abstract":"

    Convenience method for setting a single property in Mixpanel People.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC7setOnce10propertiesySDySSAA0A4Type_pG_tF":{"name":"setOnce(properties:)","abstract":"

    Set properties on the current user in Mixpanel People, but doesn’t overwrite if","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC5unset10propertiesySaySSG_tF":{"name":"unset(properties:)","abstract":"

    Remove a list of properties and their values from the current user’s profile","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC9increment10propertiesySDySSAA0A4Type_pG_tF":{"name":"increment(properties:)","abstract":"

    Increment the given numeric properties by the given values.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC9increment8property2byySS_SdtF":{"name":"increment(property:by:)","abstract":"

    Convenience method for incrementing a single numeric property by the specified","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC6append10propertiesySDySSAA0A4Type_pG_tF":{"name":"append(properties:)","abstract":"

    Append values to list properties.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC6remove10propertiesySDySSAA0A4Type_pG_tF":{"name":"remove(properties:)","abstract":"

    Removes list properties.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC5union10propertiesySDySSAA0A4Type_pG_tF":{"name":"union(properties:)","abstract":"

    Union list properties.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC11trackCharge6amount10propertiesySd_SDySSAA0A4Type_pGSgtF":{"name":"trackCharge(amount:properties:)","abstract":"

    Track money spent by the current user for revenue analytics and associate","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC12clearChargesyyF":{"name":"clearCharges()","abstract":"

    Delete current user’s revenue history.

    ","parent_name":"People"},"Classes/People.html#/s:8Mixpanel6PeopleC10deleteUseryyF":{"name":"deleteUser()","abstract":"

    Delete current user’s record from Mixpanel People.

    ","parent_name":"People"},"Classes/MixpanelNotificationServiceExtension.html#/c:@M@Mixpanel@objc(cs)MixpanelNotificationServiceExtension(im)didReceiveNotificationRequest:withContentHandler:":{"name":"didReceive(_:withContentHandler:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelNotificationServiceExtension"},"Classes/MixpanelNotificationServiceExtension.html#/c:@M@Mixpanel@objc(cs)MixpanelNotificationServiceExtension(im)serviceExtensionTimeWillExpire":{"name":"serviceExtensionTimeWillExpire()","abstract":"

    Undocumented

    ","parent_name":"MixpanelNotificationServiceExtension"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8apiTokenSSvp":{"name":"apiToken","abstract":"

    apiToken string that identifies the project to track data to

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8delegateAA0A8Delegate_pSgvp":{"name":"delegate","abstract":"

    The a MixpanelDelegate object that gives control over Mixpanel network activity.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC10distinctIdSSvp":{"name":"distinctId","abstract":"

    distinctId string that uniquely identifies the current user.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC11anonymousIdSSSgvp":{"name":"anonymousId","abstract":"

    anonymousId string that uniquely identifies the device.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC6userIdSSSgvp":{"name":"userId","abstract":"

    userId string that identify is called with.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC22hadPersistedDistinctIdSbSgvp":{"name":"hadPersistedDistinctId","abstract":"

    hadPersistedDistinctId is a boolean value which specifies that the stored distinct_id","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC5aliasSSSgvp":{"name":"alias","abstract":"

    alias string that uniquely identifies the current user.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC6peopleAA6PeopleCSgvp":{"name":"people","abstract":"

    Accessor to the Mixpanel People API object.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC28showNetworkActivityIndicatorSbvp":{"name":"showNetworkActivityIndicator","abstract":"

    Controls whether to show spinning network activity indicator when flushing","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC27trackAutomaticEventsEnabledSbSgvp":{"name":"trackAutomaticEventsEnabled","abstract":"

    This allows enabling or disabling collecting common mobile events","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC13flushIntervalSdvp":{"name":"flushInterval","abstract":"

    Flush timer’s interval.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC17flushOnBackgroundSbvp":{"name":"flushOnBackground","abstract":"

    Control whether the library should flush data to Mixpanel when the app","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC26useIPAddressForGeoLocationSbvp":{"name":"useIPAddressForGeoLocation","abstract":"

    Controls whether to automatically send the client IP Address as part of","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC9serverURLSSvp":{"name":"serverURL","abstract":"

    The base URL used for Mixpanel API requests.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:s28CustomDebugStringConvertibleP16debugDescriptionSSvp":{"name":"debugDescription","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC14loggingEnabledSbvp":{"name":"loggingEnabled","abstract":"

    This allows enabling or disabling of all Mixpanel logs at run time.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC4nameSSvp":{"name":"name","abstract":"

    A unique identifier for this MixpanelInstance

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC29enableVisualEditorForCodelessSbvp":{"name":"enableVisualEditorForCodeless","abstract":"

    Controls whether to enable the visual editor for codeless on mixpanel.com","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC24checkForVariantsOnActiveSbvp":{"name":"checkForVariantsOnActive","abstract":"

    Controls whether to automatically check for A/B test variants for the","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC28checkForNotificationOnActiveSbvp":{"name":"checkForNotificationOnActive","abstract":"

    Controls whether to automatically check for notifications for the","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC24showNotificationOnActiveSbvp":{"name":"showNotificationOnActive","abstract":"

    Controls whether to automatically check for and show in-app notifications","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC32miniNotificationPresentationTimeSdvp":{"name":"miniNotificationPresentationTime","abstract":"

    Determines the time, in seconds, that a mini notification will remain on","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC22minimumSessionDurations6UInt64Vvp":{"name":"minimumSessionDuration","abstract":"

    The minimum session duration (ms) that is tracked in automatic events.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC22maximumSessionDurations6UInt64Vvp":{"name":"maximumSessionDuration","abstract":"

    The maximum session duration (ms) that is tracked in automatic events.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8identify10distinctId9usePeople10completionySS_SbyycSgtF":{"name":"identify(distinctId:usePeople:completion:)","abstract":"

    Sets the distinct ID of the current user.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC11createAlias_10distinctId9usePeople10completionySS_SSSbyycSgtF":{"name":"createAlias(_:distinctId:usePeople:completion:)","abstract":"

    The alias method creates an alias which Mixpanel will use to remap one id to another.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC5reset10completionyyycSg_tF":{"name":"reset(completion:)","abstract":"

    Clears all stored properties including the distinct Id.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC7archiveyyF":{"name":"archive()","abstract":"

    Writes current project info including the distinct Id, super properties,","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/archive()":{"name":"archive()","abstract":"

    Writes current project info including the distinct Id, super properties,","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC5flush10completionyyycSg_tF":{"name":"flush(completion:)","abstract":"

    Uploads queued data to the Mixpanel server.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC5track5event10propertiesySSSg_SDySSAA0A4Type_pGSgtF":{"name":"track(event:properties:)","abstract":"

    Tracks an event with properties.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC15trackWithGroups5event10properties6groupsySSSg_SDySSAA0A4Type_pGSgAKtF":{"name":"trackWithGroups(event:properties:groups:)","abstract":"

    Tracks an event with properties and to specific groups.","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8getGroup8groupKey0E2IDAA0D0CSS_AA0A4Type_ptF":{"name":"getGroup(groupKey:groupID:)","abstract":"

    Undocumented

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC4time5eventySS_tF":{"name":"time(event:)","abstract":"

    Starts a timer that will be stopped and added as a property when a","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16eventElapsedTime0C0SdSS_tF":{"name":"eventElapsedTime(event:)","abstract":"

    Retrieves the time elapsed for the named event since time(event:) was called.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16clearTimedEventsyyF":{"name":"clearTimedEvents()","abstract":"

    Clears all current event timers.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC15clearTimedEvent5eventySS_tF":{"name":"clearTimedEvent(event:)","abstract":"

    Clears the event timer for the named event.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC22currentSuperPropertiesSDySSypGyF":{"name":"currentSuperProperties()","abstract":"

    Returns the currently set super properties.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC20clearSuperPropertiesyyF":{"name":"clearSuperProperties()","abstract":"

    Clears all currently set super properties.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC23registerSuperPropertiesyySDySSAA0A4Type_pGF":{"name":"registerSuperProperties(_:)","abstract":"

    Registers super properties, overwriting ones that have already been set.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC27registerSuperPropertiesOnce_12defaultValueySDySSAA0A4Type_pG_AaF_pSgtF":{"name":"registerSuperPropertiesOnce(_:defaultValue:)","abstract":"

    Registers super properties without overwriting ones that have already been set,","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC23unregisterSuperPropertyyySSF":{"name":"unregisterSuperProperty(_:)","abstract":"

    Removes a previously registered super property.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8setGroup8groupKey0E2IDySS_AA0A4Type_ptF":{"name":"setGroup(groupKey:groupID:)","abstract":"

    Convenience method to set a single group the user belongs to.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8setGroup8groupKey0E3IDsySS_SayAA0A4Type_pGtF":{"name":"setGroup(groupKey:groupIDs:)","abstract":"

    Set the groups this user belongs to.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC8addGroup8groupKey0E2IDySS_AA0A4Type_ptF":{"name":"addGroup(groupKey:groupID:)","abstract":"

    Add a group to this user’s membership for a particular group key

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC11removeGroup8groupKey0E2IDySS_AA0A4Type_ptF":{"name":"removeGroup(groupKey:groupID:)","abstract":"

    Remove a group from this user’s membership for a particular group key

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC14optOutTrackingyyF":{"name":"optOutTracking()","abstract":"

    Opt out tracking.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC13optInTracking10distinctId10propertiesySSSg_SDySSAA0A4Type_pGSgtF":{"name":"optInTracking(distinctId:properties:)","abstract":"

    Opt in tracking.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC19hasOptedOutTrackingSbyF":{"name":"hasOptedOutTracking()","abstract":"

    Returns if the current user has opted out tracking.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC15joinExperiments8callbackyyycSg_tF":{"name":"joinExperiments(callback:)","abstract":"

    Join any experiments (A/B tests) that are available for the current user.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16showNotificationyyF":{"name":"showNotification()","abstract":"

    Shows a notification if one is available.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16showNotification4typeySS_tF":{"name":"showNotification(type:)","abstract":"

    Shows a notification with the given type if one is available.

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC16showNotification2IDySi_tF":{"name":"showNotification(ID:)","abstract":"

    Shows a notification with the given ID

    ","parent_name":"MixpanelInstance"},"Classes/MixpanelInstance.html#/s:8Mixpanel0A8InstanceC24fetchNotificationPayload10completionyySDySSyXlGSgc_tF":{"name":"fetchNotificationPayload(completion:)","abstract":"

    Returns the payload of a notification if available

    ","parent_name":"MixpanelInstance"},"Classes/Mixpanel.html#/s:8MixpanelAAC10initialize5token13launchOptions13flushInterval12instanceName21automaticPushTracking06optOutL9ByDefaultAA0A8InstanceCSS_SDySo019UIApplicationLaunchE3KeyaypGSgSdSSS2btFZ":{"name":"initialize(token:launchOptions:flushInterval:instanceName:automaticPushTracking:optOutTrackingByDefault:)","abstract":"

    Initializes an instance of the API with the given project token.

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/initialize(token:flushInterval:instanceName:optOutTrackingByDefault:)":{"name":"initialize(token:flushInterval:instanceName:optOutTrackingByDefault:)","abstract":"

    Initializes an instance of the API with the given project token (MAC OS ONLY).

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/s:8MixpanelAAC11getInstance4nameAA0aC0CSgSS_tFZ":{"name":"getInstance(name:)","abstract":"

    Gets the mixpanel instance with the given name

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/s:8MixpanelAAC12mainInstanceAA0aC0CyFZ":{"name":"mainInstance()","abstract":"

    Returns the main instance that was initialized.

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/s:8MixpanelAAC15setMainInstance4nameySS_tFZ":{"name":"setMainInstance(name:)","abstract":"

    Sets the main instance based on the instance name

    ","parent_name":"Mixpanel"},"Classes/Mixpanel.html#/s:8MixpanelAAC14removeInstance4nameySS_tFZ":{"name":"removeInstance(name:)","abstract":"

    Removes an unneeded Mixpanel instance based on its name

    ","parent_name":"Mixpanel"},"Classes/Group.html#/s:8Mixpanel5GroupC3set10propertiesySDySSAA0A4Type_pG_tF":{"name":"set(properties:)","abstract":"

    Sets properties on this group.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC3set8property2toySS_AA0A4Type_ptF":{"name":"set(property:to:)","abstract":"

    Convenience method for setting a single property in Mixpanel Groups.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC7setOnce10propertiesySDySSAA0A4Type_pG_tF":{"name":"setOnce(properties:)","abstract":"

    Sets properties on the current Mixpanel Group, but doesn’t overwrite if","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC5unset8propertyySS_tF":{"name":"unset(property:)","abstract":"

    Remove a property and its value from a group’s profile in Mixpanel Groups.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC6remove3key5valueySS_AA0A4Type_ptF":{"name":"remove(key:value:)","abstract":"

    Removes list properties.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC5union3key6valuesySS_SayAA0A4Type_pGtF":{"name":"union(key:values:)","abstract":"

    Union list properties.

    ","parent_name":"Group"},"Classes/Group.html#/s:8Mixpanel5GroupC06deleteB0yyF":{"name":"deleteGroup()","abstract":"

    Delete group’s record from Mixpanel Groups.

    ","parent_name":"Group"},"Classes/Group.html":{"name":"Group","abstract":"

    Access to the Mixpanel Groups API, available through the getGroup function from"},"Classes/Mixpanel.html":{"name":"Mixpanel","abstract":"

    The primary class for integrating Mixpanel with your app.

    "},"Classes/MixpanelInstance.html":{"name":"MixpanelInstance","abstract":"

    The class that represents the Mixpanel Instance

    "},"Classes/MixpanelNotificationServiceExtension.html":{"name":"MixpanelNotificationServiceExtension","abstract":"

    Undocumented

    "},"Classes/People.html":{"name":"People","abstract":"

    Access to the Mixpanel People API, available as an accessible variable from"},"Classes/MixpanelPushNotifications.html":{"name":"MixpanelPushNotifications","abstract":"

    Undocumented

    "},"Classes.html#/s:8Mixpanel10TweakStoreC":{"name":"TweakStore","abstract":"

    Looks up the persisted state for tweaks.

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Enums.html":{"name":"Enumerations","abstract":"

    The following enumerations are available globally.

    "},"Extensions.html":{"name":"Extensions","abstract":"

    The following extensions are available globally.

    "},"Functions.html":{"name":"Functions","abstract":"

    The following functions are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Structs.html":{"name":"Structures","abstract":"

    The following structures are available globally.

    "},"Typealiases.html":{"name":"Type Aliases","abstract":"

    The following type aliases are available globally.

    "}} \ No newline at end of file diff --git a/docs/undocumented.json b/docs/undocumented.json index 1e31bd6a..75baf9b9 100644 --- a/docs/undocumented.json +++ b/docs/undocumented.json @@ -9,7 +9,7 @@ }, { "file": "/Users/zihejia/Documents/Projects/Develop/mixpanel-swift/Sources/MixpanelInstance.swift", - "line": 1296, + "line": 1335, "symbol": "MixpanelInstance.getGroup(groupKey:groupID:)", "symbol_kind": "source.lang.swift.decl.function.method.instance", "warning": "undocumented"