detective-stylus
Version:
Get the dependencies of a Stylus file
27 lines (21 loc) • 618 B
JavaScript
;
/**
* Extract the @import/@require statements from a given stylus file's content
*
* @param {String} content
* @return {String[]}
*/
module.exports = function(content) {
if (content === undefined) throw new Error('content not given');
if (typeof content !== 'string') throw new Error('content is not a string');
const importRegex = /@(?:import|require)\s['"](.*)['"](?:\.styl)?/g;
const dependencies = [];
let matches = null;
do {
matches = importRegex.exec(content);
if (matches) {
dependencies.push(matches[1]);
}
} while (matches);
return dependencies;
};