PHP WebShell
Текущая директория: /usr/lib/node_modules/bitgo/node_modules/@vechain/sdk-core/src/vcdm/encoding/rlp/helpers
Просмотр файла: hexblobkind.ts
import { InvalidRLP } from '@vechain/sdk-errors';
import { Hex } from '../../../Hex';
import { type RLPInput } from '../types';
/**
* Validates if the input is a proper hex string for HexBlobKind.
*
* @param data - The input data to validate.
* @param context - Additional context for error handling.
* @throws {InvalidRLP}
*/
const assertValidHexBlobKindData = (data: RLPInput, context: string): void => {
if (typeof data !== 'string') {
throw new InvalidRLP(
'assertValidHexBlobKindData()',
`Validation error: Input must be a string.`,
{
context,
data: {
data
}
}
);
}
// Check if data is a valid hex string with '0x' prefix.
if (!Hex.isValid(data)) {
throw new InvalidRLP(
'assertValidHexBlobKindData()',
`Validation error: Input must be a valid hex string with a '0x' prefix.`,
{
context,
data: {
data
}
}
);
}
// Ensure the hex string length is even.
if (data.length % 2 !== 0) {
throw new InvalidRLP(
'assertValidHexBlobKindData()',
`Validation error: Hex string must have an even length.`,
{
context,
data: {
data
}
}
);
}
};
export { assertValidHexBlobKindData };
Выполнить команду
Для локальной разработки. Не используйте в интернете!