@yoroi/common
Version:
The Common package of Yoroi SDK
36 lines (34 loc) • 1.28 kB
JavaScript
import { isArrayOfType, isString } from './parsers';
/**
* Returns a string representation of the given value, if possible.
* @param {string | string[] | undefined | null} value - The value to convert to a string.
* @returns {string} A string representation of the value, or undefined if not possible.
*/
export function asConcatenedString(value) {
if (value === null || value === undefined) return;
if (isString(value)) return value;
if (isArrayOfType(value, isString)) return value.join('');
return; // TS
}
export function truncateString(_ref) {
let {
value,
maxLength,
separator = '...'
} = _ref;
if (value.length <= maxLength) return value;
const partLength = Math.floor((maxLength - separator.length) / 2);
const start = value.substring(0, partLength);
const end = value.substring(value.length - partLength);
return `${start}${separator}${end}`;
}
export function hexToAscii(hex) {
if (hex === '' || !/^[0-9a-fA-F]*$/.test(hex) || hex.length % 2 !== 0) {
return '';
}
return hex.match(/.{1,2}/g).map(byte => String.fromCharCode(parseInt(byte, 16))).join('');
}
export function asciiToHex(str) {
return Array.from(str).map(char => char.charCodeAt(0).toString(16).padStart(2, '0')).join('');
}
//# sourceMappingURL=strings.js.map