Index: frontend/node_modules/text-table/test/align.js
===================================================================
--- frontend/node_modules/text-table/test/align.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
+++ frontend/node_modules/text-table/test/align.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
@@ -0,0 +1,18 @@
+var test = require('tape');
+var table = require('../');
+
+test('align', function (t) {
+    t.plan(1);
+    var s = table([
+        [ 'beep', '1024' ],
+        [ 'boop', '33450' ],
+        [ 'foo', '1006' ],
+        [ 'bar', '45' ]
+    ], { align: [ 'l', 'r' ] });
+    t.equal(s, [
+        'beep   1024',
+        'boop  33450',
+        'foo    1006',
+        'bar      45'
+    ].join('\n'));
+});
Index: frontend/node_modules/text-table/test/ansi-colors.js
===================================================================
--- frontend/node_modules/text-table/test/ansi-colors.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
+++ frontend/node_modules/text-table/test/ansi-colors.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
@@ -0,0 +1,32 @@
+var test = require('tape');
+var table = require('../');
+var color = require('cli-color');
+var ansiTrim = require('cli-color/lib/trim');
+
+test('center', function (t) {
+    t.plan(1);
+    var opts = {
+        align: [ 'l', 'c', 'l' ],
+        stringLength: function(s) { return ansiTrim(s).length }
+    };
+    var s = table([
+        [
+            color.red('Red'), color.green('Green'), color.blue('Blue')
+        ],
+        [
+            color.bold('Bold'), color.underline('Underline'),
+            color.italic('Italic')
+        ],
+        [
+            color.inverse('Inverse'), color.strike('Strike'),
+            color.blink('Blink')
+        ],
+        [ 'bar', '45', 'lmno' ]
+    ], opts);
+    t.equal(ansiTrim(s), [
+        'Red        Green    Blue',
+        'Bold     Underline  Italic',
+        'Inverse    Strike   Blink',
+        'bar          45     lmno'
+    ].join('\n'));
+});
Index: frontend/node_modules/text-table/test/center.js
===================================================================
--- frontend/node_modules/text-table/test/center.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
+++ frontend/node_modules/text-table/test/center.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
@@ -0,0 +1,18 @@
+var test = require('tape');
+var table = require('../');
+
+test('center', function (t) {
+    t.plan(1);
+    var s = table([
+        [ 'beep', '1024', 'xyz' ],
+        [ 'boop', '3388450', 'tuv' ],
+        [ 'foo', '10106', 'qrstuv' ],
+        [ 'bar', '45', 'lmno' ]
+    ], { align: [ 'l', 'c', 'l' ] });
+    t.equal(s, [
+        'beep    1024   xyz',
+        'boop  3388450  tuv',
+        'foo    10106   qrstuv',
+        'bar      45    lmno'
+    ].join('\n'));
+});
Index: frontend/node_modules/text-table/test/dotalign.js
===================================================================
--- frontend/node_modules/text-table/test/dotalign.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
+++ frontend/node_modules/text-table/test/dotalign.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
@@ -0,0 +1,20 @@
+var test = require('tape');
+var table = require('../');
+
+test('dot align', function (t) {
+    t.plan(1);
+    var s = table([
+        [ 'beep', '1024' ],
+        [ 'boop', '334.212' ],
+        [ 'foo', '1006' ],
+        [ 'bar', '45.6' ],
+        [ 'baz', '123.' ]
+    ], { align: [ 'l', '.' ] });
+    t.equal(s, [
+        'beep  1024',
+        'boop   334.212',
+        'foo   1006',
+        'bar     45.6',
+        'baz    123.'
+    ].join('\n'));
+});
Index: frontend/node_modules/text-table/test/doubledot.js
===================================================================
--- frontend/node_modules/text-table/test/doubledot.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
+++ frontend/node_modules/text-table/test/doubledot.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
@@ -0,0 +1,24 @@
+var test = require('tape');
+var table = require('../');
+
+test('dot align', function (t) {
+    t.plan(1);
+    var s = table([
+        [ '0.1.2' ],
+        [ '11.22.33' ],
+        [ '5.6.7' ],
+        [ '1.22222' ],
+        [ '12345.' ],
+        [ '5555.' ],
+        [ '123' ]
+    ], { align: [ '.' ] });
+    t.equal(s, [
+        '  0.1.2',
+        '11.22.33',
+        '  5.6.7',
+        '    1.22222',
+        '12345.',
+        ' 5555.',
+        '  123'
+    ].join('\n'));
+});
Index: frontend/node_modules/text-table/test/table.js
===================================================================
--- frontend/node_modules/text-table/test/table.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
+++ frontend/node_modules/text-table/test/table.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
@@ -0,0 +1,14 @@
+var test = require('tape');
+var table = require('../');
+
+test('table', function (t) {
+    t.plan(1);
+    var s = table([
+        [ 'master', '0123456789abcdef' ],
+        [ 'staging', 'fedcba9876543210' ]
+    ]);
+    t.equal(s, [
+        'master   0123456789abcdef',
+        'staging  fedcba9876543210'
+    ].join('\n'));
+});
