diff --git a/scripts/plugin.js b/scripts/plugin.js index 4d4d195..017a517 100644 --- a/scripts/plugin.js +++ b/scripts/plugin.js @@ -2,7 +2,7 @@ * External dependencies */ const path = require( 'path' ); -const { readdirSync, statSync, renameSync, rename } = require( 'fs' ); +const { statSync, renameSync } = require( 'fs' ); const downloadGH = require( 'download-git-repo' ); const rimraf = require( 'rimraf' ); const replace = require( 'replace' ); @@ -11,7 +11,7 @@ const slugify = require( 'slugify' ); /** * Internal dependencies */ -const { getArgFromCLI } = require( '../utils' ); +const { getArgFromCLI, walkDirectory } = require( '../utils' ); let data = { branch: getArgFromCLI( '--branch' ) || 'master', @@ -51,16 +51,6 @@ const shortify = function( name ) { return newName; } -const walkDirectory = function(dir, cb) { - cb = cb || ( (f) => f ); - var files = readdirSync(dir) - .map( ( f ) => path.join( dir, f ) ) - .map( ( f ) => statSync( f ).isDirectory() ? walkDirectory( f ) : f ) - .flat() - .map( cb ); - return files; -}; - let pluginName = String(data.name).length ? data.name : 'Amazing Plugin'; let pluginSlug = String(data.slug).length ? String(data.slug).toLowerCase() : slugify( pluginName ).toLowerCase(); let pluginURI = String(data.uri).length ? data.uri : 'https://saucal.com/' ; diff --git a/utils/file.js b/utils/file.js index 6e57182..311dafa 100644 --- a/utils/file.js +++ b/utils/file.js @@ -1,7 +1,7 @@ /** * External dependencies */ -const { existsSync, readdirSync } = require( 'fs' ); +const { existsSync, readdirSync, statSync } = require( 'fs' ); const path = require( 'path' ); /** @@ -29,6 +29,13 @@ const getScripts = () => .filter( ( f ) => path.extname( f ) === '.js' ) .map( ( f ) => path.basename( f, '.js' ) ); +const walkDirectory = (dir, cb) => + readdirSync(dir) + .map( ( f ) => path.join( dir, f ) ) + .map( ( f ) => statSync( f ).isDirectory() ? walkDirectory( f ) : f ) + .flat() + .map( cb || ( (f) => f ) ); + module.exports = { fromProjectRoot, fromConfigRoot, @@ -36,4 +43,5 @@ module.exports = { getScripts, hasProjectFile, hasScriptFile, + walkDirectory, }; diff --git a/utils/index.js b/utils/index.js index edb728d..5550586 100644 --- a/utils/index.js +++ b/utils/index.js @@ -18,7 +18,7 @@ const { hasPrettierConfig, hasPostCSSConfig, } = require( './config' ); -const { fromProjectRoot, fromConfigRoot, hasProjectFile } = require( './file' ); +const { fromProjectRoot, fromConfigRoot, hasProjectFile, walkDirectory } = require( './file' ); const { getPackageProp, hasPackageProp } = require( './package' ); module.exports = { @@ -40,4 +40,5 @@ module.exports = { hasPrettierConfig, hasProjectFile, spawnScript, + walkDirectory, };