From 0b628da2d9933b3f456dd12ea719ae1d091d0fdb Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Wed, 30 Sep 2015 18:02:56 -0400 Subject: [PATCH] allow imports from hidden directories --- src/utils/path.js | 4 +--- test/function/hidden-directories/.foo/bar.js | 1 + test/function/hidden-directories/_config.js | 3 +++ test/function/hidden-directories/main.js | 3 +++ 4 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 test/function/hidden-directories/.foo/bar.js create mode 100644 test/function/hidden-directories/_config.js create mode 100644 test/function/hidden-directories/main.js diff --git a/src/utils/path.js b/src/utils/path.js index 1ea179f..269702b 100644 --- a/src/utils/path.js +++ b/src/utils/path.js @@ -58,12 +58,10 @@ export function resolve ( ...paths ) { } else { const parts = path.split( /[\/\\]/ ); - while ( parts[0] && parts[0][0] === '.' ) { + while ( parts[0] === '.' || parts[0] === '..' ) { const part = parts.shift(); if ( part === '..' ) { resolvedParts.pop(); - } else if ( part !== '.' ) { - throw new Error( `Unexpected path part (${part})` ); } } diff --git a/test/function/hidden-directories/.foo/bar.js b/test/function/hidden-directories/.foo/bar.js new file mode 100644 index 0000000..7a4e8a7 --- /dev/null +++ b/test/function/hidden-directories/.foo/bar.js @@ -0,0 +1 @@ +export default 42; diff --git a/test/function/hidden-directories/_config.js b/test/function/hidden-directories/_config.js new file mode 100644 index 0000000..80cd784 --- /dev/null +++ b/test/function/hidden-directories/_config.js @@ -0,0 +1,3 @@ +module.exports = { + description: 'allows imports from directories with leading "." character' +}; diff --git a/test/function/hidden-directories/main.js b/test/function/hidden-directories/main.js new file mode 100644 index 0000000..2e6fcd5 --- /dev/null +++ b/test/function/hidden-directories/main.js @@ -0,0 +1,3 @@ +import bar from './.foo/bar'; + +assert.equal( bar, 42 );