Skip to content

Commit b6eb761

Browse files
authored
Merge pull request #1696 from dombartenope/addTag-type-fix
Add tag type fix
2 parents 8de8c15 + 37a4128 commit b6eb761

File tree

2 files changed

+23
-3
lines changed

2 files changed

+23
-3
lines changed

ios/RCTOneSignal/RCTOneSignalEventEmitter.m

+1-1
Original file line numberDiff line numberDiff line change
@@ -352,7 +352,7 @@ + (void)sendEventWithName:(NSString *)name withBody:(NSDictionary *)body {
352352
[OneSignal.User removeSms:smsNumber];
353353
}
354354

355-
RCT_EXPORT_METHOD(addTag:(NSString *)key value:(NSString*)value) {
355+
RCT_EXPORT_METHOD(addTag:(NSString *)key value:(id)value) {
356356
[OneSignal.User addTagWithKey:key value:value];
357357
}
358358

src/index.ts

+22-2
Original file line numberDiff line numberDiff line change
@@ -433,11 +433,19 @@ export namespace OneSignal {
433433
export function addTag(key: string, value: string) {
434434
if (!isNativeModuleLoaded(RNOneSignal)) return;
435435

436-
if (!key || (!value && value !== '')) {
437-
console.error('OneSignal: sendTag: must include a key and a value');
436+
if (!key || value === undefined || value === null) {
437+
console.error('OneSignal: addTag: must include a key and a value');
438438
return;
439439
}
440440

441+
// forces values to be string types
442+
if (typeof value !== 'string') {
443+
console.warn(
444+
'OneSignal: addTag: tag value must be of type string; attempting to convert',
445+
);
446+
value = String(value);
447+
}
448+
441449
RNOneSignal.addTag(key, value);
442450
}
443451

@@ -456,6 +464,18 @@ export namespace OneSignal {
456464
return;
457465
}
458466

467+
const convertedTags = tags as { [key: string]: any };
468+
Object.keys(tags).forEach(function (key) {
469+
if (typeof convertedTags[key] !== 'string') {
470+
console.warn(
471+
'OneSignal: addTags: tag value for key ' +
472+
key +
473+
' must be of type string; attempting to convert',
474+
);
475+
convertedTags[key] = String(convertedTags[key]);
476+
}
477+
});
478+
459479
RNOneSignal.addTags(tags);
460480
}
461481

0 commit comments

Comments
 (0)