Updates
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
import validateIpv4 from "./validate-ipv4";
|
||||
|
||||
type Params = {
|
||||
value?: string;
|
||||
};
|
||||
|
||||
export default function validateIpv4Cidr({ value }: Params) {
|
||||
if (!value) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const [ip, prefix, extra] = value.split("/");
|
||||
|
||||
if (extra) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!validateIpv4({ ip })) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (prefix == undefined) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!/^\d{1,2}$/.test(prefix)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const prefix_value = Number(prefix);
|
||||
|
||||
return prefix_value >= 0 && prefix_value <= 32 && String(prefix_value) == prefix;
|
||||
}
|
||||
Reference in New Issue
Block a user