-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.js
35 lines (31 loc) · 1.18 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// Generated by CoffeeScript 1.4.0
(function() {
var basename, fs, join, require_directory, resolve, _ref;
fs = require('fs');
_ref = require('path'), join = _ref.join, resolve = _ref.resolve, basename = _ref.basename;
module.exports = require_directory = function(directory) {
directory = resolve(directory);
return fs.readdirSync(directory).reduce(function(hash, file) {
var file_extension, file_name, file_path, key, value, _ref1;
file_path = join(directory, file);
file_name = file.substring(0, file.lastIndexOf('.'));
file_extension = file.substring(file.lastIndexOf('.'));
if (fs.statSync(file_path).isDirectory()) {
hash[basename(file_path)] = require_directory(file_path);
} else {
if (file_extension !== '.coffee' && file_extension !== '.js') {
return hash;
} else if (file_name === 'index' && typeof require(file_path) === 'object') {
_ref1 = require(file_path);
for (key in _ref1) {
value = _ref1[key];
hash[key] = value;
}
} else {
hash[file_name] = require(file_path);
}
}
return hash;
}, {});
};
}).call(this);