@metamask/keyring-utils
Version:
MetaMask Keyring utils
30 lines • 920 B
JavaScript
import { define } from "@metamask/superstruct";
import { definePattern } from "@metamask/utils";
/**
* UUIDv4 struct.
*/
export const UuidStruct = definePattern('UuidV4', /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/iu);
/**
* Account ID (UUIDv4).
*/
export const AccountIdStruct = UuidStruct; // Alias for better naming purposes.
/**
* Validates if a given value is a valid URL.
*
* @param value - The value to be validated.
* @returns A boolean indicating if the value is a valid URL.
*/
export const UrlStruct = define('Url', (value) => {
try {
const url = new URL(value);
return url.protocol === 'http:' || url.protocol === 'https:';
}
catch {
return false;
}
});
/**
* A string which contains a positive float number.
*/
export const StringNumberStruct = definePattern('StringNumber', /^\d+(\.\d+)?$/u);
//# sourceMappingURL=types.mjs.map