var split = require('../utils/split'); var BRACE_PREFIX = /^\(/; var BRACE_SUFFIX = /\)$/; var IMPORT_PREFIX_PATTERN = /^@import/i; var QUOTE_PREFIX_PATTERN = /['"]\s{0,31}/; var QUOTE_SUFFIX_PATTERN = /\s{0,31}['"]/; var URL_PREFIX_PATTERN = /^url\(\s{0,31}/i; var URL_SUFFIX_PATTERN = /\s{0,31}\)/i; function extractImportUrlAndMedia(atRuleValue) { var uri; var mediaQuery; var normalized; var parts; normalized = atRuleValue .replace(IMPORT_PREFIX_PATTERN, '') .trim() .replace(URL_PREFIX_PATTERN, '(') .replace(URL_SUFFIX_PATTERN, ') ') .replace(QUOTE_PREFIX_PATTERN, '') .replace(QUOTE_SUFFIX_PATTERN, ''); parts = split(normalized, ' '); uri = parts[0] .replace(BRACE_PREFIX, '') .replace(BRACE_SUFFIX, ''); mediaQuery = parts.slice(1).join(' '); return [uri, mediaQuery]; } module.exports = extractImportUrlAndMedia;