Files
flipper/iOS/Plugins/FlipperKitLayoutPlugin/FlipperKitLayoutPlugin/SKSearchResultNode.m
Pritesh Nandgaonkar ba7b43a547 Rename SonarKitLayoutPlugin to FlipperKitLayoutPlugin
Summary: Renames SonarKitLayoutPlugin to FlipperKitLayoutPlugin

Reviewed By: passy

Differential Revision: D9949785

fbshipit-source-id: 8cfde4dfad3e34038d2f66f0ce4393db9d83ef60
2018-09-20 04:45:35 -07:00

51 lines
1.2 KiB
Objective-C

// Copyright 2004-present Facebook. All Rights Reserved.
#import "SKSearchResultNode.h"
@implementation SKSearchResultNode {
NSString *_nodeId;
BOOL _isMatch;
NSDictionary *_element;
NSArray<SKSearchResultNode *> *_children;
}
- (instancetype)initWithNode:(NSString *)nodeId
asMatch:(BOOL)isMatch
withElement:(NSDictionary *)element
andChildren:(NSArray<SKSearchResultNode *> *)children {
self = [super init];
if (self) {
_nodeId = nodeId;
_isMatch = isMatch;
_element = element;
_children = children;
}
return self;
}
- (NSDictionary *)toNSDictionary {
if (_element == nil) {
return nil;
}
NSMutableArray<NSDictionary *> *childArray;
if (_children) {
childArray = [NSMutableArray new];
for (SKSearchResultNode *child in _children) {
NSDictionary *childDict = [child toNSDictionary];
if (childDict) {
[childArray addObject:childDict];
}
}
} else {
childArray = nil;
}
return @{
@"id": _nodeId,
@"isMatch": @(_isMatch),
@"element": _element,
@"children": childArray ?: [NSNull null]
};
}
@end