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