isMagnetURI.js 721 B

12345678910111213141516171819202122232425
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.default = isMagnetURI;
  6. var _assertString = _interopRequireDefault(require("./util/assertString"));
  7. function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  8. 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;
  9. function isMagnetURI(url) {
  10. (0, _assertString.default)(url);
  11. if (url.indexOf('magnet:?') !== 0) {
  12. return false;
  13. }
  14. return magnetURIComponent.test(url);
  15. }
  16. module.exports = exports.default;
  17. module.exports.default = exports.default;