The value I am testing with is: prefixa:rxcj7sdek1n7mbybiibxr4w09w
hasValidFormat
keeps returning false when I expect it to return true.
export function isValidValue(value: unknown): value is Value {
if (typeof value !== 'string') {
return false;
}
const validPrefixes = Object.values(ValidPrefix);
const hasValidPrefix = validPrefixes.some(prefix => value.startsWith(prefix));
const hasValidFormat = /^[\w]+:[0-9a-f]{26}$/.test(value);
// Add console logs for debugging
console.log('the value is:', value);
console.log('hasValidPrefix:', hasValidPrefix);
console.log('hasValidFormat:', hasValidFormat);
return hasValidPrefix && hasValidFormat;
}
// Valid Prefix
export enum ValidPrefix {
PREFIXA = 'prefixa',
PREFIXB = 'prefixa'
}