From 11bed8ac7c4305ef25d759a9925aaadca4791b17 Mon Sep 17 00:00:00 2001 From: shaharyarsheikh Date: Mon, 22 Aug 2022 11:54:42 +0500 Subject: [PATCH 1/3] added sprintf function in utils and logging --- src/logger.tsx | 13 +++++-------- src/utils.tsx | 14 ++++++++++++++ 2 files changed, 19 insertions(+), 8 deletions(-) diff --git a/src/logger.tsx b/src/logger.tsx index a1f8e978..2f71d12b 100644 --- a/src/logger.tsx +++ b/src/logger.tsx @@ -15,23 +15,20 @@ */ import * as optimizely from '@optimizely/optimizely-sdk'; +import { sprintf } from './utils'; const logHandler = optimizely.logging.createLogger({ prefix: '[React-SDK]' }); export const logger = { warn: (msg: string, ...splat: any[]) => { - // @ts-ignore - return logHandler.log(optimizely.enums.LOG_LEVEL.WARNING, msg, ...splat); + return logHandler.log(optimizely.enums.LOG_LEVEL.WARNING, sprintf(msg, ...splat)); }, info: (msg: string, ...splat: any[]) => { - // @ts-ignore - return logHandler.log(optimizely.enums.LOG_LEVEL.INFO, msg, ...splat); + return logHandler.log(optimizely.enums.LOG_LEVEL.INFO, sprintf(msg, ...splat)); }, debug: (msg: string, ...splat: any[]) => { - // @ts-ignore - return logHandler.log(optimizely.enums.LOG_LEVEL.DEBUG, msg, ...splat); + return logHandler.log(optimizely.enums.LOG_LEVEL.DEBUG, sprintf(msg, ...splat)); }, error: (msg: string, ...splat: any[]) => { - // @ts-ignore - return logHandler.log(optimizely.enums.LOG_LEVEL.ERROR, msg, ...splat); + return logHandler.log(optimizely.enums.LOG_LEVEL.ERROR, sprintf(msg, ...splat)); }, }; diff --git a/src/utils.tsx b/src/utils.tsx index 2a32e5e0..de351ba9 100644 --- a/src/utils.tsx +++ b/src/utils.tsx @@ -145,3 +145,17 @@ export function createFailedDecision(flagKey: string, message: string, user: Use }; } +export function sprintf(format: string, ...args: any[]): string { + let i = 0; + return format.replace(/%s/g, () => { + const arg = args[i++]; + const type = typeof arg; + if (type === 'function') { + return arg(); + } else if (type === 'string') { + return arg; + } else { + return String(arg); + } + }); +} \ No newline at end of file From aed274ee02ef682d0846adb03880abf9ae82dda4 Mon Sep 17 00:00:00 2001 From: shaharyarsheikh Date: Mon, 22 Aug 2022 11:58:21 +0500 Subject: [PATCH 2/3] end with new line : fix --- src/logger.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/src/logger.tsx b/src/logger.tsx index 2f71d12b..8c5233fe 100644 --- a/src/logger.tsx +++ b/src/logger.tsx @@ -32,3 +32,4 @@ export const logger = { return logHandler.log(optimizely.enums.LOG_LEVEL.ERROR, sprintf(msg, ...splat)); }, }; + From ae25b9e98c281e31900964eff10c17eb4cd0c652 Mon Sep 17 00:00:00 2001 From: shaharyarsheikh Date: Mon, 22 Aug 2022 11:59:18 +0500 Subject: [PATCH 3/3] end with newline : fixed --- src/logger.tsx | 1 - src/utils.tsx | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/logger.tsx b/src/logger.tsx index 8c5233fe..2f71d12b 100644 --- a/src/logger.tsx +++ b/src/logger.tsx @@ -32,4 +32,3 @@ export const logger = { return logHandler.log(optimizely.enums.LOG_LEVEL.ERROR, sprintf(msg, ...splat)); }, }; - diff --git a/src/utils.tsx b/src/utils.tsx index de351ba9..da4b9a97 100644 --- a/src/utils.tsx +++ b/src/utils.tsx @@ -158,4 +158,4 @@ export function sprintf(format: string, ...args: any[]): string { return String(arg); } }); -} \ No newline at end of file +}