summaryrefslogtreecommitdiff
path: root/includes/external/addressbook/node_modules/validator/lib/isMagnetURI.js
diff options
context:
space:
mode:
Diffstat (limited to 'includes/external/addressbook/node_modules/validator/lib/isMagnetURI.js')
-rw-r--r--includes/external/addressbook/node_modules/validator/lib/isMagnetURI.js25
1 files changed, 25 insertions, 0 deletions
diff --git a/includes/external/addressbook/node_modules/validator/lib/isMagnetURI.js b/includes/external/addressbook/node_modules/validator/lib/isMagnetURI.js
new file mode 100644
index 0000000..decf661
--- /dev/null
+++ b/includes/external/addressbook/node_modules/validator/lib/isMagnetURI.js
@@ -0,0 +1,25 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = isMagnetURI;
+
+var _assertString = _interopRequireDefault(require("./util/assertString"));
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var magnetURIComponent = /(?:^magnet:\?|[^?&]&)xt(?:\.1)?=urn:(?:(?:aich|bitprint|btih|ed2k|ed2khash|kzhash|md5|sha1|tree:tiger):[a-z0-9]{32}(?:[a-z0-9]{8})?|btmh:1220[a-z0-9]{64})(?:$|&)/i;
+
+function isMagnetURI(url) {
+ (0, _assertString.default)(url);
+
+ if (url.indexOf('magnet:?') !== 0) {
+ return false;
+ }
+
+ return magnetURIComponent.test(url);
+}
+
+module.exports = exports.default;
+module.exports.default = exports.default; \ No newline at end of file