diff --git a/src/Main.gren b/src/Main.gren index 4bce0d9c..8e882f4c 100644 --- a/src/Main.gren +++ b/src/Main.gren @@ -471,7 +471,20 @@ parseUserArgs model compilerPath = |> Task.perform RunCmd CliParser.Make flags -> - resolveProject model + let + determineOutputStreamForResolve = + when flags.output is + Just Compiler.Backend.StdOut -> + -- We only want to print the actual generated JS + -- in this case, ignoring everything else + Terminal.Help.getNullStream + |> Task.map Stream.writable + + _ -> + Task.succeed model.stdout + in + determineOutputStreamForResolve + |> Task.andThen (\output -> resolveProject { model | stdout = output }) |> Task.andThen (verifyMakeFlags model.fsPermission flags.entryPoints flags.output) |> Task.map (\resolved -> @@ -534,7 +547,20 @@ parseUserArgs model compilerPath = |> Task.perform RunCmd CliParser.Docs flags -> - resolveProject model + let + determineOutputStreamForResolve = + when flags.output is + Just Compiler.Backend.DocsStdOut -> + -- We only want to print the actual generated JS + -- in this case, ignoring everything else + Terminal.Help.getNullStream + |> Task.map Stream.writable + + _ -> + Task.succeed model.stdout + in + determineOutputStreamForResolve + |> Task.andThen (\output -> resolveProject { model | stdout = output }) |> Task.map (\resolved -> Compiler.Backend.run diff --git a/src/Terminal/Help.gren b/src/Terminal/Help.gren index 8fc7a966..72ed10fd 100644 --- a/src/Terminal/Help.gren +++ b/src/Terminal/Help.gren @@ -3,6 +3,7 @@ module Terminal.Help exposing , prettyPrint , report , makeLink + , getNullStream ) import CLI.PrettyPrinter as PP @@ -124,3 +125,10 @@ makeNakedLink filename = , PP.text (SemanticVersion.toString Meta.version) , PP.text ("/hints/" ++ filename ++ ".md") ] + + +getNullStream : Task x (Stream.Transformation Bytes Bytes) +getNullStream = + Stream.customTransformation + (\state _ -> Stream.UpdateState state) + Bytes.empty diff --git a/src/Terminal/Run.gren b/src/Terminal/Run.gren index ec75eedd..cd35fa1b 100644 --- a/src/Terminal/Run.gren +++ b/src/Terminal/Run.gren @@ -143,7 +143,7 @@ makeProject config projectOutline = , onComplete = config.onCompiled outputPath } in - getNullStream + Help.getNullStream |> Task.andThen installPackages |> Task.map backendCommand |> Task.map compile @@ -227,13 +227,6 @@ run config = -- HELPERS -getNullStream : Task x (Stream.Transformation Bytes Bytes) -getNullStream = - Stream.customTransformation - (\state _ -> Stream.UpdateState state) - Bytes.empty - - getProjectOutline : FileSystem.Permission -> Path -> Task Error Outline getProjectOutline fsPermission path = path