From 83354b2b88218090988dd6e526b0a2505b57e0f1 Mon Sep 17 00:00:00 2001 From: RaindropsSys Date: Thu, 6 Apr 2023 22:18:28 +0200 Subject: Updated 5 files and added 1110 files (automated) --- .../node_modules/validator/lib/isMACAddress.js | 58 ++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 includes/external/addressbook/node_modules/validator/lib/isMACAddress.js (limited to 'includes/external/addressbook/node_modules/validator/lib/isMACAddress.js') diff --git a/includes/external/addressbook/node_modules/validator/lib/isMACAddress.js b/includes/external/addressbook/node_modules/validator/lib/isMACAddress.js new file mode 100644 index 0000000..470f6c0 --- /dev/null +++ b/includes/external/addressbook/node_modules/validator/lib/isMACAddress.js @@ -0,0 +1,58 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = isMACAddress; + +var _assertString = _interopRequireDefault(require("./util/assertString")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +var macAddress48 = /^(?:[0-9a-fA-F]{2}([-:\s]))([0-9a-fA-F]{2}\1){4}([0-9a-fA-F]{2})$/; +var macAddress48NoSeparators = /^([0-9a-fA-F]){12}$/; +var macAddress48WithDots = /^([0-9a-fA-F]{4}\.){2}([0-9a-fA-F]{4})$/; +var macAddress64 = /^(?:[0-9a-fA-F]{2}([-:\s]))([0-9a-fA-F]{2}\1){6}([0-9a-fA-F]{2})$/; +var macAddress64NoSeparators = /^([0-9a-fA-F]){16}$/; +var macAddress64WithDots = /^([0-9a-fA-F]{4}\.){3}([0-9a-fA-F]{4})$/; + +function isMACAddress(str, options) { + (0, _assertString.default)(str); + + if (options !== null && options !== void 0 && options.eui) { + options.eui = String(options.eui); + } + /** + * @deprecated `no_colons` TODO: remove it in the next major + */ + + + if (options !== null && options !== void 0 && options.no_colons || options !== null && options !== void 0 && options.no_separators) { + if (options.eui === '48') { + return macAddress48NoSeparators.test(str); + } + + if (options.eui === '64') { + return macAddress64NoSeparators.test(str); + } + + return macAddress48NoSeparators.test(str) || macAddress64NoSeparators.test(str); + } + + if ((options === null || options === void 0 ? void 0 : options.eui) === '48') { + return macAddress48.test(str) || macAddress48WithDots.test(str); + } + + if ((options === null || options === void 0 ? void 0 : options.eui) === '64') { + return macAddress64.test(str) || macAddress64WithDots.test(str); + } + + return isMACAddress(str, { + eui: '48' + }) || isMACAddress(str, { + eui: '64' + }); +} + +module.exports = exports.default; +module.exports.default = exports.default; \ No newline at end of file -- cgit