diff options
Diffstat (limited to 'includes/external/addressbook/node_modules/validator/lib/isBase32.js')
-rw-r--r-- | includes/external/addressbook/node_modules/validator/lib/isBase32.js | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/includes/external/addressbook/node_modules/validator/lib/isBase32.js b/includes/external/addressbook/node_modules/validator/lib/isBase32.js new file mode 100644 index 0000000..8c1f30d --- /dev/null +++ b/includes/external/addressbook/node_modules/validator/lib/isBase32.js @@ -0,0 +1,38 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = isBase32; + +var _assertString = _interopRequireDefault(require("./util/assertString")); + +var _merge = _interopRequireDefault(require("./util/merge")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +var base32 = /^[A-Z2-7]+=*$/; +var crockfordBase32 = /^[A-HJKMNP-TV-Z0-9]+$/; +var defaultBase32Options = { + crockford: false +}; + +function isBase32(str, options) { + (0, _assertString.default)(str); + options = (0, _merge.default)(options, defaultBase32Options); + + if (options.crockford) { + return crockfordBase32.test(str); + } + + var len = str.length; + + if (len % 8 === 0 && base32.test(str)) { + return true; + } + + return false; +} + +module.exports = exports.default; +module.exports.default = exports.default;
\ No newline at end of file |