Skip to content

Commit d5c8e67

Browse files
committed
delegate to default breadcrumb converter
1 parent e725aa9 commit d5c8e67

File tree

2 files changed

+24
-9
lines changed

2 files changed

+24
-9
lines changed

ios/RNSentryBreadcrumbConverter.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
@interface RNSentryBreadcrumbConverter
66
: NSObject <SentryReplayBreadcrumbConverter>
77

8+
- (instancetype _Nonnull)init;
9+
810
- (NSArray<SentryRRWebEvent *> *_Nonnull)
911
convertWithBreadcrumbs:(NSArray<SentryBreadcrumb *> *_Nonnull)breadcrumbs
1012
from:(NSDate *_Nonnull)from

ios/RNSentryBreadcrumbConverter.m

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,41 @@
11
#import "RNSentryBreadcrumbConverter.h"
22

33
@implementation RNSentryBreadcrumbConverter {
4+
SentrySRDefaultBreadcrumbConverter *defaultConverter;
5+
}
6+
7+
- (instancetype _Nonnull)init {
8+
if (self = [super init]) {
9+
self->defaultConverter = [[SentrySRDefaultBreadcrumbConverter alloc] init];
10+
}
11+
return self;
412
}
513

614
- (NSArray<SentryRRWebEvent *> *_Nonnull)
715
convertWithBreadcrumbs:(NSArray<SentryBreadcrumb *> *_Nonnull)breadcrumbs
816
from:(NSDate *_Nonnull)from
917
until:(NSDate *_Nonnull)until {
1018
NSMutableArray<SentryRRWebEvent *> *outBreadcrumbs = [NSMutableArray array];
19+
SentryRRWebEvent *rrwebBreadcrumb;
1120
for (SentryBreadcrumb *breadcrumb in breadcrumbs) {
1221
if (breadcrumb.timestamp &&
1322
[breadcrumb.timestamp compare:from] != NSOrderedAscending &&
1423
[breadcrumb.timestamp compare:until] != NSOrderedDescending) {
1524
if ([breadcrumb.category isEqualToString:@"touch"]) {
16-
SentryRRWebBreadcrumbEvent *rrwebBreadcrumb =
17-
[[SentryRRWebBreadcrumbEvent alloc]
18-
initWithTimestamp:breadcrumb.timestamp
19-
category:@"ui.tap"
20-
message:breadcrumb.data ? [breadcrumb.data valueForKey:@"target"] : nil
21-
level:breadcrumb.level
22-
data:breadcrumb.data];
23-
[outBreadcrumbs addObject:rrwebBreadcrumb];
25+
rrwebBreadcrumb = [[SentryRRWebBreadcrumbEvent alloc]
26+
initWithTimestamp:breadcrumb.timestamp
27+
category:@"ui.tap"
28+
message:breadcrumb.data
29+
? [breadcrumb.data valueForKey:@"target"]
30+
: nil
31+
level:breadcrumb.level
32+
data:breadcrumb.data];
2433
} else {
25-
// TODO delegate to the default breadcrumb converter
34+
rrwebBreadcrumb = [self->defaultConverter convertFrom:breadcrumb];
35+
}
36+
37+
if (rrwebBreadcrumb) {
38+
[outBreadcrumbs addObject:rrwebBreadcrumb];
2639
}
2740
}
2841
}

0 commit comments

Comments
 (0)