From ac034ba221da5aaa1cab9ebcfb60dfe734ad174f Mon Sep 17 00:00:00 2001 From: Paul Pflugradt Date: Fri, 23 Jun 2017 17:15:47 +0200 Subject: [PATCH] feat(cli-link): link multiple packages at once allows `pnpm link pkg1 pkg2` issue 825 changes --- src/cmd/link.ts | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/cmd/link.ts b/src/cmd/link.ts index 9e320af005..5a437847fe 100644 --- a/src/cmd/link.ts +++ b/src/cmd/link.ts @@ -10,12 +10,14 @@ export default (input: string[], opts: PnpmOptions & {globalPrefix: string}) => return linkToGlobal(cwd, opts) } - // pnpm link ../foo - if (input[0].indexOf('.') === 0) { - const linkFrom = path.join(cwd, input[0]) - return link(linkFrom, cwd, opts) - } + return input.reduce((previous: Promise, inp: string) => { + // pnpm link ../foo + if (inp[0].indexOf('.') === 0) { + const linkFrom = path.join(cwd, inp) + return previous.then(link.bind(null, linkFrom, cwd, opts)) + } - // pnpm link foo - return linkFromGlobal(input[0], cwd, opts) + // pnpm link foo + return previous.then(linkFromGlobal.bind(null, inp, cwd, opts)) + }, Promise.resolve()) }