1 | const _map = require('lodash.map');
|
2 | const _compact = require('lodash.compact');
|
3 |
|
4 | const rnewline = /\n/g;
|
5 | const rat = /_at_/g;
|
6 | const rfunction = /function\s+\w*\s*\((.*?)\)/;
|
7 | const rcomma = /\s*,\s*/;
|
8 |
|
9 | class Util {
|
10 | parseDependencies(fn) {
|
11 | const params = fn.toString()
|
12 | .replace(rnewline, ' ')
|
13 | .replace(rat, '')
|
14 | .match(rfunction)[1].split(rcomma);
|
15 |
|
16 | return _compact(_map(params, (p) => p.trim()));
|
17 | }
|
18 | }
|
19 |
|
20 | module.exports = new Util();
|