You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
57 lines
1.2 KiB
57 lines
1.2 KiB
// Copyright 2014 Simon Lydell |
|
// X11 (“MIT”) Licensed. (See LICENSE.) |
|
|
|
void (function(root, factory) { |
|
if (typeof define === "function" && define.amd) { |
|
define(factory) |
|
} else if (typeof exports === "object") { |
|
module.exports = factory() |
|
} else { |
|
root.sourceMappingURL = factory() |
|
} |
|
}(this, function() { |
|
|
|
var innerRegex = /[#@] sourceMappingURL=([^\s'"]*)/ |
|
|
|
var regex = RegExp( |
|
"(?:" + |
|
"/\\*" + |
|
"(?:\\s*\r?\n(?://)?)?" + |
|
"(?:" + innerRegex.source + ")" + |
|
"\\s*" + |
|
"\\*/" + |
|
"|" + |
|
"//(?:" + innerRegex.source + ")" + |
|
")" + |
|
"\\s*" |
|
) |
|
|
|
return { |
|
|
|
regex: regex, |
|
_innerRegex: innerRegex, |
|
|
|
getFrom: function(code) { |
|
var match = code.match(regex) |
|
return (match ? match[1] || match[2] || "" : null) |
|
}, |
|
|
|
existsIn: function(code) { |
|
return regex.test(code) |
|
}, |
|
|
|
removeFrom: function(code) { |
|
return code.replace(regex, "") |
|
}, |
|
|
|
insertBefore: function(code, string) { |
|
var match = code.match(regex) |
|
if (match) { |
|
return code.slice(0, match.index) + string + code.slice(match.index) |
|
} else { |
|
return code + string |
|
} |
|
} |
|
} |
|
|
|
}));
|
|
|