UNPKG

1.04 kBJavaScriptView Raw
1'use strict'
2
3var assign = require('lodash.assign')
4var cssRE = /\.css$/i
5var RegExpRE = /^\/(.*)\/(.*)$/
6
7function normalize (opts) {
8 opts = assign({}, opts)
9
10 if (typeof opts['auto-inject'] === 'undefined') {
11 opts['auto-inject'] = true
12 }
13
14 if (opts['no-auto-inject']) {
15 opts['auto-inject'] = false
16 delete opts['no-auto-inject']
17 }
18
19 if (opts.test) {
20 if (typeof opts.test === 'string') {
21 opts.test = stringToRegExp(opts.test)
22 }
23 } else {
24 opts.test = cssRE
25 }
26
27 return opts
28}
29
30function skipIt (fileName, opts) {
31 if (typeof opts.test === 'function') {
32 if (!opts.test(fileName)) {
33 return true
34 }
35 } else if (opts.test instanceof RegExp) {
36 if (!opts.test.test(fileName)) {
37 return true
38 }
39 }
40
41 return false
42}
43
44function stringToRegExp (str) {
45 var match = RegExpRE.exec(str)
46 if (!match) return
47
48 var re = match[1]
49 var flags = match[2]
50 return new RegExp(re, flags)
51}
52
53exports.normalize = normalize
54exports.skipIt = skipIt
55exports.stringToRegExp = stringToRegExp