indentSourceLeftRight method

String indentSourceLeftRight(
  1. String source, {
  2. bool indentLeft = true,
})

Indents the given source left or right.

Implementation

String indentSourceLeftRight(String source, {bool indentLeft = true}) {
  var sb = StringBuffer();
  var indent = oneIndent;
  var eol = endOfLine;
  var lines = source.split(eol);
  for (var i = 0; i < lines.length; i++) {
    var line = lines[i];
    // last line, stop if empty
    if (i == lines.length - 1 && isEmpty(line)) {
      break;
    }
    // update line
    if (indentLeft) {
      line = removeStart(line, indent)!;
    } else {
      line = '$indent$line';
    }
    // append line
    sb.write(line);
    sb.write(eol);
  }
  return sb.toString();
}