@@ -442,7 +442,7 @@ let maxRetryDelay = 30.0
442
442
return
443
443
}
444
444
445
- guard let queue = queue , let storageManager = config. storageManager else {
445
+ guard let queue, let storageManager = config. storageManager else {
446
446
return
447
447
}
448
448
let oldDistinctId = getDistinctId ( )
@@ -482,15 +482,15 @@ let maxRetryDelay = 30.0
482
482
public func capture( _ event: String ,
483
483
properties: [ String : Any ] ? = nil )
484
484
{
485
- capture ( event, properties: properties, userProperties: nil , userPropertiesSetOnce: nil , groups: nil )
485
+ capture ( event, distinctId : nil , properties: properties, userProperties: nil , userPropertiesSetOnce: nil , groups: nil )
486
486
}
487
487
488
488
@objc ( captureWithEvent: properties: userProperties: )
489
489
public func capture( _ event: String ,
490
490
properties: [ String : Any ] ? = nil ,
491
491
userProperties: [ String : Any ] ? = nil )
492
492
{
493
- capture ( event, properties: properties, userProperties: userProperties, userPropertiesSetOnce: nil , groups: nil )
493
+ capture ( event, distinctId : nil , properties: properties, userProperties: userProperties, userPropertiesSetOnce: nil , groups: nil )
494
494
}
495
495
496
496
@objc ( captureWithEvent: properties: userProperties: userPropertiesSetOnce: )
@@ -499,7 +499,7 @@ let maxRetryDelay = 30.0
499
499
userProperties: [ String : Any ] ? = nil ,
500
500
userPropertiesSetOnce: [ String : Any ] ? = nil )
501
501
{
502
- capture ( event, properties: properties, userProperties: userProperties, userPropertiesSetOnce: userPropertiesSetOnce, groups: nil )
502
+ capture ( event, distinctId : nil , properties: properties, userProperties: userProperties, userPropertiesSetOnce: userPropertiesSetOnce, groups: nil )
503
503
}
504
504
505
505
private func isOptOutState( ) -> Bool {
@@ -510,8 +510,9 @@ let maxRetryDelay = 30.0
510
510
return false
511
511
}
512
512
513
- @objc ( captureWithEvent: properties: userProperties: userPropertiesSetOnce: groups: )
513
+ @objc ( captureWithEvent: distinctId : properties: userProperties: userPropertiesSetOnce: groups: )
514
514
public func capture( _ event: String ,
515
+ distinctId: String ? = nil ,
515
516
properties: [ String : Any ] ? = nil ,
516
517
userProperties: [ String : Any ] ? = nil ,
517
518
userPropertiesSetOnce: [ String : Any ] ? = nil ,
@@ -525,7 +526,7 @@ let maxRetryDelay = 30.0
525
526
return
526
527
}
527
528
528
- guard let queue = queue else {
529
+ guard let queue else {
529
530
return
530
531
}
531
532
@@ -541,15 +542,15 @@ let maxRetryDelay = 30.0
541
542
}
542
543
}
543
544
544
- let distinctId = getDistinctId ( )
545
+ let eventDistinctId = distinctId ?? getDistinctId ( )
545
546
546
547
// if the user isn't identified but passed userProperties, userPropertiesSetOnce or groups,
547
548
// we should still enable person processing since this is intentional
548
549
if userProperties? . isEmpty == false || userPropertiesSetOnce? . isEmpty == false || groups? . isEmpty == false {
549
550
requirePersonProcessing ( )
550
551
}
551
552
552
- let properties = buildProperties ( distinctId: distinctId ,
553
+ let properties = buildProperties ( distinctId: eventDistinctId ,
553
554
properties: sanitizeDicionary ( properties) ,
554
555
userProperties: sanitizeDicionary ( userProperties) ,
555
556
userPropertiesSetOnce: sanitizeDicionary ( userPropertiesSetOnce) ,
@@ -559,13 +560,13 @@ let maxRetryDelay = 30.0
559
560
560
561
let posthogEvent = PostHogEvent (
561
562
event: event,
562
- distinctId: distinctId ,
563
+ distinctId: eventDistinctId ,
563
564
properties: sanitizedProperties
564
565
)
565
566
566
567
// Session Replay has its own queue
567
568
if snapshotEvent {
568
- guard let replayQueue = replayQueue else {
569
+ guard let replayQueue else {
569
570
return
570
571
}
571
572
replayQueue. add ( posthogEvent)
@@ -589,7 +590,7 @@ let maxRetryDelay = 30.0
589
590
return
590
591
}
591
592
592
- guard let queue = queue else {
593
+ guard let queue else {
593
594
return
594
595
}
595
596
@@ -629,7 +630,7 @@ let maxRetryDelay = 30.0
629
630
return
630
631
}
631
632
632
- guard let queue = queue else {
633
+ guard let queue else {
633
634
return
634
635
}
635
636
@@ -648,7 +649,7 @@ let maxRetryDelay = 30.0
648
649
}
649
650
650
651
private func groups( _ newGroups: [ String : String ] ) -> [ String : String ] {
651
- guard let storage = storage else {
652
+ guard let storage else {
652
653
return [ : ]
653
654
}
654
655
@@ -684,7 +685,7 @@ let maxRetryDelay = 30.0
684
685
return
685
686
}
686
687
687
- guard let queue = queue else {
688
+ guard let queue else {
688
689
return
689
690
}
690
691
@@ -747,7 +748,7 @@ let maxRetryDelay = 30.0
747
748
return
748
749
}
749
750
750
- guard let featureFlags = featureFlags , let storageManager = config. storageManager else {
751
+ guard let featureFlags, let storageManager = config. storageManager else {
751
752
return
752
753
}
753
754
@@ -768,7 +769,7 @@ let maxRetryDelay = 30.0
768
769
return nil
769
770
}
770
771
771
- guard let featureFlags = featureFlags else {
772
+ guard let featureFlags else {
772
773
return nil
773
774
}
774
775
@@ -786,7 +787,7 @@ let maxRetryDelay = 30.0
786
787
return false
787
788
}
788
789
789
- guard let featureFlags = featureFlags else {
790
+ guard let featureFlags else {
790
791
return false
791
792
}
792
793
@@ -804,7 +805,7 @@ let maxRetryDelay = 30.0
804
805
return nil
805
806
}
806
807
807
- guard let featureFlags = featureFlags else {
808
+ guard let featureFlags else {
808
809
return nil
809
810
}
810
811
0 commit comments