summaryrefslogtreecommitdiff
path: root/includes/youtrack/node_modules/axios/lib/helpers/isAbsoluteURL.js
blob: 4747a457672a59d2b18e17bbb0054f55adefce1b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
'use strict';

/**
 * Determines whether the specified URL is absolute
 *
 * @param {string} url The URL to test
 *
 * @returns {boolean} True if the specified URL is absolute, otherwise false
 */
export default function isAbsoluteURL(url) {
  // A URL is considered absolute if it begins with "<scheme>://" or "//" (protocol-relative URL).
  // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed
  // by any combination of letters, digits, plus, period, or hyphen.
  return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url);
}