Skip to content

Commit f4abbd9

Browse files
committed
Fix 0 values
1 parent a29c362 commit f4abbd9

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

src/senML/index.ts

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,18 @@ function isPropertyValue(message: SenML | string[]): message is SenML {
77
return !!(message as SenML).n;
88
}
99

10+
function isNil<T>(v: T): boolean {
11+
return v !== null && v !== undefined;
12+
}
13+
14+
function takeFrom(...values: CloudMessageValue[]): CloudMessageValue {
15+
return values.find((v) => !isNil(v));
16+
}
17+
1018
function valueFrom(message: SenML | string[]): CloudMessageValue {
11-
return isPropertyValue(message) ? message.v || message.vs || message.vb : message[2] || message[3] || message[4];
19+
return isPropertyValue(message)
20+
? takeFrom(message.v, message.vs, message.vb)
21+
: takeFrom(message[2], message[3], message[4]);
1222
}
1323

1424
function nameFrom(property: SenML | string[]): string {

0 commit comments

Comments
 (0)