10 lines
3.2 KiB
JavaScript
10 lines
3.2 KiB
JavaScript
// Metro module 1468 (f1469).
|
|
const concat = HermesInternal.concat;
|
|
const r29 = "){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4\n)(%[0-9a-zA-Z]{1,})? // %eth0 %1\n";
|
|
const r24 = "(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}";
|
|
let c1183_0 = concat.call("\n(\n(?:", "[a-fA-F\\d]{1,4}", ":){7}(?:", "[a-fA-F\\d]{1,4}", "|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8\n(?:", "[a-fA-F\\d]{1,4}", ":){6}(?:", r24, "|:", "[a-fA-F\\d]{1,4}", "|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4\n(?:", "[a-fA-F\\d]{1,4}", ":){5}(?::", r24, "|(:", "[a-fA-F\\d]{1,4}", "){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4\n(?:", "[a-fA-F\\d]{1,4}", ":){4}(?:(:", "[a-fA-F\\d]{1,4}", "){0,1}:", r24, "|(:", "[a-fA-F\\d]{1,4}", "){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4\n(?:", "[a-fA-F\\d]{1,4}", ":){3}(?:(:", "[a-fA-F\\d]{1,4}", "){0,2}:", r24, "|(:", "[a-fA-F\\d]{1,4}", "){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4\n(?:", "[a-fA-F\\d]{1,4}", ":){2}(?:(:", "[a-fA-F\\d]{1,4}", "){0,3}:", r24, "|(:", "[a-fA-F\\d]{1,4}", "){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4\n(?:", "[a-fA-F\\d]{1,4}", ":){1}(?:(:", "[a-fA-F\\d]{1,4}", "){0,4}:", r24, "|(:", "[a-fA-F\\d]{1,4}", "){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4\n(?::((?::", "[a-fA-F\\d]{1,4}", "){0,5}:", r24, "|(?::", "[a-fA-F\\d]{1,4}", r29).replace(/\s*\/\/.*$/gm, "").replace(/\n/g, "").trim();
|
|
const ip = (a0) => a0 && a0.exact ? new RegExp(`(?:^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}\$)|(?:^${c1183_0}\$)`) : new RegExp(`(?:${a0 ? a0.includeBoundaries ? `(?:(?<=\\s|^)(?=[a-fA-F\\d:])|(?<=[a-fA-F\\d:])(?=\\s|\$))` : "" : ""}(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}${a0 ? a0.includeBoundaries ? `(?:(?<=\\s|^)(?=[a-fA-F\\d:])|(?<=[a-fA-F\\d:])(?=\\s|\$))` : "" : ""})|(?:${a0 ? a0.includeBoundaries ? `(?:(?<=\\s|^)(?=[a-fA-F\\d:])|(?<=[a-fA-F\\d:])(?=\\s|\$))` : "" : ""}${c1183_0}${a0 ? a0.includeBoundaries ? `(?:(?<=\\s|^)(?=[a-fA-F\\d:])|(?<=[a-fA-F\\d:])(?=\\s|\$))` : "" : ""})`, "g");
|
|
ip.v4 = (a0) => a0 && a0.exact ? new RegExp(`^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}\$`) : new RegExp(`${a0 ? a0.includeBoundaries ? `(?:(?<=\\s|^)(?=[a-fA-F\\d:])|(?<=[a-fA-F\\d:])(?=\\s|\$))` : "" : ""}(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}${a0 ? a0.includeBoundaries ? `(?:(?<=\\s|^)(?=[a-fA-F\\d:])|(?<=[a-fA-F\\d:])(?=\\s|\$))` : "" : ""}`, "g");
|
|
ip.v6 = (a0) => a0 && a0.exact ? new RegExp(`^${c1183_0}\$`) : new RegExp(`${a0 ? a0.includeBoundaries ? `(?:(?<=\\s|^)(?=[a-fA-F\\d:])|(?<=[a-fA-F\\d:])(?=\\s|\$))` : "" : ""}${c1183_0}${a0 ? a0.includeBoundaries ? `(?:(?<=\\s|^)(?=[a-fA-F\\d:])|(?<=[a-fA-F\\d:])(?=\\s|\$))` : "" : ""}`, "g");
|
|
module.exports = ip;
|