@@ -22,6 +22,8 @@ import {
22
22
binaryToBuffer ,
23
23
bufferToFloat64Array ,
24
24
bufferToFloat32Array ,
25
+ isEqualBuffers ,
26
+ UTF8ToBuffer ,
25
27
} from 'uiSrc/utils'
26
28
import { reSerializeJSON } from 'uiSrc/utils/formatters/json'
27
29
@@ -107,13 +109,18 @@ const formattingBuffer = (
107
109
}
108
110
}
109
111
case KeyValueFormat . Vector32Bit : {
112
+ const valueUTF = bufferToUTF8 ( reply )
110
113
try {
114
+ if ( isEqualBuffers ( reply , UTF8ToBuffer ( valueUTF ) ) ) {
115
+ return { value : valueUTF , isValid : false }
116
+ }
117
+
111
118
const vector = Array . from ( bufferToFloat32Array ( reply . data as Uint8Array ) )
112
119
const value = JSONBigInt . stringify ( vector )
113
120
114
121
return JSONViewer ( { value, useNativeBigInt : false , ...props } )
115
122
} catch ( e ) {
116
- return { value : bufferToUTF8 ( reply ) , isValid : false }
123
+ return { value : valueUTF , isValid : false }
117
124
}
118
125
}
119
126
case KeyValueFormat . Vector64Bit : {
@@ -170,8 +177,8 @@ const bufferToSerializedFormat = (
170
177
case KeyValueFormat . HEX : return bufferToHex ( value )
171
178
case KeyValueFormat . Binary : return bufferToBinary ( value )
172
179
case KeyValueFormat . JSON : return reSerializeJSON ( bufferToUTF8 ( value ) , space )
173
- case KeyValueFormat . Vector32Bit : return bufferToFloat32Array ( value . data as Uint8Array )
174
- case KeyValueFormat . Vector64Bit : return bufferToFloat64Array ( value . data as Uint8Array )
180
+ case KeyValueFormat . Vector32Bit : return bufferToFloat32Array ( value . data as Uint8Array ) as any
181
+ case KeyValueFormat . Vector64Bit : return bufferToFloat64Array ( value . data as Uint8Array ) as any
175
182
case KeyValueFormat . Msgpack : {
176
183
try {
177
184
const decoded = decode ( Uint8Array . from ( value . data ) )
0 commit comments