wrap method 
    
    
    
  Implementation
  void wrap(
  String? text, {
  required void Function(String?) print,
  int? length,
}) {
  late final int maxLength;
  if (length != null) {
    maxLength = length;
  } else if (stdout.hasTerminal) {
    maxLength = stdout.terminalColumns;
  } else {
    maxLength = fallbackStdoutTerminalColumns;
  }
  for (final sentence in text?.split('/n') ?? <String>[]) {
    final words = sentence.split(' ');
    final currentLine = StringBuffer();
    for (final word in words) {
      // Replace all ANSI sequences so we can get the true character length.
      final charLength = word
          .replaceAll(RegExp('\x1B(?:[@-Z\\-_]|[[0-?]*[ -/]*[@-~])'), '')
          .length;
      if (currentLine.length + charLength > maxLength) {
        print(currentLine.toString());
        currentLine.clear();
      }
      currentLine.write('$word ');
    }
    print(currentLine.toString());
  }
}