diff --git a/React/Base/RCTLog.h b/React/Base/RCTLog.h index 3477b48c616..c00716b3af2 100644 --- a/React/Base/RCTLog.h +++ b/React/Base/RCTLog.h @@ -78,6 +78,16 @@ RCT_EXTERN NSString *RCTFormatLog( NSString *message ); +/** + * A method to generate a string RCTLogLevel + */ +RCT_EXTERN NSString *RCTFormatLogLevel(RCTLogLevel); + +/** + * A method to generate a string from a RCTLogSource + */ +RCT_EXTERN NSString *RCTFormatLogSource(RCTLogSource); + /** * The default logging function used by RCTLogXX. */ diff --git a/React/Base/RCTLog.mm b/React/Base/RCTLog.mm index c6d08f6f131..3846ed5c4a2 100644 --- a/React/Base/RCTLog.mm +++ b/React/Base/RCTLog.mm @@ -162,6 +162,25 @@ NSString *RCTFormatLog( return log; } +NSString *RCTFormatLogLevel(RCTLogLevel level) +{ + NSDictionary *levelsToString = @{@(RCTLogLevelTrace) : @"trace", + @(RCTLogLevelInfo) : @"info", + @(RCTLogLevelWarning) : @"warning", + @(RCTLogLevelFatal) : @"fatal", + @(RCTLogLevelError) : @"error"}; + + return levelsToString[@(level)]; +} + +NSString *RCTFormatLogSource(RCTLogSource source) +{ + NSDictionary *sourcesToString = @{@(RCTLogSourceNative) : @"native", + @(RCTLogSourceJavaScript) : @"js"}; + + return sourcesToString[@(source)]; +} + static NSRegularExpression *nativeStackFrameRegex() { static dispatch_once_t onceToken;