From 634f8c010f32afd1cfd4da24495e00e3fd4e0de9 Mon Sep 17 00:00:00 2001 From: Jose Luis Piedrahita Date: Tue, 13 Aug 2019 13:39:49 +0200 Subject: [PATCH 1/3] Show directories suffixes --- extension.js | 2 +- sort-files.js | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/extension.js b/extension.js index f7d3d54..a343fad 100644 --- a/extension.js +++ b/extension.js @@ -34,7 +34,7 @@ exports.activate = context => { const folderFullPath = path.join(workspaceRoot, folderPath); // Read folder, built quick pick with files/folder (and shortcuts) - fs.readdir(folderFullPath, async (readErr, files) => { + fs.readdir(folderFullPath, { withFileTypes: true }, async (readErr, files) => { if (readErr) { if (folderPath === nodeModulesPath) { return showError('No node_modules folder in this workspace.'); diff --git a/sort-files.js b/sort-files.js index 982c6b7..8b16deb 100644 --- a/sort-files.js +++ b/sort-files.js @@ -1,11 +1,13 @@ const sortFiles = (origFiles, origPriorities) => { const priorities = [ ...origPriorities ].reverse().map(p => p.toLowerCase()); - const files = origFiles.map(file => ({ original: file, lower: file.toLowerCase() })); + const files = origFiles.map(file => ({ original: file, lower: file.name.toLowerCase() })); const rank = file => priorities.indexOf(file) + 1; return files .sort((a, b) => rank(b.lower) - rank(a.lower)) - .map(file => file.original); + .map(({ original }) => original.isDirectory() + ? original.name + '/' + : original.name); }; module.exports = { sortFiles }; From 0dd1c9ac2ef931d0f517a2a38e10658fa5f729fd Mon Sep 17 00:00:00 2001 From: Jose Luis Piedrahita Date: Tue, 13 Aug 2019 13:59:44 +0200 Subject: [PATCH 2/3] Include suffix for top level node_modules directory --- extension.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extension.js b/extension.js index a343fad..85707db 100644 --- a/extension.js +++ b/extension.js @@ -55,7 +55,7 @@ exports.activate = context => { } else { // Otherwise, show option to move back to root options.push(''); - options.push(workspaceNodeModules); + options.push(`${workspaceNodeModules}/`); // If current folder is not outside of the workspace, also add option to move a step back if (!isParentFolder) { From aacc5125d47285b9395570d7f2361f8cdeddecbb Mon Sep 17 00:00:00 2001 From: Jose Luis Piedrahita Date: Tue, 13 Aug 2019 14:21:51 +0200 Subject: [PATCH 3/3] Use path.sep instead of a hardcoded slash --- extension.js | 2 +- sort-files.js | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/extension.js b/extension.js index 85707db..c1eac52 100644 --- a/extension.js +++ b/extension.js @@ -55,7 +55,7 @@ exports.activate = context => { } else { // Otherwise, show option to move back to root options.push(''); - options.push(`${workspaceNodeModules}/`); + options.push(`${workspaceNodeModules}${path.sep}`); // If current folder is not outside of the workspace, also add option to move a step back if (!isParentFolder) { diff --git a/sort-files.js b/sort-files.js index 8b16deb..470a4a2 100644 --- a/sort-files.js +++ b/sort-files.js @@ -1,3 +1,5 @@ +const path = require('path'); + const sortFiles = (origFiles, origPriorities) => { const priorities = [ ...origPriorities ].reverse().map(p => p.toLowerCase()); const files = origFiles.map(file => ({ original: file, lower: file.name.toLowerCase() })); @@ -6,7 +8,7 @@ const sortFiles = (origFiles, origPriorities) => { return files .sort((a, b) => rank(b.lower) - rank(a.lower)) .map(({ original }) => original.isDirectory() - ? original.name + '/' + ? `${original.name}${path.sep}` : original.name); };