Socket
Socket
Sign inDemoInstall

require-directory

Package Overview
Dependencies
0
Maintainers
1
Versions
12
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.0.1 to 1.0.2

22

index.js

@@ -7,3 +7,6 @@ var fs = require('fs');

var requireDirectory = module.exports = function(m, path, exclude){
var delegate = function(){ return true; }; // default delegate includes everything
var defaultDelegate = function(path, filename){
return filename[0] !== '.' && /\.(js|coffee)$/i.test(filename);
};
var delegate = defaultDelegate;
var retval = {};

@@ -20,5 +23,7 @@

if(exclude instanceof RegExp){
delegate = function(path){
if(exclude.test(path)){
delegate = function(path, filename){
if(!defaultDelegate(path, filename)){
return false;
}else if(exclude.test(path)){
return false;
}else{

@@ -35,10 +40,7 @@ return true;

fs.readdirSync(path).forEach(function(filename){
if(filename[0] === '.'){ //ignore hidden files
return;
}
var joined = join(path, filename);
if(joined !== m.filename && delegate(joined)){
if(fs.statSync(joined).isDirectory()){
retval[filename] = requireDirectory(m, joined, delegate); // this node is a directory; recurse
}else{
if(fs.statSync(joined).isDirectory()){
retval[filename] = requireDirectory(m, joined, delegate); // this node is a directory; recurse
}else{
if(joined !== m.filename && delegate(joined, filename)){
var name = filename.substring(0, filename.lastIndexOf('.')); // hash node shouldn't include file extension

@@ -45,0 +47,0 @@ retval[name] = m.require(joined);

{
"author": "Troy Goode <troygoode@gmail.com> (http://github.com/troygoode/)",
"name": "require-directory",
"version": "1.0.1",
"version": "1.0.2",
"description": "Recursively iterates over specified directory, requiring each file, and returning a nested hash structure containing those libraries.",

@@ -6,0 +6,0 @@ "keywords": ["require", "directory", "library", "recursive"],

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc