strip-newline.js 708 B

123456789101112
  1. import stripFinalNewlineFunction from 'strip-final-newline';
  2. // Apply `stripFinalNewline` option, which applies to `result.stdout|stderr|all|stdio[*]`.
  3. // If the `lines` option is used, it is applied on each line, but using a different function.
  4. export const stripNewline = (value, {stripFinalNewline}, fdNumber) => getStripFinalNewline(stripFinalNewline, fdNumber) && value !== undefined && !Array.isArray(value)
  5. ? stripFinalNewlineFunction(value)
  6. : value;
  7. // Retrieve `stripFinalNewline` option value, including with `subprocess.all`
  8. export const getStripFinalNewline = (stripFinalNewline, fdNumber) => fdNumber === 'all'
  9. ? stripFinalNewline[1] || stripFinalNewline[2]
  10. : stripFinalNewline[fdNumber];