| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 | 
							- /*!
 
-  * align-text <https://github.com/jonschlinkert/align-text>
 
-  *
 
-  * Copyright (c) 2015, Jon Schlinkert.
 
-  * Licensed under the MIT License.
 
-  */
 
- 'use strict';
 
- var typeOf = require('kind-of');
 
- var repeat = require('repeat-string');
 
- var longest = require('longest');
 
- module.exports = function alignText(val, fn) {
 
-   var lines, type = typeOf(val);
 
-   if (type === 'array') {
 
-     lines = val;
 
-   } else if (type === 'string') {
 
-     lines = val.split(/(?:\r\n|\n)/);
 
-   } else {
 
-     throw new TypeError('align-text expects a string or array.');
 
-   }
 
-   var fnType = typeOf(fn);
 
-   var len = lines.length;
 
-   var max = longest(lines);
 
-   var res = [], i = 0;
 
-   while (len--) {
 
-     var line = String(lines[i++]);
 
-     var diff;
 
-     if (fnType === 'function') {
 
-       diff = fn(line.length, max.length, line, lines, i);
 
-     } else if (fnType === 'number') {
 
-       diff = fn;
 
-     } else {
 
-       diff = max.length - line.length;
 
-     }
 
-     if (typeOf(diff) === 'number') {
 
-       res.push(repeat(' ', diff) + line);
 
-     } else if (typeOf(diff) === 'object') {
 
-       var result = repeat(diff.character || ' ', diff.indent || 0);
 
-       res.push((diff.prefix || '') + result + line);
 
-     }
 
-   }
 
-   if (type === 'array') return res;
 
-   return res.join('\n');
 
- };
 
 
  |