1 | "use strict";
|
2 |
|
3 | const ipRegex = require("ip-regex");
|
4 |
|
5 | const v4 = ipRegex.v4().source + "\\/(3[0-2]|[12]?[0-9])";
|
6 | const v6 = ipRegex.v6().source + "\\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])";
|
7 |
|
8 | const cidr = module.exports = opts => opts && opts.exact ?
|
9 | new RegExp(`(?:^${v4}$)|(?:^${v6}$)`) :
|
10 | new RegExp(`(?:${v4})|(?:${v6})`, "g");
|
11 |
|
12 | cidr.v4 = opts => opts && opts.exact ? new RegExp(`^${v4}$`) : new RegExp(v4, "g");
|
13 | cidr.v6 = opts => opts && opts.exact ? new RegExp(`^${v6}$`) : new RegExp(v6, "g");
|